diff --git a/.githooks/pre-commit b/.githooks/pre-commit deleted file mode 100755 index 2d093c23..00000000 --- a/.githooks/pre-commit +++ /dev/null @@ -1,108 +0,0 @@ -#!/usr/bin/env bash - -printf "\e[33;1m%s\e[0m\n" 'Started Sorayomi Pre-Commit hook' - -# Undo the stash of the files -pop_stash_files () { - if [ -n "$hasChanges" ]; then - printf "\e[33;1m%s\e[0m\n" '=== Applying git stash changes ===' - git stash pop - fi -} - -# -# Stash unstaged files -# -hasChanges=$(git diff) -if [ -n "$hasChanges" ]; then - printf "\e[33;1m%s\e[0m\n" 'Stashing unstaged changes' - git stash push --keep-index -fi - -printf "\e[33;1m%s\e[0m\n" '=== Running Pub get ===' -flutter pub get -printf "\e[33;1m%s\e[0m\n" 'Finished Running Pub get' - -# -# Localization -# -printf "\e[33;1m%s\e[0m\n" '=== Running Localization ===' -flutter gen-l10n - -hasNewFilesFormatted=$(git diff) -if [ -n "$hasNewFilesFormatted" ]; then - git add . - printf "\e[33;1m%s\e[0m\n" 'Generated locale files added to git stage' -fi -printf "\e[33;1m%s\e[0m\n" 'Finished Running Localization' -printf '%s\n' "${avar}" - -# -# Build Runner -# -printf "\e[33;1m%s\e[0m\n" '=== Running Build Runner ===' -dart run build_runner build --delete-conflicting-outputs - -hasNewFilesFormatted=$(git diff) -if [ -n "$hasNewFilesFormatted" ]; then - git add . - printf "\e[33;1m%s\e[0m\n" 'Generated locale files added to git stage' -fi -printf "\e[33;1m%s\e[0m\n" 'Finished Running Build Runner' -printf '%s\n' "${avar}" - -# -# Flutter formatter -# -printf "\e[33;1m%s\e[0m\n" '=== Running Flutter Formatter ===' -dart format . - -hasNewFilesFormatted=$(git diff) -if [ -n "$hasNewFilesFormatted" ]; then - git add . - printf "\e[33;1m%s\e[0m\n" 'Formmated files added to git stage' -fi -printf "\e[33;1m%s\e[0m\n" 'Finished running Flutter Formatter' -printf '%s\n' "${avar}" - -# -# Dart Fix -# -printf "\e[33;1m%s\e[0m\n" '=== Running Dart Fix ===' -dart fix --apply - -hasNewFilesFormatted=$(git diff) -if [ -n "$hasNewFilesFormatted" ]; then - git add . - printf "\e[33;1m%s\e[0m\n" 'Fixed files added to git stage' -fi -printf "\e[33;1m%s\e[0m\n" 'Finished running Dart Fix' -printf '%s\n' "${avar}" - -# -# Flutter Analyzer -# -printf "\e[33;1m%s\e[0m\n" '=== Running Flutter analyzer ===' -flutter analyze -if [ $? -ne 0 ]; then - printf "\e[31;1m%s\e[0m\n" '=== Flutter analyzer error ===' - pop_stash_files - exit 1 -fi -printf "\e[33;1m%s\e[0m\n" 'Finished running Flutter analyzer' -printf '%s\n' "${avar}" - - -# Unit tests -# printf "\e[33;1m%s\e[0m\n" '=== Running Unit Tests ===' -# flutter test -# if [ $? -ne 0 ]; then -# printf "\e[31;1m%s\e[0m\n" '=== Unit tests error ===' -# pop_stash_files -# exit 1 -# fi -# printf "\e[33;1m%s\e[0m\n" 'Finished running Unit Tests' -# printf '%s\n' "${avar}" - -printf "\e[33;1m%s\e[0m\n" 'Finished running Sorayomi Pre-hook' -pop_stash_files \ No newline at end of file diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md deleted file mode 100644 index 9ec05dae..00000000 --- a/.github/ISSUE_TEMPLATE/bug_report.md +++ /dev/null @@ -1,57 +0,0 @@ ---- -name: Bug report -about: Create a report to help us improve -title: '' -labels: '' -assignees: '' - ---- - -**PLEASE READ THIS** - -I acknowledge that: - -- I have updated to the latest version of the app. -- I have tried the troubleshooting guide described in `README.md` -- If this is a request for adding/changing an extension it should be brought up to Tachiyomi: https://github.com/tachiyomiorg/tachiyomi-extensions/issues/new/choose -- If this is an issue with some extension not working properly, It does work inside Tachiyomi as intended. -- I have searched the existing issues and this is a new ticket **NOT** a duplicate or related to another open issue -- I will fill out the title and the information in this template - -Note that the issue will be automatically closed if you do not fill out the title or requested information. - -**DELETE THIS SECTION IF YOU HAVE READ AND ACKNOWLEDGED IT** - ---- - -**Describe the bug** -A clear and concise description of what the bug is. - -**To Reproduce** -Steps to reproduce the behavior: -1. Go to '...' -2. Click on '....' -3. Scroll down to '....' -4. See an error - -**Expected behavior** -A clear and concise description of what you expected to happen. - -**Screenshots** -If applicable, add screenshots to help explain your problem. - -## Device information (Server) -- Tachidesk version: (Example: v0.2.3-r255-win32) -- Server Operating System: (Example: Ubuntu 20.04) -- Server Desktop Environment: N/A or (Example: Gnome 40) -- Server JVM version: bundled with win32 or (Example: Java 8 Update 281 or OpenJDK 8u281) -## Device information (Client) -- Client version: (Example: 0.1.1) -- Client Type: (Example: Web, Android, Linux, Windows.) -- Client Operating System: (Example: Ubuntu 20.04) -- Client Specifications: (Example: Pixel 4a) -- (If the Client type is web) Client Web Browser: (Example: Google Chrome 89.0.4389.82) - - -**Additional context** -Add any other context about the problem here. diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md deleted file mode 100644 index 04120c2d..00000000 --- a/.github/ISSUE_TEMPLATE/feature_request.md +++ /dev/null @@ -1,37 +0,0 @@ ---- -name: Feature request -about: Suggest an idea for this project -title: '' -labels: '' -assignees: '' - ---- - -**PLEASE READ THIS** - -I acknowledge that: - -- I have updated to the latest version of the app. -- I have tried the troubleshooting guide described in `README.md` -- If this is a request for adding/changing an extension it should be brought up to Tachiyomi: https://github.com/tachiyomiorg/tachiyomi-extensions/issues/new/choose -- If this is an issue with some extension not working properly, It does work in Tachiyomi application as intended. -- I have searched the existing issues and this is a new ticket **NOT** a duplicate or related to another open issue -- I will fill out the title and the information in this template - -Note that the issue will be automatically closed if you do not fill out the title or requested information. - -**DELETE THIS SECTION IF YOU HAVE READ AND ACKNOWLEDGED IT** - ---- - -**Is your feature request related to a problem? Please describe.** -A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] - -**Describe the solution you'd like** -A clear and concise description of what you want to happen. - -**Describe alternatives you've considered** -A clear and concise description of any alternative solutions or features you've considered. - -**Additional context** -Add any other context or screenshots about the feature request here. diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml deleted file mode 100644 index c1cbdbab..00000000 --- a/.github/workflows/publish.yml +++ /dev/null @@ -1,196 +0,0 @@ -name: Publish -on: - # Enable manual run - workflow_dispatch: - push: - tags: - - "*.*.*" -env: - pkg_name: tachidesk-sorayomi -jobs: - create-build: - name: Create ${{ matrix.target }} build - runs-on: ${{ matrix.os }} - # softprops/action-gh-release needs this permission - permissions: - contents: write - - strategy: - # Disable fail-fast as we want results from all even if one fails. - fail-fast: false - matrix: - include: - - os: ubuntu-latest - target: android - build_path: build/app/outputs/flutter-apk - - os: macos-latest - target: ios - build_path: build/ios - - os: ubuntu-latest - target: web - build_path: build/web - - os: ubuntu-latest - target: linux - build_path: build/linux/x64/release/bundle - - os: macos-latest # Catalina - target: macos - build_path: build/macos/Build/Products/Release - - os: windows-latest - target: windows - build_path: build\windows\runner\Release - - steps: - - uses: subosito/flutter-action@v2 - with: - channel: 'stable' - - name: Install Linux dependencies - if: matrix.target == 'linux' - run: | - sudo apt-get update -y - sudo apt-get install -y libgtk-3-dev libx11-dev pkg-config cmake ninja-build libblkid-dev - - name: Install Android dependencies - if: matrix.target == 'android' - uses: actions/setup-java@v3 - with: - distribution: 'zulu' - java-version: "12.x" - - - name: Enable desktop support - if: matrix.target != 'android' && matrix.target != 'ios' && matrix.target != 'web' - run: | - flutter config --enable-linux-desktop - flutter config --enable-macos-desktop - flutter config --enable-windows-desktop - - run: flutter doctor -v - - uses: actions/checkout@v3 - # - run: flutter create . - - run: flutter pub get - - - name: Configure Keystore for Android - if: matrix.target == 'android' - working-directory: android - run: | - echo "${{ secrets.PLAY_STORE_UPLOAD_KEY }}" | base64 --decode > app/upload-keystore.jks - echo "storeFile=upload-keystore.jks" >> key.properties - echo "keyAlias=${{ secrets.KEYSTORE_KEY_ALIAS }}" >> key.properties - echo "storePassword=${{ secrets.KEYSTORE_STORE_PASSWORD }}" >> key.properties - echo "keyPassword=${{ secrets.KEYSTORE_KEY_PASSWORD }}" >> key.properties - - - if: matrix.target != 'android' && matrix.target != 'ios' - run: flutter build ${{ matrix.target }} --release - - if: matrix.target == 'android' - run: | - flutter build apk --release - flutter build apk --split-per-abi --release - - if: matrix.target == 'ios' - run: flutter build ios --release --no-codesign - - - name: Copy VC redistributables to release directory for Windows - if: matrix.target == 'windows' - working-directory: ${{ matrix.build_path }} - run: | - Copy-Item (vswhere -latest -find 'VC\Redist\MSVC\*\x64\*\msvcp140.dll') . - Copy-Item (vswhere -latest -find 'VC\Redist\MSVC\*\x64\*\vcruntime140.dll') . - Copy-Item (vswhere -latest -find 'VC\Redist\MSVC\*\x64\*\vcruntime140_1.dll') . - - name: Rename build for Android - if: matrix.target == 'android' - working-directory: ${{ matrix.build_path }} - run: | - mv app-release.apk "$GITHUB_WORKSPACE/${{ env.pkg_name }}-${{ github.ref_name }}-${{ matrix.target }}-all.apk" - mv app-arm64-v8a-release.apk "$GITHUB_WORKSPACE/${{ env.pkg_name }}-${{ github.ref_name }}-${{ matrix.target }}-arm64-v8a.apk" - mv app-armeabi-v7a-release.apk "$GITHUB_WORKSPACE/${{ env.pkg_name }}-${{ github.ref_name }}-${{ matrix.target }}-armeabi-v7a.apk" - mv app-x86_64-release.apk "$GITHUB_WORKSPACE/${{ env.pkg_name }}-${{ github.ref_name }}-${{ matrix.target }}-x86_64.apk" - - - name: Compress build for iOS - if: matrix.target == 'ios' - working-directory: ${{ matrix.build_path }} - run: | - cd iphoneos - mkdir Payload - cd Payload - ln -s ../Runner.app - cd .. - zip -r app-release.ipa Payload - mv app-release.ipa "$GITHUB_WORKSPACE/${{ env.pkg_name }}-${{ github.ref_name }}-${{ matrix.target }}.ipa" - - - name: Compress build for Web - if: matrix.target == 'web' - working-directory: ${{ matrix.build_path }} - run: zip -r "$GITHUB_WORKSPACE/${{ env.pkg_name }}-${{ github.ref_name }}-${{ matrix.target }}.zip" * - - - name: Compress build for Linux - if: matrix.target == 'linux' - working-directory: ${{ matrix.build_path }} - run: | - cp "$GITHUB_WORKSPACE/scripts/${{ env.pkg_name }}.desktop" . - cp "$GITHUB_WORKSPACE/assets/icons/launcher/sorayomi_icon.png" "./${{ env.pkg_name }}.png" - GZIP=-9 tar czf "$GITHUB_WORKSPACE/${{ env.pkg_name }}-${{ github.ref_name }}-${{ matrix.target }}-x64.tar.gz" * - - - name: Build deb package - if: matrix.target == 'linux' - run: | - mkdir "build/deb" - mkdir "build/deb/${{ env.pkg_name }}-${{ github.ref_name }}" - cp -r "${{ matrix.build_path }}"/* "build/deb/${{ env.pkg_name }}-${{ github.ref_name }}/" - cp "${{ env.pkg_name }}-${{ github.ref_name }}-${{ matrix.target }}-x64.tar.gz" "build/deb/${{ env.pkg_name }}_${{ github.ref_name }}.orig.tar.gz" - cp -r scripts/debian "build/deb/${{ env.pkg_name }}-${{ github.ref_name }}/" - - cd "build/deb/${{ env.pkg_name }}-${{ github.ref_name }}" - sed -i "s/\$pkgver/${{ github.ref_name }}/" debian/changelog - sed -i "s/\$pkgrel/1/" debian/changelog - - sudo apt install build-essential devscripts debhelper - debuild --no-lintian -us -uc - cp "../${{ env.pkg_name }}_${{ github.ref_name }}-1_amd64.deb" "$GITHUB_WORKSPACE/" - - - name: Compress build for macOS - if: matrix.target == 'macos' - working-directory: ${{ matrix.build_path }} - run: ditto -c -k --sequesterRsrc --keepParent "Tachidesk Sorayomi.app" "$GITHUB_WORKSPACE/${{ env.pkg_name }}-${{ github.ref_name }}-${{ matrix.target }}-x64.zip" - - name: Compress build for Windows - if: matrix.target == 'windows' - working-directory: ${{ matrix.build_path }} - run: compress-archive -Path * -DestinationPath "${env:GITHUB_WORKSPACE}\${{ env.pkg_name }}-${{ github.ref_name }}-${{ matrix.target }}-x64.zip" - - name: Create MSI Package - if: matrix.target == 'windows' && startsWith(github.ref, 'refs/tags/') - working-directory: ${{ matrix.build_path }} - run: | - $env:Path += ";C:\Program Files (x86)\WiX Toolset v3.11\bin" - $upgradeCode = [guid]::NewGuid().Guid - Copy-Item "${env:GITHUB_WORKSPACE}\scripts\${{ env.pkg_name }}-x64.wxs" . - Copy-Item "${env:GITHUB_WORKSPACE}\assets\icons\launcher\sorayomi_icon.ico" . - heat dir data -cg data -dr data -sreg -sfrag -gg -o data.wxs - candle -arch x64 -dVersion="${{ github.ref_name }}" -dUpgradeCode="$upgradeCode" -dIcon="sorayomi_icon.ico" "${{ env.pkg_name }}-x64.wxs" data.wxs - light -b data "${{ env.pkg_name }}-x64.wixobj" data.wixobj -o "${{ env.pkg_name }}-${{ github.ref_name }}-${{ matrix.target }}-x64.msi" - Move-Item "${{ env.pkg_name }}-${{ github.ref_name }}-${{ matrix.target }}-x64.msi" "${env:GITHUB_WORKSPACE}" - - - name: Add packaged build to release draft - uses: softprops/action-gh-release@v1 - if: startsWith(github.ref, 'refs/tags/') - with: - draft: false - files: ${{ env.pkg_name }}* - token: ${{ secrets.WINGET }} - - winget-publish: - needs: create-build - runs-on: windows-latest # action can only be run on windows - steps: - - name: Update WINGET manifest - uses: vedantmgoyal2009/winget-releaser@v2 - with: - identifier: Suwayomi.Tachidesk-Sorayomi - version: ${{ github.ref_name }} - token: ${{ secrets.WINGET }} - - homebrew-cask-publish: - needs: create-build - runs-on: macos-latest - steps: - - name: Update Homebrew cask - uses: macauley/action-homebrew-bump-cask@v1 - with: - token: ${{secrets.WINGET}} - tap: homebrew/homebrew-cask - cask: tachidesk-sorayomi - livecheck: true \ No newline at end of file diff --git a/.github/workflows/web.yml b/.github/workflows/web.yml deleted file mode 100644 index 25782b44..00000000 --- a/.github/workflows/web.yml +++ /dev/null @@ -1,26 +0,0 @@ -# Copyright (c) 2022 Contributors to the Suwayomi project -# -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. - -name: gh-Pages - -on: - workflow_dispatch: - push: - tags: - - "*.*.*" - -jobs: - build: - runs-on: ubuntu-latest - - steps: - - uses: actions/checkout@v3 # Only works with v2 - - uses: subosito/flutter-action@v2 - with: - channel: 'stable' - - uses: bluefireteam/flutter-gh-pages@v7 - with: - baseHref: /Tachidesk-Sorayomi/ \ No newline at end of file diff --git a/.gitignore b/.gitignore deleted file mode 100644 index f4c0b3a4..00000000 --- a/.gitignore +++ /dev/null @@ -1,46 +0,0 @@ -# Miscellaneous -lib/util_scripts -sym_* -*.class -*.log -*.pyc -*.swp -.DS_Store -.atom/ -.buildlog/ -.history -.svn/ -migrate_working_dir/ - -# IntelliJ related -*.iml -*.ipr -*.iws -.idea/ - -# The .vscode folder contains launch configuration and tasks you configure in -# VS Code which you may wish to be included in version control, so this line -# is commented out by default. -#.vscode/ - -# Flutter/Dart/Pub related -**/doc/api/ -**/ios/Flutter/.last_build_id -.dart_tool/ -.flutter-plugins -.flutter-plugins-dependencies -.packages -.pub-cache/ -.pub/ -/build/ - -# Symbolication related -app.*.symbols - -# Obfuscation related -app.*.map.json - -# Android Studio will place build artifacts here -/android/app/debug -/android/app/profile -/android/app/release diff --git a/.last_build_id b/.last_build_id new file mode 100644 index 00000000..21bb41e3 --- /dev/null +++ b/.last_build_id @@ -0,0 +1 @@ +1cc751aaf1b027c302fe2463c6be269a \ No newline at end of file diff --git a/.metadata b/.metadata deleted file mode 100644 index 87fe9740..00000000 --- a/.metadata +++ /dev/null @@ -1,45 +0,0 @@ -# This file tracks properties of this Flutter project. -# Used by Flutter tool to assess capabilities and perform upgrades etc. -# -# This file should be version controlled. - -version: - revision: f72efea43c3013323d1b95cff571f3c1caa37583 - channel: stable - -project_type: app - -# Tracks metadata for the flutter migrate command -migration: - platforms: - - platform: root - create_revision: f72efea43c3013323d1b95cff571f3c1caa37583 - base_revision: f72efea43c3013323d1b95cff571f3c1caa37583 - - platform: android - create_revision: f72efea43c3013323d1b95cff571f3c1caa37583 - base_revision: f72efea43c3013323d1b95cff571f3c1caa37583 - - platform: ios - create_revision: f72efea43c3013323d1b95cff571f3c1caa37583 - base_revision: f72efea43c3013323d1b95cff571f3c1caa37583 - - platform: linux - create_revision: f72efea43c3013323d1b95cff571f3c1caa37583 - base_revision: f72efea43c3013323d1b95cff571f3c1caa37583 - - platform: macos - create_revision: f72efea43c3013323d1b95cff571f3c1caa37583 - base_revision: f72efea43c3013323d1b95cff571f3c1caa37583 - - platform: web - create_revision: f72efea43c3013323d1b95cff571f3c1caa37583 - base_revision: f72efea43c3013323d1b95cff571f3c1caa37583 - - platform: windows - create_revision: f72efea43c3013323d1b95cff571f3c1caa37583 - base_revision: f72efea43c3013323d1b95cff571f3c1caa37583 - - # User provided section - - # List of Local paths (relative to this file) that should be - # ignored by the migrate tool. - # - # Files that are not part of the templates will be ignored by default. - unmanaged_files: - - 'lib/main.dart' - - 'ios/Runner.xcodeproj/project.pbxproj' diff --git a/.vscode/launch.json b/.vscode/launch.json deleted file mode 100644 index a3a732ef..00000000 --- a/.vscode/launch.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - // Use IntelliSense to learn about possible attributes. - // Hover to view descriptions of existing attributes. - // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 - "version": "0.2.0", - "configurations": [ - { - "name": "tachidesk_sorayomi", - "request": "launch", - "type": "dart" - }, - { - "name": "tachidesk_sorayomi (profile mode)", - "request": "launch", - "type": "dart", - "flutterMode": "profile" - }, - { - "name": "tachidesk_sorayomi (release mode)", - "request": "launch", - "type": "dart", - "flutterMode": "release" - } - ] -} \ No newline at end of file diff --git a/.vscode/settings.json b/.vscode/settings.json deleted file mode 100644 index e3027e40..00000000 --- a/.vscode/settings.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "cSpell.words": [ - "canonicalized", - "dattatreya", - "horiz", - "kindlish", - "localsourcelang", - "Mangas", - "microtask", - "phonelink", - "proto", - "pubspec", - "readmore", - "reddy", - "Scanlator", - "scanlators", - "sublist", - "suwayomi", - "tachidesk", - "Tachiyomi", - "tekartik", - "vals", - "Webtoon", - "webtoons" - ], - "licenser.license": "MPLv2", - "licenser.projectName": "Tachidesk-Sorayomi", - "licenser.author": "Contributors to the Suwayomi project" -} \ No newline at end of file diff --git a/CODE_OF_CONDUCT.md b/CODE_OF_CONDUCT.md deleted file mode 100644 index b08e4793..00000000 --- a/CODE_OF_CONDUCT.md +++ /dev/null @@ -1,128 +0,0 @@ -# Contributor Covenant Code of Conduct - -## Our Pledge - -We as members, contributors, and leaders pledge to make participation in our -community a harassment-free experience for everyone, regardless of age, body -size, visible or invisible disability, ethnicity, sex characteristics, gender -identity and expression, level of experience, education, socio-economic status, -nationality, personal appearance, race, religion, or sexual identity -and orientation. - -We pledge to act and interact in ways that contribute to an open, welcoming, -diverse, inclusive, and healthy community. - -## Our Standards - -Examples of behavior that contributes to a positive environment for our -community include: - -* Demonstrating empathy and kindness toward other people -* Being respectful of differing opinions, viewpoints, and experiences -* Giving and gracefully accepting constructive feedback -* Accepting responsibility and apologizing to those affected by our mistakes, - and learning from the experience -* Focusing on what is best not just for us as individuals, but for the - overall community - -Examples of unacceptable behavior include: - -* The use of sexualized language or imagery, and sexual attention or - advances of any kind -* Trolling, insulting or derogatory comments, and personal or political attacks -* Public or private harassment -* Publishing others' private information, such as a physical or email - address, without their explicit permission -* Other conduct which could reasonably be considered inappropriate in a - professional setting - -## Enforcement Responsibilities - -Community leaders are responsible for clarifying and enforcing our standards of -acceptable behavior and will take appropriate and fair corrective action in -response to any behavior that they deem inappropriate, threatening, offensive, -or harmful. - -Community leaders have the right and responsibility to remove, edit, or reject -comments, commits, code, wiki edits, issues, and other contributions that are -not aligned to this Code of Conduct, and will communicate reasons for moderation -decisions when appropriate. - -## Scope - -This Code of Conduct applies within all community spaces, and also applies when -an individual is officially representing the community in public spaces. -Examples of representing our community include using an official e-mail address, -posting via an official social media account, or acting as an appointed -representative at an online or offline event. - -## Enforcement - -Instances of abusive, harassing, or otherwise unacceptable behavior may be -reported to the community leaders responsible for enforcement at -DISCORD. -All complaints will be reviewed and investigated promptly and fairly. - -All community leaders are obligated to respect the privacy and security of the -reporter of any incident. - -## Enforcement Guidelines - -Community leaders will follow these Community Impact Guidelines in determining -the consequences for any action they deem in violation of this Code of Conduct: - -### 1. Correction - -**Community Impact**: Use of inappropriate language or other behavior deemed -unprofessional or unwelcome in the community. - -**Consequence**: A private, written warning from community leaders, providing -clarity around the nature of the violation and an explanation of why the -behavior was inappropriate. A public apology may be requested. - -### 2. Warning - -**Community Impact**: A violation through a single incident or series -of actions. - -**Consequence**: A warning with consequences for continued behavior. No -interaction with the people involved, including unsolicited interaction with -those enforcing the Code of Conduct, for a specified period of time. This -includes avoiding interactions in community spaces as well as external channels -like social media. Violating these terms may lead to a temporary or -permanent ban. - -### 3. Temporary Ban - -**Community Impact**: A serious violation of community standards, including -sustained inappropriate behavior. - -**Consequence**: A temporary ban from any interaction or public -communication with the community for a specified period. No public or -private interaction with the people involved, including unsolicited interaction -with those enforcing the Code of Conduct, is allowed during this period. -Violating these terms may lead to a permanent ban. - -### 4. Permanent Ban - -**Community Impact**: Demonstrating a pattern of violation of community -standards, including sustained inappropriate behavior, harassment of an -individual, or aggression toward or disparagement of classes of individuals. - -**Consequence**: A permanent ban from any public interaction within -the community. - -## Attribution - -This Code of Conduct is adapted from the [Contributor Covenant][homepage], -version 2.0, available at -https://www.contributor-covenant.org/version/2/0/code_of_conduct.html. - -Community Impact Guidelines were inspired by [Mozilla's code of conduct -enforcement ladder](https://github.com/mozilla/diversity). - -[homepage]: https://www.contributor-covenant.org - -For answers to common questions about this code of conduct, see the FAQ at -https://www.contributor-covenant.org/faq. Translations are available at -https://www.contributor-covenant.org/translations. diff --git a/LICENSE b/LICENSE deleted file mode 100644 index a612ad98..00000000 --- a/LICENSE +++ /dev/null @@ -1,373 +0,0 @@ -Mozilla Public License Version 2.0 -================================== - -1. Definitions --------------- - -1.1. "Contributor" - means each individual or legal entity that creates, contributes to - the creation of, or owns Covered Software. - -1.2. "Contributor Version" - means the combination of the Contributions of others (if any) used - by a Contributor and that particular Contributor's Contribution. - -1.3. "Contribution" - means Covered Software of a particular Contributor. - -1.4. "Covered Software" - means Source Code Form to which the initial Contributor has attached - the notice in Exhibit A, the Executable Form of such Source Code - Form, and Modifications of such Source Code Form, in each case - including portions thereof. - -1.5. "Incompatible With Secondary Licenses" - means - - (a) that the initial Contributor has attached the notice described - in Exhibit B to the Covered Software; or - - (b) that the Covered Software was made available under the terms of - version 1.1 or earlier of the License, but not also under the - terms of a Secondary License. - -1.6. "Executable Form" - means any form of the work other than Source Code Form. - -1.7. "Larger Work" - means a work that combines Covered Software with other material, in - a separate file or files, that is not Covered Software. - -1.8. "License" - means this document. - -1.9. "Licensable" - means having the right to grant, to the maximum extent possible, - whether at the time of the initial grant or subsequently, any and - all of the rights conveyed by this License. - -1.10. "Modifications" - means any of the following: - - (a) any file in Source Code Form that results from an addition to, - deletion from, or modification of the contents of Covered - Software; or - - (b) any new file in Source Code Form that contains any Covered - Software. - -1.11. "Patent Claims" of a Contributor - means any patent claim(s), including without limitation, method, - process, and apparatus claims, in any patent Licensable by such - Contributor that would be infringed, but for the grant of the - License, by the making, using, selling, offering for sale, having - made, import, or transfer of either its Contributions or its - Contributor Version. - -1.12. "Secondary License" - means either the GNU General Public License, Version 2.0, the GNU - Lesser General Public License, Version 2.1, the GNU Affero General - Public License, Version 3.0, or any later versions of those - licenses. - -1.13. "Source Code Form" - means the form of the work preferred for making modifications. - -1.14. "You" (or "Your") - means an individual or a legal entity exercising rights under this - License. For legal entities, "You" includes any entity that - controls, is controlled by, or is under common control with You. For - purposes of this definition, "control" means (a) the power, direct - or indirect, to cause the direction or management of such entity, - whether by contract or otherwise, or (b) ownership of more than - fifty percent (50%) of the outstanding shares or beneficial - ownership of such entity. - -2. License Grants and Conditions --------------------------------- - -2.1. Grants - -Each Contributor hereby grants You a world-wide, royalty-free, -non-exclusive license: - -(a) under intellectual property rights (other than patent or trademark) - Licensable by such Contributor to use, reproduce, make available, - modify, display, perform, distribute, and otherwise exploit its - Contributions, either on an unmodified basis, with Modifications, or - as part of a Larger Work; and - -(b) under Patent Claims of such Contributor to make, use, sell, offer - for sale, have made, import, and otherwise transfer either its - Contributions or its Contributor Version. - -2.2. Effective Date - -The licenses granted in Section 2.1 with respect to any Contribution -become effective for each Contribution on the date the Contributor first -distributes such Contribution. - -2.3. Limitations on Grant Scope - -The licenses granted in this Section 2 are the only rights granted under -this License. No additional rights or licenses will be implied from the -distribution or licensing of Covered Software under this License. -Notwithstanding Section 2.1(b) above, no patent license is granted by a -Contributor: - -(a) for any code that a Contributor has removed from Covered Software; - or - -(b) for infringements caused by: (i) Your and any other third party's - modifications of Covered Software, or (ii) the combination of its - Contributions with other software (except as part of its Contributor - Version); or - -(c) under Patent Claims infringed by Covered Software in the absence of - its Contributions. - -This License does not grant any rights in the trademarks, service marks, -or logos of any Contributor (except as may be necessary to comply with -the notice requirements in Section 3.4). - -2.4. Subsequent Licenses - -No Contributor makes additional grants as a result of Your choice to -distribute the Covered Software under a subsequent version of this -License (see Section 10.2) or under the terms of a Secondary License (if -permitted under the terms of Section 3.3). - -2.5. Representation - -Each Contributor represents that the Contributor believes its -Contributions are its original creation(s) or it has sufficient rights -to grant the rights to its Contributions conveyed by this License. - -2.6. Fair Use - -This License is not intended to limit any rights You have under -applicable copyright doctrines of fair use, fair dealing, or other -equivalents. - -2.7. Conditions - -Sections 3.1, 3.2, 3.3, and 3.4 are conditions of the licenses granted -in Section 2.1. - -3. Responsibilities -------------------- - -3.1. Distribution of Source Form - -All distribution of Covered Software in Source Code Form, including any -Modifications that You create or to which You contribute, must be under -the terms of this License. You must inform recipients that the Source -Code Form of the Covered Software is governed by the terms of this -License, and how they can obtain a copy of this License. You may not -attempt to alter or restrict the recipients' rights in the Source Code -Form. - -3.2. Distribution of Executable Form - -If You distribute Covered Software in Executable Form then: - -(a) such Covered Software must also be made available in Source Code - Form, as described in Section 3.1, and You must inform recipients of - the Executable Form how they can obtain a copy of such Source Code - Form by reasonable means in a timely manner, at a charge no more - than the cost of distribution to the recipient; and - -(b) You may distribute such Executable Form under the terms of this - License, or sublicense it under different terms, provided that the - license for the Executable Form does not attempt to limit or alter - the recipients' rights in the Source Code Form under this License. - -3.3. Distribution of a Larger Work - -You may create and distribute a Larger Work under terms of Your choice, -provided that You also comply with the requirements of this License for -the Covered Software. If the Larger Work is a combination of Covered -Software with a work governed by one or more Secondary Licenses, and the -Covered Software is not Incompatible With Secondary Licenses, this -License permits You to additionally distribute such Covered Software -under the terms of such Secondary License(s), so that the recipient of -the Larger Work may, at their option, further distribute the Covered -Software under the terms of either this License or such Secondary -License(s). - -3.4. Notices - -You may not remove or alter the substance of any license notices -(including copyright notices, patent notices, disclaimers of warranty, -or limitations of liability) contained within the Source Code Form of -the Covered Software, except that You may alter any license notices to -the extent required to remedy known factual inaccuracies. - -3.5. Application of Additional Terms - -You may choose to offer, and to charge a fee for, warranty, support, -indemnity or liability obligations to one or more recipients of Covered -Software. However, You may do so only on Your own behalf, and not on -behalf of any Contributor. You must make it absolutely clear that any -such warranty, support, indemnity, or liability obligation is offered by -You alone, and You hereby agree to indemnify every Contributor for any -liability incurred by such Contributor as a result of warranty, support, -indemnity or liability terms You offer. You may include additional -disclaimers of warranty and limitations of liability specific to any -jurisdiction. - -4. Inability to Comply Due to Statute or Regulation ---------------------------------------------------- - -If it is impossible for You to comply with any of the terms of this -License with respect to some or all of the Covered Software due to -statute, judicial order, or regulation then You must: (a) comply with -the terms of this License to the maximum extent possible; and (b) -describe the limitations and the code they affect. Such description must -be placed in a text file included with all distributions of the Covered -Software under this License. Except to the extent prohibited by statute -or regulation, such description must be sufficiently detailed for a -recipient of ordinary skill to be able to understand it. - -5. Termination --------------- - -5.1. The rights granted under this License will terminate automatically -if You fail to comply with any of its terms. However, if You become -compliant, then the rights granted under this License from a particular -Contributor are reinstated (a) provisionally, unless and until such -Contributor explicitly and finally terminates Your grants, and (b) on an -ongoing basis, if such Contributor fails to notify You of the -non-compliance by some reasonable means prior to 60 days after You have -come back into compliance. Moreover, Your grants from a particular -Contributor are reinstated on an ongoing basis if such Contributor -notifies You of the non-compliance by some reasonable means, this is the -first time You have received notice of non-compliance with this License -from such Contributor, and You become compliant prior to 30 days after -Your receipt of the notice. - -5.2. If You initiate litigation against any entity by asserting a patent -infringement claim (excluding declaratory judgment actions, -counter-claims, and cross-claims) alleging that a Contributor Version -directly or indirectly infringes any patent, then the rights granted to -You by any and all Contributors for the Covered Software under Section -2.1 of this License shall terminate. - -5.3. In the event of termination under Sections 5.1 or 5.2 above, all -end user license agreements (excluding distributors and resellers) which -have been validly granted by You or Your distributors under this License -prior to termination shall survive termination. - -************************************************************************ -* * -* 6. Disclaimer of Warranty * -* ------------------------- * -* * -* Covered Software is provided under this License on an "as is" * -* basis, without warranty of any kind, either expressed, implied, or * -* statutory, including, without limitation, warranties that the * -* Covered Software is free of defects, merchantable, fit for a * -* particular purpose or non-infringing. The entire risk as to the * -* quality and performance of the Covered Software is with You. * -* Should any Covered Software prove defective in any respect, You * -* (not any Contributor) assume the cost of any necessary servicing, * -* repair, or correction. This disclaimer of warranty constitutes an * -* essential part of this License. No use of any Covered Software is * -* authorized under this License except under this disclaimer. * -* * -************************************************************************ - -************************************************************************ -* * -* 7. Limitation of Liability * -* -------------------------- * -* * -* Under no circumstances and under no legal theory, whether tort * -* (including negligence), contract, or otherwise, shall any * -* Contributor, or anyone who distributes Covered Software as * -* permitted above, be liable to You for any direct, indirect, * -* special, incidental, or consequential damages of any character * -* including, without limitation, damages for lost profits, loss of * -* goodwill, work stoppage, computer failure or malfunction, or any * -* and all other commercial damages or losses, even if such party * -* shall have been informed of the possibility of such damages. This * -* limitation of liability shall not apply to liability for death or * -* personal injury resulting from such party's negligence to the * -* extent applicable law prohibits such limitation. Some * -* jurisdictions do not allow the exclusion or limitation of * -* incidental or consequential damages, so this exclusion and * -* limitation may not apply to You. * -* * -************************************************************************ - -8. Litigation -------------- - -Any litigation relating to this License may be brought only in the -courts of a jurisdiction where the defendant maintains its principal -place of business and such litigation shall be governed by laws of that -jurisdiction, without reference to its conflict-of-law provisions. -Nothing in this Section shall prevent a party's ability to bring -cross-claims or counter-claims. - -9. Miscellaneous ----------------- - -This License represents the complete agreement concerning the subject -matter hereof. If any provision of this License is held to be -unenforceable, such provision shall be reformed only to the extent -necessary to make it enforceable. Any law or regulation which provides -that the language of a contract shall be construed against the drafter -shall not be used to construe this License against a Contributor. - -10. Versions of the License ---------------------------- - -10.1. New Versions - -Mozilla Foundation is the license steward. Except as provided in Section -10.3, no one other than the license steward has the right to modify or -publish new versions of this License. Each version will be given a -distinguishing version number. - -10.2. Effect of New Versions - -You may distribute the Covered Software under the terms of the version -of the License under which You originally received the Covered Software, -or under the terms of any subsequent version published by the license -steward. - -10.3. Modified Versions - -If you create software not governed by this License, and you want to -create a new license for such software, you may create and use a -modified version of this License if you rename the license and remove -any references to the name of the license steward (except to note that -such modified license differs from this License). - -10.4. Distributing Source Code Form that is Incompatible With Secondary -Licenses - -If You choose to distribute Source Code Form that is Incompatible With -Secondary Licenses under the terms of this version of the License, the -notice described in Exhibit B of this License must be attached. - -Exhibit A - Source Code Form License Notice -------------------------------------------- - - This Source Code Form is subject to the terms of the Mozilla Public - License, v. 2.0. If a copy of the MPL was not distributed with this - file, You can obtain one at http://mozilla.org/MPL/2.0/. - -If it is not possible or desirable to put the notice in a particular -file, then You may include the notice in a location (such as a LICENSE -file in a relevant directory) where a recipient would be likely to look -for such a notice. - -You may add additional accurate notices of copyright ownership. - -Exhibit B - "Incompatible With Secondary Licenses" Notice ---------------------------------------------------------- - - This Source Code Form is "Incompatible With Secondary Licenses", as - defined by the Mozilla Public License, v. 2.0. diff --git a/README.md b/README.md deleted file mode 100644 index 384553fc..00000000 --- a/README.md +++ /dev/null @@ -1,200 +0,0 @@ -

- Tachidesk Sorayomi logo -

- -

Tachidesk Sorayomi

- -
- -[![Platform](https://img.shields.io/badge/platform-Android%20%7C%20iOS%20%7C%20Linux%20%7C%20Windows%20%7C%20MacOS%20%7C%20Web-lightgrey)][release] -[![Discord](https://img.shields.io/discord/801021177333940224.svg?label=discord&labelColor=7289da&color=2c2f33&style=flat)](https://discord.gg/DDZdqZWaHA) - -
- -
- -[![GitHub Stars](https://img.shields.io/github/stars/Suwayomi/Tachidesk-Sorayomi)](https://github.com/Suwayomi/Tachidesk-Sorayomi) -[![GitHub License](https://img.shields.io/github/license/Suwayomi/Tachidesk-Sorayomi)](https://github.com/Suwayomi/Tachidesk-Sorayomi/blob/main/LICENSE) -![CI](https://github.com/Suwayomi/Tachidesk-Sorayomi/actions/workflows/publish.yml/badge.svg) -[![stable release](https://img.shields.io/github/release/Suwayomi/Tachidesk-Sorayomi.svg?maxAge=3600&label=download)](https://github.com/Suwayomi/Tachidesk-Sorayomi/releases) - -
- - - -

-A free and open source manga reader based on Flutter to read manga from a Tachidesk-Server instance.

-Tachidesk-Sorayomi need to connect with an already hosted server.

-Tachidesk-Sorayomi supports Linux, Windows, MacOS, Web, iOS and Android. -

- ---- - -## Is this application usable? Should I test it? - -Here is a list of current features for interaction with Tachidesk-Sorayomi: - -- Managing installed Extensions. -- Interaction with your library. -- Browsing installed sources. -- Viewing manga and chapters. -- Reading, downloading, and managing chapters. -- Viewing chapter updates - -**Note:** Keep in mind that Tachidesk-Sorayomi and Tachidesk-Server are alpha software, so it can have issues. See [Support and help](#support-and-help) if it happens. - - -### Supported Tachidesk versions - -These are the versions of [Tachidesk-Server][tachidesk-server] that Tachidesk-Sorayomi supports. - -#### [Release build][release] - -- [Tachidesk-Server][tachidesk-server] v0.6.6+ - - -## Downloading and Running the app - -### Android - -Download *-android-all.apk file from latest release [the releases section][release]. - - -### iOS - -- Download the latest .ipa file from [the releases section][release] -- use [AltStore](https://altstore.io/) to install Sorayomi in ios. - -### Windows - -Download the latest .msi file from [the releases section][release]. - -if you use WINGET, you can run -``` -winget install tachidesk-sorayomi -``` - -### MacOS - -- Download the *-macos-x64.zip from the latest release [the releases section][release] -- Extract the file. -- Drag and drop the extracted app file to applications folder in finder. - -if you use HomeBrew, you can run -``` -brew install --cask tachidesk-sorayomi -``` - -### Debian based Linux - -Download the latest deb release from [the releases section][release]. - -### Arch based Linux - -Download the latest release from [the aur](https://aur.archlinux.org/packages/tachidesk-sorayomi-bin). - -If you use yay, you can run -``` -yay -S tachidesk-sorayomi-bin -``` -inside a terminal window. - -### Web - -Download the latest web.zip file from [the releases section][release]. - -- Sorayomi-web deployed in GitHub pages. You can check out [Sorayomi here](https://suwayomi.github.io/Tachidesk-Sorayomi/). - - -## Post installation - - - Configure your server address in `Navigation bar > more screen > Server URL`. - -## Building from source - -These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. - -### Prerequisites - -You can install Flutter & Dart from [Official website](https://docs.flutter.dev/get-started/install) - - - Dart sdk - - Flutter - Channel Stable - -### Building - -1. Clone the repository: - -``` - $ git clone https://github.com/Suwayomi/Tachidesk-Sorayomi.git - $ cd Tachidesk-Sorayomi/ -``` -2. You can install all dependencies by running this command in terminal: - -``` - $ flutter pub get -``` - -3. Now enter the following command to start debugging the app: - -``` - $ flutter run -``` - -- Localization generator -``` - $ flutter gen-l10n -``` - -- Pull-Request Suggestion - - Install GitHooks after cloning the repo using `git config --local core.hooksPath .githooks` - -## Support and help - -- Join Tachidesk's [discord server](https://discord.gg/DDZdqZWaHA) to hang out with the community and receive support and help. - - -## Built Using - -- [Flutter](https://flutter.dev/) is an open source framework by Google for building beautiful, natively compiled, multi-platform applications from a single codebase. - -- [Flutter Riverpod](https://pub.dev/packages/riverpod/) - A simple way to access state while robust and testable. - -- [Riverpod Architecture](https://codewithandrea.com/articles/flutter-app-architecture-riverpod-introduction/) - File architecture developed by [@bizz84](https://github.com/bizz84) - -Find other dependencies in [pubspec.yaml](pubspec.yaml) - -## Credit - -- The `Tachidesk-server` project is developed by [@AriaMoradi](https://github.com/AriaMoradi) and contributors, - -- The `Tachidesk-Sorayomi` project is developed by [@DattatreyaReddy](https://github.com/DattatreyaReddy) and contributors, - -- CI-CD for `Tachidesk-Sorayomi` is developed by [@mahor1221](https://github.com/mahor1221) and contributors. - -## Translation -Feel free to translate the project on [Weblate](https://hosted.weblate.org/projects/suwayomi/tachidesk-sorayomi/) - -
Translation Progress - -Translation status - -
- -## License - -A link for [Tachidesk is provided here](https://github.com/Suwayomi/Tachidesk) and is licensed under `Mozilla Public License v2.0`. - -You can obtain a copy of `Mozilla Public License v2.0` from https://mozilla.org/MPL/2.0/ - - - Copyright (C) Contributors to the Suwayomi project - - This Source Code Form is subject to the terms of the Mozilla Public - License, v. 2.0. If a copy of the MPL was not distributed with this - file, You can obtain one at http://mozilla.org/MPL/2.0/. - - -[release]: https://github.com/Suwayomi/Tachidesk-Sorayomi/releases -[tachidesk-server]: https://github.com/Suwayomi/Tachidesk-Server -[tachidesk-server-preview]: https://github.com/Suwayomi/Tachidesk-Server-preview/releases diff --git a/analysis_options.yaml b/analysis_options.yaml deleted file mode 100644 index bc304fd8..00000000 --- a/analysis_options.yaml +++ /dev/null @@ -1,39 +0,0 @@ -# This file configures the analyzer, which statically analyzes Dart code to -# check for errors, warnings, and lints. -# -# The issues identified by the analyzer are surfaced in the UI of Dart-enabled -# IDEs (https://dart.dev/tools#ides-and-editors). The analyzer can also be -# invoked from the command line by running `flutter analyze`. - -# The following line activates a set of recommended lints for Flutter apps, -# packages, and plugins designed to encourage good coding practices. -include: package:flutter_lints/flutter.yaml - -linter: - # The lint rules applied to this project can be customized in the - # section below to disable rules from the `package:flutter_lints/flutter.yaml` - # included above or to enable additional rules. A list of all available lints - # and their documentation is published at - # https://dart-lang.github.io/linter/lints/index.html. - # - # Instead of disabling a lint rule for the entire project in the - # section below, it can also be suppressed for a single line of code - # or a specific dart file by using the `// ignore: name_of_lint` and - # `// ignore_for_file: name_of_lint` syntax on the line or in the file - # producing the lint. - rules: - # avoid_print: false # Uncomment to disable the `avoid_print` rule - # prefer_single_quotes: true # Uncomment to enable the `prefer_single_quotes` rule - prefer_relative_imports: true - directives_ordering: true - -# Additional information about this file can be found at -# https://dart.dev/guides/language/analysis-options -analyzer: - exclude: - - "**/*.gform.dart" - - "**/*.g.dart" - - "**/*.freezed.dart" - - errors: - invalid_annotation_target: ignore \ No newline at end of file diff --git a/android/.gitignore b/android/.gitignore deleted file mode 100644 index 6f568019..00000000 --- a/android/.gitignore +++ /dev/null @@ -1,13 +0,0 @@ -gradle-wrapper.jar -/.gradle -/captures/ -/gradlew -/gradlew.bat -/local.properties -GeneratedPluginRegistrant.java - -# Remember to never publicly share your keystore. -# See https://flutter.dev/docs/deployment/android#reference-the-keystore-from-the-app -key.properties -**/*.keystore -**/*.jks diff --git a/android/app/build.gradle b/android/app/build.gradle deleted file mode 100644 index 211a2511..00000000 --- a/android/app/build.gradle +++ /dev/null @@ -1,83 +0,0 @@ -def localProperties = new Properties() -def localPropertiesFile = rootProject.file('local.properties') -if (localPropertiesFile.exists()) { - localPropertiesFile.withReader('UTF-8') { reader -> - localProperties.load(reader) - } -} - -def flutterRoot = localProperties.getProperty('flutter.sdk') -if (flutterRoot == null) { - throw new GradleException("Flutter SDK not found. Define location with flutter.sdk in the local.properties file.") -} - -def flutterVersionCode = localProperties.getProperty('flutter.versionCode') -if (flutterVersionCode == null) { - flutterVersionCode = '1' -} - -def flutterVersionName = localProperties.getProperty('flutter.versionName') -if (flutterVersionName == null) { - flutterVersionName = '1.0' -} - -apply plugin: 'com.android.application' -apply plugin: 'kotlin-android' -apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" - -def keystoreProperties = new Properties() -def keystorePropertiesFile = rootProject.file('key.properties') -if (keystorePropertiesFile.exists()) { - keystoreProperties.load(new FileInputStream(keystorePropertiesFile)) -} - -android { - compileSdkVersion 33 // flutter.compileSdkVersion - ndkVersion flutter.ndkVersion - - compileOptions { - sourceCompatibility JavaVersion.VERSION_1_8 - targetCompatibility JavaVersion.VERSION_1_8 - } - - kotlinOptions { - jvmTarget = '1.8' - } - - sourceSets { - main.java.srcDirs += 'src/main/kotlin' - } - - defaultConfig { - // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). - applicationId "com.suwayomi.tachidesk_sorayomi" - // You can update the following values to match your application needs. - // For more information, see: https://docs.flutter.dev/deployment/android#reviewing-the-build-configuration. - minSdkVersion 19 - targetSdkVersion flutter.targetSdkVersion - versionCode flutterVersionCode.toInteger() - versionName flutterVersionName - } - - signingConfigs { - release { - keyAlias keystoreProperties['keyAlias'] - keyPassword keystoreProperties['keyPassword'] - storeFile keystoreProperties['storeFile'] ? file(keystoreProperties['storeFile']) : null - storePassword keystoreProperties['storePassword'] - } - } - buildTypes { - release { - signingConfig signingConfigs.release - } - } -} - -flutter { - source '../..' -} - -dependencies { - implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" -} diff --git a/android/app/src/debug/AndroidManifest.xml b/android/app/src/debug/AndroidManifest.xml deleted file mode 100644 index faae0737..00000000 --- a/android/app/src/debug/AndroidManifest.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml deleted file mode 100644 index c396db27..00000000 --- a/android/app/src/main/AndroidManifest.xml +++ /dev/null @@ -1,36 +0,0 @@ - - - - - - - - - - - - - - - diff --git a/android/app/src/main/kotlin/com/suwayomi/tachidesk_sorayomi/MainActivity.kt b/android/app/src/main/kotlin/com/suwayomi/tachidesk_sorayomi/MainActivity.kt deleted file mode 100644 index db2eea6c..00000000 --- a/android/app/src/main/kotlin/com/suwayomi/tachidesk_sorayomi/MainActivity.kt +++ /dev/null @@ -1,8 +0,0 @@ -package com.suwayomi.tachidesk_sorayomi - -import io.flutter.embedding.android.FlutterActivity - -import dev.darttools.flutter_android_volume_keydown.FlutterAndroidVolumeKeydownActivity; - -class MainActivity: FlutterAndroidVolumeKeydownActivity() { -} diff --git a/android/app/src/main/res/drawable-hdpi/android12splash.png b/android/app/src/main/res/drawable-hdpi/android12splash.png deleted file mode 100644 index a611684d..00000000 Binary files a/android/app/src/main/res/drawable-hdpi/android12splash.png and /dev/null differ diff --git a/android/app/src/main/res/drawable-hdpi/branding.png b/android/app/src/main/res/drawable-hdpi/branding.png deleted file mode 100644 index cb5c35ff..00000000 Binary files a/android/app/src/main/res/drawable-hdpi/branding.png and /dev/null differ diff --git a/android/app/src/main/res/drawable-hdpi/splash.png b/android/app/src/main/res/drawable-hdpi/splash.png deleted file mode 100644 index a611684d..00000000 Binary files a/android/app/src/main/res/drawable-hdpi/splash.png and /dev/null differ diff --git a/android/app/src/main/res/drawable-mdpi/android12splash.png b/android/app/src/main/res/drawable-mdpi/android12splash.png deleted file mode 100644 index de872001..00000000 Binary files a/android/app/src/main/res/drawable-mdpi/android12splash.png and /dev/null differ diff --git a/android/app/src/main/res/drawable-mdpi/branding.png b/android/app/src/main/res/drawable-mdpi/branding.png deleted file mode 100644 index dd88e17b..00000000 Binary files a/android/app/src/main/res/drawable-mdpi/branding.png and /dev/null differ diff --git a/android/app/src/main/res/drawable-mdpi/splash.png b/android/app/src/main/res/drawable-mdpi/splash.png deleted file mode 100644 index de872001..00000000 Binary files a/android/app/src/main/res/drawable-mdpi/splash.png and /dev/null differ diff --git a/android/app/src/main/res/drawable-night-hdpi/android12splash.png b/android/app/src/main/res/drawable-night-hdpi/android12splash.png deleted file mode 100644 index c8861cf6..00000000 Binary files a/android/app/src/main/res/drawable-night-hdpi/android12splash.png and /dev/null differ diff --git a/android/app/src/main/res/drawable-night-hdpi/splash.png b/android/app/src/main/res/drawable-night-hdpi/splash.png deleted file mode 100644 index c8861cf6..00000000 Binary files a/android/app/src/main/res/drawable-night-hdpi/splash.png and /dev/null differ diff --git a/android/app/src/main/res/drawable-night-mdpi/android12splash.png b/android/app/src/main/res/drawable-night-mdpi/android12splash.png deleted file mode 100644 index e71139cb..00000000 Binary files a/android/app/src/main/res/drawable-night-mdpi/android12splash.png and /dev/null differ diff --git a/android/app/src/main/res/drawable-night-mdpi/splash.png b/android/app/src/main/res/drawable-night-mdpi/splash.png deleted file mode 100644 index e71139cb..00000000 Binary files a/android/app/src/main/res/drawable-night-mdpi/splash.png and /dev/null differ diff --git a/android/app/src/main/res/drawable-night-v21/background.png b/android/app/src/main/res/drawable-night-v21/background.png deleted file mode 100644 index 8d8cca37..00000000 Binary files a/android/app/src/main/res/drawable-night-v21/background.png and /dev/null differ diff --git a/android/app/src/main/res/drawable-night-v21/launch_background.xml b/android/app/src/main/res/drawable-night-v21/launch_background.xml deleted file mode 100644 index 52e8749e..00000000 --- a/android/app/src/main/res/drawable-night-v21/launch_background.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - diff --git a/android/app/src/main/res/drawable-night-xhdpi/android12splash.png b/android/app/src/main/res/drawable-night-xhdpi/android12splash.png deleted file mode 100644 index 2e33bc0f..00000000 Binary files a/android/app/src/main/res/drawable-night-xhdpi/android12splash.png and /dev/null differ diff --git a/android/app/src/main/res/drawable-night-xhdpi/splash.png b/android/app/src/main/res/drawable-night-xhdpi/splash.png deleted file mode 100644 index 2e33bc0f..00000000 Binary files a/android/app/src/main/res/drawable-night-xhdpi/splash.png and /dev/null differ diff --git a/android/app/src/main/res/drawable-night-xxhdpi/android12splash.png b/android/app/src/main/res/drawable-night-xxhdpi/android12splash.png deleted file mode 100644 index ab32671c..00000000 Binary files a/android/app/src/main/res/drawable-night-xxhdpi/android12splash.png and /dev/null differ diff --git a/android/app/src/main/res/drawable-night-xxhdpi/splash.png b/android/app/src/main/res/drawable-night-xxhdpi/splash.png deleted file mode 100644 index ab32671c..00000000 Binary files a/android/app/src/main/res/drawable-night-xxhdpi/splash.png and /dev/null differ diff --git a/android/app/src/main/res/drawable-night-xxxhdpi/android12splash.png b/android/app/src/main/res/drawable-night-xxxhdpi/android12splash.png deleted file mode 100644 index 7786bc6a..00000000 Binary files a/android/app/src/main/res/drawable-night-xxxhdpi/android12splash.png and /dev/null differ diff --git a/android/app/src/main/res/drawable-night-xxxhdpi/splash.png b/android/app/src/main/res/drawable-night-xxxhdpi/splash.png deleted file mode 100644 index 7786bc6a..00000000 Binary files a/android/app/src/main/res/drawable-night-xxxhdpi/splash.png and /dev/null differ diff --git a/android/app/src/main/res/drawable-night/background.png b/android/app/src/main/res/drawable-night/background.png deleted file mode 100644 index 8d8cca37..00000000 Binary files a/android/app/src/main/res/drawable-night/background.png and /dev/null differ diff --git a/android/app/src/main/res/drawable-night/launch_background.xml b/android/app/src/main/res/drawable-night/launch_background.xml deleted file mode 100644 index 52e8749e..00000000 --- a/android/app/src/main/res/drawable-night/launch_background.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - diff --git a/android/app/src/main/res/drawable-v21/background.png b/android/app/src/main/res/drawable-v21/background.png deleted file mode 100644 index b0dc5a7e..00000000 Binary files a/android/app/src/main/res/drawable-v21/background.png and /dev/null differ diff --git a/android/app/src/main/res/drawable-v21/launch_background.xml b/android/app/src/main/res/drawable-v21/launch_background.xml deleted file mode 100644 index 52e8749e..00000000 --- a/android/app/src/main/res/drawable-v21/launch_background.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - diff --git a/android/app/src/main/res/drawable-xhdpi/android12splash.png b/android/app/src/main/res/drawable-xhdpi/android12splash.png deleted file mode 100644 index b7fbc3b1..00000000 Binary files a/android/app/src/main/res/drawable-xhdpi/android12splash.png and /dev/null differ diff --git a/android/app/src/main/res/drawable-xhdpi/branding.png b/android/app/src/main/res/drawable-xhdpi/branding.png deleted file mode 100644 index 0e69d9a5..00000000 Binary files a/android/app/src/main/res/drawable-xhdpi/branding.png and /dev/null differ diff --git a/android/app/src/main/res/drawable-xhdpi/splash.png b/android/app/src/main/res/drawable-xhdpi/splash.png deleted file mode 100644 index b7fbc3b1..00000000 Binary files a/android/app/src/main/res/drawable-xhdpi/splash.png and /dev/null differ diff --git a/android/app/src/main/res/drawable-xxhdpi/android12splash.png b/android/app/src/main/res/drawable-xxhdpi/android12splash.png deleted file mode 100644 index 5be1b185..00000000 Binary files a/android/app/src/main/res/drawable-xxhdpi/android12splash.png and /dev/null differ diff --git a/android/app/src/main/res/drawable-xxhdpi/branding.png b/android/app/src/main/res/drawable-xxhdpi/branding.png deleted file mode 100644 index 9b481e42..00000000 Binary files a/android/app/src/main/res/drawable-xxhdpi/branding.png and /dev/null differ diff --git a/android/app/src/main/res/drawable-xxhdpi/splash.png b/android/app/src/main/res/drawable-xxhdpi/splash.png deleted file mode 100644 index 5be1b185..00000000 Binary files a/android/app/src/main/res/drawable-xxhdpi/splash.png and /dev/null differ diff --git a/android/app/src/main/res/drawable-xxxhdpi/android12splash.png b/android/app/src/main/res/drawable-xxxhdpi/android12splash.png deleted file mode 100644 index db9ae03b..00000000 Binary files a/android/app/src/main/res/drawable-xxxhdpi/android12splash.png and /dev/null differ diff --git a/android/app/src/main/res/drawable-xxxhdpi/branding.png b/android/app/src/main/res/drawable-xxxhdpi/branding.png deleted file mode 100644 index c0255d8a..00000000 Binary files a/android/app/src/main/res/drawable-xxxhdpi/branding.png and /dev/null differ diff --git a/android/app/src/main/res/drawable-xxxhdpi/splash.png b/android/app/src/main/res/drawable-xxxhdpi/splash.png deleted file mode 100644 index db9ae03b..00000000 Binary files a/android/app/src/main/res/drawable-xxxhdpi/splash.png and /dev/null differ diff --git a/android/app/src/main/res/drawable/background.png b/android/app/src/main/res/drawable/background.png deleted file mode 100644 index b0dc5a7e..00000000 Binary files a/android/app/src/main/res/drawable/background.png and /dev/null differ diff --git a/android/app/src/main/res/drawable/launch_background.xml b/android/app/src/main/res/drawable/launch_background.xml deleted file mode 100644 index 52e8749e..00000000 --- a/android/app/src/main/res/drawable/launch_background.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - diff --git a/android/app/src/main/res/mipmap-hdpi/ic_launcher.png b/android/app/src/main/res/mipmap-hdpi/ic_launcher.png deleted file mode 100644 index db77bb4b..00000000 Binary files a/android/app/src/main/res/mipmap-hdpi/ic_launcher.png and /dev/null differ diff --git a/android/app/src/main/res/mipmap-hdpi/launcher_icon.png b/android/app/src/main/res/mipmap-hdpi/launcher_icon.png deleted file mode 100644 index 02686c4a..00000000 Binary files a/android/app/src/main/res/mipmap-hdpi/launcher_icon.png and /dev/null differ diff --git a/android/app/src/main/res/mipmap-mdpi/ic_launcher.png b/android/app/src/main/res/mipmap-mdpi/ic_launcher.png deleted file mode 100644 index 17987b79..00000000 Binary files a/android/app/src/main/res/mipmap-mdpi/ic_launcher.png and /dev/null differ diff --git a/android/app/src/main/res/mipmap-mdpi/launcher_icon.png b/android/app/src/main/res/mipmap-mdpi/launcher_icon.png deleted file mode 100644 index 0d9e8e9f..00000000 Binary files a/android/app/src/main/res/mipmap-mdpi/launcher_icon.png and /dev/null differ diff --git a/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png b/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png deleted file mode 100644 index 09d43914..00000000 Binary files a/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png and /dev/null differ diff --git a/android/app/src/main/res/mipmap-xhdpi/launcher_icon.png b/android/app/src/main/res/mipmap-xhdpi/launcher_icon.png deleted file mode 100644 index e36a9ffd..00000000 Binary files a/android/app/src/main/res/mipmap-xhdpi/launcher_icon.png and /dev/null differ diff --git a/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png b/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png deleted file mode 100644 index d5f1c8d3..00000000 Binary files a/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png and /dev/null differ diff --git a/android/app/src/main/res/mipmap-xxhdpi/launcher_icon.png b/android/app/src/main/res/mipmap-xxhdpi/launcher_icon.png deleted file mode 100644 index 7a2b0dfc..00000000 Binary files a/android/app/src/main/res/mipmap-xxhdpi/launcher_icon.png and /dev/null differ diff --git a/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png deleted file mode 100644 index 4d6372ee..00000000 Binary files a/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png and /dev/null differ diff --git a/android/app/src/main/res/mipmap-xxxhdpi/launcher_icon.png b/android/app/src/main/res/mipmap-xxxhdpi/launcher_icon.png deleted file mode 100644 index 236a5963..00000000 Binary files a/android/app/src/main/res/mipmap-xxxhdpi/launcher_icon.png and /dev/null differ diff --git a/android/app/src/main/res/values-night-v31/styles.xml b/android/app/src/main/res/values-night-v31/styles.xml deleted file mode 100644 index 498719cf..00000000 --- a/android/app/src/main/res/values-night-v31/styles.xml +++ /dev/null @@ -1,22 +0,0 @@ - - - - - - - diff --git a/android/app/src/main/res/values-night/styles.xml b/android/app/src/main/res/values-night/styles.xml deleted file mode 100644 index dbc9ea9f..00000000 --- a/android/app/src/main/res/values-night/styles.xml +++ /dev/null @@ -1,22 +0,0 @@ - - - - - - - diff --git a/android/app/src/main/res/values-v31/styles.xml b/android/app/src/main/res/values-v31/styles.xml deleted file mode 100644 index 8a806e08..00000000 --- a/android/app/src/main/res/values-v31/styles.xml +++ /dev/null @@ -1,22 +0,0 @@ - - - - - - - diff --git a/android/app/src/main/res/values/styles.xml b/android/app/src/main/res/values/styles.xml deleted file mode 100644 index 0d1fa8fc..00000000 --- a/android/app/src/main/res/values/styles.xml +++ /dev/null @@ -1,22 +0,0 @@ - - - - - - - diff --git a/android/app/src/profile/AndroidManifest.xml b/android/app/src/profile/AndroidManifest.xml deleted file mode 100644 index faae0737..00000000 --- a/android/app/src/profile/AndroidManifest.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - diff --git a/android/build.gradle b/android/build.gradle deleted file mode 100644 index 9bc02fa3..00000000 --- a/android/build.gradle +++ /dev/null @@ -1,31 +0,0 @@ -buildscript { - ext.kotlin_version = '1.8.20' - repositories { - google() - mavenCentral() - } - - dependencies { - classpath 'com.android.tools.build:gradle:7.1.2' - classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" - } -} - -allprojects { - repositories { - google() - mavenCentral() - } -} - -rootProject.buildDir = '../build' -subprojects { - project.buildDir = "${rootProject.buildDir}/${project.name}" -} -subprojects { - project.evaluationDependsOn(':app') -} - -tasks.register("clean", Delete) { - delete rootProject.buildDir -} diff --git a/android/gradle.properties b/android/gradle.properties deleted file mode 100644 index 94adc3a3..00000000 --- a/android/gradle.properties +++ /dev/null @@ -1,3 +0,0 @@ -org.gradle.jvmargs=-Xmx1536M -android.useAndroidX=true -android.enableJetifier=true diff --git a/android/gradle/wrapper/gradle-wrapper.properties b/android/gradle/wrapper/gradle-wrapper.properties deleted file mode 100644 index cb24abda..00000000 --- a/android/gradle/wrapper/gradle-wrapper.properties +++ /dev/null @@ -1,5 +0,0 @@ -distributionBase=GRADLE_USER_HOME -distributionPath=wrapper/dists -zipStoreBase=GRADLE_USER_HOME -zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.4-all.zip diff --git a/android/settings.gradle b/android/settings.gradle deleted file mode 100644 index 44e62bcf..00000000 --- a/android/settings.gradle +++ /dev/null @@ -1,11 +0,0 @@ -include ':app' - -def localPropertiesFile = new File(rootProject.projectDir, "local.properties") -def properties = new Properties() - -assert localPropertiesFile.exists() -localPropertiesFile.withReader("UTF-8") { reader -> properties.load(reader) } - -def flutterSdkPath = properties.getProperty("flutter.sdk") -assert flutterSdkPath != null, "flutter.sdk not set in local.properties" -apply from: "$flutterSdkPath/packages/flutter_tools/gradle/app_plugin_loader.gradle" diff --git a/assets/AssetManifest.bin b/assets/AssetManifest.bin new file mode 100644 index 00000000..717c0e71 --- /dev/null +++ b/assets/AssetManifest.bin @@ -0,0 +1 @@ + assets/icons/dark_icon.png  assetassets/icons/dark_icon.png'assets/icons/launcher/from_suwayomi.png  asset'assets/icons/launcher/from_suwayomi.png'assets/icons/launcher/sorayomi_icon.ico  asset'assets/icons/launcher/sorayomi_icon.ico'assets/icons/launcher/sorayomi_icon.png  asset'assets/icons/launcher/sorayomi_icon.png/assets/icons/launcher/sorayomi_preview_icon.png  asset/assets/icons/launcher/sorayomi_preview_icon.pngassets/icons/light_icon.png  assetassets/icons/light_icon.pngassets/icons/previous_done.png  assetassets/icons/previous_done.png2packages/cupertino_icons/assets/CupertinoIcons.ttf  asset2packages/cupertino_icons/assets/CupertinoIcons.ttf)packages/fluttertoast/assets/toastify.css  asset)packages/fluttertoast/assets/toastify.css(packages/fluttertoast/assets/toastify.js  asset(packages/fluttertoast/assets/toastify.js9packages/font_awesome_flutter/lib/fonts/fa-brands-400.ttf  asset9packages/font_awesome_flutter/lib/fonts/fa-brands-400.ttf:packages/font_awesome_flutter/lib/fonts/fa-regular-400.ttf  asset:packages/font_awesome_flutter/lib/fonts/fa-regular-400.ttf8packages/font_awesome_flutter/lib/fonts/fa-solid-900.ttf  asset8packages/font_awesome_flutter/lib/fonts/fa-solid-900.ttf \ No newline at end of file diff --git a/assets/AssetManifest.json b/assets/AssetManifest.json new file mode 100644 index 00000000..1e7faffd --- /dev/null +++ b/assets/AssetManifest.json @@ -0,0 +1 @@ +{"assets/icons/dark_icon.png":["assets/icons/dark_icon.png"],"assets/icons/launcher/from_suwayomi.png":["assets/icons/launcher/from_suwayomi.png"],"assets/icons/launcher/sorayomi_icon.ico":["assets/icons/launcher/sorayomi_icon.ico"],"assets/icons/launcher/sorayomi_icon.png":["assets/icons/launcher/sorayomi_icon.png"],"assets/icons/launcher/sorayomi_preview_icon.png":["assets/icons/launcher/sorayomi_preview_icon.png"],"assets/icons/light_icon.png":["assets/icons/light_icon.png"],"assets/icons/previous_done.png":["assets/icons/previous_done.png"],"packages/cupertino_icons/assets/CupertinoIcons.ttf":["packages/cupertino_icons/assets/CupertinoIcons.ttf"],"packages/fluttertoast/assets/toastify.css":["packages/fluttertoast/assets/toastify.css"],"packages/fluttertoast/assets/toastify.js":["packages/fluttertoast/assets/toastify.js"],"packages/font_awesome_flutter/lib/fonts/fa-brands-400.ttf":["packages/font_awesome_flutter/lib/fonts/fa-brands-400.ttf"],"packages/font_awesome_flutter/lib/fonts/fa-regular-400.ttf":["packages/font_awesome_flutter/lib/fonts/fa-regular-400.ttf"],"packages/font_awesome_flutter/lib/fonts/fa-solid-900.ttf":["packages/font_awesome_flutter/lib/fonts/fa-solid-900.ttf"]} \ No newline at end of file diff --git a/assets/FontManifest.json b/assets/FontManifest.json new file mode 100644 index 00000000..23637bc3 --- /dev/null +++ b/assets/FontManifest.json @@ -0,0 +1 @@ +[{"family":"MaterialIcons","fonts":[{"asset":"fonts/MaterialIcons-Regular.otf"}]},{"family":"packages/cupertino_icons/CupertinoIcons","fonts":[{"asset":"packages/cupertino_icons/assets/CupertinoIcons.ttf"}]},{"family":"packages/font_awesome_flutter/FontAwesomeBrands","fonts":[{"weight":400,"asset":"packages/font_awesome_flutter/lib/fonts/fa-brands-400.ttf"}]},{"family":"packages/font_awesome_flutter/FontAwesomeRegular","fonts":[{"weight":400,"asset":"packages/font_awesome_flutter/lib/fonts/fa-regular-400.ttf"}]},{"family":"packages/font_awesome_flutter/FontAwesomeSolid","fonts":[{"weight":900,"asset":"packages/font_awesome_flutter/lib/fonts/fa-solid-900.ttf"}]}] \ No newline at end of file diff --git a/assets/NOTICES b/assets/NOTICES new file mode 100644 index 00000000..99ca1170 --- /dev/null +++ b/assets/NOTICES @@ -0,0 +1,37352 @@ +Copyright 2017 The Chromium Authors. All rights reserved. + +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 Inc. 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. +-------------------------------------------------------------------------------- +_fe_analyzer_shared + +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. + +-------------------------------------------------------------------------------- +abseil-cpp + +Apache License +Version 2.0, January 2004 +https://www.apache.org/licenses/ + +TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + +1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + +2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + +3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + +4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + +5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + +6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + +7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + +8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + +9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + +END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + https://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +-------------------------------------------------------------------------------- +abseil-cpp +angle +dart +etc1 +expat +flatbuffers +fuchsia-vulkan +fuchsia_sdk +glslang +khronos +perfetto +shaderc +spirv-cross +txt +vulkan +vulkan-headers +vulkan-validation-layers +wuffs + +Apache License +Version 2.0, January 2004 +http://www.apache.org/licenses/ + +TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + +1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + +2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + +3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + +4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + +5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + +6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + +7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + +8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + +9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + +END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +-------------------------------------------------------------------------------- +accessibility + +Copyright (c) 2009 The Chromium Authors. All rights reserved. + +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 Inc. 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. +-------------------------------------------------------------------------------- +accessibility + +Copyright (c) 2010 The Chromium Authors. All rights reserved. + +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 Inc. 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. +-------------------------------------------------------------------------------- +accessibility + +Copyright (c) 2012 The Chromium Authors. All rights reserved. + +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 Inc. 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. +-------------------------------------------------------------------------------- +accessibility + +Copyright (c) 2014 The Chromium Authors. All rights reserved. + +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 Inc. 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. +-------------------------------------------------------------------------------- +accessibility + +Copyright 2013 The Chromium Authors. All rights reserved. + +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 Inc. 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. +-------------------------------------------------------------------------------- +accessibility + +Copyright 2016 The Chromium Authors. All rights reserved. + +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 Inc. 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. +-------------------------------------------------------------------------------- +accessibility + +Copyright 2020 The Chromium Authors. All rights reserved. + +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 Inc. 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. +-------------------------------------------------------------------------------- +accessibility +angle + +Copyright (c) 2011 The Chromium Authors. All rights reserved. + +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 Inc. 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. +-------------------------------------------------------------------------------- +accessibility +angle + +Copyright (c) 2013 The Chromium Authors. All rights reserved. + +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 Inc. 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. +-------------------------------------------------------------------------------- +accessibility +angle + +Copyright 2017 The Chromium Authors. All rights reserved. + +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 Inc. 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. +-------------------------------------------------------------------------------- +accessibility +angle +fuchsia_sdk +skia + +Copyright 2018 The Chromium Authors. All rights reserved. + +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 Inc. 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. +-------------------------------------------------------------------------------- +accessibility +angle +icu + +Copyright 2014 The Chromium Authors. All rights reserved. + +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 Inc. 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. +-------------------------------------------------------------------------------- +accessibility +engine +spring_animation +tonic +txt +url_launcher_web +web_test_fonts +web_unicode + +Copyright 2013 The Flutter Authors. All rights reserved. + +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 Inc. 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. +-------------------------------------------------------------------------------- +accessibility +fuchsia_sdk + +Copyright 2019 The Chromium Authors. All rights reserved. + +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 Inc. 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. +-------------------------------------------------------------------------------- +accessibility +skia + +Copyright 2015 The Chromium Authors. All rights reserved. + +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 Inc. 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. +-------------------------------------------------------------------------------- +analyzer +intl + +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. + +-------------------------------------------------------------------------------- +analyzer_plugin + +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. + +-------------------------------------------------------------------------------- +angle + +Copyright (c) 2008-2018 The Khronos Group Inc. + +Permission is hereby granted, free of charge, to any person obtaining a +copy of this software and/or associated documentation files (the +"Materials"), to deal in the Materials without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Materials, and to +permit persons to whom the Materials are 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 Materials. + +THE MATERIALS ARE 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 +MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS. +-------------------------------------------------------------------------------- +angle + +Copyright (c) 2013-2017 The Khronos Group Inc. + +Permission is hereby granted, free of charge, to any person obtaining a +copy of this software and/or associated documentation files (the +"Materials"), to deal in the Materials without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Materials, and to +permit persons to whom the Materials are 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 Materials. + +THE MATERIALS ARE 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 +MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS. +-------------------------------------------------------------------------------- +angle + +Copyright (c) 2020 The ANGLE Project Authors. All rights reserved. + +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 TransGaming Inc., Google Inc., 3DLabs Inc. + Ltd., nor the names of their 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. +-------------------------------------------------------------------------------- +angle + +Copyright 2002 The ANGLE Project Authors. All rights reserved. + +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 TransGaming Inc., Google Inc., 3DLabs Inc. + Ltd., nor the names of their 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. +-------------------------------------------------------------------------------- +angle + +Copyright 2010 The ANGLE Project Authors. All rights reserved. + +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 TransGaming Inc., Google Inc., 3DLabs Inc. + Ltd., nor the names of their 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. +-------------------------------------------------------------------------------- +angle + +Copyright 2011 The ANGLE Project Authors. All rights reserved. + +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 TransGaming Inc., Google Inc., 3DLabs Inc. + Ltd., nor the names of their 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. +-------------------------------------------------------------------------------- +angle + +Copyright 2012 The ANGLE Project Authors. All rights reserved. + +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 TransGaming Inc., Google Inc., 3DLabs Inc. + Ltd., nor the names of their 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. +-------------------------------------------------------------------------------- +angle + +Copyright 2013 The ANGLE Project Authors. All rights reserved. + +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 TransGaming Inc., Google Inc., 3DLabs Inc. + Ltd., nor the names of their 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. +-------------------------------------------------------------------------------- +angle + +Copyright 2013-2020 The Khronos Group Inc. + +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. +-------------------------------------------------------------------------------- +angle + +Copyright 2014 The ANGLE Project Authors. All rights reserved. + +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 TransGaming Inc., Google Inc., 3DLabs Inc. + Ltd., nor the names of their 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. +-------------------------------------------------------------------------------- +angle + +Copyright 2015 The ANGLE Project Authors. All rights reserved. + +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 TransGaming Inc., Google Inc., 3DLabs Inc. + Ltd., nor the names of their 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. +-------------------------------------------------------------------------------- +angle + +Copyright 2016 The ANGLE Project Authors. All rights reserved. + +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 TransGaming Inc., Google Inc., 3DLabs Inc. + Ltd., nor the names of their 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. +-------------------------------------------------------------------------------- +angle + +Copyright 2017 The ANGLE Project Authors. All rights reserved. + +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 TransGaming Inc., Google Inc., 3DLabs Inc. + Ltd., nor the names of their 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. +-------------------------------------------------------------------------------- +angle + +Copyright 2018 The ANGLE Project Authors. +All rights reserved. + +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 TransGaming Inc., Google Inc., 3DLabs Inc. + Ltd., nor the names of their 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. +-------------------------------------------------------------------------------- +angle + +Copyright 2018 The ANGLE Project Authors. All rights reserved. + +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 TransGaming Inc., Google Inc., 3DLabs Inc. + Ltd., nor the names of their 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. +-------------------------------------------------------------------------------- +angle + +Copyright 2019 The ANGLE Project. All rights reserved. + +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 TransGaming Inc., Google Inc., 3DLabs Inc. + Ltd., nor the names of their 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. +-------------------------------------------------------------------------------- +angle + +Copyright 2020 The ANGLE Project Authors. All rights reserved. + +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 TransGaming Inc., Google Inc., 3DLabs Inc. + Ltd., nor the names of their 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. +-------------------------------------------------------------------------------- +angle + +Copyright 2020 The ANGLE Project. All rights reserved. + +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 TransGaming Inc., Google Inc., 3DLabs Inc. + Ltd., nor the names of their 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. +-------------------------------------------------------------------------------- +angle + +Copyright 2021 The ANGLE Project Authors. All rights reserved. + +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 TransGaming Inc., Google Inc., 3DLabs Inc. + Ltd., nor the names of their 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. +-------------------------------------------------------------------------------- +angle + +Copyright 2021 The ANGLE Project. All rights reserved. + +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 TransGaming Inc., Google Inc., 3DLabs Inc. + Ltd., nor the names of their 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. +-------------------------------------------------------------------------------- +angle + +Copyright 2021-2022 The ANGLE Project Authors. All rights reserved. + +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 TransGaming Inc., Google Inc., 3DLabs Inc. + Ltd., nor the names of their 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. +-------------------------------------------------------------------------------- +angle + +Copyright 2022 The ANGLE Project Authors. All rights reserved. + +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 TransGaming Inc., Google Inc., 3DLabs Inc. + Ltd., nor the names of their 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. +-------------------------------------------------------------------------------- +angle + +Copyright 2023 The ANGLE Project Authors. All rights reserved. + +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 TransGaming Inc., Google Inc., 3DLabs Inc. + Ltd., nor the names of their 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. +-------------------------------------------------------------------------------- +angle + +Copyright The ANGLE Project Authors. All rights reserved. + +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 TransGaming Inc., Google Inc., 3DLabs Inc. + Ltd., nor the names of their 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. +-------------------------------------------------------------------------------- +angle +khronos + +Copyright (c) 2013-2018 The Khronos Group Inc. + +Permission is hereby granted, free of charge, to any person obtaining a +copy of this software and/or associated documentation files (the +"Materials"), to deal in the Materials without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Materials, and to +permit persons to whom the Materials are 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 Materials. + +THE MATERIALS ARE 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 +MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS. +-------------------------------------------------------------------------------- +angle +xxhash + +Copyright 2019 The ANGLE Project Authors. All rights reserved. + +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 TransGaming Inc., Google Inc., 3DLabs Inc. + Ltd., nor the names of their 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. +-------------------------------------------------------------------------------- +archive + +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. +-------------------------------------------------------------------------------- +args +csslib +logging + +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. + +-------------------------------------------------------------------------------- +async +cli_util +collection +mime +stream_channel +typed_data + +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. + +-------------------------------------------------------------------------------- +boolean_selector +meta + +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. + +-------------------------------------------------------------------------------- +boringssl + +Copyright (C) 1995-1997 Eric Young (eay@cryptsoft.com) +All rights reserved. + +This package is an SSL implementation written +by Eric Young (eay@cryptsoft.com). +The implementation was written so as to conform with Netscapes SSL. + +This library is free for commercial and non-commercial use as long as +the following conditions are aheared to. The following conditions +apply to all code found in this distribution, be it the RC4, RSA, +lhash, DES, etc., code; not just the SSL code. The SSL documentation +included with this distribution is covered by the same copyright terms +except that the holder is Tim Hudson (tjh@cryptsoft.com). + +Copyright remains Eric Young's, and as such any Copyright notices in +the code are not to be removed. +If this package is used in a product, Eric Young should be given attribution +as the author of the parts of the library used. +This can be in the form of a textual message at program startup or +in documentation (online or textual) provided with the package. + +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 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. All advertising materials mentioning features or use of this software + must display the following acknowledgement: + "This product includes cryptographic software written by + Eric Young (eay@cryptsoft.com)" + The word 'cryptographic' can be left out if the rouines from the library + being used are not cryptographic related :-). +4. If you include any Windows specific code (or a derivative thereof) from + the apps directory (application code) you must include an acknowledgement: + "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" + +THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``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 AUTHOR 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. + +The licence and distribution terms for any publically available version or +derivative of this code cannot be changed. i.e. this code cannot simply be +copied and put under another distribution licence +[including the GNU Public Licence.] +-------------------------------------------------------------------------------- +boringssl + +Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) +All rights reserved. + +This package is an SSL implementation written +by Eric Young (eay@cryptsoft.com). +The implementation was written so as to conform with Netscapes SSL. + +This library is free for commercial and non-commercial use as long as +the following conditions are aheared to. The following conditions +apply to all code found in this distribution, be it the RC4, RSA, +lhash, DES, etc., code; not just the SSL code. The SSL documentation +included with this distribution is covered by the same copyright terms +except that the holder is Tim Hudson (tjh@cryptsoft.com). + +Copyright remains Eric Young's, and as such any Copyright notices in +the code are not to be removed. +If this package is used in a product, Eric Young should be given attribution +as the author of the parts of the library used. +This can be in the form of a textual message at program startup or +in documentation (online or textual) provided with the package. + +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 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. All advertising materials mentioning features or use of this software + must display the following acknowledgement: + "This product includes cryptographic software written by + Eric Young (eay@cryptsoft.com)" + The word 'cryptographic' can be left out if the rouines from the library + being used are not cryptographic related :-). +4. If you include any Windows specific code (or a derivative thereof) from + the apps directory (application code) you must include an acknowledgement: + "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" + +THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``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 AUTHOR 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. + +The licence and distribution terms for any publically available version or +derivative of this code cannot be changed. i.e. this code cannot simply be +copied and put under another distribution licence +[including the GNU Public Licence.] +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 1998-2000 The OpenSSL Project. All rights reserved. + +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. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.openssl.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + openssl-core@openssl.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.openssl.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED 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 OpenSSL PROJECT OR +ITS 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. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 1998-2001 The OpenSSL Project. All rights reserved. + +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. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.openssl.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + openssl-core@openssl.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.openssl.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED 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 OpenSSL PROJECT OR +ITS 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. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 1998-2002 The OpenSSL Project. All rights reserved. + +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. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.openssl.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + openssl-core@openssl.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.openssl.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED 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 OpenSSL PROJECT OR +ITS 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. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 1998-2003 The OpenSSL Project. All rights reserved. + +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. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.openssl.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + openssl-core@openssl.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.openssl.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED 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 OpenSSL PROJECT OR +ITS 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. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 1998-2004 The OpenSSL Project. All rights reserved. + +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. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.openssl.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + openssl-core@openssl.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.openssl.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED 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 OpenSSL PROJECT OR +ITS 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. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 1998-2005 The OpenSSL Project. All rights reserved. + +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. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + openssl-core@OpenSSL.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED 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 OpenSSL PROJECT OR +ITS 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. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 1998-2005 The OpenSSL Project. All rights reserved. + +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. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.openssl.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + openssl-core@openssl.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.openssl.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED 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 OpenSSL PROJECT OR +ITS 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. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 1998-2006 The OpenSSL Project. All rights reserved. + +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. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.openssl.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + openssl-core@openssl.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.openssl.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED 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 OpenSSL PROJECT OR +ITS 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. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 1998-2007 The OpenSSL Project. All rights reserved. + +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. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.openssl.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + openssl-core@openssl.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.openssl.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED 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 OpenSSL PROJECT OR +ITS 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. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 1998-2011 The OpenSSL Project. All rights reserved. + +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. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.openssl.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + openssl-core@openssl.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.openssl.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED 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 OpenSSL PROJECT OR +ITS 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. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 1999 The OpenSSL Project. All rights reserved. + +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. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + licensing@OpenSSL.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED 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 OpenSSL PROJECT OR +ITS 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. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 1999-2002 The OpenSSL Project. All rights reserved. + +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. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + licensing@OpenSSL.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED 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 OpenSSL PROJECT OR +ITS 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. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 1999-2003 The OpenSSL Project. All rights reserved. + +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. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + licensing@OpenSSL.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED 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 OpenSSL PROJECT OR +ITS 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. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 1999-2004 The OpenSSL Project. All rights reserved. + +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. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + licensing@OpenSSL.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED 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 OpenSSL PROJECT OR +ITS 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. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 1999-2005 The OpenSSL Project. All rights reserved. + +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. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + openssl-core@OpenSSL.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED 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 OpenSSL PROJECT OR +ITS 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. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 1999-2007 The OpenSSL Project. All rights reserved. + +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. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + licensing@OpenSSL.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED 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 OpenSSL PROJECT OR +ITS 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. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 1999-2008 The OpenSSL Project. All rights reserved. + +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. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + licensing@OpenSSL.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED 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 OpenSSL PROJECT OR +ITS 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. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2000 The OpenSSL Project. All rights reserved. + +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. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + licensing@OpenSSL.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED 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 OpenSSL PROJECT OR +ITS 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. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2000-2002 The OpenSSL Project. All rights reserved. + +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. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + licensing@OpenSSL.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED 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 OpenSSL PROJECT OR +ITS 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. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2000-2003 The OpenSSL Project. All rights reserved. + +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. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + licensing@OpenSSL.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED 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 OpenSSL PROJECT OR +ITS 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. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2000-2005 The OpenSSL Project. All rights reserved. + +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. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + licensing@OpenSSL.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED 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 OpenSSL PROJECT OR +ITS 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. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2001 The OpenSSL Project. All rights reserved. + +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. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + licensing@OpenSSL.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED 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 OpenSSL PROJECT OR +ITS 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. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2001-2011 The OpenSSL Project. All rights reserved. + +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. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.openssl.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + openssl-core@openssl.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.openssl.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED 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 OpenSSL PROJECT OR +ITS 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. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2002-2006 The OpenSSL Project. All rights reserved. + +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. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.openssl.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + openssl-core@openssl.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.openssl.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED 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 OpenSSL PROJECT OR +ITS 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. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2003 The OpenSSL Project. All rights reserved. + +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. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + licensing@OpenSSL.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED 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 OpenSSL PROJECT OR +ITS 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. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2004 The OpenSSL Project. All rights reserved. + +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. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + licensing@OpenSSL.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED 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 OpenSSL PROJECT OR +ITS 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. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2005 The OpenSSL Project. All rights reserved. + +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. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + licensing@OpenSSL.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED 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 OpenSSL PROJECT OR +ITS 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. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2006 The OpenSSL Project. All rights reserved. + +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. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + licensing@OpenSSL.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED 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 OpenSSL PROJECT OR +ITS 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. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2006,2007 The OpenSSL Project. All rights reserved. + +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. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + licensing@OpenSSL.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED 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 OpenSSL PROJECT OR +ITS 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. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2008 The OpenSSL Project. All rights reserved. + +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. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.openssl.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + openssl-core@openssl.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.openssl.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED 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 OpenSSL PROJECT OR +ITS 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. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2010 The OpenSSL Project. All rights reserved. + +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. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + licensing@OpenSSL.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED 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 OpenSSL PROJECT OR +ITS 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. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2011 The OpenSSL Project. All rights reserved. + +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. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + licensing@OpenSSL.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED 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 OpenSSL PROJECT OR +ITS 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. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2011 The OpenSSL Project. All rights reserved. + +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. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.openssl.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + openssl-core@openssl.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.openssl.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED 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 OpenSSL PROJECT OR +ITS 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. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2012 The OpenSSL Project. All rights reserved. + +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. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.openssl.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + openssl-core@openssl.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.openssl.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED 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 OpenSSL PROJECT OR +ITS 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. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2013 The OpenSSL Project. All rights reserved. + +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. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + licensing@OpenSSL.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED 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 OpenSSL PROJECT OR +ITS 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. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2014, Google Inc. + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY +SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION +OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN +CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2015, Google Inc. + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY +SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION +OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN +CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2016, Google Inc. + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY +SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION +OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN +CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2017, Google Inc. + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY +SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION +OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN +CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2017, the HRSS authors. + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY +SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION +OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN +CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2018, Google Inc. + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY +SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION +OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN +CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2018, Google Inc. +Copyright (c) 2020, Arm Ltd. + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY +SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION +OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN +CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2019, Google Inc. + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY +SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION +OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN +CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2020, Google Inc. + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY +SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION +OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN +CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2021, Google Inc. + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY +SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION +OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN +CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2022, Google Inc. + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY +SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION +OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN +CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2023, Google Inc. + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY +SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION +OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN +CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +-------------------------------------------------------------------------------- +boringssl + +Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + +Licensed under the OpenSSL license (the "License"). You may not use +this file except in compliance with the License. You can obtain a copy +in the file LICENSE in the source distribution or at +https://www.openssl.org/source/license.html +-------------------------------------------------------------------------------- +boringssl + +Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved. + +Licensed under the OpenSSL license (the "License"). You may not use +this file except in compliance with the License. You can obtain a copy +in the file LICENSE in the source distribution or at +https://www.openssl.org/source/license.html +-------------------------------------------------------------------------------- +boringssl + +Copyright 2001-2017 The OpenSSL Project Authors. All Rights Reserved. + +Licensed under the OpenSSL license (the "License"). You may not use +this file except in compliance with the License. You can obtain a copy +in the file LICENSE in the source distribution or at +https://www.openssl.org/source/license.html +-------------------------------------------------------------------------------- +boringssl + +Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. + +Portions of the attached software ("Contribution") are developed by +SUN MICROSYSTEMS, INC., and are contributed to the OpenSSL project. + +The Contribution is licensed pursuant to the Eric Young open source +license provided above. +-------------------------------------------------------------------------------- +boringssl + +Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. + +Portions of the attached software ("Contribution") are developed by +SUN MICROSYSTEMS, INC., and are contributed to the OpenSSL project. + +The Contribution is licensed pursuant to the OpenSSL open source +license provided above. +-------------------------------------------------------------------------------- +boringssl + +Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. + +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. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + licensing@OpenSSL.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED 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 OpenSSL PROJECT OR +ITS 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. +-------------------------------------------------------------------------------- +boringssl + +Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. +ECC cipher suite support in OpenSSL originally developed by +SUN MICROSYSTEMS, INC., and contributed to the OpenSSL project. +-------------------------------------------------------------------------------- +boringssl + +Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED. +ECDH support in OpenSSL originally developed by +SUN MICROSYSTEMS, INC., and contributed to the OpenSSL project. +-------------------------------------------------------------------------------- +boringssl + +Copyright 2005 Nokia. All rights reserved. + +The portions of the attached software ("Contribution") is developed by +Nokia Corporation and is licensed pursuant to the OpenSSL open source +license. + +The Contribution, originally written by Mika Kousa and Pasi Eronen of +Nokia Corporation, consists of the "PSK" (Pre-Shared Key) ciphersuites +support (see RFC 4279) to OpenSSL. + +No patent licenses or other rights except those expressly stated in +the OpenSSL open source license shall be deemed granted or received +expressly, by implication, estoppel, or otherwise. + +No assurances are provided by Nokia that the Contribution does not +infringe the patent or other intellectual property rights of any third +party or that the license provides you with all the necessary rights +to make use of the Contribution. + +THE SOFTWARE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. IN +ADDITION TO THE DISCLAIMERS INCLUDED IN THE LICENSE, NOKIA +SPECIFICALLY DISCLAIMS ANY LIABILITY FOR CLAIMS BROUGHT BY YOU OR ANY +OTHER ENTITY BASED ON INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS OR +OTHERWISE. +-------------------------------------------------------------------------------- +boringssl + +Copyright 2006-2017 The OpenSSL Project Authors. All Rights Reserved. + +Licensed under the OpenSSL license (the "License"). You may not use +this file except in compliance with the License. You can obtain a copy +in the file LICENSE in the source distribution or at +https://www.openssl.org/source/license.html +-------------------------------------------------------------------------------- +boringssl + +Copyright 2007-2016 The OpenSSL Project Authors. All Rights Reserved. + +Licensed under the OpenSSL license (the "License"). You may not use +this file except in compliance with the License. You can obtain a copy +in the file LICENSE in the source distribution or at +https://www.openssl.org/source/license.html +-------------------------------------------------------------------------------- +boringssl + +Copyright 2012-2016 The OpenSSL Project Authors. All Rights Reserved. + +Licensed under the OpenSSL license (the "License"). You may not use +this file except in compliance with the License. You can obtain a copy +in the file LICENSE in the source distribution or at +https://www.openssl.org/source/license.html +-------------------------------------------------------------------------------- +boringssl + +Copyright 2013-2016 The OpenSSL Project Authors. All Rights Reserved. +Copyright (c) 2012, Intel Corporation. All Rights Reserved. + +Licensed under the OpenSSL license (the "License"). You may not use +this file except in compliance with the License. You can obtain a copy +in the file LICENSE in the source distribution or at +https://www.openssl.org/source/license.html +-------------------------------------------------------------------------------- +boringssl + +Copyright 2014-2016 The OpenSSL Project Authors. All Rights Reserved. + +Licensed under the OpenSSL license (the "License"). You may not use +this file except in compliance with the License. You can obtain a copy +in the file LICENSE in the source distribution or at +https://www.openssl.org/source/license.html +-------------------------------------------------------------------------------- +boringssl + +Copyright 2014-2016 The OpenSSL Project Authors. All Rights Reserved. +Copyright (c) 2014, Intel Corporation. All Rights Reserved. + +Licensed under the OpenSSL license (the "License"). You may not use +this file except in compliance with the License. You can obtain a copy +in the file LICENSE in the source distribution or at +https://www.openssl.org/source/license.html +-------------------------------------------------------------------------------- +boringssl + +Copyright 2014-2016 The OpenSSL Project Authors. All Rights Reserved. +Copyright (c) 2015, Intel Inc. + +Licensed under the OpenSSL license (the "License"). You may not use +this file except in compliance with the License. You can obtain a copy +in the file LICENSE in the source distribution or at +https://www.openssl.org/source/license.html +-------------------------------------------------------------------------------- +boringssl + +Copyright 2014-2020 The OpenSSL Project Authors. All Rights Reserved. + +Licensed under the OpenSSL license (the "License"). You may not use +this file except in compliance with the License. You can obtain a copy +in the file LICENSE in the source distribution or at +https://www.openssl.org/source/license.html +-------------------------------------------------------------------------------- +boringssl + +Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved. + +Licensed under the OpenSSL license (the "License"). You may not use +this file except in compliance with the License. You can obtain a copy +in the file LICENSE in the source distribution or at +https://www.openssl.org/source/license.html +-------------------------------------------------------------------------------- +boringssl + +Copyright 2016 Brian Smith. + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY +SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION +OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN +CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +-------------------------------------------------------------------------------- +boringssl + +Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY +SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION +OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN +CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +-------------------------------------------------------------------------------- +boringssl + +DTLS code by Eric Rescorla + +Copyright (C) 2006, Network Resonance, Inc. +Copyright (C) 2011, RTFM, Inc. +-------------------------------------------------------------------------------- +boringssl + +OpenSSL License +--------------- + +Copyright (c) 1998-2011 The OpenSSL Project. All rights reserved. + +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. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.openssl.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + openssl-core@openssl.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.openssl.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED 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 OpenSSL PROJECT OR +ITS 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. + + +This product includes cryptographic software written by Eric Young +(eay@cryptsoft.com). This product includes software written by Tim +Hudson (tjh@cryptsoft.com). + +Original SSLeay License +----------------------- + +Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) +All rights reserved. + +This package is an SSL implementation written +by Eric Young (eay@cryptsoft.com). +The implementation was written so as to conform with Netscapes SSL. + +This library is free for commercial and non-commercial use as long as +the following conditions are aheared to. The following conditions +apply to all code found in this distribution, be it the RC4, RSA, +lhash, DES, etc., code; not just the SSL code. The SSL documentation +included with this distribution is covered by the same copyright terms +except that the holder is Tim Hudson (tjh@cryptsoft.com). + +Copyright remains Eric Young's, and as such any Copyright notices in +the code are not to be removed. +If this package is used in a product, Eric Young should be given attribution +as the author of the parts of the library used. +This can be in the form of a textual message at program startup or +in documentation (online or textual) provided with the package. + +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 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. All advertising materials mentioning features or use of this software + must display the following acknowledgement: + "This product includes cryptographic software written by + Eric Young (eay@cryptsoft.com)" + The word 'cryptographic' can be left out if the rouines from the library + being used are not cryptographic related :-). +4. If you include any Windows specific code (or a derivative thereof) from + the apps directory (application code) you must include an acknowledgement: + "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" + +THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``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 AUTHOR 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. + +The licence and distribution terms for any publically available version or +derivative of this code cannot be changed. i.e. this code cannot simply be +copied and put under another distribution licence +[including the GNU Public Licence.] + +ISC license used for completely new code in BoringSSL: + +Copyright (c) 2015, Google Inc. + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY +SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION +OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN +CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +The code in third_party/fiat carries the MIT license: + +Copyright (c) 2015-2016 the fiat-crypto authors (see +https://github.com/mit-plv/fiat-crypto/blob/master/AUTHORS). + +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. + +Licenses for support code +------------------------- + +Parts of the TLS test suite are under the Go license. This code is not included +in BoringSSL (i.e. libcrypto and libssl) when compiled, however, so +distributing code linked against BoringSSL does not trigger this license: + +Copyright (c) 2009 The Go Authors. All rights reserved. + +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 Inc. 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. + +BoringSSL uses the Chromium test infrastructure to run a continuous build, +trybots etc. The scripts which manage this, and the script for generating build +metadata, are under the Chromium license. Distributing code linked against +BoringSSL does not trigger this license. + +Copyright 2015 The Chromium Authors. All rights reserved. + +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 Inc. 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. +-------------------------------------------------------------------------------- +build +build_runner +code_builder +web_socket_channel + +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. + +-------------------------------------------------------------------------------- +build_config +graphs +io +stream_transform +term_glyph + +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. + +-------------------------------------------------------------------------------- +build_daemon +characters +ffi +package_config + +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. + +-------------------------------------------------------------------------------- +build_resolvers +build_runner_core +test_api +timing + +Copyright 2018, 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. + +-------------------------------------------------------------------------------- +built_collection +built_value + +Copyright 2015, Google Inc. All rights reserved. + +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 Inc. 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. + +-------------------------------------------------------------------------------- +cached_network_image +cached_network_image_platform_interface +cached_network_image_web + + +The MIT License (MIT) + +Copyright (c) 2018 Rene Floor + +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. + +-------------------------------------------------------------------------------- +ceval + +Copyright (c) 2021 e_t + +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. +-------------------------------------------------------------------------------- +checked_yaml + +Copyright 2019, the Dart project authors. All rights reserved. +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 Inc. 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. + +-------------------------------------------------------------------------------- +ci + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright 2021 Invertase Limited + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +-------------------------------------------------------------------------------- +clock +fake_async +material_color_utilities + + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +-------------------------------------------------------------------------------- +color + +The MIT License (MIT) + +Copyright (c) 2014 Michael Fenwick + +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. + +-------------------------------------------------------------------------------- +convert +crypto +source_gen + +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. + +-------------------------------------------------------------------------------- +cupertino_icons + +The MIT License (MIT) + +Copyright (c) 2016 Vladimir Kharlampidi + +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. +-------------------------------------------------------------------------------- +custom_lint +custom_lint_core + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright 2020 Invertase Limited + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +-------------------------------------------------------------------------------- +dart + +Copyright (c) 2003-2005 Tom Wu +Copyright (c) 2012 Adam Singer (adam@solvr.io) +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" AND WITHOUT WARRANTY OF ANY KIND, +EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY +WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. + +IN NO EVENT SHALL TOM WU BE LIABLE FOR ANY SPECIAL, INCIDENTAL, +INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES WHATSOEVER +RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER OR NOT ADVISED OF +THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF LIABILITY, ARISING OUT +OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +In addition, the following condition applies: + +All redistributions must retain an intact copy of this copyright notice +and disclaimer. +-------------------------------------------------------------------------------- +dart + +Copyright (c) 2010, the Dart project authors. Please see the AUTHORS file +for details. All rights reserved. + +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. +-------------------------------------------------------------------------------- +dart + +Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file +for details. All rights reserved. + +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. +-------------------------------------------------------------------------------- +dart + +Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file +for details. All rights reserved. + +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. +-------------------------------------------------------------------------------- +dart + +Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file +for details. All rights reserved. + +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. +-------------------------------------------------------------------------------- +dart + +Copyright (c) 2014 The Polymer Project Authors. All rights reserved. + +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 Inc. 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. +-------------------------------------------------------------------------------- +dart + +Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file +for details. All rights reserved. + +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. +-------------------------------------------------------------------------------- +dart + +Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file +for details. All rights reserved. + +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. +-------------------------------------------------------------------------------- +dart + +Copyright (c) 2016, the Dart project authors. Please see the AUTHORS file +for details. All rights reserved. + +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. +-------------------------------------------------------------------------------- +dart + +Copyright (c) 2017, the Dart project authors. Please see the AUTHORS file +for details. All rights reserved. + +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. +-------------------------------------------------------------------------------- +dart + +Copyright (c) 2018, the Dart project authors. Please see the AUTHORS file +for details. All rights reserved. + +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. +-------------------------------------------------------------------------------- +dart + +Copyright (c) 2018, the Dart project authors. Please see the AUTHORS file +for details. All rights reserved. + +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. +-------------------------------------------------------------------------------- +dart + +Copyright (c) 2019, the Dart project authors. Please see the AUTHORS file +for details. All rights reserved. + +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. +-------------------------------------------------------------------------------- +dart + +Copyright (c) 2019, the Dart project authors. Please see the AUTHORS file +for details. All rights reserved. + +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. +-------------------------------------------------------------------------------- +dart + +Copyright (c) 2020, the Dart project authors. Please see the AUTHORS file +for details. All rights reserved. + +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. +-------------------------------------------------------------------------------- +dart + +Copyright (c) 2021, the Dart project authors. Please see the AUTHORS file +for details. All rights reserved. + +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. +-------------------------------------------------------------------------------- +dart + +Copyright (c) 2022, the Dart project authors. Please see the AUTHORS file +for details. All rights reserved. + +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. +-------------------------------------------------------------------------------- +dart + +Copyright (c) 2023, the Dart project authors. Please see the AUTHORS file +for details. All rights reserved. + +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. +-------------------------------------------------------------------------------- +dart + +Copyright (c) 2023, the Dart project authors. Please see the AUTHORS file +for details. All rights reserved. + +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. +-------------------------------------------------------------------------------- +dart + +Copyright 2012, 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. +-------------------------------------------------------------------------------- +dart_style +glob +http +http_parser +matcher +path +pool +pub_semver +source_span +string_scanner +watcher + +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. + +-------------------------------------------------------------------------------- +dartx + + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright 2019 Simon Leier + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +-------------------------------------------------------------------------------- +dbus +tachidesk_sorayomi + +Mozilla Public License Version 2.0 +================================== + +1. Definitions +-------------- + +1.1. "Contributor" + means each individual or legal entity that creates, contributes to + the creation of, or owns Covered Software. + +1.2. "Contributor Version" + means the combination of the Contributions of others (if any) used + by a Contributor and that particular Contributor's Contribution. + +1.3. "Contribution" + means Covered Software of a particular Contributor. + +1.4. "Covered Software" + means Source Code Form to which the initial Contributor has attached + the notice in Exhibit A, the Executable Form of such Source Code + Form, and Modifications of such Source Code Form, in each case + including portions thereof. + +1.5. "Incompatible With Secondary Licenses" + means + + (a) that the initial Contributor has attached the notice described + in Exhibit B to the Covered Software; or + + (b) that the Covered Software was made available under the terms of + version 1.1 or earlier of the License, but not also under the + terms of a Secondary License. + +1.6. "Executable Form" + means any form of the work other than Source Code Form. + +1.7. "Larger Work" + means a work that combines Covered Software with other material, in + a separate file or files, that is not Covered Software. + +1.8. "License" + means this document. + +1.9. "Licensable" + means having the right to grant, to the maximum extent possible, + whether at the time of the initial grant or subsequently, any and + all of the rights conveyed by this License. + +1.10. "Modifications" + means any of the following: + + (a) any file in Source Code Form that results from an addition to, + deletion from, or modification of the contents of Covered + Software; or + + (b) any new file in Source Code Form that contains any Covered + Software. + +1.11. "Patent Claims" of a Contributor + means any patent claim(s), including without limitation, method, + process, and apparatus claims, in any patent Licensable by such + Contributor that would be infringed, but for the grant of the + License, by the making, using, selling, offering for sale, having + made, import, or transfer of either its Contributions or its + Contributor Version. + +1.12. "Secondary License" + means either the GNU General Public License, Version 2.0, the GNU + Lesser General Public License, Version 2.1, the GNU Affero General + Public License, Version 3.0, or any later versions of those + licenses. + +1.13. "Source Code Form" + means the form of the work preferred for making modifications. + +1.14. "You" (or "Your") + means an individual or a legal entity exercising rights under this + License. For legal entities, "You" includes any entity that + controls, is controlled by, or is under common control with You. For + purposes of this definition, "control" means (a) the power, direct + or indirect, to cause the direction or management of such entity, + whether by contract or otherwise, or (b) ownership of more than + fifty percent (50%) of the outstanding shares or beneficial + ownership of such entity. + +2. License Grants and Conditions +-------------------------------- + +2.1. Grants + +Each Contributor hereby grants You a world-wide, royalty-free, +non-exclusive license: + +(a) under intellectual property rights (other than patent or trademark) + Licensable by such Contributor to use, reproduce, make available, + modify, display, perform, distribute, and otherwise exploit its + Contributions, either on an unmodified basis, with Modifications, or + as part of a Larger Work; and + +(b) under Patent Claims of such Contributor to make, use, sell, offer + for sale, have made, import, and otherwise transfer either its + Contributions or its Contributor Version. + +2.2. Effective Date + +The licenses granted in Section 2.1 with respect to any Contribution +become effective for each Contribution on the date the Contributor first +distributes such Contribution. + +2.3. Limitations on Grant Scope + +The licenses granted in this Section 2 are the only rights granted under +this License. No additional rights or licenses will be implied from the +distribution or licensing of Covered Software under this License. +Notwithstanding Section 2.1(b) above, no patent license is granted by a +Contributor: + +(a) for any code that a Contributor has removed from Covered Software; + or + +(b) for infringements caused by: (i) Your and any other third party's + modifications of Covered Software, or (ii) the combination of its + Contributions with other software (except as part of its Contributor + Version); or + +(c) under Patent Claims infringed by Covered Software in the absence of + its Contributions. + +This License does not grant any rights in the trademarks, service marks, +or logos of any Contributor (except as may be necessary to comply with +the notice requirements in Section 3.4). + +2.4. Subsequent Licenses + +No Contributor makes additional grants as a result of Your choice to +distribute the Covered Software under a subsequent version of this +License (see Section 10.2) or under the terms of a Secondary License (if +permitted under the terms of Section 3.3). + +2.5. Representation + +Each Contributor represents that the Contributor believes its +Contributions are its original creation(s) or it has sufficient rights +to grant the rights to its Contributions conveyed by this License. + +2.6. Fair Use + +This License is not intended to limit any rights You have under +applicable copyright doctrines of fair use, fair dealing, or other +equivalents. + +2.7. Conditions + +Sections 3.1, 3.2, 3.3, and 3.4 are conditions of the licenses granted +in Section 2.1. + +3. Responsibilities +------------------- + +3.1. Distribution of Source Form + +All distribution of Covered Software in Source Code Form, including any +Modifications that You create or to which You contribute, must be under +the terms of this License. You must inform recipients that the Source +Code Form of the Covered Software is governed by the terms of this +License, and how they can obtain a copy of this License. You may not +attempt to alter or restrict the recipients' rights in the Source Code +Form. + +3.2. Distribution of Executable Form + +If You distribute Covered Software in Executable Form then: + +(a) such Covered Software must also be made available in Source Code + Form, as described in Section 3.1, and You must inform recipients of + the Executable Form how they can obtain a copy of such Source Code + Form by reasonable means in a timely manner, at a charge no more + than the cost of distribution to the recipient; and + +(b) You may distribute such Executable Form under the terms of this + License, or sublicense it under different terms, provided that the + license for the Executable Form does not attempt to limit or alter + the recipients' rights in the Source Code Form under this License. + +3.3. Distribution of a Larger Work + +You may create and distribute a Larger Work under terms of Your choice, +provided that You also comply with the requirements of this License for +the Covered Software. If the Larger Work is a combination of Covered +Software with a work governed by one or more Secondary Licenses, and the +Covered Software is not Incompatible With Secondary Licenses, this +License permits You to additionally distribute such Covered Software +under the terms of such Secondary License(s), so that the recipient of +the Larger Work may, at their option, further distribute the Covered +Software under the terms of either this License or such Secondary +License(s). + +3.4. Notices + +You may not remove or alter the substance of any license notices +(including copyright notices, patent notices, disclaimers of warranty, +or limitations of liability) contained within the Source Code Form of +the Covered Software, except that You may alter any license notices to +the extent required to remedy known factual inaccuracies. + +3.5. Application of Additional Terms + +You may choose to offer, and to charge a fee for, warranty, support, +indemnity or liability obligations to one or more recipients of Covered +Software. However, You may do so only on Your own behalf, and not on +behalf of any Contributor. You must make it absolutely clear that any +such warranty, support, indemnity, or liability obligation is offered by +You alone, and You hereby agree to indemnify every Contributor for any +liability incurred by such Contributor as a result of warranty, support, +indemnity or liability terms You offer. You may include additional +disclaimers of warranty and limitations of liability specific to any +jurisdiction. + +4. Inability to Comply Due to Statute or Regulation +--------------------------------------------------- + +If it is impossible for You to comply with any of the terms of this +License with respect to some or all of the Covered Software due to +statute, judicial order, or regulation then You must: (a) comply with +the terms of this License to the maximum extent possible; and (b) +describe the limitations and the code they affect. Such description must +be placed in a text file included with all distributions of the Covered +Software under this License. Except to the extent prohibited by statute +or regulation, such description must be sufficiently detailed for a +recipient of ordinary skill to be able to understand it. + +5. Termination +-------------- + +5.1. The rights granted under this License will terminate automatically +if You fail to comply with any of its terms. However, if You become +compliant, then the rights granted under this License from a particular +Contributor are reinstated (a) provisionally, unless and until such +Contributor explicitly and finally terminates Your grants, and (b) on an +ongoing basis, if such Contributor fails to notify You of the +non-compliance by some reasonable means prior to 60 days after You have +come back into compliance. Moreover, Your grants from a particular +Contributor are reinstated on an ongoing basis if such Contributor +notifies You of the non-compliance by some reasonable means, this is the +first time You have received notice of non-compliance with this License +from such Contributor, and You become compliant prior to 30 days after +Your receipt of the notice. + +5.2. If You initiate litigation against any entity by asserting a patent +infringement claim (excluding declaratory judgment actions, +counter-claims, and cross-claims) alleging that a Contributor Version +directly or indirectly infringes any patent, then the rights granted to +You by any and all Contributors for the Covered Software under Section +2.1 of this License shall terminate. + +5.3. In the event of termination under Sections 5.1 or 5.2 above, all +end user license agreements (excluding distributors and resellers) which +have been validly granted by You or Your distributors under this License +prior to termination shall survive termination. + +************************************************************************ +* * +* 6. Disclaimer of Warranty * +* ------------------------- * +* * +* Covered Software is provided under this License on an "as is" * +* basis, without warranty of any kind, either expressed, implied, or * +* statutory, including, without limitation, warranties that the * +* Covered Software is free of defects, merchantable, fit for a * +* particular purpose or non-infringing. The entire risk as to the * +* quality and performance of the Covered Software is with You. * +* Should any Covered Software prove defective in any respect, You * +* (not any Contributor) assume the cost of any necessary servicing, * +* repair, or correction. This disclaimer of warranty constitutes an * +* essential part of this License. No use of any Covered Software is * +* authorized under this License except under this disclaimer. * +* * +************************************************************************ + +************************************************************************ +* * +* 7. Limitation of Liability * +* -------------------------- * +* * +* Under no circumstances and under no legal theory, whether tort * +* (including negligence), contract, or otherwise, shall any * +* Contributor, or anyone who distributes Covered Software as * +* permitted above, be liable to You for any direct, indirect, * +* special, incidental, or consequential damages of any character * +* including, without limitation, damages for lost profits, loss of * +* goodwill, work stoppage, computer failure or malfunction, or any * +* and all other commercial damages or losses, even if such party * +* shall have been informed of the possibility of such damages. This * +* limitation of liability shall not apply to liability for death or * +* personal injury resulting from such party's negligence to the * +* extent applicable law prohibits such limitation. Some * +* jurisdictions do not allow the exclusion or limitation of * +* incidental or consequential damages, so this exclusion and * +* limitation may not apply to You. * +* * +************************************************************************ + +8. Litigation +------------- + +Any litigation relating to this License may be brought only in the +courts of a jurisdiction where the defendant maintains its principal +place of business and such litigation shall be governed by laws of that +jurisdiction, without reference to its conflict-of-law provisions. +Nothing in this Section shall prevent a party's ability to bring +cross-claims or counter-claims. + +9. Miscellaneous +---------------- + +This License represents the complete agreement concerning the subject +matter hereof. If any provision of this License is held to be +unenforceable, such provision shall be reformed only to the extent +necessary to make it enforceable. Any law or regulation which provides +that the language of a contract shall be construed against the drafter +shall not be used to construe this License against a Contributor. + +10. Versions of the License +--------------------------- + +10.1. New Versions + +Mozilla Foundation is the license steward. Except as provided in Section +10.3, no one other than the license steward has the right to modify or +publish new versions of this License. Each version will be given a +distinguishing version number. + +10.2. Effect of New Versions + +You may distribute the Covered Software under the terms of the version +of the License under which You originally received the Covered Software, +or under the terms of any subsequent version published by the license +steward. + +10.3. Modified Versions + +If you create software not governed by this License, and you want to +create a new license for such software, you may create and use a +modified version of this License if you rename the license and remove +any references to the name of the license steward (except to note that +such modified license differs from this License). + +10.4. Distributing Source Code Form that is Incompatible With Secondary +Licenses + +If You choose to distribute Source Code Form that is Incompatible With +Secondary Licenses under the terms of this version of the License, the +notice described in Exhibit B of this License must be attached. + +Exhibit A - Source Code Form License Notice +------------------------------------------- + + This Source Code Form is subject to the terms of the Mozilla Public + License, v. 2.0. If a copy of the MPL was not distributed with this + file, You can obtain one at http://mozilla.org/MPL/2.0/. + +If it is not possible or desirable to put the notice in a particular +file, then You may include the notice in a location (such as a LICENSE +file in a relevant directory) where a recipient would be likely to look +for such a notice. + +You may add additional accurate notices of copyright ownership. + +Exhibit B - "Incompatible With Secondary Licenses" Notice +--------------------------------------------------------- + + This Source Code Form is "Incompatible With Secondary Licenses", as + defined by the Mozilla Public License, v. 2.0. + +-------------------------------------------------------------------------------- +dio + +MIT License + +Copyright (c) 2018 Wen Du (wendux) +Copyright (c) 2022 The CFUG Team + +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. +-------------------------------------------------------------------------------- +dio_cache_interceptor + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +-------------------------------------------------------------------------------- +dio_cache_interceptor_hive_store + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +-------------------------------------------------------------------------------- +double-conversion +icu + +Copyright 2006-2008 the V8 project authors. All rights reserved. + +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 Inc. 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. +-------------------------------------------------------------------------------- +double-conversion +icu + +Copyright 2010 the V8 project authors. All rights reserved. + +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 Inc. 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. +-------------------------------------------------------------------------------- +double-conversion +icu + +Copyright 2012 the V8 project authors. All rights reserved. + +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 Inc. 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. +-------------------------------------------------------------------------------- +engine + +License for the Ahem font embedded below is from: +https://www.w3.org/Style/CSS/Test/Fonts/Ahem/COPYING + +The Ahem font in this directory belongs to the public domain. In +jurisdictions that do not recognize public domain ownership of these +files, the following Creative Commons Zero declaration applies: + + + +which is quoted below: + + The person who has associated a work with this document (the "Work") + affirms that he or she (the "Affirmer") is the/an author or owner of + the Work. The Work may be any work of authorship, including a + database. + + The Affirmer hereby fully, permanently and irrevocably waives and + relinquishes all of her or his copyright and related or neighboring + legal rights in the Work available under any federal or state law, + treaty or contract, including but not limited to moral rights, + publicity and privacy rights, rights protecting against unfair + competition and any rights protecting the extraction, dissemination + and reuse of data, whether such rights are present or future, vested + or contingent (the "Waiver"). The Affirmer makes the Waiver for the + benefit of the public at large and to the detriment of the Affirmer's + heirs or successors. + + The Affirmer understands and intends that the Waiver has the effect + of eliminating and entirely removing from the Affirmer's control all + the copyright and related or neighboring legal rights previously held + by the Affirmer in the Work, to that extent making the Work freely + available to the public for any and all uses and purposes without + restriction of any kind, including commercial use and uses in media + and formats or by methods that have not yet been invented or + conceived. Should the Waiver for any reason be judged legally + ineffective in any jurisdiction, the Affirmer hereby grants a free, + full, permanent, irrevocable, nonexclusive and worldwide license for + all her or his copyright and related or neighboring legal rights in + the Work. +-------------------------------------------------------------------------------- +etc_decoder + +Copyright (c) 2020-2022 Hans-Kristian Arntzen + +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. +-------------------------------------------------------------------------------- +expat + +Copyright (c) 1997-2000 Thai Open Source Software Center Ltd +Copyright (c) 2000 Clark Cooper +Copyright (c) 2000-2004 Fred L. Drake, Jr. +Copyright (c) 2001-2002 Greg Stein +Copyright (c) 2002-2006 Karl Waclawek +Copyright (c) 2016 Cristian Rodríguez +Copyright (c) 2016-2019 Sebastian Pipping +Copyright (c) 2017 Rhodri James +Copyright (c) 2018 Yury Gribov + +Licensed under the MIT license: + +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. +-------------------------------------------------------------------------------- +expat + +Copyright (c) 1997-2000 Thai Open Source Software Center Ltd +Copyright (c) 2000 Clark Cooper +Copyright (c) 2000-2005 Fred L. Drake, Jr. +Copyright (c) 2001-2002 Greg Stein +Copyright (c) 2002-2016 Karl Waclawek +Copyright (c) 2016-2022 Sebastian Pipping +Copyright (c) 2016 Cristian Rodríguez +Copyright (c) 2016 Thomas Beutlich +Copyright (c) 2017 Rhodri James +Copyright (c) 2022 Thijs Schreijer + +Licensed under the MIT license: + +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. +-------------------------------------------------------------------------------- +expat + +Copyright (c) 1997-2000 Thai Open Source Software Center Ltd +Copyright (c) 2000 Clark Cooper +Copyright (c) 2000-2006 Fred L. Drake, Jr. +Copyright (c) 2001-2002 Greg Stein +Copyright (c) 2002-2016 Karl Waclawek +Copyright (c) 2005-2009 Steven Solie +Copyright (c) 2016 Eric Rahm +Copyright (c) 2016-2022 Sebastian Pipping +Copyright (c) 2016 Gaurav +Copyright (c) 2016 Thomas Beutlich +Copyright (c) 2016 Gustavo Grieco +Copyright (c) 2016 Pascal Cuoq +Copyright (c) 2016 Ed Schouten +Copyright (c) 2017-2022 Rhodri James +Copyright (c) 2017 Václav Slavík +Copyright (c) 2017 Viktor Szakats +Copyright (c) 2017 Chanho Park +Copyright (c) 2017 Rolf Eike Beer +Copyright (c) 2017 Hans Wennborg +Copyright (c) 2018 Anton Maklakov +Copyright (c) 2018 Benjamin Peterson +Copyright (c) 2018 Marco Maggi +Copyright (c) 2018 Mariusz Zaborski +Copyright (c) 2019 David Loffredo +Copyright (c) 2019-2020 Ben Wagner +Copyright (c) 2019 Vadim Zeitlin +Copyright (c) 2021 Dong-hee Na +Copyright (c) 2022 Samanta Navarro +Copyright (c) 2022 Jeffrey Walton +Copyright (c) 2022 Jann Horn + +Licensed under the MIT license: + +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. +-------------------------------------------------------------------------------- +expat + +Copyright (c) 1997-2000 Thai Open Source Software Center Ltd +Copyright (c) 2000 Clark Cooper +Copyright (c) 2001-2002 Fred L. Drake, Jr. +Copyright (c) 2006 Karl Waclawek +Copyright (c) 2016-2017 Sebastian Pipping +Copyright (c) 2017 Rhodri James + +Licensed under the MIT license: + +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. +-------------------------------------------------------------------------------- +expat + +Copyright (c) 1997-2000 Thai Open Source Software Center Ltd +Copyright (c) 2000 Clark Cooper +Copyright (c) 2001-2003 Fred L. Drake, Jr. +Copyright (c) 2002 Greg Stein +Copyright (c) 2002-2016 Karl Waclawek +Copyright (c) 2005-2009 Steven Solie +Copyright (c) 2016-2022 Sebastian Pipping +Copyright (c) 2016 Pascal Cuoq +Copyright (c) 2016 Don Lewis +Copyright (c) 2017 Rhodri James +Copyright (c) 2017 Alexander Bluhm +Copyright (c) 2017 Benbuck Nason +Copyright (c) 2017 José Gutiérrez de la Concha +Copyright (c) 2019 David Loffredo +Copyright (c) 2021 Dong-hee Na +Copyright (c) 2022 Martin Ettl + +Licensed under the MIT license: + +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. +-------------------------------------------------------------------------------- +expat + +Copyright (c) 1997-2000 Thai Open Source Software Center Ltd +Copyright (c) 2000 Clark Cooper +Copyright (c) 2001-2003 Fred L. Drake, Jr. +Copyright (c) 2004-2009 Karl Waclawek +Copyright (c) 2005-2007 Steven Solie +Copyright (c) 2016-2022 Sebastian Pipping +Copyright (c) 2017 Rhodri James +Copyright (c) 2019 David Loffredo +Copyright (c) 2020 Joe Orton +Copyright (c) 2020 Kleber Tarcísio +Copyright (c) 2021 Tim Bray +Copyright (c) 2022 Martin Ettl + +Licensed under the MIT license: + +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. +-------------------------------------------------------------------------------- +expat + +Copyright (c) 1997-2000 Thai Open Source Software Center Ltd +Copyright (c) 2000 Clark Cooper +Copyright (c) 2001-2004 Fred L. Drake, Jr. +Copyright (c) 2002-2009 Karl Waclawek +Copyright (c) 2016-2017 Sebastian Pipping +Copyright (c) 2017 Rhodri James +Copyright (c) 2017 Franek Korta + +Licensed under the MIT license: + +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. +-------------------------------------------------------------------------------- +expat + +Copyright (c) 1997-2000 Thai Open Source Software Center Ltd +Copyright (c) 2000 Clark Cooper +Copyright (c) 2002 Fred L. Drake, Jr. +Copyright (c) 2002-2005 Karl Waclawek +Copyright (c) 2016-2017 Sebastian Pipping +Copyright (c) 2017 Rhodri James + +Licensed under the MIT license: + +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. +-------------------------------------------------------------------------------- +expat + +Copyright (c) 1997-2000 Thai Open Source Software Center Ltd +Copyright (c) 2000 Clark Cooper +Copyright (c) 2002 Fred L. Drake, Jr. +Copyright (c) 2002-2016 Karl Waclawek +Copyright (c) 2016-2022 Sebastian Pipping +Copyright (c) 2017 Rhodri James +Copyright (c) 2018 Benjamin Peterson +Copyright (c) 2018 Anton Maklakov +Copyright (c) 2019 David Loffredo +Copyright (c) 2020 Boris Kolpackov +Copyright (c) 2022 Martin Ettl + +Licensed under the MIT license: + +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. +-------------------------------------------------------------------------------- +expat + +Copyright (c) 1997-2000 Thai Open Source Software Center Ltd +Copyright (c) 2000 Clark Cooper +Copyright (c) 2002 Fred L. Drake, Jr. +Copyright (c) 2005 Karl Waclawek +Copyright (c) 2016-2019 Sebastian Pipping + +Licensed under the MIT license: + +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. +-------------------------------------------------------------------------------- +expat + +Copyright (c) 1997-2000 Thai Open Source Software Center Ltd +Copyright (c) 2000 Clark Cooper +Copyright (c) 2002 Fred L. Drake, Jr. +Copyright (c) 2005-2006 Karl Waclawek +Copyright (c) 2016-2019 Sebastian Pipping +Copyright (c) 2019 David Loffredo + +Licensed under the MIT license: + +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. +-------------------------------------------------------------------------------- +expat + +Copyright (c) 1997-2000 Thai Open Source Software Center Ltd +Copyright (c) 2000 Clark Cooper +Copyright (c) 2002 Fred L. Drake, Jr. +Copyright (c) 2016-2017 Sebastian Pipping + +Licensed under the MIT license: + +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. +-------------------------------------------------------------------------------- +expat + +Copyright (c) 1997-2000 Thai Open Source Software Center Ltd +Copyright (c) 2000 Clark Cooper +Copyright (c) 2002 Fred L. Drake, Jr. +Copyright (c) 2016-2022 Sebastian Pipping +Copyright (c) 2022 Martin Ettl + +Licensed under the MIT license: + +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. +-------------------------------------------------------------------------------- +expat + +Copyright (c) 1997-2000 Thai Open Source Software Center Ltd +Copyright (c) 2000 Clark Cooper +Copyright (c) 2002 Fred L. Drake, Jr. +Copyright (c) 2017 Sebastian Pipping + +Licensed under the MIT license: + +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. +-------------------------------------------------------------------------------- +expat + +Copyright (c) 1997-2000 Thai Open Source Software Center Ltd +Copyright (c) 2000 Clark Cooper +Copyright (c) 2002 Greg Stein +Copyright (c) 2002 Fred L. Drake, Jr. +Copyright (c) 2002-2006 Karl Waclawek +Copyright (c) 2017-2021 Sebastian Pipping + +Licensed under the MIT license: + +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. +-------------------------------------------------------------------------------- +expat + +Copyright (c) 1997-2000 Thai Open Source Software Center Ltd +Copyright (c) 2000 Clark Cooper +Copyright (c) 2002 Greg Stein +Copyright (c) 2002-2006 Karl Waclawek +Copyright (c) 2002-2003 Fred L. Drake, Jr. +Copyright (c) 2005-2009 Steven Solie +Copyright (c) 2016-2021 Sebastian Pipping +Copyright (c) 2017 Rhodri James +Copyright (c) 2019 David Loffredo +Copyright (c) 2021 Dong-hee Na + +Licensed under the MIT license: + +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. +-------------------------------------------------------------------------------- +expat + +Copyright (c) 1997-2000 Thai Open Source Software Center Ltd +Copyright (c) 2000 Clark Cooper +Copyright (c) 2002 Karl Waclawek +Copyright (c) 2002 Fred L. Drake, Jr. +Copyright (c) 2017 Sebastian Pipping + +Licensed under the MIT license: + +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. +-------------------------------------------------------------------------------- +expat + +Copyright (c) 1997-2000 Thai Open Source Software Center Ltd +Copyright (c) 2000 Clark Cooper +Copyright (c) 2002-2003 Fred L. Drake, Jr. +Copyright (c) 2004-2006 Karl Waclawek +Copyright (c) 2005-2007 Steven Solie +Copyright (c) 2016-2021 Sebastian Pipping +Copyright (c) 2017 Rhodri James +Copyright (c) 2019 David Loffredo +Copyright (c) 2021 Dong-hee Na + +Licensed under the MIT license: + +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. +-------------------------------------------------------------------------------- +expat + +Copyright (c) 1997-2000 Thai Open Source Software Center Ltd +Copyright (c) 2000 Clark Cooper +Copyright (c) 2017-2019 Sebastian Pipping + +Licensed under the MIT license: + +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. +-------------------------------------------------------------------------------- +expat + +Copyright (c) 1997-2000 Thai Open Source Software Center Ltd +Copyright (c) 2002 Fred L. Drake, Jr. +Copyright (c) 2016-2017 Sebastian Pipping + +Licensed under the MIT license: + +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. +-------------------------------------------------------------------------------- +expat + +Copyright (c) 1997-2000 Thai Open Source Software Center Ltd +Copyright (c) 2002 Fred L. Drake, Jr. +Copyright (c) 2016-2018 Sebastian Pipping +Copyright (c) 2018 Marco Maggi + +Licensed under the MIT license: + +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. +-------------------------------------------------------------------------------- +expat + +Copyright (c) 1997-2000 Thai Open Source Software Center Ltd +Copyright (c) 2016-2021 Sebastian Pipping +Copyright (c) 2017 Rhodri James + +Licensed under the MIT license: + +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. +-------------------------------------------------------------------------------- +expat + +Copyright (c) 1998-2000 Thai Open Source Software Center Ltd and Clark Cooper +Copyright (c) 2001-2022 Expat maintainers + +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. +-------------------------------------------------------------------------------- +expat + +Copyright (c) 1999-2000 Thai Open Source Software Center Ltd +Copyright (c) 2000 Clark Cooper +Copyright (c) 2002 Fred L. Drake, Jr. +Copyright (c) 2007 Karl Waclawek +Copyright (c) 2017 Sebastian Pipping + +Licensed under the MIT license: + +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. +-------------------------------------------------------------------------------- +expat + +Copyright (c) 2000 Clark Cooper +Copyright (c) 2002 Greg Stein +Copyright (c) 2005 Karl Waclawek +Copyright (c) 2017-2021 Sebastian Pipping + +Licensed under the MIT license: + +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. +-------------------------------------------------------------------------------- +expat + +Copyright (c) 2000 Clark Cooper +Copyright (c) 2017 Sebastian Pipping + +Licensed under the MIT license: + +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. +-------------------------------------------------------------------------------- +expat + +Copyright (c) 2002-2003 Fred L. Drake, Jr. +Copyright (c) 2002-2006 Karl Waclawek +Copyright (c) 2003 Greg Stein +Copyright (c) 2016-2022 Sebastian Pipping +Copyright (c) 2018 Yury Gribov +Copyright (c) 2019 David Loffredo + +Licensed under the MIT license: + +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. +-------------------------------------------------------------------------------- +expat +harfbuzz + +Copyright (c) 2021 Google Inc. All rights reserved. + +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 Inc. 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. +-------------------------------------------------------------------------------- +ffx_spd + +Copyright (c) 2017-2019 Advanced Micro Devices, Inc. All rights reserved. +Copyright (c) <2014> + +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. +-------------------------------------------------------------------------------- +ffx_spd + +Copyright (c) 2017-2020 Advanced Micro Devices, Inc. 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. +-------------------------------------------------------------------------------- +fiat + +Copyright (c) 2015-2020 the fiat-crypto authors (see + +https://github.com/mit-plv/fiat-crypto/blob/master/AUTHORS). + +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. +-------------------------------------------------------------------------------- +file + +Copyright 2017, the Dart project authors. All rights reserved. +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 Inc. 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. +-------------------------------------------------------------------------------- +file_picker + +MIT License + +Copyright (c) 2018 Miguel Ruivo + +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 NON INFRINGEMENT. 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. +-------------------------------------------------------------------------------- +fixnum +http_multi_server +shelf +shelf_web_socket +stack_trace + +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. + +-------------------------------------------------------------------------------- +flatbuffers + +Apache License +Version 2.0, January 2004 +http://www.apache.org/licenses/ + +TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + +1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + +2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + +3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + +4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + +5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + +6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + +7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + +8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + +9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + +END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + +Copyright 2014 Google Inc. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +-------------------------------------------------------------------------------- +flutter + +Copyright 2014 The Flutter Authors. All rights reserved. + +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 Inc. 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. + +-------------------------------------------------------------------------------- +flutter_android_volume_keydown + +MIT License + +Copyright (c) 2021 Jonathan Goyvaerts + +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. +-------------------------------------------------------------------------------- +flutter_cache_manager + + +The MIT License (MIT) + +Copyright (c) 2017 Rene Floor + +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. + +-------------------------------------------------------------------------------- +flutter_gen_core +flutter_gen_runner + +MIT License + +Copyright (c) 2020-2022 FlutterGen + +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. + +-------------------------------------------------------------------------------- +flutter_hooks + +MIT License + +Copyright (c) 2018 Remi Rousselet + +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. +-------------------------------------------------------------------------------- +flutter_launcher_icons + +MIT License + +Copyright (c) 2019 Mark O'Sullivan + +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. + +-------------------------------------------------------------------------------- +flutter_lints +flutter_markdown +flutter_plugin_android_lifecycle +go_router +go_router_builder +path_provider +path_provider_android +path_provider_foundation +path_provider_linux +path_provider_platform_interface +path_provider_windows +platform +plugin_platform_interface +shared_preferences +shared_preferences_android +shared_preferences_foundation +shared_preferences_linux +shared_preferences_platform_interface +shared_preferences_web +shared_preferences_windows +url_launcher +url_launcher_android +url_launcher_ios +url_launcher_linux +url_launcher_macos +url_launcher_platform_interface +url_launcher_windows +xdg_directories + +Copyright 2013 The Flutter Authors. All rights reserved. + +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 Inc. 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. + +-------------------------------------------------------------------------------- +flutter_native_splash + +MIT License + +Copyright (c) 2022 Jon Hanson + +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. + +-------------------------------------------------------------------------------- +flutter_riverpod +freezed +freezed_annotation +hooks_riverpod +riverpod +riverpod_annotation +riverpod_generator +state_notifier + +MIT License + +Copyright (c) 2020 Remi Rousselet + +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. +-------------------------------------------------------------------------------- +flutter_staggered_grid_view + +MIT License + +Copyright (c) 2018 Romain Rastel + +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. + +-------------------------------------------------------------------------------- +fluttertoast + +MIT License + +Copyright (c) 2020 Karthik Ponnam + +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. + +-------------------------------------------------------------------------------- +font_awesome_flutter + +MIT License + +Copyright (c) 2017 Brian Egan +Copyright (c) 2020 Michael Spiss +Font Awesome Icons by @fontawesome - https://fontawesome.com +License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1) + +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. + +-------------------------------------------------------------------------------- +freetype2 + +Copyright (C) 1995-2017 Jean-loup Gailly and Mark Adler + +This software is provided 'as-is', without any express or implied +warranty. In no event will the authors be held liable for any damages +arising from the use of this software. + +Permission is granted to anyone to use this software for any purpose, +including commercial applications, and to alter it and redistribute it +freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. +2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. +3. This notice may not be removed or altered from any source distribution. +-------------------------------------------------------------------------------- +freetype2 + +Copyright (C) 2000, 2001, 2002, 2003, 2006, 2010 by +Francesco Zappa Nardelli + +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. +-------------------------------------------------------------------------------- +freetype2 + +Copyright (C) 2000-2004, 2006-2011, 2013, 2014 by +Francesco Zappa Nardelli + +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. +-------------------------------------------------------------------------------- +freetype2 + +Copyright (C) 2001, 2002 by +Francesco Zappa Nardelli + +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. +-------------------------------------------------------------------------------- +freetype2 + +Copyright (C) 2001, 2002, 2003, 2004 by +Francesco Zappa Nardelli + +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. +-------------------------------------------------------------------------------- +freetype2 + +Copyright (C) 2001-2008, 2011, 2013, 2014 by +Francesco Zappa Nardelli + +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. +-------------------------------------------------------------------------------- +freetype2 + +Copyright 1990, 1994, 1998 The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +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 +OPEN GROUP 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. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. +-------------------------------------------------------------------------------- +freetype2 + +Copyright 2000 Computing Research Labs, New Mexico State University +Copyright 2001-2004, 2011 Francesco Zappa Nardelli + +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 COMPUTING RESEARCH LAB OR NEW MEXICO STATE UNIVERSITY 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. +-------------------------------------------------------------------------------- +freetype2 + +Copyright 2000 Computing Research Labs, New Mexico State University +Copyright 2001-2014 + Francesco Zappa Nardelli + +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 COMPUTING RESEARCH LAB OR NEW MEXICO STATE UNIVERSITY 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. +-------------------------------------------------------------------------------- +freetype2 + +Copyright 2000 Computing Research Labs, New Mexico State University +Copyright 2001-2015 + Francesco Zappa Nardelli + +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 COMPUTING RESEARCH LAB OR NEW MEXICO STATE UNIVERSITY 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. +-------------------------------------------------------------------------------- +freetype2 + +Copyright 2000, 2001, 2004 by +Francesco Zappa Nardelli + +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. +-------------------------------------------------------------------------------- +freetype2 + +Copyright 2000-2001, 2002 by +Francesco Zappa Nardelli + +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. +-------------------------------------------------------------------------------- +freetype2 + +Copyright 2000-2001, 2003 by +Francesco Zappa Nardelli + +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. +-------------------------------------------------------------------------------- +freetype2 + +Copyright 2000-2010, 2012-2014 by +Francesco Zappa Nardelli + +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. +-------------------------------------------------------------------------------- +freetype2 + +Copyright 2001, 2002, 2012 Francesco Zappa Nardelli + +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 COMPUTING RESEARCH LAB OR NEW MEXICO STATE UNIVERSITY 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. +-------------------------------------------------------------------------------- +freetype2 + +Copyright 2003 by +Francesco Zappa Nardelli + +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. +-------------------------------------------------------------------------------- +freetype2 + +The FreeType Project LICENSE +---------------------------- + + 2006-Jan-27 + + Copyright 1996-2002, 2006 by + David Turner, Robert Wilhelm, and Werner Lemberg + + + +Introduction +============ + + The FreeType Project is distributed in several archive packages; + some of them may contain, in addition to the FreeType font engine, + various tools and contributions which rely on, or relate to, the + FreeType Project. + + This license applies to all files found in such packages, and + which do not fall under their own explicit license. The license + affects thus the FreeType font engine, the test programs, + documentation and makefiles, at the very least. + + This license was inspired by the BSD, Artistic, and IJG + (Independent JPEG Group) licenses, which all encourage inclusion + and use of free software in commercial and freeware products + alike. As a consequence, its main points are that: + + o We don't promise that this software works. However, we will be + interested in any kind of bug reports. (`as is' distribution) + + o You can use this software for whatever you want, in parts or + full form, without having to pay us. (`royalty-free' usage) + + o You may not pretend that you wrote this software. If you use + it, or only parts of it, in a program, you must acknowledge + somewhere in your documentation that you have used the + FreeType code. (`credits') + + We specifically permit and encourage the inclusion of this + software, with or without modifications, in commercial products. + We disclaim all warranties covering The FreeType Project and + assume no liability related to The FreeType Project. + + + Finally, many people asked us for a preferred form for a + credit/disclaimer to use in compliance with this license. We thus + encourage you to use the following text: + + """ + Portions of this software are copyright © The FreeType + Project (www.freetype.org). All rights reserved. + """ + + Please replace with the value from the FreeType version you + actually use. + + +Legal Terms +=========== + +0. Definitions +-------------- + + Throughout this license, the terms `package', `FreeType Project', + and `FreeType archive' refer to the set of files originally + distributed by the authors (David Turner, Robert Wilhelm, and + Werner Lemberg) as the `FreeType Project', be they named as alpha, + beta or final release. + + `You' refers to the licensee, or person using the project, where + `using' is a generic term including compiling the project's source + code as well as linking it to form a `program' or `executable'. + This program is referred to as `a program using the FreeType + engine'. + + This license applies to all files distributed in the original + FreeType Project, including all source code, binaries and + documentation, unless otherwise stated in the file in its + original, unmodified form as distributed in the original archive. + If you are unsure whether or not a particular file is covered by + this license, you must contact us to verify this. + + The FreeType Project is copyright (C) 1996-2000 by David Turner, + Robert Wilhelm, and Werner Lemberg. All rights reserved except as + specified below. + +1. No Warranty +-------------- + + THE FREETYPE PROJECT IS PROVIDED `AS IS' WITHOUT WARRANTY OF ANY + KIND, EITHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + PURPOSE. IN NO EVENT WILL ANY OF THE AUTHORS OR COPYRIGHT HOLDERS + BE LIABLE FOR ANY DAMAGES CAUSED BY THE USE OR THE INABILITY TO + USE, OF THE FREETYPE PROJECT. + +2. Redistribution +----------------- + + This license grants a worldwide, royalty-free, perpetual and + irrevocable right and license to use, execute, perform, compile, + display, copy, create derivative works of, distribute and + sublicense the FreeType Project (in both source and object code + forms) and derivative works thereof for any purpose; and to + authorize others to exercise some or all of the rights granted + herein, subject to the following conditions: + + o Redistribution of source code must retain this license file + (`FTL.TXT') unaltered; any additions, deletions or changes to + the original files must be clearly indicated in accompanying + documentation. The copyright notices of the unaltered, + original files must be preserved in all copies of source + files. + + o Redistribution in binary form must provide a disclaimer that + states that the software is based in part of the work of the + FreeType Team, in the distribution documentation. We also + encourage you to put an URL to the FreeType web page in your + documentation, though this isn't mandatory. + + These conditions apply to any software derived from or based on + the FreeType Project, not just the unmodified files. If you use + our work, you must acknowledge us. However, no fee need be paid + to us. + +3. Advertising +-------------- + + Neither the FreeType authors and contributors nor you shall use + the name of the other for commercial, advertising, or promotional + purposes without specific prior written permission. + + We suggest, but do not require, that you use one or more of the + following phrases to refer to this software in your documentation + or advertising materials: `FreeType Project', `FreeType Engine', + `FreeType library', or `FreeType Distribution'. + + As you have not signed this license, you are not required to + accept it. However, as the FreeType Project is copyrighted + material, only this license, or another one contracted with the + authors, grants you the right to use, distribute, and modify it. + Therefore, by using, distributing, or modifying the FreeType + Project, you indicate that you understand and accept all the terms + of this license. + +4. Contacts +----------- + + There are two mailing lists related to FreeType: + + o freetype@nongnu.org + + Discusses general use and applications of FreeType, as well as + future and wanted additions to the library and distribution. + If you are looking for support, start in this list if you + haven't found anything to help you in the documentation. + + o freetype-devel@nongnu.org + + Discusses bugs, as well as engine internals, design issues, + specific licenses, porting, etc. + + Our home page can be found at + + https://www.freetype.org + + +--- end of FTL.TXT --- +-------------------------------------------------------------------------------- +freetype2 + +This software was written by Alexander Peslyak in 2001. No copyright is +claimed, and the software is hereby placed in the public domain. +In case this attempt to disclaim copyright and place the software in the +public domain is deemed null and void, then the software is +Copyright (c) 2001 Alexander Peslyak and it is hereby released to the +general public under the following terms: + +Redistribution and use in source and binary forms, with or without +modification, are permitted. + +There's ABSOLUTELY NO WARRANTY, express or implied. +-------------------------------------------------------------------------------- +freetype2 + +This software was written by Alexander Peslyak in 2001. No copyright is +claimed, and the software is hereby placed in the public domain. +In case this attempt to disclaim copyright and place the software in the +public domain is deemed null and void, then the software is +Copyright (c) 2001 Alexander Peslyak and it is hereby released to the +general public under the following terms: + +Redistribution and use in source and binary forms, with or without +modification, are permitted. + +There's ABSOLUTELY NO WARRANTY, express or implied. + +(This is a heavily cut-down "BSD license".) +-------------------------------------------------------------------------------- +frontend_server_client + +Copyright 2020, 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. + +-------------------------------------------------------------------------------- +fuchsia_sdk + +Copyright 2014 The Fuchsia Authors. All rights reserved. + +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. + +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. +-------------------------------------------------------------------------------- +fuchsia_sdk + +Copyright 2016 The Fuchsia Authors. All rights reserved. + +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. + +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. +-------------------------------------------------------------------------------- +fuchsia_sdk + +Copyright 2017 The Fuchsia Authors. All rights reserved. + +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. + +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. +-------------------------------------------------------------------------------- +fuchsia_sdk + +Copyright 2018 The Fuchsia Authors. All rights reserved. + +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. + +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. +-------------------------------------------------------------------------------- +fuchsia_sdk + +Copyright 2019 The Fuchsia 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. + +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. +-------------------------------------------------------------------------------- +fuchsia_sdk + +Copyright 2019 The Fuchsia Authors. All rights reserved. + +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. + +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. +-------------------------------------------------------------------------------- +fuchsia_sdk + +Copyright 2020 The Fuchsia Authors. All rights reserved. + +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. + +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. +-------------------------------------------------------------------------------- +fuchsia_sdk + +Copyright 2021 The Fuchsia Authors. All rights reserved. + +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. + +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. +-------------------------------------------------------------------------------- +fuchsia_sdk + +Copyright 2022 The Fuchsia Authors. All rights reserved. + +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. + +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. +-------------------------------------------------------------------------------- +fuchsia_sdk + +Copyright 2023 The Fuchsia Authors. All rights reserved. + +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. + +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. +-------------------------------------------------------------------------------- +fuchsia_sdk + +musl as a whole is licensed under the following standard MIT license: + + +Copyright © 2005-2014 Rich Felker, et al. + +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. + + +Authors/contributors include: + +Alex Dowad +Alexander Monakov +Anthony G. Basile +Arvid Picciani +Bobby Bingham +Boris Brezillon +Brent Cook +Chris Spiegel +Clément Vasseur +Daniel Micay +Denys Vlasenko +Emil Renner Berthing +Felix Fietkau +Felix Janda +Gianluca Anzolin +Hauke Mehrtens +Hiltjo Posthuma +Isaac Dunham +Jaydeep Patil +Jens Gustedt +Jeremy Huntwork +Jo-Philipp Wich +Joakim Sindholt +John Spencer +Josiah Worcester +Justin Cormack +Khem Raj +Kylie McClain +Luca Barbato +Luka Perkov +M Farkas-Dyck (Strake) +Mahesh Bodapati +Michael Forney +Natanael Copa +Nicholas J. Kain +orc +Pascal Cuoq +Petr Hosek +Pierre Carrier +Rich Felker +Richard Pennington +Shiz +sin +Solar Designer +Stefan Kristiansson +Szabolcs Nagy +Timo Teräs +Trutz Behn +Valentin Ochs +William Haddon + +Portions of this software are derived from third-party works licensed +under terms compatible with the above MIT license: + +Much of the math library code (third_party/math/* and +third_party/complex/*, and third_party/include/libm.h) is +Copyright © 1993,2004 Sun Microsystems or +Copyright © 2003-2011 David Schultz or +Copyright © 2003-2009 Steven G. Kargl or +Copyright © 2003-2009 Bruce D. Evans or +Copyright © 2008 Stephen L. Moshier +and labelled as such in comments in the individual source files. All +have been licensed under extremely permissive terms. + +The smoothsort implementation (third_party/smoothsort/qsort.c) is +Copyright © 2011 Valentin Ochs and is licensed under an MIT-style +license. + +The x86_64 files in third_party/arch were written by Nicholas J. Kain +and is licensed under the standard MIT terms. + +All other files which have no copyright comments are original works +produced specifically for use as part of this library, written either +by Rich Felker, the main author of the library, or by one or more +contibutors listed above. Details on authorship of individual files +can be found in the git version control history of the project. The +omission of copyright and license comments in each file is in the +interest of source tree size. + +In addition, permission is hereby granted for all public header files +(include/* and arch/*/bits/*) and crt files intended to be linked into +applications (crt/*, ldso/dlstart.c, and arch/*/crt_arch.h) to omit +the copyright notice and permission notice otherwise required by the +license, and to use these files without any requirement of +attribution. These files include substantial contributions from: + +Bobby Bingham +John Spencer +Nicholas J. Kain +Rich Felker +Richard Pennington +Stefan Kristiansson +Szabolcs Nagy + +all of whom have explicitly granted such permission. + +This file previously contained text expressing a belief that most of +the files covered by the above exception were sufficiently trivial not +to be subject to copyright, resulting in confusion over whether it +negated the permissions granted in the license. In the spirit of +permissive licensing, and of not having licensing issues being an +obstacle to adoption, that text has been removed. +-------------------------------------------------------------------------------- +fuchsia_sdk +libjxl + +Copyright 2021 The Chromium Authors. All rights reserved. + +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 Inc. 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. +-------------------------------------------------------------------------------- +glfw + +Copyright (C) 1997-2013 Sam Lantinga + +This software is provided 'as-is', without any express or implied warranty. +In no event will the authors be held liable for any damages arising from the +use of this software. + +Permission is granted to anyone to use this software for any purpose, +including commercial applications, and to alter it and redistribute it +freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would + be appreciated but is not required. + +2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + +3. This notice may not be removed or altered from any source distribution. +-------------------------------------------------------------------------------- +glfw + +Copyright (c) 2002-2006 Marcus Geelnard + +Copyright (c) 2006-2019 Camilla Löwy + +This software is provided 'as-is', without any express or implied +warranty. In no event will the authors be held liable for any damages +arising from the use of this software. + +Permission is granted to anyone to use this software for any purpose, +including commercial applications, and to alter it and redistribute it +freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would + be appreciated but is not required. + +2. Altered source versions must be plainly marked as such, and must not + be misrepresented as being the original software. + +3. This notice may not be removed or altered from any source + distribution. +-------------------------------------------------------------------------------- +glfw + +Copyright (c) 2002-2006 Marcus Geelnard +Copyright (c) 2006-2016 Camilla Löwy + +This software is provided 'as-is', without any express or implied +warranty. In no event will the authors be held liable for any damages +arising from the use of this software. + +Permission is granted to anyone to use this software for any purpose, +including commercial applications, and to alter it and redistribute it +freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would + be appreciated but is not required. + +2. Altered source versions must be plainly marked as such, and must not + be misrepresented as being the original software. + +3. This notice may not be removed or altered from any source + distribution. +-------------------------------------------------------------------------------- +glfw + +Copyright (c) 2002-2006 Marcus Geelnard +Copyright (c) 2006-2017 Camilla Löwy + +This software is provided 'as-is', without any express or implied +warranty. In no event will the authors be held liable for any damages +arising from the use of this software. + +Permission is granted to anyone to use this software for any purpose, +including commercial applications, and to alter it and redistribute it +freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would + be appreciated but is not required. + +2. Altered source versions must be plainly marked as such, and must not + be misrepresented as being the original software. + +3. This notice may not be removed or altered from any source + distribution. +-------------------------------------------------------------------------------- +glfw + +Copyright (c) 2002-2006 Marcus Geelnard +Copyright (c) 2006-2018 Camilla Löwy + +This software is provided 'as-is', without any express or implied +warranty. In no event will the authors be held liable for any damages +arising from the use of this software. + +Permission is granted to anyone to use this software for any purpose, +including commercial applications, and to alter it and redistribute it +freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would + be appreciated but is not required. + +2. Altered source versions must be plainly marked as such, and must not + be misrepresented as being the original software. + +3. This notice may not be removed or altered from any source + distribution. +-------------------------------------------------------------------------------- +glfw + +Copyright (c) 2002-2006 Marcus Geelnard +Copyright (c) 2006-2019 Camilla Löwy + +This software is provided 'as-is', without any express or implied +warranty. In no event will the authors be held liable for any damages +arising from the use of this software. + +Permission is granted to anyone to use this software for any purpose, +including commercial applications, and to alter it and redistribute it +freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would + be appreciated but is not required. + +2. Altered source versions must be plainly marked as such, and must not + be misrepresented as being the original software. + +3. This notice may not be removed or altered from any source + distribution. +-------------------------------------------------------------------------------- +glfw + +Copyright (c) 2002-2006 Marcus Geelnard +Copyright (c) 2006-2019 Camilla Löwy +Copyright (c) 2012 Torsten Walluhn + +This software is provided 'as-is', without any express or implied +warranty. In no event will the authors be held liable for any damages +arising from the use of this software. + +Permission is granted to anyone to use this software for any purpose, +including commercial applications, and to alter it and redistribute it +freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would + be appreciated but is not required. + +2. Altered source versions must be plainly marked as such, and must not + be misrepresented as being the original software. + +3. This notice may not be removed or altered from any source + distribution. +-------------------------------------------------------------------------------- +glfw + +Copyright (c) 2006-2017 Camilla Löwy + +This software is provided 'as-is', without any express or implied +warranty. In no event will the authors be held liable for any damages +arising from the use of this software. + +Permission is granted to anyone to use this software for any purpose, +including commercial applications, and to alter it and redistribute it +freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would + be appreciated but is not required. + +2. Altered source versions must be plainly marked as such, and must not + be misrepresented as being the original software. + +3. This notice may not be removed or altered from any source + distribution. +-------------------------------------------------------------------------------- +glfw + +Copyright (c) 2006-2018 Camilla Löwy + +This software is provided 'as-is', without any express or implied +warranty. In no event will the authors be held liable for any damages +arising from the use of this software. + +Permission is granted to anyone to use this software for any purpose, +including commercial applications, and to alter it and redistribute it +freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would + be appreciated but is not required. + +2. Altered source versions must be plainly marked as such, and must not + be misrepresented as being the original software. + +3. This notice may not be removed or altered from any source + distribution. +-------------------------------------------------------------------------------- +glfw + +Copyright (c) 2009-2016 Camilla Löwy + +This software is provided 'as-is', without any express or implied +warranty. In no event will the authors be held liable for any damages +arising from the use of this software. + +Permission is granted to anyone to use this software for any purpose, +including commercial applications, and to alter it and redistribute it +freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would + be appreciated but is not required. + +2. Altered source versions must be plainly marked as such, and must not + be misrepresented as being the original software. + +3. This notice may not be removed or altered from any source + distribution. +-------------------------------------------------------------------------------- +glfw + +Copyright (c) 2009-2019 Camilla Löwy + +This software is provided 'as-is', without any express or implied +warranty. In no event will the authors be held liable for any damages +arising from the use of this software. + +Permission is granted to anyone to use this software for any purpose, +including commercial applications, and to alter it and redistribute it +freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would + be appreciated but is not required. + +2. Altered source versions must be plainly marked as such, and must not + be misrepresented as being the original software. + +3. This notice may not be removed or altered from any source + distribution. +-------------------------------------------------------------------------------- +glfw + +Copyright (c) 2009-2019 Camilla Löwy +Copyright (c) 2012 Torsten Walluhn + +This software is provided 'as-is', without any express or implied +warranty. In no event will the authors be held liable for any damages +arising from the use of this software. + +Permission is granted to anyone to use this software for any purpose, +including commercial applications, and to alter it and redistribute it +freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would + be appreciated but is not required. + +2. Altered source versions must be plainly marked as such, and must not + be misrepresented as being the original software. + +3. This notice may not be removed or altered from any source + distribution. +-------------------------------------------------------------------------------- +glfw + +Copyright (c) 2009-2021 Camilla Löwy + +This software is provided 'as-is', without any express or implied +warranty. In no event will the authors be held liable for any damages +arising from the use of this software. + +Permission is granted to anyone to use this software for any purpose, +including commercial applications, and to alter it and redistribute it +freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would + be appreciated but is not required. + +2. Altered source versions must be plainly marked as such, and must not + be misrepresented as being the original software. + +3. This notice may not be removed or altered from any source + distribution. +-------------------------------------------------------------------------------- +glfw + +Copyright (c) 2014 Jonas Ådahl + +This software is provided 'as-is', without any express or implied +warranty. In no event will the authors be held liable for any damages +arising from the use of this software. + +Permission is granted to anyone to use this software for any purpose, +including commercial applications, and to alter it and redistribute it +freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would + be appreciated but is not required. + +2. Altered source versions must be plainly marked as such, and must not + be misrepresented as being the original software. + +3. This notice may not be removed or altered from any source + distribution. +-------------------------------------------------------------------------------- +glfw + +Copyright (c) 2016 Google Inc. +Copyright (c) 2016-2017 Camilla Löwy + +This software is provided 'as-is', without any express or implied +warranty. In no event will the authors be held liable for any damages +arising from the use of this software. + +Permission is granted to anyone to use this software for any purpose, +including commercial applications, and to alter it and redistribute it +freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would + be appreciated but is not required. + +2. Altered source versions must be plainly marked as such, and must not + be misrepresented as being the original software. + +3. This notice may not be removed or altered from any source + distribution. +-------------------------------------------------------------------------------- +glfw + +Copyright (c) 2016 Google Inc. +Copyright (c) 2016-2019 Camilla Löwy + +This software is provided 'as-is', without any express or implied +warranty. In no event will the authors be held liable for any damages +arising from the use of this software. + +Permission is granted to anyone to use this software for any purpose, +including commercial applications, and to alter it and redistribute it +freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would + be appreciated but is not required. + +2. Altered source versions must be plainly marked as such, and must not + be misrepresented as being the original software. + +3. This notice may not be removed or altered from any source + distribution. +-------------------------------------------------------------------------------- +glfw + +Copyright (c) 2016-2017 Camilla Löwy + +This software is provided 'as-is', without any express or implied +warranty. In no event will the authors be held liable for any damages +arising from the use of this software. + +Permission is granted to anyone to use this software for any purpose, +including commercial applications, and to alter it and redistribute it +freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would + be appreciated but is not required. + +2. Altered source versions must be plainly marked as such, and must not + be misrepresented as being the original software. + +3. This notice may not be removed or altered from any source + distribution. +-------------------------------------------------------------------------------- +glfw + +Copyright (c) 2021 Camilla Löwy + +This software is provided 'as-is', without any express or implied +warranty. In no event will the authors be held liable for any damages +arising from the use of this software. + +Permission is granted to anyone to use this software for any purpose, +including commercial applications, and to alter it and redistribute it +freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would + be appreciated but is not required. + +2. Altered source versions must be plainly marked as such, and must not + be misrepresented as being the original software. + +3. This notice may not be removed or altered from any source + distribution. +-------------------------------------------------------------------------------- +glfw + +Copyright (c) 2022 Camilla Löwy + +This software is provided 'as-is', without any express or implied +warranty. In no event will the authors be held liable for any damages +arising from the use of this software. + +Permission is granted to anyone to use this software for any purpose, +including commercial applications, and to alter it and redistribute it +freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would + be appreciated but is not required. + +2. Altered source versions must be plainly marked as such, and must not + be misrepresented as being the original software. + +3. This notice may not be removed or altered from any source + distribution. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2002-2005 3Dlabs Inc. Ltd. +All rights reserved. + +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 3Dlabs Inc. Ltd. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2002-2005 3Dlabs Inc. Ltd. +Copyright (C) 2012-2013 LunarG, Inc. + +All rights reserved. + +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 3Dlabs Inc. Ltd. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2002-2005 3Dlabs Inc. Ltd. +Copyright (C) 2012-2013 LunarG, Inc. +Copyright (C) 2015-2018 Google, Inc. + +All rights reserved. + +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 3Dlabs Inc. Ltd. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2002-2005 3Dlabs Inc. Ltd. +Copyright (C) 2012-2013 LunarG, Inc. +Copyright (C) 2017 ARM Limited. +Copyright (C) 2015-2018 Google, Inc. +Modifications Copyright (C) 2020 Advanced Micro Devices, Inc. All rights reserved. + +All rights reserved. + +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 3Dlabs Inc. Ltd. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2002-2005 3Dlabs Inc. Ltd. +Copyright (C) 2012-2013 LunarG, Inc. +Copyright (C) 2017 ARM Limited. +Copyright (C) 2015-2019 Google, Inc. +Modifications Copyright (C) 2020 Advanced Micro Devices, Inc. All rights reserved. + +All rights reserved. + +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 3Dlabs Inc. Ltd. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2002-2005 3Dlabs Inc. Ltd. +Copyright (C) 2012-2013 LunarG, Inc. +Copyright (C) 2017 ARM Limited. +Copyright (C) 2015-2020 Google, Inc. +Modifications Copyright (C) 2020 Advanced Micro Devices, Inc. All rights reserved. + +All rights reserved. + +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 3Dlabs Inc. Ltd. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2002-2005 3Dlabs Inc. Ltd. +Copyright (C) 2012-2013 LunarG, Inc. +Copyright (C) 2017 ARM Limited. +Copyright (C) 2018-2020 Google, Inc. + +All rights reserved. + +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 3Dlabs Inc. Ltd. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2002-2005 3Dlabs Inc. Ltd. +Copyright (C) 2012-2013 LunarG, Inc. +Copyright (C) 2017 ARM Limited. +Modifications Copyright (C) 2020 Advanced Micro Devices, Inc. All rights reserved. + +All rights reserved. + +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 3Dlabs Inc. Ltd. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2002-2005 3Dlabs Inc. Ltd. +Copyright (C) 2012-2015 LunarG, Inc. +Copyright (C) 2015-2018 Google, Inc. +Copyright (C) 2017, 2019 ARM Limited. +Modifications Copyright (C) 2020 Advanced Micro Devices, Inc. All rights reserved. + +All rights reserved. + +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 3Dlabs Inc. Ltd. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2002-2005 3Dlabs Inc. Ltd. +Copyright (C) 2012-2015 LunarG, Inc. +Copyright (C) 2015-2020 Google, Inc. +Copyright (C) 2017 ARM Limited. + +All rights reserved. + +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 3Dlabs Inc. Ltd. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2002-2005 3Dlabs Inc. Ltd. +Copyright (C) 2012-2016 LunarG, Inc. +Copyright (C) 2015-2016 Google, Inc. +Copyright (C) 2017 ARM Limited. +Modifications Copyright (C) 2020 Advanced Micro Devices, Inc. All rights reserved. + +All rights reserved. + +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 3Dlabs Inc. Ltd. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2002-2005 3Dlabs Inc. Ltd. +Copyright (C) 2012-2016 LunarG, Inc. +Copyright (C) 2015-2020 Google, Inc. +Copyright (C) 2017 ARM Limited. +Modifications Copyright (C) 2020-2021 Advanced Micro Devices, Inc. All rights reserved. + +All rights reserved. + +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 3Dlabs Inc. Ltd. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2002-2005 3Dlabs Inc. Ltd. +Copyright (C) 2012-2016 LunarG, Inc. +Copyright (C) 2017 ARM Limited. +Modifications Copyright (C) 2020 Advanced Micro Devices, Inc. All rights reserved. + +All rights reserved. + +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 3Dlabs Inc. Ltd. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2002-2005 3Dlabs Inc. Ltd. +Copyright (C) 2013 LunarG, Inc. + +All rights reserved. + +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 3Dlabs Inc. Ltd. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2002-2005 3Dlabs Inc. Ltd. +Copyright (C) 2013 LunarG, Inc. +All rights reserved. + +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 3Dlabs Inc. Ltd. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2002-2005 3Dlabs Inc. Ltd. +Copyright (C) 2013 LunarG, Inc. +Copyright (C) 2015-2018 Google, Inc. + +All rights reserved. + +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 3Dlabs Inc. Ltd. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2002-2005 3Dlabs Inc. Ltd. +Copyright (C) 2013 LunarG, Inc. +Copyright (C) 2015-2018 Google, Inc. +All rights reserved. + +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 3Dlabs Inc. Ltd. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2002-2005 3Dlabs Inc. Ltd. +Copyright (C) 2013 LunarG, Inc. +Copyright (C) 2017 ARM Limited. + +All rights reserved. + +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 3Dlabs Inc. Ltd. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2002-2005 3Dlabs Inc. Ltd. +Copyright (C) 2013 LunarG, Inc. +Copyright (C) 2017 ARM Limited. +Copyright (C) 2015-2018 Google, Inc. + +All rights reserved. + +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 3Dlabs Inc. Ltd. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2002-2005 3Dlabs Inc. Ltd. +Copyright (C) 2013 LunarG, Inc. +Copyright (C) 2017 ARM Limited. +Copyright (C) 2020 Google, Inc. +Modifications Copyright (C) 2020 Advanced Micro Devices, Inc. All rights reserved. + +All rights reserved. + +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 3Dlabs Inc. Ltd. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2002-2005 3Dlabs Inc. Ltd. +Copyright (C) 2013 LunarG, Inc. +Copyright (c) 2002-2010 The ANGLE Project Authors. + +All rights reserved. + +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 3Dlabs Inc. Ltd. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2002-2005 3Dlabs Inc. Ltd. +Copyright (C) 2013-2016 LunarG, Inc. + +All rights reserved. + +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 3Dlabs Inc. Ltd. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2002-2005 3Dlabs Inc. Ltd. +Copyright (C) 2013-2016 LunarG, Inc. +Copyright (C) 2015-2018 Google, Inc. + +All rights reserved. + +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 3Dlabs Inc. Ltd. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2002-2005 3Dlabs Inc. Ltd. +Copyright (C) 2013-2016 LunarG, Inc. +Copyright (C) 2015-2020 Google, Inc. + +All rights reserved. + +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 3Dlabs Inc. Ltd. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2002-2005 3Dlabs Inc. Ltd. +Copyright (C) 2013-2016 LunarG, Inc. +Copyright (C) 2016-2020 Google, Inc. +Modifications Copyright(C) 2021 Advanced Micro Devices, Inc.All rights reserved. + +All rights reserved. + +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 3Dlabs Inc. Ltd. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2002-2005 3Dlabs Inc. Ltd. +Copyright (C) 2016 Google, Inc. + +All rights reserved. + +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 3Dlabs Inc. Ltd. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2002-2005 3Dlabs Inc. Ltd. +Copyright (C) 2016 LunarG, Inc. +Copyright (C) 2017 ARM Limited. +Copyright (C) 2015-2018 Google, Inc. + +All rights reserved. + +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 3Dlabs Inc. Ltd. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2002-2005 3Dlabs Inc. Ltd. +Copyright (C) 2017 Google, Inc. + +All rights reserved. + +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 3Dlabs Inc. Ltd. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2013 LunarG, Inc. + +All rights reserved. + +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 3Dlabs Inc. Ltd. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2013 LunarG, Inc. +Copyright (C) 2015-2018 Google, Inc. +All rights reserved. + +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 3Dlabs Inc. Ltd. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2013 LunarG, Inc. +Copyright (C) 2017 ARM Limited. +Copyright (C) 2015-2018 Google, Inc. + +All rights reserved. + +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 3Dlabs Inc. Ltd. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2013-2016 LunarG, Inc. + +All rights reserved. + +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 3Dlabs Inc. Ltd. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2014 LunarG, Inc. +Copyright (C) 2015-2018 Google, Inc. + +All rights reserved. + +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 3Dlabs Inc. Ltd. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2014-2015 LunarG, Inc. + +All rights reserved. + +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 3Dlabs Inc. Ltd. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2014-2015 LunarG, Inc. +Copyright (C) 2015-2018 Google, Inc. +Modifications Copyright (C) 2020 Advanced Micro Devices, Inc. All rights reserved. + +All rights reserved. + +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 3Dlabs Inc. Ltd. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2014-2015 LunarG, Inc. +Copyright (C) 2015-2020 Google, Inc. +Copyright (C) 2017 ARM Limited. +Modifications Copyright (C) 2020 Advanced Micro Devices, Inc. All rights reserved. + +All rights reserved. + +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 3Dlabs Inc. Ltd. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2014-2015 LunarG, Inc. +Modifications Copyright (C) 2020 Advanced Micro Devices, Inc. All rights reserved. + +All rights reserved. + +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 3Dlabs Inc. Ltd. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2014-2016 LunarG, Inc. +Copyright (C) 2015-2020 Google, Inc. +Copyright (C) 2017 ARM Limited. +Modifications Copyright (C) 2020 Advanced Micro Devices, Inc. All rights reserved. + +All rights reserved. + +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 3Dlabs Inc. Ltd. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2014-2016 LunarG, Inc. +Copyright (C) 2018 Google, Inc. + +All rights reserved. + +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 3Dlabs Inc. Ltd. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2014-2016 LunarG, Inc. +Copyright (C) 2018-2020 Google, Inc. + +All rights reserved. + +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 3Dlabs Inc. Ltd. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2015 LunarG, Inc. + +All rights reserved. + +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 3Dlabs Inc. Ltd. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2015-2016 Google, Inc. + +All rights reserved. + +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 Inc. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2015-2018 Google, Inc. +Copyright (C) 2017 ARM Limited. + +All rights reserved. + +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 3Dlabs Inc. Ltd. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2016 Google, Inc. + +All rights reserved. + +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 3Dlabs Inc. Ltd. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2016 Google, Inc. + +All rights reserved. + +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 Inc. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2016 Google, Inc. + +All rights reserved. + +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, Inc., 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2016 Google, Inc. +Copyright (C) 2016 LunarG, Inc. + +All rights reserved. + +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 Inc. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2016 Google, Inc. +Copyright (C) 2016 LunarG, Inc. + +All rights reserved. + +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, Inc., 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2016 Google, Inc. +Copyright (C) 2019 ARM Limited. +Modifications Copyright (C) 2020 Advanced Micro Devices, Inc. All rights reserved. + +All rights reserved. + +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 Inc. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2016 LunarG, Inc. + +All rights reserved. + +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 3Dlabs Inc. Ltd. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2016 LunarG, Inc. + +All rights reserved. + +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 Inc. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2016 LunarG, Inc. + +All rights reserved. + +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, Inc., 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2016-2017 Google, Inc. + +All rights reserved. + +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 Inc. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2016-2017 Google, Inc. +Copyright (C) 2020 The Khronos Group Inc. + +All rights reserved. + +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 3Dlabs Inc. Ltd. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2016-2017 LunarG, Inc. + +All rights reserved. + +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 3Dlabs Inc. Ltd. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2016-2018 Google, Inc. +Copyright (C) 2016 LunarG, Inc. + +All rights reserved. + +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 3Dlabs Inc. Ltd. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2016-2018 Google, Inc. +Copyright (C) 2016 LunarG, Inc. + +All rights reserved. + +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, Inc., 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2017 LunarG, Inc. +Copyright (C) 2018 Google, Inc. + +All rights reserved. + +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 3Dlabs Inc. Ltd. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2017 LunarG, Inc. +Copyright (C) 2018 Google, Inc. + +All rights reserved. + +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, Inc., 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2017-2018 Google, Inc. +Copyright (C) 2017 LunarG, Inc. + +All rights reserved. + +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 3Dlabs Inc. Ltd. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2018 Google, Inc. + +All rights reserved. + +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 3Dlabs Inc. Ltd. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2018 The Khronos Group Inc. +All rights reserved. + +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 3Dlabs Inc. Ltd. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2020 Google, Inc. + +All rights reserved. + +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, Inc., 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (C) 2020 The Khronos Group Inc. + +All rights reserved. + +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 The Khronos Group Inc. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang + +Copyright (c) 2002, NVIDIA Corporation. + +NVIDIA Corporation("NVIDIA") supplies this software to you in +consideration of your agreement to the following terms, and your use, +installation, modification or redistribution of this NVIDIA software +constitutes acceptance of these terms. If you do not agree with these +terms, please do not use, install, modify or redistribute this NVIDIA +software. + +In consideration of your agreement to abide by the following terms, and +subject to these terms, NVIDIA grants you a personal, non-exclusive +license, under NVIDIA's copyrights in this original NVIDIA software (the +"NVIDIA Software"), to use, reproduce, modify and redistribute the +NVIDIA Software, with or without modifications, in source and/or binary +forms; provided that if you redistribute the NVIDIA Software, you must +retain the copyright notice of NVIDIA, this notice and the following +text and disclaimers in all such redistributions of the NVIDIA Software. +Neither the name, trademarks, service marks nor logos of NVIDIA +Corporation may be used to endorse or promote products derived from the +NVIDIA Software without specific prior written permission from NVIDIA. +Except as expressly stated in this notice, no other rights or licenses +express or implied, are granted by NVIDIA herein, including but not +limited to any patent rights that may be infringed by your derivative +works or by other works in which the NVIDIA Software may be +incorporated. No hardware is licensed hereunder. + +THE NVIDIA SOFTWARE IS BEING PROVIDED ON AN "AS IS" BASIS, WITHOUT +WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED, +INCLUDING WITHOUT LIMITATION, WARRANTIES OR CONDITIONS OF TITLE, +NON-INFRINGEMENT, MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR +ITS USE AND OPERATION EITHER ALONE OR IN COMBINATION WITH OTHER +PRODUCTS. + +IN NO EVENT SHALL NVIDIA BE LIABLE FOR ANY SPECIAL, INDIRECT, +INCIDENTAL, EXEMPLARY, CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +TO, LOST PROFITS; PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF +USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) OR ARISING IN ANY WAY +OUT OF THE USE, REPRODUCTION, MODIFICATION AND/OR DISTRIBUTION OF THE +NVIDIA SOFTWARE, HOWEVER CAUSED AND WHETHER UNDER THEORY OF CONTRACT, +TORT (INCLUDING NEGLIGENCE), STRICT LIABILITY OR OTHERWISE, EVEN IF +NVIDIA HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +-------------------------------------------------------------------------------- +glslang + +Copyright (c) 2013 The Khronos Group Inc. + +Permission is hereby granted, free of charge, to any person obtaining a +copy of this software and/or associated documentation files (the +"Materials"), to deal in the Materials without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Materials, and to +permit persons to whom the Materials are 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 Materials. + +THE MATERIALS ARE 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 +MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS. +-------------------------------------------------------------------------------- +glslang + +Copyright (c) 2014-2017 The Khronos Group Inc. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and/or associated documentation files (the "Materials"), +to deal in the Materials without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, sublicense, +and/or sell copies of the Materials, and to permit persons to whom the +Materials are 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 Materials. + +MODIFICATIONS TO THIS FILE MAY MEAN IT NO LONGER ACCURATELY REFLECTS KHRONOS +STANDARDS. THE UNMODIFIED, NORMATIVE VERSIONS OF KHRONOS SPECIFICATIONS AND +HEADER INFORMATION ARE LOCATED AT https://www.khronos.org/registry/ + +THE MATERIALS ARE 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 MATERIALS OR THE USE OR OTHER DEALINGS +IN THE MATERIALS. +-------------------------------------------------------------------------------- +glslang + +Copyright (c) 2014-2020 The Khronos Group Inc. +Modifications Copyright (C) 2020 Advanced Micro Devices, Inc. All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and/or associated documentation files (the "Materials"), +to deal in the Materials without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, sublicense, +and/or sell copies of the Materials, and to permit persons to whom the +Materials are 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 Materials. + +MODIFICATIONS TO THIS FILE MAY MEAN IT NO LONGER ACCURATELY REFLECTS KHRONOS +STANDARDS. THE UNMODIFIED, NORMATIVE VERSIONS OF KHRONOS SPECIFICATIONS AND +HEADER INFORMATION ARE LOCATED AT https://www.khronos.org/registry/ + +THE MATERIALS ARE 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 MATERIALS OR THE USE OR OTHER DEALINGS +IN THE MATERIALS. +-------------------------------------------------------------------------------- +glslang + +Copyright (c) 2018 The Khronos Group Inc. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and/or associated documentation files (the "Materials"), +to deal in the Materials without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, sublicense, +and/or sell copies of the Materials, and to permit persons to whom the +Materials are 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 Materials. + +MODIFICATIONS TO THIS FILE MAY MEAN IT NO LONGER ACCURATELY REFLECTS KHRONOS +STANDARDS. THE UNMODIFIED, NORMATIVE VERSIONS OF KHRONOS SPECIFICATIONS AND +HEADER INFORMATION ARE LOCATED AT https://www.khronos.org/registry/ + +THE MATERIALS ARE 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 MATERIALS OR THE USE OR OTHER DEALINGS +IN THE MATERIALS. +-------------------------------------------------------------------------------- +glslang + +Copyright (c) 2019, Viktor Latypov +All rights reserved. + +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. + +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. +-------------------------------------------------------------------------------- +glslang + +Copyright (c) 2020 The Khronos Group Inc. + +Permission is hereby granted, free of charge, to any person obtaining a +copy of this software and/or associated documentation files (the +"Materials"), to deal in the Materials without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Materials, and to +permit persons to whom the Materials are 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 Materials. + +MODIFICATIONS TO THIS FILE MAY MEAN IT NO LONGER ACCURATELY REFLECTS +KHRONOS STANDARDS. THE UNMODIFIED, NORMATIVE VERSIONS OF KHRONOS +SPECIFICATIONS AND HEADER INFORMATION ARE LOCATED AT + https://www.khronos.org/registry/ + +THE MATERIALS ARE 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 +MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS. +-------------------------------------------------------------------------------- +glslang + +Copyright (c) 2020, Travis Fort +All rights reserved. + +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. + +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. +-------------------------------------------------------------------------------- +glslang + +Copyright (c) 2022 ARM Limited + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and/or associated documentation files (the "Materials"), +to deal in the Materials without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, sublicense, +and/or sell copies of the Materials, and to permit persons to whom the +Materials are 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 Materials. + +MODIFICATIONS TO THIS FILE MAY MEAN IT NO LONGER ACCURATELY REFLECTS KHRONOS +STANDARDS. THE UNMODIFIED, NORMATIVE VERSIONS OF KHRONOS SPECIFICATIONS AND +HEADER INFORMATION ARE LOCATED AT https://www.khronos.org/registry/ + +THE MATERIALS ARE 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 MATERIALS OR THE USE OR OTHER DEALINGS +IN THE MATERIALS. +-------------------------------------------------------------------------------- +glslang + +Copyright(C) 2021 Advanced Micro Devices, Inc. + +All rights reserved. + +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 3Dlabs Inc. Ltd. 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 HOLDERS 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. +-------------------------------------------------------------------------------- +glslang +skia + +Copyright (c) 2014-2016 The Khronos Group Inc. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and/or associated documentation files (the "Materials"), +to deal in the Materials without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, sublicense, +and/or sell copies of the Materials, and to permit persons to whom the +Materials are 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 Materials. + +MODIFICATIONS TO THIS FILE MAY MEAN IT NO LONGER ACCURATELY REFLECTS KHRONOS +STANDARDS. THE UNMODIFIED, NORMATIVE VERSIONS OF KHRONOS SPECIFICATIONS AND +HEADER INFORMATION ARE LOCATED AT https://www.khronos.org/registry/ + +THE MATERIALS ARE 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 MATERIALS OR THE USE OR OTHER DEALINGS +IN THE MATERIALS. +-------------------------------------------------------------------------------- +glslang +spirv-cross + +Copyright (c) 2014-2020 The Khronos Group Inc. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and/or associated documentation files (the "Materials"), +to deal in the Materials without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, sublicense, +and/or sell copies of the Materials, and to permit persons to whom the +Materials are 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 Materials. + +MODIFICATIONS TO THIS FILE MAY MEAN IT NO LONGER ACCURATELY REFLECTS KHRONOS +STANDARDS. THE UNMODIFIED, NORMATIVE VERSIONS OF KHRONOS SPECIFICATIONS AND +HEADER INFORMATION ARE LOCATED AT https://www.khronos.org/registry/ + +THE MATERIALS ARE 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 MATERIALS OR THE USE OR OTHER DEALINGS +IN THE MATERIALS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright (C) 2011 Google, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright (C) 2012 Grigori Goronzy + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright (C) 2013 Google, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright (c) Microsoft Corporation. + +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 +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 1998-2004 David Turner and Werner Lemberg +Copyright © 2004,2007,2009 Red Hat, Inc. +Copyright © 2011,2012 Google, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 1998-2004 David Turner and Werner Lemberg +Copyright © 2004,2007,2009,2010 Red Hat, Inc. +Copyright © 2011,2012 Google, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 1998-2004 David Turner and Werner Lemberg +Copyright © 2006 Behdad Esfahbod +Copyright © 2007,2008,2009 Red Hat, Inc. +Copyright © 2012,2013 Google, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2007 Chris Wilson +Copyright © 2009,2010 Red Hat, Inc. +Copyright © 2011,2012 Google, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2007,2008,2009 Red Hat, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2007,2008,2009 Red Hat, Inc. +Copyright © 2010,2011,2012 Google, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2007,2008,2009 Red Hat, Inc. +Copyright © 2010,2012 Google, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2007,2008,2009 Red Hat, Inc. +Copyright © 2011,2012 Google, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2007,2008,2009 Red Hat, Inc. +Copyright © 2012 Google, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2007,2008,2009 Red Hat, Inc. +Copyright © 2012,2013 Google, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2007,2008,2009 Red Hat, Inc. +Copyright © 2012,2013 Google, Inc. +Copyright © 2019, Facebook Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2007,2008,2009 Red Hat, Inc. +Copyright © 2018,2019,2020 Ebrahim Byagowi +Copyright © 2018 Khaled Hosny + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2007,2008,2009,2010 Red Hat, Inc. +Copyright © 2010,2012 Google, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2007,2008,2009,2010 Red Hat, Inc. +Copyright © 2010,2012,2013 Google, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2007,2008,2009,2010 Red Hat, Inc. +Copyright © 2012 Google, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2007,2008,2009,2010 Red Hat, Inc. +Copyright © 2012,2018 Google, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2007,2008,2009,2010 Red Hat, Inc. +Copyright © 2012,2018 Google, Inc. +Copyright © 2019 Facebook, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2009 Red Hat, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2009 Red Hat, Inc. +Copyright © 2009 Keith Stribley +Copyright © 2011 Google, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2009 Red Hat, Inc. +Copyright © 2009 Keith Stribley +Copyright © 2015 Google, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2009 Red Hat, Inc. +Copyright © 2011 Codethink Limited +Copyright © 2010,2011,2012 Google, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2009 Red Hat, Inc. +Copyright © 2011 Codethink Limited +Copyright © 2011,2012 Google, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2009 Red Hat, Inc. +Copyright © 2011 Google, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2009 Red Hat, Inc. +Copyright © 2012 Google, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2009 Red Hat, Inc. +Copyright © 2015 Google, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2009 Red Hat, Inc. +Copyright © 2018 Ebrahim Byagowi + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2009 Red Hat, Inc. +Copyright © 2018 Google, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2009,2010 Red Hat, Inc. +Copyright © 2010,2011,2012 Google, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2009,2010 Red Hat, Inc. +Copyright © 2010,2011,2012,2013 Google, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2009,2010 Red Hat, Inc. +Copyright © 2010,2011,2013 Google, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2009,2010 Red Hat, Inc. +Copyright © 2011,2012 Google, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2010 Google, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2010 Red Hat, Inc. +Copyright © 2012 Google, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2010,2011 Google, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2010,2011,2012 Google, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2010,2011,2013 Google, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2010,2012 Google, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2011 Google, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2011 Martin Hosken +Copyright © 2011 SIL International + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2011 Martin Hosken +Copyright © 2011 SIL International +Copyright © 2011,2012 Google, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2011,2012 Google, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2011,2012 Google, Inc. +Copyright © 2018 Ebrahim Byagowi + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2011,2012,2013 Google, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2011,2012,2013 Google, Inc. +Copyright © 2021 Khaled Hosny + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2011,2012,2014 Google, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2011,2014 Google, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2012 Google, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2012 Mozilla Foundation. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2012,2013 Google, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2012,2013 Mozilla Foundation. +Copyright © 2012,2013 Google, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2012,2017 Google, Inc. +Copyright © 2021 Behdad Esfahbod + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2012,2018 Google, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2013 Google, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2013 Red Hat, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2014 Google, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2015 Google, Inc. +Copyright © 2019 Adobe Inc. +Copyright © 2019 Ebrahim Byagowi + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2015 Mozilla Foundation. +Copyright © 2015 Google, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2015-2019 Ebrahim Byagowi + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2016 Elie Roux +Copyright © 2018 Google, Inc. +Copyright © 2018-2019 Ebrahim Byagowi + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2016 Google, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2016 Google, Inc. +Copyright © 2018 Ebrahim Byagowi + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2016 Google, Inc. +Copyright © 2018 Khaled Hosny +Copyright © 2018 Ebrahim Byagowi + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2016 Igalia S.L. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2017 Google, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2017 Google, Inc. +Copyright © 2018 Ebrahim Byagowi + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2017 Google, Inc. +Copyright © 2019 Facebook, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2017,2018 Google, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2018 Ebrahim Byagowi + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2018 Ebrahim Byagowi +Copyright © 2018 Google, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2018 Ebrahim Byagowi +Copyright © 2020 Google, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2018 Ebrahim Byagowi. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2018 Google, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2018 Google, Inc. +Copyright © 2019 Facebook, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2018 Google, Inc. +Copyright © 2023 Behdad Esfahbod + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2018 Adobe Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2018-2019 Ebrahim Byagowi + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2019 Adobe Inc. +Copyright © 2019 Ebrahim Byagowi + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2019 Adobe, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2019 Ebrahim Byagowi + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2019 Facebook, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2019 Adobe Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2019-2020 Ebrahim Byagowi + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2020 Ebrahim Byagowi + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2020 Google, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2021 Behdad Esfahbod + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2021 Behdad Esfahbod. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2021 Google, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2022 Behdad Esfahbod + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2022 Google, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2022 Red Hat, Inc + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2022 Red Hat, Inc +Copyright © 2021, 2022 Black Foundry + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2022 Red Hat, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2022 Behdad Esfahbod + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2022 Matthias Clasen + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2022 Red Hat, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2023 Behdad Esfahbod + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2023 Behdad Esfahbod +Copyright © 1999 David Turner +Copyright © 2005 Werner Lemberg +Copyright © 2013-2015 Alexei Podtelezhnikov + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +Copyright © 2023 Google, Inc. + +This is part of HarfBuzz, a text shaping library. + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz + +HarfBuzz is licensed under the so-called "Old MIT" license. Details follow. +For parts of HarfBuzz that are licensed under different licenses see individual +files names COPYING in subdirectories where applicable. + +Copyright © 2010-2022 Google, Inc. +Copyright © 2015-2020 Ebrahim Byagowi +Copyright © 2019,2020 Facebook, Inc. +Copyright © 2012,2015 Mozilla Foundation +Copyright © 2011 Codethink Limited +Copyright © 2008,2010 Nokia Corporation and/or its subsidiary(-ies) +Copyright © 2009 Keith Stribley +Copyright © 2011 Martin Hosken and SIL International +Copyright © 2007 Chris Wilson +Copyright © 2005,2006,2020,2021,2022,2023 Behdad Esfahbod +Copyright © 2004,2007,2008,2009,2010,2013,2021,2022,2023 Red Hat, Inc. +Copyright © 1998-2005 David Turner and Werner Lemberg +Copyright © 2016 Igalia S.L. +Copyright © 2022 Matthias Clasen +Copyright © 2018,2021 Khaled Hosny +Copyright © 2018,2019,2020 Adobe, Inc +Copyright © 2013-2015 Alexei Podtelezhnikov + +For full copyright notices consult the individual files in the package. + + +Permission is hereby granted, without written agreement and without +license or royalty fees, to use, copy, modify, and distribute this +software and its documentation for any purpose, provided that the +above copyright notice and the following two paragraphs appear in +all copies of this software. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR +DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN +IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGE. + +THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, +BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS +ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO +PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. +-------------------------------------------------------------------------------- +harfbuzz +icu +web_unicode + +Unicode® Copyright and Terms of Use +For the general privacy policy governing access to this site, see the Unicode Privacy Policy. + +A. Unicode Copyright +1. Copyright © 1991-2022 Unicode, Inc. All rights reserved. +B. Definitions +Unicode Data Files ("DATA FILES") include all data files under the directories: +https://www.unicode.org/Public/ +https://www.unicode.org/reports/ +https://www.unicode.org/ivd/data/ + +Unicode Data Files do not include PDF online code charts under the directory: +https://www.unicode.org/Public/ + +Unicode Software ("SOFTWARE") includes any source code published in the Unicode Standard +or any source code or compiled code under the directories: +https://www.unicode.org/Public/PROGRAMS/ +https://www.unicode.org/Public/cldr/ +http://site.icu-project.org/download/ +C. Terms of Use +1. Certain documents and files on this website contain a legend indicating that "Modification is permitted." Any person is hereby authorized, without fee, to modify such documents and files to create derivative works conforming to the Unicode® Standard, subject to Terms and Conditions herein. +2. Any person is hereby authorized, without fee, to view, use, reproduce, and distribute all documents and files, subject to the Terms and Conditions herein. +3. Further specifications of rights and restrictions pertaining to the use of the Unicode DATA FILES and SOFTWARE can be found in the Unicode Data Files and Software License. +4. Each version of the Unicode Standard has further specifications of rights and restrictions of use. For the book editions (Unicode 5.0 and earlier), these are found on the back of the title page. +5. The Unicode PDF online code charts carry specific restrictions. Those restrictions are incorporated as the first page of each PDF code chart. +6. All other files, including online documentation of the core specification for Unicode 6.0 and later, are covered under these general Terms of Use. +7. No license is granted to "mirror" the Unicode website where a fee is charged for access to the "mirror" site. +8. Modification is not permitted with respect to this document. All copies of this document must be verbatim. +D. Restricted Rights Legend +1. Any technical data or software which is licensed to the United States of America, its agencies and/or instrumentalities under this Agreement is commercial technical data or commercial computer software developed exclusively at private expense as defined in FAR 2.101, or DFARS 252.227-7014 (June 1995), as applicable. For technical data, use, duplication, or disclosure by the Government is subject to restrictions as set forth in DFARS 202.227-7015 Technical Data, Commercial and Items (Nov 1995) and this Agreement. For Software, in accordance with FAR 12-212 or DFARS 227-7202, as applicable, use, duplication or disclosure by the Government is subject to the restrictions set forth in this Agreement. +E.Warranties and Disclaimers +1. This publication and/or website may include technical or typographical errors or other inaccuracies. Changes are periodically added to the information herein; these changes will be incorporated in new editions of the publication and/or website. Unicode, Inc. may make improvements and/or changes in the product(s) and/or program(s) described in this publication and/or website at any time. +2. If this file has been purchased on magnetic or optical media from Unicode, Inc. the sole and exclusive remedy for any claim will be exchange of the defective media within ninety (90) days of original purchase. +3. EXCEPT AS PROVIDED IN SECTION E.2, THIS PUBLICATION AND/OR SOFTWARE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND EITHER EXPRESS, IMPLIED, OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, ANY WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT. UNICODE, INC. AND ITS LICENSORS ASSUME NO RESPONSIBILITY FOR ERRORS OR OMISSIONS IN THIS PUBLICATION AND/OR SOFTWARE OR OTHER DOCUMENTS WHICH ARE REFERENCED BY OR LINKED TO THIS PUBLICATION OR THE UNICODE WEBSITE. +F. Waiver of Damages +1. In no event shall Unicode, Inc. or its licensors be liable for any special, incidental, indirect or consequential damages of any kind, or any damages whatsoever, whether or not Unicode, Inc. was advised of the possibility of the damage, including, without limitation, those resulting from the following: loss of use, data or profits, in connection with the use, modification or distribution of this information or its derivatives. +G. Trademarks & Logos +1. The Unicode Word Mark and the Unicode Logo are trademarks of Unicode, Inc. “The Unicode Consortium” and “Unicode, Inc.” are trade names of Unicode, Inc. Use of the information and materials found on this website indicates your acknowledgement of Unicode, Inc.’s exclusive worldwide rights in the Unicode Word Mark, the Unicode Logo, and the Unicode trade names. +3. The Unicode Consortium Name and Trademark Usage Policy (“Trademark Policy”) are incorporated herein by reference and you agree to abide by the provisions of the Trademark Policy, which may be changed from time to time in the sole discretion of Unicode, Inc. +4. All third party trademarks referenced herein are the property of their respective owners. +H. Miscellaneous +1. Jurisdiction and Venue. This website is operated from a location in the State of California, United States of America. Unicode, Inc. makes no representation that the materials are appropriate for use in other locations. If you access this website from other locations, you are responsible for compliance with local laws. This Agreement, all use of this website and any claims and damages resulting from use of this website are governed solely by the laws of the State of California without regard to any principles which would apply the laws of a different jurisdiction. The user agrees that any disputes regarding this website shall be resolved solely in the courts located in Santa Clara County, California. The user agrees said courts have personal jurisdiction and agree to waive any right to transfer the dispute to any other forum. +2. Modification by Unicode, Inc. Unicode, Inc. shall have the right to modify this Agreement at any time by posting it to this website. The user may not assign any part of this Agreement without Unicode, Inc.’s prior written consent. +3. Taxes. The user agrees to pay any taxes arising from access to this website or use of the information herein, except for those based on Unicode’s net income. +4. Severability. If any provision of this Agreement is declared invalid or unenforceable, the remaining provisions of this Agreement shall remain in effect. +5. Entire Agreement. This Agreement constitutes the entire agreement between the parties. + +EXHIBIT 1 +UNICODE, INC. LICENSE AGREEMENT - DATA FILES AND SOFTWARE + +See Terms of Use +for definitions of Unicode Inc.’s Data Files and Software. + +NOTICE TO USER: Carefully read the following legal agreement. +BY DOWNLOADING, INSTALLING, COPYING OR OTHERWISE USING UNICODE INC.'S +DATA FILES ("DATA FILES"), AND/OR SOFTWARE ("SOFTWARE"), +YOU UNEQUIVOCALLY ACCEPT, AND AGREE TO BE BOUND BY, ALL OF THE +TERMS AND CONDITIONS OF THIS AGREEMENT. +IF YOU DO NOT AGREE, DO NOT DOWNLOAD, INSTALL, COPY, DISTRIBUTE OR USE +THE DATA FILES OR SOFTWARE. + +COPYRIGHT AND PERMISSION NOTICE + +Copyright © 1991-2022 Unicode, Inc. All rights reserved. +Distributed under the Terms of Use in https://www.unicode.org/copyright.html. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +hive + + Apache License + Version 2.0, January 2004 + https://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + Copyright 2019 Simon Leier + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + https://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +-------------------------------------------------------------------------------- +html + +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. + +-------------------------------------------------------------------------------- +icu + +# Copyright (c) 2006-2015 International Business Machines Corporation, + # Apple Inc., and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1995-2001, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1995-2002, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1995-2003, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1995-2005, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1995-2006, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1995-2007, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1995-2009, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1995-2010, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1995-2013, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1995-2014, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1995-2015, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1996-2008, International Business Machines Corporation * +and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1996-2012, International Business Machines Corporation +and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1996-2012, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1996-2013, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1996-2013, International Business Machines Corporation +and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1996-2014, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1996-2014, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1996-2014, International Business Machines Corporation and others. +All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1996-2015, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1996-2015, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1996-2015, International Business Machines Corporation and others. +All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1996-2016, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1996-2016, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1996-2016, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1997-2000, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1997-2003, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1997-2005, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1997-2005, International Business Machines Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1997-2006, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1997-2009,2014 International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1997-2010, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1997-2010, International Business Machines Corporation and * +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1997-2011, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1997-2011, International Business Machines Corporation and others. +All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1997-2011,2014-2015 International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1997-2012, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1997-2012, International Business Machines Corporation and * +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1997-2013, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1997-2013, International Business Machines * +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1997-2013, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1997-2013, International Business Machines Corporation and * +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1997-2013, International Business Machines Corporation and others. +All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1997-2014, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1997-2015, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1997-2015, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1997-2015, International Business Machines Corporation +and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1997-2015, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1997-2015, International Business Machines Corporation and * +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1997-2015, International Business Machines Corporation and others. +All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1997-2016, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1997-2016, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1997-2016, International Business Machines Corporation and * +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1997-2016, International Business Machines Corporation and others. +All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1998-2004, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1998-2005, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1998-2006, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1998-2008, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1998-2011, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1998-2012, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1998-2012, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1998-2014, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1998-2015, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1998-2016, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1998-2016, International Business Machines Corporation +and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1999-2001, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1999-2003, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1999-2004, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1999-2005, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1999-2006, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1999-2006,2013 IBM Corp. All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1999-2007, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1999-2007, International Business Machines Corporation +and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1999-2008, International Business Machines Corporation +and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1999-2009, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1999-2010, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1999-2010, International Business Machines Corporation and others. +All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1999-2011, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1999-2011, International Business Machines Corporation +and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1999-2012, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1999-2012, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1999-2013, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1999-2013, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1999-2014 International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1999-2014 International Business Machines Corporation * +and others. All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1999-2014, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1999-2014, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1999-2015 International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1999-2015, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1999-2015, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1999-2016 International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1999-2016 International Business Machines Corporation +and others. All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1999-2016 International Business Machines Corporation * +and others. All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1999-2016, International Business Machines + Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1999-2016, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1999-2016, International Business Machines Corporation + and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1999-2016, International Business Machines Corporation +and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1999-2016, International Business Machines Corporation +and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 1999-2016, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2000, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2000-2003, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2000-2004, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2000-2004, International Business Machines Corporation +and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2000-2006, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2000-2007, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2000-2008, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2000-2010, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2000-2011, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2000-2012, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2000-2012, International Business Machines Corporation and others. +All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2000-2013, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2000-2014, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2000-2015, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2000-2016, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2000-2016, International Business Machines Corporation and others. +All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2001, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2001-2003, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2001-2005, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2001-2005, International Business Machines Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2001-2006, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2001-2007, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2001-2008, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2001-2008,2010 IBM and others. All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2001-2010, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2001-2011 IBM and others. All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2001-2011, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2001-2011, International Business Machines * + Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2001-2011, International Business Machines Corporation +and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2001-2011, International Business Machines Corporation and * +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2001-2011, International Business Machines Corporation. * +All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2001-2011,2014 IBM and others. All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2001-2012, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2001-2012, International Business Machines Corporation and * +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2001-2013, International Business Machines + Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2001-2014 IBM and others. All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2001-2014 International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2001-2014, International Business Machines + Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2001-2014, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2001-2014, International Business Machines * + Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2001-2014, International Business Machines Corporation and * +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2001-2014, International Business Machines Corporation. +All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2001-2015 IBM and others. All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2001-2015, International Business Machines + Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2001-2015, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2001-2016, International Business Machines + Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2001-2016, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2002-2003, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2002-2005, International Business Machines Corporation and * +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2002-2006, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2002-2008 International Business Machines Corporation * +and others. All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2002-2008, International Business Machines Corporation and others. +All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2002-2010, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2002-2011 International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2002-2011, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2002-2011, International Business Machines Corporation and others. +All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2002-2012, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2002-2013, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2002-2013, International Business Machines Corporation +and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2002-2014 International Business Machines Corporation +and others. All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2002-2014, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2002-2014, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2002-2015 International Business Machines Corporation +and others. All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2002-2015, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2002-2015, International Business Machines Corporation and others. + All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2002-2015, International Business Machines Corporation and others. +All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2002-2016 International Business Machines Corporation +and others. All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2002-2016 International Business Machines Corporation * +and others. All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2002-2016 International Business Machines Corporation and others. +All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2002-2016, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2002-2016, International Business Machines Corporation +and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2002-2016, International Business Machines Corporation and others. + All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2002-2016, International Business Machines Corporation and others. +All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2003 - 2008, International Business Machines Corporation and * +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2003 - 2009, International Business Machines Corporation and * +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2003 - 2013, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2003 - 2013, International Business Machines Corporation and * +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2003-2003, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2003-2004, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2003-2006, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2003-2007, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2003-2008, International Business Machines Corporation +and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2003-2009, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2003-2009,2012,2016 International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2003-2010, International Business Machines Corporation and others. +All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2003-2011, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2003-2012, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2003-2013, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2003-2013, International Business Machines Corporation +and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2003-2013, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2003-2013, International Business Machines Corporation and * +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2003-2014, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2003-2014, International Business Machines Corporation +and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2003-2015, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2003-2015, International Business Machines * + Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2003-2015, International Business Machines Corporation +and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2003-2016, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2003-2016, International Business Machines * + Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2003-2016, International Business Machines Corporation +and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2004 - 2008, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2004-2005, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2004-2006, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2004-2007, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2004-2010, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2004-2011, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2004-2012, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2004-2012, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2004-2014, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2004-2015, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2004-2015, International Business Machines Corporation and others. +All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2004-2016, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2005, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2005-2006, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2005-2008, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2005-2011, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2005-2012, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2005-2013, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2005-2014, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2005-2015, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2005-2016, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2006 International Business Machines Corporation * +and others. All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2006, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2006-2012, International Business Machines Corporation and others. * +All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2006-2014, International Business Machines Corporation * +and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2006-2016, International Business Machines Corporation +and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2007, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2007-2008, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2007-2008, International Business Machines Corporation and * +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2007-2008, International Business Machines Corporation and * +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2007-2012, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2007-2012, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2007-2013, International Business Machines Corporation +and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2007-2013, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2007-2013, International Business Machines Corporation and * +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2007-2014, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2007-2014, International Business Machines Corporation +and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2007-2014, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2007-2015, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2007-2016, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2007-2016, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2007-2016, International Business Machines Corporation and * +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2008, Google, International Business Machines Corporation and * +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2008, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2008, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2008-2009, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2008-2011, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2008-2011, International Business Machines +Corporation, Google and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2008-2012, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2008-2012, International Business Machines Corporation * +and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2008-2013, International Business Machines Corporation +and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2008-2013, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2008-2014, Google, International Business Machines Corporation +and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2008-2014, Google, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2008-2015, Google, International Business Machines Corporation +and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2008-2015, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2008-2015, International Business Machines Corporation +and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2008-2015, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2008-2016, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2008-2016, International Business Machines Corporation +and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2008-2016, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2009 International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2009, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2009-2010 IBM Corporation and Others. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2009-2010, Google, International Business Machines Corporation and * +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2009-2010, International Business Machines Corporation and * +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2009-2011, International Business Machines + Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2009-2011, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2009-2011, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2009-2011, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2009-2012, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2009-2012, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2009-2012, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2009-2013, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2009-2013, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2009-2013, International Business Machines Corporation and * +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2009-2014 International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2009-2014, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2009-2014, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2009-2015, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2009-2015, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2009-2015, International Business Machines Corporation and * +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2009-2016, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2009-2016, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2009-2016, International Business Machines Corporation, * +Google, and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2009-2017, International Business Machines Corporation, * +Google, and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2010 , Yahoo! Inc. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2010, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2010-2011, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2010-2011, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2010-2012, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2010-2012, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2010-2012,2014, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2010-2012,2015 International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2010-2013, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2010-2014, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2010-2014, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2010-2014, International Business Machines Corporation and * +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2010-2014, International Business Machines Corporation and others. +All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2010-2015, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2010-2015, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2010-2016 International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2010-2016, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2010-2016, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2010-2016, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2011, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2011-2012, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2011-2012, International Business Machines Corporation and * +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2011-2013, Apple Inc. and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2011-2013, Apple Inc.; Unicode, Inc.; and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2011-2013, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2011-2014 International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2011-2014, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2011-2015, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2011-2015, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2011-2015, International Business Machines Corporation and * +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2011-2016, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2012 International Business Machines Corporation +and others. All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2012,2014 International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2012-2014, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2012-2015, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2012-2016, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2013, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2013, International Business Machines Corporation +and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2013, International Business Machines Corporation and * +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2013, International Business Machines Corporation and others. +All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2013-2014, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2013-2014, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2013-2014, International Business Machines Corporation and * +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2013-2014, International Business Machines Corporation and others. +All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2013-2015, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2013-2015, International Business Machines Corporation and others. +All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2013-2016, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2014 International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2014 International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2014, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2014, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2014-2015, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2014-2016, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2014-2016, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2014-2016, International Business Machines Corporation and +others. +All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2014-2016, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2014-2016, International Business Machines Corporation and others. +All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2015, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2015, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2015, International Business Machines Corporation +and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2015, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2015-2016, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2015-2016, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2015-2016, International Business Machines Corporation and others. +All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2016 International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2016 and later: Unicode, Inc. and others. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2016, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) 2016, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (C) The Internet Society (2002). All Rights Reserved. + +This document and translations of it may be copied and furnished to +others, and derivative works that comment on or otherwise explain it +or assist in its implementation may be prepared, copied, published +and distributed, in whole or in part, without restriction of any +kind, provided that the above copyright notice and this paragraph are +included on all such copies and derivative works. However, this +document itself may not be modified in any way, such as by removing +the copyright notice or references to the Internet Society or other +Internet organizations, except as needed for the purpose of +developing Internet standards in which case the procedures for +copyrights defined in the Internet Standards process must be +followed, or as required to translate it into languages other than +English. + +The limited permissions granted above are perpetual and will not be +revoked by the Internet Society or its successors or assigns. + +This document and the information contained herein is provided on an +"AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING +TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING +BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION +HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF +MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. +-------------------------------------------------------------------------------- +icu + +Copyright (C) {1999-2001}, International Business Machines Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 1996-2012, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 1996-2014, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 1996-2015, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 1996-2015, International Business Machines Corporation and others. +All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 1996-2016, International Business Machines Corporation + and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 1996-2016, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 1997-2011, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 1997-2012, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 1997-2012, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 1997-2015, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 1997-2016, International Business Machines Corporation +and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 1999-2012, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 1999-2016, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2000-2004 IBM, Inc. and Others. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2000-2005, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2000-2007, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2001-2005, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2001-2007, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2001-2010 International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2001-2011, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2001-2012, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2001-2012, International Business Machines Corporation +and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2001-2014, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2001-2015, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2001-2016, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2001-2016, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2002-2004, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2002-2005, International Business Machines Corporation +and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2002-2005, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2002-2006, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2002-2006, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2002-2007, International Business Machines Corporation +and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2002-2010, International Business Machines Corporation * +and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2002-2011, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2002-2011, International Business Machines Corporation +and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2002-2012, International Business Machines Corporation +and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2002-2012, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2002-2014, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2002-2014, International Business Machines Corporation +and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2002-2014, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2002-2015, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2002-2016 International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2002-2016, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2003, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2003-2004, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2003-2008, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2003-2010 International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2003-2011, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2003-2013, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2003-2014, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2004, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2004-2006, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2004-2010, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2004-2014 International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2004-2014, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2004-2015, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2004-2015, International Business Machines Corporation +and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2004-2016, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2007-2012, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2007-2012, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2007-2013, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2007-2014, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2007-2016, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2008-2010, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2008-2011, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2008-2015, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2009, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2011-2012 International Business Machines Corporation +and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2014, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2014-2016, International Business Machines +Corporation and others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) 2015, International Business Machines Corporation and +others. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright (c) IBM Corporation, 2000-2010. All rights reserved. + +This software is made available under the terms of the +ICU License -- ICU 1.8.1 and later. +-------------------------------------------------------------------------------- +icu + +Copyright (c) IBM Corporation, 2000-2011. All rights reserved. + +This software is made available under the terms of the +ICU License -- ICU 1.8.1 and later. +-------------------------------------------------------------------------------- +icu + +Copyright (c) IBM Corporation, 2000-2012. All rights reserved. + +This software is made available under the terms of the +ICU License -- ICU 1.8.1 and later. +-------------------------------------------------------------------------------- +icu + +Copyright (c) IBM Corporation, 2000-2014. All rights reserved. + +This software is made available under the terms of the +ICU License -- ICU 1.8.1 and later. +-------------------------------------------------------------------------------- +icu + +Copyright (c) IBM Corporation, 2000-2016. All rights reserved. + +This software is made available under the terms of the +ICU License -- ICU 1.8.1 and later. +-------------------------------------------------------------------------------- +icu + +Copyright 2001 and onwards Google Inc. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright 2004 and onwards Google Inc. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +Copyright 2007 Google Inc. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. +-------------------------------------------------------------------------------- +icu + +UNICODE, INC. LICENSE AGREEMENT - DATA FILES AND SOFTWARE + +See Terms of Use +for definitions of Unicode Inc.’s Data Files and Software. + +NOTICE TO USER: Carefully read the following legal agreement. +BY DOWNLOADING, INSTALLING, COPYING OR OTHERWISE USING UNICODE INC.'S +DATA FILES ("DATA FILES"), AND/OR SOFTWARE ("SOFTWARE"), +YOU UNEQUIVOCALLY ACCEPT, AND AGREE TO BE BOUND BY, ALL OF THE +TERMS AND CONDITIONS OF THIS AGREEMENT. +IF YOU DO NOT AGREE, DO NOT DOWNLOAD, INSTALL, COPY, DISTRIBUTE OR USE +THE DATA FILES OR SOFTWARE. + +COPYRIGHT AND PERMISSION NOTICE + +Copyright © 1991-2022 Unicode, Inc. All rights reserved. +Distributed under the Terms of Use in https://www.unicode.org/copyright.html. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. + +Third-Party Software Licenses + +This section contains third-party software notices and/or additional +terms for licensed third-party software components included within ICU +libraries. + +ICU License - ICU 1.8.1 to ICU 57.1 + +COPYRIGHT AND PERMISSION NOTICE + +Copyright (c) 1995-2016 International Business Machines Corporation and others +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, and/or sell copies of the Software, and to permit persons +to whom the Software is furnished to do so, provided that the above +copyright notice(s) and this permission notice appear in all copies of +the Software and that both the above copyright notice(s) and this +permission notice appear in supporting documentation. + +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 +OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR +HOLDERS INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY +SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER +RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF +CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN +CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, use +or other dealings in this Software without prior written authorization +of the copyright holder. + +All trademarks and registered trademarks mentioned herein are the +property of their respective owners. + +Chinese/Japanese Word Break Dictionary Data (cjdict.txt) + +The Google Chrome software developed by Google is licensed under +the BSD license. Other software included in this distribution is +provided under other licenses, as set forth below. + +The BSD License +http://opensource.org/licenses/bsd-license.php +Copyright (C) 2006-2008, Google Inc. + +All rights reserved. + +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 Inc. 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. + +The word list in cjdict.txt are generated by combining three word lists +listed below with further processing for compound word breaking. The +frequency is generated with an iterative training against Google web +corpora. + +* Libtabe (Chinese) + - https://sourceforge.net/project/?group_id=1519 + - Its license terms and conditions are shown below. + +* IPADIC (Japanese) + - http://chasen.aist-nara.ac.jp/chasen/distribution.html + - Its license terms and conditions are shown below. + +Copyright (c) 1999 TaBE Project. +Copyright (c) 1999 Pai-Hsiang Hsiao. +All rights reserved. + +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 the TaBE Project 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 +REGENTS 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. + +Copyright (c) 1999 Computer Systems and Communication Lab, + Institute of Information Science, Academia + Sinica. All rights reserved. + +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 the Computer Systems and Communication Lab + 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 +REGENTS 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. + +Copyright 1996 Chih-Hao Tsai @ Beckman Institute, + University of Illinois +c-tsai4@uiuc.edu http://casper.beckman.uiuc.edu/~c-tsai4 + +Copyright 2000, 2001, 2002, 2003 Nara Institute of Science +and Technology. All Rights Reserved. + +Use, reproduction, and distribution of this software is permitted. +Any copy of this software, whether in its original form or modified, +must include both the above copyright notice and the following +paragraphs. + +Nara Institute of Science and Technology (NAIST), +the copyright holders, disclaims all warranties with regard to this +software, including all implied warranties of merchantability and +fitness, in no event shall NAIST be liable for +any special, indirect or consequential damages or any damages +whatsoever resulting from loss of use, data or profits, whether in an +action of contract, negligence or other tortuous action, arising out +of or in connection with the use or performance of this software. + +A large portion of the dictionary entries +originate from ICOT Free Software. The following conditions for ICOT +Free Software applies to the current dictionary as well. + +Each User may also freely distribute the Program, whether in its +original form or modified, to any third party or parties, PROVIDED +that the provisions of Section 3 ("NO WARRANTY") will ALWAYS appear +on, or be attached to, the Program, which is distributed substantially +in the same form as set out herein and that such intended +distribution, if actually made, will neither violate or otherwise +contravene any of the laws and regulations of the countries having +jurisdiction over the User or the intended distribution itself. + +NO WARRANTY + +The program was produced on an experimental basis in the course of the +research and development conducted during the project and is provided +to users as so produced on an experimental basis. Accordingly, the +program is provided without any warranty whatsoever, whether express, +implied, statutory or otherwise. The term "warranty" used herein +includes, but is not limited to, any warranty of the quality, +performance, merchantability and fitness for a particular purpose of +the program and the nonexistence of any infringement or violation of +any right of any third party. + +Each user of the program will agree and understand, and be deemed to +have agreed and understood, that there is no warranty whatsoever for +the program and, accordingly, the entire risk arising from or +otherwise connected with the program is assumed by the user. + +Therefore, neither ICOT, the copyright holder, or any other +organization that participated in or was otherwise related to the +development of the program and their respective officials, directors, +officers and other employees shall be held liable for any and all +damages, including, without limitation, general, special, incidental +and consequential damages, arising out of or otherwise in connection +with the use or inability to use the program or any product, material +or result produced or otherwise obtained by using the program, +regardless of whether they have been advised of, or otherwise had +knowledge of, the possibility of such damages at any time during the +project or thereafter. Each user will be deemed to have agreed to the +foregoing by his or her commencement of use of the program. The term +"use" as used herein includes, but is not limited to, the use, +modification, copying and distribution of the program and the +production of secondary products from the program. + +In the case where the program, whether in its original form or +modified, was distributed or delivered to or received by a user from +any person, organization or entity other than ICOT, unless it makes or +grants independently of ICOT any specific warranty to the user in +writing, such person, organization or entity, will also be exempted +from and not be held liable to the user for any such damages as noted +above as far as the program is concerned. + +Lao Word Break Dictionary Data (laodict.txt) + +Copyright (C) 2016 and later: Unicode, Inc. and others. +License & terms of use: http://www.unicode.org/copyright.html +Copyright (c) 2015 International Business Machines Corporation +and others. All Rights Reserved. + +Project: https://github.com/rober42539/lao-dictionary +Dictionary: https://github.com/rober42539/lao-dictionary/laodict.txt +License: https://github.com/rober42539/lao-dictionary/LICENSE.txt + (copied below) + +This file is derived from the above dictionary version of Nov 22, 2020 + +Copyright (C) 2013 Brian Eugene Wilson, Robert Martin Campbell. +All rights reserved. + +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. + +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. + +Burmese Word Break Dictionary Data (burmesedict.txt) + +Copyright (c) 2014 International Business Machines Corporation +and others. All Rights Reserved. + +This list is part of a project hosted at: + github.com/kanyawtech/myanmar-karen-word-lists + +Copyright (c) 2013, LeRoy Benjamin Sharon +All rights reserved. + +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 Myanmar Karen Word Lists, 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. + +Google double-conversion + +Copyright 2006-2011, the V8 project authors. All rights reserved. +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 Inc. 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. + +File: install-sh (only for ICU4C) + + +Copyright 1991 by the Massachusetts Institute of Technology + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation, and that the name of M.I.T. not be used in advertising or +publicity pertaining to distribution of the software without specific, +written prior permission. M.I.T. makes no representations about the +suitability of this software for any purpose. It is provided "as is" +without express or implied warranty. +-------------------------------------------------------------------------------- +icu + +punycode.c 0.4.0 (2001-Nov-17-Sat) +http://www.cs.berkeley.edu/~amc/idn/ +Adam M. Costello +http://www.nicemice.net/amc/ + +Disclaimer and license + + Regarding this entire document or any portion of it (including + the pseudocode and C code), the author makes no guarantees and + is not responsible for any damage resulting from its use. The + author grants irrevocable permission to anyone to use, modify, + and distribute it in any way that does not diminish the rights + of anyone else to use, modify, and distribute it, provided that + redistributed derivative works do not contain misleading author or + version information. Derivative works need not be licensed under + similar terms. +-------------------------------------------------------------------------------- +image + +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. +-------------------------------------------------------------------------------- +include + +Copyright (C) 2011 Nick Bruun +Copyright (C) 2013 Vlad Lazarenko +Copyright (C) 2014 Nicolas Pauss +-------------------------------------------------------------------------------- +include + +Copyright (c) 2008-2009 Bjoern Hoehrmann + +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. +-------------------------------------------------------------------------------- +include + +Copyright (c) 2009 Florian Loitsch. + +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. +-------------------------------------------------------------------------------- +include + +Copyright (c) 2011 - Nick Bruun. + +This software is provided 'as-is', without any express or implied +warranty. In no event will the authors be held liable for any damages +arising from the use of this software. + +Permission is granted to anyone to use this software for any purpose, +including commercial applications, and to alter it and redistribute it +freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. +2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. +3. If you meet (any of) the author(s), you're encouraged to buy them a beer, + a drink or whatever is suited to the situation, given that you like the + software. +4. This notice may not be removed or altered from any source + distribution. +-------------------------------------------------------------------------------- +include + +Copyright (c) 2013-2019 Niels Lohmann . + +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. +-------------------------------------------------------------------------------- +infinite_scroll_pagination + +MIT License + +Copyright (c) 2021 Edson Bueno + +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. + +-------------------------------------------------------------------------------- +inja + +Copyright (c) 2018-2021 Berscheid + +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. +-------------------------------------------------------------------------------- +inja + +Copyright (c) 2018-2021 Lars Berscheid + +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. +-------------------------------------------------------------------------------- +js + +Copyright 2012, 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. + +-------------------------------------------------------------------------------- +json + +Copyright (c) 2013-2022 Niels Lohmann + +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. +-------------------------------------------------------------------------------- +json_annotation +json_serializable + +Copyright 2017, the Dart project authors. All rights reserved. +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 Inc. 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. + +-------------------------------------------------------------------------------- +khronos + +Copyright (c) 2007-2012 The Khronos Group Inc. + +Permission is hereby granted, free of charge, to any person obtaining a +copy of this software and/or associated documentation files (the +"Materials"), to deal in the Materials without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Materials, and to +permit persons to whom the Materials are 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 Materials. + +THE MATERIALS ARE 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 +MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS. +-------------------------------------------------------------------------------- +khronos + +Copyright (c) 2008-2009 The Khronos Group Inc. + +Permission is hereby granted, free of charge, to any person obtaining a +copy of this software and/or associated documentation files (the +"Materials"), to deal in the Materials without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Materials, and to +permit persons to whom the Materials are 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 Materials. + +THE MATERIALS ARE 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 +MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS. +-------------------------------------------------------------------------------- +khronos + +Copyright (c) 2013-2014 The Khronos Group Inc. + +Permission is hereby granted, free of charge, to any person obtaining a +copy of this software and/or associated documentation files (the +"Materials"), to deal in the Materials without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Materials, and to +permit persons to whom the Materials are 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 Materials. + +THE MATERIALS ARE 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 +MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS. +-------------------------------------------------------------------------------- +khronos + +Copyright (c) 2013-2016 The Khronos Group Inc. + +Permission is hereby granted, free of charge, to any person obtaining a +copy of this software and/or associated documentation files (the +"Materials"), to deal in the Materials without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Materials, and to +permit persons to whom the Materials are 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 Materials. + +THE MATERIALS ARE 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 +MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS. +-------------------------------------------------------------------------------- +libXNVCtrl + +Copyright (c) 2008 NVIDIA, Corporation + +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 (including the next +paragraph) 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. +-------------------------------------------------------------------------------- +libXNVCtrl + +Copyright (c) 2010 NVIDIA, Corporation + +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 (including the next +paragraph) 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. +-------------------------------------------------------------------------------- +libcxx + +Copyright 2018 Ulf Adams +Copyright (c) Microsoft Corporation. All rights reserved. + +Boost Software License - Version 1.0 - August 17th, 2003 + +Permission is hereby granted, free of charge, to any person or organization +obtaining a copy of the software and accompanying documentation covered by +this license (the "Software") to use, reproduce, display, distribute, +execute, and transmit the Software, and to prepare derivative works of the +Software, and to permit third-parties to whom the Software is furnished to +do so, all subject to the following: + +The copyright notices in the Software and this entire statement, including +the above license grant, this restriction and the following disclaimer, +must be included in all copies of the Software, in whole or in part, and +all derivative works of the Software, unless such copies or derivative +works are solely in the form of machine-executable object code generated by +a source language processor. + +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, TITLE AND NON-INFRINGEMENT. IN NO EVENT +SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE +FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE, +ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. +-------------------------------------------------------------------------------- +libcxx +libcxxabi + +Apache License +Version 2.0, January 2004 +http://www.apache.org/licenses/ + +TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + +1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + +2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + +3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + +4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + +5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + +6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + +7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + +8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + +9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + +END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. + + +--- LLVM Exceptions to the Apache 2.0 License ---- + +As an exception, if, as a result of your compiling your source code, portions +of this Software are embedded into an Object form of such source code, you +may redistribute such embedded portions in such Object form without complying +with the conditions of Sections 4(a), 4(b) and 4(d) of the License. + +In addition, if you combine or link compiled forms of this Software with +software that is licensed under the GPLv2 ("Combined Software") and if a +court of competent jurisdiction determines that the patent provision (Section +3), the indemnity provision (Section 9) or other Section of the License +conflicts with the conditions of the GPLv2, you may retroactively and +prospectively choose to deem waived or otherwise exclude such Section(s) of +the License, but only in their entirety and only with respect to the Combined +Software. +-------------------------------------------------------------------------------- +libcxx +libcxxabi + +Copyright (c) 2009-2014 by the contributors listed in CREDITS.TXT + +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. +-------------------------------------------------------------------------------- +libcxx +libcxxabi + +Copyright (c) 2009-2019 by the contributors listed in CREDITS.TXT + +All rights reserved. + +Developed by: + + LLVM Team + + University of Illinois at Urbana-Champaign + + http://llvm.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 with +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: + + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimers. + + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimers in the + documentation and/or other materials provided with the distribution. + + * Neither the names of the LLVM Team, University of Illinois at + Urbana-Champaign, nor the names of its contributors may be used to + endorse or promote products derived from this Software without specific + prior written permission. + +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 +CONTRIBUTORS 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 WITH THE +SOFTWARE. +-------------------------------------------------------------------------------- +libjpeg-turbo + +Copyright (C) 1988 by Jef Poskanzer. + +Permission to use, copy, modify, and distribute this software and its +documentation for any purpose and without fee is hereby granted, provided +that the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. This software is provided "as is" without express or +implied warranty. +-------------------------------------------------------------------------------- +libjpeg-turbo + +Copyright (C) 1989 by Jef Poskanzer. +Permission to use, copy, modify, and distribute this software and its +documentation for any purpose and without fee is hereby granted, provided +that the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. This software is provided "as is" without express or +implied warranty. +-------------------------------------------------------------------------------- +libjpeg-turbo + +Copyright (C) 2009-2011, Nokia Corporation and/or its subsidiary(-ies). +All Rights Reserved. +Author: Siarhei Siamashka +Copyright (C) 2013-2014, Linaro Limited. All Rights Reserved. +Author: Ragesh Radhakrishnan +Copyright (C) 2014-2016, D. R. Commander. All Rights Reserved. +Copyright (C) 2015-2016, Matthieu Darbois. All Rights Reserved. +Copyright (C) 2016, Siarhei Siamashka. All Rights Reserved. + +This software is provided 'as-is', without any express or implied +warranty. In no event will the authors be held liable for any damages +arising from the use of this software. + +Permission is granted to anyone to use this software for any purpose, +including commercial applications, and to alter it and redistribute it +freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. +2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. +3. This notice may not be removed or altered from any source distribution. +-------------------------------------------------------------------------------- +libjpeg-turbo + +Copyright (C) 2009-2011, Nokia Corporation and/or its subsidiary(-ies). +All Rights Reserved. +Author: Siarhei Siamashka +Copyright (C) 2014, Siarhei Siamashka. All Rights Reserved. +Copyright (C) 2014, Linaro Limited. All Rights Reserved. +Copyright (C) 2015, D. R. Commander. All Rights Reserved. +Copyright (C) 2015-2016, Matthieu Darbois. All Rights Reserved. + +This software is provided 'as-is', without any express or implied +warranty. In no event will the authors be held liable for any damages +arising from the use of this software. + +Permission is granted to anyone to use this software for any purpose, +including commercial applications, and to alter it and redistribute it +freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. +2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. +3. This notice may not be removed or altered from any source distribution. +-------------------------------------------------------------------------------- +libjpeg-turbo + +Copyright (C) 2013, MIPS Technologies, Inc., California. +All Rights Reserved. +Authors: Teodora Novkovic (teodora.novkovic@imgtec.com) + Darko Laus (darko.laus@imgtec.com) +This software is provided 'as-is', without any express or implied +warranty. In no event will the authors be held liable for any damages +arising from the use of this software. + +Permission is granted to anyone to use this software for any purpose, +including commercial applications, and to alter it and redistribute it +freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. +2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. +3. This notice may not be removed or altered from any source distribution. +-------------------------------------------------------------------------------- +libjpeg-turbo + +Copyright (C) 2013-2014, MIPS Technologies, Inc., California. +All Rights Reserved. +Authors: Teodora Novkovic (teodora.novkovic@imgtec.com) + Darko Laus (darko.laus@imgtec.com) +Copyright (C) 2015, D. R. Commander. All Rights Reserved. +This software is provided 'as-is', without any express or implied +warranty. In no event will the authors be held liable for any damages +arising from the use of this software. + +Permission is granted to anyone to use this software for any purpose, +including commercial applications, and to alter it and redistribute it +freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. +2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. +3. This notice may not be removed or altered from any source distribution. +-------------------------------------------------------------------------------- +libjpeg-turbo + +Copyright (C) 2014, D. R. Commander. All Rights Reserved. + +This software is provided 'as-is', without any express or implied +warranty. In no event will the authors be held liable for any damages +arising from the use of this software. + +Permission is granted to anyone to use this software for any purpose, +including commercial applications, and to alter it and redistribute it +freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. +2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. +3. This notice may not be removed or altered from any source distribution. +-------------------------------------------------------------------------------- +libjpeg-turbo + +Copyright (C) 2014-2015, D. R. Commander. All Rights Reserved. + +This software is provided 'as-is', without any express or implied +warranty. In no event will the authors be held liable for any damages +arising from the use of this software. + +Permission is granted to anyone to use this software for any purpose, +including commercial applications, and to alter it and redistribute it +freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. +2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. +3. This notice may not be removed or altered from any source distribution. +-------------------------------------------------------------------------------- +libjpeg-turbo + +Copyright (C) 2014-2015, D. R. Commander. All Rights Reserved. +Copyright (C) 2014, Jay Foad. All Rights Reserved. + +This software is provided 'as-is', without any express or implied +warranty. In no event will the authors be held liable for any damages +arising from the use of this software. + +Permission is granted to anyone to use this software for any purpose, +including commercial applications, and to alter it and redistribute it +freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. +2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. +3. This notice may not be removed or altered from any source distribution. +-------------------------------------------------------------------------------- +libjpeg-turbo + +Copyright (C) 2015, D. R. Commander. All Rights Reserved. + +This software is provided 'as-is', without any express or implied +warranty. In no event will the authors be held liable for any damages +arising from the use of this software. + +Permission is granted to anyone to use this software for any purpose, +including commercial applications, and to alter it and redistribute it +freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. +2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. +3. This notice may not be removed or altered from any source distribution. +-------------------------------------------------------------------------------- +libjpeg-turbo + +Copyright (C)2009-2014 D. R. Commander. All Rights Reserved. + +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 the libjpeg-turbo Project 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 HOLDERS 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. +-------------------------------------------------------------------------------- +libjpeg-turbo + +Copyright (C)2009-2015 D. R. Commander. All Rights Reserved. + +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 the libjpeg-turbo Project 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 HOLDERS 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. +-------------------------------------------------------------------------------- +libjpeg-turbo + +Copyright (C)2009-2016 D. R. Commander. All Rights Reserved. + +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 the libjpeg-turbo Project 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 HOLDERS 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. +-------------------------------------------------------------------------------- +libjpeg-turbo + +Copyright (C)2011 D. R. Commander. All Rights Reserved. + +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 the libjpeg-turbo Project 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 HOLDERS 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. +-------------------------------------------------------------------------------- +libjpeg-turbo + +Copyright (C)2011, 2015 D. R. Commander. All Rights Reserved. + +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 the libjpeg-turbo Project 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 HOLDERS 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. +-------------------------------------------------------------------------------- +libjpeg-turbo + +Copyright (C)2011-2016 D. R. Commander. All Rights Reserved. + +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 the libjpeg-turbo Project 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 HOLDERS 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. +-------------------------------------------------------------------------------- +libjpeg-turbo + +Copyright 2009 Pierre Ossman for Cendio AB +Copyright (C) 2010, D. R. Commander. + +Based on the x86 SIMD extension for IJG JPEG library - version 1.02 + +Copyright (C) 1999-2006, MIYASAKA Masaru. + +This software is provided 'as-is', without any express or implied +warranty. In no event will the authors be held liable for any damages +arising from the use of this software. + +Permission is granted to anyone to use this software for any purpose, +including commercial applications, and to alter it and redistribute it +freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. +2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. +3. This notice may not be removed or altered from any source distribution. +-------------------------------------------------------------------------------- +libjpeg-turbo + +We are also required to state that + "The Graphics Interchange Format(c) is the Copyright property of + CompuServe Incorporated. GIF(sm) is a Service Mark property of + CompuServe Incorporated." +-------------------------------------------------------------------------------- +libjpeg-turbo + +libjpeg-turbo Licenses +====================== + +libjpeg-turbo is covered by three compatible BSD-style open source licenses: + +- The IJG (Independent JPEG Group) License, which is listed in + [README.ijg](README.ijg) + + This license applies to the libjpeg API library and associated programs + (any code inherited from libjpeg, and any modifications to that code.) + +- The Modified (3-clause) BSD License, which is listed in + [turbojpeg.c](turbojpeg.c) + + This license covers the TurboJPEG API library and associated programs. + +- The zlib License, which is listed in [simd/jsimdext.inc](simd/jsimdext.inc) + + This license is a subset of the other two, and it covers the libjpeg-turbo + SIMD extensions. + + +Complying with the libjpeg-turbo Licenses +========================================= + +This section provides a roll-up of the libjpeg-turbo licensing terms, to the +best of our understanding. + +1. If you are distributing a modified version of the libjpeg-turbo source, + then: + + 1. You cannot alter or remove any existing copyright or license notices + from the source. + + **Origin** + - Clause 1 of the IJG License + - Clause 1 of the Modified BSD License + - Clauses 1 and 3 of the zlib License + + 2. You must add your own copyright notice to the header of each source + file you modified, so others can tell that you modified that file (if + there is not an existing copyright header in that file, then you can + simply add a notice stating that you modified the file.) + + **Origin** + - Clause 1 of the IJG License + - Clause 2 of the zlib License + + 3. You must include the IJG README file, and you must not alter any of the + copyright or license text in that file. + + **Origin** + - Clause 1 of the IJG License + +2. If you are distributing only libjpeg-turbo binaries without the source, or + if you are distributing an application that statically links with + libjpeg-turbo, then: + + 1. Your product documentation must include a message stating: + + This software is based in part on the work of the Independent JPEG + Group. + + **Origin** + - Clause 2 of the IJG license + + 2. If your binary distribution includes or uses the TurboJPEG API, then + your product documentation must include the text of the Modified BSD + License. + + **Origin** + - Clause 2 of the Modified BSD License + +3. You cannot use the name of the IJG or The libjpeg-turbo Project or the + contributors thereof in advertising, publicity, etc. + + **Origin** + - IJG License + - Clause 3 of the Modified BSD License + +4. The IJG and The libjpeg-turbo Project do not warrant libjpeg-turbo to be + free of defects, nor do we accept any liability for undesirable + consequences resulting from your use of the software. + + **Origin** + - IJG License + - Modified BSD License + - zlib License +-------------------------------------------------------------------------------- +libjpeg-turbo + +libjpeg-turbo note: This file has been modified by The libjpeg-turbo Project +to include only information relevant to libjpeg-turbo, to wordsmith certain +sections, and to remove impolitic language that existed in the libjpeg v8 +README. It is included only for reference. Please see README.md for +information specific to libjpeg-turbo. + + +The Independent JPEG Group's JPEG software +========================================== + +This distribution contains a release of the Independent JPEG Group's free JPEG +software. You are welcome to redistribute this software and to use it for any +purpose, subject to the conditions under LEGAL ISSUES, below. + +This software is the work of Tom Lane, Guido Vollbeding, Philip Gladstone, +Bill Allombert, Jim Boucher, Lee Crocker, Bob Friesenhahn, Ben Jackson, +Julian Minguillon, Luis Ortiz, George Phillips, Davide Rossi, Ge' Weijers, +and other members of the Independent JPEG Group. + +IJG is not affiliated with the ISO/IEC JTC1/SC29/WG1 standards committee +(also known as JPEG, together with ITU-T SG16). + + +DOCUMENTATION ROADMAP +===================== + +This file contains the following sections: + +OVERVIEW General description of JPEG and the IJG software. +LEGAL ISSUES Copyright, lack of warranty, terms of distribution. +REFERENCES Where to learn more about JPEG. +ARCHIVE LOCATIONS Where to find newer versions of this software. +FILE FORMAT WARS Software *not* to get. +TO DO Plans for future IJG releases. + +Other documentation files in the distribution are: + +User documentation: + usage.txt Usage instructions for cjpeg, djpeg, jpegtran, + rdjpgcom, and wrjpgcom. + *.1 Unix-style man pages for programs (same info as usage.txt). + wizard.txt Advanced usage instructions for JPEG wizards only. + change.log Version-to-version change highlights. +Programmer and internal documentation: + libjpeg.txt How to use the JPEG library in your own programs. + example.c Sample code for calling the JPEG library. + structure.txt Overview of the JPEG library's internal structure. + coderules.txt Coding style rules --- please read if you contribute code. + +Please read at least usage.txt. Some information can also be found in the JPEG +FAQ (Frequently Asked Questions) article. See ARCHIVE LOCATIONS below to find +out where to obtain the FAQ article. + +If you want to understand how the JPEG code works, we suggest reading one or +more of the REFERENCES, then looking at the documentation files (in roughly +the order listed) before diving into the code. + + +OVERVIEW +======== + +This package contains C software to implement JPEG image encoding, decoding, +and transcoding. JPEG (pronounced "jay-peg") is a standardized compression +method for full-color and grayscale images. JPEG's strong suit is compressing +photographic images or other types of images that have smooth color and +brightness transitions between neighboring pixels. Images with sharp lines or +other abrupt features may not compress well with JPEG, and a higher JPEG +quality may have to be used to avoid visible compression artifacts with such +images. + +JPEG is lossy, meaning that the output pixels are not necessarily identical to +the input pixels. However, on photographic content and other "smooth" images, +very good compression ratios can be obtained with no visible compression +artifacts, and extremely high compression ratios are possible if you are +willing to sacrifice image quality (by reducing the "quality" setting in the +compressor.) + +This software implements JPEG baseline, extended-sequential, and progressive +compression processes. Provision is made for supporting all variants of these +processes, although some uncommon parameter settings aren't implemented yet. +We have made no provision for supporting the hierarchical or lossless +processes defined in the standard. + +We provide a set of library routines for reading and writing JPEG image files, +plus two sample applications "cjpeg" and "djpeg", which use the library to +perform conversion between JPEG and some other popular image file formats. +The library is intended to be reused in other applications. + +In order to support file conversion and viewing software, we have included +considerable functionality beyond the bare JPEG coding/decoding capability; +for example, the color quantization modules are not strictly part of JPEG +decoding, but they are essential for output to colormapped file formats or +colormapped displays. These extra functions can be compiled out of the +library if not required for a particular application. + +We have also included "jpegtran", a utility for lossless transcoding between +different JPEG processes, and "rdjpgcom" and "wrjpgcom", two simple +applications for inserting and extracting textual comments in JFIF files. + +The emphasis in designing this software has been on achieving portability and +flexibility, while also making it fast enough to be useful. In particular, +the software is not intended to be read as a tutorial on JPEG. (See the +REFERENCES section for introductory material.) Rather, it is intended to +be reliable, portable, industrial-strength code. We do not claim to have +achieved that goal in every aspect of the software, but we strive for it. + +We welcome the use of this software as a component of commercial products. +No royalty is required, but we do ask for an acknowledgement in product +documentation, as described under LEGAL ISSUES. + + +LEGAL ISSUES +============ + +In plain English: + +1. We don't promise that this software works. (But if you find any bugs, + please let us know!) +2. You can use this software for whatever you want. You don't have to pay us. +3. You may not pretend that you wrote this software. If you use it in a + program, you must acknowledge somewhere in your documentation that + you've used the IJG code. + +In legalese: + +The authors make NO WARRANTY or representation, either express or implied, +with respect to this software, its quality, accuracy, merchantability, or +fitness for a particular purpose. This software is provided "AS IS", and you, +its user, assume the entire risk as to its quality and accuracy. + +This software is copyright (C) 1991-2016, Thomas G. Lane, Guido Vollbeding. +All Rights Reserved except as specified below. + +Permission is hereby granted to use, copy, modify, and distribute this +software (or portions thereof) for any purpose, without fee, subject to these +conditions: +(1) If any part of the source code for this software is distributed, then this +README file must be included, with this copyright and no-warranty notice +unaltered; and any additions, deletions, or changes to the original files +must be clearly indicated in accompanying documentation. +(2) If only executable code is distributed, then the accompanying +documentation must state that "this software is based in part on the work of +the Independent JPEG Group". +(3) Permission for use of this software is granted only if the user accepts +full responsibility for any undesirable consequences; the authors accept +NO LIABILITY for damages of any kind. + +These conditions apply to any software derived from or based on the IJG code, +not just to the unmodified library. If you use our work, you ought to +acknowledge us. + +Permission is NOT granted for the use of any IJG author's name or company name +in advertising or publicity relating to this software or products derived from +it. This software may be referred to only as "the Independent JPEG Group's +software". + +We specifically permit and encourage the use of this software as the basis of +commercial products, provided that all warranty or liability claims are +assumed by the product vendor. + + +The Unix configuration script "configure" was produced with GNU Autoconf. +It is copyright by the Free Software Foundation but is freely distributable. +The same holds for its supporting scripts (config.guess, config.sub, +ltmain.sh). Another support script, install-sh, is copyright by X Consortium +but is also freely distributable. + +The IJG distribution formerly included code to read and write GIF files. +To avoid entanglement with the Unisys LZW patent (now expired), GIF reading +support has been removed altogether, and the GIF writer has been simplified +to produce "uncompressed GIFs". This technique does not use the LZW +algorithm; the resulting GIF files are larger than usual, but are readable +by all standard GIF decoders. + +We are required to state that + "The Graphics Interchange Format(c) is the Copyright property of + CompuServe Incorporated. GIF(sm) is a Service Mark property of + CompuServe Incorporated." + + +REFERENCES +========== + +We recommend reading one or more of these references before trying to +understand the innards of the JPEG software. + +The best short technical introduction to the JPEG compression algorithm is + Wallace, Gregory K. "The JPEG Still Picture Compression Standard", + Communications of the ACM, April 1991 (vol. 34 no. 4), pp. 30-44. +(Adjacent articles in that issue discuss MPEG motion picture compression, +applications of JPEG, and related topics.) If you don't have the CACM issue +handy, a PDF file containing a revised version of Wallace's article is +available at http://www.ijg.org/files/Wallace.JPEG.pdf. The file (actually +a preprint for an article that appeared in IEEE Trans. Consumer Electronics) +omits the sample images that appeared in CACM, but it includes corrections +and some added material. Note: the Wallace article is copyright ACM and IEEE, +and it may not be used for commercial purposes. + +A somewhat less technical, more leisurely introduction to JPEG can be found in +"The Data Compression Book" by Mark Nelson and Jean-loup Gailly, published by +M&T Books (New York), 2nd ed. 1996, ISBN 1-55851-434-1. This book provides +good explanations and example C code for a multitude of compression methods +including JPEG. It is an excellent source if you are comfortable reading C +code but don't know much about data compression in general. The book's JPEG +sample code is far from industrial-strength, but when you are ready to look +at a full implementation, you've got one here... + +The best currently available description of JPEG is the textbook "JPEG Still +Image Data Compression Standard" by William B. Pennebaker and Joan L. +Mitchell, published by Van Nostrand Reinhold, 1993, ISBN 0-442-01272-1. +Price US$59.95, 638 pp. The book includes the complete text of the ISO JPEG +standards (DIS 10918-1 and draft DIS 10918-2). + +The original JPEG standard is divided into two parts, Part 1 being the actual +specification, while Part 2 covers compliance testing methods. Part 1 is +titled "Digital Compression and Coding of Continuous-tone Still Images, +Part 1: Requirements and guidelines" and has document numbers ISO/IEC IS +10918-1, ITU-T T.81. Part 2 is titled "Digital Compression and Coding of +Continuous-tone Still Images, Part 2: Compliance testing" and has document +numbers ISO/IEC IS 10918-2, ITU-T T.83. + +The JPEG standard does not specify all details of an interchangeable file +format. For the omitted details we follow the "JFIF" conventions, revision +1.02. JFIF 1.02 has been adopted as an Ecma International Technical Report +and thus received a formal publication status. It is available as a free +download in PDF format from +http://www.ecma-international.org/publications/techreports/E-TR-098.htm. +A PostScript version of the JFIF document is available at +http://www.ijg.org/files/jfif.ps.gz. There is also a plain text version at +http://www.ijg.org/files/jfif.txt.gz, but it is missing the figures. + +The TIFF 6.0 file format specification can be obtained by FTP from +ftp://ftp.sgi.com/graphics/tiff/TIFF6.ps.gz. The JPEG incorporation scheme +found in the TIFF 6.0 spec of 3-June-92 has a number of serious problems. +IJG does not recommend use of the TIFF 6.0 design (TIFF Compression tag 6). +Instead, we recommend the JPEG design proposed by TIFF Technical Note #2 +(Compression tag 7). Copies of this Note can be obtained from +http://www.ijg.org/files/. It is expected that the next revision +of the TIFF spec will replace the 6.0 JPEG design with the Note's design. +Although IJG's own code does not support TIFF/JPEG, the free libtiff library +uses our library to implement TIFF/JPEG per the Note. + + +ARCHIVE LOCATIONS +================= + +The "official" archive site for this software is www.ijg.org. +The most recent released version can always be found there in +directory "files". + +The JPEG FAQ (Frequently Asked Questions) article is a source of some +general information about JPEG. +It is available on the World Wide Web at http://www.faqs.org/faqs/jpeg-faq/ +and other news.answers archive sites, including the official news.answers +archive at rtfm.mit.edu: ftp://rtfm.mit.edu/pub/usenet/news.answers/jpeg-faq/. +If you don't have Web or FTP access, send e-mail to mail-server@rtfm.mit.edu +with body + send usenet/news.answers/jpeg-faq/part1 + send usenet/news.answers/jpeg-faq/part2 + + +FILE FORMAT WARS +================ + +The ISO/IEC JTC1/SC29/WG1 standards committee (also known as JPEG, together +with ITU-T SG16) currently promotes different formats containing the name +"JPEG" which are incompatible with original DCT-based JPEG. IJG therefore does +not support these formats (see REFERENCES). Indeed, one of the original +reasons for developing this free software was to help force convergence on +common, interoperable format standards for JPEG files. +Don't use an incompatible file format! +(In any case, our decoder will remain capable of reading existing JPEG +image files indefinitely.) + + +TO DO +===== + +Please send bug reports, offers of help, etc. to jpeg-info@jpegclub.org. +-------------------------------------------------------------------------------- +libmicrohttpd +skia + +Copyright (c) 2011 Google Inc. All rights reserved. + +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 the copyright holder 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. +-------------------------------------------------------------------------------- +libnatpmp + +BSD 3-Clause License + +Copyright (c) 2007-2022, Thomas BERNARD +All rights reserved. + +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 copyright holder 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. + +-------------------------------------------------------------------------------- +libpng + +COPYRIGHT NOTICE, DISCLAIMER, and LICENSE +========================================= + +PNG Reference Library License version 2 +--------------------------------------- + +* Copyright (c) 1995-2019 The PNG Reference Library Authors. +* Copyright (c) 2018-2019 Cosmin Truta. +* Copyright (c) 2000-2002, 2004, 2006-2018 Glenn Randers-Pehrson. +* Copyright (c) 1996-1997 Andreas Dilger. +* Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. + +The software is supplied "as is", without warranty of any kind, +express or implied, including, without limitation, the warranties +of merchantability, fitness for a particular purpose, title, and +non-infringement. In no event shall the Copyright owners, or +anyone distributing the software, be liable for any damages or +other liability, whether in contract, tort or otherwise, arising +from, out of, or in connection with the software, or the use or +other dealings in the software, even if advised of the possibility +of such damage. + +Permission is hereby granted to use, copy, modify, and distribute +this software, or portions hereof, for any purpose, without fee, +subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you + must not claim that you wrote the original software. If you + use this software in a product, an acknowledgment in the product + documentation would be appreciated, but is not required. + +2. Altered source versions must be plainly marked as such, and must + not be misrepresented as being the original software. + +3. This Copyright notice may not be removed or altered from any + source or altered source distribution. + + +PNG Reference Library License version 1 (for libpng 0.5 through 1.6.35) +----------------------------------------------------------------------- + +libpng versions 1.0.7, July 1, 2000, through 1.6.35, July 15, 2018 are +Copyright (c) 2000-2002, 2004, 2006-2018 Glenn Randers-Pehrson, are +derived from libpng-1.0.6, and are distributed according to the same +disclaimer and license as libpng-1.0.6 with the following individuals +added to the list of Contributing Authors: + + Simon-Pierre Cadieux + Eric S. Raymond + Mans Rullgard + Cosmin Truta + Gilles Vollant + James Yu + Mandar Sahastrabuddhe + Google Inc. + Vadim Barkov + +and with the following additions to the disclaimer: + + There is no warranty against interference with your enjoyment of + the library or against infringement. There is no warranty that our + efforts or the library will fulfill any of your particular purposes + or needs. This library is provided with all faults, and the entire + risk of satisfactory quality, performance, accuracy, and effort is + with the user. + +Some files in the "contrib" directory and some configure-generated +files that are distributed with libpng have other copyright owners, and +are released under other open source licenses. + +libpng versions 0.97, January 1998, through 1.0.6, March 20, 2000, are +Copyright (c) 1998-2000 Glenn Randers-Pehrson, are derived from +libpng-0.96, and are distributed according to the same disclaimer and +license as libpng-0.96, with the following individuals added to the +list of Contributing Authors: + + Tom Lane + Glenn Randers-Pehrson + Willem van Schaik + +libpng versions 0.89, June 1996, through 0.96, May 1997, are +Copyright (c) 1996-1997 Andreas Dilger, are derived from libpng-0.88, +and are distributed according to the same disclaimer and license as +libpng-0.88, with the following individuals added to the list of +Contributing Authors: + + John Bowler + Kevin Bracey + Sam Bushell + Magnus Holmgren + Greg Roelofs + Tom Tanner + +Some files in the "scripts" directory have other copyright owners, +but are released under this license. + +libpng versions 0.5, May 1995, through 0.88, January 1996, are +Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. + +For the purposes of this copyright and license, "Contributing Authors" +is defined as the following set of individuals: + + Andreas Dilger + Dave Martindale + Guy Eric Schalnat + Paul Schmidt + Tim Wegner + +The PNG Reference Library is supplied "AS IS". The Contributing +Authors and Group 42, Inc. disclaim all warranties, expressed or +implied, including, without limitation, the warranties of +merchantability and of fitness for any purpose. The Contributing +Authors and Group 42, Inc. assume no liability for direct, indirect, +incidental, special, exemplary, or consequential damages, which may +result from the use of the PNG Reference Library, even if advised of +the possibility of such damage. + +Permission is hereby granted to use, copy, modify, and distribute this +source code, or portions hereof, for any purpose, without fee, subject +to the following restrictions: + +1. The origin of this source code must not be misrepresented. + +2. Altered versions must be plainly marked as such and must not + be misrepresented as being the original source. + +3. This Copyright notice may not be removed or altered from any + source or altered source distribution. + +The Contributing Authors and Group 42, Inc. specifically permit, +without fee, and encourage the use of this source code as a component +to supporting the PNG file format in commercial products. If you use +this source code in a product, acknowledgment is not required but would +be appreciated. +-------------------------------------------------------------------------------- +libtess2 + +Copyright (C) [dates of first publication] Silicon Graphics, Inc. +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 including the dates of first publication and either this +permission notice or a reference to http://oss.sgi.com/projects/FreeB/ 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 SILICON GRAPHICS, INC. +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. + +Except as contained in this notice, the name of Silicon Graphics, Inc. shall not +be used in advertising or otherwise to promote the sale, use or other dealings in +this Software without prior written authorization from Silicon Graphics, Inc. +-------------------------------------------------------------------------------- +libwebp + +Copyright (c) 2010, Google Inc. All rights reserved. + +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 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. +-------------------------------------------------------------------------------- +libwebp + +Copyright 2010 Google Inc. All Rights Reserved. + +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 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. +-------------------------------------------------------------------------------- +libwebp + +Copyright 2011 Google Inc. All Rights Reserved. + +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 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. +-------------------------------------------------------------------------------- +libwebp + +Copyright 2012 Google Inc. All Rights Reserved. + +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 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. +-------------------------------------------------------------------------------- +libwebp + +Copyright 2013 Google Inc. All Rights Reserved. + +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 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. +-------------------------------------------------------------------------------- +libwebp + +Copyright 2014 Google Inc. All Rights Reserved. + +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 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. +-------------------------------------------------------------------------------- +libwebp + +Copyright 2015 Google Inc. All Rights Reserved. + +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 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. +-------------------------------------------------------------------------------- +libwebp + +Copyright 2016 Google Inc. All Rights Reserved. + +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 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. +-------------------------------------------------------------------------------- +libwebp + +Copyright 2017 Google Inc. All Rights Reserved. + +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 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. +-------------------------------------------------------------------------------- +libwebp + +Copyright 2018 Google Inc. All Rights Reserved. + +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 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. +-------------------------------------------------------------------------------- +lints + +Copyright 2021, 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. + +-------------------------------------------------------------------------------- +markdown + +Copyright 2012, 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. + +-------------------------------------------------------------------------------- +network_info_plus_platform_interface + +// Copyright 2020 The Chromium Authors. All rights reserved. +// +// 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 Inc. 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. + +-------------------------------------------------------------------------------- +nm + +Mozilla Public License Version 2.0 +================================== + +1. Definitions +-------------- + +1.1. "Contributor" + means each individual or legal entity that creates, contributes to + the creation of, or owns Covered Software. + +1.2. "Contributor Version" + means the combination of the Contributions of others (if any) used + by a Contributor and that particular Contributor's Contribution. + +1.3. "Contribution" + means Covered Software of a particular Contributor. + +1.4. "Covered Software" + means Source Code Form to which the initial Contributor has attached + the notice in Exhibit A, the Executable Form of such Source Code + Form, and Modifications of such Source Code Form, in each case + including portions thereof. + +1.5. "Incompatible With Secondary Licenses" + means + + (a) that the initial Contributor has attached the notice described + in Exhibit B to the Covered Software; or + + (b) that the Covered Software was made available under the terms of + version 1.1 or earlier of the License, but not also under the + terms of a Secondary License. + +1.6. "Executable Form" + means any form of the work other than Source Code Form. + +1.7. "Larger Work" + means a work that combines Covered Software with other material, in + a separate file or files, that is not Covered Software. + +1.8. "License" + means this document. + +1.9. "Licensable" + means having the right to grant, to the maximum extent possible, + whether at the time of the initial grant or subsequently, any and + all of the rights conveyed by this License. + +1.10. "Modifications" + means any of the following: + + (a) any file in Source Code Form that results from an addition to, + deletion from, or modification of the contents of Covered + Software; or + + (b) any new file in Source Code Form that contains any Covered + Software. + +1.11. "Patent Claims" of a Contributor + means any patent claim(s), including without limitation, method, + process, and apparatus claims, in any patent Licensable by such + Contributor that would be infringed, but for the grant of the + License, by the making, using, selling, offering for sale, having + made, import, or transfer of either its Contributions or its + Contributor Version. + +1.12. "Secondary License" + means either the GNU General Public License, Version 2.0, the GNU + Lesser General Public License, Version 2.1, the GNU Affero General + Public License, Version 3.0, or any later versions of those + licenses. + +1.13. "Source Code Form" + means the form of the work preferred for making modifications. + +1.14. "You" (or "Your") + means an individual or a legal entity exercising rights under this + License. For legal entities, "You" includes any entity that + controls, is controlled by, or is under common control with You. For + purposes of this definition, "control" means (a) the power, direct + or indirect, to cause the direction or management of such entity, + whether by contract or otherwise, or (b) ownership of more than + fifty percent (50%) of the outstanding shares or beneficial + ownership of such entity. + +2. License Grants and Conditions +-------------------------------- + +2.1. Grants + +Each Contributor hereby grants You a world-wide, royalty-free, +non-exclusive license: + +(a) under intellectual property rights (other than patent or trademark) + Licensable by such Contributor to use, reproduce, make available, + modify, display, perform, distribute, and otherwise exploit its + Contributions, either on an unmodified basis, with Modifications, or + as part of a Larger Work; and + +(b) under Patent Claims of such Contributor to make, use, sell, offer + for sale, have made, import, and otherwise transfer either its + Contributions or its Contributor Version. + +2.2. Effective Date + +The licenses granted in Section 2.1 with respect to any Contribution +become effective for each Contribution on the date the Contributor first +distributes such Contribution. + +2.3. Limitations on Grant Scope + +The licenses granted in this Section 2 are the only rights granted under +this License. No additional rights or licenses will be implied from the +distribution or licensing of Covered Software under this License. +Notwithstanding Section 2.1(b) above, no patent license is granted by a +Contributor: + +(a) for any code that a Contributor has removed from Covered Software; + or + +(b) for infringements caused by: (i) Your and any other third party's + modifications of Covered Software, or (ii) the combination of its + Contributions with other software (except as part of its Contributor + Version); or + +(c) under Patent Claims infringed by Covered Software in the absence of + its Contributions. + +This License does not grant any rights in the trademarks, service marks, +or logos of any Contributor (except as may be necessary to comply with +the notice requirements in Section 3.4). + +2.4. Subsequent Licenses + +No Contributor makes additional grants as a result of Your choice to +distribute the Covered Software under a subsequent version of this +License (see Section 10.2) or under the terms of a Secondary License (if +permitted under the terms of Section 3.3). + +2.5. Representation + +Each Contributor represents that the Contributor believes its +Contributions are its original creation(s) or it has sufficient rights +to grant the rights to its Contributions conveyed by this License. + +2.6. Fair Use + +This License is not intended to limit any rights You have under +applicable copyright doctrines of fair use, fair dealing, or other +equivalents. + +2.7. Conditions + +Sections 3.1, 3.2, 3.3, and 3.4 are conditions of the licenses granted +in Section 2.1. + +3. Responsibilities +------------------- + +3.1. Distribution of Source Form + +All distribution of Covered Software in Source Code Form, including any +Modifications that You create or to which You contribute, must be under +the terms of this License. You must inform recipients that the Source +Code Form of the Covered Software is governed by the terms of this +License, and how they can obtain a copy of this License. You may not +attempt to alter or restrict the recipients' rights in the Source Code +Form. + +3.2. Distribution of Executable Form + +If You distribute Covered Software in Executable Form then: + +(a) such Covered Software must also be made available in Source Code + Form, as described in Section 3.1, and You must inform recipients of + the Executable Form how they can obtain a copy of such Source Code + Form by reasonable means in a timely manner, at a charge no more + than the cost of distribution to the recipient; and + +(b) You may distribute such Executable Form under the terms of this + License, or sublicense it under different terms, provided that the + license for the Executable Form does not attempt to limit or alter + the recipients' rights in the Source Code Form under this License. + +3.3. Distribution of a Larger Work + +You may create and distribute a Larger Work under terms of Your choice, +provided that You also comply with the requirements of this License for +the Covered Software. If the Larger Work is a combination of Covered +Software with a work governed by one or more Secondary Licenses, and the +Covered Software is not Incompatible With Secondary Licenses, this +License permits You to additionally distribute such Covered Software +under the terms of such Secondary License(s), so that the recipient of +the Larger Work may, at their option, further distribute the Covered +Software under the terms of either this License or such Secondary +License(s). + +3.4. Notices + +You may not remove or alter the substance of any license notices +(including copyright notices, patent notices, disclaimers of warranty, +or limitations of liability) contained within the Source Code Form of +the Covered Software, except that You may alter any license notices to +the extent required to remedy known factual inaccuracies. + +3.5. Application of Additional Terms + +You may choose to offer, and to charge a fee for, warranty, support, +indemnity or liability obligations to one or more recipients of Covered +Software. However, You may do so only on Your own behalf, and not on +behalf of any Contributor. You must make it absolutely clear that any +such warranty, support, indemnity, or liability obligation is offered by +You alone, and You hereby agree to indemnify every Contributor for any +liability incurred by such Contributor as a result of warranty, support, +indemnity or liability terms You offer. You may include additional +disclaimers of warranty and limitations of liability specific to any +jurisdiction. + +4. Inability to Comply Due to Statute or Regulation +--------------------------------------------------- + +If it is impossible for You to comply with any of the terms of this +License with respect to some or all of the Covered Software due to +statute, judicial order, or regulation then You must: (a) comply with +the terms of this License to the maximum extent possible; and (b) +describe the limitations and the code they affect. Such description must +be placed in a text file included with all distributions of the Covered +Software under this License. Except to the extent prohibited by statute +or regulation, such description must be sufficiently detailed for a +recipient of ordinary skill to be able to understand it. + +5. Termination +-------------- + +5.1. The rights granted under this License will terminate automatically +if You fail to comply with any of its terms. However, if You become +compliant, then the rights granted under this License from a particular +Contributor are reinstated (a) provisionally, unless and until such +Contributor explicitly and finally terminates Your grants, and (b) on an +ongoing basis, if such Contributor fails to notify You of the +non-compliance by some reasonable means prior to 60 days after You have +come back into compliance. Moreover, Your grants from a particular +Contributor are reinstated on an ongoing basis if such Contributor +notifies You of the non-compliance by some reasonable means, this is the +first time You have received notice of non-compliance with this License +from such Contributor, and You become compliant prior to 30 days after +Your receipt of the notice. + +5.2. If You initiate litigation against any entity by asserting a patent +infringement claim (excluding declaratory judgment actions, +counter-claims, and cross-claims) alleging that a Contributor Version +directly or indirectly infringes any patent, then the rights granted to +You by any and all Contributors for the Covered Software under Section +2.1 of this License shall terminate. + +5.3. In the event of termination under Sections 5.1 or 5.2 above, all +end user license agreements (excluding distributors and resellers) which +have been validly granted by You or Your distributors under this License +prior to termination shall survive termination. + +************************************************************************ +* * +* 6. Disclaimer of Warranty * +* ------------------------- * +* * +* Covered Software is provided under this License on an "as is" * +* basis, without warranty of any kind, either expressed, implied, or * +* statutory, including, without limitation, warranties that the * +* Covered Software is free of defects, merchantable, fit for a * +* particular purpose or non-infringing. The entire risk as to the * +* quality and performance of the Covered Software is with You. * +* Should any Covered Software prove defective in any respect, You * +* (not any Contributor) assume the cost of any necessary servicing, * +* repair, or correction. This disclaimer of warranty constitutes an * +* essential part of this License. No use of any Covered Software is * +* authorized under this License except under this disclaimer. * +* * +************************************************************************ + +************************************************************************ +* * +* 7. Limitation of Liability * +* -------------------------- * +* * +* Under no circumstances and under no legal theory, whether tort * +* (including negligence), contract, or otherwise, shall any * +* Contributor, or anyone who distributes Covered Software as * +* permitted above, be liable to You for any direct, indirect, * +* special, incidental, or consequential damages of any character * +* including, without limitation, damages for lost profits, loss of * +* goodwill, work stoppage, computer failure or malfunction, or any * +* and all other commercial damages or losses, even if such party * +* shall have been informed of the possibility of such damages. This * +* limitation of liability shall not apply to liability for death or * +* personal injury resulting from such party's negligence to the * +* extent applicable law prohibits such limitation. Some * +* jurisdictions do not allow the exclusion or limitation of * +* incidental or consequential damages, so this exclusion and * +* limitation may not apply to You. * +* * +************************************************************************ + +8. Litigation +------------- + +Any litigation relating to this License may be brought only in the +courts of a jurisdiction where the defendant maintains its principal +place of business and such litigation shall be governed by laws of that +jurisdiction, without reference to its conflict-of-law provisions. +Nothing in this Section shall prevent a party's ability to bring +cross-claims or counter-claims. + +9. Miscellaneous +---------------- + +This License represents the complete agreement concerning the subject +matter hereof. If any provision of this License is held to be +unenforceable, such provision shall be reformed only to the extent +necessary to make it enforceable. Any law or regulation which provides +that the language of a contract shall be construed against the drafter +shall not be used to construe this License against a Contributor. + +10. Versions of the License +--------------------------- + +10.1. New Versions + +Mozilla Foundation is the license steward. Except as provided in Section +10.3, no one other than the license steward has the right to modify or +publish new versions of this License. Each version will be given a +distinguishing version number. + +10.2. Effect of New Versions + +You may distribute the Covered Software under the terms of the version +of the License under which You originally received the Covered Software, +or under the terms of any subsequent version published by the license +steward. + +10.3. Modified Versions + +If you create software not governed by this License, and you want to +create a new license for such software, you may create and use a +modified version of this License if you rename the license and remove +any references to the name of the license steward (except to note that +such modified license differs from this License). + +10.4. Distributing Source Code Form that is Incompatible With Secondary +Licenses + +If You choose to distribute Source Code Form that is Incompatible With +Secondary Licenses under the terms of this version of the License, the +notice described in Exhibit B of this License must be attached. + +Exhibit A - Source Code Form License Notice +------------------------------------------- + + This Source Code Form is subject to the terms of the Mozilla Public + License, v. 2.0. If a copy of the MPL was not distributed with this + file, You can obtain one at http://mozilla.org/MPL/2.0/. + +If it is not possible or desirable to put the notice in a particular +file, then You may include the notice in a location (such as a LICENSE +file in a relevant directory) where a recipient would be likely to look +for such a notice. + +You may add additional accurate notices of copyright ownership. + +Exhibit B - "Incompatible With Secondary Licenses" Notice +--------------------------------------------------------- + + This Source Code Form is "Incompatible With Secondary Licenses", as + defined by the Mozilla Public License, v. 2.0. + +-------------------------------------------------------------------------------- +octo_image + +MIT License + +Copyright (c) 2020 Baseflow + +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. + +-------------------------------------------------------------------------------- +package_info_plus + +Copyright 2017 The Chromium Authors. All rights reserved. + +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 Inc. 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. + +-------------------------------------------------------------------------------- +package_info_plus_platform_interface + + + +// Copyright 2017 The Chromium Authors. All rights reserved. +// +// 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 Inc. 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. +-------------------------------------------------------------------------------- +perfetto + +Apache License +Version 2.0, January 2004 +http://www.apache.org/licenses/ + +TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + +1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + +2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + +3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + +4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + +5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + +6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + +7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + +8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + +9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + +END OF TERMS AND CONDITIONS + +Copyright (c) 2017, The Android Open Source Project + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +-------------------------------------------------------------------------------- +permission_handler +permission_handler_android +permission_handler_apple +permission_handler_platform_interface +permission_handler_windows + +MIT License + +Copyright (c) 2018 Baseflow + +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. + +-------------------------------------------------------------------------------- +petitparser +xml + +The MIT License + +Copyright (c) 2006-2023 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. + +-------------------------------------------------------------------------------- +platform_detect + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright 2017 Workiva Inc. + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +-------------------------------------------------------------------------------- +pointycastle + + +Copyright (c) 2000 - 2019 The Legion of the Bouncy Castle Inc. (https://www.bouncycastle.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. + + +-------------------------------------------------------------------------------- +pubspec_parse + +Copyright 2018, 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. + +-------------------------------------------------------------------------------- +queue + +MIT License + +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. +-------------------------------------------------------------------------------- +rapidjson + +Copyright (C) 2015 THL A29 Limited, a Tencent company, and Milo Yip-> 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. +-------------------------------------------------------------------------------- +rapidjson + +Copyright (C) 2015 THL A29 Limited, a Tencent company, and Milo Yip. 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. +-------------------------------------------------------------------------------- +rapidjson + +Copyright (c) 2006-2013 Alexander Chemeris + +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 product 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 AUTHOR ``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 AUTHOR 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. +-------------------------------------------------------------------------------- +rapidjson + +The above software in this distribution may have been modified by +THL A29 Limited ("Tencent Modifications"). +All Tencent Modifications are Copyright (C) 2015 THL A29 Limited. +-------------------------------------------------------------------------------- +riverpod_analyzer_utils + +MIT License + +Copyright (c) 2023 Remi Rousselet + +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. +-------------------------------------------------------------------------------- +root_certificates + +Mozilla Public License Version 2.0 +================================== + +1. Definitions +-------------- + +1.1. "Contributor" + means each individual or legal entity that creates, contributes to + the creation of, or owns Covered Software. + +1.2. "Contributor Version" + means the combination of the Contributions of others (if any) used + by a Contributor and that particular Contributor's Contribution. + +1.3. "Contribution" + means Covered Software of a particular Contributor. + +1.4. "Covered Software" + means Source Code Form to which the initial Contributor has attached + the notice in Exhibit A, the Executable Form of such Source Code + Form, and Modifications of such Source Code Form, in each case + including portions thereof. + +1.5. "Incompatible With Secondary Licenses" + means + + (a) that the initial Contributor has attached the notice described + in Exhibit B to the Covered Software; or + + (b) that the Covered Software was made available under the terms of + version 1.1 or earlier of the License, but not also under the + terms of a Secondary License. + +1.6. "Executable Form" + means any form of the work other than Source Code Form. + +1.7. "Larger Work" + means a work that combines Covered Software with other material, in + a separate file or files, that is not Covered Software. + +1.8. "License" + means this document. + +1.9. "Licensable" + means having the right to grant, to the maximum extent possible, + whether at the time of the initial grant or subsequently, any and + all of the rights conveyed by this License. + +1.10. "Modifications" + means any of the following: + + (a) any file in Source Code Form that results from an addition to, + deletion from, or modification of the contents of Covered + Software; or + + (b) any new file in Source Code Form that contains any Covered + Software. + +1.11. "Patent Claims" of a Contributor + means any patent claim(s), including without limitation, method, + process, and apparatus claims, in any patent Licensable by such + Contributor that would be infringed, but for the grant of the + License, by the making, using, selling, offering for sale, having + made, import, or transfer of either its Contributions or its + Contributor Version. + +1.12. "Secondary License" + means either the GNU General Public License, Version 2.0, the GNU + Lesser General Public License, Version 2.1, the GNU Affero General + Public License, Version 3.0, or any later versions of those + licenses. + +1.13. "Source Code Form" + means the form of the work preferred for making modifications. + +1.14. "You" (or "Your") + means an individual or a legal entity exercising rights under this + License. For legal entities, "You" includes any entity that + controls, is controlled by, or is under common control with You. For + purposes of this definition, "control" means (a) the power, direct + or indirect, to cause the direction or management of such entity, + whether by contract or otherwise, or (b) ownership of more than + fifty percent (50%) of the outstanding shares or beneficial + ownership of such entity. + +2. License Grants and Conditions +-------------------------------- + +2.1. Grants + +Each Contributor hereby grants You a world-wide, royalty-free, +non-exclusive license: + +(a) under intellectual property rights (other than patent or trademark) + Licensable by such Contributor to use, reproduce, make available, + modify, display, perform, distribute, and otherwise exploit its + Contributions, either on an unmodified basis, with Modifications, or + as part of a Larger Work; and + +(b) under Patent Claims of such Contributor to make, use, sell, offer + for sale, have made, import, and otherwise transfer either its + Contributions or its Contributor Version. + +2.2. Effective Date + +The licenses granted in Section 2.1 with respect to any Contribution +become effective for each Contribution on the date the Contributor first +distributes such Contribution. + +2.3. Limitations on Grant Scope + +The licenses granted in this Section 2 are the only rights granted under +this License. No additional rights or licenses will be implied from the +distribution or licensing of Covered Software under this License. +Notwithstanding Section 2.1(b) above, no patent license is granted by a +Contributor: + +(a) for any code that a Contributor has removed from Covered Software; + or + +(b) for infringements caused by: (i) Your and any other third party's + modifications of Covered Software, or (ii) the combination of its + Contributions with other software (except as part of its Contributor + Version); or + +(c) under Patent Claims infringed by Covered Software in the absence of + its Contributions. + +This License does not grant any rights in the trademarks, service marks, +or logos of any Contributor (except as may be necessary to comply with +the notice requirements in Section 3.4). + +2.4. Subsequent Licenses + +No Contributor makes additional grants as a result of Your choice to +distribute the Covered Software under a subsequent version of this +License (see Section 10.2) or under the terms of a Secondary License (if +permitted under the terms of Section 3.3). + +2.5. Representation + +Each Contributor represents that the Contributor believes its +Contributions are its original creation(s) or it has sufficient rights +to grant the rights to its Contributions conveyed by this License. + +2.6. Fair Use + +This License is not intended to limit any rights You have under +applicable copyright doctrines of fair use, fair dealing, or other +equivalents. + +2.7. Conditions + +Sections 3.1, 3.2, 3.3, and 3.4 are conditions of the licenses granted +in Section 2.1. + +3. Responsibilities +------------------- + +3.1. Distribution of Source Form + +All distribution of Covered Software in Source Code Form, including any +Modifications that You create or to which You contribute, must be under +the terms of this License. You must inform recipients that the Source +Code Form of the Covered Software is governed by the terms of this +License, and how they can obtain a copy of this License. You may not +attempt to alter or restrict the recipients' rights in the Source Code +Form. + +3.2. Distribution of Executable Form + +If You distribute Covered Software in Executable Form then: + +(a) such Covered Software must also be made available in Source Code + Form, as described in Section 3.1, and You must inform recipients of + the Executable Form how they can obtain a copy of such Source Code + Form by reasonable means in a timely manner, at a charge no more + than the cost of distribution to the recipient; and + +(b) You may distribute such Executable Form under the terms of this + License, or sublicense it under different terms, provided that the + license for the Executable Form does not attempt to limit or alter + the recipients' rights in the Source Code Form under this License. + +3.3. Distribution of a Larger Work + +You may create and distribute a Larger Work under terms of Your choice, +provided that You also comply with the requirements of this License for +the Covered Software. If the Larger Work is a combination of Covered +Software with a work governed by one or more Secondary Licenses, and the +Covered Software is not Incompatible With Secondary Licenses, this +License permits You to additionally distribute such Covered Software +under the terms of such Secondary License(s), so that the recipient of +the Larger Work may, at their option, further distribute the Covered +Software under the terms of either this License or such Secondary +License(s). + +3.4. Notices + +You may not remove or alter the substance of any license notices +(including copyright notices, patent notices, disclaimers of warranty, +or limitations of liability) contained within the Source Code Form of +the Covered Software, except that You may alter any license notices to +the extent required to remedy known factual inaccuracies. + +3.5. Application of Additional Terms + +You may choose to offer, and to charge a fee for, warranty, support, +indemnity or liability obligations to one or more recipients of Covered +Software. However, You may do so only on Your own behalf, and not on +behalf of any Contributor. You must make it absolutely clear that any +such warranty, support, indemnity, or liability obligation is offered by +You alone, and You hereby agree to indemnify every Contributor for any +liability incurred by such Contributor as a result of warranty, support, +indemnity or liability terms You offer. You may include additional +disclaimers of warranty and limitations of liability specific to any +jurisdiction. + +4. Inability to Comply Due to Statute or Regulation +--------------------------------------------------- + +If it is impossible for You to comply with any of the terms of this +License with respect to some or all of the Covered Software due to +statute, judicial order, or regulation then You must: (a) comply with +the terms of this License to the maximum extent possible; and (b) +describe the limitations and the code they affect. Such description must +be placed in a text file included with all distributions of the Covered +Software under this License. Except to the extent prohibited by statute +or regulation, such description must be sufficiently detailed for a +recipient of ordinary skill to be able to understand it. + +5. Termination +-------------- + +5.1. The rights granted under this License will terminate automatically +if You fail to comply with any of its terms. However, if You become +compliant, then the rights granted under this License from a particular +Contributor are reinstated (a) provisionally, unless and until such +Contributor explicitly and finally terminates Your grants, and (b) on an +ongoing basis, if such Contributor fails to notify You of the +non-compliance by some reasonable means prior to 60 days after You have +come back into compliance. Moreover, Your grants from a particular +Contributor are reinstated on an ongoing basis if such Contributor +notifies You of the non-compliance by some reasonable means, this is the +first time You have received notice of non-compliance with this License +from such Contributor, and You become compliant prior to 30 days after +Your receipt of the notice. + +5.2. If You initiate litigation against any entity by asserting a patent +infringement claim (excluding declaratory judgment actions, +counter-claims, and cross-claims) alleging that a Contributor Version +directly or indirectly infringes any patent, then the rights granted to +You by any and all Contributors for the Covered Software under Section +2.1 of this License shall terminate. + +5.3. In the event of termination under Sections 5.1 or 5.2 above, all +end user license agreements (excluding distributors and resellers) which +have been validly granted by You or Your distributors under this License +prior to termination shall survive termination. + +************************************************************************ +* * +* 6. Disclaimer of Warranty * +* ------------------------- * +* * +* Covered Software is provided under this License on an "as is" * +* basis, without warranty of any kind, either expressed, implied, or * +* statutory, including, without limitation, warranties that the * +* Covered Software is free of defects, merchantable, fit for a * +* particular purpose or non-infringing. The entire risk as to the * +* quality and performance of the Covered Software is with You. * +* Should any Covered Software prove defective in any respect, You * +* (not any Contributor) assume the cost of any necessary servicing, * +* repair, or correction. This disclaimer of warranty constitutes an * +* essential part of this License. No use of any Covered Software is * +* authorized under this License except under this disclaimer. * +* * +************************************************************************ + +************************************************************************ +* * +* 7. Limitation of Liability * +* -------------------------- * +* * +* Under no circumstances and under no legal theory, whether tort * +* (including negligence), contract, or otherwise, shall any * +* Contributor, or anyone who distributes Covered Software as * +* permitted above, be liable to You for any direct, indirect, * +* special, incidental, or consequential damages of any character * +* including, without limitation, damages for lost profits, loss of * +* goodwill, work stoppage, computer failure or malfunction, or any * +* and all other commercial damages or losses, even if such party * +* shall have been informed of the possibility of such damages. This * +* limitation of liability shall not apply to liability for death or * +* personal injury resulting from such party's negligence to the * +* extent applicable law prohibits such limitation. Some * +* jurisdictions do not allow the exclusion or limitation of * +* incidental or consequential damages, so this exclusion and * +* limitation may not apply to You. * +* * +************************************************************************ + +8. Litigation +------------- + +Any litigation relating to this License may be brought only in the +courts of a jurisdiction where the defendant maintains its principal +place of business and such litigation shall be governed by laws of that +jurisdiction, without reference to its conflict-of-law provisions. +Nothing in this Section shall prevent a party's ability to bring +cross-claims or counter-claims. + +9. Miscellaneous +---------------- + +This License represents the complete agreement concerning the subject +matter hereof. If any provision of this License is held to be +unenforceable, such provision shall be reformed only to the extent +necessary to make it enforceable. Any law or regulation which provides +that the language of a contract shall be construed against the drafter +shall not be used to construe this License against a Contributor. + +10. Versions of the License +--------------------------- + +10.1. New Versions + +Mozilla Foundation is the license steward. Except as provided in Section +10.3, no one other than the license steward has the right to modify or +publish new versions of this License. Each version will be given a +distinguishing version number. + +10.2. Effect of New Versions + +You may distribute the Covered Software under the terms of the version +of the License under which You originally received the Covered Software, +or under the terms of any subsequent version published by the license +steward. + +10.3. Modified Versions + +If you create software not governed by this License, and you want to +create a new license for such software, you may create and use a +modified version of this License if you rename the license and remove +any references to the name of the license steward (except to note that +such modified license differs from this License). + +10.4. Distributing Source Code Form that is Incompatible With Secondary +Licenses + +If You choose to distribute Source Code Form that is Incompatible With +Secondary Licenses under the terms of this version of the License, the +notice described in Exhibit B of this License must be attached. + +Exhibit A - Source Code Form License Notice +------------------------------------------- + + This Source Code Form is subject to the terms of the Mozilla Public + License, v. 2.0. If a copy of the MPL was not distributed with this + file, You can obtain one at http://mozilla.org/MPL/2.0/. + +If it is not possible or desirable to put the notice in a particular +file, then You may include the notice in a location (such as a LICENSE +file in a relevant directory) where a recipient would be likely to look +for such a notice. + +You may add additional accurate notices of copyright ownership. + +Exhibit B - "Incompatible With Secondary Licenses" Notice +--------------------------------------------------------- + + This Source Code Form is "Incompatible With Secondary Licenses", as + defined by the Mozilla Public License, v. 2.0. + +You may obtain a copy of this library's Source Code Form from: https://dart.googlesource.com/root_certificates/+/692f6d6488af68e0121317a9c2c9eb393eb0ee50 + +-------------------------------------------------------------------------------- +rxdart + +Licensed under the Apache License, Version 2.0 (the "License"); you +may not use this file except in compliance with the License. You may +obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +implied. See the License for the specific language governing permissions +and limitations under the License. +-------------------------------------------------------------------------------- +scrollable_positioned_list + +Copyright 2018 the Dart project authors, Inc. All rights reserved. +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 Inc. 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. +-------------------------------------------------------------------------------- +shimmer + +Copyright 2013, the Dart project authors. All rights reserved. +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 Inc. 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. + +-------------------------------------------------------------------------------- +skia + +Copyright (C) 2014 Google Inc. All rights reserved. + +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 the copyright holder 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. +-------------------------------------------------------------------------------- +skia + +Copyright (c) 2011 Google Inc. All rights reserved. + +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 Inc. 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. +-------------------------------------------------------------------------------- +skia + +Copyright (c) 2014 Google Inc. + +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 the copyright holder 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. +-------------------------------------------------------------------------------- +skia + +Copyright 2005 The Android Open Source Project + +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 the copyright holder 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. +-------------------------------------------------------------------------------- +skia + +Copyright 2006 The Android Open Source Project + +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 the copyright holder 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. +-------------------------------------------------------------------------------- +skia + +Copyright 2006-2012 The Android Open Source Project +Copyright 2012 Mozilla Foundation + +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 the copyright holder 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. +-------------------------------------------------------------------------------- +skia + +Copyright 2007 The Android Open Source Project + +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 the copyright holder 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. +-------------------------------------------------------------------------------- +skia + +Copyright 2008 Google Inc. + +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 the copyright holder 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. +-------------------------------------------------------------------------------- +skia + +Copyright 2008 The Android Open Source Project + +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 the copyright holder 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. +-------------------------------------------------------------------------------- +skia + +Copyright 2009 The Android Open Source Project + +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 the copyright holder 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. +-------------------------------------------------------------------------------- +skia + +Copyright 2009-2015 Google Inc. + +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 the copyright holder 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. +-------------------------------------------------------------------------------- +skia + +Copyright 2010 Google Inc. + +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 the copyright holder 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. +-------------------------------------------------------------------------------- +skia + +Copyright 2010 The Android Open Source Project + +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 the copyright holder 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. +-------------------------------------------------------------------------------- +skia + +Copyright 2011 Google Inc. + +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 the copyright holder 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. +-------------------------------------------------------------------------------- +skia + +Copyright 2011 Google Inc. +Copyright 2012 Mozilla Foundation + +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 the copyright holder 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. +-------------------------------------------------------------------------------- +skia + +Copyright 2011 The Android Open Source Project + +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 the copyright holder 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. +-------------------------------------------------------------------------------- +skia + +Copyright 2012 Google Inc. + +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 the copyright holder 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. +-------------------------------------------------------------------------------- +skia + +Copyright 2012 Google LLC + +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 the copyright holder 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. +-------------------------------------------------------------------------------- +skia + +Copyright 2012 The Android Open Source Project + +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 the copyright holder 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. +-------------------------------------------------------------------------------- +skia + +Copyright 2013 Google Inc. + +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 the copyright holder 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. +-------------------------------------------------------------------------------- +skia + +Copyright 2013 The Android Open Source Project + +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 the copyright holder 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. +-------------------------------------------------------------------------------- +skia + +Copyright 2014 Google Inc. + +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 the copyright holder 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. +-------------------------------------------------------------------------------- +skia + +Copyright 2014 Google Inc. +Copyright 2017 ARM Ltd. + +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 the copyright holder 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. +-------------------------------------------------------------------------------- +skia + +Copyright 2014 The Android Open Source Project + +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 the copyright holder 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. +-------------------------------------------------------------------------------- +skia + +Copyright 2015 Google Inc. + +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 the copyright holder 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. +-------------------------------------------------------------------------------- +skia + +Copyright 2015 The Android Open Source Project + +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 the copyright holder 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. +-------------------------------------------------------------------------------- +skia + +Copyright 2016 Google Inc. + +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 the copyright holder 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. +-------------------------------------------------------------------------------- +skia + +Copyright 2016 Mozilla Foundation + +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 the copyright holder 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. +-------------------------------------------------------------------------------- +skia + +Copyright 2016 The Android Open Source Project + +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 the copyright holder 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. +-------------------------------------------------------------------------------- +skia + +Copyright 2017 ARM Ltd. + +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 the copyright holder 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. +-------------------------------------------------------------------------------- +skia + +Copyright 2017 Google Inc. + +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 the copyright holder 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. +-------------------------------------------------------------------------------- +skia + +Copyright 2018 Google Inc. + +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 the copyright holder 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. +-------------------------------------------------------------------------------- +skia + +Copyright 2018 Google LLC + +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 the copyright holder 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. +-------------------------------------------------------------------------------- +skia + +Copyright 2018 Google LLC. + +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 the copyright holder 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. +-------------------------------------------------------------------------------- +skia + +Copyright 2018 Google, LLC + +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 the copyright holder 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. +-------------------------------------------------------------------------------- +skia + +Copyright 2018 The Android Open Source Project + +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 the copyright holder 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. +-------------------------------------------------------------------------------- +skia + +Copyright 2019 Google Inc. + +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 the copyright holder 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. +-------------------------------------------------------------------------------- +skia + +Copyright 2019 Google LLC + +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 the copyright holder 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. +-------------------------------------------------------------------------------- +skia + +Copyright 2019 Google LLC. +-------------------------------------------------------------------------------- +skia + +Copyright 2019 Google LLC. + +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 the copyright holder 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. +-------------------------------------------------------------------------------- +skia + +Copyright 2019 Google, LLC + +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 the copyright holder 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. +-------------------------------------------------------------------------------- +skia + +Copyright 2019 The Android Open Source Project + +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 the copyright holder 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. +-------------------------------------------------------------------------------- +skia + +Copyright 2020 Google Inc. + +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 the copyright holder 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. +-------------------------------------------------------------------------------- +skia + +Copyright 2020 Google LLC + +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 the copyright holder 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. +-------------------------------------------------------------------------------- +skia + +Copyright 2020 Google LLC. +-------------------------------------------------------------------------------- +skia + +Copyright 2020 Google LLC. + +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 the copyright holder 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. +-------------------------------------------------------------------------------- +skia + +Copyright 2020 Google, LLC + +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 the copyright holder 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. +-------------------------------------------------------------------------------- +skia + +Copyright 2021 Google Inc. + +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 the copyright holder 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. +-------------------------------------------------------------------------------- +skia + +Copyright 2021 Google LLC + +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 the copyright holder 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. +-------------------------------------------------------------------------------- +skia + +Copyright 2021 Google LLC. + +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 the copyright holder 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. +-------------------------------------------------------------------------------- +skia + +Copyright 2021 Google, LLC + +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 the copyright holder 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. +-------------------------------------------------------------------------------- +skia + +Copyright 2022 Google Inc. + +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 the copyright holder 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. +-------------------------------------------------------------------------------- +skia + +Copyright 2022 Google LLC + +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 the copyright holder 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. +-------------------------------------------------------------------------------- +skia + +Copyright 2022 Google LLC. + +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 the copyright holder 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. +-------------------------------------------------------------------------------- +skia + +Copyright 2022 Google, LLC + +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 the copyright holder 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. +-------------------------------------------------------------------------------- +skia + +Copyright 2023 Google Inc. + +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 the copyright holder 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. +-------------------------------------------------------------------------------- +skia + +Copyright 2023 Google LLC + +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 the copyright holder 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. +-------------------------------------------------------------------------------- +skia + +Copyright 2023 The Android Open Source Project + +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 the copyright holder 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. +-------------------------------------------------------------------------------- +sliver_tools + +The MIT License (MIT) + +Copyright (c) 2020 Pieter van Loon + +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_helper + + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +-------------------------------------------------------------------------------- +spirv-cross + +Copyright 2014-2016,2021 The Khronos Group, Inc. + +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. +-------------------------------------------------------------------------------- +spring_animation + +Copyright (c) Meta Platforms, Inc. and affiliates. + +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. +-------------------------------------------------------------------------------- +sprintf + +Copyright (c) 2012, Richard Eames +All rights reserved. + +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. + +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. + +-------------------------------------------------------------------------------- +sqflite +sqflite_common + +BSD 2-Clause License + +Copyright (c) 2019, Alexandre Roux Tekartik +All rights reserved. + +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. + +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. + +-------------------------------------------------------------------------------- +sqlite + +The source code for SQLite is in the public domain. No claim of +copyright is made on any part of the core source code. (The +documentation and test code is a different matter - some sections of +documentation and test logic are governed by open-source licenses.) +All contributors to the SQLite core software have signed affidavits +specifically disavowing any copyright interest in the code. This means +that anybody is able to legally do anything they want with the SQLite +source code. + +There are other SQL database engines with liberal licenses that allow +the code to be broadly and freely used. But those other engines are +still governed by copyright law. SQLite is different in that copyright +law simply does not apply. + +The source code files for other SQL database engines typically begin +with a comment describing your legal rights to view and copy that +file. The SQLite source code contains no license since it is not +governed by copyright. Instead of a license, the SQLite source code +offers a blessing: + +May you do good and not evil +May you find forgiveness for yourself and forgive others +May you share freely, never taking more than you give. +-------------------------------------------------------------------------------- +synchronized + +MIT License + +Copyright (c) 2016, Alexandre Roux Tekartik. + +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. +-------------------------------------------------------------------------------- +time + +MIT License + +Copyright (c) 2019 Jeremiah Ogbomo + +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. +-------------------------------------------------------------------------------- +universal_io + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS +-------------------------------------------------------------------------------- +uuid + +Copyright (c) 2021 Yulian Kuncheff + +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. +-------------------------------------------------------------------------------- +vector_math + +Copyright 2015, Google Inc. All rights reserved. + +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 Inc. 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. + +Copyright (C) 2013 Andrew Magill + +This software is provided 'as-is', without any express or implied +warranty. In no event will the authors be held liable for any damages +arising from the use of this software. + +Permission is granted to anyone to use this software for any purpose, +including commercial applications, and to alter it and redistribute it +freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. +2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. +3. This notice may not be removed or altered from any source distribution. + +-------------------------------------------------------------------------------- +vulkan-validation-layers + +Copyright (C) 2012-2020 Yann Collet + +BSD 2-Clause License (https://www.opensource.org/licenses/bsd-license.php) + +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. + +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. +-------------------------------------------------------------------------------- +vulkan-validation-layers +vulkan_memory_allocator + +Copyright (c) 2017-2022 Advanced Micro Devices, Inc. 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. +-------------------------------------------------------------------------------- +vulkanmemoryallocator + +Copyright 2018 Google Inc. + +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 Inc. 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 + +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. + +-------------------------------------------------------------------------------- +web_locale_keymap + +Copyright (c) 2022 Google LLC + +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. +-------------------------------------------------------------------------------- +win32 + +Copyright 2019, Dart | Windows. All rights reserved. +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 Inc. 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. +-------------------------------------------------------------------------------- +xxhash + +Copyright (C) 2012-2016, Yann Collet + +BSD 2-Clause License (http://www.opensource.org/licenses/bsd-license.php) + +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. + +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. +-------------------------------------------------------------------------------- +xxhash + +Copyright (C) 2012-2016, Yann Collet. + +BSD 2-Clause License (http://www.opensource.org/licenses/bsd-license.php) + +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. + +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. +-------------------------------------------------------------------------------- +yaml + +Copyright (c) 2014, the Dart project authors. +Copyright (c) 2006, Kirill Simonov. + +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. + +-------------------------------------------------------------------------------- +zlib + +Copyright (C) 1995-2022 Jean-loup Gailly and Mark Adler + +This software is provided 'as-is', without any express or implied +warranty. In no event will the authors be held liable for any damages +arising from the use of this software. + +Permission is granted to anyone to use this software for any purpose, +including commercial applications, and to alter it and redistribute it +freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. +2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. +3. This notice may not be removed or altered from any source distribution. +-------------------------------------------------------------------------------- +zlib + +Copyright (C) 1998-2005 Gilles Vollant +-------------------------------------------------------------------------------- +zlib + +Copyright (C) 2017 ARM, Inc. +Copyright 2017 The Chromium 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 Inc. 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. +-------------------------------------------------------------------------------- +zlib + +Copyright 2017 The Chromium 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 Inc. 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. +-------------------------------------------------------------------------------- +zlib + +Copyright 2018 The Chromium 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 Inc. 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. +-------------------------------------------------------------------------------- +zlib + +Copyright 2019 The Chromium 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 Inc. 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. +-------------------------------------------------------------------------------- +zlib + +Copyright 2022 The Chromium 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 Inc. 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. +-------------------------------------------------------------------------------- +zlib + +This software is provided 'as-is', without any express or implied +warranty. In no event will the authors be held liable for any damages +arising from the use of this software. + +Permission is granted to anyone to use this software for any purpose, +including commercial applications, and to alter it and redistribute it +freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. +2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. +3. This notice may not be removed or altered from any source distribution. +-------------------------------------------------------------------------------- +zlib + +version 1.2.12, March 27th, 2022 + +Copyright (C) 1995-2022 Jean-loup Gailly and Mark Adler + +This software is provided 'as-is', without any express or implied +warranty. In no event will the authors be held liable for any damages +arising from the use of this software. + +Permission is granted to anyone to use this software for any purpose, +including commercial applications, and to alter it and redistribute it +freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. +2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. +3. This notice may not be removed or altered from any source distribution. diff --git a/assets/icons/dark_icon.png b/assets/assets/icons/dark_icon.png similarity index 100% rename from assets/icons/dark_icon.png rename to assets/assets/icons/dark_icon.png diff --git a/assets/icons/launcher/from_suwayomi.png b/assets/assets/icons/launcher/from_suwayomi.png similarity index 100% rename from assets/icons/launcher/from_suwayomi.png rename to assets/assets/icons/launcher/from_suwayomi.png diff --git a/assets/icons/launcher/sorayomi_icon.ico b/assets/assets/icons/launcher/sorayomi_icon.ico similarity index 100% rename from assets/icons/launcher/sorayomi_icon.ico rename to assets/assets/icons/launcher/sorayomi_icon.ico diff --git a/assets/icons/launcher/sorayomi_icon.png b/assets/assets/icons/launcher/sorayomi_icon.png similarity index 100% rename from assets/icons/launcher/sorayomi_icon.png rename to assets/assets/icons/launcher/sorayomi_icon.png diff --git a/assets/icons/launcher/sorayomi_preview_icon.png b/assets/assets/icons/launcher/sorayomi_preview_icon.png similarity index 100% rename from assets/icons/launcher/sorayomi_preview_icon.png rename to assets/assets/icons/launcher/sorayomi_preview_icon.png diff --git a/assets/icons/light_icon.png b/assets/assets/icons/light_icon.png similarity index 100% rename from assets/icons/light_icon.png rename to assets/assets/icons/light_icon.png diff --git a/assets/icons/previous_done.png b/assets/assets/icons/previous_done.png similarity index 100% rename from assets/icons/previous_done.png rename to assets/assets/icons/previous_done.png diff --git a/assets/fonts/MaterialIcons-Regular.otf b/assets/fonts/MaterialIcons-Regular.otf new file mode 100644 index 00000000..a4d5ceda Binary files /dev/null and b/assets/fonts/MaterialIcons-Regular.otf differ diff --git a/assets/packages/cupertino_icons/assets/CupertinoIcons.ttf b/assets/packages/cupertino_icons/assets/CupertinoIcons.ttf new file mode 100644 index 00000000..e6b745f9 Binary files /dev/null and b/assets/packages/cupertino_icons/assets/CupertinoIcons.ttf differ diff --git a/assets/packages/fluttertoast/assets/toastify.css b/assets/packages/fluttertoast/assets/toastify.css new file mode 100644 index 00000000..9bb84fcb --- /dev/null +++ b/assets/packages/fluttertoast/assets/toastify.css @@ -0,0 +1,14 @@ +/** + * Minified by jsDelivr using clean-css v4.2.3. + * Original file: /npm/toastify-js@1.9.3/src/toastify.css + * + * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files + */ +/*! + * Toastify js 1.9.3 + * https://github.com/apvarun/toastify-js + * @license MIT licensed + * + * Copyright (C) 2018 Varun A P + */ +.toastify{padding:12px 20px;color:#fff;display:inline-block;box-shadow:0 3px 6px -1px rgba(0,0,0,.12),0 10px 36px -4px rgba(77,96,232,.3);background:-webkit-linear-gradient(315deg,#73a5ff,#5477f5);background:linear-gradient(135deg,#73a5ff,#5477f5);position:fixed;opacity:0;transition:all .4s cubic-bezier(.215,.61,.355,1);border-radius:2px;cursor:pointer;text-decoration:none;max-width:calc(50% - 20px);z-index:2147483647}.toastify.on{opacity:1}.toast-close{opacity:.4;padding:0 5px}.toastify-right{right:15px}.toastify-left{left:15px}.toastify-top{top:-150px}.toastify-bottom{bottom:-150px}.toastify-rounded{border-radius:25px}.toastify-avatar{width:1.5em;height:1.5em;margin:-7px 5px;border-radius:2px}.toastify-center{margin-left:auto;margin-right:auto;left:0;right:0;max-width:fit-content;max-width:-moz-fit-content}@media only screen and (max-width:360px){.toastify-left,.toastify-right{margin-left:auto;margin-right:auto;left:0;right:0;max-width:fit-content}} \ No newline at end of file diff --git a/assets/packages/fluttertoast/assets/toastify.js b/assets/packages/fluttertoast/assets/toastify.js new file mode 100644 index 00000000..be9f1456 --- /dev/null +++ b/assets/packages/fluttertoast/assets/toastify.js @@ -0,0 +1,14 @@ +/** + * Minified by jsDelivr using Terser v5.3.0. + * Original file: /npm/toastify-js@1.9.3/src/toastify.js + * + * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files + */ +/*! + * Toastify js 1.9.3 + * https://github.com/apvarun/toastify-js + * @license MIT licensed + * + * Copyright (C) 2018 Varun A P + */ +!function(t,o){"object"==typeof module && module && module.exports?module.exports=o():t.Toastify=o()}(this,(function(t){var o=function(t){return new o.lib.init(t)};function i(t,o){return o.offset[t]?isNaN(o.offset[t])?o.offset[t]:o.offset[t]+"px":"0px"}function s(t,o){return!(!t||"string"!=typeof o)&&!!(t.className&&t.className.trim().split(/\s+/gi).indexOf(o)>-1)}return o.lib=o.prototype={toastify:"1.9.3",constructor:o,init:function(t){return t||(t={}),this.options={},this.toastElement=null,this.options.text=t.text||"Hi there!",this.options.node=t.node,this.options.duration=0===t.duration?0:t.duration||3e3,this.options.selector=t.selector,this.options.callback=t.callback||function(){},this.options.destination=t.destination,this.options.newWindow=t.newWindow||!1,this.options.close=t.close||!1,this.options.gravity="bottom"===t.gravity?"toastify-bottom":"toastify-top",this.options.positionLeft=t.positionLeft||!1,this.options.position=t.position||"",this.options.backgroundColor=t.backgroundColor,this.options.avatar=t.avatar||"",this.options.className=t.className||"",this.options.stopOnFocus=void 0===t.stopOnFocus||t.stopOnFocus,this.options.onClick=t.onClick,this.options.offset=t.offset||{x:0,y:0},this},buildToast:function(){if(!this.options)throw"Toastify is not initialized";var t=document.createElement("div");if(t.className="toastify on "+this.options.className,this.options.position?t.className+=" toastify-"+this.options.position:!0===this.options.positionLeft?(t.className+=" toastify-left",console.warn("Property `positionLeft` will be depreciated in further versions. Please use `position` instead.")):t.className+=" toastify-right",t.className+=" "+this.options.gravity,this.options.backgroundColor&&(t.style.background=this.options.backgroundColor),this.options.node&&this.options.node.nodeType===Node.ELEMENT_NODE)t.appendChild(this.options.node);else if(t.innerHTML=this.options.text,""!==this.options.avatar){var o=document.createElement("img");o.src=this.options.avatar,o.className="toastify-avatar","left"==this.options.position||!0===this.options.positionLeft?t.appendChild(o):t.insertAdjacentElement("afterbegin",o)}if(!0===this.options.close){var s=document.createElement("span");s.innerHTML="✖",s.className="toast-close",s.addEventListener("click",function(t){t.stopPropagation(),this.removeElement(this.toastElement),window.clearTimeout(this.toastElement.timeOutValue)}.bind(this));var n=window.innerWidth>0?window.innerWidth:screen.width;("left"==this.options.position||!0===this.options.positionLeft)&&n>360?t.insertAdjacentElement("afterbegin",s):t.appendChild(s)}if(this.options.stopOnFocus&&this.options.duration>0){var e=this;t.addEventListener("mouseover",(function(o){window.clearTimeout(t.timeOutValue)})),t.addEventListener("mouseleave",(function(){t.timeOutValue=window.setTimeout((function(){e.removeElement(t)}),e.options.duration)}))}if(void 0!==this.options.destination&&t.addEventListener("click",function(t){t.stopPropagation(),!0===this.options.newWindow?window.open(this.options.destination,"_blank"):window.location=this.options.destination}.bind(this)),"function"==typeof this.options.onClick&&void 0===this.options.destination&&t.addEventListener("click",function(t){t.stopPropagation(),this.options.onClick()}.bind(this)),"object"==typeof this.options.offset){var a=i("x",this.options),p=i("y",this.options),r="left"==this.options.position?a:"-"+a,l="toastify-top"==this.options.gravity?p:"-"+p;t.style.transform="translate("+r+","+l+")"}return t},showToast:function(){var t;if(this.toastElement=this.buildToast(),!(t=void 0===this.options.selector?document.body:document.getElementById(this.options.selector)))throw"Root element is not defined";return t.insertBefore(this.toastElement,t.firstChild),o.reposition(),this.options.duration>0&&(this.toastElement.timeOutValue=window.setTimeout(function(){this.removeElement(this.toastElement)}.bind(this),this.options.duration)),this},hideToast:function(){this.toastElement.timeOutValue&&clearTimeout(this.toastElement.timeOutValue),this.removeElement(this.toastElement)},removeElement:function(t){t.className=t.className.replace(" on",""),window.setTimeout(function(){this.options.node&&this.options.node.parentNode&&this.options.node.parentNode.removeChild(this.options.node),t.parentNode&&t.parentNode.removeChild(t),this.options.callback.call(t),o.reposition()}.bind(this),400)}},o.reposition=function(){for(var t,o={top:15,bottom:15},i={top:15,bottom:15},n={top:15,bottom:15},e=document.getElementsByClassName("toastify"),a=0;a0?window.innerWidth:screen.width)<=360?(e[a].style[t]=n[t]+"px",n[t]+=p+15):!0===s(e[a],"toastify-left")?(e[a].style[t]=o[t]+"px",o[t]+=p+15):(e[a].style[t]=i[t]+"px",i[t]+=p+15)}return this},o.lib.init.prototype=o.lib,o})); diff --git a/assets/packages/font_awesome_flutter/lib/fonts/fa-brands-400.ttf b/assets/packages/font_awesome_flutter/lib/fonts/fa-brands-400.ttf new file mode 100644 index 00000000..f365f12d Binary files /dev/null and b/assets/packages/font_awesome_flutter/lib/fonts/fa-brands-400.ttf differ diff --git a/assets/packages/font_awesome_flutter/lib/fonts/fa-regular-400.ttf b/assets/packages/font_awesome_flutter/lib/fonts/fa-regular-400.ttf new file mode 100644 index 00000000..6a4c99ff Binary files /dev/null and b/assets/packages/font_awesome_flutter/lib/fonts/fa-regular-400.ttf differ diff --git a/assets/packages/font_awesome_flutter/lib/fonts/fa-solid-900.ttf b/assets/packages/font_awesome_flutter/lib/fonts/fa-solid-900.ttf new file mode 100644 index 00000000..175b96f4 Binary files /dev/null and b/assets/packages/font_awesome_flutter/lib/fonts/fa-solid-900.ttf differ diff --git a/assets/shaders/ink_sparkle.frag b/assets/shaders/ink_sparkle.frag new file mode 100644 index 00000000..3591af41 --- /dev/null +++ b/assets/shaders/ink_sparkle.frag @@ -0,0 +1,160 @@ +{ + "sksl": "// This SkSL shader is autogenerated by spirv-cross.\n\nfloat4 flutter_FragCoord;\n\nuniform vec4 u_color;\nuniform float u_alpha;\nuniform vec4 u_sparkle_color;\nuniform float u_sparkle_alpha;\nuniform float u_blur;\nuniform vec2 u_center;\nuniform float u_radius_scale;\nuniform float u_max_radius;\nuniform vec2 u_resolution_scale;\nuniform vec2 u_noise_scale;\nuniform float u_noise_phase;\nuniform vec2 u_circle1;\nuniform vec2 u_circle2;\nuniform vec2 u_circle3;\nuniform vec2 u_rotation1;\nuniform vec2 u_rotation2;\nuniform vec2 u_rotation3;\n\nvec4 fragColor;\n\nvec2 FLT_flutter_local_FlutterFragCoord()\n{\n return flutter_FragCoord.xy;\n}\n\nmat2 FLT_flutter_local_rotate2d(vec2 rad)\n{\n return mat2(vec2(rad.x, -rad.y), vec2(rad.y, rad.x));\n}\n\nfloat FLT_flutter_local_soft_circle(vec2 uv, vec2 xy, float radius, float blur)\n{\n float blur_half = blur * 0.5;\n float d = distance(uv, xy);\n return 1.0 - smoothstep(1.0 - blur_half, 1.0 + blur_half, d / radius);\n}\n\nfloat FLT_flutter_local_circle_grid(vec2 resolution, inout vec2 p, vec2 xy, vec2 rotation, float cell_diameter)\n{\n vec2 param = rotation;\n p = (FLT_flutter_local_rotate2d(param) * (xy - p)) + xy;\n p = mod(p, vec2(cell_diameter)) / resolution;\n float cell_uv = (cell_diameter / resolution.y) * 0.5;\n float r = 0.64999997615814208984375 * cell_uv;\n vec2 param_1 = p;\n vec2 param_2 = vec2(cell_uv);\n float param_3 = r;\n float param_4 = r * 50.0;\n return FLT_flutter_local_soft_circle(param_1, param_2, param_3, param_4);\n}\n\nfloat FLT_flutter_local_turbulence(vec2 uv)\n{\n vec2 uv_scale = uv * vec2(0.800000011920928955078125);\n vec2 param = vec2(0.800000011920928955078125);\n vec2 param_1 = uv_scale;\n vec2 param_2 = u_circle1;\n vec2 param_3 = u_rotation1;\n float param_4 = 0.17000000178813934326171875;\n float _301 = FLT_flutter_local_circle_grid(param, param_1, param_2, param_3, param_4);\n float g1 = _301;\n vec2 param_5 = vec2(0.800000011920928955078125);\n vec2 param_6 = uv_scale;\n vec2 param_7 = u_circle2;\n vec2 param_8 = u_rotation2;\n float param_9 = 0.20000000298023223876953125;\n float _313 = FLT_flutter_local_circle_grid(param_5, param_6, param_7, param_8, param_9);\n float g2 = _313;\n vec2 param_10 = vec2(0.800000011920928955078125);\n vec2 param_11 = uv_scale;\n vec2 param_12 = u_circle3;\n vec2 param_13 = u_rotation3;\n float param_14 = 0.2750000059604644775390625;\n float _326 = FLT_flutter_local_circle_grid(param_10, param_11, param_12, param_13, param_14);\n float g3 = _326;\n float v = (((g1 * g1) + g2) - g3) * 0.5;\n return clamp(0.449999988079071044921875 + (0.800000011920928955078125 * v), 0.0, 1.0);\n}\n\nfloat FLT_flutter_local_soft_ring(vec2 uv, vec2 xy, float radius, float thickness, float blur)\n{\n vec2 param = uv;\n vec2 param_1 = xy;\n float param_2 = radius + thickness;\n float param_3 = blur;\n float circle_outer = FLT_flutter_local_soft_circle(param, param_1, param_2, param_3);\n vec2 param_4 = uv;\n vec2 param_5 = xy;\n float param_6 = max(radius - thickness, 0.0);\n float param_7 = blur;\n float circle_inner = FLT_flutter_local_soft_circle(param_4, param_5, param_6, param_7);\n return clamp(circle_outer - circle_inner, 0.0, 1.0);\n}\n\nfloat FLT_flutter_local_triangle_noise(inout vec2 n)\n{\n n = fract(n * vec2(5.398700237274169921875, 5.442100048065185546875));\n n += vec2(dot(n.yx, n + vec2(21.5351009368896484375, 14.3136997222900390625)));\n float xy = n.x * n.y;\n return (fract(xy * 95.43070220947265625) + fract(xy * 75.0496063232421875)) - 1.0;\n}\n\nfloat FLT_flutter_local_threshold(float v, float l, float h)\n{\n return step(l, v) * (1.0 - step(h, v));\n}\n\nfloat FLT_flutter_local_sparkle(vec2 uv, float t)\n{\n vec2 param = uv;\n float _224 = FLT_flutter_local_triangle_noise(param);\n float n = _224;\n float param_1 = n;\n float param_2 = 0.0;\n float param_3 = 0.0500000007450580596923828125;\n float s = FLT_flutter_local_threshold(param_1, param_2, param_3);\n float param_4 = n + sin(3.1415927410125732421875 * (t + 0.3499999940395355224609375));\n float param_5 = 0.100000001490116119384765625;\n float param_6 = 0.1500000059604644775390625;\n s += FLT_flutter_local_threshold(param_4, param_5, param_6);\n float param_7 = n + sin(3.1415927410125732421875 * (t + 0.699999988079071044921875));\n float param_8 = 0.20000000298023223876953125;\n float param_9 = 0.25;\n s += FLT_flutter_local_threshold(param_7, param_8, param_9);\n float param_10 = n + sin(3.1415927410125732421875 * (t + 1.0499999523162841796875));\n float param_11 = 0.300000011920928955078125;\n float param_12 = 0.3499999940395355224609375;\n s += FLT_flutter_local_threshold(param_10, param_11, param_12);\n return clamp(s, 0.0, 1.0) * 0.550000011920928955078125;\n}\n\nvoid FLT_main()\n{\n vec2 p = FLT_flutter_local_FlutterFragCoord();\n vec2 uv_1 = p * u_resolution_scale;\n vec2 density_uv = uv_1 - mod(p, u_noise_scale);\n float radius = u_max_radius * u_radius_scale;\n vec2 param_13 = uv_1;\n float turbulence = FLT_flutter_local_turbulence(param_13);\n vec2 param_14 = p;\n vec2 param_15 = u_center;\n float param_16 = radius;\n float param_17 = 0.0500000007450580596923828125 * u_max_radius;\n float param_18 = u_blur;\n float ring = FLT_flutter_local_soft_ring(param_14, param_15, param_16, param_17, param_18);\n vec2 param_19 = density_uv;\n float param_20 = u_noise_phase;\n float sparkle = ((FLT_flutter_local_sparkle(param_19, param_20) * ring) * turbulence) * u_sparkle_alpha;\n vec2 param_21 = p;\n vec2 param_22 = u_center;\n float param_23 = radius;\n float param_24 = u_blur;\n float wave_alpha = (FLT_flutter_local_soft_circle(param_21, param_22, param_23, param_24) * u_alpha) * u_color.w;\n vec4 wave_color = vec4(u_color.xyz * wave_alpha, wave_alpha);\n vec4 sparkle_color = vec4(u_sparkle_color.xyz * u_sparkle_color.w, u_sparkle_color.w);\n fragColor = mix(wave_color, sparkle_color, vec4(sparkle));\n}\n\nhalf4 main(float2 iFragCoord)\n{\n flutter_FragCoord = float4(iFragCoord, 0, 0);\n FLT_main();\n return fragColor;\n}\n", + "stage": 1, + "target_platform": 2, + "uniforms": [ + { + "array_elements": 0, + "bit_width": 32, + "columns": 1, + "location": 0, + "name": "u_color", + "rows": 4, + "type": 10 + }, + { + "array_elements": 0, + "bit_width": 32, + "columns": 1, + "location": 1, + "name": "u_alpha", + "rows": 1, + "type": 10 + }, + { + "array_elements": 0, + "bit_width": 32, + "columns": 1, + "location": 2, + "name": "u_sparkle_color", + "rows": 4, + "type": 10 + }, + { + "array_elements": 0, + "bit_width": 32, + "columns": 1, + "location": 3, + "name": "u_sparkle_alpha", + "rows": 1, + "type": 10 + }, + { + "array_elements": 0, + "bit_width": 32, + "columns": 1, + "location": 4, + "name": "u_blur", + "rows": 1, + "type": 10 + }, + { + "array_elements": 0, + "bit_width": 32, + "columns": 1, + "location": 5, + "name": "u_center", + "rows": 2, + "type": 10 + }, + { + "array_elements": 0, + "bit_width": 32, + "columns": 1, + "location": 6, + "name": "u_radius_scale", + "rows": 1, + "type": 10 + }, + { + "array_elements": 0, + "bit_width": 32, + "columns": 1, + "location": 7, + "name": "u_max_radius", + "rows": 1, + "type": 10 + }, + { + "array_elements": 0, + "bit_width": 32, + "columns": 1, + "location": 8, + "name": "u_resolution_scale", + "rows": 2, + "type": 10 + }, + { + "array_elements": 0, + "bit_width": 32, + "columns": 1, + "location": 9, + "name": "u_noise_scale", + "rows": 2, + "type": 10 + }, + { + "array_elements": 0, + "bit_width": 32, + "columns": 1, + "location": 10, + "name": "u_noise_phase", + "rows": 1, + "type": 10 + }, + { + "array_elements": 0, + "bit_width": 32, + "columns": 1, + "location": 11, + "name": "u_circle1", + "rows": 2, + "type": 10 + }, + { + "array_elements": 0, + "bit_width": 32, + "columns": 1, + "location": 12, + "name": "u_circle2", + "rows": 2, + "type": 10 + }, + { + "array_elements": 0, + "bit_width": 32, + "columns": 1, + "location": 13, + "name": "u_circle3", + "rows": 2, + "type": 10 + }, + { + "array_elements": 0, + "bit_width": 32, + "columns": 1, + "location": 14, + "name": "u_rotation1", + "rows": 2, + "type": 10 + }, + { + "array_elements": 0, + "bit_width": 32, + "columns": 1, + "location": 15, + "name": "u_rotation2", + "rows": 2, + "type": 10 + }, + { + "array_elements": 0, + "bit_width": 32, + "columns": 1, + "location": 16, + "name": "u_rotation3", + "rows": 2, + "type": 10 + } + ] +} \ No newline at end of file diff --git a/build.yaml b/build.yaml deleted file mode 100644 index aaa6e0dd..00000000 --- a/build.yaml +++ /dev/null @@ -1,6 +0,0 @@ -targets: - $default: - builders: - json_serializable: - options: - explicit_to_json: true \ No newline at end of file diff --git a/canvaskit/canvaskit.js b/canvaskit/canvaskit.js new file mode 100644 index 00000000..a8234e78 --- /dev/null +++ b/canvaskit/canvaskit.js @@ -0,0 +1,222 @@ + +var CanvasKitInit = (() => { + var _scriptDir = typeof document !== 'undefined' && document.currentScript ? document.currentScript.src : undefined; + if (typeof __filename !== 'undefined') _scriptDir = _scriptDir || __filename; + return ( +function(CanvasKitInit = {}) { + +var r;r||(r=typeof CanvasKitInit !== 'undefined' ? CanvasKitInit : {});var aa,ba;r.ready=new Promise(function(a,b){aa=a;ba=b}); +(function(a){a.Md=a.Md||[];a.Md.push(function(){a.MakeSWCanvasSurface=function(b){var c=b,e="undefined"!==typeof OffscreenCanvas&&c instanceof OffscreenCanvas;if(!("undefined"!==typeof HTMLCanvasElement&&c instanceof HTMLCanvasElement||e||(c=document.getElementById(b),c)))throw"Canvas with id "+b+" was not found";if(b=a.MakeSurface(c.width,c.height))b.je=c;return b};a.MakeCanvasSurface||(a.MakeCanvasSurface=a.MakeSWCanvasSurface);a.MakeSurface=function(b,c){var e={width:b,height:c,colorType:a.ColorType.RGBA_8888, +alphaType:a.AlphaType.Unpremul,colorSpace:a.ColorSpace.SRGB},f=b*c*4,k=a._malloc(f);if(e=a.Surface._makeRasterDirect(e,k,4*b))e.je=null,e.Ue=b,e.Re=c,e.Se=f,e.te=k,e.getCanvas().clear(a.TRANSPARENT);return e};a.MakeRasterDirectSurface=function(b,c,e){return a.Surface._makeRasterDirect(b,c.byteOffset,e)};a.Surface.prototype.flush=function(b){a.Jd(this.Id);this._flush();if(this.je){var c=new Uint8ClampedArray(a.HEAPU8.buffer,this.te,this.Se);c=new ImageData(c,this.Ue,this.Re);b?this.je.getContext("2d").putImageData(c, +0,0,b[0],b[1],b[2]-b[0],b[3]-b[1]):this.je.getContext("2d").putImageData(c,0,0)}};a.Surface.prototype.dispose=function(){this.te&&a._free(this.te);this.delete()};a.Jd=a.Jd||function(){};a.ke=a.ke||function(){return null}})})(r); +(function(a){a.Md=a.Md||[];a.Md.push(function(){function b(l,q,x){return l&&l.hasOwnProperty(q)?l[q]:x}function c(l){var q=ca(ea);ea[q]=l;return q}function e(l){return l.naturalHeight||l.videoHeight||l.displayHeight||l.height}function f(l){return l.naturalWidth||l.videoWidth||l.displayWidth||l.width}function k(l,q,x,y){l.bindTexture(l.TEXTURE_2D,q);y||x.alphaType!==a.AlphaType.Premul||l.pixelStorei(l.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!0);return q}function m(l,q,x){x||q.alphaType!==a.AlphaType.Premul|| +l.pixelStorei(l.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!1);l.bindTexture(l.TEXTURE_2D,null)}a.GetWebGLContext=function(l,q){if(!l)throw"null canvas passed into makeWebGLContext";var x={alpha:b(q,"alpha",1),depth:b(q,"depth",1),stencil:b(q,"stencil",8),antialias:b(q,"antialias",0),premultipliedAlpha:b(q,"premultipliedAlpha",1),preserveDrawingBuffer:b(q,"preserveDrawingBuffer",0),preferLowPowerToHighPerformance:b(q,"preferLowPowerToHighPerformance",0),failIfMajorPerformanceCaveat:b(q,"failIfMajorPerformanceCaveat", +0),enableExtensionsByDefault:b(q,"enableExtensionsByDefault",1),explicitSwapControl:b(q,"explicitSwapControl",0),renderViaOffscreenBackBuffer:b(q,"renderViaOffscreenBackBuffer",0)};x.majorVersion=q&&q.majorVersion?q.majorVersion:"undefined"!==typeof WebGL2RenderingContext?2:1;if(x.explicitSwapControl)throw"explicitSwapControl is not supported";l=fa(l,x);if(!l)return 0;ha(l);u.Td.getExtension("WEBGL_debug_renderer_info");return l};a.deleteContext=function(l){u===ia[l]&&(u=null);"object"==typeof JSEvents&& +JSEvents.zf(ia[l].Td.canvas);ia[l]&&ia[l].Td.canvas&&(ia[l].Td.canvas.Je=void 0);ia[l]=null};a._setTextureCleanup({deleteTexture:function(l,q){var x=ea[q];x&&ia[l].Td.deleteTexture(x);ea[q]=null}});a.MakeWebGLContext=function(l){if(!this.Jd(l))return null;var q=this._MakeGrContext();if(!q)return null;q.Id=l;var x=q.delete.bind(q);q["delete"]=function(){a.Jd(this.Id);x()}.bind(q);return u.ve=q};a.MakeGrContext=a.MakeWebGLContext;a.GrDirectContext.prototype.getResourceCacheLimitBytes=function(){a.Jd(this.Id); +this._getResourceCacheLimitBytes()};a.GrDirectContext.prototype.getResourceCacheUsageBytes=function(){a.Jd(this.Id);this._getResourceCacheUsageBytes()};a.GrDirectContext.prototype.releaseResourcesAndAbandonContext=function(){a.Jd(this.Id);this._releaseResourcesAndAbandonContext()};a.GrDirectContext.prototype.setResourceCacheLimitBytes=function(l){a.Jd(this.Id);this._setResourceCacheLimitBytes(l)};a.MakeOnScreenGLSurface=function(l,q,x,y,B,D){if(!this.Jd(l.Id))return null;q=void 0===B||void 0===D? +this._MakeOnScreenGLSurface(l,q,x,y):this._MakeOnScreenGLSurface(l,q,x,y,B,D);if(!q)return null;q.Id=l.Id;return q};a.MakeRenderTarget=function(){var l=arguments[0];if(!this.Jd(l.Id))return null;if(3===arguments.length){var q=this._MakeRenderTargetWH(l,arguments[1],arguments[2]);if(!q)return null}else if(2===arguments.length){if(q=this._MakeRenderTargetII(l,arguments[1]),!q)return null}else return null;q.Id=l.Id;return q};a.MakeWebGLCanvasSurface=function(l,q,x){q=q||null;var y=l,B="undefined"!== +typeof OffscreenCanvas&&y instanceof OffscreenCanvas;if(!("undefined"!==typeof HTMLCanvasElement&&y instanceof HTMLCanvasElement||B||(y=document.getElementById(l),y)))throw"Canvas with id "+l+" was not found";l=this.GetWebGLContext(y,x);if(!l||0>l)throw"failed to create webgl context: err "+l;l=this.MakeWebGLContext(l);q=this.MakeOnScreenGLSurface(l,y.width,y.height,q);return q?q:(q=y.cloneNode(!0),y.parentNode.replaceChild(q,y),q.classList.add("ck-replaced"),a.MakeSWCanvasSurface(q))};a.MakeCanvasSurface= +a.MakeWebGLCanvasSurface;a.Surface.prototype.makeImageFromTexture=function(l,q){a.Jd(this.Id);l=c(l);if(q=this._makeImageFromTexture(this.Id,l,q))q.fe=l;return q};a.Surface.prototype.makeImageFromTextureSource=function(l,q,x){q||(q={height:e(l),width:f(l),colorType:a.ColorType.RGBA_8888,alphaType:x?a.AlphaType.Premul:a.AlphaType.Unpremul});q.colorSpace||(q.colorSpace=a.ColorSpace.SRGB);a.Jd(this.Id);var y=u.Td;x=k(y,y.createTexture(),q,x);2===u.version?y.texImage2D(y.TEXTURE_2D,0,y.RGBA,q.width,q.height, +0,y.RGBA,y.UNSIGNED_BYTE,l):y.texImage2D(y.TEXTURE_2D,0,y.RGBA,y.RGBA,y.UNSIGNED_BYTE,l);m(y,q);this._resetContext();return this.makeImageFromTexture(x,q)};a.Surface.prototype.updateTextureFromSource=function(l,q,x){if(l.fe){a.Jd(this.Id);var y=l.getImageInfo(),B=u.Td,D=k(B,ea[l.fe],y,x);2===u.version?B.texImage2D(B.TEXTURE_2D,0,B.RGBA,f(q),e(q),0,B.RGBA,B.UNSIGNED_BYTE,q):B.texImage2D(B.TEXTURE_2D,0,B.RGBA,B.RGBA,B.UNSIGNED_BYTE,q);m(B,y,x);this._resetContext();ea[l.fe]=null;l.fe=c(D);y.colorSpace= +l.getColorSpace();q=this._makeImageFromTexture(this.Id,l.fe,y);x=l.kd.Kd;B=l.kd.Pd;l.kd.Kd=q.kd.Kd;l.kd.Pd=q.kd.Pd;q.kd.Kd=x;q.kd.Pd=B;q.delete();y.colorSpace.delete()}};a.MakeLazyImageFromTextureSource=function(l,q,x){q||(q={height:e(l),width:f(l),colorType:a.ColorType.RGBA_8888,alphaType:x?a.AlphaType.Premul:a.AlphaType.Unpremul});q.colorSpace||(q.colorSpace=a.ColorSpace.SRGB);var y={makeTexture:function(){var B=u,D=B.Td,v=k(D,D.createTexture(),q,x);2===B.version?D.texImage2D(D.TEXTURE_2D,0,D.RGBA, +q.width,q.height,0,D.RGBA,D.UNSIGNED_BYTE,l):D.texImage2D(D.TEXTURE_2D,0,D.RGBA,D.RGBA,D.UNSIGNED_BYTE,l);m(D,q,x);return c(v)},freeSrc:function(){}};"VideoFrame"===l.constructor.name&&(y.freeSrc=function(){l.close()});return a.Image._makeFromGenerator(q,y)};a.Jd=function(l){return l?ha(l):!1};a.ke=function(){return u&&u.ve&&!u.ve.isDeleted()?u.ve:null}})})(r); +(function(a){function b(g){return(f(255*g[3])<<24|f(255*g[0])<<16|f(255*g[1])<<8|f(255*g[2])<<0)>>>0}function c(g){if(g&&g._ck)return g;if(g instanceof Float32Array){for(var d=Math.floor(g.length/4),h=new Uint32Array(d),n=0;nz;z++)a.HEAPF32[t+n]=g[w][z],n++;g=h}else g=M;d.Qd=g}else throw"Invalid argument to copyFlexibleColorArray, Not a color array "+typeof g;return d}function q(g){if(!g)return M;var d=S.toTypedArray();if(g.length){if(6===g.length||9===g.length)return m(g,"HEAPF32",H),6===g.length&&a.HEAPF32.set(dd,6+H/4),H;if(16===g.length)return d[0]=g[0],d[1]=g[1],d[2]=g[3],d[3]=g[4],d[4]=g[5],d[5]=g[7],d[6]=g[12],d[7]=g[13],d[8]=g[15],H;throw"invalid matrix size"; +}if(void 0===g.m11)throw"invalid matrix argument";d[0]=g.m11;d[1]=g.m21;d[2]=g.m41;d[3]=g.m12;d[4]=g.m22;d[5]=g.m42;d[6]=g.m14;d[7]=g.m24;d[8]=g.m44;return H}function x(g){if(!g)return M;var d=da.toTypedArray();if(g.length){if(16!==g.length&&6!==g.length&&9!==g.length)throw"invalid matrix size";if(16===g.length)return m(g,"HEAPF32",Y);d.fill(0);d[0]=g[0];d[1]=g[1];d[3]=g[2];d[4]=g[3];d[5]=g[4];d[7]=g[5];d[10]=1;d[12]=g[6];d[13]=g[7];d[15]=g[8];6===g.length&&(d[12]=0,d[13]=0,d[15]=1);return Y}if(void 0=== +g.m11)throw"invalid matrix argument";d[0]=g.m11;d[1]=g.m21;d[2]=g.m31;d[3]=g.m41;d[4]=g.m12;d[5]=g.m22;d[6]=g.m32;d[7]=g.m42;d[8]=g.m13;d[9]=g.m23;d[10]=g.m33;d[11]=g.m43;d[12]=g.m14;d[13]=g.m24;d[14]=g.m34;d[15]=g.m44;return Y}function y(g,d){return m(g,"HEAPF32",d||ua)}function B(g,d,h,n){var t=La.toTypedArray();t[0]=g;t[1]=d;t[2]=h;t[3]=n;return ua}function D(g){for(var d=new Float32Array(4),h=0;4>h;h++)d[h]=a.HEAPF32[g/4+h];return d}function v(g,d){return m(g,"HEAPF32",d||V)}function E(g,d){return m(g, +"HEAPF32",d||Cb)}a.Color=function(g,d,h,n){void 0===n&&(n=1);return a.Color4f(f(g)/255,f(d)/255,f(h)/255,n)};a.ColorAsInt=function(g,d,h,n){void 0===n&&(n=255);return(f(n)<<24|f(g)<<16|f(d)<<8|f(h)<<0&268435455)>>>0};a.Color4f=function(g,d,h,n){void 0===n&&(n=1);return Float32Array.of(g,d,h,n)};Object.defineProperty(a,"TRANSPARENT",{get:function(){return a.Color4f(0,0,0,0)}});Object.defineProperty(a,"BLACK",{get:function(){return a.Color4f(0,0,0,1)}});Object.defineProperty(a,"WHITE",{get:function(){return a.Color4f(1, +1,1,1)}});Object.defineProperty(a,"RED",{get:function(){return a.Color4f(1,0,0,1)}});Object.defineProperty(a,"GREEN",{get:function(){return a.Color4f(0,1,0,1)}});Object.defineProperty(a,"BLUE",{get:function(){return a.Color4f(0,0,1,1)}});Object.defineProperty(a,"YELLOW",{get:function(){return a.Color4f(1,1,0,1)}});Object.defineProperty(a,"CYAN",{get:function(){return a.Color4f(0,1,1,1)}});Object.defineProperty(a,"MAGENTA",{get:function(){return a.Color4f(1,0,1,1)}});a.getColorComponents=function(g){return[Math.floor(255* +g[0]),Math.floor(255*g[1]),Math.floor(255*g[2]),g[3]]};a.parseColorString=function(g,d){g=g.toLowerCase();if(g.startsWith("#")){d=255;switch(g.length){case 9:d=parseInt(g.slice(7,9),16);case 7:var h=parseInt(g.slice(1,3),16);var n=parseInt(g.slice(3,5),16);var t=parseInt(g.slice(5,7),16);break;case 5:d=17*parseInt(g.slice(4,5),16);case 4:h=17*parseInt(g.slice(1,2),16),n=17*parseInt(g.slice(2,3),16),t=17*parseInt(g.slice(3,4),16)}return a.Color(h,n,t,d/255)}return g.startsWith("rgba")?(g=g.slice(5, +-1),g=g.split(","),a.Color(+g[0],+g[1],+g[2],e(g[3]))):g.startsWith("rgb")?(g=g.slice(4,-1),g=g.split(","),a.Color(+g[0],+g[1],+g[2],e(g[3]))):g.startsWith("gray(")||g.startsWith("hsl")||!d||(g=d[g],void 0===g)?a.BLACK:g};a.multiplyByAlpha=function(g,d){g=g.slice();g[3]=Math.max(0,Math.min(g[3]*d,1));return g};a.Malloc=function(g,d){var h=a._malloc(d*g.BYTES_PER_ELEMENT);return{_ck:!0,length:d,byteOffset:h,$d:null,subarray:function(n,t){n=this.toTypedArray().subarray(n,t);n._ck=!0;return n},toTypedArray:function(){if(this.$d&& +this.$d.length)return this.$d;this.$d=new g(a.HEAPU8.buffer,h,d);this.$d._ck=!0;return this.$d}}};a.Free=function(g){a._free(g.byteOffset);g.byteOffset=M;g.toTypedArray=null;g.$d=null};var H=M,S,Y=M,da,ua=M,La,ma,V=M,gc,Aa=M,hc,Db=M,ic,Eb=M,Fb,gb=M,jc,Cb=M,kc,lc=M,dd=Float32Array.of(0,0,1),M=0;a.onRuntimeInitialized=function(){function g(d,h,n,t,w,z,F){z||(z=4*t.width,t.colorType===a.ColorType.RGBA_F16?z*=2:t.colorType===a.ColorType.RGBA_F32&&(z*=4));var K=z*t.height;var I=w?w.byteOffset:a._malloc(K); +if(F?!d._readPixels(t,I,z,h,n,F):!d._readPixels(t,I,z,h,n))return w||a._free(I),null;if(w)return w.toTypedArray();switch(t.colorType){case a.ColorType.RGBA_8888:case a.ColorType.RGBA_F16:d=(new Uint8Array(a.HEAPU8.buffer,I,K)).slice();break;case a.ColorType.RGBA_F32:d=(new Float32Array(a.HEAPU8.buffer,I,K)).slice();break;default:return null}a._free(I);return d}La=a.Malloc(Float32Array,4);ua=La.byteOffset;da=a.Malloc(Float32Array,16);Y=da.byteOffset;S=a.Malloc(Float32Array,9);H=S.byteOffset;jc=a.Malloc(Float32Array, +12);Cb=jc.byteOffset;kc=a.Malloc(Float32Array,12);lc=kc.byteOffset;ma=a.Malloc(Float32Array,4);V=ma.byteOffset;gc=a.Malloc(Float32Array,4);Aa=gc.byteOffset;hc=a.Malloc(Float32Array,3);Db=hc.byteOffset;ic=a.Malloc(Float32Array,3);Eb=ic.byteOffset;Fb=a.Malloc(Int32Array,4);gb=Fb.byteOffset;a.ColorSpace.SRGB=a.ColorSpace._MakeSRGB();a.ColorSpace.DISPLAY_P3=a.ColorSpace._MakeDisplayP3();a.ColorSpace.ADOBE_RGB=a.ColorSpace._MakeAdobeRGB();a.GlyphRunFlags={IsWhiteSpace:a._GlyphRunFlags_isWhiteSpace};a.Path.MakeFromCmds= +function(d){var h=m(d,"HEAPF32"),n=a.Path._MakeFromCmds(h,d.length);k(h,d);return n};a.Path.MakeFromVerbsPointsWeights=function(d,h,n){var t=m(d,"HEAPU8"),w=m(h,"HEAPF32"),z=m(n,"HEAPF32"),F=a.Path._MakeFromVerbsPointsWeights(t,d.length,w,h.length,z,n&&n.length||0);k(t,d);k(w,h);k(z,n);return F};a.Path.prototype.addArc=function(d,h,n){d=v(d);this._addArc(d,h,n);return this};a.Path.prototype.addCircle=function(d,h,n,t){this._addCircle(d,h,n,!!t);return this};a.Path.prototype.addOval=function(d,h,n){void 0=== +n&&(n=1);d=v(d);this._addOval(d,!!h,n);return this};a.Path.prototype.addPath=function(){var d=Array.prototype.slice.call(arguments),h=d[0],n=!1;"boolean"===typeof d[d.length-1]&&(n=d.pop());if(1===d.length)this._addPath(h,1,0,0,0,1,0,0,0,1,n);else if(2===d.length)d=d[1],this._addPath(h,d[0],d[1],d[2],d[3],d[4],d[5],d[6]||0,d[7]||0,d[8]||1,n);else if(7===d.length||10===d.length)this._addPath(h,d[1],d[2],d[3],d[4],d[5],d[6],d[7]||0,d[8]||0,d[9]||1,n);else return null;return this};a.Path.prototype.addPoly= +function(d,h){var n=m(d,"HEAPF32");this._addPoly(n,d.length/2,h);k(n,d);return this};a.Path.prototype.addRect=function(d,h){d=v(d);this._addRect(d,!!h);return this};a.Path.prototype.addRRect=function(d,h){d=E(d);this._addRRect(d,!!h);return this};a.Path.prototype.addVerbsPointsWeights=function(d,h,n){var t=m(d,"HEAPU8"),w=m(h,"HEAPF32"),z=m(n,"HEAPF32");this._addVerbsPointsWeights(t,d.length,w,h.length,z,n&&n.length||0);k(t,d);k(w,h);k(z,n)};a.Path.prototype.arc=function(d,h,n,t,w,z){d=a.LTRBRect(d- +n,h-n,d+n,h+n);w=(w-t)/Math.PI*180-360*!!z;z=new a.Path;z.addArc(d,t/Math.PI*180,w);this.addPath(z,!0);z.delete();return this};a.Path.prototype.arcToOval=function(d,h,n,t){d=v(d);this._arcToOval(d,h,n,t);return this};a.Path.prototype.arcToRotated=function(d,h,n,t,w,z,F){this._arcToRotated(d,h,n,!!t,!!w,z,F);return this};a.Path.prototype.arcToTangent=function(d,h,n,t,w){this._arcToTangent(d,h,n,t,w);return this};a.Path.prototype.close=function(){this._close();return this};a.Path.prototype.conicTo= +function(d,h,n,t,w){this._conicTo(d,h,n,t,w);return this};a.Path.prototype.computeTightBounds=function(d){this._computeTightBounds(V);var h=ma.toTypedArray();return d?(d.set(h),d):h.slice()};a.Path.prototype.cubicTo=function(d,h,n,t,w,z){this._cubicTo(d,h,n,t,w,z);return this};a.Path.prototype.dash=function(d,h,n){return this._dash(d,h,n)?this:null};a.Path.prototype.getBounds=function(d){this._getBounds(V);var h=ma.toTypedArray();return d?(d.set(h),d):h.slice()};a.Path.prototype.lineTo=function(d, +h){this._lineTo(d,h);return this};a.Path.prototype.moveTo=function(d,h){this._moveTo(d,h);return this};a.Path.prototype.offset=function(d,h){this._transform(1,0,d,0,1,h,0,0,1);return this};a.Path.prototype.quadTo=function(d,h,n,t){this._quadTo(d,h,n,t);return this};a.Path.prototype.rArcTo=function(d,h,n,t,w,z,F){this._rArcTo(d,h,n,t,w,z,F);return this};a.Path.prototype.rConicTo=function(d,h,n,t,w){this._rConicTo(d,h,n,t,w);return this};a.Path.prototype.rCubicTo=function(d,h,n,t,w,z){this._rCubicTo(d, +h,n,t,w,z);return this};a.Path.prototype.rLineTo=function(d,h){this._rLineTo(d,h);return this};a.Path.prototype.rMoveTo=function(d,h){this._rMoveTo(d,h);return this};a.Path.prototype.rQuadTo=function(d,h,n,t){this._rQuadTo(d,h,n,t);return this};a.Path.prototype.stroke=function(d){d=d||{};d.width=d.width||1;d.miter_limit=d.miter_limit||4;d.cap=d.cap||a.StrokeCap.Butt;d.join=d.join||a.StrokeJoin.Miter;d.precision=d.precision||1;return this._stroke(d)?this:null};a.Path.prototype.transform=function(){if(1=== +arguments.length){var d=arguments[0];this._transform(d[0],d[1],d[2],d[3],d[4],d[5],d[6]||0,d[7]||0,d[8]||1)}else if(6===arguments.length||9===arguments.length)d=arguments,this._transform(d[0],d[1],d[2],d[3],d[4],d[5],d[6]||0,d[7]||0,d[8]||1);else throw"transform expected to take 1 or 9 arguments. Got "+arguments.length;return this};a.Path.prototype.trim=function(d,h,n){return this._trim(d,h,!!n)?this:null};a.Image.prototype.encodeToBytes=function(d,h){var n=a.ke();d=d||a.ImageFormat.PNG;h=h||100; +return n?this._encodeToBytes(d,h,n):this._encodeToBytes(d,h)};a.Image.prototype.makeShaderCubic=function(d,h,n,t,w){w=q(w);return this._makeShaderCubic(d,h,n,t,w)};a.Image.prototype.makeShaderOptions=function(d,h,n,t,w){w=q(w);return this._makeShaderOptions(d,h,n,t,w)};a.Image.prototype.readPixels=function(d,h,n,t,w){var z=a.ke();return g(this,d,h,n,t,w,z)};a.Canvas.prototype.clear=function(d){a.Jd(this.Id);d=y(d);this._clear(d)};a.Canvas.prototype.clipRRect=function(d,h,n){a.Jd(this.Id);d=E(d);this._clipRRect(d, +h,n)};a.Canvas.prototype.clipRect=function(d,h,n){a.Jd(this.Id);d=v(d);this._clipRect(d,h,n)};a.Canvas.prototype.concat=function(d){a.Jd(this.Id);d=x(d);this._concat(d)};a.Canvas.prototype.drawArc=function(d,h,n,t,w){a.Jd(this.Id);d=v(d);this._drawArc(d,h,n,t,w)};a.Canvas.prototype.drawAtlas=function(d,h,n,t,w,z,F){if(d&&t&&h&&n&&h.length===n.length){a.Jd(this.Id);w||(w=a.BlendMode.SrcOver);var K=m(h,"HEAPF32"),I=m(n,"HEAPF32"),T=n.length/4,p=m(c(z),"HEAPU32");if(F&&"B"in F&&"C"in F)this._drawAtlasCubic(d, +I,K,p,T,w,F.B,F.C,t);else{let A=a.FilterMode.Linear,L=a.MipmapMode.None;F&&(A=F.filter,"mipmap"in F&&(L=F.mipmap));this._drawAtlasOptions(d,I,K,p,T,w,A,L,t)}k(K,h);k(I,n);k(p,z)}};a.Canvas.prototype.drawCircle=function(d,h,n,t){a.Jd(this.Id);this._drawCircle(d,h,n,t)};a.Canvas.prototype.drawColor=function(d,h){a.Jd(this.Id);d=y(d);void 0!==h?this._drawColor(d,h):this._drawColor(d)};a.Canvas.prototype.drawColorInt=function(d,h){a.Jd(this.Id);this._drawColorInt(d,h||a.BlendMode.SrcOver)};a.Canvas.prototype.drawColorComponents= +function(d,h,n,t,w){a.Jd(this.Id);d=B(d,h,n,t);void 0!==w?this._drawColor(d,w):this._drawColor(d)};a.Canvas.prototype.drawDRRect=function(d,h,n){a.Jd(this.Id);d=E(d,Cb);h=E(h,lc);this._drawDRRect(d,h,n)};a.Canvas.prototype.drawImage=function(d,h,n,t){a.Jd(this.Id);this._drawImage(d,h,n,t||null)};a.Canvas.prototype.drawImageCubic=function(d,h,n,t,w,z){a.Jd(this.Id);this._drawImageCubic(d,h,n,t,w,z||null)};a.Canvas.prototype.drawImageOptions=function(d,h,n,t,w,z){a.Jd(this.Id);this._drawImageOptions(d, +h,n,t,w,z||null)};a.Canvas.prototype.drawImageNine=function(d,h,n,t,w){a.Jd(this.Id);h=m(h,"HEAP32",gb);n=v(n);this._drawImageNine(d,h,n,t,w||null)};a.Canvas.prototype.drawImageRect=function(d,h,n,t,w){a.Jd(this.Id);v(h,V);v(n,Aa);this._drawImageRect(d,V,Aa,t,!!w)};a.Canvas.prototype.drawImageRectCubic=function(d,h,n,t,w,z){a.Jd(this.Id);v(h,V);v(n,Aa);this._drawImageRectCubic(d,V,Aa,t,w,z||null)};a.Canvas.prototype.drawImageRectOptions=function(d,h,n,t,w,z){a.Jd(this.Id);v(h,V);v(n,Aa);this._drawImageRectOptions(d, +V,Aa,t,w,z||null)};a.Canvas.prototype.drawLine=function(d,h,n,t,w){a.Jd(this.Id);this._drawLine(d,h,n,t,w)};a.Canvas.prototype.drawOval=function(d,h){a.Jd(this.Id);d=v(d);this._drawOval(d,h)};a.Canvas.prototype.drawPaint=function(d){a.Jd(this.Id);this._drawPaint(d)};a.Canvas.prototype.drawParagraph=function(d,h,n){a.Jd(this.Id);this._drawParagraph(d,h,n)};a.Canvas.prototype.drawPatch=function(d,h,n,t,w){if(24>d.length)throw"Need 12 cubic points";if(h&&4>h.length)throw"Need 4 colors";if(n&&8>n.length)throw"Need 4 shader coordinates"; +a.Jd(this.Id);const z=m(d,"HEAPF32"),F=h?m(c(h),"HEAPU32"):M,K=n?m(n,"HEAPF32"):M;t||(t=a.BlendMode.Modulate);this._drawPatch(z,F,K,t,w);k(K,n);k(F,h);k(z,d)};a.Canvas.prototype.drawPath=function(d,h){a.Jd(this.Id);this._drawPath(d,h)};a.Canvas.prototype.drawPicture=function(d){a.Jd(this.Id);this._drawPicture(d)};a.Canvas.prototype.drawPoints=function(d,h,n){a.Jd(this.Id);var t=m(h,"HEAPF32");this._drawPoints(d,t,h.length/2,n);k(t,h)};a.Canvas.prototype.drawRRect=function(d,h){a.Jd(this.Id);d=E(d); +this._drawRRect(d,h)};a.Canvas.prototype.drawRect=function(d,h){a.Jd(this.Id);d=v(d);this._drawRect(d,h)};a.Canvas.prototype.drawRect4f=function(d,h,n,t,w){a.Jd(this.Id);this._drawRect4f(d,h,n,t,w)};a.Canvas.prototype.drawShadow=function(d,h,n,t,w,z,F){a.Jd(this.Id);var K=m(w,"HEAPF32"),I=m(z,"HEAPF32");h=m(h,"HEAPF32",Db);n=m(n,"HEAPF32",Eb);this._drawShadow(d,h,n,t,K,I,F);k(K,w);k(I,z)};a.getShadowLocalBounds=function(d,h,n,t,w,z,F){d=q(d);n=m(n,"HEAPF32",Db);t=m(t,"HEAPF32",Eb);if(!this._getShadowLocalBounds(d, +h,n,t,w,z,V))return null;h=ma.toTypedArray();return F?(F.set(h),F):h.slice()};a.Canvas.prototype.drawTextBlob=function(d,h,n,t){a.Jd(this.Id);this._drawTextBlob(d,h,n,t)};a.Canvas.prototype.drawVertices=function(d,h,n){a.Jd(this.Id);this._drawVertices(d,h,n)};a.Canvas.prototype.getDeviceClipBounds=function(d){this._getDeviceClipBounds(gb);var h=Fb.toTypedArray();d?d.set(h):d=h.slice();return d};a.Canvas.prototype.getLocalToDevice=function(){this._getLocalToDevice(Y);for(var d=Y,h=Array(16),n=0;16> +n;n++)h[n]=a.HEAPF32[d/4+n];return h};a.Canvas.prototype.getTotalMatrix=function(){this._getTotalMatrix(H);for(var d=Array(9),h=0;9>h;h++)d[h]=a.HEAPF32[H/4+h];return d};a.Canvas.prototype.makeSurface=function(d){d=this._makeSurface(d);d.Id=this.Id;return d};a.Canvas.prototype.readPixels=function(d,h,n,t,w){a.Jd(this.Id);return g(this,d,h,n,t,w)};a.Canvas.prototype.saveLayer=function(d,h,n,t){h=v(h);return this._saveLayer(d||null,h,n||null,t||0)};a.Canvas.prototype.writePixels=function(d,h,n,t,w, +z,F,K){if(d.byteLength%(h*n))throw"pixels length must be a multiple of the srcWidth * srcHeight";a.Jd(this.Id);var I=d.byteLength/(h*n);z=z||a.AlphaType.Unpremul;F=F||a.ColorType.RGBA_8888;K=K||a.ColorSpace.SRGB;var T=I*h;I=m(d,"HEAPU8");h=this._writePixels({width:h,height:n,colorType:F,alphaType:z,colorSpace:K},I,T,t,w);k(I,d);return h};a.ColorFilter.MakeBlend=function(d,h,n){d=y(d);n=n||a.ColorSpace.SRGB;return a.ColorFilter._MakeBlend(d,h,n)};a.ColorFilter.MakeMatrix=function(d){if(!d||20!==d.length)throw"invalid color matrix"; +var h=m(d,"HEAPF32"),n=a.ColorFilter._makeMatrix(h);k(h,d);return n};a.ContourMeasure.prototype.getPosTan=function(d,h){this._getPosTan(d,V);d=ma.toTypedArray();return h?(h.set(d),h):d.slice()};a.ImageFilter.MakeDropShadow=function(d,h,n,t,w,z){w=y(w,ua);return a.ImageFilter._MakeDropShadow(d,h,n,t,w,z)};a.ImageFilter.MakeDropShadowOnly=function(d,h,n,t,w,z){w=y(w,ua);return a.ImageFilter._MakeDropShadowOnly(d,h,n,t,w,z)};a.ImageFilter.MakeImage=function(d,h,n,t){n=v(n,V);t=v(t,Aa);if("B"in h&&"C"in +h)return a.ImageFilter._MakeImageCubic(d,h.B,h.C,n,t);const w=h.filter;let z=a.MipmapMode.None;"mipmap"in h&&(z=h.mipmap);return a.ImageFilter._MakeImageOptions(d,w,z,n,t)};a.ImageFilter.MakeMatrixTransform=function(d,h,n){d=q(d);if("B"in h&&"C"in h)return a.ImageFilter._MakeMatrixTransformCubic(d,h.B,h.C,n);const t=h.filter;let w=a.MipmapMode.None;"mipmap"in h&&(w=h.mipmap);return a.ImageFilter._MakeMatrixTransformOptions(d,t,w,n)};a.Paint.prototype.getColor=function(){this._getColor(ua);return D(ua)}; +a.Paint.prototype.setColor=function(d,h){h=h||null;d=y(d);this._setColor(d,h)};a.Paint.prototype.setColorComponents=function(d,h,n,t,w){w=w||null;d=B(d,h,n,t);this._setColor(d,w)};a.Path.prototype.getPoint=function(d,h){this._getPoint(d,V);d=ma.toTypedArray();return h?(h[0]=d[0],h[1]=d[1],h):d.slice(0,2)};a.Picture.prototype.makeShader=function(d,h,n,t,w){t=q(t);w=v(w);return this._makeShader(d,h,n,t,w)};a.Picture.prototype.cullRect=function(d){this._cullRect(V);var h=ma.toTypedArray();return d?(d.set(h), +d):h.slice()};a.PictureRecorder.prototype.beginRecording=function(d,h){d=v(d);return this._beginRecording(d,!!h)};a.Surface.prototype.getCanvas=function(){var d=this._getCanvas();d.Id=this.Id;return d};a.Surface.prototype.makeImageSnapshot=function(d){a.Jd(this.Id);d=m(d,"HEAP32",gb);return this._makeImageSnapshot(d)};a.Surface.prototype.makeSurface=function(d){a.Jd(this.Id);d=this._makeSurface(d);d.Id=this.Id;return d};a.Surface.prototype.Te=function(d,h){this.ee||(this.ee=this.getCanvas());return requestAnimationFrame(function(){a.Jd(this.Id); +d(this.ee);this.flush(h)}.bind(this))};a.Surface.prototype.requestAnimationFrame||(a.Surface.prototype.requestAnimationFrame=a.Surface.prototype.Te);a.Surface.prototype.Qe=function(d,h){this.ee||(this.ee=this.getCanvas());requestAnimationFrame(function(){a.Jd(this.Id);d(this.ee);this.flush(h);this.dispose()}.bind(this))};a.Surface.prototype.drawOnce||(a.Surface.prototype.drawOnce=a.Surface.prototype.Qe);a.PathEffect.MakeDash=function(d,h){h||(h=0);if(!d.length||1===d.length%2)throw"Intervals array must have even length"; +var n=m(d,"HEAPF32");h=a.PathEffect._MakeDash(n,d.length,h);k(n,d);return h};a.PathEffect.MakeLine2D=function(d,h){h=q(h);return a.PathEffect._MakeLine2D(d,h)};a.PathEffect.MakePath2D=function(d,h){d=q(d);return a.PathEffect._MakePath2D(d,h)};a.Shader.MakeColor=function(d,h){h=h||null;d=y(d);return a.Shader._MakeColor(d,h)};a.Shader.Blend=a.Shader.MakeBlend;a.Shader.Color=a.Shader.MakeColor;a.Shader.MakeLinearGradient=function(d,h,n,t,w,z,F,K){K=K||null;var I=l(n),T=m(t,"HEAPF32");F=F||0;z=q(z);var p= +ma.toTypedArray();p.set(d);p.set(h,2);d=a.Shader._MakeLinearGradient(V,I.Qd,I.colorType,T,I.count,w,F,z,K);k(I.Qd,n);t&&k(T,t);return d};a.Shader.MakeRadialGradient=function(d,h,n,t,w,z,F,K){K=K||null;var I=l(n),T=m(t,"HEAPF32");F=F||0;z=q(z);d=a.Shader._MakeRadialGradient(d[0],d[1],h,I.Qd,I.colorType,T,I.count,w,F,z,K);k(I.Qd,n);t&&k(T,t);return d};a.Shader.MakeSweepGradient=function(d,h,n,t,w,z,F,K,I,T){T=T||null;var p=l(n),A=m(t,"HEAPF32");F=F||0;K=K||0;I=I||360;z=q(z);d=a.Shader._MakeSweepGradient(d, +h,p.Qd,p.colorType,A,p.count,w,K,I,F,z,T);k(p.Qd,n);t&&k(A,t);return d};a.Shader.MakeTwoPointConicalGradient=function(d,h,n,t,w,z,F,K,I,T){T=T||null;var p=l(w),A=m(z,"HEAPF32");I=I||0;K=q(K);var L=ma.toTypedArray();L.set(d);L.set(n,2);d=a.Shader._MakeTwoPointConicalGradient(V,h,t,p.Qd,p.colorType,A,p.count,F,I,K,T);k(p.Qd,w);z&&k(A,z);return d};a.Vertices.prototype.bounds=function(d){this._bounds(V);var h=ma.toTypedArray();return d?(d.set(h),d):h.slice()};a.Md&&a.Md.forEach(function(d){d()})};a.computeTonalColors= +function(g){var d=m(g.ambient,"HEAPF32"),h=m(g.spot,"HEAPF32");this._computeTonalColors(d,h);var n={ambient:D(d),spot:D(h)};k(d,g.ambient);k(h,g.spot);return n};a.LTRBRect=function(g,d,h,n){return Float32Array.of(g,d,h,n)};a.XYWHRect=function(g,d,h,n){return Float32Array.of(g,d,g+h,d+n)};a.LTRBiRect=function(g,d,h,n){return Int32Array.of(g,d,h,n)};a.XYWHiRect=function(g,d,h,n){return Int32Array.of(g,d,g+h,d+n)};a.RRectXY=function(g,d,h){return Float32Array.of(g[0],g[1],g[2],g[3],d,h,d,h,d,h,d,h)}; +a.MakeAnimatedImageFromEncoded=function(g){g=new Uint8Array(g);var d=a._malloc(g.byteLength);a.HEAPU8.set(g,d);return(g=a._decodeAnimatedImage(d,g.byteLength))?g:null};a.MakeImageFromEncoded=function(g){g=new Uint8Array(g);var d=a._malloc(g.byteLength);a.HEAPU8.set(g,d);return(g=a._decodeImage(d,g.byteLength))?g:null};var Ra=null;a.MakeImageFromCanvasImageSource=function(g){var d=g.width,h=g.height;Ra||(Ra=document.createElement("canvas"));Ra.width=d;Ra.height=h;var n=Ra.getContext("2d",{Bf:!0}); +n.drawImage(g,0,0);g=n.getImageData(0,0,d,h);return a.MakeImage({width:d,height:h,alphaType:a.AlphaType.Unpremul,colorType:a.ColorType.RGBA_8888,colorSpace:a.ColorSpace.SRGB},g.data,4*d)};a.MakeImage=function(g,d,h){var n=a._malloc(d.length);a.HEAPU8.set(d,n);return a._MakeImage(g,n,d.length,h)};a.MakeVertices=function(g,d,h,n,t,w){var z=t&&t.length||0,F=0;h&&h.length&&(F|=1);n&&n.length&&(F|=2);void 0===w||w||(F|=4);g=new a._VerticesBuilder(g,d.length/2,z,F);m(d,"HEAPF32",g.positions());g.texCoords()&& +m(h,"HEAPF32",g.texCoords());g.colors()&&m(c(n),"HEAPU32",g.colors());g.indices()&&m(t,"HEAPU16",g.indices());return g.detach()};(function(g){g.Md=g.Md||[];g.Md.push(function(){function d(p){if(!p||!p.length)return[];for(var A=[],L=0;Ld)return a._free(g),null;t=new Uint16Array(a.HEAPU8.buffer,g,d);if(h)return h.set(t),a._free(g),h;h=Uint16Array.from(t);a._free(g);return h};a.Font.prototype.getGlyphIntercepts=function(g,d,h,n){var t=m(g,"HEAPU16"),w=m(d,"HEAPF32");return this._getGlyphIntercepts(t, +g.length,!(g&&g._ck),w,d.length,!(d&&d._ck),h,n)};a.Font.prototype.getGlyphWidths=function(g,d,h){var n=m(g,"HEAPU16"),t=a._malloc(4*g.length);this._getGlyphWidthBounds(n,g.length,t,M,d||null);d=new Float32Array(a.HEAPU8.buffer,t,g.length);k(n,g);if(h)return h.set(d),a._free(t),h;g=Float32Array.from(d);a._free(t);return g};a.FontMgr.FromData=function(){if(!arguments.length)return null;var g=arguments;1===g.length&&Array.isArray(g[0])&&(g=arguments[0]);if(!g.length)return null;for(var d=[],h=[],n= +0;nd)return a._free(g),null;t=new Uint16Array(a.HEAPU8.buffer,g,d);if(h)return h.set(t),a._free(g),h;h=Uint16Array.from(t);a._free(g);return h};a.TextBlob.MakeOnPath=function(g,d,h,n){if(g&&g.length&&d&&d.countPoints()){if(1===d.countPoints())return this.MakeFromText(g,h);n||(n=0);var t=h.getGlyphIDs(g);t=h.getGlyphWidths(t);var w=[];d=new a.ContourMeasureIter(d,!1,1);for(var z=d.next(),F=new Float32Array(4),K=0;Kz.length()){z.delete();z= +d.next();if(!z){g=g.substring(0,K);break}n=I/2}z.getPosTan(n,F);var T=F[2],p=F[3];w.push(T,p,F[0]-I/2*T,F[1]-I/2*p);n+=I/2}g=this.MakeFromRSXform(g,w,h);z&&z.delete();d.delete();return g}};a.TextBlob.MakeFromRSXform=function(g,d,h){var n=ja(g)+1,t=a._malloc(n);ka(g,C,t,n);g=m(d,"HEAPF32");h=a.TextBlob._MakeFromRSXform(t,n-1,g,h);a._free(t);return h?h:null};a.TextBlob.MakeFromRSXformGlyphs=function(g,d,h){var n=m(g,"HEAPU16");d=m(d,"HEAPF32");h=a.TextBlob._MakeFromRSXformGlyphs(n,2*g.length,d,h);k(n, +g);return h?h:null};a.TextBlob.MakeFromGlyphs=function(g,d){var h=m(g,"HEAPU16");d=a.TextBlob._MakeFromGlyphs(h,2*g.length,d);k(h,g);return d?d:null};a.TextBlob.MakeFromText=function(g,d){var h=ja(g)+1,n=a._malloc(h);ka(g,C,n,h);g=a.TextBlob._MakeFromText(n,h-1,d);a._free(n);return g?g:null};a.MallocGlyphIDs=function(g){return a.Malloc(Uint16Array,g)}});a.Md=a.Md||[];a.Md.push(function(){a.MakePicture=function(g){g=new Uint8Array(g);var d=a._malloc(g.byteLength);a.HEAPU8.set(g,d);return(g=a._MakePicture(d, +g.byteLength))?g:null}});a.Md=a.Md||[];a.Md.push(function(){a.RuntimeEffect.Make=function(g,d){return a.RuntimeEffect._Make(g,{onError:d||function(h){console.log("RuntimeEffect error",h)}})};a.RuntimeEffect.prototype.makeShader=function(g,d){var h=!g._ck,n=m(g,"HEAPF32");d=q(d);return this._makeShader(n,4*g.length,h,d)};a.RuntimeEffect.prototype.makeShaderWithChildren=function(g,d,h){var n=!g._ck,t=m(g,"HEAPF32");h=q(h);for(var w=[],z=0;z{throw b;},qa="object"==typeof window,ra="function"==typeof importScripts,sa="object"==typeof process&&"object"==typeof process.versions&&"string"==typeof process.versions.node,ta="",va,wa,ya; +if(sa){var fs=require("fs"),za=require("path");ta=ra?za.dirname(ta)+"/":__dirname+"/";va=(a,b)=>{a=a.startsWith("file://")?new URL(a):za.normalize(a);return fs.readFileSync(a,b?void 0:"utf8")};ya=a=>{a=va(a,!0);a.buffer||(a=new Uint8Array(a));return a};wa=(a,b,c)=>{a=a.startsWith("file://")?new URL(a):za.normalize(a);fs.readFile(a,function(e,f){e?c(e):b(f.buffer)})};1process.versions.node.split(".")[0])process.on("unhandledRejection", +function(a){throw a;});oa=(a,b)=>{if(noExitRuntime)throw process.exitCode=a,b;if(!(b instanceof Ba)){var c=b;b&&"object"==typeof b&&b.stack&&(c=[b,b.stack]);Ca("exiting due to exception: "+c)}process.exit(a)};r.inspect=function(){return"[Emscripten Module object]"}}else if(qa||ra)ra?ta=self.location.href:"undefined"!=typeof document&&document.currentScript&&(ta=document.currentScript.src),_scriptDir&&(ta=_scriptDir),0!==ta.indexOf("blob:")?ta=ta.substr(0,ta.replace(/[?#].*/,"").lastIndexOf("/")+1): +ta="",va=a=>{var b=new XMLHttpRequest;b.open("GET",a,!1);b.send(null);return b.responseText},ra&&(ya=a=>{var b=new XMLHttpRequest;b.open("GET",a,!1);b.responseType="arraybuffer";b.send(null);return new Uint8Array(b.response)}),wa=(a,b,c)=>{var e=new XMLHttpRequest;e.open("GET",a,!0);e.responseType="arraybuffer";e.onload=()=>{200==e.status||0==e.status&&e.response?b(e.response):c()};e.onerror=c;e.send(null)};var Da=r.print||console.log.bind(console),Ca=r.printErr||console.warn.bind(console); +Object.assign(r,la);la=null;r.thisProgram&&(na=r.thisProgram);r.quit&&(oa=r.quit);var Ea;r.wasmBinary&&(Ea=r.wasmBinary);var noExitRuntime=r.noExitRuntime||!0;"object"!=typeof WebAssembly&&Fa("no native wasm support detected");var Ga,Ha=!1,Ia="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0; +function Ja(a,b,c){var e=b+c;for(c=b;a[c]&&!(c>=e);)++c;if(16f?e+=String.fromCharCode(f):(f-=65536,e+=String.fromCharCode(55296|f>>10,56320|f&1023))}}else e+=String.fromCharCode(f)}return e}function Ka(a,b){return a?Ja(C,a,b):""} +function ka(a,b,c,e){if(!(0=m){var l=a.charCodeAt(++k);m=65536+((m&1023)<<10)|l&1023}if(127>=m){if(c>=e)break;b[c++]=m}else{if(2047>=m){if(c+1>=e)break;b[c++]=192|m>>6}else{if(65535>=m){if(c+2>=e)break;b[c++]=224|m>>12}else{if(c+3>=e)break;b[c++]=240|m>>18;b[c++]=128|m>>12&63}b[c++]=128|m>>6&63}b[c++]=128|m&63}}b[c]=0;return c-f} +function ja(a){for(var b=0,c=0;c=e?b++:2047>=e?b+=2:55296<=e&&57343>=e?(b+=4,++c):b+=3}return b}var Ma,C,Na,Oa,G,J,N,Pa;function Qa(){var a=Ga.buffer;r.HEAP8=Ma=new Int8Array(a);r.HEAP16=Na=new Int16Array(a);r.HEAP32=G=new Int32Array(a);r.HEAPU8=C=new Uint8Array(a);r.HEAPU16=Oa=new Uint16Array(a);r.HEAPU32=J=new Uint32Array(a);r.HEAPF32=N=new Float32Array(a);r.HEAPF64=Pa=new Float64Array(a)}var Sa,Ta=[],Ua=[],Va=[]; +function Wa(){var a=r.preRun.shift();Ta.unshift(a)}var Xa=0,Ya=null,Za=null;function Fa(a){if(r.onAbort)r.onAbort(a);a="Aborted("+a+")";Ca(a);Ha=!0;a=new WebAssembly.RuntimeError(a+". Build with -sASSERTIONS for more info.");ba(a);throw a;}function $a(a){return a.startsWith("data:application/octet-stream;base64,")}var ab;ab="canvaskit.wasm";if(!$a(ab)){var bb=ab;ab=r.locateFile?r.locateFile(bb,ta):ta+bb} +function cb(a){try{if(a==ab&&Ea)return new Uint8Array(Ea);if(ya)return ya(a);throw"both async and sync fetching of the wasm failed";}catch(b){Fa(b)}} +function db(a){if(!Ea&&(qa||ra)){if("function"==typeof fetch&&!a.startsWith("file://"))return fetch(a,{credentials:"same-origin"}).then(function(b){if(!b.ok)throw"failed to load wasm binary file at '"+a+"'";return b.arrayBuffer()}).catch(function(){return cb(a)});if(wa)return new Promise(function(b,c){wa(a,function(e){b(new Uint8Array(e))},c)})}return Promise.resolve().then(function(){return cb(a)})} +function eb(a,b,c){return db(a).then(function(e){return WebAssembly.instantiate(e,b)}).then(function(e){return e}).then(c,function(e){Ca("failed to asynchronously prepare wasm: "+e);Fa(e)})} +function fb(a,b){var c=ab;return Ea||"function"!=typeof WebAssembly.instantiateStreaming||$a(c)||c.startsWith("file://")||sa||"function"!=typeof fetch?eb(c,a,b):fetch(c,{credentials:"same-origin"}).then(function(e){return WebAssembly.instantiateStreaming(e,a).then(b,function(f){Ca("wasm streaming compile failed: "+f);Ca("falling back to ArrayBuffer instantiation");return eb(c,a,b)})})}function Ba(a){this.name="ExitStatus";this.message="Program terminated with exit("+a+")";this.status=a} +function hb(a){for(;0>2]=b};this.Me=function(b){J[this.Kd+8>>2]=b};this.Ne=function(){G[this.Kd>>2]=0};this.Le=function(){Ma[this.Kd+12>>0]=0};this.Oe=function(){Ma[this.Kd+13>>0]=0};this.ne=function(b,c){this.Ke();this.Pe(b);this.Me(c);this.Ne();this.Le();this.Oe()};this.Ke=function(){J[this.Kd+16>>2]=0}}var jb=0,kb={};function lb(a){for(;a.length;){var b=a.pop();a.pop()(b)}} +function mb(a){return this.fromWireType(G[a>>2])}var nb={},ob={},pb={};function qb(a){if(void 0===a)return"_unknown";a=a.replace(/[^a-zA-Z0-9_]/g,"$");var b=a.charCodeAt(0);return 48<=b&&57>=b?"_"+a:a}function rb(a,b){a=qb(a);return{[a]:function(){return b.apply(this,arguments)}}[a]} +function sb(a){var b=Error,c=rb(a,function(e){this.name=a;this.message=e;e=Error(e).stack;void 0!==e&&(this.stack=this.toString()+"\n"+e.replace(/^Error(:[^\n]*)?\n/,""))});c.prototype=Object.create(b.prototype);c.prototype.constructor=c;c.prototype.toString=function(){return void 0===this.message?this.name:this.name+": "+this.message};return c}var tb=void 0;function ub(a){throw new tb(a);} +function vb(a,b,c){function e(l){l=c(l);l.length!==a.length&&ub("Mismatched type converter count");for(var q=0;q{ob.hasOwnProperty(l)?f[q]=ob[l]:(k.push(l),nb.hasOwnProperty(l)||(nb[l]=[]),nb[l].push(()=>{f[q]=ob[l];++m;m===k.length&&e(f)}))});0===k.length&&e(f)} +function xb(a){switch(a){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+a);}}var yb=void 0;function O(a){for(var b="";C[a];)b+=yb[C[a++]];return b}var zb=void 0;function P(a){throw new zb(a);} +function wb(a,b,c={}){if(!("argPackAdvance"in b))throw new TypeError("registerType registeredInstance requires argPackAdvance");var e=b.name;a||P('type "'+e+'" must have a positive integer typeid pointer');if(ob.hasOwnProperty(a)){if(c.gf)return;P("Cannot register type '"+e+"' twice")}ob[a]=b;delete pb[a];nb.hasOwnProperty(a)&&(b=nb[a],delete nb[a],b.forEach(f=>f()))}function Ab(a){P(a.kd.Nd.Ld.name+" instance already deleted")}var Bb=!1;function Ib(){} +function Jb(a){--a.count.value;0===a.count.value&&(a.Pd?a.Sd.Wd(a.Pd):a.Nd.Ld.Wd(a.Kd))}function Kb(a,b,c){if(b===c)return a;if(void 0===c.Ud)return null;a=Kb(a,b,c.Ud);return null===a?null:c.Ye(a)}var Lb={},Mb=[];function Nb(){for(;Mb.length;){var a=Mb.pop();a.kd.ce=!1;a["delete"]()}}var Ob=void 0,Pb={};function Qb(a,b){for(void 0===b&&P("ptr should not be undefined");a.Ud;)b=a.ie(b),a=a.Ud;return Pb[b]} +function Rb(a,b){b.Nd&&b.Kd||ub("makeClassHandle requires ptr and ptrType");!!b.Sd!==!!b.Pd&&ub("Both smartPtrType and smartPtr must be specified");b.count={value:1};return Sb(Object.create(a,{kd:{value:b}}))}function Sb(a){if("undefined"===typeof FinalizationRegistry)return Sb=b=>b,a;Bb=new FinalizationRegistry(b=>{Jb(b.kd)});Sb=b=>{var c=b.kd;c.Pd&&Bb.register(b,{kd:c},b);return b};Ib=b=>{Bb.unregister(b)};return Sb(a)}function Tb(){} +function Ub(a,b,c){if(void 0===a[b].Od){var e=a[b];a[b]=function(){a[b].Od.hasOwnProperty(arguments.length)||P("Function '"+c+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+a[b].Od+")!");return a[b].Od[arguments.length].apply(this,arguments)};a[b].Od=[];a[b].Od[e.ae]=e}} +function Vb(a,b,c){r.hasOwnProperty(a)?((void 0===c||void 0!==r[a].Od&&void 0!==r[a].Od[c])&&P("Cannot register public name '"+a+"' twice"),Ub(r,a,a),r.hasOwnProperty(c)&&P("Cannot register multiple overloads of a function with the same number of arguments ("+c+")!"),r[a].Od[c]=b):(r[a]=b,void 0!==c&&(r[a].yf=c))}function Wb(a,b,c,e,f,k,m,l){this.name=a;this.constructor=b;this.de=c;this.Wd=e;this.Ud=f;this.af=k;this.ie=m;this.Ye=l;this.lf=[]} +function Xb(a,b,c){for(;b!==c;)b.ie||P("Expected null or instance of "+c.name+", got an instance of "+b.name),a=b.ie(a),b=b.Ud;return a}function Yb(a,b){if(null===b)return this.we&&P("null is not a valid "+this.name),0;b.kd||P('Cannot pass "'+Zb(b)+'" as a '+this.name);b.kd.Kd||P("Cannot pass deleted object as a pointer of type "+this.name);return Xb(b.kd.Kd,b.kd.Nd.Ld,this.Ld)} +function $b(a,b){if(null===b){this.we&&P("null is not a valid "+this.name);if(this.me){var c=this.xe();null!==a&&a.push(this.Wd,c);return c}return 0}b.kd||P('Cannot pass "'+Zb(b)+'" as a '+this.name);b.kd.Kd||P("Cannot pass deleted object as a pointer of type "+this.name);!this.le&&b.kd.Nd.le&&P("Cannot convert argument of type "+(b.kd.Sd?b.kd.Sd.name:b.kd.Nd.name)+" to parameter type "+this.name);c=Xb(b.kd.Kd,b.kd.Nd.Ld,this.Ld);if(this.me)switch(void 0===b.kd.Pd&&P("Passing raw pointer to smart pointer is illegal"), +this.rf){case 0:b.kd.Sd===this?c=b.kd.Pd:P("Cannot convert argument of type "+(b.kd.Sd?b.kd.Sd.name:b.kd.Nd.name)+" to parameter type "+this.name);break;case 1:c=b.kd.Pd;break;case 2:if(b.kd.Sd===this)c=b.kd.Pd;else{var e=b.clone();c=this.mf(c,ac(function(){e["delete"]()}));null!==a&&a.push(this.Wd,c)}break;default:P("Unsupporting sharing policy")}return c} +function bc(a,b){if(null===b)return this.we&&P("null is not a valid "+this.name),0;b.kd||P('Cannot pass "'+Zb(b)+'" as a '+this.name);b.kd.Kd||P("Cannot pass deleted object as a pointer of type "+this.name);b.kd.Nd.le&&P("Cannot convert argument of type "+b.kd.Nd.name+" to parameter type "+this.name);return Xb(b.kd.Kd,b.kd.Nd.Ld,this.Ld)} +function cc(a,b,c,e,f,k,m,l,q,x,y){this.name=a;this.Ld=b;this.we=c;this.le=e;this.me=f;this.kf=k;this.rf=m;this.Ge=l;this.xe=q;this.mf=x;this.Wd=y;f||void 0!==b.Ud?this.toWireType=$b:(this.toWireType=e?Yb:bc,this.Rd=null)}function dc(a,b,c){r.hasOwnProperty(a)||ub("Replacing nonexistant public symbol");void 0!==r[a].Od&&void 0!==c?r[a].Od[c]=b:(r[a]=b,r[a].ae=c)}function Q(a){return Sa.get(a)} +function ec(a,b){var c=[];return function(){c.length=0;Object.assign(c,arguments);if(a.includes("j")){var e=r["dynCall_"+a];e=c&&c.length?e.apply(null,[b].concat(c)):e.call(null,b)}else e=Q(b).apply(null,c);return e}}function R(a,b){a=O(a);var c=a.includes("j")?ec(a,b):Q(b);"function"!=typeof c&&P("unknown function pointer with signature "+a+": "+b);return c}var fc=void 0;function nc(a){a=oc(a);var b=O(a);pc(a);return b} +function qc(a,b){function c(k){f[k]||ob[k]||(pb[k]?pb[k].forEach(c):(e.push(k),f[k]=!0))}var e=[],f={};b.forEach(c);throw new fc(a+": "+e.map(nc).join([", "]));} +function rc(a,b,c,e,f){var k=b.length;2>k&&P("argTypes array size mismatch! Must at least get return value and 'this' types!");var m=null!==b[1]&&null!==c,l=!1;for(c=1;c>2]);return c}var tc=[],uc=[{},{value:void 0},{value:null},{value:!0},{value:!1}];function vc(a){4{a||P("Cannot use deleted val. handle = "+a);return uc[a].value},ac=a=>{switch(a){case void 0:return 1;case null:return 2;case !0:return 3;case !1:return 4;default:var b=tc.length?tc.pop():uc.length;uc[b]={ye:1,value:a};return b}}; +function xc(a,b,c){switch(b){case 0:return function(e){return this.fromWireType((c?Ma:C)[e])};case 1:return function(e){return this.fromWireType((c?Na:Oa)[e>>1])};case 2:return function(e){return this.fromWireType((c?G:J)[e>>2])};default:throw new TypeError("Unknown integer type: "+a);}}function yc(a,b){var c=ob[a];void 0===c&&P(b+" has unknown type "+nc(a));return c}function Zb(a){if(null===a)return"null";var b=typeof a;return"object"===b||"array"===b||"function"===b?a.toString():""+a} +function zc(a,b){switch(b){case 2:return function(c){return this.fromWireType(N[c>>2])};case 3:return function(c){return this.fromWireType(Pa[c>>3])};default:throw new TypeError("Unknown float type: "+a);}} +function Ac(a,b,c){switch(b){case 0:return c?function(e){return Ma[e]}:function(e){return C[e]};case 1:return c?function(e){return Na[e>>1]}:function(e){return Oa[e>>1]};case 2:return c?function(e){return G[e>>2]}:function(e){return J[e>>2]};default:throw new TypeError("Unknown integer type: "+a);}}var Bc="undefined"!=typeof TextDecoder?new TextDecoder("utf-16le"):void 0; +function Cc(a,b){var c=a>>1;for(var e=c+b/2;!(c>=e)&&Oa[c];)++c;c<<=1;if(32=b/2);++e){var f=Na[a+2*e>>1];if(0==f)break;c+=String.fromCharCode(f)}return c}function Dc(a,b,c){void 0===c&&(c=2147483647);if(2>c)return 0;c-=2;var e=b;c=c<2*a.length?c/2:a.length;for(var f=0;f>1]=a.charCodeAt(f),b+=2;Na[b>>1]=0;return b-e}function Ec(a){return 2*a.length} +function Fc(a,b){for(var c=0,e="";!(c>=b/4);){var f=G[a+4*c>>2];if(0==f)break;++c;65536<=f?(f-=65536,e+=String.fromCharCode(55296|f>>10,56320|f&1023)):e+=String.fromCharCode(f)}return e}function Gc(a,b,c){void 0===c&&(c=2147483647);if(4>c)return 0;var e=b;c=e+c-4;for(var f=0;f=k){var m=a.charCodeAt(++f);k=65536+((k&1023)<<10)|m&1023}G[b>>2]=k;b+=4;if(b+4>c)break}G[b>>2]=0;return b-e} +function Hc(a){for(var b=0,c=0;c=e&&++c;b+=4}return b}var Ic={};function Jc(a){var b=Ic[a];return void 0===b?O(a):b}var Kc=[]; +function Lc(){function a(b){b.$$$embind_global$$$=b;var c="object"==typeof $$$embind_global$$$&&b.$$$embind_global$$$==b;c||delete b.$$$embind_global$$$;return c}if("object"==typeof globalThis)return globalThis;if("object"==typeof $$$embind_global$$$)return $$$embind_global$$$;"object"==typeof global&&a(global)?$$$embind_global$$$=global:"object"==typeof self&&a(self)&&($$$embind_global$$$=self);if("object"==typeof $$$embind_global$$$)return $$$embind_global$$$;throw Error("unable to get global object."); +}function Mc(a){var b=Kc.length;Kc.push(a);return b}function Nc(a,b){for(var c=Array(a),e=0;e>2],"parameter "+e);return c}var Oc=[];function Pc(a){var b=Array(a+1);return function(c,e,f){b[0]=c;for(var k=0;k>2],"parameter "+k);b[k+1]=m.readValueFromPointer(f);f+=m.argPackAdvance}c=new (c.bind.apply(c,b));return ac(c)}}var Qc={},Rc;Rc=sa?()=>{var a=process.hrtime();return 1E3*a[0]+a[1]/1E6}:()=>performance.now(); +function Sc(a){var b=a.getExtension("ANGLE_instanced_arrays");b&&(a.vertexAttribDivisor=function(c,e){b.vertexAttribDivisorANGLE(c,e)},a.drawArraysInstanced=function(c,e,f,k){b.drawArraysInstancedANGLE(c,e,f,k)},a.drawElementsInstanced=function(c,e,f,k,m){b.drawElementsInstancedANGLE(c,e,f,k,m)})} +function Tc(a){var b=a.getExtension("OES_vertex_array_object");b&&(a.createVertexArray=function(){return b.createVertexArrayOES()},a.deleteVertexArray=function(c){b.deleteVertexArrayOES(c)},a.bindVertexArray=function(c){b.bindVertexArrayOES(c)},a.isVertexArray=function(c){return b.isVertexArrayOES(c)})}function Uc(a){var b=a.getExtension("WEBGL_draw_buffers");b&&(a.drawBuffers=function(c,e){b.drawBuffersWEBGL(c,e)})} +var Vc=1,Wc=[],Xc=[],Yc=[],Zc=[],ea=[],$c=[],ad=[],ia=[],bd=[],cd=[],ed={},fd={},gd=4;function U(a){hd||(hd=a)}function ca(a){for(var b=Vc++,c=a.length;ca.version||!b.De)b.De=b.getExtension("EXT_disjoint_timer_query");b.xf=b.getExtension("WEBGL_multi_draw");(b.getSupportedExtensions()||[]).forEach(function(c){c.includes("lose_context")||c.includes("debug")||b.getExtension(c)})}} +var u,hd,ld=[];function md(a,b,c,e){for(var f=0;f>2]=m}} +function nd(a,b,c){if(b){var e=void 0;switch(a){case 36346:e=1;break;case 36344:0!=c&&1!=c&&U(1280);return;case 34814:case 36345:e=0;break;case 34466:var f=X.getParameter(34467);e=f?f.length:0;break;case 33309:if(2>u.version){U(1282);return}e=2*(X.getSupportedExtensions()||[]).length;break;case 33307:case 33308:if(2>u.version){U(1280);return}e=33307==a?3:0}if(void 0===e)switch(f=X.getParameter(a),typeof f){case "number":e=f;break;case "boolean":e=f?1:0;break;case "string":U(1280);return;case "object":if(null=== +f)switch(a){case 34964:case 35725:case 34965:case 36006:case 36007:case 32873:case 34229:case 36662:case 36663:case 35053:case 35055:case 36010:case 35097:case 35869:case 32874:case 36389:case 35983:case 35368:case 34068:e=0;break;default:U(1280);return}else{if(f instanceof Float32Array||f instanceof Uint32Array||f instanceof Int32Array||f instanceof Array){for(a=0;a>2]=f[a];break;case 2:N[b+4*a>>2]=f[a];break;case 4:Ma[b+a>>0]=f[a]?1:0}return}try{e=f.name|0}catch(k){U(1280); +Ca("GL_INVALID_ENUM in glGet"+c+"v: Unknown object returned from WebGL getParameter("+a+")! (error: "+k+")");return}}break;default:U(1280);Ca("GL_INVALID_ENUM in glGet"+c+"v: Native code calling glGet"+c+"v("+a+") and it returns "+f+" of type "+typeof f+"!");return}switch(c){case 1:c=e;J[b>>2]=c;J[b+4>>2]=(c-J[b>>2])/4294967296;break;case 0:G[b>>2]=e;break;case 2:N[b>>2]=e;break;case 4:Ma[b>>0]=e?1:0}}else U(1281)}function od(a){var b=ja(a)+1,c=pd(b);ka(a,C,c,b);return c} +function qd(a){return"]"==a.slice(-1)&&a.lastIndexOf("[")}function rd(a){a-=5120;return 0==a?Ma:1==a?C:2==a?Na:4==a?G:6==a?N:5==a||28922==a||28520==a||30779==a||30782==a?J:Oa}function sd(a,b,c,e,f){a=rd(a);var k=31-Math.clz32(a.BYTES_PER_ELEMENT),m=gd;return a.subarray(f>>k,f+e*(c*({5:3,6:4,8:2,29502:3,29504:4,26917:2,26918:2,29846:3,29847:4}[b-6402]||1)*(1<>k)} +function Z(a){var b=X.We;if(b){var c=b.he[a];"number"==typeof c&&(b.he[a]=c=X.getUniformLocation(b,b.He[a]+(0Y?-1:0S-v.getDate())E-=S-v.getDate()+1,v.setDate(1),11>H?v.setMonth(H+1):(v.setMonth(0),v.setFullYear(v.getFullYear()+1));else{v.setDate(v.getDate()+E);break}}H=new Date(v.getFullYear()+1,0,4);E=l(new Date(v.getFullYear(), +0,4));H=l(H);return 0>=m(E,v)?0>=m(H,v)?v.getFullYear()+1:v.getFullYear():v.getFullYear()-1}var x=G[e+40>>2];e={uf:G[e>>2],tf:G[e+4>>2],re:G[e+8>>2],ze:G[e+12>>2],se:G[e+16>>2],Zd:G[e+20>>2],Vd:G[e+24>>2],Yd:G[e+28>>2],Af:G[e+32>>2],sf:G[e+36>>2],vf:x?Ka(x):""};c=Ka(c);x={"%c":"%a %b %d %H:%M:%S %Y","%D":"%m/%d/%y","%F":"%Y-%m-%d","%h":"%b","%r":"%I:%M:%S %p","%R":"%H:%M","%T":"%H:%M:%S","%x":"%m/%d/%y","%X":"%H:%M:%S","%Ec":"%c","%EC":"%C","%Ex":"%m/%d/%y","%EX":"%H:%M:%S","%Ey":"%y","%EY":"%Y", +"%Od":"%d","%Oe":"%e","%OH":"%H","%OI":"%I","%Om":"%m","%OM":"%M","%OS":"%S","%Ou":"%u","%OU":"%U","%OV":"%V","%Ow":"%w","%OW":"%W","%Oy":"%y"};for(var y in x)c=c.replace(new RegExp(y,"g"),x[y]);var B="Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),D="January February March April May June July August September October November December".split(" ");x={"%a":function(v){return B[v.Vd].substring(0,3)},"%A":function(v){return B[v.Vd]},"%b":function(v){return D[v.se].substring(0,3)}, +"%B":function(v){return D[v.se]},"%C":function(v){return k((v.Zd+1900)/100|0,2)},"%d":function(v){return k(v.ze,2)},"%e":function(v){return f(v.ze,2," ")},"%g":function(v){return q(v).toString().substring(2)},"%G":function(v){return q(v)},"%H":function(v){return k(v.re,2)},"%I":function(v){v=v.re;0==v?v=12:12v.re?"AM":"PM"},"%S":function(v){return k(v.uf,2)},"%t":function(){return"\t"},"%u":function(v){return v.Vd||7},"%U":function(v){return k(Math.floor((v.Yd+7-v.Vd)/7),2)},"%V":function(v){var E=Math.floor((v.Yd+7-(v.Vd+6)%7)/7);2>=(v.Vd+371-v.Yd-2)%7&&E++;if(E)53==E&&(H=(v.Vd+371-v.Yd)%7,4==H||3==H&&zd(v.Zd)||(E=1));else{E=52;var H=(v.Vd+7-v.Yd-1)%7;(4==H||5==H&&zd(v.Zd%400-1))&&E++}return k(E,2)},"%w":function(v){return v.Vd},"%W":function(v){return k(Math.floor((v.Yd+ +7-(v.Vd+6)%7)/7),2)},"%y":function(v){return(v.Zd+1900).toString().substring(2)},"%Y":function(v){return v.Zd+1900},"%z":function(v){v=v.sf;var E=0<=v;v=Math.abs(v)/60;return(E?"+":"-")+String("0000"+(v/60*100+v%60)).slice(-4)},"%Z":function(v){return v.vf},"%%":function(){return"%"}};c=c.replace(/%%/g,"\x00\x00");for(y in x)c.includes(y)&&(c=c.replace(new RegExp(y,"g"),x[y](e)));c=c.replace(/\0\0/g,"%");y=Cd(c);if(y.length>b)return 0;Ma.set(y,a);return y.length-1}tb=r.InternalError=sb("InternalError"); +for(var Ed=Array(256),Fd=0;256>Fd;++Fd)Ed[Fd]=String.fromCharCode(Fd);yb=Ed;zb=r.BindingError=sb("BindingError");Tb.prototype.isAliasOf=function(a){if(!(this instanceof Tb&&a instanceof Tb))return!1;var b=this.kd.Nd.Ld,c=this.kd.Kd,e=a.kd.Nd.Ld;for(a=a.kd.Kd;b.Ud;)c=b.ie(c),b=b.Ud;for(;e.Ud;)a=e.ie(a),e=e.Ud;return b===e&&c===a}; +Tb.prototype.clone=function(){this.kd.Kd||Ab(this);if(this.kd.ge)return this.kd.count.value+=1,this;var a=Sb,b=Object,c=b.create,e=Object.getPrototypeOf(this),f=this.kd;a=a(c.call(b,e,{kd:{value:{count:f.count,ce:f.ce,ge:f.ge,Kd:f.Kd,Nd:f.Nd,Pd:f.Pd,Sd:f.Sd}}}));a.kd.count.value+=1;a.kd.ce=!1;return a};Tb.prototype["delete"]=function(){this.kd.Kd||Ab(this);this.kd.ce&&!this.kd.ge&&P("Object already scheduled for deletion");Ib(this);Jb(this.kd);this.kd.ge||(this.kd.Pd=void 0,this.kd.Kd=void 0)}; +Tb.prototype.isDeleted=function(){return!this.kd.Kd};Tb.prototype.deleteLater=function(){this.kd.Kd||Ab(this);this.kd.ce&&!this.kd.ge&&P("Object already scheduled for deletion");Mb.push(this);1===Mb.length&&Ob&&Ob(Nb);this.kd.ce=!0;return this};r.getInheritedInstanceCount=function(){return Object.keys(Pb).length};r.getLiveInheritedInstances=function(){var a=[],b;for(b in Pb)Pb.hasOwnProperty(b)&&a.push(Pb[b]);return a};r.flushPendingDeletes=Nb;r.setDelayFunction=function(a){Ob=a;Mb.length&&Ob&&Ob(Nb)}; +cc.prototype.bf=function(a){this.Ge&&(a=this.Ge(a));return a};cc.prototype.Be=function(a){this.Wd&&this.Wd(a)};cc.prototype.argPackAdvance=8;cc.prototype.readValueFromPointer=mb;cc.prototype.deleteObject=function(a){if(null!==a)a["delete"]()}; +cc.prototype.fromWireType=function(a){function b(){return this.me?Rb(this.Ld.de,{Nd:this.kf,Kd:c,Sd:this,Pd:a}):Rb(this.Ld.de,{Nd:this,Kd:a})}var c=this.bf(a);if(!c)return this.Be(a),null;var e=Qb(this.Ld,c);if(void 0!==e){if(0===e.kd.count.value)return e.kd.Kd=c,e.kd.Pd=a,e.clone();e=e.clone();this.Be(a);return e}e=this.Ld.af(c);e=Lb[e];if(!e)return b.call(this);e=this.le?e.Ve:e.pointerType;var f=Kb(c,this.Ld,e.Ld);return null===f?b.call(this):this.me?Rb(e.Ld.de,{Nd:e,Kd:f,Sd:this,Pd:a}):Rb(e.Ld.de, +{Nd:e,Kd:f})};fc=r.UnboundTypeError=sb("UnboundTypeError");r.count_emval_handles=function(){for(var a=0,b=5;bGd;++Gd)ld.push(Array(Gd));var Hd=new Float32Array(288);for(Gd=0;288>Gd;++Gd)td[Gd]=Hd.subarray(0,Gd+1);var Id=new Int32Array(288);for(Gd=0;288>Gd;++Gd)ud[Gd]=Id.subarray(0,Gd+1); +var Wd={G:function(a,b,c){(new ib(a)).ne(b,c);jb++;throw a;},U:function(){return 0},tb:function(){},vb:function(){return 0},qb:function(){},rb:function(){},V:function(){},sb:function(){},C:function(a){var b=kb[a];delete kb[a];var c=b.xe,e=b.Wd,f=b.Ee,k=f.map(m=>m.ef).concat(f.map(m=>m.pf));vb([a],k,m=>{var l={};f.forEach((q,x)=>{var y=m[x],B=q.cf,D=q.df,v=m[x+f.length],E=q.nf,H=q.qf;l[q.$e]={read:S=>y.fromWireType(B(D,S)),write:(S,Y)=>{var da=[];E(H,S,v.toWireType(da,Y));lb(da)}}});return[{name:b.name, +fromWireType:function(q){var x={},y;for(y in l)x[y]=l[y].read(q);e(q);return x},toWireType:function(q,x){for(var y in l)if(!(y in x))throw new TypeError('Missing field: "'+y+'"');var B=c();for(y in l)l[y].write(B,x[y]);null!==q&&q.push(e,B);return B},argPackAdvance:8,readValueFromPointer:mb,Rd:e}]})},ib:function(){},zb:function(a,b,c,e,f){var k=xb(c);b=O(b);wb(a,{name:b,fromWireType:function(m){return!!m},toWireType:function(m,l){return l?e:f},argPackAdvance:8,readValueFromPointer:function(m){if(1=== +c)var l=Ma;else if(2===c)l=Na;else if(4===c)l=G;else throw new TypeError("Unknown boolean type size: "+b);return this.fromWireType(l[m>>k])},Rd:null})},l:function(a,b,c,e,f,k,m,l,q,x,y,B,D){y=O(y);k=R(f,k);l&&(l=R(m,l));x&&(x=R(q,x));D=R(B,D);var v=qb(y);Vb(v,function(){qc("Cannot construct "+y+" due to unbound types",[e])});vb([a,b,c],e?[e]:[],function(E){E=E[0];if(e){var H=E.Ld;var S=H.de}else S=Tb.prototype;E=rb(v,function(){if(Object.getPrototypeOf(this)!==Y)throw new zb("Use 'new' to construct "+ +y);if(void 0===da.Xd)throw new zb(y+" has no accessible constructor");var La=da.Xd[arguments.length];if(void 0===La)throw new zb("Tried to invoke ctor of "+y+" with invalid number of parameters ("+arguments.length+") - expected ("+Object.keys(da.Xd).toString()+") parameters instead!");return La.apply(this,arguments)});var Y=Object.create(S,{constructor:{value:E}});E.prototype=Y;var da=new Wb(y,E,Y,D,H,k,l,x);H=new cc(y,da,!0,!1,!1);S=new cc(y+"*",da,!1,!1,!1);var ua=new cc(y+" const*",da,!1,!0,!1); +Lb[a]={pointerType:S,Ve:ua};dc(v,E);return[H,S,ua]})},e:function(a,b,c,e,f,k,m){var l=sc(c,e);b=O(b);k=R(f,k);vb([],[a],function(q){function x(){qc("Cannot call "+y+" due to unbound types",l)}q=q[0];var y=q.name+"."+b;b.startsWith("@@")&&(b=Symbol[b.substring(2)]);var B=q.Ld.constructor;void 0===B[b]?(x.ae=c-1,B[b]=x):(Ub(B,b,y),B[b].Od[c-1]=x);vb([],l,function(D){D=[D[0],null].concat(D.slice(1));D=rc(y,D,null,k,m);void 0===B[b].Od?(D.ae=c-1,B[b]=D):B[b].Od[c-1]=D;return[]});return[]})},A:function(a, +b,c,e,f,k){0{qc("Cannot construct "+l.name+" due to unbound types",m)};vb([],m,function(x){x.splice(1,0,null);l.Ld.Xd[b- +1]=rc(q,x,null,f,k);return[]});return[]})},a:function(a,b,c,e,f,k,m,l){var q=sc(c,e);b=O(b);k=R(f,k);vb([],[a],function(x){function y(){qc("Cannot call "+B+" due to unbound types",q)}x=x[0];var B=x.name+"."+b;b.startsWith("@@")&&(b=Symbol[b.substring(2)]);l&&x.Ld.lf.push(b);var D=x.Ld.de,v=D[b];void 0===v||void 0===v.Od&&v.className!==x.name&&v.ae===c-2?(y.ae=c-2,y.className=x.name,D[b]=y):(Ub(D,b,B),D[b].Od[c-2]=y);vb([],q,function(E){E=rc(B,E,x,k,m);void 0===D[b].Od?(E.ae=c-2,D[b]=E):D[b].Od[c- +2]=E;return[]});return[]})},r:function(a,b,c){a=O(a);vb([],[b],function(e){e=e[0];r[a]=e.fromWireType(c);return[]})},yb:function(a,b){b=O(b);wb(a,{name:b,fromWireType:function(c){var e=wc(c);vc(c);return e},toWireType:function(c,e){return ac(e)},argPackAdvance:8,readValueFromPointer:mb,Rd:null})},j:function(a,b,c,e){function f(){}c=xb(c);b=O(b);f.values={};wb(a,{name:b,constructor:f,fromWireType:function(k){return this.constructor.values[k]},toWireType:function(k,m){return m.value},argPackAdvance:8, +readValueFromPointer:xc(b,c,e),Rd:null});Vb(b,f)},b:function(a,b,c){var e=yc(a,"enum");b=O(b);a=e.constructor;e=Object.create(e.constructor.prototype,{value:{value:c},constructor:{value:rb(e.name+"_"+b,function(){})}});a.values[c]=e;a[b]=e},X:function(a,b,c){c=xb(c);b=O(b);wb(a,{name:b,fromWireType:function(e){return e},toWireType:function(e,f){return f},argPackAdvance:8,readValueFromPointer:zc(b,c),Rd:null})},t:function(a,b,c,e,f,k){var m=sc(b,c);a=O(a);f=R(e,f);Vb(a,function(){qc("Cannot call "+ +a+" due to unbound types",m)},b-1);vb([],m,function(l){l=[l[0],null].concat(l.slice(1));dc(a,rc(a,l,null,f,k),b-1);return[]})},E:function(a,b,c,e,f){b=O(b);-1===f&&(f=4294967295);f=xb(c);var k=l=>l;if(0===e){var m=32-8*c;k=l=>l<>>m}c=b.includes("unsigned")?function(l,q){return q>>>0}:function(l,q){return q};wb(a,{name:b,fromWireType:k,toWireType:c,argPackAdvance:8,readValueFromPointer:Ac(b,f,0!==e),Rd:null})},s:function(a,b,c){function e(k){k>>=2;var m=J;return new f(m.buffer,m[k+1],m[k])}var f= +[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][b];c=O(c);wb(a,{name:c,fromWireType:e,argPackAdvance:8,readValueFromPointer:e},{gf:!0})},q:function(a,b,c,e,f,k,m,l,q,x,y,B){c=O(c);k=R(f,k);l=R(m,l);x=R(q,x);B=R(y,B);vb([a],[b],function(D){D=D[0];return[new cc(c,D.Ld,!1,!1,!0,D,e,k,l,x,B)]})},W:function(a,b){b=O(b);var c="std::string"===b;wb(a,{name:b,fromWireType:function(e){var f=J[e>>2],k=e+4;if(c)for(var m=k,l=0;l<=f;++l){var q=k+l;if(l==f||0==C[q]){m= +Ka(m,q-m);if(void 0===x)var x=m;else x+=String.fromCharCode(0),x+=m;m=q+1}}else{x=Array(f);for(l=0;l>2]=k;if(c&&m)ka(f,C,q,k+1);else if(m)for(m=0;mOa;var l=1}else 4===b&&(e=Fc,f=Gc,k=Hc,m=()=>J,l=2);wb(a,{name:c,fromWireType:function(q){for(var x=J[q>>2],y=m(),B,D=q+4,v=0;v<=x;++v){var E=q+4+v*b;if(v==x||0==y[E>>l])D=e(D,E-D),void 0===B?B=D:(B+= +String.fromCharCode(0),B+=D),D=E+b}pc(q);return B},toWireType:function(q,x){"string"!=typeof x&&P("Cannot pass non-string to C++ string type "+c);var y=k(x),B=pd(4+y+b);J[B>>2]=y>>l;f(x,B+4,y+b);null!==q&&q.push(pc,B);return B},argPackAdvance:8,readValueFromPointer:mb,Rd:function(q){pc(q)}})},D:function(a,b,c,e,f,k){kb[a]={name:O(b),xe:R(c,e),Wd:R(f,k),Ee:[]}},d:function(a,b,c,e,f,k,m,l,q,x){kb[a].Ee.push({$e:O(b),ef:c,cf:R(e,f),df:k,pf:m,nf:R(l,q),qf:x})},Ab:function(a,b){b=O(b);wb(a,{jf:!0,name:b, +argPackAdvance:0,fromWireType:function(){},toWireType:function(){}})},xb:function(){return!0},kb:function(){throw Infinity;},F:function(a,b,c){a=wc(a);b=yc(b,"emval::as");var e=[],f=ac(e);J[c>>2]=f;return b.toWireType(e,a)},P:function(a,b,c,e,f){a=Kc[a];b=wc(b);c=Jc(c);var k=[];J[e>>2]=ac(k);return a(b,c,k,f)},x:function(a,b,c,e){a=Kc[a];b=wc(b);c=Jc(c);a(b,c,null,e)},c:vc,K:function(a){if(0===a)return ac(Lc());a=Jc(a);return ac(Lc()[a])},u:function(a,b){var c=Nc(a,b),e=c[0];b=e.name+"_$"+c.slice(1).map(function(m){return m.name}).join("_")+ +"$";var f=Oc[b];if(void 0!==f)return f;var k=Array(a-1);f=Mc((m,l,q,x)=>{for(var y=0,B=0;B>>0)+4294967296*e)},ca:function(a,b,c,e){X.colorMask(!!a,!!b,!!c,!!e)},da:function(a){X.compileShader($c[a])},ea:function(a,b,c,e,f,k,m,l){2<= +u.version?X.be||!m?X.compressedTexImage2D(a,b,c,e,f,k,m,l):X.compressedTexImage2D(a,b,c,e,f,k,C,l,m):X.compressedTexImage2D(a,b,c,e,f,k,l?C.subarray(l,l+m):null)},fa:function(a,b,c,e,f,k,m,l,q){2<=u.version?X.be||!l?X.compressedTexSubImage2D(a,b,c,e,f,k,m,l,q):X.compressedTexSubImage2D(a,b,c,e,f,k,m,C,q,l):X.compressedTexSubImage2D(a,b,c,e,f,k,m,q?C.subarray(q,q+l):null)},Qb:function(a,b,c,e,f){X.copyBufferSubData(a,b,c,e,f)},ga:function(a,b,c,e,f,k,m,l){X.copyTexSubImage2D(a,b,c,e,f,k,m,l)},ha:function(){var a= +ca(Xc),b=X.createProgram();b.name=a;b.qe=b.oe=b.pe=0;b.Ae=1;Xc[a]=b;return a},ia:function(a){var b=ca($c);$c[b]=X.createShader(a);return b},ja:function(a){X.cullFace(a)},ka:function(a,b){for(var c=0;c>2],f=Wc[e];f&&(X.deleteBuffer(f),f.name=0,Wc[e]=null,e==X.ue&&(X.ue=0),e==X.be&&(X.be=0))}},_b:function(a,b){for(var c=0;c>2],f=Yc[e];f&&(X.deleteFramebuffer(f),f.name=0,Yc[e]=null)}},la:function(a){if(a){var b=Xc[a];b?(X.deleteProgram(b),b.name=0,Xc[a]=null): +U(1281)}},$b:function(a,b){for(var c=0;c>2],f=Zc[e];f&&(X.deleteRenderbuffer(f),f.name=0,Zc[e]=null)}},Jb:function(a,b){for(var c=0;c>2],f=bd[e];f&&(X.deleteSampler(f),f.name=0,bd[e]=null)}},ma:function(a){if(a){var b=$c[a];b?(X.deleteShader(b),$c[a]=null):U(1281)}},Rb:function(a){if(a){var b=cd[a];b?(X.deleteSync(b),b.name=0,cd[a]=null):U(1281)}},na:function(a,b){for(var c=0;c>2],f=ea[e];f&&(X.deleteTexture(f),f.name=0,ea[e]=null)}}, +rc:function(a,b){for(var c=0;c>2];X.deleteVertexArray(ad[e]);ad[e]=null}},uc:function(a,b){for(var c=0;c>2];X.deleteVertexArray(ad[e]);ad[e]=null}},oa:function(a){X.depthMask(!!a)},pa:function(a){X.disable(a)},qa:function(a){X.disableVertexAttribArray(a)},ra:function(a,b,c){X.drawArrays(a,b,c)},oc:function(a,b,c,e){X.drawArraysInstanced(a,b,c,e)},mc:function(a,b,c,e,f){X.Ce.drawArraysInstancedBaseInstanceWEBGL(a,b,c,e,f)},kc:function(a,b){for(var c=ld[a], +e=0;e>2];X.drawBuffers(c)},sa:function(a,b,c,e){X.drawElements(a,b,c,e)},pc:function(a,b,c,e,f){X.drawElementsInstanced(a,b,c,e,f)},nc:function(a,b,c,e,f,k,m){X.Ce.drawElementsInstancedBaseVertexBaseInstanceWEBGL(a,b,c,e,f,k,m)},ec:function(a,b,c,e,f,k){X.drawElements(a,e,f,k)},ta:function(a){X.enable(a)},ua:function(a){X.enableVertexAttribArray(a)},Ob:function(a,b){return(a=X.fenceSync(a,b))?(b=ca(cd),a.name=b,cd[b]=a,b):0},va:function(){X.finish()},wa:function(){X.flush()},ac:function(a, +b,c,e){X.framebufferRenderbuffer(a,b,c,Zc[e])},bc:function(a,b,c,e,f){X.framebufferTexture2D(a,b,c,ea[e],f)},xa:function(a){X.frontFace(a)},ya:function(a,b){md(a,b,"createBuffer",Wc)},cc:function(a,b){md(a,b,"createFramebuffer",Yc)},dc:function(a,b){md(a,b,"createRenderbuffer",Zc)},Kb:function(a,b){md(a,b,"createSampler",bd)},za:function(a,b){md(a,b,"createTexture",ea)},sc:function(a,b){md(a,b,"createVertexArray",ad)},vc:function(a,b){md(a,b,"createVertexArray",ad)},Ub:function(a){X.generateMipmap(a)}, +Aa:function(a,b,c){c?G[c>>2]=X.getBufferParameter(a,b):U(1281)},Ba:function(){var a=X.getError()||hd;hd=0;return a},Ca:function(a,b){nd(a,b,2)},Vb:function(a,b,c,e){a=X.getFramebufferAttachmentParameter(a,b,c);if(a instanceof WebGLRenderbuffer||a instanceof WebGLTexture)a=a.name|0;G[e>>2]=a},L:function(a,b){nd(a,b,0)},Da:function(a,b,c,e){a=X.getProgramInfoLog(Xc[a]);null===a&&(a="(unknown error)");b=0>2]=b)},Ea:function(a,b,c){if(c)if(a>=Vc)U(1281);else if(a=Xc[a],35716== +b)a=X.getProgramInfoLog(a),null===a&&(a="(unknown error)"),G[c>>2]=a.length+1;else if(35719==b){if(!a.qe)for(b=0;b>2]=a.qe}else if(35722==b){if(!a.oe)for(b=0;b>2]=a.oe}else if(35381==b){if(!a.pe)for(b=0;b> +2]=a.pe}else G[c>>2]=X.getProgramParameter(a,b);else U(1281)},Wb:function(a,b,c){c?G[c>>2]=X.getRenderbufferParameter(a,b):U(1281)},Fa:function(a,b,c,e){a=X.getShaderInfoLog($c[a]);null===a&&(a="(unknown error)");b=0>2]=b)},Fb:function(a,b,c,e){a=X.getShaderPrecisionFormat(a,b);G[c>>2]=a.rangeMin;G[c+4>>2]=a.rangeMax;G[e>>2]=a.precision},Ga:function(a,b,c){c?35716==b?(a=X.getShaderInfoLog($c[a]),null===a&&(a="(unknown error)"),G[c>>2]=a?a.length+1:0):35720==b?(a=X.getShaderSource($c[a]), +G[c>>2]=a?a.length+1:0):G[c>>2]=X.getShaderParameter($c[a],b):U(1281)},Q:function(a){var b=ed[a];if(!b){switch(a){case 7939:b=X.getSupportedExtensions()||[];b=b.concat(b.map(function(e){return"GL_"+e}));b=od(b.join(" "));break;case 7936:case 7937:case 37445:case 37446:(b=X.getParameter(a))||U(1280);b=b&&od(b);break;case 7938:b=X.getParameter(7938);b=2<=u.version?"OpenGL ES 3.0 ("+b+")":"OpenGL ES 2.0 ("+b+")";b=od(b);break;case 35724:b=X.getParameter(35724);var c=b.match(/^WebGL GLSL ES ([0-9]\.[0-9][0-9]?)(?:$| .*)/); +null!==c&&(3==c[1].length&&(c[1]+="0"),b="OpenGL ES GLSL ES "+c[1]+" ("+b+")");b=od(b);break;default:U(1280)}ed[a]=b}return b},bb:function(a,b){if(2>u.version)return U(1282),0;var c=fd[a];if(c)return 0>b||b>=c.length?(U(1281),0):c[b];switch(a){case 7939:return c=X.getSupportedExtensions()||[],c=c.concat(c.map(function(e){return"GL_"+e})),c=c.map(function(e){return od(e)}),c=fd[a]=c,0>b||b>=c.length?(U(1281),0):c[b];default:return U(1280),0}},Ha:function(a,b){b=Ka(b);if(a=Xc[a]){var c=a,e=c.he,f=c.Ie, +k;if(!e)for(c.he=e={},c.He={},k=0;k>>0,f=b.slice(0,k));if((f=a.Ie[f])&&e>2];X.invalidateFramebuffer(a,e)},Hb:function(a, +b,c,e,f,k,m){for(var l=ld[b],q=0;q>2];X.invalidateSubFramebuffer(a,l,e,f,k,m)},Pb:function(a){return X.isSync(cd[a])},Ia:function(a){return(a=ea[a])?X.isTexture(a):0},Ja:function(a){X.lineWidth(a)},Ka:function(a){a=Xc[a];X.linkProgram(a);a.he=0;a.Ie={}},ic:function(a,b,c,e,f,k){X.Fe.multiDrawArraysInstancedBaseInstanceWEBGL(a,G,b>>2,G,c>>2,G,e>>2,J,f>>2,k)},jc:function(a,b,c,e,f,k,m,l){X.Fe.multiDrawElementsInstancedBaseVertexBaseInstanceWEBGL(a,G,b>>2,c,G,e>>2,G,f>>2,G,k>>2,J, +m>>2,l)},La:function(a,b){3317==a&&(gd=b);X.pixelStorei(a,b)},lc:function(a){X.readBuffer(a)},Ma:function(a,b,c,e,f,k,m){if(2<=u.version)if(X.ue)X.readPixels(a,b,c,e,f,k,m);else{var l=rd(k);X.readPixels(a,b,c,e,f,k,l,m>>31-Math.clz32(l.BYTES_PER_ELEMENT))}else(m=sd(k,f,c,e,m))?X.readPixels(a,b,c,e,f,k,m):U(1280)},Xb:function(a,b,c,e){X.renderbufferStorage(a,b,c,e)},Tb:function(a,b,c,e,f){X.renderbufferStorageMultisample(a,b,c,e,f)},Lb:function(a,b,c){X.samplerParameterf(bd[a],b,c)},Mb:function(a, +b,c){X.samplerParameteri(bd[a],b,c)},Nb:function(a,b,c){X.samplerParameteri(bd[a],b,G[c>>2])},Na:function(a,b,c,e){X.scissor(a,b,c,e)},Oa:function(a,b,c,e){for(var f="",k=0;k>2]:-1;f+=Ka(G[c+4*k>>2],0>m?void 0:m)}X.shaderSource($c[a],f)},Pa:function(a,b,c){X.stencilFunc(a,b,c)},Qa:function(a,b,c,e){X.stencilFuncSeparate(a,b,c,e)},Ra:function(a){X.stencilMask(a)},Sa:function(a,b){X.stencilMaskSeparate(a,b)},Ta:function(a,b,c){X.stencilOp(a,b,c)},Ua:function(a,b,c,e){X.stencilOpSeparate(a, +b,c,e)},Va:function(a,b,c,e,f,k,m,l,q){if(2<=u.version)if(X.be)X.texImage2D(a,b,c,e,f,k,m,l,q);else if(q){var x=rd(l);X.texImage2D(a,b,c,e,f,k,m,l,x,q>>31-Math.clz32(x.BYTES_PER_ELEMENT))}else X.texImage2D(a,b,c,e,f,k,m,l,null);else X.texImage2D(a,b,c,e,f,k,m,l,q?sd(l,m,e,f,q):null)},Wa:function(a,b,c){X.texParameterf(a,b,c)},Xa:function(a,b,c){X.texParameterf(a,b,N[c>>2])},Ya:function(a,b,c){X.texParameteri(a,b,c)},Za:function(a,b,c){X.texParameteri(a,b,G[c>>2])},fc:function(a,b,c,e,f){X.texStorage2D(a, +b,c,e,f)},_a:function(a,b,c,e,f,k,m,l,q){if(2<=u.version)if(X.be)X.texSubImage2D(a,b,c,e,f,k,m,l,q);else if(q){var x=rd(l);X.texSubImage2D(a,b,c,e,f,k,m,l,x,q>>31-Math.clz32(x.BYTES_PER_ELEMENT))}else X.texSubImage2D(a,b,c,e,f,k,m,l,null);else x=null,q&&(x=sd(l,m,f,k,q)),X.texSubImage2D(a,b,c,e,f,k,m,l,x)},$a:function(a,b){X.uniform1f(Z(a),b)},ab:function(a,b,c){if(2<=u.version)b&&X.uniform1fv(Z(a),N,c>>2,b);else{if(288>=b)for(var e=td[b-1],f=0;f>2];else e=N.subarray(c>>2,c+4* +b>>2);X.uniform1fv(Z(a),e)}},Qc:function(a,b){X.uniform1i(Z(a),b)},Rc:function(a,b,c){if(2<=u.version)b&&X.uniform1iv(Z(a),G,c>>2,b);else{if(288>=b)for(var e=ud[b-1],f=0;f>2];else e=G.subarray(c>>2,c+4*b>>2);X.uniform1iv(Z(a),e)}},Sc:function(a,b,c){X.uniform2f(Z(a),b,c)},Tc:function(a,b,c){if(2<=u.version)b&&X.uniform2fv(Z(a),N,c>>2,2*b);else{if(144>=b)for(var e=td[2*b-1],f=0;f<2*b;f+=2)e[f]=N[c+4*f>>2],e[f+1]=N[c+(4*f+4)>>2];else e=N.subarray(c>>2,c+8*b>>2);X.uniform2fv(Z(a), +e)}},Pc:function(a,b,c){X.uniform2i(Z(a),b,c)},Oc:function(a,b,c){if(2<=u.version)b&&X.uniform2iv(Z(a),G,c>>2,2*b);else{if(144>=b)for(var e=ud[2*b-1],f=0;f<2*b;f+=2)e[f]=G[c+4*f>>2],e[f+1]=G[c+(4*f+4)>>2];else e=G.subarray(c>>2,c+8*b>>2);X.uniform2iv(Z(a),e)}},Nc:function(a,b,c,e){X.uniform3f(Z(a),b,c,e)},Mc:function(a,b,c){if(2<=u.version)b&&X.uniform3fv(Z(a),N,c>>2,3*b);else{if(96>=b)for(var e=td[3*b-1],f=0;f<3*b;f+=3)e[f]=N[c+4*f>>2],e[f+1]=N[c+(4*f+4)>>2],e[f+2]=N[c+(4*f+8)>>2];else e=N.subarray(c>> +2,c+12*b>>2);X.uniform3fv(Z(a),e)}},Lc:function(a,b,c,e){X.uniform3i(Z(a),b,c,e)},Kc:function(a,b,c){if(2<=u.version)b&&X.uniform3iv(Z(a),G,c>>2,3*b);else{if(96>=b)for(var e=ud[3*b-1],f=0;f<3*b;f+=3)e[f]=G[c+4*f>>2],e[f+1]=G[c+(4*f+4)>>2],e[f+2]=G[c+(4*f+8)>>2];else e=G.subarray(c>>2,c+12*b>>2);X.uniform3iv(Z(a),e)}},Jc:function(a,b,c,e,f){X.uniform4f(Z(a),b,c,e,f)},Ic:function(a,b,c){if(2<=u.version)b&&X.uniform4fv(Z(a),N,c>>2,4*b);else{if(72>=b){var e=td[4*b-1],f=N;c>>=2;for(var k=0;k<4*b;k+=4){var m= +c+k;e[k]=f[m];e[k+1]=f[m+1];e[k+2]=f[m+2];e[k+3]=f[m+3]}}else e=N.subarray(c>>2,c+16*b>>2);X.uniform4fv(Z(a),e)}},wc:function(a,b,c,e,f){X.uniform4i(Z(a),b,c,e,f)},xc:function(a,b,c){if(2<=u.version)b&&X.uniform4iv(Z(a),G,c>>2,4*b);else{if(72>=b)for(var e=ud[4*b-1],f=0;f<4*b;f+=4)e[f]=G[c+4*f>>2],e[f+1]=G[c+(4*f+4)>>2],e[f+2]=G[c+(4*f+8)>>2],e[f+3]=G[c+(4*f+12)>>2];else e=G.subarray(c>>2,c+16*b>>2);X.uniform4iv(Z(a),e)}},yc:function(a,b,c,e){if(2<=u.version)b&&X.uniformMatrix2fv(Z(a),!!c,N,e>>2,4* +b);else{if(72>=b)for(var f=td[4*b-1],k=0;k<4*b;k+=4)f[k]=N[e+4*k>>2],f[k+1]=N[e+(4*k+4)>>2],f[k+2]=N[e+(4*k+8)>>2],f[k+3]=N[e+(4*k+12)>>2];else f=N.subarray(e>>2,e+16*b>>2);X.uniformMatrix2fv(Z(a),!!c,f)}},zc:function(a,b,c,e){if(2<=u.version)b&&X.uniformMatrix3fv(Z(a),!!c,N,e>>2,9*b);else{if(32>=b)for(var f=td[9*b-1],k=0;k<9*b;k+=9)f[k]=N[e+4*k>>2],f[k+1]=N[e+(4*k+4)>>2],f[k+2]=N[e+(4*k+8)>>2],f[k+3]=N[e+(4*k+12)>>2],f[k+4]=N[e+(4*k+16)>>2],f[k+5]=N[e+(4*k+20)>>2],f[k+6]=N[e+(4*k+24)>>2],f[k+7]= +N[e+(4*k+28)>>2],f[k+8]=N[e+(4*k+32)>>2];else f=N.subarray(e>>2,e+36*b>>2);X.uniformMatrix3fv(Z(a),!!c,f)}},Ac:function(a,b,c,e){if(2<=u.version)b&&X.uniformMatrix4fv(Z(a),!!c,N,e>>2,16*b);else{if(18>=b){var f=td[16*b-1],k=N;e>>=2;for(var m=0;m<16*b;m+=16){var l=e+m;f[m]=k[l];f[m+1]=k[l+1];f[m+2]=k[l+2];f[m+3]=k[l+3];f[m+4]=k[l+4];f[m+5]=k[l+5];f[m+6]=k[l+6];f[m+7]=k[l+7];f[m+8]=k[l+8];f[m+9]=k[l+9];f[m+10]=k[l+10];f[m+11]=k[l+11];f[m+12]=k[l+12];f[m+13]=k[l+13];f[m+14]=k[l+14];f[m+15]=k[l+15]}}else f= +N.subarray(e>>2,e+64*b>>2);X.uniformMatrix4fv(Z(a),!!c,f)}},Bc:function(a){a=Xc[a];X.useProgram(a);X.We=a},Cc:function(a,b){X.vertexAttrib1f(a,b)},Dc:function(a,b){X.vertexAttrib2f(a,N[b>>2],N[b+4>>2])},Ec:function(a,b){X.vertexAttrib3f(a,N[b>>2],N[b+4>>2],N[b+8>>2])},Fc:function(a,b){X.vertexAttrib4f(a,N[b>>2],N[b+4>>2],N[b+8>>2],N[b+12>>2])},gc:function(a,b){X.vertexAttribDivisor(a,b)},hc:function(a,b,c,e,f){X.vertexAttribIPointer(a,b,c,e,f)},Gc:function(a,b,c,e,f,k){X.vertexAttribPointer(a,b,c, +!!e,f,k)},Hc:function(a,b,c,e){X.viewport(a,b,c,e)},db:function(a,b,c,e){X.waitSync(cd[a],b,(c>>>0)+4294967296*e)},lb:function(a){var b=C.length;a>>>=0;if(2147483648=c;c*=2){var e=b*(1+.2/c);e=Math.min(e,a+100663296);var f=Math,k=f.min;e=Math.max(a,e);e+=(65536-e%65536)%65536;a:{var m=Ga.buffer;try{Ga.grow(k.call(f,2147483648,e)-m.byteLength+65535>>>16);Qa();var l=1;break a}catch(q){}l=void 0}if(l)return!0}return!1},fb:function(){return u?u.ff:0},ob:function(a,b){var c=0; +wd().forEach(function(e,f){var k=b+c;f=J[a+4*f>>2]=k;for(k=0;k>0]=e.charCodeAt(k);Ma[f>>0]=0;c+=e.length+1});return 0},pb:function(a,b){var c=wd();J[a>>2]=c.length;var e=0;c.forEach(function(f){e+=f.length+1});J[b>>2]=e;return 0},Bb:function(a){if(!noExitRuntime){if(r.onExit)r.onExit(a);Ha=!0}oa(a,new Ba(a))},M:function(){return 52},gb:function(){return 52},ub:function(){return 52},hb:function(){return 70},S:function(a,b,c,e){for(var f=0,k=0;k>2],l=J[b+4>>2]; +b+=8;for(var q=0;q>2]=f;return 0},n:Jd,m:Kd,k:Ld,O:Md,Z:Nd,Y:Od,w:Pd,y:Qd,p:Rd,v:Sd,Cb:Td,Db:Ud,Eb:Vd,jb:function(a,b,c,e){return Dd(a,b,c,e)}}; +(function(){function a(c){c=c.exports;r.asm=c;Ga=r.asm.ad;Qa();Sa=r.asm.cd;Ua.unshift(r.asm.bd);Xa--;r.monitorRunDependencies&&r.monitorRunDependencies(Xa);if(0==Xa&&(null!==Ya&&(clearInterval(Ya),Ya=null),Za)){var e=Za;Za=null;e()}return c}var b={a:Wd};Xa++;r.monitorRunDependencies&&r.monitorRunDependencies(Xa);if(r.instantiateWasm)try{return r.instantiateWasm(b,a)}catch(c){Ca("Module.instantiateWasm callback failed with error: "+c),ba(c)}fb(b,function(c){a(c.instance)}).catch(ba);return{}})(); +var pc=r._free=function(){return(pc=r._free=r.asm.dd).apply(null,arguments)},pd=r._malloc=function(){return(pd=r._malloc=r.asm.ed).apply(null,arguments)},oc=r.___getTypeName=function(){return(oc=r.___getTypeName=r.asm.fd).apply(null,arguments)};r.__embind_initialize_bindings=function(){return(r.__embind_initialize_bindings=r.asm.gd).apply(null,arguments)};function Xd(){return(Xd=r.asm.hd).apply(null,arguments)}function Yd(){return(Yd=r.asm.id).apply(null,arguments)} +function Zd(){return(Zd=r.asm.jd).apply(null,arguments)}r.dynCall_viji=function(){return(r.dynCall_viji=r.asm.ld).apply(null,arguments)};r.dynCall_vijiii=function(){return(r.dynCall_vijiii=r.asm.md).apply(null,arguments)};r.dynCall_viiiiij=function(){return(r.dynCall_viiiiij=r.asm.nd).apply(null,arguments)};r.dynCall_iiiji=function(){return(r.dynCall_iiiji=r.asm.od).apply(null,arguments)};r.dynCall_jii=function(){return(r.dynCall_jii=r.asm.pd).apply(null,arguments)}; +r.dynCall_vij=function(){return(r.dynCall_vij=r.asm.qd).apply(null,arguments)};r.dynCall_iiij=function(){return(r.dynCall_iiij=r.asm.rd).apply(null,arguments)};r.dynCall_iiiij=function(){return(r.dynCall_iiiij=r.asm.sd).apply(null,arguments)};r.dynCall_viij=function(){return(r.dynCall_viij=r.asm.td).apply(null,arguments)};r.dynCall_viiij=function(){return(r.dynCall_viiij=r.asm.ud).apply(null,arguments)};r.dynCall_ji=function(){return(r.dynCall_ji=r.asm.vd).apply(null,arguments)}; +r.dynCall_iij=function(){return(r.dynCall_iij=r.asm.wd).apply(null,arguments)};r.dynCall_jiiiiii=function(){return(r.dynCall_jiiiiii=r.asm.xd).apply(null,arguments)};r.dynCall_jiiiiji=function(){return(r.dynCall_jiiiiji=r.asm.yd).apply(null,arguments)};r.dynCall_iijj=function(){return(r.dynCall_iijj=r.asm.zd).apply(null,arguments)};r.dynCall_iiji=function(){return(r.dynCall_iiji=r.asm.Ad).apply(null,arguments)};r.dynCall_iijjiii=function(){return(r.dynCall_iijjiii=r.asm.Bd).apply(null,arguments)}; +r.dynCall_vijjjii=function(){return(r.dynCall_vijjjii=r.asm.Cd).apply(null,arguments)};r.dynCall_jiji=function(){return(r.dynCall_jiji=r.asm.Dd).apply(null,arguments)};r.dynCall_viijii=function(){return(r.dynCall_viijii=r.asm.Ed).apply(null,arguments)};r.dynCall_iiiiij=function(){return(r.dynCall_iiiiij=r.asm.Fd).apply(null,arguments)};r.dynCall_iiiiijj=function(){return(r.dynCall_iiiiijj=r.asm.Gd).apply(null,arguments)}; +r.dynCall_iiiiiijj=function(){return(r.dynCall_iiiiiijj=r.asm.Hd).apply(null,arguments)};function Sd(a,b,c,e,f){var k=Yd();try{Q(a)(b,c,e,f)}catch(m){Zd(k);if(m!==m+0)throw m;Xd(1,0)}}function Kd(a,b,c){var e=Yd();try{return Q(a)(b,c)}catch(f){Zd(e);if(f!==f+0)throw f;Xd(1,0)}}function Qd(a,b,c){var e=Yd();try{Q(a)(b,c)}catch(f){Zd(e);if(f!==f+0)throw f;Xd(1,0)}}function Jd(a,b){var c=Yd();try{return Q(a)(b)}catch(e){Zd(c);if(e!==e+0)throw e;Xd(1,0)}} +function Pd(a,b){var c=Yd();try{Q(a)(b)}catch(e){Zd(c);if(e!==e+0)throw e;Xd(1,0)}}function Ld(a,b,c,e){var f=Yd();try{return Q(a)(b,c,e)}catch(k){Zd(f);if(k!==k+0)throw k;Xd(1,0)}}function Vd(a,b,c,e,f,k,m,l,q,x){var y=Yd();try{Q(a)(b,c,e,f,k,m,l,q,x)}catch(B){Zd(y);if(B!==B+0)throw B;Xd(1,0)}}function Rd(a,b,c,e){var f=Yd();try{Q(a)(b,c,e)}catch(k){Zd(f);if(k!==k+0)throw k;Xd(1,0)}}function Ud(a,b,c,e,f,k,m){var l=Yd();try{Q(a)(b,c,e,f,k,m)}catch(q){Zd(l);if(q!==q+0)throw q;Xd(1,0)}} +function Md(a,b,c,e,f){var k=Yd();try{return Q(a)(b,c,e,f)}catch(m){Zd(k);if(m!==m+0)throw m;Xd(1,0)}}function Nd(a,b,c,e,f,k,m){var l=Yd();try{return Q(a)(b,c,e,f,k,m)}catch(q){Zd(l);if(q!==q+0)throw q;Xd(1,0)}}function Td(a,b,c,e,f,k){var m=Yd();try{Q(a)(b,c,e,f,k)}catch(l){Zd(m);if(l!==l+0)throw l;Xd(1,0)}}function Od(a,b,c,e,f,k,m,l,q,x){var y=Yd();try{return Q(a)(b,c,e,f,k,m,l,q,x)}catch(B){Zd(y);if(B!==B+0)throw B;Xd(1,0)}}var $d;Za=function ae(){$d||be();$d||(Za=ae)}; +function be(){function a(){if(!$d&&($d=!0,r.calledRun=!0,!Ha)){hb(Ua);aa(r);if(r.onRuntimeInitialized)r.onRuntimeInitialized();if(r.postRun)for("function"==typeof r.postRun&&(r.postRun=[r.postRun]);r.postRun.length;){var b=r.postRun.shift();Va.unshift(b)}hb(Va)}}if(!(0 { + var _scriptDir = typeof document !== 'undefined' && document.currentScript ? document.currentScript.src : undefined; + if (typeof __filename !== 'undefined') _scriptDir = _scriptDir || __filename; + return ( +function(CanvasKitInit = {}) { + +var r;r||(r=typeof CanvasKitInit !== 'undefined' ? CanvasKitInit : {});var aa,ba;r.ready=new Promise(function(a,b){aa=a;ba=b}); +(function(a){a.Hd=a.Hd||[];a.Hd.push(function(){a.MakeSWCanvasSurface=function(b){var c=b,e="undefined"!==typeof OffscreenCanvas&&c instanceof OffscreenCanvas;if(!("undefined"!==typeof HTMLCanvasElement&&c instanceof HTMLCanvasElement||e||(c=document.getElementById(b),c)))throw"Canvas with id "+b+" was not found";if(b=a.MakeSurface(c.width,c.height))b.ee=c;return b};a.MakeCanvasSurface||(a.MakeCanvasSurface=a.MakeSWCanvasSurface);a.MakeSurface=function(b,c){var e={width:b,height:c,colorType:a.ColorType.RGBA_8888, +alphaType:a.AlphaType.Unpremul,colorSpace:a.ColorSpace.SRGB},f=b*c*4,k=a._malloc(f);if(e=a.Surface._makeRasterDirect(e,k,4*b))e.ee=null,e.Pe=b,e.Me=c,e.Ne=f,e.oe=k,e.getCanvas().clear(a.TRANSPARENT);return e};a.MakeRasterDirectSurface=function(b,c,e){return a.Surface._makeRasterDirect(b,c.byteOffset,e)};a.Surface.prototype.flush=function(b){a.Ed(this.Dd);this._flush();if(this.ee){var c=new Uint8ClampedArray(a.HEAPU8.buffer,this.oe,this.Ne);c=new ImageData(c,this.Pe,this.Me);b?this.ee.getContext("2d").putImageData(c, +0,0,b[0],b[1],b[2]-b[0],b[3]-b[1]):this.ee.getContext("2d").putImageData(c,0,0)}};a.Surface.prototype.dispose=function(){this.oe&&a._free(this.oe);this.delete()};a.Ed=a.Ed||function(){};a.fe=a.fe||function(){return null}})})(r); +(function(a){a.Hd=a.Hd||[];a.Hd.push(function(){function b(l,q,x){return l&&l.hasOwnProperty(q)?l[q]:x}function c(l){var q=ca(ea);ea[q]=l;return q}function e(l){return l.naturalHeight||l.videoHeight||l.displayHeight||l.height}function f(l){return l.naturalWidth||l.videoWidth||l.displayWidth||l.width}function k(l,q,x,y){l.bindTexture(l.TEXTURE_2D,q);y||x.alphaType!==a.AlphaType.Premul||l.pixelStorei(l.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!0);return q}function m(l,q,x){x||q.alphaType!==a.AlphaType.Premul|| +l.pixelStorei(l.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!1);l.bindTexture(l.TEXTURE_2D,null)}a.GetWebGLContext=function(l,q){if(!l)throw"null canvas passed into makeWebGLContext";var x={alpha:b(q,"alpha",1),depth:b(q,"depth",1),stencil:b(q,"stencil",8),antialias:b(q,"antialias",0),premultipliedAlpha:b(q,"premultipliedAlpha",1),preserveDrawingBuffer:b(q,"preserveDrawingBuffer",0),preferLowPowerToHighPerformance:b(q,"preferLowPowerToHighPerformance",0),failIfMajorPerformanceCaveat:b(q,"failIfMajorPerformanceCaveat", +0),enableExtensionsByDefault:b(q,"enableExtensionsByDefault",1),explicitSwapControl:b(q,"explicitSwapControl",0),renderViaOffscreenBackBuffer:b(q,"renderViaOffscreenBackBuffer",0)};x.majorVersion=q&&q.majorVersion?q.majorVersion:"undefined"!==typeof WebGL2RenderingContext?2:1;if(x.explicitSwapControl)throw"explicitSwapControl is not supported";l=fa(l,x);if(!l)return 0;ha(l);u.Od.getExtension("WEBGL_debug_renderer_info");return l};a.deleteContext=function(l){u===ia[l]&&(u=null);"object"==typeof JSEvents&& +JSEvents.uf(ia[l].Od.canvas);ia[l]&&ia[l].Od.canvas&&(ia[l].Od.canvas.He=void 0);ia[l]=null};a._setTextureCleanup({deleteTexture:function(l,q){var x=ea[q];x&&ia[l].Od.deleteTexture(x);ea[q]=null}});a.MakeWebGLContext=function(l){if(!this.Ed(l))return null;var q=this._MakeGrContext();if(!q)return null;q.Dd=l;var x=q.delete.bind(q);q["delete"]=function(){a.Ed(this.Dd);x()}.bind(q);return u.qe=q};a.MakeGrContext=a.MakeWebGLContext;a.GrDirectContext.prototype.getResourceCacheLimitBytes=function(){a.Ed(this.Dd); +this._getResourceCacheLimitBytes()};a.GrDirectContext.prototype.getResourceCacheUsageBytes=function(){a.Ed(this.Dd);this._getResourceCacheUsageBytes()};a.GrDirectContext.prototype.releaseResourcesAndAbandonContext=function(){a.Ed(this.Dd);this._releaseResourcesAndAbandonContext()};a.GrDirectContext.prototype.setResourceCacheLimitBytes=function(l){a.Ed(this.Dd);this._setResourceCacheLimitBytes(l)};a.MakeOnScreenGLSurface=function(l,q,x,y,B,D){if(!this.Ed(l.Dd))return null;q=void 0===B||void 0===D? +this._MakeOnScreenGLSurface(l,q,x,y):this._MakeOnScreenGLSurface(l,q,x,y,B,D);if(!q)return null;q.Dd=l.Dd;return q};a.MakeRenderTarget=function(){var l=arguments[0];if(!this.Ed(l.Dd))return null;if(3===arguments.length){var q=this._MakeRenderTargetWH(l,arguments[1],arguments[2]);if(!q)return null}else if(2===arguments.length){if(q=this._MakeRenderTargetII(l,arguments[1]),!q)return null}else return null;q.Dd=l.Dd;return q};a.MakeWebGLCanvasSurface=function(l,q,x){q=q||null;var y=l,B="undefined"!== +typeof OffscreenCanvas&&y instanceof OffscreenCanvas;if(!("undefined"!==typeof HTMLCanvasElement&&y instanceof HTMLCanvasElement||B||(y=document.getElementById(l),y)))throw"Canvas with id "+l+" was not found";l=this.GetWebGLContext(y,x);if(!l||0>l)throw"failed to create webgl context: err "+l;l=this.MakeWebGLContext(l);q=this.MakeOnScreenGLSurface(l,y.width,y.height,q);return q?q:(q=y.cloneNode(!0),y.parentNode.replaceChild(q,y),q.classList.add("ck-replaced"),a.MakeSWCanvasSurface(q))};a.MakeCanvasSurface= +a.MakeWebGLCanvasSurface;a.Surface.prototype.makeImageFromTexture=function(l,q){a.Ed(this.Dd);l=c(l);if(q=this._makeImageFromTexture(this.Dd,l,q))q.ae=l;return q};a.Surface.prototype.makeImageFromTextureSource=function(l,q,x){q||(q={height:e(l),width:f(l),colorType:a.ColorType.RGBA_8888,alphaType:x?a.AlphaType.Premul:a.AlphaType.Unpremul});q.colorSpace||(q.colorSpace=a.ColorSpace.SRGB);a.Ed(this.Dd);var y=u.Od;x=k(y,y.createTexture(),q,x);2===u.version?y.texImage2D(y.TEXTURE_2D,0,y.RGBA,q.width,q.height, +0,y.RGBA,y.UNSIGNED_BYTE,l):y.texImage2D(y.TEXTURE_2D,0,y.RGBA,y.RGBA,y.UNSIGNED_BYTE,l);m(y,q);this._resetContext();return this.makeImageFromTexture(x,q)};a.Surface.prototype.updateTextureFromSource=function(l,q,x){if(l.ae){a.Ed(this.Dd);var y=l.getImageInfo(),B=u.Od,D=k(B,ea[l.ae],y,x);2===u.version?B.texImage2D(B.TEXTURE_2D,0,B.RGBA,f(q),e(q),0,B.RGBA,B.UNSIGNED_BYTE,q):B.texImage2D(B.TEXTURE_2D,0,B.RGBA,B.RGBA,B.UNSIGNED_BYTE,q);m(B,y,x);this._resetContext();ea[l.ae]=null;l.ae=c(D);y.colorSpace= +l.getColorSpace();q=this._makeImageFromTexture(this.Dd,l.ae,y);x=l.jd.Fd;B=l.jd.Kd;l.jd.Fd=q.jd.Fd;l.jd.Kd=q.jd.Kd;q.jd.Fd=x;q.jd.Kd=B;q.delete();y.colorSpace.delete()}};a.MakeLazyImageFromTextureSource=function(l,q,x){q||(q={height:e(l),width:f(l),colorType:a.ColorType.RGBA_8888,alphaType:x?a.AlphaType.Premul:a.AlphaType.Unpremul});q.colorSpace||(q.colorSpace=a.ColorSpace.SRGB);var y={makeTexture:function(){var B=u,D=B.Od,v=k(D,D.createTexture(),q,x);2===B.version?D.texImage2D(D.TEXTURE_2D,0,D.RGBA, +q.width,q.height,0,D.RGBA,D.UNSIGNED_BYTE,l):D.texImage2D(D.TEXTURE_2D,0,D.RGBA,D.RGBA,D.UNSIGNED_BYTE,l);m(D,q,x);return c(v)},freeSrc:function(){}};"VideoFrame"===l.constructor.name&&(y.freeSrc=function(){l.close()});return a.Image._makeFromGenerator(q,y)};a.Ed=function(l){return l?ha(l):!1};a.fe=function(){return u&&u.qe&&!u.qe.isDeleted()?u.qe:null}})})(r); +(function(a){function b(g){return(f(255*g[3])<<24|f(255*g[0])<<16|f(255*g[1])<<8|f(255*g[2])<<0)>>>0}function c(g){if(g&&g._ck)return g;if(g instanceof Float32Array){for(var d=Math.floor(g.length/4),h=new Uint32Array(d),n=0;nz;z++)a.HEAPF32[t+n]=g[w][z],n++;g=h}else g=M;d.Ld=g}else throw"Invalid argument to copyFlexibleColorArray, Not a color array "+typeof g;return d}function q(g){if(!g)return M;var d=S.toTypedArray();if(g.length){if(6===g.length||9===g.length)return m(g,"HEAPF32",H),6===g.length&&a.HEAPF32.set(dd,6+H/4),H;if(16===g.length)return d[0]=g[0],d[1]=g[1],d[2]=g[3],d[3]=g[4],d[4]=g[5],d[5]=g[7],d[6]=g[12],d[7]=g[13],d[8]=g[15],H;throw"invalid matrix size"; +}if(void 0===g.m11)throw"invalid matrix argument";d[0]=g.m11;d[1]=g.m21;d[2]=g.m41;d[3]=g.m12;d[4]=g.m22;d[5]=g.m42;d[6]=g.m14;d[7]=g.m24;d[8]=g.m44;return H}function x(g){if(!g)return M;var d=da.toTypedArray();if(g.length){if(16!==g.length&&6!==g.length&&9!==g.length)throw"invalid matrix size";if(16===g.length)return m(g,"HEAPF32",Y);d.fill(0);d[0]=g[0];d[1]=g[1];d[3]=g[2];d[4]=g[3];d[5]=g[4];d[7]=g[5];d[10]=1;d[12]=g[6];d[13]=g[7];d[15]=g[8];6===g.length&&(d[12]=0,d[13]=0,d[15]=1);return Y}if(void 0=== +g.m11)throw"invalid matrix argument";d[0]=g.m11;d[1]=g.m21;d[2]=g.m31;d[3]=g.m41;d[4]=g.m12;d[5]=g.m22;d[6]=g.m32;d[7]=g.m42;d[8]=g.m13;d[9]=g.m23;d[10]=g.m33;d[11]=g.m43;d[12]=g.m14;d[13]=g.m24;d[14]=g.m34;d[15]=g.m44;return Y}function y(g,d){return m(g,"HEAPF32",d||ua)}function B(g,d,h,n){var t=La.toTypedArray();t[0]=g;t[1]=d;t[2]=h;t[3]=n;return ua}function D(g){for(var d=new Float32Array(4),h=0;4>h;h++)d[h]=a.HEAPF32[g/4+h];return d}function v(g,d){return m(g,"HEAPF32",d||V)}function E(g,d){return m(g, +"HEAPF32",d||Cb)}a.Color=function(g,d,h,n){void 0===n&&(n=1);return a.Color4f(f(g)/255,f(d)/255,f(h)/255,n)};a.ColorAsInt=function(g,d,h,n){void 0===n&&(n=255);return(f(n)<<24|f(g)<<16|f(d)<<8|f(h)<<0&268435455)>>>0};a.Color4f=function(g,d,h,n){void 0===n&&(n=1);return Float32Array.of(g,d,h,n)};Object.defineProperty(a,"TRANSPARENT",{get:function(){return a.Color4f(0,0,0,0)}});Object.defineProperty(a,"BLACK",{get:function(){return a.Color4f(0,0,0,1)}});Object.defineProperty(a,"WHITE",{get:function(){return a.Color4f(1, +1,1,1)}});Object.defineProperty(a,"RED",{get:function(){return a.Color4f(1,0,0,1)}});Object.defineProperty(a,"GREEN",{get:function(){return a.Color4f(0,1,0,1)}});Object.defineProperty(a,"BLUE",{get:function(){return a.Color4f(0,0,1,1)}});Object.defineProperty(a,"YELLOW",{get:function(){return a.Color4f(1,1,0,1)}});Object.defineProperty(a,"CYAN",{get:function(){return a.Color4f(0,1,1,1)}});Object.defineProperty(a,"MAGENTA",{get:function(){return a.Color4f(1,0,1,1)}});a.getColorComponents=function(g){return[Math.floor(255* +g[0]),Math.floor(255*g[1]),Math.floor(255*g[2]),g[3]]};a.parseColorString=function(g,d){g=g.toLowerCase();if(g.startsWith("#")){d=255;switch(g.length){case 9:d=parseInt(g.slice(7,9),16);case 7:var h=parseInt(g.slice(1,3),16);var n=parseInt(g.slice(3,5),16);var t=parseInt(g.slice(5,7),16);break;case 5:d=17*parseInt(g.slice(4,5),16);case 4:h=17*parseInt(g.slice(1,2),16),n=17*parseInt(g.slice(2,3),16),t=17*parseInt(g.slice(3,4),16)}return a.Color(h,n,t,d/255)}return g.startsWith("rgba")?(g=g.slice(5, +-1),g=g.split(","),a.Color(+g[0],+g[1],+g[2],e(g[3]))):g.startsWith("rgb")?(g=g.slice(4,-1),g=g.split(","),a.Color(+g[0],+g[1],+g[2],e(g[3]))):g.startsWith("gray(")||g.startsWith("hsl")||!d||(g=d[g],void 0===g)?a.BLACK:g};a.multiplyByAlpha=function(g,d){g=g.slice();g[3]=Math.max(0,Math.min(g[3]*d,1));return g};a.Malloc=function(g,d){var h=a._malloc(d*g.BYTES_PER_ELEMENT);return{_ck:!0,length:d,byteOffset:h,Vd:null,subarray:function(n,t){n=this.toTypedArray().subarray(n,t);n._ck=!0;return n},toTypedArray:function(){if(this.Vd&& +this.Vd.length)return this.Vd;this.Vd=new g(a.HEAPU8.buffer,h,d);this.Vd._ck=!0;return this.Vd}}};a.Free=function(g){a._free(g.byteOffset);g.byteOffset=M;g.toTypedArray=null;g.Vd=null};var H=M,S,Y=M,da,ua=M,La,ma,V=M,gc,Aa=M,hc,Db=M,ic,Eb=M,Fb,gb=M,jc,Cb=M,kc,lc=M,dd=Float32Array.of(0,0,1),M=0;a.onRuntimeInitialized=function(){function g(d,h,n,t,w,z,F){z||(z=4*t.width,t.colorType===a.ColorType.RGBA_F16?z*=2:t.colorType===a.ColorType.RGBA_F32&&(z*=4));var K=z*t.height;var I=w?w.byteOffset:a._malloc(K); +if(F?!d._readPixels(t,I,z,h,n,F):!d._readPixels(t,I,z,h,n))return w||a._free(I),null;if(w)return w.toTypedArray();switch(t.colorType){case a.ColorType.RGBA_8888:case a.ColorType.RGBA_F16:d=(new Uint8Array(a.HEAPU8.buffer,I,K)).slice();break;case a.ColorType.RGBA_F32:d=(new Float32Array(a.HEAPU8.buffer,I,K)).slice();break;default:return null}a._free(I);return d}La=a.Malloc(Float32Array,4);ua=La.byteOffset;da=a.Malloc(Float32Array,16);Y=da.byteOffset;S=a.Malloc(Float32Array,9);H=S.byteOffset;jc=a.Malloc(Float32Array, +12);Cb=jc.byteOffset;kc=a.Malloc(Float32Array,12);lc=kc.byteOffset;ma=a.Malloc(Float32Array,4);V=ma.byteOffset;gc=a.Malloc(Float32Array,4);Aa=gc.byteOffset;hc=a.Malloc(Float32Array,3);Db=hc.byteOffset;ic=a.Malloc(Float32Array,3);Eb=ic.byteOffset;Fb=a.Malloc(Int32Array,4);gb=Fb.byteOffset;a.ColorSpace.SRGB=a.ColorSpace._MakeSRGB();a.ColorSpace.DISPLAY_P3=a.ColorSpace._MakeDisplayP3();a.ColorSpace.ADOBE_RGB=a.ColorSpace._MakeAdobeRGB();a.GlyphRunFlags={IsWhiteSpace:a._GlyphRunFlags_isWhiteSpace};a.Path.MakeFromCmds= +function(d){var h=m(d,"HEAPF32"),n=a.Path._MakeFromCmds(h,d.length);k(h,d);return n};a.Path.MakeFromVerbsPointsWeights=function(d,h,n){var t=m(d,"HEAPU8"),w=m(h,"HEAPF32"),z=m(n,"HEAPF32"),F=a.Path._MakeFromVerbsPointsWeights(t,d.length,w,h.length,z,n&&n.length||0);k(t,d);k(w,h);k(z,n);return F};a.Path.prototype.addArc=function(d,h,n){d=v(d);this._addArc(d,h,n);return this};a.Path.prototype.addCircle=function(d,h,n,t){this._addCircle(d,h,n,!!t);return this};a.Path.prototype.addOval=function(d,h,n){void 0=== +n&&(n=1);d=v(d);this._addOval(d,!!h,n);return this};a.Path.prototype.addPath=function(){var d=Array.prototype.slice.call(arguments),h=d[0],n=!1;"boolean"===typeof d[d.length-1]&&(n=d.pop());if(1===d.length)this._addPath(h,1,0,0,0,1,0,0,0,1,n);else if(2===d.length)d=d[1],this._addPath(h,d[0],d[1],d[2],d[3],d[4],d[5],d[6]||0,d[7]||0,d[8]||1,n);else if(7===d.length||10===d.length)this._addPath(h,d[1],d[2],d[3],d[4],d[5],d[6],d[7]||0,d[8]||0,d[9]||1,n);else return null;return this};a.Path.prototype.addPoly= +function(d,h){var n=m(d,"HEAPF32");this._addPoly(n,d.length/2,h);k(n,d);return this};a.Path.prototype.addRect=function(d,h){d=v(d);this._addRect(d,!!h);return this};a.Path.prototype.addRRect=function(d,h){d=E(d);this._addRRect(d,!!h);return this};a.Path.prototype.addVerbsPointsWeights=function(d,h,n){var t=m(d,"HEAPU8"),w=m(h,"HEAPF32"),z=m(n,"HEAPF32");this._addVerbsPointsWeights(t,d.length,w,h.length,z,n&&n.length||0);k(t,d);k(w,h);k(z,n)};a.Path.prototype.arc=function(d,h,n,t,w,z){d=a.LTRBRect(d- +n,h-n,d+n,h+n);w=(w-t)/Math.PI*180-360*!!z;z=new a.Path;z.addArc(d,t/Math.PI*180,w);this.addPath(z,!0);z.delete();return this};a.Path.prototype.arcToOval=function(d,h,n,t){d=v(d);this._arcToOval(d,h,n,t);return this};a.Path.prototype.arcToRotated=function(d,h,n,t,w,z,F){this._arcToRotated(d,h,n,!!t,!!w,z,F);return this};a.Path.prototype.arcToTangent=function(d,h,n,t,w){this._arcToTangent(d,h,n,t,w);return this};a.Path.prototype.close=function(){this._close();return this};a.Path.prototype.conicTo= +function(d,h,n,t,w){this._conicTo(d,h,n,t,w);return this};a.Path.prototype.computeTightBounds=function(d){this._computeTightBounds(V);var h=ma.toTypedArray();return d?(d.set(h),d):h.slice()};a.Path.prototype.cubicTo=function(d,h,n,t,w,z){this._cubicTo(d,h,n,t,w,z);return this};a.Path.prototype.dash=function(d,h,n){return this._dash(d,h,n)?this:null};a.Path.prototype.getBounds=function(d){this._getBounds(V);var h=ma.toTypedArray();return d?(d.set(h),d):h.slice()};a.Path.prototype.lineTo=function(d, +h){this._lineTo(d,h);return this};a.Path.prototype.moveTo=function(d,h){this._moveTo(d,h);return this};a.Path.prototype.offset=function(d,h){this._transform(1,0,d,0,1,h,0,0,1);return this};a.Path.prototype.quadTo=function(d,h,n,t){this._quadTo(d,h,n,t);return this};a.Path.prototype.rArcTo=function(d,h,n,t,w,z,F){this._rArcTo(d,h,n,t,w,z,F);return this};a.Path.prototype.rConicTo=function(d,h,n,t,w){this._rConicTo(d,h,n,t,w);return this};a.Path.prototype.rCubicTo=function(d,h,n,t,w,z){this._rCubicTo(d, +h,n,t,w,z);return this};a.Path.prototype.rLineTo=function(d,h){this._rLineTo(d,h);return this};a.Path.prototype.rMoveTo=function(d,h){this._rMoveTo(d,h);return this};a.Path.prototype.rQuadTo=function(d,h,n,t){this._rQuadTo(d,h,n,t);return this};a.Path.prototype.stroke=function(d){d=d||{};d.width=d.width||1;d.miter_limit=d.miter_limit||4;d.cap=d.cap||a.StrokeCap.Butt;d.join=d.join||a.StrokeJoin.Miter;d.precision=d.precision||1;return this._stroke(d)?this:null};a.Path.prototype.transform=function(){if(1=== +arguments.length){var d=arguments[0];this._transform(d[0],d[1],d[2],d[3],d[4],d[5],d[6]||0,d[7]||0,d[8]||1)}else if(6===arguments.length||9===arguments.length)d=arguments,this._transform(d[0],d[1],d[2],d[3],d[4],d[5],d[6]||0,d[7]||0,d[8]||1);else throw"transform expected to take 1 or 9 arguments. Got "+arguments.length;return this};a.Path.prototype.trim=function(d,h,n){return this._trim(d,h,!!n)?this:null};a.Image.prototype.encodeToBytes=function(d,h){var n=a.fe();d=d||a.ImageFormat.PNG;h=h||100; +return n?this._encodeToBytes(d,h,n):this._encodeToBytes(d,h)};a.Image.prototype.makeShaderCubic=function(d,h,n,t,w){w=q(w);return this._makeShaderCubic(d,h,n,t,w)};a.Image.prototype.makeShaderOptions=function(d,h,n,t,w){w=q(w);return this._makeShaderOptions(d,h,n,t,w)};a.Image.prototype.readPixels=function(d,h,n,t,w){var z=a.fe();return g(this,d,h,n,t,w,z)};a.Canvas.prototype.clear=function(d){a.Ed(this.Dd);d=y(d);this._clear(d)};a.Canvas.prototype.clipRRect=function(d,h,n){a.Ed(this.Dd);d=E(d);this._clipRRect(d, +h,n)};a.Canvas.prototype.clipRect=function(d,h,n){a.Ed(this.Dd);d=v(d);this._clipRect(d,h,n)};a.Canvas.prototype.concat=function(d){a.Ed(this.Dd);d=x(d);this._concat(d)};a.Canvas.prototype.drawArc=function(d,h,n,t,w){a.Ed(this.Dd);d=v(d);this._drawArc(d,h,n,t,w)};a.Canvas.prototype.drawAtlas=function(d,h,n,t,w,z,F){if(d&&t&&h&&n&&h.length===n.length){a.Ed(this.Dd);w||(w=a.BlendMode.SrcOver);var K=m(h,"HEAPF32"),I=m(n,"HEAPF32"),T=n.length/4,p=m(c(z),"HEAPU32");if(F&&"B"in F&&"C"in F)this._drawAtlasCubic(d, +I,K,p,T,w,F.B,F.C,t);else{let A=a.FilterMode.Linear,L=a.MipmapMode.None;F&&(A=F.filter,"mipmap"in F&&(L=F.mipmap));this._drawAtlasOptions(d,I,K,p,T,w,A,L,t)}k(K,h);k(I,n);k(p,z)}};a.Canvas.prototype.drawCircle=function(d,h,n,t){a.Ed(this.Dd);this._drawCircle(d,h,n,t)};a.Canvas.prototype.drawColor=function(d,h){a.Ed(this.Dd);d=y(d);void 0!==h?this._drawColor(d,h):this._drawColor(d)};a.Canvas.prototype.drawColorInt=function(d,h){a.Ed(this.Dd);this._drawColorInt(d,h||a.BlendMode.SrcOver)};a.Canvas.prototype.drawColorComponents= +function(d,h,n,t,w){a.Ed(this.Dd);d=B(d,h,n,t);void 0!==w?this._drawColor(d,w):this._drawColor(d)};a.Canvas.prototype.drawDRRect=function(d,h,n){a.Ed(this.Dd);d=E(d,Cb);h=E(h,lc);this._drawDRRect(d,h,n)};a.Canvas.prototype.drawImage=function(d,h,n,t){a.Ed(this.Dd);this._drawImage(d,h,n,t||null)};a.Canvas.prototype.drawImageCubic=function(d,h,n,t,w,z){a.Ed(this.Dd);this._drawImageCubic(d,h,n,t,w,z||null)};a.Canvas.prototype.drawImageOptions=function(d,h,n,t,w,z){a.Ed(this.Dd);this._drawImageOptions(d, +h,n,t,w,z||null)};a.Canvas.prototype.drawImageNine=function(d,h,n,t,w){a.Ed(this.Dd);h=m(h,"HEAP32",gb);n=v(n);this._drawImageNine(d,h,n,t,w||null)};a.Canvas.prototype.drawImageRect=function(d,h,n,t,w){a.Ed(this.Dd);v(h,V);v(n,Aa);this._drawImageRect(d,V,Aa,t,!!w)};a.Canvas.prototype.drawImageRectCubic=function(d,h,n,t,w,z){a.Ed(this.Dd);v(h,V);v(n,Aa);this._drawImageRectCubic(d,V,Aa,t,w,z||null)};a.Canvas.prototype.drawImageRectOptions=function(d,h,n,t,w,z){a.Ed(this.Dd);v(h,V);v(n,Aa);this._drawImageRectOptions(d, +V,Aa,t,w,z||null)};a.Canvas.prototype.drawLine=function(d,h,n,t,w){a.Ed(this.Dd);this._drawLine(d,h,n,t,w)};a.Canvas.prototype.drawOval=function(d,h){a.Ed(this.Dd);d=v(d);this._drawOval(d,h)};a.Canvas.prototype.drawPaint=function(d){a.Ed(this.Dd);this._drawPaint(d)};a.Canvas.prototype.drawParagraph=function(d,h,n){a.Ed(this.Dd);this._drawParagraph(d,h,n)};a.Canvas.prototype.drawPatch=function(d,h,n,t,w){if(24>d.length)throw"Need 12 cubic points";if(h&&4>h.length)throw"Need 4 colors";if(n&&8>n.length)throw"Need 4 shader coordinates"; +a.Ed(this.Dd);const z=m(d,"HEAPF32"),F=h?m(c(h),"HEAPU32"):M,K=n?m(n,"HEAPF32"):M;t||(t=a.BlendMode.Modulate);this._drawPatch(z,F,K,t,w);k(K,n);k(F,h);k(z,d)};a.Canvas.prototype.drawPath=function(d,h){a.Ed(this.Dd);this._drawPath(d,h)};a.Canvas.prototype.drawPicture=function(d){a.Ed(this.Dd);this._drawPicture(d)};a.Canvas.prototype.drawPoints=function(d,h,n){a.Ed(this.Dd);var t=m(h,"HEAPF32");this._drawPoints(d,t,h.length/2,n);k(t,h)};a.Canvas.prototype.drawRRect=function(d,h){a.Ed(this.Dd);d=E(d); +this._drawRRect(d,h)};a.Canvas.prototype.drawRect=function(d,h){a.Ed(this.Dd);d=v(d);this._drawRect(d,h)};a.Canvas.prototype.drawRect4f=function(d,h,n,t,w){a.Ed(this.Dd);this._drawRect4f(d,h,n,t,w)};a.Canvas.prototype.drawShadow=function(d,h,n,t,w,z,F){a.Ed(this.Dd);var K=m(w,"HEAPF32"),I=m(z,"HEAPF32");h=m(h,"HEAPF32",Db);n=m(n,"HEAPF32",Eb);this._drawShadow(d,h,n,t,K,I,F);k(K,w);k(I,z)};a.getShadowLocalBounds=function(d,h,n,t,w,z,F){d=q(d);n=m(n,"HEAPF32",Db);t=m(t,"HEAPF32",Eb);if(!this._getShadowLocalBounds(d, +h,n,t,w,z,V))return null;h=ma.toTypedArray();return F?(F.set(h),F):h.slice()};a.Canvas.prototype.drawTextBlob=function(d,h,n,t){a.Ed(this.Dd);this._drawTextBlob(d,h,n,t)};a.Canvas.prototype.drawVertices=function(d,h,n){a.Ed(this.Dd);this._drawVertices(d,h,n)};a.Canvas.prototype.getDeviceClipBounds=function(d){this._getDeviceClipBounds(gb);var h=Fb.toTypedArray();d?d.set(h):d=h.slice();return d};a.Canvas.prototype.getLocalToDevice=function(){this._getLocalToDevice(Y);for(var d=Y,h=Array(16),n=0;16> +n;n++)h[n]=a.HEAPF32[d/4+n];return h};a.Canvas.prototype.getTotalMatrix=function(){this._getTotalMatrix(H);for(var d=Array(9),h=0;9>h;h++)d[h]=a.HEAPF32[H/4+h];return d};a.Canvas.prototype.makeSurface=function(d){d=this._makeSurface(d);d.Dd=this.Dd;return d};a.Canvas.prototype.readPixels=function(d,h,n,t,w){a.Ed(this.Dd);return g(this,d,h,n,t,w)};a.Canvas.prototype.saveLayer=function(d,h,n,t){h=v(h);return this._saveLayer(d||null,h,n||null,t||0)};a.Canvas.prototype.writePixels=function(d,h,n,t,w, +z,F,K){if(d.byteLength%(h*n))throw"pixels length must be a multiple of the srcWidth * srcHeight";a.Ed(this.Dd);var I=d.byteLength/(h*n);z=z||a.AlphaType.Unpremul;F=F||a.ColorType.RGBA_8888;K=K||a.ColorSpace.SRGB;var T=I*h;I=m(d,"HEAPU8");h=this._writePixels({width:h,height:n,colorType:F,alphaType:z,colorSpace:K},I,T,t,w);k(I,d);return h};a.ColorFilter.MakeBlend=function(d,h,n){d=y(d);n=n||a.ColorSpace.SRGB;return a.ColorFilter._MakeBlend(d,h,n)};a.ColorFilter.MakeMatrix=function(d){if(!d||20!==d.length)throw"invalid color matrix"; +var h=m(d,"HEAPF32"),n=a.ColorFilter._makeMatrix(h);k(h,d);return n};a.ContourMeasure.prototype.getPosTan=function(d,h){this._getPosTan(d,V);d=ma.toTypedArray();return h?(h.set(d),h):d.slice()};a.ImageFilter.MakeDropShadow=function(d,h,n,t,w,z){w=y(w,ua);return a.ImageFilter._MakeDropShadow(d,h,n,t,w,z)};a.ImageFilter.MakeDropShadowOnly=function(d,h,n,t,w,z){w=y(w,ua);return a.ImageFilter._MakeDropShadowOnly(d,h,n,t,w,z)};a.ImageFilter.MakeImage=function(d,h,n,t){n=v(n,V);t=v(t,Aa);if("B"in h&&"C"in +h)return a.ImageFilter._MakeImageCubic(d,h.B,h.C,n,t);const w=h.filter;let z=a.MipmapMode.None;"mipmap"in h&&(z=h.mipmap);return a.ImageFilter._MakeImageOptions(d,w,z,n,t)};a.ImageFilter.MakeMatrixTransform=function(d,h,n){d=q(d);if("B"in h&&"C"in h)return a.ImageFilter._MakeMatrixTransformCubic(d,h.B,h.C,n);const t=h.filter;let w=a.MipmapMode.None;"mipmap"in h&&(w=h.mipmap);return a.ImageFilter._MakeMatrixTransformOptions(d,t,w,n)};a.Paint.prototype.getColor=function(){this._getColor(ua);return D(ua)}; +a.Paint.prototype.setColor=function(d,h){h=h||null;d=y(d);this._setColor(d,h)};a.Paint.prototype.setColorComponents=function(d,h,n,t,w){w=w||null;d=B(d,h,n,t);this._setColor(d,w)};a.Path.prototype.getPoint=function(d,h){this._getPoint(d,V);d=ma.toTypedArray();return h?(h[0]=d[0],h[1]=d[1],h):d.slice(0,2)};a.Picture.prototype.makeShader=function(d,h,n,t,w){t=q(t);w=v(w);return this._makeShader(d,h,n,t,w)};a.Picture.prototype.cullRect=function(d){this._cullRect(V);var h=ma.toTypedArray();return d?(d.set(h), +d):h.slice()};a.PictureRecorder.prototype.beginRecording=function(d,h){d=v(d);return this._beginRecording(d,!!h)};a.Surface.prototype.getCanvas=function(){var d=this._getCanvas();d.Dd=this.Dd;return d};a.Surface.prototype.makeImageSnapshot=function(d){a.Ed(this.Dd);d=m(d,"HEAP32",gb);return this._makeImageSnapshot(d)};a.Surface.prototype.makeSurface=function(d){a.Ed(this.Dd);d=this._makeSurface(d);d.Dd=this.Dd;return d};a.Surface.prototype.Oe=function(d,h){this.$d||(this.$d=this.getCanvas());return requestAnimationFrame(function(){a.Ed(this.Dd); +d(this.$d);this.flush(h)}.bind(this))};a.Surface.prototype.requestAnimationFrame||(a.Surface.prototype.requestAnimationFrame=a.Surface.prototype.Oe);a.Surface.prototype.Le=function(d,h){this.$d||(this.$d=this.getCanvas());requestAnimationFrame(function(){a.Ed(this.Dd);d(this.$d);this.flush(h);this.dispose()}.bind(this))};a.Surface.prototype.drawOnce||(a.Surface.prototype.drawOnce=a.Surface.prototype.Le);a.PathEffect.MakeDash=function(d,h){h||(h=0);if(!d.length||1===d.length%2)throw"Intervals array must have even length"; +var n=m(d,"HEAPF32");h=a.PathEffect._MakeDash(n,d.length,h);k(n,d);return h};a.PathEffect.MakeLine2D=function(d,h){h=q(h);return a.PathEffect._MakeLine2D(d,h)};a.PathEffect.MakePath2D=function(d,h){d=q(d);return a.PathEffect._MakePath2D(d,h)};a.Shader.MakeColor=function(d,h){h=h||null;d=y(d);return a.Shader._MakeColor(d,h)};a.Shader.Blend=a.Shader.MakeBlend;a.Shader.Color=a.Shader.MakeColor;a.Shader.MakeLinearGradient=function(d,h,n,t,w,z,F,K){K=K||null;var I=l(n),T=m(t,"HEAPF32");F=F||0;z=q(z);var p= +ma.toTypedArray();p.set(d);p.set(h,2);d=a.Shader._MakeLinearGradient(V,I.Ld,I.colorType,T,I.count,w,F,z,K);k(I.Ld,n);t&&k(T,t);return d};a.Shader.MakeRadialGradient=function(d,h,n,t,w,z,F,K){K=K||null;var I=l(n),T=m(t,"HEAPF32");F=F||0;z=q(z);d=a.Shader._MakeRadialGradient(d[0],d[1],h,I.Ld,I.colorType,T,I.count,w,F,z,K);k(I.Ld,n);t&&k(T,t);return d};a.Shader.MakeSweepGradient=function(d,h,n,t,w,z,F,K,I,T){T=T||null;var p=l(n),A=m(t,"HEAPF32");F=F||0;K=K||0;I=I||360;z=q(z);d=a.Shader._MakeSweepGradient(d, +h,p.Ld,p.colorType,A,p.count,w,K,I,F,z,T);k(p.Ld,n);t&&k(A,t);return d};a.Shader.MakeTwoPointConicalGradient=function(d,h,n,t,w,z,F,K,I,T){T=T||null;var p=l(w),A=m(z,"HEAPF32");I=I||0;K=q(K);var L=ma.toTypedArray();L.set(d);L.set(n,2);d=a.Shader._MakeTwoPointConicalGradient(V,h,t,p.Ld,p.colorType,A,p.count,F,I,K,T);k(p.Ld,w);z&&k(A,z);return d};a.Vertices.prototype.bounds=function(d){this._bounds(V);var h=ma.toTypedArray();return d?(d.set(h),d):h.slice()};a.Hd&&a.Hd.forEach(function(d){d()})};a.computeTonalColors= +function(g){var d=m(g.ambient,"HEAPF32"),h=m(g.spot,"HEAPF32");this._computeTonalColors(d,h);var n={ambient:D(d),spot:D(h)};k(d,g.ambient);k(h,g.spot);return n};a.LTRBRect=function(g,d,h,n){return Float32Array.of(g,d,h,n)};a.XYWHRect=function(g,d,h,n){return Float32Array.of(g,d,g+h,d+n)};a.LTRBiRect=function(g,d,h,n){return Int32Array.of(g,d,h,n)};a.XYWHiRect=function(g,d,h,n){return Int32Array.of(g,d,g+h,d+n)};a.RRectXY=function(g,d,h){return Float32Array.of(g[0],g[1],g[2],g[3],d,h,d,h,d,h,d,h)}; +a.MakeAnimatedImageFromEncoded=function(g){g=new Uint8Array(g);var d=a._malloc(g.byteLength);a.HEAPU8.set(g,d);return(g=a._decodeAnimatedImage(d,g.byteLength))?g:null};a.MakeImageFromEncoded=function(g){g=new Uint8Array(g);var d=a._malloc(g.byteLength);a.HEAPU8.set(g,d);return(g=a._decodeImage(d,g.byteLength))?g:null};var Ra=null;a.MakeImageFromCanvasImageSource=function(g){var d=g.width,h=g.height;Ra||(Ra=document.createElement("canvas"));Ra.width=d;Ra.height=h;var n=Ra.getContext("2d",{wf:!0}); +n.drawImage(g,0,0);g=n.getImageData(0,0,d,h);return a.MakeImage({width:d,height:h,alphaType:a.AlphaType.Unpremul,colorType:a.ColorType.RGBA_8888,colorSpace:a.ColorSpace.SRGB},g.data,4*d)};a.MakeImage=function(g,d,h){var n=a._malloc(d.length);a.HEAPU8.set(d,n);return a._MakeImage(g,n,d.length,h)};a.MakeVertices=function(g,d,h,n,t,w){var z=t&&t.length||0,F=0;h&&h.length&&(F|=1);n&&n.length&&(F|=2);void 0===w||w||(F|=4);g=new a._VerticesBuilder(g,d.length/2,z,F);m(d,"HEAPF32",g.positions());g.texCoords()&& +m(h,"HEAPF32",g.texCoords());g.colors()&&m(c(n),"HEAPU32",g.colors());g.indices()&&m(t,"HEAPU16",g.indices());return g.detach()};(function(g){g.Hd=g.Hd||[];g.Hd.push(function(){function d(p){if(!p||!p.length)return[];for(var A=[],L=0;Ld)return a._free(g),null;t=new Uint16Array(a.HEAPU8.buffer,g,d);if(h)return h.set(t),a._free(g),h;h=Uint16Array.from(t);a._free(g);return h};a.Font.prototype.getGlyphIntercepts=function(g,d,h,n){var t=m(g,"HEAPU16"),w=m(d,"HEAPF32");return this._getGlyphIntercepts(t, +g.length,!(g&&g._ck),w,d.length,!(d&&d._ck),h,n)};a.Font.prototype.getGlyphWidths=function(g,d,h){var n=m(g,"HEAPU16"),t=a._malloc(4*g.length);this._getGlyphWidthBounds(n,g.length,t,M,d||null);d=new Float32Array(a.HEAPU8.buffer,t,g.length);k(n,g);if(h)return h.set(d),a._free(t),h;g=Float32Array.from(d);a._free(t);return g};a.FontMgr.FromData=function(){if(!arguments.length)return null;var g=arguments;1===g.length&&Array.isArray(g[0])&&(g=arguments[0]);if(!g.length)return null;for(var d=[],h=[],n= +0;nd)return a._free(g),null;t=new Uint16Array(a.HEAPU8.buffer,g,d);if(h)return h.set(t),a._free(g),h;h=Uint16Array.from(t);a._free(g);return h};a.TextBlob.MakeOnPath=function(g,d,h,n){if(g&&g.length&&d&&d.countPoints()){if(1===d.countPoints())return this.MakeFromText(g,h);n||(n=0);var t=h.getGlyphIDs(g);t=h.getGlyphWidths(t);var w=[];d=new a.ContourMeasureIter(d,!1,1);for(var z=d.next(),F=new Float32Array(4),K=0;Kz.length()){z.delete();z= +d.next();if(!z){g=g.substring(0,K);break}n=I/2}z.getPosTan(n,F);var T=F[2],p=F[3];w.push(T,p,F[0]-I/2*T,F[1]-I/2*p);n+=I/2}g=this.MakeFromRSXform(g,w,h);z&&z.delete();d.delete();return g}};a.TextBlob.MakeFromRSXform=function(g,d,h){var n=ja(g)+1,t=a._malloc(n);ka(g,C,t,n);g=m(d,"HEAPF32");h=a.TextBlob._MakeFromRSXform(t,n-1,g,h);a._free(t);return h?h:null};a.TextBlob.MakeFromRSXformGlyphs=function(g,d,h){var n=m(g,"HEAPU16");d=m(d,"HEAPF32");h=a.TextBlob._MakeFromRSXformGlyphs(n,2*g.length,d,h);k(n, +g);return h?h:null};a.TextBlob.MakeFromGlyphs=function(g,d){var h=m(g,"HEAPU16");d=a.TextBlob._MakeFromGlyphs(h,2*g.length,d);k(h,g);return d?d:null};a.TextBlob.MakeFromText=function(g,d){var h=ja(g)+1,n=a._malloc(h);ka(g,C,n,h);g=a.TextBlob._MakeFromText(n,h-1,d);a._free(n);return g?g:null};a.MallocGlyphIDs=function(g){return a.Malloc(Uint16Array,g)}});a.Hd=a.Hd||[];a.Hd.push(function(){a.MakePicture=function(g){g=new Uint8Array(g);var d=a._malloc(g.byteLength);a.HEAPU8.set(g,d);return(g=a._MakePicture(d, +g.byteLength))?g:null}});a.Hd=a.Hd||[];a.Hd.push(function(){a.RuntimeEffect.Make=function(g,d){return a.RuntimeEffect._Make(g,{onError:d||function(h){console.log("RuntimeEffect error",h)}})};a.RuntimeEffect.prototype.makeShader=function(g,d){var h=!g._ck,n=m(g,"HEAPF32");d=q(d);return this._makeShader(n,4*g.length,h,d)};a.RuntimeEffect.prototype.makeShaderWithChildren=function(g,d,h){var n=!g._ck,t=m(g,"HEAPF32");h=q(h);for(var w=[],z=0;z{throw b;},qa="object"==typeof window,ra="function"==typeof importScripts,sa="object"==typeof process&&"object"==typeof process.versions&&"string"==typeof process.versions.node,ta="",va,wa,ya; +if(sa){var fs=require("fs"),za=require("path");ta=ra?za.dirname(ta)+"/":__dirname+"/";va=(a,b)=>{a=a.startsWith("file://")?new URL(a):za.normalize(a);return fs.readFileSync(a,b?void 0:"utf8")};ya=a=>{a=va(a,!0);a.buffer||(a=new Uint8Array(a));return a};wa=(a,b,c)=>{a=a.startsWith("file://")?new URL(a):za.normalize(a);fs.readFile(a,function(e,f){e?c(e):b(f.buffer)})};1process.versions.node.split(".")[0])process.on("unhandledRejection", +function(a){throw a;});oa=(a,b)=>{if(noExitRuntime)throw process.exitCode=a,b;if(!(b instanceof Ba)){var c=b;b&&"object"==typeof b&&b.stack&&(c=[b,b.stack]);Ca("exiting due to exception: "+c)}process.exit(a)};r.inspect=function(){return"[Emscripten Module object]"}}else if(qa||ra)ra?ta=self.location.href:"undefined"!=typeof document&&document.currentScript&&(ta=document.currentScript.src),_scriptDir&&(ta=_scriptDir),0!==ta.indexOf("blob:")?ta=ta.substr(0,ta.replace(/[?#].*/,"").lastIndexOf("/")+1): +ta="",va=a=>{var b=new XMLHttpRequest;b.open("GET",a,!1);b.send(null);return b.responseText},ra&&(ya=a=>{var b=new XMLHttpRequest;b.open("GET",a,!1);b.responseType="arraybuffer";b.send(null);return new Uint8Array(b.response)}),wa=(a,b,c)=>{var e=new XMLHttpRequest;e.open("GET",a,!0);e.responseType="arraybuffer";e.onload=()=>{200==e.status||0==e.status&&e.response?b(e.response):c()};e.onerror=c;e.send(null)};var Da=r.print||console.log.bind(console),Ca=r.printErr||console.warn.bind(console); +Object.assign(r,la);la=null;r.thisProgram&&(na=r.thisProgram);r.quit&&(oa=r.quit);var Ea;r.wasmBinary&&(Ea=r.wasmBinary);var noExitRuntime=r.noExitRuntime||!0;"object"!=typeof WebAssembly&&Fa("no native wasm support detected");var Ga,Ha=!1,Ia="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0; +function Ja(a,b,c){var e=b+c;for(c=b;a[c]&&!(c>=e);)++c;if(16f?e+=String.fromCharCode(f):(f-=65536,e+=String.fromCharCode(55296|f>>10,56320|f&1023))}}else e+=String.fromCharCode(f)}return e}function Ka(a,b){return a?Ja(C,a,b):""} +function ka(a,b,c,e){if(!(0=m){var l=a.charCodeAt(++k);m=65536+((m&1023)<<10)|l&1023}if(127>=m){if(c>=e)break;b[c++]=m}else{if(2047>=m){if(c+1>=e)break;b[c++]=192|m>>6}else{if(65535>=m){if(c+2>=e)break;b[c++]=224|m>>12}else{if(c+3>=e)break;b[c++]=240|m>>18;b[c++]=128|m>>12&63}b[c++]=128|m>>6&63}b[c++]=128|m&63}}b[c]=0;return c-f} +function ja(a){for(var b=0,c=0;c=e?b++:2047>=e?b+=2:55296<=e&&57343>=e?(b+=4,++c):b+=3}return b}var Ma,C,Na,Oa,G,J,N,Pa;function Qa(){var a=Ga.buffer;r.HEAP8=Ma=new Int8Array(a);r.HEAP16=Na=new Int16Array(a);r.HEAP32=G=new Int32Array(a);r.HEAPU8=C=new Uint8Array(a);r.HEAPU16=Oa=new Uint16Array(a);r.HEAPU32=J=new Uint32Array(a);r.HEAPF32=N=new Float32Array(a);r.HEAPF64=Pa=new Float64Array(a)}var Sa,Ta=[],Ua=[],Va=[]; +function Wa(){var a=r.preRun.shift();Ta.unshift(a)}var Xa=0,Ya=null,Za=null;function Fa(a){if(r.onAbort)r.onAbort(a);a="Aborted("+a+")";Ca(a);Ha=!0;a=new WebAssembly.RuntimeError(a+". Build with -sASSERTIONS for more info.");ba(a);throw a;}function $a(a){return a.startsWith("data:application/octet-stream;base64,")}var ab;ab="canvaskit.wasm";if(!$a(ab)){var bb=ab;ab=r.locateFile?r.locateFile(bb,ta):ta+bb} +function cb(a){try{if(a==ab&&Ea)return new Uint8Array(Ea);if(ya)return ya(a);throw"both async and sync fetching of the wasm failed";}catch(b){Fa(b)}} +function db(a){if(!Ea&&(qa||ra)){if("function"==typeof fetch&&!a.startsWith("file://"))return fetch(a,{credentials:"same-origin"}).then(function(b){if(!b.ok)throw"failed to load wasm binary file at '"+a+"'";return b.arrayBuffer()}).catch(function(){return cb(a)});if(wa)return new Promise(function(b,c){wa(a,function(e){b(new Uint8Array(e))},c)})}return Promise.resolve().then(function(){return cb(a)})} +function eb(a,b,c){return db(a).then(function(e){return WebAssembly.instantiate(e,b)}).then(function(e){return e}).then(c,function(e){Ca("failed to asynchronously prepare wasm: "+e);Fa(e)})} +function fb(a,b){var c=ab;return Ea||"function"!=typeof WebAssembly.instantiateStreaming||$a(c)||c.startsWith("file://")||sa||"function"!=typeof fetch?eb(c,a,b):fetch(c,{credentials:"same-origin"}).then(function(e){return WebAssembly.instantiateStreaming(e,a).then(b,function(f){Ca("wasm streaming compile failed: "+f);Ca("falling back to ArrayBuffer instantiation");return eb(c,a,b)})})}function Ba(a){this.name="ExitStatus";this.message="Program terminated with exit("+a+")";this.status=a} +function hb(a){for(;0>2]=b};this.Ge=function(b){J[this.Fd+8>>2]=b};this.Ie=function(){G[this.Fd>>2]=0};this.Fe=function(){Ma[this.Fd+12>>0]=0};this.Je=function(){Ma[this.Fd+13>>0]=0};this.ie=function(b,c){this.Ee();this.Ke(b);this.Ge(c);this.Ie();this.Fe();this.Je()};this.Ee=function(){J[this.Fd+16>>2]=0}}var jb=0,kb={};function lb(a){for(;a.length;){var b=a.pop();a.pop()(b)}} +function mb(a){return this.fromWireType(G[a>>2])}var nb={},ob={},pb={};function qb(a){if(void 0===a)return"_unknown";a=a.replace(/[^a-zA-Z0-9_]/g,"$");var b=a.charCodeAt(0);return 48<=b&&57>=b?"_"+a:a}function rb(a,b){a=qb(a);return{[a]:function(){return b.apply(this,arguments)}}[a]} +function sb(a){var b=Error,c=rb(a,function(e){this.name=a;this.message=e;e=Error(e).stack;void 0!==e&&(this.stack=this.toString()+"\n"+e.replace(/^Error(:[^\n]*)?\n/,""))});c.prototype=Object.create(b.prototype);c.prototype.constructor=c;c.prototype.toString=function(){return void 0===this.message?this.name:this.name+": "+this.message};return c}var tb=void 0;function ub(a){throw new tb(a);} +function vb(a,b,c){function e(l){l=c(l);l.length!==a.length&&ub("Mismatched type converter count");for(var q=0;q{ob.hasOwnProperty(l)?f[q]=ob[l]:(k.push(l),nb.hasOwnProperty(l)||(nb[l]=[]),nb[l].push(()=>{f[q]=ob[l];++m;m===k.length&&e(f)}))});0===k.length&&e(f)} +function xb(a){switch(a){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+a);}}var yb=void 0;function O(a){for(var b="";C[a];)b+=yb[C[a++]];return b}var zb=void 0;function P(a){throw new zb(a);} +function wb(a,b,c={}){if(!("argPackAdvance"in b))throw new TypeError("registerType registeredInstance requires argPackAdvance");var e=b.name;a||P('type "'+e+'" must have a positive integer typeid pointer');if(ob.hasOwnProperty(a)){if(c.bf)return;P("Cannot register type '"+e+"' twice")}ob[a]=b;delete pb[a];nb.hasOwnProperty(a)&&(b=nb[a],delete nb[a],b.forEach(f=>f()))}function Ab(a){P(a.jd.Id.Gd.name+" instance already deleted")}var Bb=!1;function Ib(){} +function Jb(a){--a.count.value;0===a.count.value&&(a.Kd?a.Nd.Rd(a.Kd):a.Id.Gd.Rd(a.Fd))}function Kb(a,b,c){if(b===c)return a;if(void 0===c.Pd)return null;a=Kb(a,b,c.Pd);return null===a?null:c.Te(a)}var Lb={},Mb=[];function Nb(){for(;Mb.length;){var a=Mb.pop();a.jd.Yd=!1;a["delete"]()}}var Ob=void 0,Pb={};function Qb(a,b){for(void 0===b&&P("ptr should not be undefined");a.Pd;)b=a.de(b),a=a.Pd;return Pb[b]} +function Rb(a,b){b.Id&&b.Fd||ub("makeClassHandle requires ptr and ptrType");!!b.Nd!==!!b.Kd&&ub("Both smartPtrType and smartPtr must be specified");b.count={value:1};return Sb(Object.create(a,{jd:{value:b}}))}function Sb(a){if("undefined"===typeof FinalizationRegistry)return Sb=b=>b,a;Bb=new FinalizationRegistry(b=>{Jb(b.jd)});Sb=b=>{var c=b.jd;c.Kd&&Bb.register(b,{jd:c},b);return b};Ib=b=>{Bb.unregister(b)};return Sb(a)}function Tb(){} +function Ub(a,b,c){if(void 0===a[b].Jd){var e=a[b];a[b]=function(){a[b].Jd.hasOwnProperty(arguments.length)||P("Function '"+c+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+a[b].Jd+")!");return a[b].Jd[arguments.length].apply(this,arguments)};a[b].Jd=[];a[b].Jd[e.Wd]=e}} +function Vb(a,b,c){r.hasOwnProperty(a)?((void 0===c||void 0!==r[a].Jd&&void 0!==r[a].Jd[c])&&P("Cannot register public name '"+a+"' twice"),Ub(r,a,a),r.hasOwnProperty(c)&&P("Cannot register multiple overloads of a function with the same number of arguments ("+c+")!"),r[a].Jd[c]=b):(r[a]=b,void 0!==c&&(r[a].tf=c))}function Wb(a,b,c,e,f,k,m,l){this.name=a;this.constructor=b;this.Zd=c;this.Rd=e;this.Pd=f;this.We=k;this.de=m;this.Te=l;this.ff=[]} +function Xb(a,b,c){for(;b!==c;)b.de||P("Expected null or instance of "+c.name+", got an instance of "+b.name),a=b.de(a),b=b.Pd;return a}function Yb(a,b){if(null===b)return this.re&&P("null is not a valid "+this.name),0;b.jd||P('Cannot pass "'+Zb(b)+'" as a '+this.name);b.jd.Fd||P("Cannot pass deleted object as a pointer of type "+this.name);return Xb(b.jd.Fd,b.jd.Id.Gd,this.Gd)} +function $b(a,b){if(null===b){this.re&&P("null is not a valid "+this.name);if(this.he){var c=this.se();null!==a&&a.push(this.Rd,c);return c}return 0}b.jd||P('Cannot pass "'+Zb(b)+'" as a '+this.name);b.jd.Fd||P("Cannot pass deleted object as a pointer of type "+this.name);!this.ge&&b.jd.Id.ge&&P("Cannot convert argument of type "+(b.jd.Nd?b.jd.Nd.name:b.jd.Id.name)+" to parameter type "+this.name);c=Xb(b.jd.Fd,b.jd.Id.Gd,this.Gd);if(this.he)switch(void 0===b.jd.Kd&&P("Passing raw pointer to smart pointer is illegal"), +this.lf){case 0:b.jd.Nd===this?c=b.jd.Kd:P("Cannot convert argument of type "+(b.jd.Nd?b.jd.Nd.name:b.jd.Id.name)+" to parameter type "+this.name);break;case 1:c=b.jd.Kd;break;case 2:if(b.jd.Nd===this)c=b.jd.Kd;else{var e=b.clone();c=this.gf(c,ac(function(){e["delete"]()}));null!==a&&a.push(this.Rd,c)}break;default:P("Unsupporting sharing policy")}return c} +function bc(a,b){if(null===b)return this.re&&P("null is not a valid "+this.name),0;b.jd||P('Cannot pass "'+Zb(b)+'" as a '+this.name);b.jd.Fd||P("Cannot pass deleted object as a pointer of type "+this.name);b.jd.Id.ge&&P("Cannot convert argument of type "+b.jd.Id.name+" to parameter type "+this.name);return Xb(b.jd.Fd,b.jd.Id.Gd,this.Gd)} +function cc(a,b,c,e,f,k,m,l,q,x,y){this.name=a;this.Gd=b;this.re=c;this.ge=e;this.he=f;this.ef=k;this.lf=m;this.Be=l;this.se=q;this.gf=x;this.Rd=y;f||void 0!==b.Pd?this.toWireType=$b:(this.toWireType=e?Yb:bc,this.Md=null)}function dc(a,b,c){r.hasOwnProperty(a)||ub("Replacing nonexistant public symbol");void 0!==r[a].Jd&&void 0!==c?r[a].Jd[c]=b:(r[a]=b,r[a].Wd=c)}function Q(a){return Sa.get(a)} +function ec(a,b){var c=[];return function(){c.length=0;Object.assign(c,arguments);if(a.includes("j")){var e=r["dynCall_"+a];e=c&&c.length?e.apply(null,[b].concat(c)):e.call(null,b)}else e=Q(b).apply(null,c);return e}}function R(a,b){a=O(a);var c=a.includes("j")?ec(a,b):Q(b);"function"!=typeof c&&P("unknown function pointer with signature "+a+": "+b);return c}var fc=void 0;function nc(a){a=oc(a);var b=O(a);pc(a);return b} +function qc(a,b){function c(k){f[k]||ob[k]||(pb[k]?pb[k].forEach(c):(e.push(k),f[k]=!0))}var e=[],f={};b.forEach(c);throw new fc(a+": "+e.map(nc).join([", "]));} +function rc(a,b,c,e,f){var k=b.length;2>k&&P("argTypes array size mismatch! Must at least get return value and 'this' types!");var m=null!==b[1]&&null!==c,l=!1;for(c=1;c>2]);return c}var tc=[],uc=[{},{value:void 0},{value:null},{value:!0},{value:!1}];function vc(a){4{a||P("Cannot use deleted val. handle = "+a);return uc[a].value},ac=a=>{switch(a){case void 0:return 1;case null:return 2;case !0:return 3;case !1:return 4;default:var b=tc.length?tc.pop():uc.length;uc[b]={te:1,value:a};return b}}; +function xc(a,b,c){switch(b){case 0:return function(e){return this.fromWireType((c?Ma:C)[e])};case 1:return function(e){return this.fromWireType((c?Na:Oa)[e>>1])};case 2:return function(e){return this.fromWireType((c?G:J)[e>>2])};default:throw new TypeError("Unknown integer type: "+a);}}function yc(a,b){var c=ob[a];void 0===c&&P(b+" has unknown type "+nc(a));return c}function Zb(a){if(null===a)return"null";var b=typeof a;return"object"===b||"array"===b||"function"===b?a.toString():""+a} +function zc(a,b){switch(b){case 2:return function(c){return this.fromWireType(N[c>>2])};case 3:return function(c){return this.fromWireType(Pa[c>>3])};default:throw new TypeError("Unknown float type: "+a);}} +function Ac(a,b,c){switch(b){case 0:return c?function(e){return Ma[e]}:function(e){return C[e]};case 1:return c?function(e){return Na[e>>1]}:function(e){return Oa[e>>1]};case 2:return c?function(e){return G[e>>2]}:function(e){return J[e>>2]};default:throw new TypeError("Unknown integer type: "+a);}}var Bc="undefined"!=typeof TextDecoder?new TextDecoder("utf-16le"):void 0; +function Cc(a,b){var c=a>>1;for(var e=c+b/2;!(c>=e)&&Oa[c];)++c;c<<=1;if(32=b/2);++e){var f=Na[a+2*e>>1];if(0==f)break;c+=String.fromCharCode(f)}return c}function Dc(a,b,c){void 0===c&&(c=2147483647);if(2>c)return 0;c-=2;var e=b;c=c<2*a.length?c/2:a.length;for(var f=0;f>1]=a.charCodeAt(f),b+=2;Na[b>>1]=0;return b-e}function Ec(a){return 2*a.length} +function Fc(a,b){for(var c=0,e="";!(c>=b/4);){var f=G[a+4*c>>2];if(0==f)break;++c;65536<=f?(f-=65536,e+=String.fromCharCode(55296|f>>10,56320|f&1023)):e+=String.fromCharCode(f)}return e}function Gc(a,b,c){void 0===c&&(c=2147483647);if(4>c)return 0;var e=b;c=e+c-4;for(var f=0;f=k){var m=a.charCodeAt(++f);k=65536+((k&1023)<<10)|m&1023}G[b>>2]=k;b+=4;if(b+4>c)break}G[b>>2]=0;return b-e} +function Hc(a){for(var b=0,c=0;c=e&&++c;b+=4}return b}var Ic={};function Jc(a){var b=Ic[a];return void 0===b?O(a):b}var Kc=[]; +function Lc(){function a(b){b.$$$embind_global$$$=b;var c="object"==typeof $$$embind_global$$$&&b.$$$embind_global$$$==b;c||delete b.$$$embind_global$$$;return c}if("object"==typeof globalThis)return globalThis;if("object"==typeof $$$embind_global$$$)return $$$embind_global$$$;"object"==typeof global&&a(global)?$$$embind_global$$$=global:"object"==typeof self&&a(self)&&($$$embind_global$$$=self);if("object"==typeof $$$embind_global$$$)return $$$embind_global$$$;throw Error("unable to get global object."); +}function Mc(a){var b=Kc.length;Kc.push(a);return b}function Nc(a,b){for(var c=Array(a),e=0;e>2],"parameter "+e);return c}var Oc=[];function Pc(a){var b=Array(a+1);return function(c,e,f){b[0]=c;for(var k=0;k>2],"parameter "+k);b[k+1]=m.readValueFromPointer(f);f+=m.argPackAdvance}c=new (c.bind.apply(c,b));return ac(c)}}var Qc={},Rc;Rc=sa?()=>{var a=process.hrtime();return 1E3*a[0]+a[1]/1E6}:()=>performance.now(); +function Sc(a){var b=a.getExtension("ANGLE_instanced_arrays");b&&(a.vertexAttribDivisor=function(c,e){b.vertexAttribDivisorANGLE(c,e)},a.drawArraysInstanced=function(c,e,f,k){b.drawArraysInstancedANGLE(c,e,f,k)},a.drawElementsInstanced=function(c,e,f,k,m){b.drawElementsInstancedANGLE(c,e,f,k,m)})} +function Tc(a){var b=a.getExtension("OES_vertex_array_object");b&&(a.createVertexArray=function(){return b.createVertexArrayOES()},a.deleteVertexArray=function(c){b.deleteVertexArrayOES(c)},a.bindVertexArray=function(c){b.bindVertexArrayOES(c)},a.isVertexArray=function(c){return b.isVertexArrayOES(c)})}function Uc(a){var b=a.getExtension("WEBGL_draw_buffers");b&&(a.drawBuffers=function(c,e){b.drawBuffersWEBGL(c,e)})} +var Vc=1,Wc=[],Xc=[],Yc=[],Zc=[],ea=[],$c=[],ad=[],ia=[],bd=[],cd=[],ed={},fd={},gd=4;function U(a){hd||(hd=a)}function ca(a){for(var b=Vc++,c=a.length;ca.version||!b.ye)b.ye=b.getExtension("EXT_disjoint_timer_query");b.sf=b.getExtension("WEBGL_multi_draw");(b.getSupportedExtensions()||[]).forEach(function(c){c.includes("lose_context")||c.includes("debug")||b.getExtension(c)})}} +var u,hd,ld=[];function md(a,b,c,e){for(var f=0;f>2]=m}} +function nd(a,b,c){if(b){var e=void 0;switch(a){case 36346:e=1;break;case 36344:0!=c&&1!=c&&U(1280);return;case 34814:case 36345:e=0;break;case 34466:var f=X.getParameter(34467);e=f?f.length:0;break;case 33309:if(2>u.version){U(1282);return}e=2*(X.getSupportedExtensions()||[]).length;break;case 33307:case 33308:if(2>u.version){U(1280);return}e=33307==a?3:0}if(void 0===e)switch(f=X.getParameter(a),typeof f){case "number":e=f;break;case "boolean":e=f?1:0;break;case "string":U(1280);return;case "object":if(null=== +f)switch(a){case 34964:case 35725:case 34965:case 36006:case 36007:case 32873:case 34229:case 36662:case 36663:case 35053:case 35055:case 36010:case 35097:case 35869:case 32874:case 36389:case 35983:case 35368:case 34068:e=0;break;default:U(1280);return}else{if(f instanceof Float32Array||f instanceof Uint32Array||f instanceof Int32Array||f instanceof Array){for(a=0;a>2]=f[a];break;case 2:N[b+4*a>>2]=f[a];break;case 4:Ma[b+a>>0]=f[a]?1:0}return}try{e=f.name|0}catch(k){U(1280); +Ca("GL_INVALID_ENUM in glGet"+c+"v: Unknown object returned from WebGL getParameter("+a+")! (error: "+k+")");return}}break;default:U(1280);Ca("GL_INVALID_ENUM in glGet"+c+"v: Native code calling glGet"+c+"v("+a+") and it returns "+f+" of type "+typeof f+"!");return}switch(c){case 1:c=e;J[b>>2]=c;J[b+4>>2]=(c-J[b>>2])/4294967296;break;case 0:G[b>>2]=e;break;case 2:N[b>>2]=e;break;case 4:Ma[b>>0]=e?1:0}}else U(1281)}function od(a){var b=ja(a)+1,c=pd(b);ka(a,C,c,b);return c} +function qd(a){return"]"==a.slice(-1)&&a.lastIndexOf("[")}function rd(a){a-=5120;return 0==a?Ma:1==a?C:2==a?Na:4==a?G:6==a?N:5==a||28922==a||28520==a||30779==a||30782==a?J:Oa}function sd(a,b,c,e,f){a=rd(a);var k=31-Math.clz32(a.BYTES_PER_ELEMENT),m=gd;return a.subarray(f>>k,f+e*(c*({5:3,6:4,8:2,29502:3,29504:4,26917:2,26918:2,29846:3,29847:4}[b-6402]||1)*(1<>k)} +function Z(a){var b=X.Re;if(b){var c=b.ce[a];"number"==typeof c&&(b.ce[a]=c=X.getUniformLocation(b,b.Ce[a]+(0Y?-1:0S-v.getDate())E-=S-v.getDate()+1,v.setDate(1),11>H?v.setMonth(H+1):(v.setMonth(0),v.setFullYear(v.getFullYear()+1));else{v.setDate(v.getDate()+E);break}}H=new Date(v.getFullYear()+1,0,4);E=l(new Date(v.getFullYear(), +0,4));H=l(H);return 0>=m(E,v)?0>=m(H,v)?v.getFullYear()+1:v.getFullYear():v.getFullYear()-1}var x=G[e+40>>2];e={pf:G[e>>2],nf:G[e+4>>2],me:G[e+8>>2],ue:G[e+12>>2],ne:G[e+16>>2],Ud:G[e+20>>2],Qd:G[e+24>>2],Td:G[e+28>>2],vf:G[e+32>>2],mf:G[e+36>>2],qf:x?Ka(x):""};c=Ka(c);x={"%c":"%a %b %d %H:%M:%S %Y","%D":"%m/%d/%y","%F":"%Y-%m-%d","%h":"%b","%r":"%I:%M:%S %p","%R":"%H:%M","%T":"%H:%M:%S","%x":"%m/%d/%y","%X":"%H:%M:%S","%Ec":"%c","%EC":"%C","%Ex":"%m/%d/%y","%EX":"%H:%M:%S","%Ey":"%y","%EY":"%Y", +"%Od":"%d","%Oe":"%e","%OH":"%H","%OI":"%I","%Om":"%m","%OM":"%M","%OS":"%S","%Ou":"%u","%OU":"%U","%OV":"%V","%Ow":"%w","%OW":"%W","%Oy":"%y"};for(var y in x)c=c.replace(new RegExp(y,"g"),x[y]);var B="Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),D="January February March April May June July August September October November December".split(" ");x={"%a":function(v){return B[v.Qd].substring(0,3)},"%A":function(v){return B[v.Qd]},"%b":function(v){return D[v.ne].substring(0,3)}, +"%B":function(v){return D[v.ne]},"%C":function(v){return k((v.Ud+1900)/100|0,2)},"%d":function(v){return k(v.ue,2)},"%e":function(v){return f(v.ue,2," ")},"%g":function(v){return q(v).toString().substring(2)},"%G":function(v){return q(v)},"%H":function(v){return k(v.me,2)},"%I":function(v){v=v.me;0==v?v=12:12v.me?"AM":"PM"},"%S":function(v){return k(v.pf,2)},"%t":function(){return"\t"},"%u":function(v){return v.Qd||7},"%U":function(v){return k(Math.floor((v.Td+7-v.Qd)/7),2)},"%V":function(v){var E=Math.floor((v.Td+7-(v.Qd+6)%7)/7);2>=(v.Qd+371-v.Td-2)%7&&E++;if(E)53==E&&(H=(v.Qd+371-v.Td)%7,4==H||3==H&&zd(v.Ud)||(E=1));else{E=52;var H=(v.Qd+7-v.Td-1)%7;(4==H||5==H&&zd(v.Ud%400-1))&&E++}return k(E,2)},"%w":function(v){return v.Qd},"%W":function(v){return k(Math.floor((v.Td+ +7-(v.Qd+6)%7)/7),2)},"%y":function(v){return(v.Ud+1900).toString().substring(2)},"%Y":function(v){return v.Ud+1900},"%z":function(v){v=v.mf;var E=0<=v;v=Math.abs(v)/60;return(E?"+":"-")+String("0000"+(v/60*100+v%60)).slice(-4)},"%Z":function(v){return v.qf},"%%":function(){return"%"}};c=c.replace(/%%/g,"\x00\x00");for(y in x)c.includes(y)&&(c=c.replace(new RegExp(y,"g"),x[y](e)));c=c.replace(/\0\0/g,"%");y=Cd(c);if(y.length>b)return 0;Ma.set(y,a);return y.length-1}tb=r.InternalError=sb("InternalError"); +for(var Ed=Array(256),Fd=0;256>Fd;++Fd)Ed[Fd]=String.fromCharCode(Fd);yb=Ed;zb=r.BindingError=sb("BindingError");Tb.prototype.isAliasOf=function(a){if(!(this instanceof Tb&&a instanceof Tb))return!1;var b=this.jd.Id.Gd,c=this.jd.Fd,e=a.jd.Id.Gd;for(a=a.jd.Fd;b.Pd;)c=b.de(c),b=b.Pd;for(;e.Pd;)a=e.de(a),e=e.Pd;return b===e&&c===a}; +Tb.prototype.clone=function(){this.jd.Fd||Ab(this);if(this.jd.be)return this.jd.count.value+=1,this;var a=Sb,b=Object,c=b.create,e=Object.getPrototypeOf(this),f=this.jd;a=a(c.call(b,e,{jd:{value:{count:f.count,Yd:f.Yd,be:f.be,Fd:f.Fd,Id:f.Id,Kd:f.Kd,Nd:f.Nd}}}));a.jd.count.value+=1;a.jd.Yd=!1;return a};Tb.prototype["delete"]=function(){this.jd.Fd||Ab(this);this.jd.Yd&&!this.jd.be&&P("Object already scheduled for deletion");Ib(this);Jb(this.jd);this.jd.be||(this.jd.Kd=void 0,this.jd.Fd=void 0)}; +Tb.prototype.isDeleted=function(){return!this.jd.Fd};Tb.prototype.deleteLater=function(){this.jd.Fd||Ab(this);this.jd.Yd&&!this.jd.be&&P("Object already scheduled for deletion");Mb.push(this);1===Mb.length&&Ob&&Ob(Nb);this.jd.Yd=!0;return this};r.getInheritedInstanceCount=function(){return Object.keys(Pb).length};r.getLiveInheritedInstances=function(){var a=[],b;for(b in Pb)Pb.hasOwnProperty(b)&&a.push(Pb[b]);return a};r.flushPendingDeletes=Nb;r.setDelayFunction=function(a){Ob=a;Mb.length&&Ob&&Ob(Nb)}; +cc.prototype.Xe=function(a){this.Be&&(a=this.Be(a));return a};cc.prototype.we=function(a){this.Rd&&this.Rd(a)};cc.prototype.argPackAdvance=8;cc.prototype.readValueFromPointer=mb;cc.prototype.deleteObject=function(a){if(null!==a)a["delete"]()}; +cc.prototype.fromWireType=function(a){function b(){return this.he?Rb(this.Gd.Zd,{Id:this.ef,Fd:c,Nd:this,Kd:a}):Rb(this.Gd.Zd,{Id:this,Fd:a})}var c=this.Xe(a);if(!c)return this.we(a),null;var e=Qb(this.Gd,c);if(void 0!==e){if(0===e.jd.count.value)return e.jd.Fd=c,e.jd.Kd=a,e.clone();e=e.clone();this.we(a);return e}e=this.Gd.We(c);e=Lb[e];if(!e)return b.call(this);e=this.ge?e.Qe:e.pointerType;var f=Kb(c,this.Gd,e.Gd);return null===f?b.call(this):this.he?Rb(e.Gd.Zd,{Id:e,Fd:f,Nd:this,Kd:a}):Rb(e.Gd.Zd, +{Id:e,Fd:f})};fc=r.UnboundTypeError=sb("UnboundTypeError");r.count_emval_handles=function(){for(var a=0,b=5;bGd;++Gd)ld.push(Array(Gd));var Hd=new Float32Array(288);for(Gd=0;288>Gd;++Gd)td[Gd]=Hd.subarray(0,Gd+1);var Id=new Int32Array(288);for(Gd=0;288>Gd;++Gd)ud[Gd]=Id.subarray(0,Gd+1); +var Wd={G:function(a,b,c){(new ib(a)).ie(b,c);jb++;throw a;},T:function(){return 0},rb:function(){},tb:function(){return 0},pb:function(){},ub:function(){},qb:function(){},C:function(a){var b=kb[a];delete kb[a];var c=b.se,e=b.Rd,f=b.ze,k=f.map(m=>m.$e).concat(f.map(m=>m.jf));vb([a],k,m=>{var l={};f.forEach((q,x)=>{var y=m[x],B=q.Ye,D=q.Ze,v=m[x+f.length],E=q.hf,H=q.kf;l[q.Ve]={read:S=>y.fromWireType(B(D,S)),write:(S,Y)=>{var da=[];E(H,S,v.toWireType(da,Y));lb(da)}}});return[{name:b.name,fromWireType:function(q){var x= +{},y;for(y in l)x[y]=l[y].read(q);e(q);return x},toWireType:function(q,x){for(var y in l)if(!(y in x))throw new TypeError('Missing field: "'+y+'"');var B=c();for(y in l)l[y].write(B,x[y]);null!==q&&q.push(e,B);return B},argPackAdvance:8,readValueFromPointer:mb,Md:e}]})},hb:function(){},yb:function(a,b,c,e,f){var k=xb(c);b=O(b);wb(a,{name:b,fromWireType:function(m){return!!m},toWireType:function(m,l){return l?e:f},argPackAdvance:8,readValueFromPointer:function(m){if(1===c)var l=Ma;else if(2===c)l= +Na;else if(4===c)l=G;else throw new TypeError("Unknown boolean type size: "+b);return this.fromWireType(l[m>>k])},Md:null})},l:function(a,b,c,e,f,k,m,l,q,x,y,B,D){y=O(y);k=R(f,k);l&&(l=R(m,l));x&&(x=R(q,x));D=R(B,D);var v=qb(y);Vb(v,function(){qc("Cannot construct "+y+" due to unbound types",[e])});vb([a,b,c],e?[e]:[],function(E){E=E[0];if(e){var H=E.Gd;var S=H.Zd}else S=Tb.prototype;E=rb(v,function(){if(Object.getPrototypeOf(this)!==Y)throw new zb("Use 'new' to construct "+y);if(void 0===da.Sd)throw new zb(y+ +" has no accessible constructor");var La=da.Sd[arguments.length];if(void 0===La)throw new zb("Tried to invoke ctor of "+y+" with invalid number of parameters ("+arguments.length+") - expected ("+Object.keys(da.Sd).toString()+") parameters instead!");return La.apply(this,arguments)});var Y=Object.create(S,{constructor:{value:E}});E.prototype=Y;var da=new Wb(y,E,Y,D,H,k,l,x);H=new cc(y,da,!0,!1,!1);S=new cc(y+"*",da,!1,!1,!1);var ua=new cc(y+" const*",da,!1,!0,!1);Lb[a]={pointerType:S,Qe:ua};dc(v,E); +return[H,S,ua]})},e:function(a,b,c,e,f,k,m){var l=sc(c,e);b=O(b);k=R(f,k);vb([],[a],function(q){function x(){qc("Cannot call "+y+" due to unbound types",l)}q=q[0];var y=q.name+"."+b;b.startsWith("@@")&&(b=Symbol[b.substring(2)]);var B=q.Gd.constructor;void 0===B[b]?(x.Wd=c-1,B[b]=x):(Ub(B,b,y),B[b].Jd[c-1]=x);vb([],l,function(D){D=[D[0],null].concat(D.slice(1));D=rc(y,D,null,k,m);void 0===B[b].Jd?(D.Wd=c-1,B[b]=D):B[b].Jd[c-1]=D;return[]});return[]})},A:function(a,b,c,e,f,k){0{qc("Cannot construct "+l.name+" due to unbound types",m)};vb([],m,function(x){x.splice(1,0,null);l.Gd.Sd[b-1]=rc(q,x,null,f,k);return[]}); +return[]})},a:function(a,b,c,e,f,k,m,l){var q=sc(c,e);b=O(b);k=R(f,k);vb([],[a],function(x){function y(){qc("Cannot call "+B+" due to unbound types",q)}x=x[0];var B=x.name+"."+b;b.startsWith("@@")&&(b=Symbol[b.substring(2)]);l&&x.Gd.ff.push(b);var D=x.Gd.Zd,v=D[b];void 0===v||void 0===v.Jd&&v.className!==x.name&&v.Wd===c-2?(y.Wd=c-2,y.className=x.name,D[b]=y):(Ub(D,b,B),D[b].Jd[c-2]=y);vb([],q,function(E){E=rc(B,E,x,k,m);void 0===D[b].Jd?(E.Wd=c-2,D[b]=E):D[b].Jd[c-2]=E;return[]});return[]})},r:function(a, +b,c){a=O(a);vb([],[b],function(e){e=e[0];r[a]=e.fromWireType(c);return[]})},xb:function(a,b){b=O(b);wb(a,{name:b,fromWireType:function(c){var e=wc(c);vc(c);return e},toWireType:function(c,e){return ac(e)},argPackAdvance:8,readValueFromPointer:mb,Md:null})},i:function(a,b,c,e){function f(){}c=xb(c);b=O(b);f.values={};wb(a,{name:b,constructor:f,fromWireType:function(k){return this.constructor.values[k]},toWireType:function(k,m){return m.value},argPackAdvance:8,readValueFromPointer:xc(b,c,e),Md:null}); +Vb(b,f)},b:function(a,b,c){var e=yc(a,"enum");b=O(b);a=e.constructor;e=Object.create(e.constructor.prototype,{value:{value:c},constructor:{value:rb(e.name+"_"+b,function(){})}});a.values[c]=e;a[b]=e},W:function(a,b,c){c=xb(c);b=O(b);wb(a,{name:b,fromWireType:function(e){return e},toWireType:function(e,f){return f},argPackAdvance:8,readValueFromPointer:zc(b,c),Md:null})},t:function(a,b,c,e,f,k){var m=sc(b,c);a=O(a);f=R(e,f);Vb(a,function(){qc("Cannot call "+a+" due to unbound types",m)},b-1);vb([], +m,function(l){l=[l[0],null].concat(l.slice(1));dc(a,rc(a,l,null,f,k),b-1);return[]})},E:function(a,b,c,e,f){b=O(b);-1===f&&(f=4294967295);f=xb(c);var k=l=>l;if(0===e){var m=32-8*c;k=l=>l<>>m}c=b.includes("unsigned")?function(l,q){return q>>>0}:function(l,q){return q};wb(a,{name:b,fromWireType:k,toWireType:c,argPackAdvance:8,readValueFromPointer:Ac(b,f,0!==e),Md:null})},s:function(a,b,c){function e(k){k>>=2;var m=J;return new f(m.buffer,m[k+1],m[k])}var f=[Int8Array,Uint8Array,Int16Array,Uint16Array, +Int32Array,Uint32Array,Float32Array,Float64Array][b];c=O(c);wb(a,{name:c,fromWireType:e,argPackAdvance:8,readValueFromPointer:e},{bf:!0})},q:function(a,b,c,e,f,k,m,l,q,x,y,B){c=O(c);k=R(f,k);l=R(m,l);x=R(q,x);B=R(y,B);vb([a],[b],function(D){D=D[0];return[new cc(c,D.Gd,!1,!1,!0,D,e,k,l,x,B)]})},V:function(a,b){b=O(b);var c="std::string"===b;wb(a,{name:b,fromWireType:function(e){var f=J[e>>2],k=e+4;if(c)for(var m=k,l=0;l<=f;++l){var q=k+l;if(l==f||0==C[q]){m=Ka(m,q-m);if(void 0===x)var x=m;else x+= +String.fromCharCode(0),x+=m;m=q+1}}else{x=Array(f);for(l=0;l>2]=k;if(c&&m)ka(f,C,q,k+1);else if(m)for(m=0;mOa;var l=1}else 4===b&&(e=Fc,f=Gc,k=Hc,m=()=>J,l=2);wb(a,{name:c,fromWireType:function(q){for(var x=J[q>>2],y=m(),B,D=q+4,v=0;v<=x;++v){var E=q+4+v*b;if(v==x||0==y[E>>l])D=e(D,E-D),void 0===B?B=D:(B+=String.fromCharCode(0),B+=D),D=E+b}pc(q);return B},toWireType:function(q,x){"string"!=typeof x&& +P("Cannot pass non-string to C++ string type "+c);var y=k(x),B=pd(4+y+b);J[B>>2]=y>>l;f(x,B+4,y+b);null!==q&&q.push(pc,B);return B},argPackAdvance:8,readValueFromPointer:mb,Md:function(q){pc(q)}})},D:function(a,b,c,e,f,k){kb[a]={name:O(b),se:R(c,e),Rd:R(f,k),ze:[]}},d:function(a,b,c,e,f,k,m,l,q,x){kb[a].ze.push({Ve:O(b),$e:c,Ye:R(e,f),Ze:k,jf:m,hf:R(l,q),kf:x})},zb:function(a,b){b=O(b);wb(a,{df:!0,name:b,argPackAdvance:0,fromWireType:function(){},toWireType:function(){}})},wb:function(){return!0}, +jb:function(){throw Infinity;},F:function(a,b,c){a=wc(a);b=yc(b,"emval::as");var e=[],f=ac(e);J[c>>2]=f;return b.toWireType(e,a)},O:function(a,b,c,e,f){a=Kc[a];b=wc(b);c=Jc(c);var k=[];J[e>>2]=ac(k);return a(b,c,k,f)},x:function(a,b,c,e){a=Kc[a];b=wc(b);c=Jc(c);a(b,c,null,e)},c:vc,K:function(a){if(0===a)return ac(Lc());a=Jc(a);return ac(Lc()[a])},u:function(a,b){var c=Nc(a,b),e=c[0];b=e.name+"_$"+c.slice(1).map(function(m){return m.name}).join("_")+"$";var f=Oc[b];if(void 0!==f)return f;var k=Array(a- +1);f=Mc((m,l,q,x)=>{for(var y=0,B=0;B>>0)+4294967296*e)},ba:function(a,b,c,e){X.colorMask(!!a,!!b,!!c,!!e)},ca:function(a){X.compileShader($c[a])},da:function(a,b,c,e,f,k,m,l){2<=u.version?X.Xd||!m?X.compressedTexImage2D(a, +b,c,e,f,k,m,l):X.compressedTexImage2D(a,b,c,e,f,k,C,l,m):X.compressedTexImage2D(a,b,c,e,f,k,l?C.subarray(l,l+m):null)},ea:function(a,b,c,e,f,k,m,l,q){2<=u.version?X.Xd||!l?X.compressedTexSubImage2D(a,b,c,e,f,k,m,l,q):X.compressedTexSubImage2D(a,b,c,e,f,k,m,C,q,l):X.compressedTexSubImage2D(a,b,c,e,f,k,m,q?C.subarray(q,q+l):null)},Pb:function(a,b,c,e,f){X.copyBufferSubData(a,b,c,e,f)},fa:function(a,b,c,e,f,k,m,l){X.copyTexSubImage2D(a,b,c,e,f,k,m,l)},ga:function(){var a=ca(Xc),b=X.createProgram();b.name= +a;b.le=b.je=b.ke=0;b.ve=1;Xc[a]=b;return a},ha:function(a){var b=ca($c);$c[b]=X.createShader(a);return b},ia:function(a){X.cullFace(a)},ja:function(a,b){for(var c=0;c>2],f=Wc[e];f&&(X.deleteBuffer(f),f.name=0,Wc[e]=null,e==X.pe&&(X.pe=0),e==X.Xd&&(X.Xd=0))}},Zb:function(a,b){for(var c=0;c>2],f=Yc[e];f&&(X.deleteFramebuffer(f),f.name=0,Yc[e]=null)}},ka:function(a){if(a){var b=Xc[a];b?(X.deleteProgram(b),b.name=0,Xc[a]=null):U(1281)}},_b:function(a,b){for(var c= +0;c>2],f=Zc[e];f&&(X.deleteRenderbuffer(f),f.name=0,Zc[e]=null)}},Ib:function(a,b){for(var c=0;c>2],f=bd[e];f&&(X.deleteSampler(f),f.name=0,bd[e]=null)}},la:function(a){if(a){var b=$c[a];b?(X.deleteShader(b),$c[a]=null):U(1281)}},Qb:function(a){if(a){var b=cd[a];b?(X.deleteSync(b),b.name=0,cd[a]=null):U(1281)}},ma:function(a,b){for(var c=0;c>2],f=ea[e];f&&(X.deleteTexture(f),f.name=0,ea[e]=null)}},qc:function(a,b){for(var c=0;c>2];X.deleteVertexArray(ad[e]);ad[e]=null}},tc:function(a,b){for(var c=0;c>2];X.deleteVertexArray(ad[e]);ad[e]=null}},na:function(a){X.depthMask(!!a)},oa:function(a){X.disable(a)},pa:function(a){X.disableVertexAttribArray(a)},qa:function(a,b,c){X.drawArrays(a,b,c)},nc:function(a,b,c,e){X.drawArraysInstanced(a,b,c,e)},lc:function(a,b,c,e,f){X.xe.drawArraysInstancedBaseInstanceWEBGL(a,b,c,e,f)},jc:function(a,b){for(var c=ld[a],e=0;e>2];X.drawBuffers(c)}, +ra:function(a,b,c,e){X.drawElements(a,b,c,e)},oc:function(a,b,c,e,f){X.drawElementsInstanced(a,b,c,e,f)},mc:function(a,b,c,e,f,k,m){X.xe.drawElementsInstancedBaseVertexBaseInstanceWEBGL(a,b,c,e,f,k,m)},dc:function(a,b,c,e,f,k){X.drawElements(a,e,f,k)},sa:function(a){X.enable(a)},ta:function(a){X.enableVertexAttribArray(a)},Nb:function(a,b){return(a=X.fenceSync(a,b))?(b=ca(cd),a.name=b,cd[b]=a,b):0},ua:function(){X.finish()},va:function(){X.flush()},$b:function(a,b,c,e){X.framebufferRenderbuffer(a, +b,c,Zc[e])},ac:function(a,b,c,e,f){X.framebufferTexture2D(a,b,c,ea[e],f)},wa:function(a){X.frontFace(a)},xa:function(a,b){md(a,b,"createBuffer",Wc)},bc:function(a,b){md(a,b,"createFramebuffer",Yc)},cc:function(a,b){md(a,b,"createRenderbuffer",Zc)},Jb:function(a,b){md(a,b,"createSampler",bd)},ya:function(a,b){md(a,b,"createTexture",ea)},rc:function(a,b){md(a,b,"createVertexArray",ad)},uc:function(a,b){md(a,b,"createVertexArray",ad)},Tb:function(a){X.generateMipmap(a)},za:function(a,b,c){c?G[c>>2]= +X.getBufferParameter(a,b):U(1281)},Aa:function(){var a=X.getError()||hd;hd=0;return a},Ba:function(a,b){nd(a,b,2)},Ub:function(a,b,c,e){a=X.getFramebufferAttachmentParameter(a,b,c);if(a instanceof WebGLRenderbuffer||a instanceof WebGLTexture)a=a.name|0;G[e>>2]=a},L:function(a,b){nd(a,b,0)},Ca:function(a,b,c,e){a=X.getProgramInfoLog(Xc[a]);null===a&&(a="(unknown error)");b=0>2]=b)},Da:function(a,b,c){if(c)if(a>=Vc)U(1281);else if(a=Xc[a],35716==b)a=X.getProgramInfoLog(a), +null===a&&(a="(unknown error)"),G[c>>2]=a.length+1;else if(35719==b){if(!a.le)for(b=0;b>2]=a.le}else if(35722==b){if(!a.je)for(b=0;b>2]=a.je}else if(35381==b){if(!a.ke)for(b=0;b>2]=a.ke}else G[c>>2]=X.getProgramParameter(a, +b);else U(1281)},Vb:function(a,b,c){c?G[c>>2]=X.getRenderbufferParameter(a,b):U(1281)},Ea:function(a,b,c,e){a=X.getShaderInfoLog($c[a]);null===a&&(a="(unknown error)");b=0>2]=b)},Eb:function(a,b,c,e){a=X.getShaderPrecisionFormat(a,b);G[c>>2]=a.rangeMin;G[c+4>>2]=a.rangeMax;G[e>>2]=a.precision},Fa:function(a,b,c){c?35716==b?(a=X.getShaderInfoLog($c[a]),null===a&&(a="(unknown error)"),G[c>>2]=a?a.length+1:0):35720==b?(a=X.getShaderSource($c[a]),G[c>>2]=a?a.length+1:0):G[c>> +2]=X.getShaderParameter($c[a],b):U(1281)},P:function(a){var b=ed[a];if(!b){switch(a){case 7939:b=X.getSupportedExtensions()||[];b=b.concat(b.map(function(e){return"GL_"+e}));b=od(b.join(" "));break;case 7936:case 7937:case 37445:case 37446:(b=X.getParameter(a))||U(1280);b=b&&od(b);break;case 7938:b=X.getParameter(7938);b=2<=u.version?"OpenGL ES 3.0 ("+b+")":"OpenGL ES 2.0 ("+b+")";b=od(b);break;case 35724:b=X.getParameter(35724);var c=b.match(/^WebGL GLSL ES ([0-9]\.[0-9][0-9]?)(?:$| .*)/);null!== +c&&(3==c[1].length&&(c[1]+="0"),b="OpenGL ES GLSL ES "+c[1]+" ("+b+")");b=od(b);break;default:U(1280)}ed[a]=b}return b},ab:function(a,b){if(2>u.version)return U(1282),0;var c=fd[a];if(c)return 0>b||b>=c.length?(U(1281),0):c[b];switch(a){case 7939:return c=X.getSupportedExtensions()||[],c=c.concat(c.map(function(e){return"GL_"+e})),c=c.map(function(e){return od(e)}),c=fd[a]=c,0>b||b>=c.length?(U(1281),0):c[b];default:return U(1280),0}},Ga:function(a,b){b=Ka(b);if(a=Xc[a]){var c=a,e=c.ce,f=c.De,k;if(!e)for(c.ce= +e={},c.Ce={},k=0;k>>0,f=b.slice(0,k));if((f=a.De[f])&&e>2];X.invalidateFramebuffer(a,e)},Gb:function(a,b,c,e,f,k,m){for(var l= +ld[b],q=0;q>2];X.invalidateSubFramebuffer(a,l,e,f,k,m)},Ob:function(a){return X.isSync(cd[a])},Ha:function(a){return(a=ea[a])?X.isTexture(a):0},Ia:function(a){X.lineWidth(a)},Ja:function(a){a=Xc[a];X.linkProgram(a);a.ce=0;a.De={}},hc:function(a,b,c,e,f,k){X.Ae.multiDrawArraysInstancedBaseInstanceWEBGL(a,G,b>>2,G,c>>2,G,e>>2,J,f>>2,k)},ic:function(a,b,c,e,f,k,m,l){X.Ae.multiDrawElementsInstancedBaseVertexBaseInstanceWEBGL(a,G,b>>2,c,G,e>>2,G,f>>2,G,k>>2,J,m>>2,l)},Ka:function(a, +b){3317==a&&(gd=b);X.pixelStorei(a,b)},kc:function(a){X.readBuffer(a)},La:function(a,b,c,e,f,k,m){if(2<=u.version)if(X.pe)X.readPixels(a,b,c,e,f,k,m);else{var l=rd(k);X.readPixels(a,b,c,e,f,k,l,m>>31-Math.clz32(l.BYTES_PER_ELEMENT))}else(m=sd(k,f,c,e,m))?X.readPixels(a,b,c,e,f,k,m):U(1280)},Wb:function(a,b,c,e){X.renderbufferStorage(a,b,c,e)},Sb:function(a,b,c,e,f){X.renderbufferStorageMultisample(a,b,c,e,f)},Kb:function(a,b,c){X.samplerParameterf(bd[a],b,c)},Lb:function(a,b,c){X.samplerParameteri(bd[a], +b,c)},Mb:function(a,b,c){X.samplerParameteri(bd[a],b,G[c>>2])},Ma:function(a,b,c,e){X.scissor(a,b,c,e)},Na:function(a,b,c,e){for(var f="",k=0;k>2]:-1;f+=Ka(G[c+4*k>>2],0>m?void 0:m)}X.shaderSource($c[a],f)},Oa:function(a,b,c){X.stencilFunc(a,b,c)},Pa:function(a,b,c,e){X.stencilFuncSeparate(a,b,c,e)},Qa:function(a){X.stencilMask(a)},Ra:function(a,b){X.stencilMaskSeparate(a,b)},Sa:function(a,b,c){X.stencilOp(a,b,c)},Ta:function(a,b,c,e){X.stencilOpSeparate(a,b,c,e)},Ua:function(a, +b,c,e,f,k,m,l,q){if(2<=u.version)if(X.Xd)X.texImage2D(a,b,c,e,f,k,m,l,q);else if(q){var x=rd(l);X.texImage2D(a,b,c,e,f,k,m,l,x,q>>31-Math.clz32(x.BYTES_PER_ELEMENT))}else X.texImage2D(a,b,c,e,f,k,m,l,null);else X.texImage2D(a,b,c,e,f,k,m,l,q?sd(l,m,e,f,q):null)},Va:function(a,b,c){X.texParameterf(a,b,c)},Wa:function(a,b,c){X.texParameterf(a,b,N[c>>2])},Xa:function(a,b,c){X.texParameteri(a,b,c)},Ya:function(a,b,c){X.texParameteri(a,b,G[c>>2])},ec:function(a,b,c,e,f){X.texStorage2D(a,b,c,e,f)},Za:function(a, +b,c,e,f,k,m,l,q){if(2<=u.version)if(X.Xd)X.texSubImage2D(a,b,c,e,f,k,m,l,q);else if(q){var x=rd(l);X.texSubImage2D(a,b,c,e,f,k,m,l,x,q>>31-Math.clz32(x.BYTES_PER_ELEMENT))}else X.texSubImage2D(a,b,c,e,f,k,m,l,null);else x=null,q&&(x=sd(l,m,f,k,q)),X.texSubImage2D(a,b,c,e,f,k,m,l,x)},_a:function(a,b){X.uniform1f(Z(a),b)},$a:function(a,b,c){if(2<=u.version)b&&X.uniform1fv(Z(a),N,c>>2,b);else{if(288>=b)for(var e=td[b-1],f=0;f>2];else e=N.subarray(c>>2,c+4*b>>2);X.uniform1fv(Z(a), +e)}},Pc:function(a,b){X.uniform1i(Z(a),b)},Qc:function(a,b,c){if(2<=u.version)b&&X.uniform1iv(Z(a),G,c>>2,b);else{if(288>=b)for(var e=ud[b-1],f=0;f>2];else e=G.subarray(c>>2,c+4*b>>2);X.uniform1iv(Z(a),e)}},Rc:function(a,b,c){X.uniform2f(Z(a),b,c)},Sc:function(a,b,c){if(2<=u.version)b&&X.uniform2fv(Z(a),N,c>>2,2*b);else{if(144>=b)for(var e=td[2*b-1],f=0;f<2*b;f+=2)e[f]=N[c+4*f>>2],e[f+1]=N[c+(4*f+4)>>2];else e=N.subarray(c>>2,c+8*b>>2);X.uniform2fv(Z(a),e)}},Oc:function(a,b,c){X.uniform2i(Z(a), +b,c)},Nc:function(a,b,c){if(2<=u.version)b&&X.uniform2iv(Z(a),G,c>>2,2*b);else{if(144>=b)for(var e=ud[2*b-1],f=0;f<2*b;f+=2)e[f]=G[c+4*f>>2],e[f+1]=G[c+(4*f+4)>>2];else e=G.subarray(c>>2,c+8*b>>2);X.uniform2iv(Z(a),e)}},Mc:function(a,b,c,e){X.uniform3f(Z(a),b,c,e)},Lc:function(a,b,c){if(2<=u.version)b&&X.uniform3fv(Z(a),N,c>>2,3*b);else{if(96>=b)for(var e=td[3*b-1],f=0;f<3*b;f+=3)e[f]=N[c+4*f>>2],e[f+1]=N[c+(4*f+4)>>2],e[f+2]=N[c+(4*f+8)>>2];else e=N.subarray(c>>2,c+12*b>>2);X.uniform3fv(Z(a),e)}}, +Kc:function(a,b,c,e){X.uniform3i(Z(a),b,c,e)},Jc:function(a,b,c){if(2<=u.version)b&&X.uniform3iv(Z(a),G,c>>2,3*b);else{if(96>=b)for(var e=ud[3*b-1],f=0;f<3*b;f+=3)e[f]=G[c+4*f>>2],e[f+1]=G[c+(4*f+4)>>2],e[f+2]=G[c+(4*f+8)>>2];else e=G.subarray(c>>2,c+12*b>>2);X.uniform3iv(Z(a),e)}},Ic:function(a,b,c,e,f){X.uniform4f(Z(a),b,c,e,f)},Hc:function(a,b,c){if(2<=u.version)b&&X.uniform4fv(Z(a),N,c>>2,4*b);else{if(72>=b){var e=td[4*b-1],f=N;c>>=2;for(var k=0;k<4*b;k+=4){var m=c+k;e[k]=f[m];e[k+1]=f[m+1];e[k+ +2]=f[m+2];e[k+3]=f[m+3]}}else e=N.subarray(c>>2,c+16*b>>2);X.uniform4fv(Z(a),e)}},vc:function(a,b,c,e,f){X.uniform4i(Z(a),b,c,e,f)},wc:function(a,b,c){if(2<=u.version)b&&X.uniform4iv(Z(a),G,c>>2,4*b);else{if(72>=b)for(var e=ud[4*b-1],f=0;f<4*b;f+=4)e[f]=G[c+4*f>>2],e[f+1]=G[c+(4*f+4)>>2],e[f+2]=G[c+(4*f+8)>>2],e[f+3]=G[c+(4*f+12)>>2];else e=G.subarray(c>>2,c+16*b>>2);X.uniform4iv(Z(a),e)}},xc:function(a,b,c,e){if(2<=u.version)b&&X.uniformMatrix2fv(Z(a),!!c,N,e>>2,4*b);else{if(72>=b)for(var f=td[4* +b-1],k=0;k<4*b;k+=4)f[k]=N[e+4*k>>2],f[k+1]=N[e+(4*k+4)>>2],f[k+2]=N[e+(4*k+8)>>2],f[k+3]=N[e+(4*k+12)>>2];else f=N.subarray(e>>2,e+16*b>>2);X.uniformMatrix2fv(Z(a),!!c,f)}},yc:function(a,b,c,e){if(2<=u.version)b&&X.uniformMatrix3fv(Z(a),!!c,N,e>>2,9*b);else{if(32>=b)for(var f=td[9*b-1],k=0;k<9*b;k+=9)f[k]=N[e+4*k>>2],f[k+1]=N[e+(4*k+4)>>2],f[k+2]=N[e+(4*k+8)>>2],f[k+3]=N[e+(4*k+12)>>2],f[k+4]=N[e+(4*k+16)>>2],f[k+5]=N[e+(4*k+20)>>2],f[k+6]=N[e+(4*k+24)>>2],f[k+7]=N[e+(4*k+28)>>2],f[k+8]=N[e+(4*k+ +32)>>2];else f=N.subarray(e>>2,e+36*b>>2);X.uniformMatrix3fv(Z(a),!!c,f)}},zc:function(a,b,c,e){if(2<=u.version)b&&X.uniformMatrix4fv(Z(a),!!c,N,e>>2,16*b);else{if(18>=b){var f=td[16*b-1],k=N;e>>=2;for(var m=0;m<16*b;m+=16){var l=e+m;f[m]=k[l];f[m+1]=k[l+1];f[m+2]=k[l+2];f[m+3]=k[l+3];f[m+4]=k[l+4];f[m+5]=k[l+5];f[m+6]=k[l+6];f[m+7]=k[l+7];f[m+8]=k[l+8];f[m+9]=k[l+9];f[m+10]=k[l+10];f[m+11]=k[l+11];f[m+12]=k[l+12];f[m+13]=k[l+13];f[m+14]=k[l+14];f[m+15]=k[l+15]}}else f=N.subarray(e>>2,e+64*b>>2); +X.uniformMatrix4fv(Z(a),!!c,f)}},Ac:function(a){a=Xc[a];X.useProgram(a);X.Re=a},Bc:function(a,b){X.vertexAttrib1f(a,b)},Cc:function(a,b){X.vertexAttrib2f(a,N[b>>2],N[b+4>>2])},Dc:function(a,b){X.vertexAttrib3f(a,N[b>>2],N[b+4>>2],N[b+8>>2])},Ec:function(a,b){X.vertexAttrib4f(a,N[b>>2],N[b+4>>2],N[b+8>>2],N[b+12>>2])},fc:function(a,b){X.vertexAttribDivisor(a,b)},gc:function(a,b,c,e,f){X.vertexAttribIPointer(a,b,c,e,f)},Fc:function(a,b,c,e,f,k){X.vertexAttribPointer(a,b,c,!!e,f,k)},Gc:function(a,b, +c,e){X.viewport(a,b,c,e)},cb:function(a,b,c,e){X.waitSync(cd[a],b,(c>>>0)+4294967296*e)},kb:function(a){var b=C.length;a>>>=0;if(2147483648=c;c*=2){var e=b*(1+.2/c);e=Math.min(e,a+100663296);var f=Math,k=f.min;e=Math.max(a,e);e+=(65536-e%65536)%65536;a:{var m=Ga.buffer;try{Ga.grow(k.call(f,2147483648,e)-m.byteLength+65535>>>16);Qa();var l=1;break a}catch(q){}l=void 0}if(l)return!0}return!1},eb:function(){return u?u.af:0},nb:function(a,b){var c=0;wd().forEach(function(e,f){var k= +b+c;f=J[a+4*f>>2]=k;for(k=0;k>0]=e.charCodeAt(k);Ma[f>>0]=0;c+=e.length+1});return 0},ob:function(a,b){var c=wd();J[a>>2]=c.length;var e=0;c.forEach(function(f){e+=f.length+1});J[b>>2]=e;return 0},Ab:function(a){if(!noExitRuntime){if(r.onExit)r.onExit(a);Ha=!0}oa(a,new Ba(a))},U:function(){return 52},fb:function(){return 52},sb:function(){return 52},gb:function(){return 70},R:function(a,b,c,e){for(var f=0,k=0;k>2],l=J[b+4>>2];b+=8;for(var q=0;q>2]=f;return 0},n:Jd,m:Kd,k:Ld,N:Md,Y:Nd,X:Od,w:Pd,y:Qd,p:Rd,v:Sd,Bb:Td,Cb:Ud,Db:Vd,ib:function(a,b,c,e){return Dd(a,b,c,e)}}; +(function(){function a(c){c=c.exports;r.asm=c;Ga=r.asm.$c;Qa();Sa=r.asm.bd;Ua.unshift(r.asm.ad);Xa--;r.monitorRunDependencies&&r.monitorRunDependencies(Xa);if(0==Xa&&(null!==Ya&&(clearInterval(Ya),Ya=null),Za)){var e=Za;Za=null;e()}return c}var b={a:Wd};Xa++;r.monitorRunDependencies&&r.monitorRunDependencies(Xa);if(r.instantiateWasm)try{return r.instantiateWasm(b,a)}catch(c){Ca("Module.instantiateWasm callback failed with error: "+c),ba(c)}fb(b,function(c){a(c.instance)}).catch(ba);return{}})(); +var pc=r._free=function(){return(pc=r._free=r.asm.cd).apply(null,arguments)},pd=r._malloc=function(){return(pd=r._malloc=r.asm.dd).apply(null,arguments)},oc=r.___getTypeName=function(){return(oc=r.___getTypeName=r.asm.ed).apply(null,arguments)};r.__embind_initialize_bindings=function(){return(r.__embind_initialize_bindings=r.asm.fd).apply(null,arguments)};function Xd(){return(Xd=r.asm.gd).apply(null,arguments)}function Yd(){return(Yd=r.asm.hd).apply(null,arguments)} +function Zd(){return(Zd=r.asm.id).apply(null,arguments)}r.dynCall_viji=function(){return(r.dynCall_viji=r.asm.kd).apply(null,arguments)};r.dynCall_vijiii=function(){return(r.dynCall_vijiii=r.asm.ld).apply(null,arguments)};r.dynCall_viiiiij=function(){return(r.dynCall_viiiiij=r.asm.md).apply(null,arguments)};r.dynCall_jii=function(){return(r.dynCall_jii=r.asm.nd).apply(null,arguments)};r.dynCall_vij=function(){return(r.dynCall_vij=r.asm.od).apply(null,arguments)}; +r.dynCall_iiij=function(){return(r.dynCall_iiij=r.asm.pd).apply(null,arguments)};r.dynCall_iiiij=function(){return(r.dynCall_iiiij=r.asm.qd).apply(null,arguments)};r.dynCall_viij=function(){return(r.dynCall_viij=r.asm.rd).apply(null,arguments)};r.dynCall_viiij=function(){return(r.dynCall_viiij=r.asm.sd).apply(null,arguments)};r.dynCall_ji=function(){return(r.dynCall_ji=r.asm.td).apply(null,arguments)};r.dynCall_iij=function(){return(r.dynCall_iij=r.asm.ud).apply(null,arguments)}; +r.dynCall_jiiiiii=function(){return(r.dynCall_jiiiiii=r.asm.vd).apply(null,arguments)};r.dynCall_jiiiiji=function(){return(r.dynCall_jiiiiji=r.asm.wd).apply(null,arguments)};r.dynCall_iijj=function(){return(r.dynCall_iijj=r.asm.xd).apply(null,arguments)};r.dynCall_jiji=function(){return(r.dynCall_jiji=r.asm.yd).apply(null,arguments)};r.dynCall_viijii=function(){return(r.dynCall_viijii=r.asm.zd).apply(null,arguments)};r.dynCall_iiiiij=function(){return(r.dynCall_iiiiij=r.asm.Ad).apply(null,arguments)}; +r.dynCall_iiiiijj=function(){return(r.dynCall_iiiiijj=r.asm.Bd).apply(null,arguments)};r.dynCall_iiiiiijj=function(){return(r.dynCall_iiiiiijj=r.asm.Cd).apply(null,arguments)};function Sd(a,b,c,e,f){var k=Yd();try{Q(a)(b,c,e,f)}catch(m){Zd(k);if(m!==m+0)throw m;Xd(1,0)}}function Kd(a,b,c){var e=Yd();try{return Q(a)(b,c)}catch(f){Zd(e);if(f!==f+0)throw f;Xd(1,0)}}function Qd(a,b,c){var e=Yd();try{Q(a)(b,c)}catch(f){Zd(e);if(f!==f+0)throw f;Xd(1,0)}} +function Jd(a,b){var c=Yd();try{return Q(a)(b)}catch(e){Zd(c);if(e!==e+0)throw e;Xd(1,0)}}function Pd(a,b){var c=Yd();try{Q(a)(b)}catch(e){Zd(c);if(e!==e+0)throw e;Xd(1,0)}}function Ld(a,b,c,e){var f=Yd();try{return Q(a)(b,c,e)}catch(k){Zd(f);if(k!==k+0)throw k;Xd(1,0)}}function Vd(a,b,c,e,f,k,m,l,q,x){var y=Yd();try{Q(a)(b,c,e,f,k,m,l,q,x)}catch(B){Zd(y);if(B!==B+0)throw B;Xd(1,0)}}function Rd(a,b,c,e){var f=Yd();try{Q(a)(b,c,e)}catch(k){Zd(f);if(k!==k+0)throw k;Xd(1,0)}} +function Ud(a,b,c,e,f,k,m){var l=Yd();try{Q(a)(b,c,e,f,k,m)}catch(q){Zd(l);if(q!==q+0)throw q;Xd(1,0)}}function Md(a,b,c,e,f){var k=Yd();try{return Q(a)(b,c,e,f)}catch(m){Zd(k);if(m!==m+0)throw m;Xd(1,0)}}function Nd(a,b,c,e,f,k,m){var l=Yd();try{return Q(a)(b,c,e,f,k,m)}catch(q){Zd(l);if(q!==q+0)throw q;Xd(1,0)}}function Td(a,b,c,e,f,k){var m=Yd();try{Q(a)(b,c,e,f,k)}catch(l){Zd(m);if(l!==l+0)throw l;Xd(1,0)}} +function Od(a,b,c,e,f,k,m,l,q,x){var y=Yd();try{return Q(a)(b,c,e,f,k,m,l,q,x)}catch(B){Zd(y);if(B!==B+0)throw B;Xd(1,0)}}var $d;Za=function ae(){$d||be();$d||(Za=ae)}; +function be(){function a(){if(!$d&&($d=!0,r.calledRun=!0,!Ha)){hb(Ua);aa(r);if(r.onRuntimeInitialized)r.onRuntimeInitialized();if(r.postRun)for("function"==typeof r.postRun&&(r.postRun=[r.postRun]);r.postRun.length;){var b=r.postRun.shift();Va.unshift(b)}hb(Va)}}if(!(0 { + var _scriptDir = typeof document !== 'undefined' && document.currentScript ? document.currentScript.src : undefined; + if (typeof __filename !== 'undefined') _scriptDir = _scriptDir || __filename; + return ( +function(skwasm = {}) { + +function GROWABLE_HEAP_I8(){if(wasmMemory.buffer!=HEAP8.buffer){updateMemoryViews()}return HEAP8}function GROWABLE_HEAP_U8(){if(wasmMemory.buffer!=HEAP8.buffer){updateMemoryViews()}return HEAPU8}function GROWABLE_HEAP_I16(){if(wasmMemory.buffer!=HEAP8.buffer){updateMemoryViews()}return HEAP16}function GROWABLE_HEAP_U16(){if(wasmMemory.buffer!=HEAP8.buffer){updateMemoryViews()}return HEAPU16}function GROWABLE_HEAP_I32(){if(wasmMemory.buffer!=HEAP8.buffer){updateMemoryViews()}return HEAP32}function GROWABLE_HEAP_U32(){if(wasmMemory.buffer!=HEAP8.buffer){updateMemoryViews()}return HEAPU32}function GROWABLE_HEAP_F32(){if(wasmMemory.buffer!=HEAP8.buffer){updateMemoryViews()}return HEAPF32}function GROWABLE_HEAP_F64(){if(wasmMemory.buffer!=HEAP8.buffer){updateMemoryViews()}return HEAPF64}var Module=typeof skwasm!="undefined"?skwasm:{};var readyPromiseResolve,readyPromiseReject;Module["ready"]=new Promise(function(resolve,reject){readyPromiseResolve=resolve;readyPromiseReject=reject});var moduleOverrides=Object.assign({},Module);var arguments_=[];var thisProgram="./this.program";var quit_=(status,toThrow)=>{throw toThrow};var ENVIRONMENT_IS_WEB=typeof window=="object";var ENVIRONMENT_IS_WORKER=typeof importScripts=="function";var ENVIRONMENT_IS_NODE=typeof process=="object"&&typeof process.versions=="object"&&typeof process.versions.node=="string";var ENVIRONMENT_IS_PTHREAD=Module["ENVIRONMENT_IS_PTHREAD"]||false;var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var read_,readAsync,readBinary,setWindowTitle;function logExceptionOnExit(e){if(e instanceof ExitStatus)return;let toLog=e;if(e&&typeof e=="object"&&e.stack){toLog=[e,e.stack]}err("exiting due to exception: "+toLog)}if(ENVIRONMENT_IS_NODE){var fs=require("fs");var nodePath=require("path");if(ENVIRONMENT_IS_WORKER){scriptDirectory=nodePath.dirname(scriptDirectory)+"/"}else{scriptDirectory=__dirname+"/"}read_=(filename,binary)=>{filename=isFileURI(filename)?new URL(filename):nodePath.normalize(filename);return fs.readFileSync(filename,binary?undefined:"utf8")};readBinary=filename=>{var ret=read_(filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}return ret};readAsync=(filename,onload,onerror)=>{filename=isFileURI(filename)?new URL(filename):nodePath.normalize(filename);fs.readFile(filename,function(err,data){if(err)onerror(err);else onload(data.buffer)})};if(process.argv.length>1){thisProgram=process.argv[1].replace(/\\/g,"/")}arguments_=process.argv.slice(2);process.on("uncaughtException",function(ex){if(!(ex instanceof ExitStatus)){throw ex}});var nodeMajor=process.versions.node.split(".")[0];if(nodeMajor<15){process.on("unhandledRejection",function(reason){throw reason})}quit_=(status,toThrow)=>{if(keepRuntimeAlive()){process.exitCode=status;throw toThrow}logExceptionOnExit(toThrow);process.exit(status)};Module["inspect"]=function(){return"[Emscripten Module object]"};let nodeWorkerThreads;try{nodeWorkerThreads=require("worker_threads")}catch(e){console.error('The "worker_threads" module is not supported in this node.js build - perhaps a newer version is needed?');throw e}global.Worker=nodeWorkerThreads.Worker}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(ENVIRONMENT_IS_WORKER){scriptDirectory=self.location.href}else if(typeof document!="undefined"&&document.currentScript){scriptDirectory=document.currentScript.src}if(_scriptDir){scriptDirectory=_scriptDir}if(scriptDirectory.indexOf("blob:")!==0){scriptDirectory=scriptDirectory.substr(0,scriptDirectory.replace(/[?#].*/,"").lastIndexOf("/")+1)}else{scriptDirectory=""}if(!ENVIRONMENT_IS_NODE){read_=url=>{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText};if(ENVIRONMENT_IS_WORKER){readBinary=url=>{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}}readAsync=(url,onload,onerror)=>{var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=()=>{if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response);return}onerror()};xhr.onerror=onerror;xhr.send(null)}}setWindowTitle=title=>document.title=title}else{}if(ENVIRONMENT_IS_NODE){if(typeof performance=="undefined"){global.performance=require("perf_hooks").performance}}var defaultPrint=console.log.bind(console);var defaultPrintErr=console.warn.bind(console);if(ENVIRONMENT_IS_NODE){defaultPrint=str=>fs.writeSync(1,str+"\n");defaultPrintErr=str=>fs.writeSync(2,str+"\n")}var out=Module["print"]||defaultPrint;var err=Module["printErr"]||defaultPrintErr;Object.assign(Module,moduleOverrides);moduleOverrides=null;if(Module["arguments"])arguments_=Module["arguments"];if(Module["thisProgram"])thisProgram=Module["thisProgram"];if(Module["quit"])quit_=Module["quit"];var wasmBinary;if(Module["wasmBinary"])wasmBinary=Module["wasmBinary"];var noExitRuntime=Module["noExitRuntime"]||true;if(typeof WebAssembly!="object"){abort("no native wasm support detected")}var wasmMemory;var wasmModule;var ABORT=false;var EXITSTATUS;function assert(condition,text){if(!condition){abort(text)}}var UTF8Decoder=typeof TextDecoder!="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(heapOrArray,idx,maxBytesToRead){var endIdx=idx+maxBytesToRead;var endPtr=idx;while(heapOrArray[endPtr]&&!(endPtr>=endIdx))++endPtr;if(endPtr-idx>16&&heapOrArray.buffer&&UTF8Decoder){return UTF8Decoder.decode(heapOrArray.slice(idx,endPtr))}var str="";while(idx>10,56320|ch&1023)}}return str}function UTF8ToString(ptr,maxBytesToRead){return ptr?UTF8ArrayToString(GROWABLE_HEAP_U8(),ptr,maxBytesToRead):""}function stringToUTF8Array(str,heap,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;heap[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;heap[outIdx++]=192|u>>6;heap[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;heap[outIdx++]=224|u>>12;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}else{if(outIdx+3>=endIdx)break;heap[outIdx++]=240|u>>18;heap[outIdx++]=128|u>>12&63;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}}heap[outIdx]=0;return outIdx-startIdx}function stringToUTF8(str,outPtr,maxBytesToWrite){return stringToUTF8Array(str,GROWABLE_HEAP_U8(),outPtr,maxBytesToWrite)}function lengthBytesUTF8(str){var len=0;for(var i=0;i=55296&&c<=57343){len+=4;++i}else{len+=3}}return len}var HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateMemoryViews(){var b=wasmMemory.buffer;Module["HEAP8"]=HEAP8=new Int8Array(b);Module["HEAP16"]=HEAP16=new Int16Array(b);Module["HEAP32"]=HEAP32=new Int32Array(b);Module["HEAPU8"]=HEAPU8=new Uint8Array(b);Module["HEAPU16"]=HEAPU16=new Uint16Array(b);Module["HEAPU32"]=HEAPU32=new Uint32Array(b);Module["HEAPF32"]=HEAPF32=new Float32Array(b);Module["HEAPF64"]=HEAPF64=new Float64Array(b)}var INITIAL_MEMORY=Module["INITIAL_MEMORY"]||16777216;assert(INITIAL_MEMORY>=65536,"INITIAL_MEMORY should be larger than STACK_SIZE, was "+INITIAL_MEMORY+"! (STACK_SIZE="+65536+")");if(ENVIRONMENT_IS_PTHREAD){wasmMemory=Module["wasmMemory"]}else{if(Module["wasmMemory"]){wasmMemory=Module["wasmMemory"]}else{wasmMemory=new WebAssembly.Memory({"initial":INITIAL_MEMORY/65536,"maximum":2147483648/65536,"shared":true});if(!(wasmMemory.buffer instanceof SharedArrayBuffer)){err("requested a shared WebAssembly.Memory but the returned buffer is not a SharedArrayBuffer, indicating that while the browser has SharedArrayBuffer it does not have WebAssembly threads support - you may need to set a flag");if(ENVIRONMENT_IS_NODE){err("(on node you may need: --experimental-wasm-threads --experimental-wasm-bulk-memory and/or recent version)")}throw Error("bad memory")}}}updateMemoryViews();INITIAL_MEMORY=wasmMemory.buffer.byteLength;var wasmTable;var __ATPRERUN__=[];var __ATINIT__=[];var __ATEXIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;function keepRuntimeAlive(){return noExitRuntime}function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function initRuntime(){runtimeInitialized=true;if(ENVIRONMENT_IS_PTHREAD)return;callRuntimeCallbacks(__ATINIT__)}function postRun(){if(ENVIRONMENT_IS_PTHREAD)return;if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnInit(cb){__ATINIT__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}}function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}what="Aborted("+what+")";err(what);ABORT=true;EXITSTATUS=1;what+=". Build with -sASSERTIONS for more info.";var e=new WebAssembly.RuntimeError(what);readyPromiseReject(e);throw e}var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return filename.startsWith(dataURIPrefix)}function isFileURI(filename){return filename.startsWith("file://")}var wasmBinaryFile;wasmBinaryFile="skwasm.wasm";if(!isDataURI(wasmBinaryFile)){wasmBinaryFile=locateFile(wasmBinaryFile)}function getBinary(file){try{if(file==wasmBinaryFile&&wasmBinary){return new Uint8Array(wasmBinary)}if(readBinary){return readBinary(file)}throw"both async and sync fetching of the wasm failed"}catch(err){abort(err)}}function getBinaryPromise(binaryFile){if(!wasmBinary&&(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)){if(typeof fetch=="function"&&!isFileURI(binaryFile)){return fetch(binaryFile,{credentials:"same-origin"}).then(function(response){if(!response["ok"]){throw"failed to load wasm binary file at '"+binaryFile+"'"}return response["arrayBuffer"]()}).catch(function(){return getBinary(binaryFile)})}else{if(readAsync){return new Promise(function(resolve,reject){readAsync(binaryFile,function(response){resolve(new Uint8Array(response))},reject)})}}}return Promise.resolve().then(function(){return getBinary(binaryFile)})}function instantiateArrayBuffer(binaryFile,imports,receiver){return getBinaryPromise(binaryFile).then(function(binary){return WebAssembly.instantiate(binary,imports)}).then(function(instance){return instance}).then(receiver,function(reason){err("failed to asynchronously prepare wasm: "+reason);abort(reason)})}function instantiateAsync(binary,binaryFile,imports,callback){if(!binary&&typeof WebAssembly.instantiateStreaming=="function"&&!isDataURI(binaryFile)&&!isFileURI(binaryFile)&&!ENVIRONMENT_IS_NODE&&typeof fetch=="function"){return fetch(binaryFile,{credentials:"same-origin"}).then(function(response){var result=WebAssembly.instantiateStreaming(response,imports);return result.then(callback,function(reason){err("wasm streaming compile failed: "+reason);err("falling back to ArrayBuffer instantiation");return instantiateArrayBuffer(binaryFile,imports,callback)})})}else{return instantiateArrayBuffer(binaryFile,imports,callback)}}function createWasm(){var info={"env":wasmImports,"wasi_snapshot_preview1":wasmImports};function receiveInstance(instance,module){var exports=instance.exports;Module["asm"]=exports;registerTLSInit(Module["asm"]["_emscripten_tls_init"]);wasmTable=Module["asm"]["__indirect_function_table"];addOnInit(Module["asm"]["__wasm_call_ctors"]);wasmModule=module;PThread.loadWasmModuleToAllWorkers(()=>removeRunDependency("wasm-instantiate"));return exports}addRunDependency("wasm-instantiate");function receiveInstantiationResult(result){receiveInstance(result["instance"],result["module"])}if(Module["instantiateWasm"]){try{return Module["instantiateWasm"](info,receiveInstance)}catch(e){err("Module.instantiateWasm callback failed with error: "+e);readyPromiseReject(e)}}instantiateAsync(wasmBinary,wasmBinaryFile,info,receiveInstantiationResult).catch(readyPromiseReject);return{}}function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}function terminateWorker(worker){worker.terminate();worker.onmessage=e=>{}}function killThread(pthread_ptr){var worker=PThread.pthreads[pthread_ptr];delete PThread.pthreads[pthread_ptr];terminateWorker(worker);__emscripten_thread_free_data(pthread_ptr);PThread.runningWorkers.splice(PThread.runningWorkers.indexOf(worker),1);worker.pthread_ptr=0}function cancelThread(pthread_ptr){var worker=PThread.pthreads[pthread_ptr];worker.postMessage({"cmd":"cancel"})}function cleanupThread(pthread_ptr){var worker=PThread.pthreads[pthread_ptr];assert(worker);PThread.returnWorkerToPool(worker)}function spawnThread(threadParams){var worker=PThread.getNewWorker();if(!worker){return 6}PThread.runningWorkers.push(worker);PThread.pthreads[threadParams.pthread_ptr]=worker;worker.pthread_ptr=threadParams.pthread_ptr;var msg={"cmd":"run","start_routine":threadParams.startRoutine,"arg":threadParams.arg,"pthread_ptr":threadParams.pthread_ptr};msg.moduleCanvasId=threadParams.moduleCanvasId;msg.offscreenCanvases=threadParams.offscreenCanvases;if(ENVIRONMENT_IS_NODE){worker.ref()}worker.postMessage(msg,threadParams.transferList);return 0}var SYSCALLS={varargs:undefined,get:function(){SYSCALLS.varargs+=4;var ret=GROWABLE_HEAP_I32()[SYSCALLS.varargs-4>>2];return ret},getStr:function(ptr){var ret=UTF8ToString(ptr);return ret}};function _proc_exit(code){if(ENVIRONMENT_IS_PTHREAD)return _emscripten_proxy_to_main_thread_js(1,1,code);EXITSTATUS=code;if(!keepRuntimeAlive()){PThread.terminateAllThreads();if(Module["onExit"])Module["onExit"](code);ABORT=true}quit_(code,new ExitStatus(code))}function exitJS(status,implicit){EXITSTATUS=status;if(ENVIRONMENT_IS_PTHREAD){exitOnMainThread(status);throw"unwind"}_proc_exit(status)}var _exit=exitJS;function handleException(e){if(e instanceof ExitStatus||e=="unwind"){return EXITSTATUS}quit_(1,e)}var PThread={unusedWorkers:[],runningWorkers:[],tlsInitFunctions:[],pthreads:{},init:function(){if(ENVIRONMENT_IS_PTHREAD){PThread.initWorker()}else{PThread.initMainThread()}},initMainThread:function(){var pthreadPoolSize=1;while(pthreadPoolSize--){PThread.allocateUnusedWorker()}},initWorker:function(){noExitRuntime=false},setExitStatus:function(status){EXITSTATUS=status},terminateAllThreads__deps:["$terminateWorker"],terminateAllThreads:function(){for(var worker of PThread.runningWorkers){terminateWorker(worker)}for(var worker of PThread.unusedWorkers){terminateWorker(worker)}PThread.unusedWorkers=[];PThread.runningWorkers=[];PThread.pthreads=[]},returnWorkerToPool:function(worker){var pthread_ptr=worker.pthread_ptr;delete PThread.pthreads[pthread_ptr];PThread.unusedWorkers.push(worker);PThread.runningWorkers.splice(PThread.runningWorkers.indexOf(worker),1);worker.pthread_ptr=0;if(ENVIRONMENT_IS_NODE){worker.unref()}__emscripten_thread_free_data(pthread_ptr)},receiveObjectTransfer:function(data){if(typeof GL!="undefined"){Object.assign(GL.offscreenCanvases,data.offscreenCanvases);if(!Module["canvas"]&&data.moduleCanvasId&&GL.offscreenCanvases[data.moduleCanvasId]){Module["canvas"]=GL.offscreenCanvases[data.moduleCanvasId].offscreenCanvas;Module["canvas"].id=data.moduleCanvasId}}},threadInitTLS:function(){PThread.tlsInitFunctions.forEach(f=>f())},loadWasmModuleToWorker:worker=>new Promise(onFinishedLoading=>{worker.onmessage=e=>{var d=e["data"];var cmd=d["cmd"];if(worker.pthread_ptr)PThread.currentProxiedOperationCallerThread=worker.pthread_ptr;if(d["targetThread"]&&d["targetThread"]!=_pthread_self()){var targetWorker=PThread.pthreads[d.targetThread];if(targetWorker){targetWorker.postMessage(d,d["transferList"])}else{err('Internal error! Worker sent a message "'+cmd+'" to target pthread '+d["targetThread"]+", but that thread no longer exists!")}PThread.currentProxiedOperationCallerThread=undefined;return}if(cmd==="processProxyingQueue"){executeNotifiedProxyingQueue(d["queue"])}else if(cmd==="spawnThread"){spawnThread(d)}else if(cmd==="cleanupThread"){cleanupThread(d["thread"])}else if(cmd==="killThread"){killThread(d["thread"])}else if(cmd==="cancelThread"){cancelThread(d["thread"])}else if(cmd==="loaded"){worker.loaded=true;if(ENVIRONMENT_IS_NODE&&!worker.pthread_ptr){worker.unref()}onFinishedLoading(worker)}else if(cmd==="print"){out("Thread "+d["threadId"]+": "+d["text"])}else if(cmd==="printErr"){err("Thread "+d["threadId"]+": "+d["text"])}else if(cmd==="alert"){alert("Thread "+d["threadId"]+": "+d["text"])}else if(d.target==="setimmediate"){worker.postMessage(d)}else if(cmd==="callHandler"){Module[d["handler"]](...d["args"])}else if(cmd){err("worker sent an unknown command "+cmd)}PThread.currentProxiedOperationCallerThread=undefined};worker.onerror=e=>{var message="worker sent an error!";err(message+" "+e.filename+":"+e.lineno+": "+e.message);throw e};if(ENVIRONMENT_IS_NODE){worker.on("message",function(data){worker.onmessage({data:data})});worker.on("error",function(e){worker.onerror(e)});worker.on("detachedExit",function(){})}var handlers=[];var knownHandlers=["onExit","onAbort","print","printErr"];for(var handler of knownHandlers){if(Module.hasOwnProperty(handler)){handlers.push(handler)}}worker.postMessage({"cmd":"load","handlers":handlers,"urlOrBlob":Module["mainScriptUrlOrBlob"]||_scriptDir,"wasmMemory":wasmMemory,"wasmModule":wasmModule})}),loadWasmModuleToAllWorkers:function(onMaybeReady){if(ENVIRONMENT_IS_PTHREAD){return onMaybeReady()}let pthreadPoolReady=Promise.all(PThread.unusedWorkers.map(PThread.loadWasmModuleToWorker));pthreadPoolReady.then(onMaybeReady)},allocateUnusedWorker:function(){var worker;var pthreadMainJs=locateFile("skwasm.worker.js");worker=new Worker(pthreadMainJs);PThread.unusedWorkers.push(worker)},getNewWorker:function(){if(PThread.unusedWorkers.length==0){PThread.allocateUnusedWorker();PThread.loadWasmModuleToWorker(PThread.unusedWorkers[0])}return PThread.unusedWorkers.pop()}};Module["PThread"]=PThread;function callRuntimeCallbacks(callbacks){while(callbacks.length>0){callbacks.shift()(Module)}}function establishStackSpace(){var pthread_ptr=_pthread_self();var stackTop=GROWABLE_HEAP_I32()[pthread_ptr+52>>2];var stackSize=GROWABLE_HEAP_I32()[pthread_ptr+56>>2];var stackMax=stackTop-stackSize;_emscripten_stack_set_limits(stackTop,stackMax);stackRestore(stackTop)}Module["establishStackSpace"]=establishStackSpace;function exitOnMainThread(returnCode){if(ENVIRONMENT_IS_PTHREAD)return _emscripten_proxy_to_main_thread_js(2,0,returnCode);try{_exit(returnCode)}catch(e){handleException(e)}}function getWasmTableEntry(funcPtr){return wasmTable.get(funcPtr)}function invokeEntryPoint(ptr,arg){var result=getWasmTableEntry(ptr)(arg);if(keepRuntimeAlive()){PThread.setExitStatus(result)}else{__emscripten_thread_exit(result)}}Module["invokeEntryPoint"]=invokeEntryPoint;function registerTLSInit(tlsInitFunc){PThread.tlsInitFunctions.push(tlsInitFunc)}function ExceptionInfo(excPtr){this.excPtr=excPtr;this.ptr=excPtr-24;this.set_type=function(type){GROWABLE_HEAP_U32()[this.ptr+4>>2]=type};this.get_type=function(){return GROWABLE_HEAP_U32()[this.ptr+4>>2]};this.set_destructor=function(destructor){GROWABLE_HEAP_U32()[this.ptr+8>>2]=destructor};this.get_destructor=function(){return GROWABLE_HEAP_U32()[this.ptr+8>>2]};this.set_refcount=function(refcount){GROWABLE_HEAP_I32()[this.ptr>>2]=refcount};this.set_caught=function(caught){caught=caught?1:0;GROWABLE_HEAP_I8()[this.ptr+12>>0]=caught};this.get_caught=function(){return GROWABLE_HEAP_I8()[this.ptr+12>>0]!=0};this.set_rethrown=function(rethrown){rethrown=rethrown?1:0;GROWABLE_HEAP_I8()[this.ptr+13>>0]=rethrown};this.get_rethrown=function(){return GROWABLE_HEAP_I8()[this.ptr+13>>0]!=0};this.init=function(type,destructor){this.set_adjusted_ptr(0);this.set_type(type);this.set_destructor(destructor);this.set_refcount(0);this.set_caught(false);this.set_rethrown(false)};this.add_ref=function(){Atomics.add(GROWABLE_HEAP_I32(),this.ptr+0>>2,1)};this.release_ref=function(){var prev=Atomics.sub(GROWABLE_HEAP_I32(),this.ptr+0>>2,1);return prev===1};this.set_adjusted_ptr=function(adjustedPtr){GROWABLE_HEAP_U32()[this.ptr+16>>2]=adjustedPtr};this.get_adjusted_ptr=function(){return GROWABLE_HEAP_U32()[this.ptr+16>>2]};this.get_exception_ptr=function(){var isPointer=___cxa_is_pointer_type(this.get_type());if(isPointer){return GROWABLE_HEAP_U32()[this.excPtr>>2]}var adjusted=this.get_adjusted_ptr();if(adjusted!==0)return adjusted;return this.excPtr}}var exceptionLast=0;var uncaughtExceptionCount=0;function ___cxa_throw(ptr,type,destructor){var info=new ExceptionInfo(ptr);info.init(type,destructor);exceptionLast=ptr;uncaughtExceptionCount++;throw ptr}function ___emscripten_init_main_thread_js(tb){__emscripten_thread_init(tb,!ENVIRONMENT_IS_WORKER,1,!ENVIRONMENT_IS_WEB);PThread.threadInitTLS()}function ___emscripten_thread_cleanup(thread){if(!ENVIRONMENT_IS_PTHREAD)cleanupThread(thread);else postMessage({"cmd":"cleanupThread","thread":thread})}function pthreadCreateProxied(pthread_ptr,attr,startRoutine,arg){if(ENVIRONMENT_IS_PTHREAD)return _emscripten_proxy_to_main_thread_js(3,1,pthread_ptr,attr,startRoutine,arg);return ___pthread_create_js(pthread_ptr,attr,startRoutine,arg)}function ___pthread_create_js(pthread_ptr,attr,startRoutine,arg){if(typeof SharedArrayBuffer=="undefined"){err("Current environment does not support SharedArrayBuffer, pthreads are not available!");return 6}var transferList=[];var error=0;var transferredCanvasNames=attr?GROWABLE_HEAP_U32()[attr+40>>2]:0;if(transferredCanvasNames==-1>>>0)transferredCanvasNames="#canvas";else if(transferredCanvasNames)transferredCanvasNames=UTF8ToString(transferredCanvasNames).trim();if(transferredCanvasNames)transferredCanvasNames=transferredCanvasNames.split(",");var offscreenCanvases={};var moduleCanvasId=Module["canvas"]?Module["canvas"].id:"";for(var i in transferredCanvasNames){var name=transferredCanvasNames[i].trim();var offscreenCanvasInfo;try{if(name=="#canvas"){if(!Module["canvas"]){err('pthread_create: could not find canvas with ID "'+name+'" to transfer to thread!');error=28;break}name=Module["canvas"].id}if(GL.offscreenCanvases[name]){offscreenCanvasInfo=GL.offscreenCanvases[name];GL.offscreenCanvases[name]=null;if(Module["canvas"]instanceof OffscreenCanvas&&name===Module["canvas"].id)Module["canvas"]=null}else if(!ENVIRONMENT_IS_PTHREAD){var canvas=Module["canvas"]&&Module["canvas"].id===name?Module["canvas"]:document.querySelector(name);if(!canvas){err('pthread_create: could not find canvas with ID "'+name+'" to transfer to thread!');error=28;break}if(canvas.controlTransferredOffscreen){err('pthread_create: cannot transfer canvas with ID "'+name+'" to thread, since the current thread does not have control over it!');error=63;break}if(canvas.transferControlToOffscreen){if(!canvas.canvasSharedPtr){canvas.canvasSharedPtr=_malloc(12);GROWABLE_HEAP_I32()[canvas.canvasSharedPtr>>2]=canvas.width;GROWABLE_HEAP_I32()[canvas.canvasSharedPtr+4>>2]=canvas.height;GROWABLE_HEAP_I32()[canvas.canvasSharedPtr+8>>2]=0}offscreenCanvasInfo={offscreenCanvas:canvas.transferControlToOffscreen(),canvasSharedPtr:canvas.canvasSharedPtr,id:canvas.id};canvas.controlTransferredOffscreen=true}else{err('pthread_create: cannot transfer control of canvas "'+name+'" to pthread, because current browser does not support OffscreenCanvas!');err("pthread_create: Build with -sOFFSCREEN_FRAMEBUFFER to enable fallback proxying of GL commands from pthread to main thread.");return 52}}if(offscreenCanvasInfo){transferList.push(offscreenCanvasInfo.offscreenCanvas);offscreenCanvases[offscreenCanvasInfo.id]=offscreenCanvasInfo}}catch(e){err('pthread_create: failed to transfer control of canvas "'+name+'" to OffscreenCanvas! Error: '+e);return 28}}if(ENVIRONMENT_IS_PTHREAD&&(transferList.length===0||error)){return pthreadCreateProxied(pthread_ptr,attr,startRoutine,arg)}if(error)return error;for(var canvas of Object.values(offscreenCanvases)){GROWABLE_HEAP_I32()[canvas.canvasSharedPtr+8>>2]=pthread_ptr}var threadParams={startRoutine:startRoutine,pthread_ptr:pthread_ptr,arg:arg,moduleCanvasId:moduleCanvasId,offscreenCanvases:offscreenCanvases,transferList:transferList};if(ENVIRONMENT_IS_PTHREAD){threadParams.cmd="spawnThread";postMessage(threadParams,transferList);return 0}return spawnThread(threadParams)}function ___syscall_fcntl64(fd,cmd,varargs){if(ENVIRONMENT_IS_PTHREAD)return _emscripten_proxy_to_main_thread_js(4,1,fd,cmd,varargs);SYSCALLS.varargs=varargs;return 0}function ___syscall_fstat64(fd,buf){if(ENVIRONMENT_IS_PTHREAD)return _emscripten_proxy_to_main_thread_js(5,1,fd,buf)}function ___syscall_ioctl(fd,op,varargs){if(ENVIRONMENT_IS_PTHREAD)return _emscripten_proxy_to_main_thread_js(6,1,fd,op,varargs);SYSCALLS.varargs=varargs;return 0}function ___syscall_openat(dirfd,path,flags,varargs){if(ENVIRONMENT_IS_PTHREAD)return _emscripten_proxy_to_main_thread_js(7,1,dirfd,path,flags,varargs);SYSCALLS.varargs=varargs}function __emscripten_default_pthread_stack_size(){return 65536}var nowIsMonotonic=true;function __emscripten_get_now_is_monotonic(){return nowIsMonotonic}function executeNotifiedProxyingQueue(queue){Atomics.store(GROWABLE_HEAP_I32(),queue>>2,1);if(_pthread_self()){__emscripten_proxy_execute_task_queue(queue)}Atomics.compareExchange(GROWABLE_HEAP_I32(),queue>>2,1,0)}Module["executeNotifiedProxyingQueue"]=executeNotifiedProxyingQueue;function __emscripten_notify_task_queue(targetThreadId,currThreadId,mainThreadId,queue){if(targetThreadId==currThreadId){setTimeout(()=>executeNotifiedProxyingQueue(queue))}else if(ENVIRONMENT_IS_PTHREAD){postMessage({"targetThread":targetThreadId,"cmd":"processProxyingQueue","queue":queue})}else{var worker=PThread.pthreads[targetThreadId];if(!worker){return}worker.postMessage({"cmd":"processProxyingQueue","queue":queue})}}function withStackSave(f){var stack=stackSave();var ret=f();stackRestore(stack);return ret}var JSEvents={inEventHandler:0,removeAllEventListeners:function(){for(var i=JSEvents.eventHandlers.length-1;i>=0;--i){JSEvents._removeHandler(i)}JSEvents.eventHandlers=[];JSEvents.deferredCalls=[]},registerRemoveEventListeners:function(){if(!JSEvents.removeEventListenersRegistered){__ATEXIT__.push(JSEvents.removeAllEventListeners);JSEvents.removeEventListenersRegistered=true}},deferredCalls:[],deferCall:function(targetFunction,precedence,argsList){function arraysHaveEqualContent(arrA,arrB){if(arrA.length!=arrB.length)return false;for(var i in arrA){if(arrA[i]!=arrB[i])return false}return true}for(var i in JSEvents.deferredCalls){var call=JSEvents.deferredCalls[i];if(call.targetFunction==targetFunction&&arraysHaveEqualContent(call.argsList,argsList)){return}}JSEvents.deferredCalls.push({targetFunction:targetFunction,precedence:precedence,argsList:argsList});JSEvents.deferredCalls.sort(function(x,y){return x.precedence>2]=eventTypeId;GROWABLE_HEAP_I32()[varargs+4>>2]=eventData;GROWABLE_HEAP_I32()[varargs+8>>2]=userData;_emscripten_dispatch_to_thread_(targetThread,637534208,eventHandlerFunc,eventData,varargs)})},getTargetThreadForEventCallback:function(targetThread){switch(targetThread){case 1:return 0;case 2:return PThread.currentProxiedOperationCallerThread;default:return targetThread}},getNodeNameForTarget:function(target){if(!target)return"";if(target==window)return"#window";if(target==screen)return"#screen";return target&&target.nodeName?target.nodeName:""},fullscreenEnabled:function(){return document.fullscreenEnabled||document.webkitFullscreenEnabled}};function stringToNewUTF8(jsString){var length=lengthBytesUTF8(jsString)+1;var cString=_malloc(length);stringToUTF8(jsString,cString,length);return cString}function _emscripten_set_offscreencanvas_size_on_target_thread_js(targetThread,targetCanvas,width,height){withStackSave(function(){var varargs=stackAlloc(12);var targetCanvasPtr=0;if(targetCanvas){targetCanvasPtr=stringToNewUTF8(targetCanvas)}GROWABLE_HEAP_I32()[varargs>>2]=targetCanvasPtr;GROWABLE_HEAP_I32()[varargs+4>>2]=width;GROWABLE_HEAP_I32()[varargs+8>>2]=height;_emscripten_dispatch_to_thread_(targetThread,654311424,0,targetCanvasPtr,varargs)})}function _emscripten_set_offscreencanvas_size_on_target_thread(targetThread,targetCanvas,width,height){targetCanvas=targetCanvas?UTF8ToString(targetCanvas):"";_emscripten_set_offscreencanvas_size_on_target_thread_js(targetThread,targetCanvas,width,height)}function __webgl_enable_ANGLE_instanced_arrays(ctx){var ext=ctx.getExtension("ANGLE_instanced_arrays");if(ext){ctx["vertexAttribDivisor"]=function(index,divisor){ext["vertexAttribDivisorANGLE"](index,divisor)};ctx["drawArraysInstanced"]=function(mode,first,count,primcount){ext["drawArraysInstancedANGLE"](mode,first,count,primcount)};ctx["drawElementsInstanced"]=function(mode,count,type,indices,primcount){ext["drawElementsInstancedANGLE"](mode,count,type,indices,primcount)};return 1}}function __webgl_enable_OES_vertex_array_object(ctx){var ext=ctx.getExtension("OES_vertex_array_object");if(ext){ctx["createVertexArray"]=function(){return ext["createVertexArrayOES"]()};ctx["deleteVertexArray"]=function(vao){ext["deleteVertexArrayOES"](vao)};ctx["bindVertexArray"]=function(vao){ext["bindVertexArrayOES"](vao)};ctx["isVertexArray"]=function(vao){return ext["isVertexArrayOES"](vao)};return 1}}function __webgl_enable_WEBGL_draw_buffers(ctx){var ext=ctx.getExtension("WEBGL_draw_buffers");if(ext){ctx["drawBuffers"]=function(n,bufs){ext["drawBuffersWEBGL"](n,bufs)};return 1}}function __webgl_enable_WEBGL_draw_instanced_base_vertex_base_instance(ctx){return!!(ctx.dibvbi=ctx.getExtension("WEBGL_draw_instanced_base_vertex_base_instance"))}function __webgl_enable_WEBGL_multi_draw_instanced_base_vertex_base_instance(ctx){return!!(ctx.mdibvbi=ctx.getExtension("WEBGL_multi_draw_instanced_base_vertex_base_instance"))}function __webgl_enable_WEBGL_multi_draw(ctx){return!!(ctx.multiDrawWebgl=ctx.getExtension("WEBGL_multi_draw"))}var GL={counter:1,buffers:[],programs:[],framebuffers:[],renderbuffers:[],textures:[],shaders:[],vaos:[],contexts:{},offscreenCanvases:{},queries:[],samplers:[],transformFeedbacks:[],syncs:[],stringCache:{},stringiCache:{},unpackAlignment:4,recordError:function recordError(errorCode){if(!GL.lastError){GL.lastError=errorCode}},getNewId:function(table){var ret=GL.counter++;for(var i=table.length;i>2]:-1;source+=UTF8ToString(GROWABLE_HEAP_I32()[string+i*4>>2],len<0?undefined:len)}return source},createContext:function(canvas,webGLContextAttributes){if(!canvas.getContextSafariWebGL2Fixed){canvas.getContextSafariWebGL2Fixed=canvas.getContext;function fixedGetContext(ver,attrs){var gl=canvas.getContextSafariWebGL2Fixed(ver,attrs);return ver=="webgl"==gl instanceof WebGLRenderingContext?gl:null}canvas.getContext=fixedGetContext}var ctx=webGLContextAttributes.majorVersion>1?canvas.getContext("webgl2",webGLContextAttributes):canvas.getContext("webgl",webGLContextAttributes);if(!ctx)return 0;var handle=GL.registerContext(ctx,webGLContextAttributes);return handle},registerContext:function(ctx,webGLContextAttributes){var handle=_malloc(8);GROWABLE_HEAP_I32()[handle+4>>2]=_pthread_self();var context={handle:handle,attributes:webGLContextAttributes,version:webGLContextAttributes.majorVersion,GLctx:ctx};if(ctx.canvas)ctx.canvas.GLctxObject=context;GL.contexts[handle]=context;if(typeof webGLContextAttributes.enableExtensionsByDefault=="undefined"||webGLContextAttributes.enableExtensionsByDefault){GL.initExtensions(context)}return handle},makeContextCurrent:function(contextHandle){GL.currentContext=GL.contexts[contextHandle];Module.ctx=GLctx=GL.currentContext&&GL.currentContext.GLctx;return!(contextHandle&&!GLctx)},getContext:function(contextHandle){return GL.contexts[contextHandle]},deleteContext:function(contextHandle){if(GL.currentContext===GL.contexts[contextHandle])GL.currentContext=null;if(typeof JSEvents=="object")JSEvents.removeAllHandlersOnTarget(GL.contexts[contextHandle].GLctx.canvas);if(GL.contexts[contextHandle]&&GL.contexts[contextHandle].GLctx.canvas)GL.contexts[contextHandle].GLctx.canvas.GLctxObject=undefined;_free(GL.contexts[contextHandle].handle);GL.contexts[contextHandle]=null},initExtensions:function(context){if(!context)context=GL.currentContext;if(context.initExtensionsDone)return;context.initExtensionsDone=true;var GLctx=context.GLctx;__webgl_enable_ANGLE_instanced_arrays(GLctx);__webgl_enable_OES_vertex_array_object(GLctx);__webgl_enable_WEBGL_draw_buffers(GLctx);__webgl_enable_WEBGL_draw_instanced_base_vertex_base_instance(GLctx);__webgl_enable_WEBGL_multi_draw_instanced_base_vertex_base_instance(GLctx);if(context.version>=2){GLctx.disjointTimerQueryExt=GLctx.getExtension("EXT_disjoint_timer_query_webgl2")}if(context.version<2||!GLctx.disjointTimerQueryExt){GLctx.disjointTimerQueryExt=GLctx.getExtension("EXT_disjoint_timer_query")}__webgl_enable_WEBGL_multi_draw(GLctx);var exts=GLctx.getSupportedExtensions()||[];exts.forEach(function(ext){if(!ext.includes("lose_context")&&!ext.includes("debug")){GLctx.getExtension(ext)}})}};function maybeCStringToJsString(cString){return cString>2?UTF8ToString(cString):cString}function findCanvasEventTarget(target){target=maybeCStringToJsString(target);return GL.offscreenCanvases[target.substr(1)]||target=="canvas"&&Object.keys(GL.offscreenCanvases)[0]||typeof document!="undefined"&&document.querySelector(target)}function _emscripten_set_canvas_element_size_calling_thread(target,width,height){var canvas=findCanvasEventTarget(target);if(!canvas)return-4;if(canvas.canvasSharedPtr){GROWABLE_HEAP_I32()[canvas.canvasSharedPtr>>2]=width;GROWABLE_HEAP_I32()[canvas.canvasSharedPtr+4>>2]=height}if(canvas.offscreenCanvas||!canvas.controlTransferredOffscreen){if(canvas.offscreenCanvas)canvas=canvas.offscreenCanvas;var autoResizeViewport=false;if(canvas.GLctxObject&&canvas.GLctxObject.GLctx){var prevViewport=canvas.GLctxObject.GLctx.getParameter(2978);autoResizeViewport=prevViewport[0]===0&&prevViewport[1]===0&&prevViewport[2]===canvas.width&&prevViewport[3]===canvas.height}canvas.width=width;canvas.height=height;if(autoResizeViewport){canvas.GLctxObject.GLctx.viewport(0,0,width,height)}}else if(canvas.canvasSharedPtr){var targetThread=GROWABLE_HEAP_I32()[canvas.canvasSharedPtr+8>>2];_emscripten_set_offscreencanvas_size_on_target_thread(targetThread,target,width,height);return 1}else{return-4}return 0}function _emscripten_set_canvas_element_size_main_thread(target,width,height){if(ENVIRONMENT_IS_PTHREAD)return _emscripten_proxy_to_main_thread_js(8,1,target,width,height);return _emscripten_set_canvas_element_size_calling_thread(target,width,height)}function _emscripten_set_canvas_element_size(target,width,height){var canvas=findCanvasEventTarget(target);if(canvas){return _emscripten_set_canvas_element_size_calling_thread(target,width,height)}return _emscripten_set_canvas_element_size_main_thread(target,width,height)}var __emscripten_set_offscreencanvas_size=_emscripten_set_canvas_element_size;function __emscripten_throw_longjmp(){throw Infinity}function __mmap_js(len,prot,flags,fd,off,allocated,addr){if(ENVIRONMENT_IS_PTHREAD)return _emscripten_proxy_to_main_thread_js(9,1,len,prot,flags,fd,off,allocated,addr);return-52}function __munmap_js(addr,len,prot,flags,fd,offset){if(ENVIRONMENT_IS_PTHREAD)return _emscripten_proxy_to_main_thread_js(10,1,addr,len,prot,flags,fd,offset)}function _abort(){abort("")}function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;if(ENVIRONMENT_IS_NODE)text="warning: "+text;err(text)}}function _emscripten_check_blocking_allowed(){if(ENVIRONMENT_IS_NODE)return;if(ENVIRONMENT_IS_WORKER)return;warnOnce("Blocking on the main thread is very dangerous, see https://emscripten.org/docs/porting/pthreads.html#blocking-on-the-main-browser-thread")}var _emscripten_get_now;if(ENVIRONMENT_IS_NODE){_emscripten_get_now=()=>{var t=process.hrtime();return t[0]*1e3+t[1]/1e6}}else _emscripten_get_now=()=>performance.timeOrigin+performance.now();function _emscripten_glActiveTexture(x0){GLctx["activeTexture"](x0)}function _emscripten_glAttachShader(program,shader){GLctx.attachShader(GL.programs[program],GL.shaders[shader])}function _emscripten_glBindAttribLocation(program,index,name){GLctx.bindAttribLocation(GL.programs[program],index,UTF8ToString(name))}function _emscripten_glBindBuffer(target,buffer){if(target==35051){GLctx.currentPixelPackBufferBinding=buffer}else if(target==35052){GLctx.currentPixelUnpackBufferBinding=buffer}GLctx.bindBuffer(target,GL.buffers[buffer])}function _emscripten_glBindFramebuffer(target,framebuffer){GLctx.bindFramebuffer(target,GL.framebuffers[framebuffer])}function _emscripten_glBindRenderbuffer(target,renderbuffer){GLctx.bindRenderbuffer(target,GL.renderbuffers[renderbuffer])}function _emscripten_glBindSampler(unit,sampler){GLctx["bindSampler"](unit,GL.samplers[sampler])}function _emscripten_glBindTexture(target,texture){GLctx.bindTexture(target,GL.textures[texture])}function _emscripten_glBindVertexArray(vao){GLctx["bindVertexArray"](GL.vaos[vao])}function _emscripten_glBindVertexArrayOES(vao){GLctx["bindVertexArray"](GL.vaos[vao])}function _emscripten_glBlendColor(x0,x1,x2,x3){GLctx["blendColor"](x0,x1,x2,x3)}function _emscripten_glBlendEquation(x0){GLctx["blendEquation"](x0)}function _emscripten_glBlendFunc(x0,x1){GLctx["blendFunc"](x0,x1)}function _emscripten_glBlitFramebuffer(x0,x1,x2,x3,x4,x5,x6,x7,x8,x9){GLctx["blitFramebuffer"](x0,x1,x2,x3,x4,x5,x6,x7,x8,x9)}function _emscripten_glBufferData(target,size,data,usage){if(GL.currentContext.version>=2){if(data&&size){GLctx.bufferData(target,GROWABLE_HEAP_U8(),usage,data,size)}else{GLctx.bufferData(target,size,usage)}}else{GLctx.bufferData(target,data?GROWABLE_HEAP_U8().subarray(data,data+size):size,usage)}}function _emscripten_glBufferSubData(target,offset,size,data){if(GL.currentContext.version>=2){size&&GLctx.bufferSubData(target,offset,GROWABLE_HEAP_U8(),data,size);return}GLctx.bufferSubData(target,offset,GROWABLE_HEAP_U8().subarray(data,data+size))}function _emscripten_glCheckFramebufferStatus(x0){return GLctx["checkFramebufferStatus"](x0)}function _emscripten_glClear(x0){GLctx["clear"](x0)}function _emscripten_glClearColor(x0,x1,x2,x3){GLctx["clearColor"](x0,x1,x2,x3)}function _emscripten_glClearStencil(x0){GLctx["clearStencil"](x0)}function convertI32PairToI53(lo,hi){return(lo>>>0)+hi*4294967296}function _emscripten_glClientWaitSync(sync,flags,timeout_low,timeout_high){var timeout=convertI32PairToI53(timeout_low,timeout_high);return GLctx.clientWaitSync(GL.syncs[sync],flags,timeout)}function _emscripten_glColorMask(red,green,blue,alpha){GLctx.colorMask(!!red,!!green,!!blue,!!alpha)}function _emscripten_glCompileShader(shader){GLctx.compileShader(GL.shaders[shader])}function _emscripten_glCompressedTexImage2D(target,level,internalFormat,width,height,border,imageSize,data){if(GL.currentContext.version>=2){if(GLctx.currentPixelUnpackBufferBinding||!imageSize){GLctx["compressedTexImage2D"](target,level,internalFormat,width,height,border,imageSize,data)}else{GLctx["compressedTexImage2D"](target,level,internalFormat,width,height,border,GROWABLE_HEAP_U8(),data,imageSize)}return}GLctx["compressedTexImage2D"](target,level,internalFormat,width,height,border,data?GROWABLE_HEAP_U8().subarray(data,data+imageSize):null)}function _emscripten_glCompressedTexSubImage2D(target,level,xoffset,yoffset,width,height,format,imageSize,data){if(GL.currentContext.version>=2){if(GLctx.currentPixelUnpackBufferBinding||!imageSize){GLctx["compressedTexSubImage2D"](target,level,xoffset,yoffset,width,height,format,imageSize,data)}else{GLctx["compressedTexSubImage2D"](target,level,xoffset,yoffset,width,height,format,GROWABLE_HEAP_U8(),data,imageSize)}return}GLctx["compressedTexSubImage2D"](target,level,xoffset,yoffset,width,height,format,data?GROWABLE_HEAP_U8().subarray(data,data+imageSize):null)}function _emscripten_glCopyBufferSubData(x0,x1,x2,x3,x4){GLctx["copyBufferSubData"](x0,x1,x2,x3,x4)}function _emscripten_glCopyTexSubImage2D(x0,x1,x2,x3,x4,x5,x6,x7){GLctx["copyTexSubImage2D"](x0,x1,x2,x3,x4,x5,x6,x7)}function _emscripten_glCreateProgram(){var id=GL.getNewId(GL.programs);var program=GLctx.createProgram();program.name=id;program.maxUniformLength=program.maxAttributeLength=program.maxUniformBlockNameLength=0;program.uniformIdCounter=1;GL.programs[id]=program;return id}function _emscripten_glCreateShader(shaderType){var id=GL.getNewId(GL.shaders);GL.shaders[id]=GLctx.createShader(shaderType);return id}function _emscripten_glCullFace(x0){GLctx["cullFace"](x0)}function _emscripten_glDeleteBuffers(n,buffers){for(var i=0;i>2];var buffer=GL.buffers[id];if(!buffer)continue;GLctx.deleteBuffer(buffer);buffer.name=0;GL.buffers[id]=null;if(id==GLctx.currentPixelPackBufferBinding)GLctx.currentPixelPackBufferBinding=0;if(id==GLctx.currentPixelUnpackBufferBinding)GLctx.currentPixelUnpackBufferBinding=0}}function _emscripten_glDeleteFramebuffers(n,framebuffers){for(var i=0;i>2];var framebuffer=GL.framebuffers[id];if(!framebuffer)continue;GLctx.deleteFramebuffer(framebuffer);framebuffer.name=0;GL.framebuffers[id]=null}}function _emscripten_glDeleteProgram(id){if(!id)return;var program=GL.programs[id];if(!program){GL.recordError(1281);return}GLctx.deleteProgram(program);program.name=0;GL.programs[id]=null}function _emscripten_glDeleteRenderbuffers(n,renderbuffers){for(var i=0;i>2];var renderbuffer=GL.renderbuffers[id];if(!renderbuffer)continue;GLctx.deleteRenderbuffer(renderbuffer);renderbuffer.name=0;GL.renderbuffers[id]=null}}function _emscripten_glDeleteSamplers(n,samplers){for(var i=0;i>2];var sampler=GL.samplers[id];if(!sampler)continue;GLctx["deleteSampler"](sampler);sampler.name=0;GL.samplers[id]=null}}function _emscripten_glDeleteShader(id){if(!id)return;var shader=GL.shaders[id];if(!shader){GL.recordError(1281);return}GLctx.deleteShader(shader);GL.shaders[id]=null}function _emscripten_glDeleteSync(id){if(!id)return;var sync=GL.syncs[id];if(!sync){GL.recordError(1281);return}GLctx.deleteSync(sync);sync.name=0;GL.syncs[id]=null}function _emscripten_glDeleteTextures(n,textures){for(var i=0;i>2];var texture=GL.textures[id];if(!texture)continue;GLctx.deleteTexture(texture);texture.name=0;GL.textures[id]=null}}function _emscripten_glDeleteVertexArrays(n,vaos){for(var i=0;i>2];GLctx["deleteVertexArray"](GL.vaos[id]);GL.vaos[id]=null}}function _emscripten_glDeleteVertexArraysOES(n,vaos){for(var i=0;i>2];GLctx["deleteVertexArray"](GL.vaos[id]);GL.vaos[id]=null}}function _emscripten_glDepthMask(flag){GLctx.depthMask(!!flag)}function _emscripten_glDisable(x0){GLctx["disable"](x0)}function _emscripten_glDisableVertexAttribArray(index){GLctx.disableVertexAttribArray(index)}function _emscripten_glDrawArrays(mode,first,count){GLctx.drawArrays(mode,first,count)}function _emscripten_glDrawArraysInstanced(mode,first,count,primcount){GLctx["drawArraysInstanced"](mode,first,count,primcount)}function _emscripten_glDrawArraysInstancedBaseInstanceWEBGL(mode,first,count,instanceCount,baseInstance){GLctx.dibvbi["drawArraysInstancedBaseInstanceWEBGL"](mode,first,count,instanceCount,baseInstance)}var tempFixedLengthArray=[];function _emscripten_glDrawBuffers(n,bufs){var bufArray=tempFixedLengthArray[n];for(var i=0;i>2]}GLctx["drawBuffers"](bufArray)}function _emscripten_glDrawElements(mode,count,type,indices){GLctx.drawElements(mode,count,type,indices)}function _emscripten_glDrawElementsInstanced(mode,count,type,indices,primcount){GLctx["drawElementsInstanced"](mode,count,type,indices,primcount)}function _emscripten_glDrawElementsInstancedBaseVertexBaseInstanceWEBGL(mode,count,type,offset,instanceCount,baseVertex,baseinstance){GLctx.dibvbi["drawElementsInstancedBaseVertexBaseInstanceWEBGL"](mode,count,type,offset,instanceCount,baseVertex,baseinstance)}function _glDrawElements(mode,count,type,indices){GLctx.drawElements(mode,count,type,indices)}function _emscripten_glDrawRangeElements(mode,start,end,count,type,indices){_glDrawElements(mode,count,type,indices)}function _emscripten_glEnable(x0){GLctx["enable"](x0)}function _emscripten_glEnableVertexAttribArray(index){GLctx.enableVertexAttribArray(index)}function _emscripten_glFenceSync(condition,flags){var sync=GLctx.fenceSync(condition,flags);if(sync){var id=GL.getNewId(GL.syncs);sync.name=id;GL.syncs[id]=sync;return id}return 0}function _emscripten_glFinish(){GLctx["finish"]()}function _emscripten_glFlush(){GLctx["flush"]()}function _emscripten_glFramebufferRenderbuffer(target,attachment,renderbuffertarget,renderbuffer){GLctx.framebufferRenderbuffer(target,attachment,renderbuffertarget,GL.renderbuffers[renderbuffer])}function _emscripten_glFramebufferTexture2D(target,attachment,textarget,texture,level){GLctx.framebufferTexture2D(target,attachment,textarget,GL.textures[texture],level)}function _emscripten_glFrontFace(x0){GLctx["frontFace"](x0)}function __glGenObject(n,buffers,createFunction,objectTable){for(var i=0;i>2]=id}}function _emscripten_glGenBuffers(n,buffers){__glGenObject(n,buffers,"createBuffer",GL.buffers)}function _emscripten_glGenFramebuffers(n,ids){__glGenObject(n,ids,"createFramebuffer",GL.framebuffers)}function _emscripten_glGenRenderbuffers(n,renderbuffers){__glGenObject(n,renderbuffers,"createRenderbuffer",GL.renderbuffers)}function _emscripten_glGenSamplers(n,samplers){__glGenObject(n,samplers,"createSampler",GL.samplers)}function _emscripten_glGenTextures(n,textures){__glGenObject(n,textures,"createTexture",GL.textures)}function _emscripten_glGenVertexArrays(n,arrays){__glGenObject(n,arrays,"createVertexArray",GL.vaos)}function _emscripten_glGenVertexArraysOES(n,arrays){__glGenObject(n,arrays,"createVertexArray",GL.vaos)}function _emscripten_glGenerateMipmap(x0){GLctx["generateMipmap"](x0)}function _emscripten_glGetBufferParameteriv(target,value,data){if(!data){GL.recordError(1281);return}GROWABLE_HEAP_I32()[data>>2]=GLctx.getBufferParameter(target,value)}function _emscripten_glGetError(){var error=GLctx.getError()||GL.lastError;GL.lastError=0;return error}function writeI53ToI64(ptr,num){GROWABLE_HEAP_U32()[ptr>>2]=num;GROWABLE_HEAP_U32()[ptr+4>>2]=(num-GROWABLE_HEAP_U32()[ptr>>2])/4294967296}function emscriptenWebGLGet(name_,p,type){if(!p){GL.recordError(1281);return}var ret=undefined;switch(name_){case 36346:ret=1;break;case 36344:if(type!=0&&type!=1){GL.recordError(1280)}return;case 34814:case 36345:ret=0;break;case 34466:var formats=GLctx.getParameter(34467);ret=formats?formats.length:0;break;case 33309:if(GL.currentContext.version<2){GL.recordError(1282);return}var exts=GLctx.getSupportedExtensions()||[];ret=2*exts.length;break;case 33307:case 33308:if(GL.currentContext.version<2){GL.recordError(1280);return}ret=name_==33307?3:0;break}if(ret===undefined){var result=GLctx.getParameter(name_);switch(typeof result){case"number":ret=result;break;case"boolean":ret=result?1:0;break;case"string":GL.recordError(1280);return;case"object":if(result===null){switch(name_){case 34964:case 35725:case 34965:case 36006:case 36007:case 32873:case 34229:case 36662:case 36663:case 35053:case 35055:case 36010:case 35097:case 35869:case 32874:case 36389:case 35983:case 35368:case 34068:{ret=0;break}default:{GL.recordError(1280);return}}}else if(result instanceof Float32Array||result instanceof Uint32Array||result instanceof Int32Array||result instanceof Array){for(var i=0;i>2]=result[i];break;case 2:GROWABLE_HEAP_F32()[p+i*4>>2]=result[i];break;case 4:GROWABLE_HEAP_I8()[p+i>>0]=result[i]?1:0;break}}return}else{try{ret=result.name|0}catch(e){GL.recordError(1280);err("GL_INVALID_ENUM in glGet"+type+"v: Unknown object returned from WebGL getParameter("+name_+")! (error: "+e+")");return}}break;default:GL.recordError(1280);err("GL_INVALID_ENUM in glGet"+type+"v: Native code calling glGet"+type+"v("+name_+") and it returns "+result+" of type "+typeof result+"!");return}}switch(type){case 1:writeI53ToI64(p,ret);break;case 0:GROWABLE_HEAP_I32()[p>>2]=ret;break;case 2:GROWABLE_HEAP_F32()[p>>2]=ret;break;case 4:GROWABLE_HEAP_I8()[p>>0]=ret?1:0;break}}function _emscripten_glGetFloatv(name_,p){emscriptenWebGLGet(name_,p,2)}function _emscripten_glGetFramebufferAttachmentParameteriv(target,attachment,pname,params){var result=GLctx.getFramebufferAttachmentParameter(target,attachment,pname);if(result instanceof WebGLRenderbuffer||result instanceof WebGLTexture){result=result.name|0}GROWABLE_HEAP_I32()[params>>2]=result}function _emscripten_glGetIntegerv(name_,p){emscriptenWebGLGet(name_,p,0)}function _emscripten_glGetProgramInfoLog(program,maxLength,length,infoLog){var log=GLctx.getProgramInfoLog(GL.programs[program]);if(log===null)log="(unknown error)";var numBytesWrittenExclNull=maxLength>0&&infoLog?stringToUTF8(log,infoLog,maxLength):0;if(length)GROWABLE_HEAP_I32()[length>>2]=numBytesWrittenExclNull}function _emscripten_glGetProgramiv(program,pname,p){if(!p){GL.recordError(1281);return}if(program>=GL.counter){GL.recordError(1281);return}program=GL.programs[program];if(pname==35716){var log=GLctx.getProgramInfoLog(program);if(log===null)log="(unknown error)";GROWABLE_HEAP_I32()[p>>2]=log.length+1}else if(pname==35719){if(!program.maxUniformLength){for(var i=0;i>2]=program.maxUniformLength}else if(pname==35722){if(!program.maxAttributeLength){for(var i=0;i>2]=program.maxAttributeLength}else if(pname==35381){if(!program.maxUniformBlockNameLength){for(var i=0;i>2]=program.maxUniformBlockNameLength}else{GROWABLE_HEAP_I32()[p>>2]=GLctx.getProgramParameter(program,pname)}}function _emscripten_glGetRenderbufferParameteriv(target,pname,params){if(!params){GL.recordError(1281);return}GROWABLE_HEAP_I32()[params>>2]=GLctx.getRenderbufferParameter(target,pname)}function _emscripten_glGetShaderInfoLog(shader,maxLength,length,infoLog){var log=GLctx.getShaderInfoLog(GL.shaders[shader]);if(log===null)log="(unknown error)";var numBytesWrittenExclNull=maxLength>0&&infoLog?stringToUTF8(log,infoLog,maxLength):0;if(length)GROWABLE_HEAP_I32()[length>>2]=numBytesWrittenExclNull}function _emscripten_glGetShaderPrecisionFormat(shaderType,precisionType,range,precision){var result=GLctx.getShaderPrecisionFormat(shaderType,precisionType);GROWABLE_HEAP_I32()[range>>2]=result.rangeMin;GROWABLE_HEAP_I32()[range+4>>2]=result.rangeMax;GROWABLE_HEAP_I32()[precision>>2]=result.precision}function _emscripten_glGetShaderiv(shader,pname,p){if(!p){GL.recordError(1281);return}if(pname==35716){var log=GLctx.getShaderInfoLog(GL.shaders[shader]);if(log===null)log="(unknown error)";var logLength=log?log.length+1:0;GROWABLE_HEAP_I32()[p>>2]=logLength}else if(pname==35720){var source=GLctx.getShaderSource(GL.shaders[shader]);var sourceLength=source?source.length+1:0;GROWABLE_HEAP_I32()[p>>2]=sourceLength}else{GROWABLE_HEAP_I32()[p>>2]=GLctx.getShaderParameter(GL.shaders[shader],pname)}}function _emscripten_glGetString(name_){var ret=GL.stringCache[name_];if(!ret){switch(name_){case 7939:var exts=GLctx.getSupportedExtensions()||[];exts=exts.concat(exts.map(function(e){return"GL_"+e}));ret=stringToNewUTF8(exts.join(" "));break;case 7936:case 7937:case 37445:case 37446:var s=GLctx.getParameter(name_);if(!s){GL.recordError(1280)}ret=s&&stringToNewUTF8(s);break;case 7938:var glVersion=GLctx.getParameter(7938);if(GL.currentContext.version>=2)glVersion="OpenGL ES 3.0 ("+glVersion+")";else{glVersion="OpenGL ES 2.0 ("+glVersion+")"}ret=stringToNewUTF8(glVersion);break;case 35724:var glslVersion=GLctx.getParameter(35724);var ver_re=/^WebGL GLSL ES ([0-9]\.[0-9][0-9]?)(?:$| .*)/;var ver_num=glslVersion.match(ver_re);if(ver_num!==null){if(ver_num[1].length==3)ver_num[1]=ver_num[1]+"0";glslVersion="OpenGL ES GLSL ES "+ver_num[1]+" ("+glslVersion+")"}ret=stringToNewUTF8(glslVersion);break;default:GL.recordError(1280)}GL.stringCache[name_]=ret}return ret}function _emscripten_glGetStringi(name,index){if(GL.currentContext.version<2){GL.recordError(1282);return 0}var stringiCache=GL.stringiCache[name];if(stringiCache){if(index<0||index>=stringiCache.length){GL.recordError(1281);return 0}return stringiCache[index]}switch(name){case 7939:var exts=GLctx.getSupportedExtensions()||[];exts=exts.concat(exts.map(function(e){return"GL_"+e}));exts=exts.map(function(e){return stringToNewUTF8(e)});stringiCache=GL.stringiCache[name]=exts;if(index<0||index>=stringiCache.length){GL.recordError(1281);return 0}return stringiCache[index];default:GL.recordError(1280);return 0}}function jstoi_q(str){return parseInt(str)}function webglGetLeftBracePos(name){return name.slice(-1)=="]"&&name.lastIndexOf("[")}function webglPrepareUniformLocationsBeforeFirstUse(program){var uniformLocsById=program.uniformLocsById,uniformSizeAndIdsByName=program.uniformSizeAndIdsByName,i,j;if(!uniformLocsById){program.uniformLocsById=uniformLocsById={};program.uniformArrayNamesById={};for(i=0;i0?nm.slice(0,lb):nm;var id=program.uniformIdCounter;program.uniformIdCounter+=sz;uniformSizeAndIdsByName[arrayName]=[sz,id];for(j=0;j0){arrayIndex=jstoi_q(name.slice(leftBrace+1))>>>0;uniformBaseName=name.slice(0,leftBrace)}var sizeAndId=program.uniformSizeAndIdsByName[uniformBaseName];if(sizeAndId&&arrayIndex>2]}GLctx["invalidateFramebuffer"](target,list)}function _emscripten_glInvalidateSubFramebuffer(target,numAttachments,attachments,x,y,width,height){var list=tempFixedLengthArray[numAttachments];for(var i=0;i>2]}GLctx["invalidateSubFramebuffer"](target,list,x,y,width,height)}function _emscripten_glIsSync(sync){return GLctx.isSync(GL.syncs[sync])}function _emscripten_glIsTexture(id){var texture=GL.textures[id];if(!texture)return 0;return GLctx.isTexture(texture)}function _emscripten_glLineWidth(x0){GLctx["lineWidth"](x0)}function _emscripten_glLinkProgram(program){program=GL.programs[program];GLctx.linkProgram(program);program.uniformLocsById=0;program.uniformSizeAndIdsByName={}}function _emscripten_glMultiDrawArraysInstancedBaseInstanceWEBGL(mode,firsts,counts,instanceCounts,baseInstances,drawCount){GLctx.mdibvbi["multiDrawArraysInstancedBaseInstanceWEBGL"](mode,GROWABLE_HEAP_I32(),firsts>>2,GROWABLE_HEAP_I32(),counts>>2,GROWABLE_HEAP_I32(),instanceCounts>>2,GROWABLE_HEAP_U32(),baseInstances>>2,drawCount)}function _emscripten_glMultiDrawElementsInstancedBaseVertexBaseInstanceWEBGL(mode,counts,type,offsets,instanceCounts,baseVertices,baseInstances,drawCount){GLctx.mdibvbi["multiDrawElementsInstancedBaseVertexBaseInstanceWEBGL"](mode,GROWABLE_HEAP_I32(),counts>>2,type,GROWABLE_HEAP_I32(),offsets>>2,GROWABLE_HEAP_I32(),instanceCounts>>2,GROWABLE_HEAP_I32(),baseVertices>>2,GROWABLE_HEAP_U32(),baseInstances>>2,drawCount)}function _emscripten_glPixelStorei(pname,param){if(pname==3317){GL.unpackAlignment=param}GLctx.pixelStorei(pname,param)}function _emscripten_glReadBuffer(x0){GLctx["readBuffer"](x0)}function computeUnpackAlignedImageSize(width,height,sizePerPixel,alignment){function roundedToNextMultipleOf(x,y){return x+y-1&-y}var plainRowSize=width*sizePerPixel;var alignedRowSize=roundedToNextMultipleOf(plainRowSize,alignment);return height*alignedRowSize}function __colorChannelsInGlTextureFormat(format){var colorChannels={5:3,6:4,8:2,29502:3,29504:4,26917:2,26918:2,29846:3,29847:4};return colorChannels[format-6402]||1}function heapObjectForWebGLType(type){type-=5120;if(type==0)return GROWABLE_HEAP_I8();if(type==1)return GROWABLE_HEAP_U8();if(type==2)return GROWABLE_HEAP_I16();if(type==4)return GROWABLE_HEAP_I32();if(type==6)return GROWABLE_HEAP_F32();if(type==5||type==28922||type==28520||type==30779||type==30782)return GROWABLE_HEAP_U32();return GROWABLE_HEAP_U16()}function heapAccessShiftForWebGLHeap(heap){return 31-Math.clz32(heap.BYTES_PER_ELEMENT)}function emscriptenWebGLGetTexPixelData(type,format,width,height,pixels,internalFormat){var heap=heapObjectForWebGLType(type);var shift=heapAccessShiftForWebGLHeap(heap);var byteSize=1<>shift,pixels+bytes>>shift)}function _emscripten_glReadPixels(x,y,width,height,format,type,pixels){if(GL.currentContext.version>=2){if(GLctx.currentPixelPackBufferBinding){GLctx.readPixels(x,y,width,height,format,type,pixels)}else{var heap=heapObjectForWebGLType(type);GLctx.readPixels(x,y,width,height,format,type,heap,pixels>>heapAccessShiftForWebGLHeap(heap))}return}var pixelData=emscriptenWebGLGetTexPixelData(type,format,width,height,pixels,format);if(!pixelData){GL.recordError(1280);return}GLctx.readPixels(x,y,width,height,format,type,pixelData)}function _emscripten_glRenderbufferStorage(x0,x1,x2,x3){GLctx["renderbufferStorage"](x0,x1,x2,x3)}function _emscripten_glRenderbufferStorageMultisample(x0,x1,x2,x3,x4){GLctx["renderbufferStorageMultisample"](x0,x1,x2,x3,x4)}function _emscripten_glSamplerParameterf(sampler,pname,param){GLctx["samplerParameterf"](GL.samplers[sampler],pname,param)}function _emscripten_glSamplerParameteri(sampler,pname,param){GLctx["samplerParameteri"](GL.samplers[sampler],pname,param)}function _emscripten_glSamplerParameteriv(sampler,pname,params){var param=GROWABLE_HEAP_I32()[params>>2];GLctx["samplerParameteri"](GL.samplers[sampler],pname,param)}function _emscripten_glScissor(x0,x1,x2,x3){GLctx["scissor"](x0,x1,x2,x3)}function _emscripten_glShaderSource(shader,count,string,length){var source=GL.getSource(shader,count,string,length);GLctx.shaderSource(GL.shaders[shader],source)}function _emscripten_glStencilFunc(x0,x1,x2){GLctx["stencilFunc"](x0,x1,x2)}function _emscripten_glStencilFuncSeparate(x0,x1,x2,x3){GLctx["stencilFuncSeparate"](x0,x1,x2,x3)}function _emscripten_glStencilMask(x0){GLctx["stencilMask"](x0)}function _emscripten_glStencilMaskSeparate(x0,x1){GLctx["stencilMaskSeparate"](x0,x1)}function _emscripten_glStencilOp(x0,x1,x2){GLctx["stencilOp"](x0,x1,x2)}function _emscripten_glStencilOpSeparate(x0,x1,x2,x3){GLctx["stencilOpSeparate"](x0,x1,x2,x3)}function _emscripten_glTexImage2D(target,level,internalFormat,width,height,border,format,type,pixels){if(GL.currentContext.version>=2){if(GLctx.currentPixelUnpackBufferBinding){GLctx.texImage2D(target,level,internalFormat,width,height,border,format,type,pixels)}else if(pixels){var heap=heapObjectForWebGLType(type);GLctx.texImage2D(target,level,internalFormat,width,height,border,format,type,heap,pixels>>heapAccessShiftForWebGLHeap(heap))}else{GLctx.texImage2D(target,level,internalFormat,width,height,border,format,type,null)}return}GLctx.texImage2D(target,level,internalFormat,width,height,border,format,type,pixels?emscriptenWebGLGetTexPixelData(type,format,width,height,pixels,internalFormat):null)}function _emscripten_glTexParameterf(x0,x1,x2){GLctx["texParameterf"](x0,x1,x2)}function _emscripten_glTexParameterfv(target,pname,params){var param=GROWABLE_HEAP_F32()[params>>2];GLctx.texParameterf(target,pname,param)}function _emscripten_glTexParameteri(x0,x1,x2){GLctx["texParameteri"](x0,x1,x2)}function _emscripten_glTexParameteriv(target,pname,params){var param=GROWABLE_HEAP_I32()[params>>2];GLctx.texParameteri(target,pname,param)}function _emscripten_glTexStorage2D(x0,x1,x2,x3,x4){GLctx["texStorage2D"](x0,x1,x2,x3,x4)}function _emscripten_glTexSubImage2D(target,level,xoffset,yoffset,width,height,format,type,pixels){if(GL.currentContext.version>=2){if(GLctx.currentPixelUnpackBufferBinding){GLctx.texSubImage2D(target,level,xoffset,yoffset,width,height,format,type,pixels)}else if(pixels){var heap=heapObjectForWebGLType(type);GLctx.texSubImage2D(target,level,xoffset,yoffset,width,height,format,type,heap,pixels>>heapAccessShiftForWebGLHeap(heap))}else{GLctx.texSubImage2D(target,level,xoffset,yoffset,width,height,format,type,null)}return}var pixelData=null;if(pixels)pixelData=emscriptenWebGLGetTexPixelData(type,format,width,height,pixels,0);GLctx.texSubImage2D(target,level,xoffset,yoffset,width,height,format,type,pixelData)}function webglGetUniformLocation(location){var p=GLctx.currentProgram;if(p){var webglLoc=p.uniformLocsById[location];if(typeof webglLoc=="number"){p.uniformLocsById[location]=webglLoc=GLctx.getUniformLocation(p,p.uniformArrayNamesById[location]+(webglLoc>0?"["+webglLoc+"]":""))}return webglLoc}else{GL.recordError(1282)}}function _emscripten_glUniform1f(location,v0){GLctx.uniform1f(webglGetUniformLocation(location),v0)}var miniTempWebGLFloatBuffers=[];function _emscripten_glUniform1fv(location,count,value){if(GL.currentContext.version>=2){count&&GLctx.uniform1fv(webglGetUniformLocation(location),GROWABLE_HEAP_F32(),value>>2,count);return}if(count<=288){var view=miniTempWebGLFloatBuffers[count-1];for(var i=0;i>2]}}else{var view=GROWABLE_HEAP_F32().subarray(value>>2,value+count*4>>2)}GLctx.uniform1fv(webglGetUniformLocation(location),view)}function _emscripten_glUniform1i(location,v0){GLctx.uniform1i(webglGetUniformLocation(location),v0)}var __miniTempWebGLIntBuffers=[];function _emscripten_glUniform1iv(location,count,value){if(GL.currentContext.version>=2){count&&GLctx.uniform1iv(webglGetUniformLocation(location),GROWABLE_HEAP_I32(),value>>2,count);return}if(count<=288){var view=__miniTempWebGLIntBuffers[count-1];for(var i=0;i>2]}}else{var view=GROWABLE_HEAP_I32().subarray(value>>2,value+count*4>>2)}GLctx.uniform1iv(webglGetUniformLocation(location),view)}function _emscripten_glUniform2f(location,v0,v1){GLctx.uniform2f(webglGetUniformLocation(location),v0,v1)}function _emscripten_glUniform2fv(location,count,value){if(GL.currentContext.version>=2){count&&GLctx.uniform2fv(webglGetUniformLocation(location),GROWABLE_HEAP_F32(),value>>2,count*2);return}if(count<=144){var view=miniTempWebGLFloatBuffers[2*count-1];for(var i=0;i<2*count;i+=2){view[i]=GROWABLE_HEAP_F32()[value+4*i>>2];view[i+1]=GROWABLE_HEAP_F32()[value+(4*i+4)>>2]}}else{var view=GROWABLE_HEAP_F32().subarray(value>>2,value+count*8>>2)}GLctx.uniform2fv(webglGetUniformLocation(location),view)}function _emscripten_glUniform2i(location,v0,v1){GLctx.uniform2i(webglGetUniformLocation(location),v0,v1)}function _emscripten_glUniform2iv(location,count,value){if(GL.currentContext.version>=2){count&&GLctx.uniform2iv(webglGetUniformLocation(location),GROWABLE_HEAP_I32(),value>>2,count*2);return}if(count<=144){var view=__miniTempWebGLIntBuffers[2*count-1];for(var i=0;i<2*count;i+=2){view[i]=GROWABLE_HEAP_I32()[value+4*i>>2];view[i+1]=GROWABLE_HEAP_I32()[value+(4*i+4)>>2]}}else{var view=GROWABLE_HEAP_I32().subarray(value>>2,value+count*8>>2)}GLctx.uniform2iv(webglGetUniformLocation(location),view)}function _emscripten_glUniform3f(location,v0,v1,v2){GLctx.uniform3f(webglGetUniformLocation(location),v0,v1,v2)}function _emscripten_glUniform3fv(location,count,value){if(GL.currentContext.version>=2){count&&GLctx.uniform3fv(webglGetUniformLocation(location),GROWABLE_HEAP_F32(),value>>2,count*3);return}if(count<=96){var view=miniTempWebGLFloatBuffers[3*count-1];for(var i=0;i<3*count;i+=3){view[i]=GROWABLE_HEAP_F32()[value+4*i>>2];view[i+1]=GROWABLE_HEAP_F32()[value+(4*i+4)>>2];view[i+2]=GROWABLE_HEAP_F32()[value+(4*i+8)>>2]}}else{var view=GROWABLE_HEAP_F32().subarray(value>>2,value+count*12>>2)}GLctx.uniform3fv(webglGetUniformLocation(location),view)}function _emscripten_glUniform3i(location,v0,v1,v2){GLctx.uniform3i(webglGetUniformLocation(location),v0,v1,v2)}function _emscripten_glUniform3iv(location,count,value){if(GL.currentContext.version>=2){count&&GLctx.uniform3iv(webglGetUniformLocation(location),GROWABLE_HEAP_I32(),value>>2,count*3);return}if(count<=96){var view=__miniTempWebGLIntBuffers[3*count-1];for(var i=0;i<3*count;i+=3){view[i]=GROWABLE_HEAP_I32()[value+4*i>>2];view[i+1]=GROWABLE_HEAP_I32()[value+(4*i+4)>>2];view[i+2]=GROWABLE_HEAP_I32()[value+(4*i+8)>>2]}}else{var view=GROWABLE_HEAP_I32().subarray(value>>2,value+count*12>>2)}GLctx.uniform3iv(webglGetUniformLocation(location),view)}function _emscripten_glUniform4f(location,v0,v1,v2,v3){GLctx.uniform4f(webglGetUniformLocation(location),v0,v1,v2,v3)}function _emscripten_glUniform4fv(location,count,value){if(GL.currentContext.version>=2){count&&GLctx.uniform4fv(webglGetUniformLocation(location),GROWABLE_HEAP_F32(),value>>2,count*4);return}if(count<=72){var view=miniTempWebGLFloatBuffers[4*count-1];var heap=GROWABLE_HEAP_F32();value>>=2;for(var i=0;i<4*count;i+=4){var dst=value+i;view[i]=heap[dst];view[i+1]=heap[dst+1];view[i+2]=heap[dst+2];view[i+3]=heap[dst+3]}}else{var view=GROWABLE_HEAP_F32().subarray(value>>2,value+count*16>>2)}GLctx.uniform4fv(webglGetUniformLocation(location),view)}function _emscripten_glUniform4i(location,v0,v1,v2,v3){GLctx.uniform4i(webglGetUniformLocation(location),v0,v1,v2,v3)}function _emscripten_glUniform4iv(location,count,value){if(GL.currentContext.version>=2){count&&GLctx.uniform4iv(webglGetUniformLocation(location),GROWABLE_HEAP_I32(),value>>2,count*4);return}if(count<=72){var view=__miniTempWebGLIntBuffers[4*count-1];for(var i=0;i<4*count;i+=4){view[i]=GROWABLE_HEAP_I32()[value+4*i>>2];view[i+1]=GROWABLE_HEAP_I32()[value+(4*i+4)>>2];view[i+2]=GROWABLE_HEAP_I32()[value+(4*i+8)>>2];view[i+3]=GROWABLE_HEAP_I32()[value+(4*i+12)>>2]}}else{var view=GROWABLE_HEAP_I32().subarray(value>>2,value+count*16>>2)}GLctx.uniform4iv(webglGetUniformLocation(location),view)}function _emscripten_glUniformMatrix2fv(location,count,transpose,value){if(GL.currentContext.version>=2){count&&GLctx.uniformMatrix2fv(webglGetUniformLocation(location),!!transpose,GROWABLE_HEAP_F32(),value>>2,count*4);return}if(count<=72){var view=miniTempWebGLFloatBuffers[4*count-1];for(var i=0;i<4*count;i+=4){view[i]=GROWABLE_HEAP_F32()[value+4*i>>2];view[i+1]=GROWABLE_HEAP_F32()[value+(4*i+4)>>2];view[i+2]=GROWABLE_HEAP_F32()[value+(4*i+8)>>2];view[i+3]=GROWABLE_HEAP_F32()[value+(4*i+12)>>2]}}else{var view=GROWABLE_HEAP_F32().subarray(value>>2,value+count*16>>2)}GLctx.uniformMatrix2fv(webglGetUniformLocation(location),!!transpose,view)}function _emscripten_glUniformMatrix3fv(location,count,transpose,value){if(GL.currentContext.version>=2){count&&GLctx.uniformMatrix3fv(webglGetUniformLocation(location),!!transpose,GROWABLE_HEAP_F32(),value>>2,count*9);return}if(count<=32){var view=miniTempWebGLFloatBuffers[9*count-1];for(var i=0;i<9*count;i+=9){view[i]=GROWABLE_HEAP_F32()[value+4*i>>2];view[i+1]=GROWABLE_HEAP_F32()[value+(4*i+4)>>2];view[i+2]=GROWABLE_HEAP_F32()[value+(4*i+8)>>2];view[i+3]=GROWABLE_HEAP_F32()[value+(4*i+12)>>2];view[i+4]=GROWABLE_HEAP_F32()[value+(4*i+16)>>2];view[i+5]=GROWABLE_HEAP_F32()[value+(4*i+20)>>2];view[i+6]=GROWABLE_HEAP_F32()[value+(4*i+24)>>2];view[i+7]=GROWABLE_HEAP_F32()[value+(4*i+28)>>2];view[i+8]=GROWABLE_HEAP_F32()[value+(4*i+32)>>2]}}else{var view=GROWABLE_HEAP_F32().subarray(value>>2,value+count*36>>2)}GLctx.uniformMatrix3fv(webglGetUniformLocation(location),!!transpose,view)}function _emscripten_glUniformMatrix4fv(location,count,transpose,value){if(GL.currentContext.version>=2){count&&GLctx.uniformMatrix4fv(webglGetUniformLocation(location),!!transpose,GROWABLE_HEAP_F32(),value>>2,count*16);return}if(count<=18){var view=miniTempWebGLFloatBuffers[16*count-1];var heap=GROWABLE_HEAP_F32();value>>=2;for(var i=0;i<16*count;i+=16){var dst=value+i;view[i]=heap[dst];view[i+1]=heap[dst+1];view[i+2]=heap[dst+2];view[i+3]=heap[dst+3];view[i+4]=heap[dst+4];view[i+5]=heap[dst+5];view[i+6]=heap[dst+6];view[i+7]=heap[dst+7];view[i+8]=heap[dst+8];view[i+9]=heap[dst+9];view[i+10]=heap[dst+10];view[i+11]=heap[dst+11];view[i+12]=heap[dst+12];view[i+13]=heap[dst+13];view[i+14]=heap[dst+14];view[i+15]=heap[dst+15]}}else{var view=GROWABLE_HEAP_F32().subarray(value>>2,value+count*64>>2)}GLctx.uniformMatrix4fv(webglGetUniformLocation(location),!!transpose,view)}function _emscripten_glUseProgram(program){program=GL.programs[program];GLctx.useProgram(program);GLctx.currentProgram=program}function _emscripten_glVertexAttrib1f(x0,x1){GLctx["vertexAttrib1f"](x0,x1)}function _emscripten_glVertexAttrib2fv(index,v){GLctx.vertexAttrib2f(index,GROWABLE_HEAP_F32()[v>>2],GROWABLE_HEAP_F32()[v+4>>2])}function _emscripten_glVertexAttrib3fv(index,v){GLctx.vertexAttrib3f(index,GROWABLE_HEAP_F32()[v>>2],GROWABLE_HEAP_F32()[v+4>>2],GROWABLE_HEAP_F32()[v+8>>2])}function _emscripten_glVertexAttrib4fv(index,v){GLctx.vertexAttrib4f(index,GROWABLE_HEAP_F32()[v>>2],GROWABLE_HEAP_F32()[v+4>>2],GROWABLE_HEAP_F32()[v+8>>2],GROWABLE_HEAP_F32()[v+12>>2])}function _emscripten_glVertexAttribDivisor(index,divisor){GLctx["vertexAttribDivisor"](index,divisor)}function _emscripten_glVertexAttribIPointer(index,size,type,stride,ptr){GLctx["vertexAttribIPointer"](index,size,type,stride,ptr)}function _emscripten_glVertexAttribPointer(index,size,type,normalized,stride,ptr){GLctx.vertexAttribPointer(index,size,type,!!normalized,stride,ptr)}function _emscripten_glViewport(x0,x1,x2,x3){GLctx["viewport"](x0,x1,x2,x3)}function _emscripten_glWaitSync(sync,flags,timeout_low,timeout_high){var timeout=convertI32PairToI53(timeout_low,timeout_high);GLctx.waitSync(GL.syncs[sync],flags,timeout)}function _emscripten_proxy_to_main_thread_js(index,sync){var numCallArgs=arguments.length-2;var outerArgs=arguments;return withStackSave(()=>{var serializedNumCallArgs=numCallArgs;var args=stackAlloc(serializedNumCallArgs*8);var b=args>>3;for(var i=0;i>3;for(var i=0;i>>16);updateMemoryViews();return 1}catch(e){}}function _emscripten_resize_heap(requestedSize){var oldSize=GROWABLE_HEAP_U8().length;requestedSize=requestedSize>>>0;if(requestedSize<=oldSize){return false}var maxHeapSize=getHeapMax();if(requestedSize>maxHeapSize){return false}let alignUp=(x,multiple)=>x+(multiple-x%multiple)%multiple;for(var cutDown=1;cutDown<=4;cutDown*=2){var overGrownHeapSize=oldSize*(1+.2/cutDown);overGrownHeapSize=Math.min(overGrownHeapSize,requestedSize+100663296);var newSize=Math.min(maxHeapSize,alignUp(Math.max(requestedSize,overGrownHeapSize),65536));var replacement=emscripten_realloc_buffer(newSize);if(replacement){return true}}return false}function _emscripten_unwind_to_js_event_loop(){throw"unwind"}var __emscripten_webgl_power_preferences=["default","low-power","high-performance"];function _emscripten_webgl_do_create_context(target,attributes){var a=attributes>>2;var powerPreference=GROWABLE_HEAP_I32()[a+(24>>2)];var contextAttributes={"alpha":!!GROWABLE_HEAP_I32()[a+(0>>2)],"depth":!!GROWABLE_HEAP_I32()[a+(4>>2)],"stencil":!!GROWABLE_HEAP_I32()[a+(8>>2)],"antialias":!!GROWABLE_HEAP_I32()[a+(12>>2)],"premultipliedAlpha":!!GROWABLE_HEAP_I32()[a+(16>>2)],"preserveDrawingBuffer":!!GROWABLE_HEAP_I32()[a+(20>>2)],"powerPreference":__emscripten_webgl_power_preferences[powerPreference],"failIfMajorPerformanceCaveat":!!GROWABLE_HEAP_I32()[a+(28>>2)],majorVersion:GROWABLE_HEAP_I32()[a+(32>>2)],minorVersion:GROWABLE_HEAP_I32()[a+(36>>2)],enableExtensionsByDefault:GROWABLE_HEAP_I32()[a+(40>>2)],explicitSwapControl:GROWABLE_HEAP_I32()[a+(44>>2)],proxyContextToMainThread:GROWABLE_HEAP_I32()[a+(48>>2)],renderViaOffscreenBackBuffer:GROWABLE_HEAP_I32()[a+(52>>2)]};var canvas=findCanvasEventTarget(target);if(!canvas){return 0}if(canvas.offscreenCanvas)canvas=canvas.offscreenCanvas;if(contextAttributes.explicitSwapControl){var supportsOffscreenCanvas=canvas.transferControlToOffscreen||typeof OffscreenCanvas!="undefined"&&canvas instanceof OffscreenCanvas;if(!supportsOffscreenCanvas){return 0}if(canvas.transferControlToOffscreen){if(!canvas.controlTransferredOffscreen){GL.offscreenCanvases[canvas.id]={canvas:canvas.transferControlToOffscreen(),canvasSharedPtr:_malloc(12),id:canvas.id};canvas.controlTransferredOffscreen=true}else if(!GL.offscreenCanvases[canvas.id]){return 0}canvas=GL.offscreenCanvases[canvas.id]}}var contextHandle=GL.createContext(canvas,contextAttributes);return contextHandle}var _emscripten_webgl_create_context=_emscripten_webgl_do_create_context;function _emscripten_webgl_do_get_current_context(){return GL.currentContext?GL.currentContext.handle:0}var _emscripten_webgl_get_current_context=_emscripten_webgl_do_get_current_context;function _emscripten_webgl_init_context_attributes(attributes){var a=attributes>>2;for(var i=0;i<56>>2;++i){GROWABLE_HEAP_I32()[a+i]=0}GROWABLE_HEAP_I32()[a+(0>>2)]=GROWABLE_HEAP_I32()[a+(4>>2)]=GROWABLE_HEAP_I32()[a+(12>>2)]=GROWABLE_HEAP_I32()[a+(16>>2)]=GROWABLE_HEAP_I32()[a+(32>>2)]=GROWABLE_HEAP_I32()[a+(40>>2)]=1;if(ENVIRONMENT_IS_WORKER)GROWABLE_HEAP_I32()[attributes+48>>2]=1}function _emscripten_webgl_make_context_current(contextHandle){var success=GL.makeContextCurrent(contextHandle);return success?0:-5}var ENV={};function getExecutableName(){return thisProgram||"./this.program"}function getEnvStrings(){if(!getEnvStrings.strings){var lang=(typeof navigator=="object"&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8";var env={"USER":"web_user","LOGNAME":"web_user","PATH":"/","PWD":"/","HOME":"/home/web_user","LANG":lang,"_":getExecutableName()};for(var x in ENV){if(ENV[x]===undefined)delete env[x];else env[x]=ENV[x]}var strings=[];for(var x in env){strings.push(x+"="+env[x])}getEnvStrings.strings=strings}return getEnvStrings.strings}function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i>0]=str.charCodeAt(i)}if(!dontAddNull)GROWABLE_HEAP_I8()[buffer>>0]=0}function _environ_get(__environ,environ_buf){if(ENVIRONMENT_IS_PTHREAD)return _emscripten_proxy_to_main_thread_js(11,1,__environ,environ_buf);var bufSize=0;getEnvStrings().forEach(function(string,i){var ptr=environ_buf+bufSize;GROWABLE_HEAP_U32()[__environ+i*4>>2]=ptr;writeAsciiToMemory(string,ptr);bufSize+=string.length+1});return 0}function _environ_sizes_get(penviron_count,penviron_buf_size){if(ENVIRONMENT_IS_PTHREAD)return _emscripten_proxy_to_main_thread_js(12,1,penviron_count,penviron_buf_size);var strings=getEnvStrings();GROWABLE_HEAP_U32()[penviron_count>>2]=strings.length;var bufSize=0;strings.forEach(function(string){bufSize+=string.length+1});GROWABLE_HEAP_U32()[penviron_buf_size>>2]=bufSize;return 0}function _fd_close(fd){if(ENVIRONMENT_IS_PTHREAD)return _emscripten_proxy_to_main_thread_js(13,1,fd);return 52}function _fd_pread(fd,iov,iovcnt,offset_low,offset_high,pnum){if(ENVIRONMENT_IS_PTHREAD)return _emscripten_proxy_to_main_thread_js(14,1,fd,iov,iovcnt,offset_low,offset_high,pnum);return 52}function _fd_read(fd,iov,iovcnt,pnum){if(ENVIRONMENT_IS_PTHREAD)return _emscripten_proxy_to_main_thread_js(15,1,fd,iov,iovcnt,pnum);return 52}function _fd_seek(fd,offset_low,offset_high,whence,newOffset){if(ENVIRONMENT_IS_PTHREAD)return _emscripten_proxy_to_main_thread_js(16,1,fd,offset_low,offset_high,whence,newOffset);return 70}var printCharBuffers=[null,[],[]];function printChar(stream,curr){var buffer=printCharBuffers[stream];if(curr===0||curr===10){(stream===1?out:err)(UTF8ArrayToString(buffer,0));buffer.length=0}else{buffer.push(curr)}}function _fd_write(fd,iov,iovcnt,pnum){if(ENVIRONMENT_IS_PTHREAD)return _emscripten_proxy_to_main_thread_js(17,1,fd,iov,iovcnt,pnum);var num=0;for(var i=0;i>2];var len=GROWABLE_HEAP_U32()[iov+4>>2];iov+=8;for(var j=0;j>2]=num;return 0}function _glDeleteTextures(n,textures){for(var i=0;i>2];var texture=GL.textures[id];if(!texture)continue;GLctx.deleteTexture(texture);texture.name=0;GL.textures[id]=null}}function skwasm_support_setup(){const objectMap=new Map;skwasm_registerObject=function(id,object){objectMap.set(id,object)};skwasm_unregisterObject=function(id){objectMap.delete(id)};skwasm_getObject=function(id){return objectMap.get(id)};addEventListener("message",function(event){const transfers=event.data.skwasmObjectTransfers;if(!transfers){return}transfers.forEach(function(object,objectId){objectMap.set(objectId,object)})});skwasm_transferObjectToMain=function(objectId){postMessage({skwasmObjectTransfers:new Map([[objectId,objectMap[objectId]]])});objectMap.delete(objectId)};skwasm_transferObjectToThread=function(objectId,threadId){PThread.pthreads[threadId].postMessage({skwasmObjectTransfers:new Map([[objectId,objectMap.get(objectId)]])});objectMap.delete(objectId)};_skwasm_createGlTextureFromVideoFrame=function(videoFrameId,width,height){const videoFrame=skwasm_getObject(videoFrameId);const glCtx=GL.currentContext.GLctx;const newTexture=glCtx.createTexture();glCtx.bindTexture(glCtx.TEXTURE_2D,newTexture);glCtx.pixelStorei(glCtx.UNPACK_PREMULTIPLY_ALPHA_WEBGL,true);glCtx.texImage2D(glCtx.TEXTURE_2D,0,glCtx.RGBA,width,height,0,glCtx.RGBA,glCtx.UNSIGNED_BYTE,videoFrame);glCtx.pixelStorei(glCtx.UNPACK_PREMULTIPLY_ALPHA_WEBGL,false);glCtx.bindTexture(glCtx.TEXTURE_2D,null);const textureId=GL.getNewId(GL.textures);GL.textures[textureId]=newTexture;return textureId},_skwasm_disposeVideoFrame=function(videoFrameId){const videoFrame=skwasm_getObject(videoFrameId);videoFrame.close();skwasm_unregisterObject(videoFrameId)}}function skwasm_getObject(){}function _skwasm_createGlTextureFromVideoFrame(){}function skwasm_unregisterObject(){}function _skwasm_disposeVideoFrame(){}function __isLeapYear(year){return year%4===0&&(year%100!==0||year%400===0)}function __arraySum(array,index){var sum=0;for(var i=0;i<=index;sum+=array[i++]){}return sum}var __MONTH_DAYS_LEAP=[31,29,31,30,31,30,31,31,30,31,30,31];var __MONTH_DAYS_REGULAR=[31,28,31,30,31,30,31,31,30,31,30,31];function __addDays(date,days){var newDate=new Date(date.getTime());while(days>0){var leap=__isLeapYear(newDate.getFullYear());var currentMonth=newDate.getMonth();var daysInCurrentMonth=(leap?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR)[currentMonth];if(days>daysInCurrentMonth-newDate.getDate()){days-=daysInCurrentMonth-newDate.getDate()+1;newDate.setDate(1);if(currentMonth<11){newDate.setMonth(currentMonth+1)}else{newDate.setMonth(0);newDate.setFullYear(newDate.getFullYear()+1)}}else{newDate.setDate(newDate.getDate()+days);return newDate}}return newDate}function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}function writeArrayToMemory(array,buffer){GROWABLE_HEAP_I8().set(array,buffer)}function _strftime(s,maxsize,format,tm){var tm_zone=GROWABLE_HEAP_I32()[tm+40>>2];var date={tm_sec:GROWABLE_HEAP_I32()[tm>>2],tm_min:GROWABLE_HEAP_I32()[tm+4>>2],tm_hour:GROWABLE_HEAP_I32()[tm+8>>2],tm_mday:GROWABLE_HEAP_I32()[tm+12>>2],tm_mon:GROWABLE_HEAP_I32()[tm+16>>2],tm_year:GROWABLE_HEAP_I32()[tm+20>>2],tm_wday:GROWABLE_HEAP_I32()[tm+24>>2],tm_yday:GROWABLE_HEAP_I32()[tm+28>>2],tm_isdst:GROWABLE_HEAP_I32()[tm+32>>2],tm_gmtoff:GROWABLE_HEAP_I32()[tm+36>>2],tm_zone:tm_zone?UTF8ToString(tm_zone):""};var pattern=UTF8ToString(format);var EXPANSION_RULES_1={"%c":"%a %b %d %H:%M:%S %Y","%D":"%m/%d/%y","%F":"%Y-%m-%d","%h":"%b","%r":"%I:%M:%S %p","%R":"%H:%M","%T":"%H:%M:%S","%x":"%m/%d/%y","%X":"%H:%M:%S","%Ec":"%c","%EC":"%C","%Ex":"%m/%d/%y","%EX":"%H:%M:%S","%Ey":"%y","%EY":"%Y","%Od":"%d","%Oe":"%e","%OH":"%H","%OI":"%I","%Om":"%m","%OM":"%M","%OS":"%S","%Ou":"%u","%OU":"%U","%OV":"%V","%Ow":"%w","%OW":"%W","%Oy":"%y"};for(var rule in EXPANSION_RULES_1){pattern=pattern.replace(new RegExp(rule,"g"),EXPANSION_RULES_1[rule])}var WEEKDAYS=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];var MONTHS=["January","February","March","April","May","June","July","August","September","October","November","December"];function leadingSomething(value,digits,character){var str=typeof value=="number"?value.toString():value||"";while(str.length0?1:0}var compare;if((compare=sgn(date1.getFullYear()-date2.getFullYear()))===0){if((compare=sgn(date1.getMonth()-date2.getMonth()))===0){compare=sgn(date1.getDate()-date2.getDate())}}return compare}function getFirstWeekStartDate(janFourth){switch(janFourth.getDay()){case 0:return new Date(janFourth.getFullYear()-1,11,29);case 1:return janFourth;case 2:return new Date(janFourth.getFullYear(),0,3);case 3:return new Date(janFourth.getFullYear(),0,2);case 4:return new Date(janFourth.getFullYear(),0,1);case 5:return new Date(janFourth.getFullYear()-1,11,31);case 6:return new Date(janFourth.getFullYear()-1,11,30)}}function getWeekBasedYear(date){var thisDate=__addDays(new Date(date.tm_year+1900,0,1),date.tm_yday);var janFourthThisYear=new Date(thisDate.getFullYear(),0,4);var janFourthNextYear=new Date(thisDate.getFullYear()+1,0,4);var firstWeekStartThisYear=getFirstWeekStartDate(janFourthThisYear);var firstWeekStartNextYear=getFirstWeekStartDate(janFourthNextYear);if(compareByDay(firstWeekStartThisYear,thisDate)<=0){if(compareByDay(firstWeekStartNextYear,thisDate)<=0){return thisDate.getFullYear()+1}return thisDate.getFullYear()}return thisDate.getFullYear()-1}var EXPANSION_RULES_2={"%a":function(date){return WEEKDAYS[date.tm_wday].substring(0,3)},"%A":function(date){return WEEKDAYS[date.tm_wday]},"%b":function(date){return MONTHS[date.tm_mon].substring(0,3)},"%B":function(date){return MONTHS[date.tm_mon]},"%C":function(date){var year=date.tm_year+1900;return leadingNulls(year/100|0,2)},"%d":function(date){return leadingNulls(date.tm_mday,2)},"%e":function(date){return leadingSomething(date.tm_mday,2," ")},"%g":function(date){return getWeekBasedYear(date).toString().substring(2)},"%G":function(date){return getWeekBasedYear(date)},"%H":function(date){return leadingNulls(date.tm_hour,2)},"%I":function(date){var twelveHour=date.tm_hour;if(twelveHour==0)twelveHour=12;else if(twelveHour>12)twelveHour-=12;return leadingNulls(twelveHour,2)},"%j":function(date){return leadingNulls(date.tm_mday+__arraySum(__isLeapYear(date.tm_year+1900)?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR,date.tm_mon-1),3)},"%m":function(date){return leadingNulls(date.tm_mon+1,2)},"%M":function(date){return leadingNulls(date.tm_min,2)},"%n":function(){return"\n"},"%p":function(date){if(date.tm_hour>=0&&date.tm_hour<12){return"AM"}return"PM"},"%S":function(date){return leadingNulls(date.tm_sec,2)},"%t":function(){return"\t"},"%u":function(date){return date.tm_wday||7},"%U":function(date){var days=date.tm_yday+7-date.tm_wday;return leadingNulls(Math.floor(days/7),2)},"%V":function(date){var val=Math.floor((date.tm_yday+7-(date.tm_wday+6)%7)/7);if((date.tm_wday+371-date.tm_yday-2)%7<=2){val++}if(!val){val=52;var dec31=(date.tm_wday+7-date.tm_yday-1)%7;if(dec31==4||dec31==5&&__isLeapYear(date.tm_year%400-1)){val++}}else if(val==53){var jan1=(date.tm_wday+371-date.tm_yday)%7;if(jan1!=4&&(jan1!=3||!__isLeapYear(date.tm_year)))val=1}return leadingNulls(val,2)},"%w":function(date){return date.tm_wday},"%W":function(date){var days=date.tm_yday+7-(date.tm_wday+6)%7;return leadingNulls(Math.floor(days/7),2)},"%y":function(date){return(date.tm_year+1900).toString().substring(2)},"%Y":function(date){return date.tm_year+1900},"%z":function(date){var off=date.tm_gmtoff;var ahead=off>=0;off=Math.abs(off)/60;off=off/60*100+off%60;return(ahead?"+":"-")+String("0000"+off).slice(-4)},"%Z":function(date){return date.tm_zone},"%%":function(){return"%"}};pattern=pattern.replace(/%%/g,"\0\0");for(var rule in EXPANSION_RULES_2){if(pattern.includes(rule)){pattern=pattern.replace(new RegExp(rule,"g"),EXPANSION_RULES_2[rule](date))}}pattern=pattern.replace(/\0\0/g,"%");var bytes=intArrayFromString(pattern,false);if(bytes.length>maxsize){return 0}writeArrayToMemory(bytes,s);return bytes.length-1}function _strftime_l(s,maxsize,format,tm,loc){return _strftime(s,maxsize,format,tm)}function uleb128Encode(n,target){if(n<128){target.push(n)}else{target.push(n%128|128,n>>7)}}function sigToWasmTypes(sig){var typeNames={"i":"i32","j":"i32","f":"f32","d":"f64","p":"i32"};var type={parameters:[],results:sig[0]=="v"?[]:[typeNames[sig[0]]]};for(var i=1;i0){return}if(ENVIRONMENT_IS_PTHREAD){readyPromiseResolve(Module);initRuntime();startWorker(Module);return}preRun();if(runDependencies>0){return}function doRun(){if(calledRun)return;calledRun=true;Module["calledRun"]=true;if(ABORT)return;initRuntime();readyPromiseResolve(Module);if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout(function(){setTimeout(function(){Module["setStatus"]("")},1);doRun()},1)}else{doRun()}}if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}run(); + + + return skwasm.ready +} + +); +})(); +if (typeof exports === 'object' && typeof module === 'object') + module.exports = skwasm; +else if (typeof define === 'function' && define['amd']) + define([], function() { return skwasm; }); +else if (typeof exports === 'object') + exports["skwasm"] = skwasm; diff --git a/canvaskit/skwasm.wasm b/canvaskit/skwasm.wasm new file mode 100644 index 00000000..01bcca7d Binary files /dev/null and b/canvaskit/skwasm.wasm differ diff --git a/canvaskit/skwasm.worker.js b/canvaskit/skwasm.worker.js new file mode 100644 index 00000000..fcde1bb3 --- /dev/null +++ b/canvaskit/skwasm.worker.js @@ -0,0 +1 @@ +"use strict";var Module={};var ENVIRONMENT_IS_NODE=typeof process=="object"&&typeof process.versions=="object"&&typeof process.versions.node=="string";if(ENVIRONMENT_IS_NODE){var nodeWorkerThreads=require("worker_threads");var parentPort=nodeWorkerThreads.parentPort;parentPort.on("message",data=>onmessage({data:data}));var fs=require("fs");Object.assign(global,{self:global,require:require,Module:Module,location:{href:__filename},Worker:nodeWorkerThreads.Worker,importScripts:function(f){(0,eval)(fs.readFileSync(f,"utf8")+"//# sourceURL="+f)},postMessage:function(msg){parentPort.postMessage(msg)},performance:global.performance||{now:function(){return Date.now()}}})}var initializedJS=false;var pendingNotifiedProxyingQueues=[];function threadPrintErr(){var text=Array.prototype.slice.call(arguments).join(" ");if(ENVIRONMENT_IS_NODE){fs.writeSync(2,text+"\n");return}console.error(text)}function threadAlert(){var text=Array.prototype.slice.call(arguments).join(" ");postMessage({cmd:"alert",text:text,threadId:Module["_pthread_self"]()})}var err=threadPrintErr;self.alert=threadAlert;Module["instantiateWasm"]=(info,receiveInstance)=>{var module=Module["wasmModule"];Module["wasmModule"]=null;var instance=new WebAssembly.Instance(module,info);return receiveInstance(instance)};self.onunhandledrejection=e=>{throw e.reason??e};function handleMessage(e){try{if(e.data.cmd==="load"){let messageQueue=[];self.onmessage=e=>messageQueue.push(e);self.startWorker=instance=>{Module=instance;postMessage({"cmd":"loaded"});for(let msg of messageQueue){handleMessage(msg)}self.onmessage=handleMessage};Module["wasmModule"]=e.data.wasmModule;for(const handler of e.data.handlers){Module[handler]=function(){postMessage({cmd:"callHandler",handler:handler,args:[...arguments]})}}Module["wasmMemory"]=e.data.wasmMemory;Module["buffer"]=Module["wasmMemory"].buffer;Module["ENVIRONMENT_IS_PTHREAD"]=true;if(typeof e.data.urlOrBlob=="string"){importScripts(e.data.urlOrBlob)}else{var objectUrl=URL.createObjectURL(e.data.urlOrBlob);importScripts(objectUrl);URL.revokeObjectURL(objectUrl)}skwasm(Module)}else if(e.data.cmd==="run"){Module["__emscripten_thread_init"](e.data.pthread_ptr,0,0,1);Module["establishStackSpace"]();Module["PThread"].receiveObjectTransfer(e.data);Module["PThread"].threadInitTLS();if(!initializedJS){pendingNotifiedProxyingQueues.forEach(queue=>{Module["executeNotifiedProxyingQueue"](queue)});pendingNotifiedProxyingQueues=[];initializedJS=true}try{Module["invokeEntryPoint"](e.data.start_routine,e.data.arg)}catch(ex){if(ex!="unwind"){throw ex}}}else if(e.data.cmd==="cancel"){if(Module["_pthread_self"]()){Module["__emscripten_thread_exit"](-1)}}else if(e.data.target==="setimmediate"){}else if(e.data.cmd==="processProxyingQueue"){if(initializedJS){Module["executeNotifiedProxyingQueue"](e.data.queue)}else{pendingNotifiedProxyingQueues.push(e.data.queue)}}else if(e.data.cmd){err("worker.js received unknown command "+e.data.cmd);err(e.data)}}catch(ex){if(Module["__emscripten_thread_crashed"]){Module["__emscripten_thread_crashed"]()}throw ex}}self.onmessage=handleMessage; diff --git a/web/favicon.png b/favicon.png similarity index 100% rename from web/favicon.png rename to favicon.png diff --git a/flutter.js b/flutter.js new file mode 100644 index 00000000..d3efa7fd --- /dev/null +++ b/flutter.js @@ -0,0 +1,383 @@ +// Copyright 2014 The Flutter Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +if (!_flutter) { + var _flutter = {}; +} +_flutter.loader = null; + +(function () { + "use strict"; + + const baseUri = ensureTrailingSlash(getBaseURI()); + + function getBaseURI() { + const base = document.querySelector("base"); + return (base && base.getAttribute("href")) || ""; + } + + function ensureTrailingSlash(uri) { + if (uri == "") { + return uri; + } + return uri.endsWith("/") ? uri : `${uri}/`; + } + + /** + * Wraps `promise` in a timeout of the given `duration` in ms. + * + * Resolves/rejects with whatever the original `promises` does, or rejects + * if `promise` takes longer to complete than `duration`. In that case, + * `debugName` is used to compose a legible error message. + * + * If `duration` is < 0, the original `promise` is returned unchanged. + * @param {Promise} promise + * @param {number} duration + * @param {string} debugName + * @returns {Promise} a wrapped promise. + */ + async function timeout(promise, duration, debugName) { + if (duration < 0) { + return promise; + } + let timeoutId; + const _clock = new Promise((_, reject) => { + timeoutId = setTimeout(() => { + reject( + new Error( + `${debugName} took more than ${duration}ms to resolve. Moving on.`, + { + cause: timeout, + } + ) + ); + }, duration); + }); + + return Promise.race([promise, _clock]).finally(() => { + clearTimeout(timeoutId); + }); + } + + /** + * Handles the creation of a TrustedTypes `policy` that validates URLs based + * on an (optional) incoming array of RegExes. + */ + class FlutterTrustedTypesPolicy { + /** + * Constructs the policy. + * @param {[RegExp]} validPatterns the patterns to test URLs + * @param {String} policyName the policy name (optional) + */ + constructor(validPatterns, policyName = "flutter-js") { + const patterns = validPatterns || [ + /\.js$/, + ]; + if (window.trustedTypes) { + this.policy = trustedTypes.createPolicy(policyName, { + createScriptURL: function(url) { + const parsed = new URL(url, window.location); + const file = parsed.pathname.split("/").pop(); + const matches = patterns.some((pattern) => pattern.test(file)); + if (matches) { + return parsed.toString(); + } + console.error( + "URL rejected by TrustedTypes policy", + policyName, ":", url, "(download prevented)"); + } + }); + } + } + } + + /** + * Handles loading/reloading Flutter's service worker, if configured. + * + * @see: https://developers.google.com/web/fundamentals/primers/service-workers + */ + class FlutterServiceWorkerLoader { + /** + * Injects a TrustedTypesPolicy (or undefined if the feature is not supported). + * @param {TrustedTypesPolicy | undefined} policy + */ + setTrustedTypesPolicy(policy) { + this._ttPolicy = policy; + } + + /** + * Returns a Promise that resolves when the latest Flutter service worker, + * configured by `settings` has been loaded and activated. + * + * Otherwise, the promise is rejected with an error message. + * @param {*} settings Service worker settings + * @returns {Promise} that resolves when the latest serviceWorker is ready. + */ + loadServiceWorker(settings) { + if (settings == null) { + // In the future, settings = null -> uninstall service worker? + console.debug("Null serviceWorker configuration. Skipping."); + return Promise.resolve(); + } + if (!("serviceWorker" in navigator)) { + let errorMessage = "Service Worker API unavailable."; + if (!window.isSecureContext) { + errorMessage += "\nThe current context is NOT secure." + errorMessage += "\nRead more: https://developer.mozilla.org/en-US/docs/Web/Security/Secure_Contexts"; + } + return Promise.reject( + new Error(errorMessage) + ); + } + const { + serviceWorkerVersion, + serviceWorkerUrl = `${baseUri}flutter_service_worker.js?v=${serviceWorkerVersion}`, + timeoutMillis = 4000, + } = settings; + + // Apply the TrustedTypes policy, if present. + let url = serviceWorkerUrl; + if (this._ttPolicy != null) { + url = this._ttPolicy.createScriptURL(url); + } + + const serviceWorkerActivation = navigator.serviceWorker + .register(url) + .then(this._getNewServiceWorker) + .then(this._waitForServiceWorkerActivation); + + // Timeout race promise + return timeout( + serviceWorkerActivation, + timeoutMillis, + "prepareServiceWorker" + ); + } + + /** + * Returns the latest service worker for the given `serviceWorkerRegistrationPromise`. + * + * This might return the current service worker, if there's no new service worker + * awaiting to be installed/updated. + * + * @param {Promise} serviceWorkerRegistrationPromise + * @returns {Promise} + */ + async _getNewServiceWorker(serviceWorkerRegistrationPromise) { + const reg = await serviceWorkerRegistrationPromise; + + if (!reg.active && (reg.installing || reg.waiting)) { + // No active web worker and we have installed or are installing + // one for the first time. Simply wait for it to activate. + console.debug("Installing/Activating first service worker."); + return reg.installing || reg.waiting; + } else if (!reg.active.scriptURL.endsWith(serviceWorkerVersion)) { + // When the app updates the serviceWorkerVersion changes, so we + // need to ask the service worker to update. + return reg.update().then((newReg) => { + console.debug("Updating service worker."); + return newReg.installing || newReg.waiting || newReg.active; + }); + } else { + console.debug("Loading from existing service worker."); + return reg.active; + } + } + + /** + * Returns a Promise that resolves when the `latestServiceWorker` changes its + * state to "activated". + * + * @param {Promise} latestServiceWorkerPromise + * @returns {Promise} + */ + async _waitForServiceWorkerActivation(latestServiceWorkerPromise) { + const serviceWorker = await latestServiceWorkerPromise; + + if (!serviceWorker || serviceWorker.state == "activated") { + if (!serviceWorker) { + return Promise.reject( + new Error("Cannot activate a null service worker!") + ); + } else { + console.debug("Service worker already active."); + return Promise.resolve(); + } + } + return new Promise((resolve, _) => { + serviceWorker.addEventListener("statechange", () => { + if (serviceWorker.state == "activated") { + console.debug("Activated new service worker."); + resolve(); + } + }); + }); + } + } + + /** + * Handles injecting the main Flutter web entrypoint (main.dart.js), and notifying + * the user when Flutter is ready, through `didCreateEngineInitializer`. + * + * @see https://docs.flutter.dev/development/platform-integration/web/initialization + */ + class FlutterEntrypointLoader { + /** + * Creates a FlutterEntrypointLoader. + */ + constructor() { + // Watchdog to prevent injecting the main entrypoint multiple times. + this._scriptLoaded = false; + } + + /** + * Injects a TrustedTypesPolicy (or undefined if the feature is not supported). + * @param {TrustedTypesPolicy | undefined} policy + */ + setTrustedTypesPolicy(policy) { + this._ttPolicy = policy; + } + + /** + * Loads flutter main entrypoint, specified by `entrypointUrl`, and calls a + * user-specified `onEntrypointLoaded` callback with an EngineInitializer + * object when it's done. + * + * @param {*} options + * @returns {Promise | undefined} that will eventually resolve with an + * EngineInitializer, or will be rejected with the error caused by the loader. + * Returns undefined when an `onEntrypointLoaded` callback is supplied in `options`. + */ + async loadEntrypoint(options) { + const { entrypointUrl = `${baseUri}main.dart.js`, onEntrypointLoaded } = + options || {}; + + return this._loadEntrypoint(entrypointUrl, onEntrypointLoaded); + } + + /** + * Resolves the promise created by loadEntrypoint, and calls the `onEntrypointLoaded` + * function supplied by the user (if needed). + * + * Called by Flutter through `_flutter.loader.didCreateEngineInitializer` method, + * which is bound to the correct instance of the FlutterEntrypointLoader by + * the FlutterLoader object. + * + * @param {Function} engineInitializer @see https://github.com/flutter/engine/blob/main/lib/web_ui/lib/src/engine/js_interop/js_loader.dart#L42 + */ + didCreateEngineInitializer(engineInitializer) { + if (typeof this._didCreateEngineInitializerResolve === "function") { + this._didCreateEngineInitializerResolve(engineInitializer); + // Remove the resolver after the first time, so Flutter Web can hot restart. + this._didCreateEngineInitializerResolve = null; + // Make the engine revert to "auto" initialization on hot restart. + delete _flutter.loader.didCreateEngineInitializer; + } + if (typeof this._onEntrypointLoaded === "function") { + this._onEntrypointLoaded(engineInitializer); + } + } + + /** + * Injects a script tag into the DOM, and configures this loader to be able to + * handle the "entrypoint loaded" notifications received from Flutter web. + * + * @param {string} entrypointUrl the URL of the script that will initialize + * Flutter. + * @param {Function} onEntrypointLoaded a callback that will be called when + * Flutter web notifies this object that the entrypoint is + * loaded. + * @returns {Promise | undefined} a Promise that resolves when the entrypoint + * is loaded, or undefined if `onEntrypointLoaded` + * is a function. + */ + _loadEntrypoint(entrypointUrl, onEntrypointLoaded) { + const useCallback = typeof onEntrypointLoaded === "function"; + + if (!this._scriptLoaded) { + this._scriptLoaded = true; + const scriptTag = this._createScriptTag(entrypointUrl); + if (useCallback) { + // Just inject the script tag, and return nothing; Flutter will call + // `didCreateEngineInitializer` when it's done. + console.debug("Injecting diff --git a/ios/.gitignore b/ios/.gitignore deleted file mode 100644 index 7a7f9873..00000000 --- a/ios/.gitignore +++ /dev/null @@ -1,34 +0,0 @@ -**/dgph -*.mode1v3 -*.mode2v3 -*.moved-aside -*.pbxuser -*.perspectivev3 -**/*sync/ -.sconsign.dblite -.tags* -**/.vagrant/ -**/DerivedData/ -Icon? -**/Pods/ -**/.symlinks/ -profile -xcuserdata -**/.generated/ -Flutter/App.framework -Flutter/Flutter.framework -Flutter/Flutter.podspec -Flutter/Generated.xcconfig -Flutter/ephemeral/ -Flutter/app.flx -Flutter/app.zip -Flutter/flutter_assets/ -Flutter/flutter_export_environment.sh -ServiceDefinitions.json -Runner/GeneratedPluginRegistrant.* - -# Exceptions to above rules. -!default.mode1v3 -!default.mode2v3 -!default.pbxuser -!default.perspectivev3 diff --git a/ios/Flutter/AppFrameworkInfo.plist b/ios/Flutter/AppFrameworkInfo.plist deleted file mode 100644 index 9625e105..00000000 --- a/ios/Flutter/AppFrameworkInfo.plist +++ /dev/null @@ -1,26 +0,0 @@ - - - - - CFBundleDevelopmentRegion - en - CFBundleExecutable - App - CFBundleIdentifier - io.flutter.flutter.app - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - App - CFBundlePackageType - FMWK - CFBundleShortVersionString - 1.0 - CFBundleSignature - ???? - CFBundleVersion - 1.0 - MinimumOSVersion - 11.0 - - diff --git a/ios/Flutter/Debug.xcconfig b/ios/Flutter/Debug.xcconfig deleted file mode 100644 index ec97fc6f..00000000 --- a/ios/Flutter/Debug.xcconfig +++ /dev/null @@ -1,2 +0,0 @@ -#include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig" -#include "Generated.xcconfig" diff --git a/ios/Flutter/Release.xcconfig b/ios/Flutter/Release.xcconfig deleted file mode 100644 index c4855bfe..00000000 --- a/ios/Flutter/Release.xcconfig +++ /dev/null @@ -1,2 +0,0 @@ -#include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig" -#include "Generated.xcconfig" diff --git a/ios/Podfile b/ios/Podfile deleted file mode 100644 index 88359b22..00000000 --- a/ios/Podfile +++ /dev/null @@ -1,41 +0,0 @@ -# Uncomment this line to define a global platform for your project -# platform :ios, '11.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! - use_modular_headers! - - flutter_install_all_ios_pods File.dirname(File.realpath(__FILE__)) -end - -post_install do |installer| - installer.pods_project.targets.each do |target| - flutter_additional_ios_build_settings(target) - end -end diff --git a/ios/Podfile.lock b/ios/Podfile.lock deleted file mode 100644 index 47ed75d6..00000000 --- a/ios/Podfile.lock +++ /dev/null @@ -1,135 +0,0 @@ -PODS: - - DKImagePickerController/Core (4.3.4): - - DKImagePickerController/ImageDataManager - - DKImagePickerController/Resource - - DKImagePickerController/ImageDataManager (4.3.4) - - DKImagePickerController/PhotoGallery (4.3.4): - - DKImagePickerController/Core - - DKPhotoGallery - - DKImagePickerController/Resource (4.3.4) - - DKPhotoGallery (0.0.17): - - DKPhotoGallery/Core (= 0.0.17) - - DKPhotoGallery/Model (= 0.0.17) - - DKPhotoGallery/Preview (= 0.0.17) - - DKPhotoGallery/Resource (= 0.0.17) - - SDWebImage - - SwiftyGif - - DKPhotoGallery/Core (0.0.17): - - DKPhotoGallery/Model - - DKPhotoGallery/Preview - - SDWebImage - - SwiftyGif - - DKPhotoGallery/Model (0.0.17): - - SDWebImage - - SwiftyGif - - DKPhotoGallery/Preview (0.0.17): - - DKPhotoGallery/Model - - DKPhotoGallery/Resource - - SDWebImage - - SwiftyGif - - DKPhotoGallery/Resource (0.0.17): - - SDWebImage - - SwiftyGif - - file_picker (0.0.1): - - DKImagePickerController/PhotoGallery - - Flutter - - Flutter (1.0.0) - - flutter_native_splash (0.0.1): - - Flutter - - fluttertoast (0.0.2): - - Flutter - - Toast - - FMDB (2.7.5): - - FMDB/standard (= 2.7.5) - - FMDB/standard (2.7.5) - - network_info_plus (0.0.1): - - Flutter - - package_info_plus (0.4.5): - - Flutter - - path_provider_foundation (0.0.1): - - Flutter - - FlutterMacOS - - permission_handler_apple (9.1.1): - - Flutter - - SDWebImage (5.13.5): - - SDWebImage/Core (= 5.13.5) - - SDWebImage/Core (5.13.5) - - shared_preferences_foundation (0.0.1): - - Flutter - - FlutterMacOS - - sqflite (0.0.3): - - Flutter - - FMDB (>= 2.7.5) - - SwiftyGif (5.4.3) - - Toast (4.0.0) - - url_launcher_ios (0.0.1): - - Flutter - -DEPENDENCIES: - - file_picker (from `.symlinks/plugins/file_picker/ios`) - - Flutter (from `Flutter`) - - flutter_native_splash (from `.symlinks/plugins/flutter_native_splash/ios`) - - fluttertoast (from `.symlinks/plugins/fluttertoast/ios`) - - network_info_plus (from `.symlinks/plugins/network_info_plus/ios`) - - package_info_plus (from `.symlinks/plugins/package_info_plus/ios`) - - path_provider_foundation (from `.symlinks/plugins/path_provider_foundation/darwin`) - - permission_handler_apple (from `.symlinks/plugins/permission_handler_apple/ios`) - - shared_preferences_foundation (from `.symlinks/plugins/shared_preferences_foundation/darwin`) - - sqflite (from `.symlinks/plugins/sqflite/ios`) - - url_launcher_ios (from `.symlinks/plugins/url_launcher_ios/ios`) - -SPEC REPOS: - trunk: - - DKImagePickerController - - DKPhotoGallery - - FMDB - - SDWebImage - - SwiftyGif - - Toast - -EXTERNAL SOURCES: - file_picker: - :path: ".symlinks/plugins/file_picker/ios" - Flutter: - :path: Flutter - flutter_native_splash: - :path: ".symlinks/plugins/flutter_native_splash/ios" - fluttertoast: - :path: ".symlinks/plugins/fluttertoast/ios" - network_info_plus: - :path: ".symlinks/plugins/network_info_plus/ios" - package_info_plus: - :path: ".symlinks/plugins/package_info_plus/ios" - path_provider_foundation: - :path: ".symlinks/plugins/path_provider_foundation/darwin" - permission_handler_apple: - :path: ".symlinks/plugins/permission_handler_apple/ios" - shared_preferences_foundation: - :path: ".symlinks/plugins/shared_preferences_foundation/darwin" - sqflite: - :path: ".symlinks/plugins/sqflite/ios" - url_launcher_ios: - :path: ".symlinks/plugins/url_launcher_ios/ios" - -SPEC CHECKSUMS: - DKImagePickerController: b512c28220a2b8ac7419f21c491fc8534b7601ac - DKPhotoGallery: fdfad5125a9fdda9cc57df834d49df790dbb4179 - file_picker: ce3938a0df3cc1ef404671531facef740d03f920 - Flutter: f04841e97a9d0b0a8025694d0796dd46242b2854 - flutter_native_splash: 52501b97d1c0a5f898d687f1646226c1f93c56ef - fluttertoast: fafc4fa4d01a6a9e4f772ecd190ffa525e9e2d9c - FMDB: 2ce00b547f966261cd18927a3ddb07cb6f3db82a - network_info_plus: 122280582fe2fa2bbb8681a4269745cd5c3a9b32 - package_info_plus: fd030dabf36271f146f1f3beacd48f564b0f17f7 - path_provider_foundation: 29f094ae23ebbca9d3d0cec13889cd9060c0e943 - permission_handler_apple: e76247795d700c14ea09e3a2d8855d41ee80a2e6 - SDWebImage: 23d714cd599354ee7906dbae26dff89b421c4370 - shared_preferences_foundation: 5b919d13b803cadd15ed2dc053125c68730e5126 - sqflite: 31f7eba61e3074736dff8807a9b41581e4f7f15a - SwiftyGif: 6c3eafd0ce693cad58bb63d2b2fb9bacb8552780 - Toast: 91b396c56ee72a5790816f40d3a94dd357abc196 - url_launcher_ios: 08a3dfac5fb39e8759aeb0abbd5d9480f30fc8b4 - -PODFILE CHECKSUM: ef19549a9bc3046e7bb7d2fab4d021637c0c58a3 - -COCOAPODS: 1.12.1 diff --git a/ios/Runner.xcodeproj/project.pbxproj b/ios/Runner.xcodeproj/project.pbxproj deleted file mode 100644 index 68ab322c..00000000 --- a/ios/Runner.xcodeproj/project.pbxproj +++ /dev/null @@ -1,554 +0,0 @@ -// !$*UTF8*$! -{ - archiveVersion = 1; - classes = { - }; - objectVersion = 54; - objects = { - -/* Begin PBXBuildFile section */ - 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */ = {isa = PBXBuildFile; fileRef = 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */; }; - 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; }; - 5A3A6DEA545D05395C03CA7F /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0C7AF1B5C7210FB4BA2BFBE0 /* Pods_Runner.framework */; }; - 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74858FAE1ED2DC5600515810 /* AppDelegate.swift */; }; - 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; }; - 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; }; - 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; }; -/* End PBXBuildFile section */ - -/* Begin PBXCopyFilesBuildPhase section */ - 9705A1C41CF9048500538489 /* Embed Frameworks */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = ""; - dstSubfolderSpec = 10; - files = ( - ); - name = "Embed Frameworks"; - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXCopyFilesBuildPhase section */ - -/* Begin PBXFileReference section */ - 0C7AF1B5C7210FB4BA2BFBE0 /* Pods_Runner.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Runner.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = ""; }; - 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = ""; }; - 22286F30399C64CCB4A9E4C1 /* 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 = ""; }; - 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = ""; }; - 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Runner-Bridging-Header.h"; sourceTree = ""; }; - 74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; - 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = ""; }; - 8E9922996FDE9255F7E55E40 /* 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 = ""; }; - 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = Flutter/Debug.xcconfig; sourceTree = ""; }; - 9740EEB31CF90195004384FC /* Generated.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Generated.xcconfig; path = Flutter/Generated.xcconfig; sourceTree = ""; }; - 97C146EE1CF9000F007C117D /* Runner.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Runner.app; sourceTree = BUILT_PRODUCTS_DIR; }; - 97C146FB1CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; }; - 97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; - 97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; - 97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - A3BAC00BC0A69AD2E62D56C9 /* 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 = ""; }; -/* End PBXFileReference section */ - -/* Begin PBXFrameworksBuildPhase section */ - 97C146EB1CF9000F007C117D /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 5A3A6DEA545D05395C03CA7F /* Pods_Runner.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXFrameworksBuildPhase section */ - -/* Begin PBXGroup section */ - 0EBBCA26A17314E53BEB0A9D /* Pods */ = { - isa = PBXGroup; - children = ( - 22286F30399C64CCB4A9E4C1 /* Pods-Runner.debug.xcconfig */, - 8E9922996FDE9255F7E55E40 /* Pods-Runner.release.xcconfig */, - A3BAC00BC0A69AD2E62D56C9 /* Pods-Runner.profile.xcconfig */, - ); - name = Pods; - path = Pods; - sourceTree = ""; - }; - 9740EEB11CF90186004384FC /* Flutter */ = { - isa = PBXGroup; - children = ( - 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */, - 9740EEB21CF90195004384FC /* Debug.xcconfig */, - 7AFA3C8E1D35360C0083082E /* Release.xcconfig */, - 9740EEB31CF90195004384FC /* Generated.xcconfig */, - ); - name = Flutter; - sourceTree = ""; - }; - 97C146E51CF9000F007C117D = { - isa = PBXGroup; - children = ( - 9740EEB11CF90186004384FC /* Flutter */, - 97C146F01CF9000F007C117D /* Runner */, - 97C146EF1CF9000F007C117D /* Products */, - 0EBBCA26A17314E53BEB0A9D /* Pods */, - EC11954FB8E6A4DDF0B887BE /* Frameworks */, - ); - sourceTree = ""; - }; - 97C146EF1CF9000F007C117D /* Products */ = { - isa = PBXGroup; - children = ( - 97C146EE1CF9000F007C117D /* Runner.app */, - ); - name = Products; - sourceTree = ""; - }; - 97C146F01CF9000F007C117D /* Runner */ = { - isa = PBXGroup; - children = ( - 97C146FA1CF9000F007C117D /* Main.storyboard */, - 97C146FD1CF9000F007C117D /* Assets.xcassets */, - 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */, - 97C147021CF9000F007C117D /* Info.plist */, - 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */, - 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */, - 74858FAE1ED2DC5600515810 /* AppDelegate.swift */, - 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */, - ); - path = Runner; - sourceTree = ""; - }; - EC11954FB8E6A4DDF0B887BE /* Frameworks */ = { - isa = PBXGroup; - children = ( - 0C7AF1B5C7210FB4BA2BFBE0 /* Pods_Runner.framework */, - ); - name = Frameworks; - sourceTree = ""; - }; -/* End PBXGroup section */ - -/* Begin PBXNativeTarget section */ - 97C146ED1CF9000F007C117D /* Runner */ = { - isa = PBXNativeTarget; - buildConfigurationList = 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */; - buildPhases = ( - FF29CC94603D1F6DA431600C /* [CP] Check Pods Manifest.lock */, - 9740EEB61CF901F6004384FC /* Run Script */, - 97C146EA1CF9000F007C117D /* Sources */, - 97C146EB1CF9000F007C117D /* Frameworks */, - 97C146EC1CF9000F007C117D /* Resources */, - 9705A1C41CF9048500538489 /* Embed Frameworks */, - 3B06AD1E1E4923F5004D2608 /* Thin Binary */, - 68B5AFE06ECD16CE97286172 /* [CP] Embed Pods Frameworks */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = Runner; - productName = Runner; - productReference = 97C146EE1CF9000F007C117D /* Runner.app */; - productType = "com.apple.product-type.application"; - }; -/* End PBXNativeTarget section */ - -/* Begin PBXProject section */ - 97C146E61CF9000F007C117D /* Project object */ = { - isa = PBXProject; - attributes = { - LastUpgradeCheck = 1300; - ORGANIZATIONNAME = ""; - TargetAttributes = { - 97C146ED1CF9000F007C117D = { - CreatedOnToolsVersion = 7.3.1; - LastSwiftMigration = 1100; - }; - }; - }; - buildConfigurationList = 97C146E91CF9000F007C117D /* Build configuration list for PBXProject "Runner" */; - compatibilityVersion = "Xcode 9.3"; - developmentRegion = en; - hasScannedForEncodings = 0; - knownRegions = ( - en, - Base, - ); - mainGroup = 97C146E51CF9000F007C117D; - productRefGroup = 97C146EF1CF9000F007C117D /* Products */; - projectDirPath = ""; - projectRoot = ""; - targets = ( - 97C146ED1CF9000F007C117D /* Runner */, - ); - }; -/* End PBXProject section */ - -/* Begin PBXResourcesBuildPhase section */ - 97C146EC1CF9000F007C117D /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */, - 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */, - 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */, - 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXResourcesBuildPhase section */ - -/* Begin PBXShellScriptBuildPhase section */ - 3B06AD1E1E4923F5004D2608 /* Thin Binary */ = { - isa = PBXShellScriptBuildPhase; - alwaysOutOfDate = 1; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - ); - name = "Thin Binary"; - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin"; - }; - 68B5AFE06ECD16CE97286172 /* [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; - }; - 9740EEB61CF901F6004384FC /* Run Script */ = { - isa = PBXShellScriptBuildPhase; - alwaysOutOfDate = 1; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - ); - name = "Run Script"; - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build"; - }; - FF29CC94603D1F6DA431600C /* [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; - }; -/* End PBXShellScriptBuildPhase section */ - -/* Begin PBXSourcesBuildPhase section */ - 97C146EA1CF9000F007C117D /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */, - 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXSourcesBuildPhase section */ - -/* Begin PBXVariantGroup section */ - 97C146FA1CF9000F007C117D /* Main.storyboard */ = { - isa = PBXVariantGroup; - children = ( - 97C146FB1CF9000F007C117D /* Base */, - ); - name = Main.storyboard; - sourceTree = ""; - }; - 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */ = { - isa = PBXVariantGroup; - children = ( - 97C147001CF9000F007C117D /* Base */, - ); - name = LaunchScreen.storyboard; - sourceTree = ""; - }; -/* End PBXVariantGroup section */ - -/* Begin XCBuildConfiguration section */ - 249021D3217E4FDB00AE95B9 /* Profile */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_NONNULL = YES; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 11.0; - MTL_ENABLE_DEBUG_INFO = NO; - SDKROOT = iphoneos; - SUPPORTED_PLATFORMS = iphoneos; - TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; - }; - name = Profile; - }; - 249021D4217E4FDB00AE95B9 /* Profile */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CLANG_ENABLE_MODULES = YES; - CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; - DEVELOPMENT_TEAM = 7FHCHBQ25R; - ENABLE_BITCODE = NO; - INFOPLIST_FILE = Runner/Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = com.suwayomi.tachideskSorayomi; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; - SWIFT_VERSION = 5.0; - VERSIONING_SYSTEM = "apple-generic"; - }; - name = Profile; - }; - 97C147031CF9000F007C117D /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_NONNULL = YES; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = dwarf; - ENABLE_STRICT_OBJC_MSGSEND = YES; - ENABLE_TESTABILITY = YES; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_DYNAMIC_NO_PIC = NO; - GCC_NO_COMMON_BLOCKS = YES; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 11.0; - MTL_ENABLE_DEBUG_INFO = YES; - ONLY_ACTIVE_ARCH = YES; - SDKROOT = iphoneos; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = Debug; - }; - 97C147041CF9000F007C117D /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_NONNULL = YES; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 11.0; - MTL_ENABLE_DEBUG_INFO = NO; - SDKROOT = iphoneos; - SUPPORTED_PLATFORMS = iphoneos; - SWIFT_COMPILATION_MODE = wholemodule; - SWIFT_OPTIMIZATION_LEVEL = "-O"; - TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; - }; - name = Release; - }; - 97C147061CF9000F007C117D /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 9740EEB21CF90195004384FC /* Debug.xcconfig */; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CLANG_ENABLE_MODULES = YES; - CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; - DEVELOPMENT_TEAM = 7FHCHBQ25R; - ENABLE_BITCODE = NO; - INFOPLIST_FILE = Runner/Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = com.suwayomi.tachideskSorayomi; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 5.0; - VERSIONING_SYSTEM = "apple-generic"; - }; - name = Debug; - }; - 97C147071CF9000F007C117D /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CLANG_ENABLE_MODULES = YES; - CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; - DEVELOPMENT_TEAM = 7FHCHBQ25R; - ENABLE_BITCODE = NO; - INFOPLIST_FILE = Runner/Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = com.suwayomi.tachideskSorayomi; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; - SWIFT_VERSION = 5.0; - VERSIONING_SYSTEM = "apple-generic"; - }; - name = Release; - }; -/* End XCBuildConfiguration section */ - -/* Begin XCConfigurationList section */ - 97C146E91CF9000F007C117D /* Build configuration list for PBXProject "Runner" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 97C147031CF9000F007C117D /* Debug */, - 97C147041CF9000F007C117D /* Release */, - 249021D3217E4FDB00AE95B9 /* Profile */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 97C147061CF9000F007C117D /* Debug */, - 97C147071CF9000F007C117D /* Release */, - 249021D4217E4FDB00AE95B9 /* Profile */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; -/* End XCConfigurationList section */ - }; - rootObject = 97C146E61CF9000F007C117D /* Project object */; -} diff --git a/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata deleted file mode 100644 index 919434a6..00000000 --- a/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata +++ /dev/null @@ -1,7 +0,0 @@ - - - - - diff --git a/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist deleted file mode 100644 index 18d98100..00000000 --- a/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +++ /dev/null @@ -1,8 +0,0 @@ - - - - - IDEDidComputeMac32BitWarning - - - diff --git a/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings deleted file mode 100644 index f9b0d7c5..00000000 --- a/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings +++ /dev/null @@ -1,8 +0,0 @@ - - - - - PreviewsEnabled - - - diff --git a/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme b/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme deleted file mode 100644 index c87d15a3..00000000 --- a/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme +++ /dev/null @@ -1,87 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/ios/Runner.xcworkspace/contents.xcworkspacedata b/ios/Runner.xcworkspace/contents.xcworkspacedata deleted file mode 100644 index 21a3cc14..00000000 --- a/ios/Runner.xcworkspace/contents.xcworkspacedata +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - diff --git a/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist deleted file mode 100644 index 18d98100..00000000 --- a/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +++ /dev/null @@ -1,8 +0,0 @@ - - - - - IDEDidComputeMac32BitWarning - - - diff --git a/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings deleted file mode 100644 index f9b0d7c5..00000000 --- a/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings +++ /dev/null @@ -1,8 +0,0 @@ - - - - - PreviewsEnabled - - - diff --git a/ios/Runner/AppDelegate.swift b/ios/Runner/AppDelegate.swift deleted file mode 100644 index 70693e4a..00000000 --- a/ios/Runner/AppDelegate.swift +++ /dev/null @@ -1,13 +0,0 @@ -import UIKit -import Flutter - -@UIApplicationMain -@objc class AppDelegate: FlutterAppDelegate { - override func application( - _ application: UIApplication, - didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]? - ) -> Bool { - GeneratedPluginRegistrant.register(with: self) - return super.application(application, didFinishLaunchingWithOptions: launchOptions) - } -} diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json deleted file mode 100644 index d36b1fab..00000000 --- a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json +++ /dev/null @@ -1,122 +0,0 @@ -{ - "images" : [ - { - "size" : "20x20", - "idiom" : "iphone", - "filename" : "Icon-App-20x20@2x.png", - "scale" : "2x" - }, - { - "size" : "20x20", - "idiom" : "iphone", - "filename" : "Icon-App-20x20@3x.png", - "scale" : "3x" - }, - { - "size" : "29x29", - "idiom" : "iphone", - "filename" : "Icon-App-29x29@1x.png", - "scale" : "1x" - }, - { - "size" : "29x29", - "idiom" : "iphone", - "filename" : "Icon-App-29x29@2x.png", - "scale" : "2x" - }, - { - "size" : "29x29", - "idiom" : "iphone", - "filename" : "Icon-App-29x29@3x.png", - "scale" : "3x" - }, - { - "size" : "40x40", - "idiom" : "iphone", - "filename" : "Icon-App-40x40@2x.png", - "scale" : "2x" - }, - { - "size" : "40x40", - "idiom" : "iphone", - "filename" : "Icon-App-40x40@3x.png", - "scale" : "3x" - }, - { - "size" : "60x60", - "idiom" : "iphone", - "filename" : "Icon-App-60x60@2x.png", - "scale" : "2x" - }, - { - "size" : "60x60", - "idiom" : "iphone", - "filename" : "Icon-App-60x60@3x.png", - "scale" : "3x" - }, - { - "size" : "20x20", - "idiom" : "ipad", - "filename" : "Icon-App-20x20@1x.png", - "scale" : "1x" - }, - { - "size" : "20x20", - "idiom" : "ipad", - "filename" : "Icon-App-20x20@2x.png", - "scale" : "2x" - }, - { - "size" : "29x29", - "idiom" : "ipad", - "filename" : "Icon-App-29x29@1x.png", - "scale" : "1x" - }, - { - "size" : "29x29", - "idiom" : "ipad", - "filename" : "Icon-App-29x29@2x.png", - "scale" : "2x" - }, - { - "size" : "40x40", - "idiom" : "ipad", - "filename" : "Icon-App-40x40@1x.png", - "scale" : "1x" - }, - { - "size" : "40x40", - "idiom" : "ipad", - "filename" : "Icon-App-40x40@2x.png", - "scale" : "2x" - }, - { - "size" : "76x76", - "idiom" : "ipad", - "filename" : "Icon-App-76x76@1x.png", - "scale" : "1x" - }, - { - "size" : "76x76", - "idiom" : "ipad", - "filename" : "Icon-App-76x76@2x.png", - "scale" : "2x" - }, - { - "size" : "83.5x83.5", - "idiom" : "ipad", - "filename" : "Icon-App-83.5x83.5@2x.png", - "scale" : "2x" - }, - { - "size" : "1024x1024", - "idiom" : "ios-marketing", - "filename" : "Icon-App-1024x1024@1x.png", - "scale" : "1x" - } - ], - "info" : { - "version" : 1, - "author" : "xcode" - } -} diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png deleted file mode 100644 index 2eb51cc5..00000000 Binary files a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png deleted file mode 100644 index 243cff69..00000000 Binary files a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png deleted file mode 100644 index 65234229..00000000 Binary files a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png deleted file mode 100644 index 9315a5b6..00000000 Binary files a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png deleted file mode 100644 index 6f87bd97..00000000 Binary files a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png deleted file mode 100644 index 64d4f713..00000000 Binary files a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png deleted file mode 100644 index 446738a8..00000000 Binary files a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png deleted file mode 100644 index 65234229..00000000 Binary files a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png deleted file mode 100644 index 63f7b948..00000000 Binary files a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png deleted file mode 100644 index 00b537ae..00000000 Binary files a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-50x50@1x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-50x50@1x.png deleted file mode 100644 index df079d96..00000000 Binary files a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-50x50@1x.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-50x50@2x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-50x50@2x.png deleted file mode 100644 index d6556de8..00000000 Binary files a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-50x50@2x.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-57x57@1x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-57x57@1x.png deleted file mode 100644 index e110dee5..00000000 Binary files a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-57x57@1x.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-57x57@2x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-57x57@2x.png deleted file mode 100644 index eb998646..00000000 Binary files a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-57x57@2x.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png deleted file mode 100644 index 00b537ae..00000000 Binary files a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png deleted file mode 100644 index 4a958aa2..00000000 Binary files a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-72x72@1x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-72x72@1x.png deleted file mode 100644 index a7e2866f..00000000 Binary files a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-72x72@1x.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-72x72@2x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-72x72@2x.png deleted file mode 100644 index 4e2af778..00000000 Binary files a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-72x72@2x.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png deleted file mode 100644 index f2ef9146..00000000 Binary files a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png deleted file mode 100644 index 9bc9e7f1..00000000 Binary files a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png deleted file mode 100644 index 0df611e4..00000000 Binary files a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/BrandingImage.imageset/BrandingImage.png b/ios/Runner/Assets.xcassets/BrandingImage.imageset/BrandingImage.png deleted file mode 100644 index dd88e17b..00000000 Binary files a/ios/Runner/Assets.xcassets/BrandingImage.imageset/BrandingImage.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/BrandingImage.imageset/BrandingImage@2x.png b/ios/Runner/Assets.xcassets/BrandingImage.imageset/BrandingImage@2x.png deleted file mode 100644 index 0e69d9a5..00000000 Binary files a/ios/Runner/Assets.xcassets/BrandingImage.imageset/BrandingImage@2x.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/BrandingImage.imageset/BrandingImage@3x.png b/ios/Runner/Assets.xcassets/BrandingImage.imageset/BrandingImage@3x.png deleted file mode 100644 index 9b481e42..00000000 Binary files a/ios/Runner/Assets.xcassets/BrandingImage.imageset/BrandingImage@3x.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/BrandingImage.imageset/Contents.json b/ios/Runner/Assets.xcassets/BrandingImage.imageset/Contents.json deleted file mode 100644 index 12712275..00000000 --- a/ios/Runner/Assets.xcassets/BrandingImage.imageset/Contents.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "images" : [ - { - "filename" : "BrandingImage.png", - "idiom" : "universal", - "scale" : "1x" - }, - { - "filename" : "BrandingImage@2x.png", - "idiom" : "universal", - "scale" : "2x" - }, - { - "filename" : "BrandingImage@3x.png", - "idiom" : "universal", - "scale" : "3x" - } - ], - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git a/ios/Runner/Assets.xcassets/LaunchBackground.imageset/Contents.json b/ios/Runner/Assets.xcassets/LaunchBackground.imageset/Contents.json deleted file mode 100644 index 8bb185b1..00000000 --- a/ios/Runner/Assets.xcassets/LaunchBackground.imageset/Contents.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "images" : [ - { - "filename" : "background.png", - "idiom" : "universal" - }, - { - "appearances" : [ - { - "appearance" : "luminosity", - "value" : "dark" - } - ], - "filename" : "darkbackground.png", - "idiom" : "universal" - } - ], - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git a/ios/Runner/Assets.xcassets/LaunchBackground.imageset/background.png b/ios/Runner/Assets.xcassets/LaunchBackground.imageset/background.png deleted file mode 100644 index b0dc5a7e..00000000 Binary files a/ios/Runner/Assets.xcassets/LaunchBackground.imageset/background.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/LaunchBackground.imageset/darkbackground.png b/ios/Runner/Assets.xcassets/LaunchBackground.imageset/darkbackground.png deleted file mode 100644 index 8d8cca37..00000000 Binary files a/ios/Runner/Assets.xcassets/LaunchBackground.imageset/darkbackground.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json b/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json deleted file mode 100644 index f3387d4a..00000000 --- a/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json +++ /dev/null @@ -1,56 +0,0 @@ -{ - "images" : [ - { - "filename" : "LaunchImage.png", - "idiom" : "universal", - "scale" : "1x" - }, - { - "appearances" : [ - { - "appearance" : "luminosity", - "value" : "dark" - } - ], - "filename" : "LaunchImageDark.png", - "idiom" : "universal", - "scale" : "1x" - }, - { - "filename" : "LaunchImage@2x.png", - "idiom" : "universal", - "scale" : "2x" - }, - { - "appearances" : [ - { - "appearance" : "luminosity", - "value" : "dark" - } - ], - "filename" : "LaunchImageDark@2x.png", - "idiom" : "universal", - "scale" : "2x" - }, - { - "filename" : "LaunchImage@3x.png", - "idiom" : "universal", - "scale" : "3x" - }, - { - "appearances" : [ - { - "appearance" : "luminosity", - "value" : "dark" - } - ], - "filename" : "LaunchImageDark@3x.png", - "idiom" : "universal", - "scale" : "3x" - } - ], - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git a/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png b/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png deleted file mode 100644 index de872001..00000000 Binary files a/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png b/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png deleted file mode 100644 index b7fbc3b1..00000000 Binary files a/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png b/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png deleted file mode 100644 index 5be1b185..00000000 Binary files a/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImageDark.png b/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImageDark.png deleted file mode 100644 index e71139cb..00000000 Binary files a/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImageDark.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImageDark@2x.png b/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImageDark@2x.png deleted file mode 100644 index 2e33bc0f..00000000 Binary files a/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImageDark@2x.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImageDark@3x.png b/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImageDark@3x.png deleted file mode 100644 index ab32671c..00000000 Binary files a/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImageDark@3x.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md b/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md deleted file mode 100644 index 89c2725b..00000000 --- a/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md +++ /dev/null @@ -1,5 +0,0 @@ -# Launch Screen Assets - -You can customize the launch screen with your own desired assets by replacing the image files in this directory. - -You can also do it by opening your Flutter project's Xcode project with `open ios/Runner.xcworkspace`, selecting `Runner/Assets.xcassets` in the Project Navigator and dropping in the desired images. \ No newline at end of file diff --git a/ios/Runner/Base.lproj/LaunchScreen.storyboard b/ios/Runner/Base.lproj/LaunchScreen.storyboard deleted file mode 100644 index 6453403b..00000000 --- a/ios/Runner/Base.lproj/LaunchScreen.storyboard +++ /dev/null @@ -1,48 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/ios/Runner/Base.lproj/Main.storyboard b/ios/Runner/Base.lproj/Main.storyboard deleted file mode 100644 index f3c28516..00000000 --- a/ios/Runner/Base.lproj/Main.storyboard +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/ios/Runner/Info.plist b/ios/Runner/Info.plist deleted file mode 100644 index 1bde876c..00000000 --- a/ios/Runner/Info.plist +++ /dev/null @@ -1,67 +0,0 @@ - - - - - CFBundleDevelopmentRegion - $(DEVELOPMENT_LANGUAGE) - CFBundleDisplayName - Tachidesk Sorayomi - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIdentifier - $(PRODUCT_BUNDLE_IDENTIFIER) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - Sorayomi - CFBundlePackageType - APPL - CFBundleShortVersionString - $(FLUTTER_BUILD_NAME) - CFBundleSignature - ???? - CFBundleVersion - $(FLUTTER_BUILD_NUMBER) - LSRequiresIPhoneOS - - UILaunchStoryboardName - LaunchScreen - UIMainStoryboardFile - Main - UISupportedInterfaceOrientations - - UIInterfaceOrientationPortrait - UIInterfaceOrientationLandscapeLeft - UIInterfaceOrientationLandscapeRight - - UISupportedInterfaceOrientations~ipad - - UIInterfaceOrientationPortrait - UIInterfaceOrientationPortraitUpsideDown - UIInterfaceOrientationLandscapeLeft - UIInterfaceOrientationLandscapeRight - - UIViewControllerBasedStatusBarAppearance - - CADisableMinimumFrameDurationOnPhone - - UIApplicationSupportsIndirectInputEvents - - UIStatusBarHidden - - CFBundleLocalizations - - ar - de - en - es - fr - pt - uk - ko - pt-pt - zh - zh-hans - - - diff --git a/ios/Runner/Runner-Bridging-Header.h b/ios/Runner/Runner-Bridging-Header.h deleted file mode 100644 index 308a2a56..00000000 --- a/ios/Runner/Runner-Bridging-Header.h +++ /dev/null @@ -1 +0,0 @@ -#import "GeneratedPluginRegistrant.h" diff --git a/l10n.yaml b/l10n.yaml deleted file mode 100644 index a572cc9b..00000000 --- a/l10n.yaml +++ /dev/null @@ -1,9 +0,0 @@ -# Copyright (c) 2023 Contributors to the Suwayomi project -# -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. - -arb-dir: lib/src/l10n -template-arb-file: app_en.arb -output-localization-file: app_localizations.dart \ No newline at end of file diff --git a/lib/main.dart b/lib/main.dart deleted file mode 100644 index 8ae01949..00000000 --- a/lib/main.dart +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'dart:io'; - -import 'package:flutter/foundation.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter/services.dart'; -import 'package:go_router/go_router.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; -import 'package:package_info_plus/package_info_plus.dart'; -import 'package:path/path.dart' as path; -import 'package:path_provider/path_provider.dart'; -import 'package:shared_preferences/shared_preferences.dart'; - -import 'src/features/about/presentation/about/controllers/about_controller.dart'; -import 'src/global_providers/global_providers.dart'; -import 'src/sorayomi.dart'; - -Future main() async { - WidgetsFlutterBinding.ensureInitialized(); - final packageInfo = await PackageInfo.fromPlatform(); - final sharedPreferences = await SharedPreferences.getInstance(); - - final Directory? appDirectory; - if (!kIsWeb) { - final appDocDirectory = await getApplicationDocumentsDirectory(); - appDirectory = Directory(path.join(appDocDirectory.path, 'Sorayomi')); - - await appDirectory.create(recursive: true); - - final cacheFiles = ['dio_cache.hive', 'dio_cache.lock']; - for (final cacheFile in cacheFiles) { - final oldCacheFilePath = path.join(appDocDirectory.path, cacheFile); - final newCacheFilePath = path.join(appDirectory.path, cacheFile); - - if (!(await File(newCacheFilePath).exists()) && - await File(oldCacheFilePath).exists()) { - await File(oldCacheFilePath).rename(newCacheFilePath); - } - } - } else { - appDirectory = null; - } - - SystemChrome.setPreferredOrientations(DeviceOrientation.values); - GoRouter.optionURLReflectsImperativeAPIs = true; - - runApp( - ProviderScope( - overrides: [ - packageInfoProvider.overrideWithValue(packageInfo), - sharedPreferencesProvider.overrideWithValue(sharedPreferences), - appDirectoryProvider.overrideWithValue(appDirectory), - ], - child: const Sorayomi(), - ), - ); -} diff --git a/lib/src/constants/app_constants.dart b/lib/src/constants/app_constants.dart deleted file mode 100644 index feb4a377..00000000 --- a/lib/src/constants/app_constants.dart +++ /dev/null @@ -1,27 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; - -const Duration kDuration = Duration(milliseconds: 500); -const Duration kInstantDuration = Duration(microseconds: 1); -const Duration kLongDuration = Duration(seconds: 2); - -const Curve kCurve = Curves.easeIn; -const Size kMagnifierSize = Size(77.37, 37.9); -const MagnifierDecoration kMagnifierDecoration = MagnifierDecoration( - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.all(Radius.circular(40))), - shadows: [ - BoxShadow( - blurRadius: 1.5, - offset: Offset(0, 2), - spreadRadius: 0.75, - color: Color.fromARGB(25, 0, 0, 0)) - ], -); - -const kDebounceDuration = Duration(milliseconds: 500); diff --git a/lib/src/constants/app_sizes.dart b/lib/src/constants/app_sizes.dart deleted file mode 100644 index 84d31e74..00000000 --- a/lib/src/constants/app_sizes.dart +++ /dev/null @@ -1,138 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'dart:math'; - -import 'package:flutter/material.dart'; - -import '../utils/extensions/custom_extensions.dart'; -import 'app_constants.dart'; -import 'db_keys.dart'; - -const kTabSize = Size.fromHeight(kAppBarBottomHeight); -const kAppBarBottomHeight = 64.0; -const kDrawerWidth = 384.0; - -Size kCalculateAppBarBottomSize(List checks) { - final multiplier = - checks.map((e) => e ? 1 : 0).toList().fold(0, (v1, v2) => v1 + v2); - return Size.fromHeight(kAppBarBottomHeight * multiplier); -} - -Offset kMagnifierPosition(Offset position, Size size, double multiplier) => - Offset( - max( - min( - position.dx - (kMagnifierSize.width * multiplier * .5), - size.width - (kMagnifierSize.width * multiplier * .5), - ), - -(kMagnifierSize.width * multiplier * .5), - ), - max( - min( - position.dy - (kMagnifierSize.height * multiplier), - size.height - (kMagnifierSize.height * multiplier * 1.25), - ), - -(kMagnifierSize.height * multiplier * .5), - ), - ); - -Offset kMagnifierOffset(Offset position, Size size, double multiplier) { - return Offset( - 0, - max(0, min(position.dy, (kMagnifierSize.height * multiplier))) * .5, - ); -} - -/// Constant sizes to be used in the app (paddings, gaps, rounded corners etc.) -enum KEdgeInsets { - a2(EdgeInsets.all(2)), - a4(EdgeInsets.all(4)), - a8(EdgeInsets.all(8)), - a16(EdgeInsets.all(16)), - h8v4(EdgeInsets.symmetric(horizontal: 8, vertical: 4)), - h8v16(EdgeInsets.symmetric(horizontal: 8, vertical: 16)), - h16v8(EdgeInsets.symmetric(horizontal: 16.0, vertical: 8.0)), - h4v8(EdgeInsets.symmetric(horizontal: 4.0, vertical: 8.0)), - h16v4(EdgeInsets.symmetric(horizontal: 16.0, vertical: 4.0)), - h16(EdgeInsets.symmetric(horizontal: 16.0)), - h8(EdgeInsets.symmetric(horizontal: 8.0)), - v8(EdgeInsets.symmetric(vertical: 8)), - v16(EdgeInsets.symmetric(vertical: 16)), - v4(EdgeInsets.symmetric(vertical: 4)), - h4(EdgeInsets.symmetric(horizontal: 4)), - ol4(EdgeInsets.only(left: 4)), - ; - - const KEdgeInsets(this.size); - - final EdgeInsets size; -} - -enum KSizedBox { - h4(SizedBox(height: 4)), - h8(SizedBox(height: 8)), - w4(SizedBox(width: 4)), - h16(SizedBox(height: 16)), - w16(SizedBox(width: 16)), - h32(SizedBox(height: 32)), - w32(SizedBox(width: 32)), - h64(SizedBox(height: 64)), - w64(SizedBox(width: 64)), - h96(SizedBox(height: 96)), - w96(SizedBox(width: 96)), - h104(SizedBox(height: 104)), - ; - - static SizedBox scale( - BuildContext context, { - double? height, - double? width, - Widget? child, - }) { - return SizedBox( - height: height != null ? context.height * height : null, - width: width != null ? context.width * width : null, - child: child, - ); - } - - const KSizedBox(this.size); - - final SizedBox size; -} - -enum KBorderRadius { - r8(BorderRadius.all(Radius.circular(8))), - r12(BorderRadius.all(Radius.circular(12))), - r16(BorderRadius.all(Radius.circular(16))), - rT16(BorderRadius.vertical(top: Radius.circular(16))), - r32(BorderRadius.all(Radius.circular(32))), - ; - - const KBorderRadius(this.radius); - final BorderRadius radius; -} - -enum KRadius { - r8(Radius.circular(8)), - r12(Radius.circular(12)), - r16(Radius.circular(16)), - rT16(Radius.circular(16)), - r32(Radius.circular(32)), - ; - - const KRadius(this.radius); - final Radius radius; -} - -SliverGridDelegateWithMaxCrossAxisExtent mangaCoverGridDelegate(double? size) => - SliverGridDelegateWithMaxCrossAxisExtent( - maxCrossAxisExtent: size ?? DBKeys.gridMangaCoverWidth.initial, - crossAxisSpacing: 2.0, - mainAxisSpacing: 2.0, - childAspectRatio: 0.75, - ); diff --git a/lib/src/constants/app_themes/app_theme.dart b/lib/src/constants/app_themes/app_theme.dart deleted file mode 100644 index 847f6e42..00000000 --- a/lib/src/constants/app_themes/app_theme.dart +++ /dev/null @@ -1,27 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; - -class ThemeColorSchema { - final ColorScheme light; - final ColorScheme dark; - const ThemeColorSchema(this.light, this.dark); -} - -class LightAndDarkThemeData { - late final ThemeData light; - final ThemeData dark; - LightAndDarkThemeData(ThemeData light, this.dark) { - this.light = light.copyWith( - tabBarTheme: TabBarTheme( - labelColor: light.colorScheme.primary, - unselectedLabelColor: light.colorScheme.onBackground, - ), - indicatorColor: light.colorScheme.primary, - ); - } -} diff --git a/lib/src/constants/app_themes/color_schemas/default_theme.dart b/lib/src/constants/app_themes/color_schemas/default_theme.dart deleted file mode 100644 index b3f1320d..00000000 --- a/lib/src/constants/app_themes/color_schemas/default_theme.dart +++ /dev/null @@ -1,88 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; - -import '../app_theme.dart'; - -final LightAndDarkThemeData defaultTheme = LightAndDarkThemeData( - ThemeData( - useMaterial3: true, - colorScheme: _lightColorScheme, - ), - ThemeData( - useMaterial3: true, - colorScheme: _darkColorScheme, - ), -); - -const _lightColorScheme = ColorScheme( - brightness: Brightness.light, - primary: Color(0xFF335CA8), - onPrimary: Color(0xFFFFFFFF), - primaryContainer: Color(0xFFD8E2FF), - onPrimaryContainer: Color(0xFF001A42), - secondary: Color(0xFF335CA8), - onSecondary: Color(0xFFFFFFFF), - secondaryContainer: Color(0xFFD8E2FF), - onSecondaryContainer: Color(0xFF001A42), - tertiary: Color(0xFF006E1B), - onTertiary: Color(0xFFFFFFFF), - tertiaryContainer: Color(0xFF95F990), - onTertiaryContainer: Color(0xFF002203), - error: Color(0xFFBA1A1A), - errorContainer: Color(0xFFFFDAD6), - onError: Color(0xFFFFFFFF), - onErrorContainer: Color(0xFF410002), - background: Color(0xFFFEFBFF), - onBackground: Color(0xFF1B1B1F), - surface: Color(0xFFFEFBFF), - onSurface: Color(0xFF1B1B1F), - surfaceVariant: Color(0xFFE1E2EC), - onSurfaceVariant: Color(0xFF44474F), - outline: Color(0xFF757780), - onInverseSurface: Color(0xFFF2F0F4), - inverseSurface: Color(0xFF303034), - inversePrimary: Color(0xFFAEC6FF), - shadow: Color(0xFF000000), - surfaceTint: Color(0xFF335CA8), - outlineVariant: Color(0xFFC5C6D0), - scrim: Color(0xFF000000), -); - -const _darkColorScheme = ColorScheme( - brightness: Brightness.dark, - primary: Color(0xFFAEC6FF), - onPrimary: Color(0xFF002E6B), - primaryContainer: Color(0xFF13448F), - onPrimaryContainer: Color(0xFFD8E2FF), - secondary: Color(0xFFAEC6FF), - onSecondary: Color(0xFF002E6B), - secondaryContainer: Color(0xFF13448F), - onSecondaryContainer: Color(0xFFD8E2FF), - tertiary: Color(0xFF7ADC77), - onTertiary: Color(0xFF003909), - tertiaryContainer: Color(0xFF005312), - onTertiaryContainer: Color(0xFF95F990), - error: Color(0xFFFFB4AB), - errorContainer: Color(0xFF93000A), - onError: Color(0xFF690005), - onErrorContainer: Color(0xFFFFDAD6), - background: Color(0xFF1B1B1F), - onBackground: Color(0xFFE3E2E6), - surface: Color(0xFF1B1B1F), - onSurface: Color(0xFFE3E2E6), - surfaceVariant: Color(0xFF44474F), - onSurfaceVariant: Color(0xFFC5C6D0), - outline: Color(0xFF8E9099), - onInverseSurface: Color(0xFF1B1B1F), - inverseSurface: Color(0xFFE3E2E6), - inversePrimary: Color(0xFF335CA8), - shadow: Color(0xFF000000), - surfaceTint: Color(0xFFAEC6FF), - outlineVariant: Color(0xFF44474F), - scrim: Color(0xFF000000), -); diff --git a/lib/src/constants/db_keys.dart b/lib/src/constants/db_keys.dart deleted file mode 100644 index 631b382a..00000000 --- a/lib/src/constants/db_keys.dart +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; - -import 'enum.dart'; - -enum DBKeys { - serverUrl('http://127.0.0.1'), - serverPort(4567), - serverPortToggle(true), - sourceLanguageFilter(["all", "lastUsed", "en", "localsourcelang"]), - extensionLanguageFilter(["installed", "update", "en", "all"]), - sourceLastUsed(null), - themeMode(ThemeMode.system), - authType(AuthType.none), - basicCredentials(null), - readerMode(ReaderMode.webtoon), - readerPadding(0.0), - readerMagnifierSize(1.0), - readerNavigationLayout(ReaderNavigationLayout.disabled), - invertTap(false), - swipeToggle(true), - scrollAnimation(true), - showNSFW(true), - downloadedBadge(true), - unreadBadge(true), - languageBadge(false), - l10n(Locale('en')), - mangaFilterDownloaded(null), - mangaFilterUnread(null), - mangaFilterCompleted(null), - chapterFilterDownloaded(null), - chapterFilterUnread(null), - chapterFilterBookmarked(null), - mangaSort(MangaSort.alphabetical), - mangaSortDirection(true), // asc=true, dsc=false - chapterSort(ChapterSort.source), - chapterSortDirection(false), // asc=true, dsc=false - libraryDisplayMode(DisplayMode.grid), - sourceDisplayMode(DisplayMode.grid), - gridMangaCoverWidth(192.0), - readerOverlay(true), - volumeTap(false), - volumeTapInvert(false), - ; - - const DBKeys(this.initial); - - final dynamic initial; -} - -enum DBStoreName { settings } diff --git a/lib/src/constants/endpoints.dart b/lib/src/constants/endpoints.dart deleted file mode 100644 index a623c2b6..00000000 --- a/lib/src/constants/endpoints.dart +++ /dev/null @@ -1,125 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'db_keys.dart'; - -abstract class Endpoints { - // base url - static String baseApi({ - String? baseUrl, - int? port, - bool addPort = true, - bool appendApiToUrl = true, - }) => - "${baseUrl ?? DBKeys.serverUrl.initial}" - "${port != null && addPort ? ":$port" : ''}" - "${appendApiToUrl ? '/api/v1' : ''}"; - - // receiveTimeout - static const Duration receiveTimeout = Duration(minutes: 1); - - // connectTimeout - static const Duration connectionTimeout = Duration(minutes: 1); -} - -abstract class SettingsUrl { - static const String about = '$_settings/about'; - static const String checkServerUpdate = '$_settings/check-update'; - static const String _settings = "/settings"; -} - -abstract class ExtensionUrl { - static const String _extension = "/extension"; - static const String list = "$_extension/list"; - static const String installFile = "$_extension/install"; - static String installPkg(String pkgName) => "$installFile/$pkgName"; - static String updatePkg(String pkgName) => "$_extension/update/$pkgName"; - static String uninstallPkg(String pkgName) => - "$_extension/uninstall/$pkgName"; - static String icon(String apkName) => "$_extension/icon/$apkName"; -} - -abstract class CategoryUrl { - static const String category = "/category"; - static const String reorder = "$category/reorder"; - static String withId(int id) => "$category/$id"; -} - -abstract class MangaUrl { - static String withId(int mangaId) => "$_manga/$mangaId"; - static String fullWithId(int mangaId) => "$_manga/$mangaId/full"; - static String thumbnail(int mangaId) => "$_manga/$mangaId/thumbnail"; - static String category(int mangaId) => "$_manga/$mangaId/category"; - static String categoryId(int mangaId, String categoryId) => - "$_manga/$mangaId/category/$categoryId"; - static String library(int mangaId) => "$_manga/$mangaId/library"; - static String meta(int mangaId) => "$_manga/$mangaId/meta"; - static String chapters(int mangaId) => "$_manga/$mangaId/chapters"; - static String chapterWithIndex( - int mangaId, - int chapterIndex, - ) => - "$_manga/$mangaId/chapter/$chapterIndex"; - static String chapterMetaWithIndex(int mangaId, int chapterIndex) => - "$_manga/$mangaId/chapter/$chapterIndex/meta"; - static String chapterBatch = "/chapter/batch"; - static String chapterPageWithIndex({ - required int mangaId, - required int chapterIndex, - required int pageIndex, - }) => - "$_manga/$mangaId/chapter/$chapterIndex/page/$pageIndex"; - - static const String _manga = "/manga"; -} - -abstract class DownloaderUrl { - static String start = "$downloads/start"; - static String stop = "$downloads/stop"; - static String clear = "$downloads/clear"; - - static String batch = "/download/batch"; - static String chapter(int mangaId, int chapterIndex) => - "/download/$mangaId/chapter/$chapterIndex"; - - static String reorderDownload(int mangaId, int chapterIndex, int to) => - "/download/$mangaId/chapter/$chapterIndex/reorder/$to"; - - static const String downloads = "/downloads"; -} - -abstract class BackupUrl { - static String import = "$_backup/import/file"; - static String validate = "$_backup/validate/file"; - static String export = "$_backup/export/file"; - - static const String _backup = "/backup"; -} - -abstract class SourceUrl { - static String sourceList = "$_source/list"; - - static String withId(String sourceId) => "$_source/$sourceId"; - static String getMangaList(String sourceId, String sourceType, int pageNum) => - "$_source/$sourceId/$sourceType/$pageNum"; - static String preferences(String sourceId) => - "$_source/$sourceId/preferences"; - static String filters(String sourceId) => "$_source/$sourceId/filters"; - static String search(String sourceId) => "$_source/$sourceId/search"; - static String quickSearch(String sourceId) => - "$_source/$sourceId/quick-search"; - - static const String _source = "/source"; -} - -abstract class UpdateUrl { - static String recentChapters(int pageNo) => "$update/recentChapters/$pageNo"; - - static const String update = "/update"; - static const String fetch = "/update/fetch"; - static const String reset = "/update/reset"; - static const String summary = "/update/summary"; -} diff --git a/lib/src/constants/enum.dart b/lib/src/constants/enum.dart deleted file mode 100644 index ead94888..00000000 --- a/lib/src/constants/enum.dart +++ /dev/null @@ -1,168 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; - -import '../utils/extensions/custom_extensions.dart'; - -enum AuthType { - none, - basic; - - String toLocale(BuildContext context) => switch (this) { - AuthType.none => context.l10n!.authTypeNone, - AuthType.basic => context.l10n!.authTypeBasic, - }; -} - -enum ReaderMode { - defaultReader, - continuousVertical, - singleHorizontalLTR, - singleHorizontalRTL, - continuousHorizontalLTR, - continuousHorizontalRTL, - singleVertical, - webtoon; - - String toLocale(BuildContext context) => switch (this) { - ReaderMode.defaultReader => context.l10n!.readerModeDefaultReader, - ReaderMode.continuousVertical => - context.l10n!.readerModeContinuousVertical, - ReaderMode.singleHorizontalLTR => - context.l10n!.readerModeSingleHorizontalLTR, - ReaderMode.singleHorizontalRTL => - context.l10n!.readerModeSingleHorizontalRTL, - ReaderMode.continuousHorizontalLTR => - context.l10n!.readerModeContinuousHorizontalLTR, - ReaderMode.continuousHorizontalRTL => - context.l10n!.readerModeContinuousHorizontalRTL, - ReaderMode.singleVertical => context.l10n!.readerModeSingleVertical, - ReaderMode.webtoon => context.l10n!.readerModeWebtoon - }; -} - -enum ReaderNavigationLayout { - defaultNavigation, - lShaped, - rightAndLeft, - edge, - kindlish, - disabled; - - String toLocale(BuildContext context) => switch (this) { - ReaderNavigationLayout.defaultNavigation => - context.l10n!.readerNavigationLayoutDefault, - ReaderNavigationLayout.lShaped => - context.l10n!.readerNavigationLayoutLShaped, - ReaderNavigationLayout.rightAndLeft => - context.l10n!.readerNavigationLayoutRightAndLeft, - ReaderNavigationLayout.edge => context.l10n!.readerNavigationLayoutEdge, - ReaderNavigationLayout.kindlish => - context.l10n!.readerNavigationLayoutKindlish, - ReaderNavigationLayout.disabled => - context.l10n!.readerNavigationLayoutDisabled - }; -} - -enum MangaSort { - alphabetical, - dateAdded, - unread, - lastRead; - - String toLocale(BuildContext context) => switch (this) { - MangaSort.alphabetical => context.l10n!.mangaSortAlphabetical, - MangaSort.dateAdded => context.l10n!.mangaSortDateAdded, - MangaSort.unread => context.l10n!.mangaSortUnread, - MangaSort.lastRead => context.l10n!.mangaSortLastRead - }; -} - -enum ChapterSort { - source, - uploadDate, - fetchedDate; - - String toLocale(BuildContext context) => switch (this) { - ChapterSort.source => context.l10n!.chapterSortSource, - ChapterSort.fetchedDate => context.l10n!.chapterSortFetchedDate, - ChapterSort.uploadDate => context.l10n!.chapterSortUploadDate - }; -} - -enum DisplayMode { - grid(Icons.grid_view_rounded), - list(Icons.view_list_rounded), - descriptiveList(Icons.view_list_rounded), - ; - - static const List sourceDisplayList = [ - DisplayMode.grid, - DisplayMode.list - ]; - - final IconData icon; - const DisplayMode(this.icon); - - String toLocale(BuildContext context) => switch (this) { - DisplayMode.grid => context.l10n!.displayModeGrid, - DisplayMode.list => context.l10n!.displayModeList, - DisplayMode.descriptiveList => context.l10n!.displayModeDescriptiveList - }; -} - -enum MangaStatus { - unknown("UNKNOWN", Icons.block_outlined), - ongoing("ONGOING", Icons.schedule_rounded), - completed("COMPLETED", Icons.done_all_rounded), - licensed("LICENSED", Icons.shield_rounded), - publishingFinished("PUBLISHING_FINISHED", Icons.publish_rounded), - cancelled("CANCELLED", Icons.cancel_rounded), - onHiatus("ON_HIATUS", Icons.pause_circle_rounded); - - final IconData icon; - final String title; - const MangaStatus( - this.title, - this.icon, - ); - static final _statusMap = { - for (MangaStatus status in MangaStatus.values) status.title: status - }; - static MangaStatus fromJson(String status) => - _statusMap[status] ?? MangaStatus.unknown; - static String toJson(MangaStatus? status) => - status?.title ?? MangaStatus.unknown.title; - - String toLocale(BuildContext context) => switch (this) { - MangaStatus.unknown => context.l10n!.mangaStatusUnknown, - MangaStatus.ongoing => context.l10n!.mangaStatusOngoing, - MangaStatus.completed => context.l10n!.mangaStatusCompleted, - MangaStatus.licensed => context.l10n!.mangaStatusLicensed, - MangaStatus.publishingFinished => - context.l10n!.mangaStatusPublishingFinished, - MangaStatus.cancelled => context.l10n!.mangaStatusCancelled, - MangaStatus.onHiatus => context.l10n!.mangaStatusOnHiatus - }; -} - -enum SourceType { - latest(Icons.new_releases_outlined, Icons.new_releases_rounded), - popular(Icons.favorite_border_rounded, Icons.favorite_rounded), - filter(Icons.filter_list_outlined, Icons.filter_list_rounded); - - const SourceType(this.icon, this.selectedIcon); - - final IconData icon; - final IconData selectedIcon; - - String toLocale(BuildContext context) => switch (this) { - SourceType.latest => context.l10n!.sourceTypeLatest, - SourceType.popular => context.l10n!.sourceTypePopular, - SourceType.filter => context.l10n!.sourceTypeFilter - }; -} diff --git a/lib/src/constants/gen/assets.gen.dart b/lib/src/constants/gen/assets.gen.dart deleted file mode 100644 index aeb8c1eb..00000000 --- a/lib/src/constants/gen/assets.gen.dart +++ /dev/null @@ -1,134 +0,0 @@ -/// GENERATED CODE - DO NOT MODIFY BY HAND -/// ***************************************************** -/// FlutterGen -/// ***************************************************** - -// coverage:ignore-file -// ignore_for_file: type=lint -// ignore_for_file: directives_ordering,unnecessary_import,implicit_dynamic_list_literal,deprecated_member_use - -import 'package:flutter/widgets.dart'; - -class $AssetsIconsGen { - const $AssetsIconsGen(); - - /// File path: assets/icons/dark_icon.png - AssetGenImage get darkIcon => - const AssetGenImage('assets/icons/dark_icon.png'); - - $AssetsIconsLauncherGen get launcher => const $AssetsIconsLauncherGen(); - - /// File path: assets/icons/light_icon.png - AssetGenImage get lightIcon => - const AssetGenImage('assets/icons/light_icon.png'); - - /// File path: assets/icons/previous_done.png - AssetGenImage get previousDone => - const AssetGenImage('assets/icons/previous_done.png'); - - /// List of all assets - List get values => [darkIcon, lightIcon, previousDone]; -} - -class $AssetsIconsLauncherGen { - const $AssetsIconsLauncherGen(); - - /// File path: assets/icons/launcher/from_suwayomi.png - AssetGenImage get fromSuwayomi => - const AssetGenImage('assets/icons/launcher/from_suwayomi.png'); - - /// File path: assets/icons/launcher/sorayomi_icon.ico - String get sorayomiIconIco => 'assets/icons/launcher/sorayomi_icon.ico'; - - /// File path: assets/icons/launcher/sorayomi_icon.png - AssetGenImage get sorayomiIconPng => - const AssetGenImage('assets/icons/launcher/sorayomi_icon.png'); - - /// File path: assets/icons/launcher/sorayomi_preview_icon.png - AssetGenImage get sorayomiPreviewIcon => - const AssetGenImage('assets/icons/launcher/sorayomi_preview_icon.png'); - - /// List of all assets - List get values => - [fromSuwayomi, sorayomiIconIco, sorayomiIconPng, sorayomiPreviewIcon]; -} - -class Assets { - Assets._(); - - static const $AssetsIconsGen icons = $AssetsIconsGen(); -} - -class AssetGenImage { - const AssetGenImage(this._assetName); - - final String _assetName; - - Image image({ - Key? key, - AssetBundle? bundle, - ImageFrameBuilder? frameBuilder, - ImageErrorWidgetBuilder? errorBuilder, - String? semanticLabel, - bool excludeFromSemantics = false, - double? scale, - double? width, - double? height, - Color? color, - Animation? opacity, - BlendMode? colorBlendMode, - BoxFit? fit, - AlignmentGeometry alignment = Alignment.center, - ImageRepeat repeat = ImageRepeat.noRepeat, - Rect? centerSlice, - bool matchTextDirection = false, - bool gaplessPlayback = false, - bool isAntiAlias = false, - String? package, - FilterQuality filterQuality = FilterQuality.low, - int? cacheWidth, - int? cacheHeight, - }) { - return Image.asset( - _assetName, - key: key, - bundle: bundle, - frameBuilder: frameBuilder, - errorBuilder: errorBuilder, - semanticLabel: semanticLabel, - excludeFromSemantics: excludeFromSemantics, - scale: scale, - width: width, - height: height, - color: color, - opacity: opacity, - colorBlendMode: colorBlendMode, - fit: fit, - alignment: alignment, - repeat: repeat, - centerSlice: centerSlice, - matchTextDirection: matchTextDirection, - gaplessPlayback: gaplessPlayback, - isAntiAlias: isAntiAlias, - package: package, - filterQuality: filterQuality, - cacheWidth: cacheWidth, - cacheHeight: cacheHeight, - ); - } - - ImageProvider provider({ - AssetBundle? bundle, - String? package, - }) { - return AssetImage( - _assetName, - bundle: bundle, - package: package, - ); - } - - String get path => _assetName; - - String get keyName => _assetName; -} diff --git a/lib/src/constants/language_list.dart b/lib/src/constants/language_list.dart deleted file mode 100644 index 06dff63b..00000000 --- a/lib/src/constants/language_list.dart +++ /dev/null @@ -1,135 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'dart:ui'; - -import '../features/browse_center/domain/language/language_model.dart'; - -String getLanguageNameFormLocale(Locale locale) { - String? displayName; - final localeCode = locale.toLanguageTag().toLowerCase(); - if (languageMap[localeCode] != null) { - displayName = languageMap[localeCode]!.displayName; - } else if (languageMap[locale.languageCode.toLowerCase()] != null) { - displayName = languageMap[locale.languageCode.toLowerCase()]!.displayName; - } - return displayName ?? locale.toLanguageTag(); -} - -String getLanguageNameInEnFormLocale(Locale locale) { - String? name; - final localeCode = locale.toLanguageTag().toLowerCase(); - if (languageMap[localeCode] != null) { - name = languageMap[localeCode]!.name; - } else if (languageMap[locale.languageCode.toLowerCase()] != null) { - name = languageMap[locale.languageCode.toLowerCase()]!.name; - } - return name ?? locale.toLanguageTag(); -} - -final languageMap = { - for (final e in customLanguageList) e['code'] ?? "other": Language.fromJson(e) -}; - -const customLanguageList = [ - ...languageList, - { - "code": 'localsourcelang', - "name": 'Local source', - "nativeName": 'Local source' - }, - {"code": 'installed', "name": 'Installed', "nativeName": 'Installed'}, - {"code": "lastUsed", "name": "Last Used", "nativeName": "Last Used"}, - { - "code": 'update', - "name": 'Updates pending', - "nativeName": 'Updates pending' - }, - {"code": 'other', "name": 'other langs', "nativeName": 'Other'}, - {"code": 'all', "name": 'All', "nativeName": 'All'}, -]; - -const languageList = [ - {"code": 'en', "name": 'English', "nativeName": 'English'}, - {"code": 'en-us', "name": 'English (US)', "nativeName": 'English (US)'}, - {"code": 'ca', "name": 'Catalan; Valencian', "nativeName": 'Català'}, - {"code": 'de', "name": 'German', "nativeName": 'Deutsch'}, - {"code": 'es', "name": 'Spanish; Castilian', "nativeName": 'Español'}, - { - "code": 'es-419', - "name": 'Spanish; Castilian', - "nativeName": 'Español (Latinoamérica)' - }, - {"code": 'fr', "name": 'French', "nativeName": 'Français'}, - {"code": 'id', "name": 'Indonesian', "nativeName": 'Indonesia'}, - {"code": 'it', "name": 'Italian', "nativeName": 'Italiano'}, - {"code": 'pt', "name": 'Portuguese', "nativeName": 'Português'}, - {"code": 'pt-pt', "name": 'Portuguese', "nativeName": 'Português (Portugal)'}, - { - "code": 'pt-br', - "name": 'Portuguese; Brasil', - "nativeName": 'Português (Brasil)' - }, - {"code": 'vi', "name": 'Vietnamese', "nativeName": 'Tiếng Việt'}, - {"code": 'tr', "name": 'Turkish', "nativeName": 'Türkçe'}, - {"code": 'ru', "name": 'Russian', "nativeName": 'русский'}, - {"code": 'ar', "name": 'Arabic', "nativeName": 'العربية'}, - {"code": 'hi', "name": 'Hindi', "nativeName": 'हिन्दी'}, - {"code": 'th', "name": 'Thai', "nativeName": 'ไทย'}, - {"code": 'zh', "name": 'Chinese', "nativeName": '中文'}, - {"code": 'zh-hans', "name": 'Simplified Chinese', "nativeName": '简体中文'}, - {"code": 'zh-hant', "name": 'Traditional Chinese', "nativeName": '繁體中文'}, - { - "code": 'zh-rhk', - "name": 'Traditional Chinese (HK)', - "nativeName": '繁体中文(香港)' - }, - { - "code": 'zh-rtw', - "name": 'Traditional Chinese (TW)', - "nativeName": '繁体中文(台湾)' - }, - {"code": 'ja', "name": 'Japanese', "nativeName": '日本語'}, - {"code": 'ko', "name": 'Korean', "nativeName": '한국어'}, - {"code": 'zu', "name": 'Zulu', "nativeName": 'isiZulu'}, - {"code": 'xh', "name": 'Xhosa', "nativeName": 'isiXhosa'}, - {"code": 'uk', "name": 'Ukrainian', "nativeName": 'Українська'}, - {"code": 'ro', "name": 'Romanian', "nativeName": 'Română'}, - {"code": 'bg', "name": 'Bulgarian', "nativeName": 'български'}, - {"code": 'cs', "name": 'Czech', "nativeName": 'čeština'}, - {"code": 'pl', "name": 'Polish', "nativeName": 'polski'}, - {"code": 'no', "name": 'Norwegian', "nativeName": 'Norsk'}, - {"code": 'nl', "name": 'Dutch', "nativeName": 'Nederlands'}, - {"code": 'my', "name": 'Burmese', "nativeName": 'ဗမာစာ'}, - {"code": 'ms', "name": 'Malay', "nativeName": 'Malaysia'}, - {"code": 'mn', "name": 'Mongolian', "nativeName": 'Монгол'}, - {"code": 'ml', "name": 'Malayalam', "nativeName": 'മലയാളം'}, - {"code": 'ku', "name": 'Kurdish', "nativeName": 'Kurdî'}, - {"code": 'hu', "name": 'Hungarian', "nativeName": 'Magyar'}, - {"code": 'hr', "name": 'Croatian', "nativeName": 'Hrvatski'}, - {"code": 'he', "name": 'Hebrew', "nativeName": 'עברית'}, - {"code": 'fil', "name": 'Filipino', "nativeName": 'Filipino'}, - {"code": 'fi', "name": 'Finnish', "nativeName": 'suomi'}, - {"code": 'fa', "name": 'Persian', "nativeName": 'فارسی'}, - {"code": 'eu', "name": 'Basque', "nativeName": 'euskara'}, - {"code": 'el', "name": 'Greek', "nativeName": 'Ελληνικά'}, - {"code": 'da', "name": 'Danish', "nativeName": 'dansk'}, - {"code": 'bn', "name": 'Bengali', "nativeName": 'বাংলা'}, - {"code": 'lt', "name": 'Lithuanian', "nativeName": 'lietuvių kalba'}, - {"code": 'sh', "name": 'Serbo-Croatian', "nativeName": 'srpskohrvatski'}, - {"code": 'af', "name": 'Afrikaans', "nativeName": 'Afrikaans'}, - {"code": 'am', "name": 'Amharic', "nativeName": 'አማርኛ'}, - {"code": 'az', "name": 'Azerbaijani', "nativeName": 'Azərbaycan'}, - {"code": 'be', "name": 'Belarusian', "nativeName": 'беларуская'}, - {"code": 'bs', "name": 'Bosnian', "nativeName": 'bosanski'}, - {"code": 'sv', "name": 'Swedish', "nativeName": 'svenska'}, - {"code": 'sv', "name": 'Swedish', "nativeName": 'svenska'}, - { - "code": 'nb-no', - "name": 'Norwegian Bokmål (Norway)', - "nativeName": 'Norwegian Bokmål (Norway)' - }, -]; diff --git a/lib/src/constants/navigation_bar_data.dart b/lib/src/constants/navigation_bar_data.dart deleted file mode 100644 index c9c54352..00000000 --- a/lib/src/constants/navigation_bar_data.dart +++ /dev/null @@ -1,70 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; - -import '../routes/router_config.dart'; -import '../utils/extensions/custom_extensions.dart'; - -class NavigationBarData { - final String Function(BuildContext context) label; - final ValueSetter go; - final IconData icon; - final IconData activeIcon; - final List activeOn; - - static int indexWherePathOrZero(path) { - final index = navList - .indexWhere((e) => e.activeOn.any((element) => path.contains(element))); - return index > 0 ? index : 0; - } - - static final navList = [ - NavigationBarData( - icon: Icons.collections_bookmark_outlined, - activeIcon: Icons.collections_bookmark_rounded, - label: (context) => context.l10n!.library, - go: const LibraryRoute().go, - activeOn: [const LibraryRoute().location], - ), - NavigationBarData( - icon: Icons.new_releases_outlined, - activeIcon: Icons.new_releases_rounded, - label: (context) => context.l10n!.updates, - go: const UpdatesRoute().go, - activeOn: [const UpdatesRoute().location], - ), - NavigationBarData( - icon: Icons.explore_outlined, - activeIcon: Icons.explore_rounded, - label: (context) => context.l10n!.browse, - go: const BrowseRoute().go, - activeOn: [const BrowseRoute().location], - ), - NavigationBarData( - icon: Icons.download_outlined, - activeIcon: Icons.download_rounded, - label: (context) => context.l10n!.downloads, - go: const DownloadsRoute().go, - activeOn: [const DownloadsRoute().location], - ), - NavigationBarData( - icon: Icons.more_horiz_outlined, - activeIcon: Icons.more_horiz_rounded, - label: (context) => context.l10n!.more, - go: const MoreRoute().go, - activeOn: [const MoreRoute().location, const SettingsRoute().location], - ), - ]; - - NavigationBarData({ - required this.label, - required this.go, - required this.icon, - required this.activeIcon, - required this.activeOn, - }); -} diff --git a/lib/src/constants/quick_open_help_text.dart b/lib/src/constants/quick_open_help_text.dart deleted file mode 100644 index 565307d6..00000000 --- a/lib/src/constants/quick_open_help_text.dart +++ /dev/null @@ -1,44 +0,0 @@ -// Copyright (c) 2023 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; - -import '../features/quick_open/domain/quick_search_result.dart'; -import '../utils/extensions/custom_extensions.dart'; - -List getQuickShowHintTextList(BuildContext context) { - return [ - QuickSearchResult.helpText( - prefill: '@S', - pattern: '@', - hintText: context.l10n!.quickSearchSource, - ), - QuickSearchResult.helpText( - prefill: '@S/M', - pattern: '@/', - hintText: context.l10n!.quickSearchSourceManga, - ), - QuickSearchResult.helpText( - prefill: '#C', - pattern: '#', - hintText: context.l10n!.quickSearchCategory, - ), - QuickSearchResult.helpText( - prefill: '#C/M', - pattern: '#/', - hintText: context.l10n!.quickSearchCategoryManga, - ), - QuickSearchResult.helpText( - prefill: '#C/M:CN', - pattern: '#/:', - hintText: context.l10n!.quickSearchCategoryMangaChapter, - ), - QuickSearchResult.helpText( - prefill: 'X', - hintText: context.l10n!.quickSearchContext, - ), - ]; -} diff --git a/lib/src/constants/reader_keyboard_shortcuts.dart b/lib/src/constants/reader_keyboard_shortcuts.dart deleted file mode 100644 index e6373095..00000000 --- a/lib/src/constants/reader_keyboard_shortcuts.dart +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright (c) 2023 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:flutter/services.dart'; - -class NextScrollIntent extends Intent {} - -class NextChapterIntent extends Intent {} - -class PreviousScrollIntent extends Intent {} - -class PreviousChapterIntent extends Intent {} - -class HideQuickOpenIntent extends Intent {} - -ShortcutManager readerShortcutManager(Axis scrollDirection) => ShortcutManager( - shortcuts: { - const SingleActivator(LogicalKeyboardKey.space): NextScrollIntent(), - const SingleActivator(LogicalKeyboardKey.space, shift: true): - PreviousScrollIntent(), - const SingleActivator(LogicalKeyboardKey.arrowLeft): - scrollDirection == Axis.horizontal - ? PreviousScrollIntent() - : PreviousChapterIntent(), - const SingleActivator(LogicalKeyboardKey.keyA): - scrollDirection == Axis.horizontal - ? PreviousScrollIntent() - : PreviousChapterIntent(), - const SingleActivator(LogicalKeyboardKey.arrowRight): - scrollDirection == Axis.horizontal - ? NextScrollIntent() - : NextChapterIntent(), - const SingleActivator(LogicalKeyboardKey.keyD): - scrollDirection == Axis.horizontal - ? NextScrollIntent() - : NextChapterIntent(), - const SingleActivator(LogicalKeyboardKey.arrowUp): - scrollDirection == Axis.vertical - ? PreviousScrollIntent() - : NextChapterIntent(), - const SingleActivator(LogicalKeyboardKey.keyW): - scrollDirection == Axis.vertical - ? PreviousScrollIntent() - : NextChapterIntent(), - const SingleActivator(LogicalKeyboardKey.arrowDown): - scrollDirection == Axis.vertical - ? NextScrollIntent() - : PreviousChapterIntent(), - const SingleActivator(LogicalKeyboardKey.keyS): - scrollDirection == Axis.vertical - ? NextScrollIntent() - : PreviousChapterIntent(), - const SingleActivator(LogicalKeyboardKey.escape): HideQuickOpenIntent(), - }, - ); diff --git a/lib/src/constants/urls.dart b/lib/src/constants/urls.dart deleted file mode 100644 index f42fcee9..00000000 --- a/lib/src/constants/urls.dart +++ /dev/null @@ -1,23 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -enum AppUrls { - sorayomiGithubUrl(url: "https://github.com/Suwayomi/Tachidesk-Sorayomi"), - sorayomiLatestReleaseUrl( - url: "https://github.com/Suwayomi/Tachidesk-Sorayomi/releases/latest"), - tachideskHelp(url: "https://github.com/Suwayomi/Tachidesk-Server/wiki"), - tachideskReddit(url: "https://www.reddit.com/r/Tachidesk"), - sorayomiWhatsNew( - url: "https://github.com/Suwayomi/Tachidesk-Sorayomi/releases/tag/"), - sorayomiLatestReleaseApiUrl( - url: - "https://api.github.com/repos/Suwayomi/Tachidesk-Sorayomi/releases/latest", - ); - - const AppUrls({required this.url}); - - final String url; -} diff --git a/lib/src/features/about/data/about_repository.dart b/lib/src/features/about/data/about_repository.dart deleted file mode 100644 index 1739018c..00000000 --- a/lib/src/features/about/data/about_repository.dart +++ /dev/null @@ -1,79 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:dio/dio.dart'; -import 'package:package_info_plus/package_info_plus.dart'; -import 'package:pub_semver/pub_semver.dart'; -import 'package:riverpod_annotation/riverpod_annotation.dart'; - -import '../../../constants/endpoints.dart'; -import '../../../constants/urls.dart'; -import '../../../global_providers/global_providers.dart'; -import '../../../utils/extensions/custom_extensions.dart'; -import '../../../utils/storage/dio/dio_client.dart'; -import '../domain/about/about_model.dart'; -import '../domain/server_update/server_update_model.dart'; -import '../presentation/about/controllers/about_controller.dart'; - -part 'about_repository.g.dart'; - -class AboutRepository { - final DioClient dioClient; - final PackageInfo packageInfo; - AboutRepository({ - required this.dioClient, - required this.packageInfo, - }); - - Future getAbout({CancelToken? cancelToken}) async { - return (await dioClient.get( - SettingsUrl.about, - decoder: (e) => e is Map ? About.fromJson(e) : null, - cancelToken: cancelToken, - )) - .data; - } - - Future?> checkServerUpdate() async { - return (await dioClient.get, ServerUpdate>( - SettingsUrl.checkServerUpdate, - decoder: (e) => - e is Map ? ServerUpdate.fromJson(e) : ServerUpdate(), - )) - .data; - } - - Future> checkUpdate({CancelToken? cancelToken}) async { - final gitResponse = await AsyncValue.guard?>( - () async => (await dioClient.get( - AppUrls.sorayomiLatestReleaseApiUrl.url, - cancelToken: cancelToken, - )) - .data, - ); - return gitResponse.copyWithData( - (data) { - String? tag = data?["tag_name"]; - Version? latestReleaseBuildNumber = - tag != null ? Version.parse(tag) : null; - Version? packageBuildNumber = Version.parse(packageInfo.version); - if (latestReleaseBuildNumber != null && - latestReleaseBuildNumber - .compareTo(packageBuildNumber) - .isGreaterThan(0)) { - return latestReleaseBuildNumber; - } - return null; - }, - ); - } -} - -@riverpod -AboutRepository aboutRepository(ref) => AboutRepository( - dioClient: ref.watch(dioClientKeyProvider), - packageInfo: ref.watch(packageInfoProvider), - ); diff --git a/lib/src/features/about/data/about_repository.g.dart b/lib/src/features/about/data/about_repository.g.dart deleted file mode 100644 index 3a7570a0..00000000 --- a/lib/src/features/about/data/about_repository.g.dart +++ /dev/null @@ -1,25 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'about_repository.dart'; - -// ************************************************************************** -// RiverpodGenerator -// ************************************************************************** - -String _$aboutRepositoryHash() => r'216ca259fbc00fa61ce7260975ab8d3df1e282dc'; - -/// See also [aboutRepository]. -@ProviderFor(aboutRepository) -final aboutRepositoryProvider = AutoDisposeProvider.internal( - aboutRepository, - name: r'aboutRepositoryProvider', - debugGetCreateSourceHash: const bool.fromEnvironment('dart.vm.product') - ? null - : _$aboutRepositoryHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef AboutRepositoryRef = AutoDisposeProviderRef; -// ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member diff --git a/lib/src/features/about/domain/about/about_model.dart b/lib/src/features/about/domain/about/about_model.dart deleted file mode 100644 index 8eb5d6d6..00000000 --- a/lib/src/features/about/domain/about/about_model.dart +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:freezed_annotation/freezed_annotation.dart'; - -part 'about_model.freezed.dart'; -part 'about_model.g.dart'; - -@freezed -class About with _$About { - const factory About({ - String? name, - String? version, - String? revision, - String? buildType, - int? buildTime, - String? github, - String? discord, - }) = _About; - - factory About.fromJson(Map json) => _$AboutFromJson(json); -} diff --git a/lib/src/features/about/domain/about/about_model.freezed.dart b/lib/src/features/about/domain/about/about_model.freezed.dart deleted file mode 100644 index 5b0c0a4c..00000000 --- a/lib/src/features/about/domain/about/about_model.freezed.dart +++ /dev/null @@ -1,275 +0,0 @@ -// coverage:ignore-file -// GENERATED CODE - DO NOT MODIFY BY HAND -// ignore_for_file: type=lint -// ignore_for_file: unused_element, deprecated_member_use, deprecated_member_use_from_same_package, use_function_type_syntax_for_parameters, unnecessary_const, avoid_init_to_null, invalid_override_different_default_values_named, prefer_expression_function_bodies, annotate_overrides, invalid_annotation_target, unnecessary_question_mark - -part of 'about_model.dart'; - -// ************************************************************************** -// FreezedGenerator -// ************************************************************************** - -T _$identity(T value) => value; - -final _privateConstructorUsedError = UnsupportedError( - 'It seems like you constructed your class using `MyClass._()`. This constructor is only meant to be used by freezed and you are not supposed to need it nor use it.\nPlease check the documentation here for more information: https://github.com/rrousselGit/freezed#custom-getters-and-methods'); - -About _$AboutFromJson(Map json) { - return _About.fromJson(json); -} - -/// @nodoc -mixin _$About { - String? get name => throw _privateConstructorUsedError; - String? get version => throw _privateConstructorUsedError; - String? get revision => throw _privateConstructorUsedError; - String? get buildType => throw _privateConstructorUsedError; - int? get buildTime => throw _privateConstructorUsedError; - String? get github => throw _privateConstructorUsedError; - String? get discord => throw _privateConstructorUsedError; - - Map toJson() => throw _privateConstructorUsedError; - @JsonKey(ignore: true) - $AboutCopyWith get copyWith => throw _privateConstructorUsedError; -} - -/// @nodoc -abstract class $AboutCopyWith<$Res> { - factory $AboutCopyWith(About value, $Res Function(About) then) = - _$AboutCopyWithImpl<$Res, About>; - @useResult - $Res call( - {String? name, - String? version, - String? revision, - String? buildType, - int? buildTime, - String? github, - String? discord}); -} - -/// @nodoc -class _$AboutCopyWithImpl<$Res, $Val extends About> - implements $AboutCopyWith<$Res> { - _$AboutCopyWithImpl(this._value, this._then); - - // ignore: unused_field - final $Val _value; - // ignore: unused_field - final $Res Function($Val) _then; - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? name = freezed, - Object? version = freezed, - Object? revision = freezed, - Object? buildType = freezed, - Object? buildTime = freezed, - Object? github = freezed, - Object? discord = freezed, - }) { - return _then(_value.copyWith( - name: freezed == name - ? _value.name - : name // ignore: cast_nullable_to_non_nullable - as String?, - version: freezed == version - ? _value.version - : version // ignore: cast_nullable_to_non_nullable - as String?, - revision: freezed == revision - ? _value.revision - : revision // ignore: cast_nullable_to_non_nullable - as String?, - buildType: freezed == buildType - ? _value.buildType - : buildType // ignore: cast_nullable_to_non_nullable - as String?, - buildTime: freezed == buildTime - ? _value.buildTime - : buildTime // ignore: cast_nullable_to_non_nullable - as int?, - github: freezed == github - ? _value.github - : github // ignore: cast_nullable_to_non_nullable - as String?, - discord: freezed == discord - ? _value.discord - : discord // ignore: cast_nullable_to_non_nullable - as String?, - ) as $Val); - } -} - -/// @nodoc -abstract class _$$AboutImplCopyWith<$Res> implements $AboutCopyWith<$Res> { - factory _$$AboutImplCopyWith( - _$AboutImpl value, $Res Function(_$AboutImpl) then) = - __$$AboutImplCopyWithImpl<$Res>; - @override - @useResult - $Res call( - {String? name, - String? version, - String? revision, - String? buildType, - int? buildTime, - String? github, - String? discord}); -} - -/// @nodoc -class __$$AboutImplCopyWithImpl<$Res> - extends _$AboutCopyWithImpl<$Res, _$AboutImpl> - implements _$$AboutImplCopyWith<$Res> { - __$$AboutImplCopyWithImpl( - _$AboutImpl _value, $Res Function(_$AboutImpl) _then) - : super(_value, _then); - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? name = freezed, - Object? version = freezed, - Object? revision = freezed, - Object? buildType = freezed, - Object? buildTime = freezed, - Object? github = freezed, - Object? discord = freezed, - }) { - return _then(_$AboutImpl( - name: freezed == name - ? _value.name - : name // ignore: cast_nullable_to_non_nullable - as String?, - version: freezed == version - ? _value.version - : version // ignore: cast_nullable_to_non_nullable - as String?, - revision: freezed == revision - ? _value.revision - : revision // ignore: cast_nullable_to_non_nullable - as String?, - buildType: freezed == buildType - ? _value.buildType - : buildType // ignore: cast_nullable_to_non_nullable - as String?, - buildTime: freezed == buildTime - ? _value.buildTime - : buildTime // ignore: cast_nullable_to_non_nullable - as int?, - github: freezed == github - ? _value.github - : github // ignore: cast_nullable_to_non_nullable - as String?, - discord: freezed == discord - ? _value.discord - : discord // ignore: cast_nullable_to_non_nullable - as String?, - )); - } -} - -/// @nodoc -@JsonSerializable() -class _$AboutImpl implements _About { - const _$AboutImpl( - {this.name, - this.version, - this.revision, - this.buildType, - this.buildTime, - this.github, - this.discord}); - - factory _$AboutImpl.fromJson(Map json) => - _$$AboutImplFromJson(json); - - @override - final String? name; - @override - final String? version; - @override - final String? revision; - @override - final String? buildType; - @override - final int? buildTime; - @override - final String? github; - @override - final String? discord; - - @override - String toString() { - return 'About(name: $name, version: $version, revision: $revision, buildType: $buildType, buildTime: $buildTime, github: $github, discord: $discord)'; - } - - @override - bool operator ==(dynamic other) { - return identical(this, other) || - (other.runtimeType == runtimeType && - other is _$AboutImpl && - (identical(other.name, name) || other.name == name) && - (identical(other.version, version) || other.version == version) && - (identical(other.revision, revision) || - other.revision == revision) && - (identical(other.buildType, buildType) || - other.buildType == buildType) && - (identical(other.buildTime, buildTime) || - other.buildTime == buildTime) && - (identical(other.github, github) || other.github == github) && - (identical(other.discord, discord) || other.discord == discord)); - } - - @JsonKey(ignore: true) - @override - int get hashCode => Object.hash(runtimeType, name, version, revision, - buildType, buildTime, github, discord); - - @JsonKey(ignore: true) - @override - @pragma('vm:prefer-inline') - _$$AboutImplCopyWith<_$AboutImpl> get copyWith => - __$$AboutImplCopyWithImpl<_$AboutImpl>(this, _$identity); - - @override - Map toJson() { - return _$$AboutImplToJson( - this, - ); - } -} - -abstract class _About implements About { - const factory _About( - {final String? name, - final String? version, - final String? revision, - final String? buildType, - final int? buildTime, - final String? github, - final String? discord}) = _$AboutImpl; - - factory _About.fromJson(Map json) = _$AboutImpl.fromJson; - - @override - String? get name; - @override - String? get version; - @override - String? get revision; - @override - String? get buildType; - @override - int? get buildTime; - @override - String? get github; - @override - String? get discord; - @override - @JsonKey(ignore: true) - _$$AboutImplCopyWith<_$AboutImpl> get copyWith => - throw _privateConstructorUsedError; -} diff --git a/lib/src/features/about/domain/about/about_model.g.dart b/lib/src/features/about/domain/about/about_model.g.dart deleted file mode 100644 index 6d9940c5..00000000 --- a/lib/src/features/about/domain/about/about_model.g.dart +++ /dev/null @@ -1,28 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'about_model.dart'; - -// ************************************************************************** -// JsonSerializableGenerator -// ************************************************************************** - -_$AboutImpl _$$AboutImplFromJson(Map json) => _$AboutImpl( - name: json['name'] as String?, - version: json['version'] as String?, - revision: json['revision'] as String?, - buildType: json['buildType'] as String?, - buildTime: json['buildTime'] as int?, - github: json['github'] as String?, - discord: json['discord'] as String?, - ); - -Map _$$AboutImplToJson(_$AboutImpl instance) => - { - 'name': instance.name, - 'version': instance.version, - 'revision': instance.revision, - 'buildType': instance.buildType, - 'buildTime': instance.buildTime, - 'github': instance.github, - 'discord': instance.discord, - }; diff --git a/lib/src/features/about/domain/server_update/server_update_model.dart b/lib/src/features/about/domain/server_update/server_update_model.dart deleted file mode 100644 index ca243773..00000000 --- a/lib/src/features/about/domain/server_update/server_update_model.dart +++ /dev/null @@ -1,22 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:freezed_annotation/freezed_annotation.dart'; - -part 'server_update_model.freezed.dart'; -part 'server_update_model.g.dart'; - -@freezed -class ServerUpdate with _$ServerUpdate { - factory ServerUpdate({ - String? channel, - String? tag, - String? url, - }) = _ServerUpdate; - - factory ServerUpdate.fromJson(Map json) => - _$ServerUpdateFromJson(json); -} diff --git a/lib/src/features/about/domain/server_update/server_update_model.freezed.dart b/lib/src/features/about/domain/server_update/server_update_model.freezed.dart deleted file mode 100644 index ae824973..00000000 --- a/lib/src/features/about/domain/server_update/server_update_model.freezed.dart +++ /dev/null @@ -1,186 +0,0 @@ -// coverage:ignore-file -// GENERATED CODE - DO NOT MODIFY BY HAND -// ignore_for_file: type=lint -// ignore_for_file: unused_element, deprecated_member_use, deprecated_member_use_from_same_package, use_function_type_syntax_for_parameters, unnecessary_const, avoid_init_to_null, invalid_override_different_default_values_named, prefer_expression_function_bodies, annotate_overrides, invalid_annotation_target, unnecessary_question_mark - -part of 'server_update_model.dart'; - -// ************************************************************************** -// FreezedGenerator -// ************************************************************************** - -T _$identity(T value) => value; - -final _privateConstructorUsedError = UnsupportedError( - 'It seems like you constructed your class using `MyClass._()`. This constructor is only meant to be used by freezed and you are not supposed to need it nor use it.\nPlease check the documentation here for more information: https://github.com/rrousselGit/freezed#custom-getters-and-methods'); - -ServerUpdate _$ServerUpdateFromJson(Map json) { - return _ServerUpdate.fromJson(json); -} - -/// @nodoc -mixin _$ServerUpdate { - String? get channel => throw _privateConstructorUsedError; - String? get tag => throw _privateConstructorUsedError; - String? get url => throw _privateConstructorUsedError; - - Map toJson() => throw _privateConstructorUsedError; - @JsonKey(ignore: true) - $ServerUpdateCopyWith get copyWith => - throw _privateConstructorUsedError; -} - -/// @nodoc -abstract class $ServerUpdateCopyWith<$Res> { - factory $ServerUpdateCopyWith( - ServerUpdate value, $Res Function(ServerUpdate) then) = - _$ServerUpdateCopyWithImpl<$Res, ServerUpdate>; - @useResult - $Res call({String? channel, String? tag, String? url}); -} - -/// @nodoc -class _$ServerUpdateCopyWithImpl<$Res, $Val extends ServerUpdate> - implements $ServerUpdateCopyWith<$Res> { - _$ServerUpdateCopyWithImpl(this._value, this._then); - - // ignore: unused_field - final $Val _value; - // ignore: unused_field - final $Res Function($Val) _then; - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? channel = freezed, - Object? tag = freezed, - Object? url = freezed, - }) { - return _then(_value.copyWith( - channel: freezed == channel - ? _value.channel - : channel // ignore: cast_nullable_to_non_nullable - as String?, - tag: freezed == tag - ? _value.tag - : tag // ignore: cast_nullable_to_non_nullable - as String?, - url: freezed == url - ? _value.url - : url // ignore: cast_nullable_to_non_nullable - as String?, - ) as $Val); - } -} - -/// @nodoc -abstract class _$$ServerUpdateImplCopyWith<$Res> - implements $ServerUpdateCopyWith<$Res> { - factory _$$ServerUpdateImplCopyWith( - _$ServerUpdateImpl value, $Res Function(_$ServerUpdateImpl) then) = - __$$ServerUpdateImplCopyWithImpl<$Res>; - @override - @useResult - $Res call({String? channel, String? tag, String? url}); -} - -/// @nodoc -class __$$ServerUpdateImplCopyWithImpl<$Res> - extends _$ServerUpdateCopyWithImpl<$Res, _$ServerUpdateImpl> - implements _$$ServerUpdateImplCopyWith<$Res> { - __$$ServerUpdateImplCopyWithImpl( - _$ServerUpdateImpl _value, $Res Function(_$ServerUpdateImpl) _then) - : super(_value, _then); - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? channel = freezed, - Object? tag = freezed, - Object? url = freezed, - }) { - return _then(_$ServerUpdateImpl( - channel: freezed == channel - ? _value.channel - : channel // ignore: cast_nullable_to_non_nullable - as String?, - tag: freezed == tag - ? _value.tag - : tag // ignore: cast_nullable_to_non_nullable - as String?, - url: freezed == url - ? _value.url - : url // ignore: cast_nullable_to_non_nullable - as String?, - )); - } -} - -/// @nodoc -@JsonSerializable() -class _$ServerUpdateImpl implements _ServerUpdate { - _$ServerUpdateImpl({this.channel, this.tag, this.url}); - - factory _$ServerUpdateImpl.fromJson(Map json) => - _$$ServerUpdateImplFromJson(json); - - @override - final String? channel; - @override - final String? tag; - @override - final String? url; - - @override - String toString() { - return 'ServerUpdate(channel: $channel, tag: $tag, url: $url)'; - } - - @override - bool operator ==(dynamic other) { - return identical(this, other) || - (other.runtimeType == runtimeType && - other is _$ServerUpdateImpl && - (identical(other.channel, channel) || other.channel == channel) && - (identical(other.tag, tag) || other.tag == tag) && - (identical(other.url, url) || other.url == url)); - } - - @JsonKey(ignore: true) - @override - int get hashCode => Object.hash(runtimeType, channel, tag, url); - - @JsonKey(ignore: true) - @override - @pragma('vm:prefer-inline') - _$$ServerUpdateImplCopyWith<_$ServerUpdateImpl> get copyWith => - __$$ServerUpdateImplCopyWithImpl<_$ServerUpdateImpl>(this, _$identity); - - @override - Map toJson() { - return _$$ServerUpdateImplToJson( - this, - ); - } -} - -abstract class _ServerUpdate implements ServerUpdate { - factory _ServerUpdate( - {final String? channel, - final String? tag, - final String? url}) = _$ServerUpdateImpl; - - factory _ServerUpdate.fromJson(Map json) = - _$ServerUpdateImpl.fromJson; - - @override - String? get channel; - @override - String? get tag; - @override - String? get url; - @override - @JsonKey(ignore: true) - _$$ServerUpdateImplCopyWith<_$ServerUpdateImpl> get copyWith => - throw _privateConstructorUsedError; -} diff --git a/lib/src/features/about/domain/server_update/server_update_model.g.dart b/lib/src/features/about/domain/server_update/server_update_model.g.dart deleted file mode 100644 index e1ca2827..00000000 --- a/lib/src/features/about/domain/server_update/server_update_model.g.dart +++ /dev/null @@ -1,21 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'server_update_model.dart'; - -// ************************************************************************** -// JsonSerializableGenerator -// ************************************************************************** - -_$ServerUpdateImpl _$$ServerUpdateImplFromJson(Map json) => - _$ServerUpdateImpl( - channel: json['channel'] as String?, - tag: json['tag'] as String?, - url: json['url'] as String?, - ); - -Map _$$ServerUpdateImplToJson(_$ServerUpdateImpl instance) => - { - 'channel': instance.channel, - 'tag': instance.tag, - 'url': instance.url, - }; diff --git a/lib/src/features/about/presentation/about/about_screen.dart b/lib/src/features/about/presentation/about/about_screen.dart deleted file mode 100644 index 061fbbb0..00000000 --- a/lib/src/features/about/presentation/about/about_screen.dart +++ /dev/null @@ -1,222 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/foundation.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter_hooks/flutter_hooks.dart'; -import 'package:font_awesome_flutter/font_awesome_flutter.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; -import 'package:pub_semver/pub_semver.dart'; - -import '../../../../constants/app_sizes.dart'; -import '../../../../constants/gen/assets.gen.dart'; -import '../../../../constants/urls.dart'; - -import '../../../../utils/extensions/custom_extensions.dart'; -import '../../../../utils/launch_url_in_web.dart'; -import '../../../../utils/misc/toast/toast.dart'; -import '../../data/about_repository.dart'; -import '../../domain/about/about_model.dart'; -import '../../domain/server_update/server_update_model.dart'; -import 'controllers/about_controller.dart'; -import 'widget/app_update_dialog.dart'; -import 'widget/clipboard_list_tile.dart'; -import 'widget/media_launch_button.dart'; - -class AboutScreen extends HookConsumerWidget { - const AboutScreen({super.key}); - - void checkForServerUpdate({ - required BuildContext context, - required String serverVer, - required About about, - required Future?> Function() updateCallback, - required Toast toast, - }) { - toast.show(context.l10n!.searchingForUpdates); - AsyncValue.guard(updateCallback).then( - (value) { - toast.close(); - try { - value.whenOrNull( - data: (data) { - if (data == null) return; - final newUpdate = data.firstWhere( - (e) => e.channel == about.buildType, - orElse: () => ServerUpdate(), - ); - final currentVer = Version.parse(serverVer.substring(1)); - final newVer = Version.parse(newUpdate.tag?.substring(1) ?? ""); - if ((newVer.compareTo(currentVer)).isGreaterThan(0)) { - appUpdateDialog( - title: about.name ?? context.l10n!.server, - newRelease: "${newVer.canonicalizedVersion}" - " (${newUpdate.channel})", - context: context, - toast: toast, - url: newUpdate.url, - ); - } else { - toast.show(context.l10n!.noUpdatesAvailable); - } - }, - error: (error, stackTrace) => value.showToastOnError(toast), - ); - } catch (e) { - toast.showError( - kDebugMode ? e.toString() : context.l10n!.errorSomethingWentWrong, - ); - } - }, - ); - } - - Future checkForUpdate({ - required String? title, - required BuildContext context, - required Future> Function() updateCallback, - required Toast toast, - }) async { - toast.show(context.l10n!.searchingForUpdates); - final result = await updateCallback(); - if (context.mounted) return; - toast.close(); - result.whenOrNull( - data: (version) { - if (version != null) { - appUpdateDialog( - title: title ?? context.l10n!.appTitle, - newRelease: "v${version.canonicalizedVersion}", - context: context, - toast: toast, - ); - } else { - toast.show(context.l10n!.noUpdatesAvailable); - } - }, - error: (error, stackTrace) => result.showToastOnError(toast), - ); - } - - @override - Widget build(BuildContext context, WidgetRef ref) { - final toast = ref.watch(toastProvider(context)); - final aboutAsync = ref.watch(aboutProvider); - final about = aboutAsync.valueOrNull; - final serverVer = about?.buildType == "Stable" - ? about?.version - : "${about?.version}-${about?.revision}"; - final packageInfo = ref.watch(packageInfoProvider); - - useEffect(() { - aboutAsync.showToastOnError(toast, withMicrotask: true); - return; - }, [aboutAsync.valueOrNull]); - - return Scaffold( - appBar: AppBar(title: Text(context.l10n!.about)), - body: RefreshIndicator( - onRefresh: () => ref.refresh(aboutProvider.future), - child: ListView( - children: [ - ImageIcon( - AssetImage(Assets.icons.darkIcon.path), - size: context.height * .2, - ), - const Divider(), - ClipboardListTile( - title: context.l10n!.client, - value: packageInfo.appName, - ), - ClipboardListTile( - title: context.l10n!.clientVersion, - value: "v${packageInfo.version}", - ), - ListTile( - title: Text(context.l10n!.whatsNew), - onTap: () async { - final url = AppUrls.sorayomiWhatsNew.url + packageInfo.version; - await launchUrlInWeb(context, url, toast); - }, - ), - ListTile( - title: Text(context.l10n!.checkForUpdates), - onTap: () => checkForUpdate( - title: packageInfo.appName, - context: context, - updateCallback: ref.read(aboutRepositoryProvider).checkUpdate, - toast: toast, - ), - ), - if (about != null) ...[ - const Divider(), - ClipboardListTile( - title: context.l10n!.server, - value: about.name, - ), - ClipboardListTile( - title: context.l10n!.channel, - value: about.buildType, - ), - if (serverVer.isNotBlank) - ClipboardListTile( - title: context.l10n!.serverVersion, - value: serverVer, - ), - ClipboardListTile( - title: context.l10n!.buildTime, - value: (about.buildTime).isNull - ? null - : DateTime.fromMillisecondsSinceEpoch( - (about.buildTime.getValueOnNullOrNegative()) * 1000, - ).toDateString, - ), - if (serverVer.isNotBlank) - ListTile( - title: Text(context.l10n!.checkForServerUpdates), - onTap: () => checkForServerUpdate( - context: context, - serverVer: serverVer ?? "", - about: about, - updateCallback: - ref.read(aboutRepositoryProvider).checkServerUpdate, - toast: toast, - ), - ), - ], - Padding( - padding: KEdgeInsets.a8.size, - child: Wrap( - alignment: WrapAlignment.spaceEvenly, - children: [ - MediaLaunchButton( - title: "${context.l10n!.gitHub} ", - iconData: FontAwesomeIcons.github, - url: AppUrls.sorayomiGithubUrl.url, - toast: toast, - ), - if ((about?.discord).isNotBlank) - MediaLaunchButton( - title: context.l10n!.discord, - iconData: FontAwesomeIcons.discord, - url: about!.discord!, - toast: toast, - ), - MediaLaunchButton( - title: context.l10n!.reddit, - iconData: FontAwesomeIcons.reddit, - url: AppUrls.tachideskReddit.url, - toast: toast, - ), - ], - ), - ), - ], - ), - ), - ); - } -} diff --git a/lib/src/features/about/presentation/about/controllers/about_controller.dart b/lib/src/features/about/presentation/about/controllers/about_controller.dart deleted file mode 100644 index cfc547a6..00000000 --- a/lib/src/features/about/presentation/about/controllers/about_controller.dart +++ /dev/null @@ -1,27 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:dio/dio.dart'; -import 'package:package_info_plus/package_info_plus.dart'; -import 'package:riverpod_annotation/riverpod_annotation.dart'; - -import '../../../data/about_repository.dart'; -import '../../../domain/about/about_model.dart'; - -part 'about_controller.g.dart'; - -@riverpod -Future about(AboutRef ref) async { - final token = CancelToken(); - ref.onDispose(token.cancel); - final result = - await ref.watch(aboutRepositoryProvider).getAbout(cancelToken: token); - ref.keepAlive(); - return result; -} - -@riverpod -PackageInfo packageInfo(ref) => throw UnimplementedError(); diff --git a/lib/src/features/about/presentation/about/controllers/about_controller.g.dart b/lib/src/features/about/presentation/about/controllers/about_controller.g.dart deleted file mode 100644 index d9ba08f0..00000000 --- a/lib/src/features/about/presentation/about/controllers/about_controller.g.dart +++ /dev/null @@ -1,38 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'about_controller.dart'; - -// ************************************************************************** -// RiverpodGenerator -// ************************************************************************** - -String _$aboutHash() => r'71e0d6115e3d5baeb6cd30cea233be2cba2142bb'; - -/// See also [about]. -@ProviderFor(about) -final aboutProvider = AutoDisposeFutureProvider.internal( - about, - name: r'aboutProvider', - debugGetCreateSourceHash: - const bool.fromEnvironment('dart.vm.product') ? null : _$aboutHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef AboutRef = AutoDisposeFutureProviderRef; -String _$packageInfoHash() => r'a5025c8498b8f2eacf55450228619ff1477adc05'; - -/// See also [packageInfo]. -@ProviderFor(packageInfo) -final packageInfoProvider = AutoDisposeProvider.internal( - packageInfo, - name: r'packageInfoProvider', - debugGetCreateSourceHash: - const bool.fromEnvironment('dart.vm.product') ? null : _$packageInfoHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef PackageInfoRef = AutoDisposeProviderRef; -// ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member diff --git a/lib/src/features/about/presentation/about/widget/app_update_dialog.dart b/lib/src/features/about/presentation/about/widget/app_update_dialog.dart deleted file mode 100644 index e9c8a681..00000000 --- a/lib/src/features/about/presentation/about/widget/app_update_dialog.dart +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:font_awesome_flutter/font_awesome_flutter.dart'; -import 'package:go_router/go_router.dart'; - -import '../../../../../constants/urls.dart'; - -import '../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../../utils/launch_url_in_web.dart'; -import '../../../../../utils/misc/toast/toast.dart'; - -void appUpdateDialog({ - required String title, - required String newRelease, - required BuildContext context, - required Toast toast, - String? url, -}) => - showDialog( - context: context, - builder: (_) { - return AlertDialog( - title: Text(context.l10n!.newUpdateAvailable), - content: Text(context.l10n!.versionAvailable(title, newRelease)), - actions: [ - TextButton( - onPressed: () => context.pop(), - child: Text(context.l10n!.close), - ), - ElevatedButton.icon( - onPressed: () { - launchUrlInWeb(context, - url ?? AppUrls.sorayomiLatestReleaseUrl.url, toast); - context.pop(); - }, - icon: const Icon(FontAwesomeIcons.github), - label: Text(context.l10n!.gitHub), - ), - ], - ); - }, - ); diff --git a/lib/src/features/about/presentation/about/widget/clipboard_list_tile.dart b/lib/src/features/about/presentation/about/widget/clipboard_list_tile.dart deleted file mode 100644 index 335ca56a..00000000 --- a/lib/src/features/about/presentation/about/widget/clipboard_list_tile.dart +++ /dev/null @@ -1,40 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:flutter/services.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../../utils/misc/toast/toast.dart'; - -class ClipboardListTile extends ConsumerWidget { - const ClipboardListTile({ - super.key, - required this.title, - required this.value, - }); - final String title; - final String? value; - @override - Widget build(BuildContext context, WidgetRef ref) { - return ListTile( - title: Text(title), - subtitle: value.isNotBlank ? Text(value!) : null, - onTap: value.isNotBlank - ? () { - final msg = "$title: $value"; - Clipboard.setData( - ClipboardData(text: msg), - ); - ref - .read(toastProvider(context)) - .instantShow(context.l10n!.copyMsg(msg)); - } - : null, - ); - } -} diff --git a/lib/src/features/about/presentation/about/widget/media_launch_button.dart b/lib/src/features/about/presentation/about/widget/media_launch_button.dart deleted file mode 100644 index 59439074..00000000 --- a/lib/src/features/about/presentation/about/widget/media_launch_button.dart +++ /dev/null @@ -1,43 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; - -import '../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../../utils/launch_url_in_web.dart'; -import '../../../../../utils/misc/toast/toast.dart'; - -class MediaLaunchButton extends StatelessWidget { - const MediaLaunchButton({ - super.key, - required this.toast, - required this.title, - required this.iconData, - required this.url, - }); - - final Toast toast; - final String title; - final IconData iconData; - final String url; - - @override - Widget build(BuildContext context) { - return url.isNotBlank - ? context.isSmallTabletOrLess - ? IconButton( - tooltip: title, - onPressed: () => launchUrlInWeb(context, url, toast), - icon: Icon(iconData), - ) - : TextButton.icon( - label: Text(title), - onPressed: () => launchUrlInWeb(context, url, toast), - icon: Icon(iconData), - ) - : const SizedBox.shrink(); - } -} diff --git a/lib/src/features/browse_center/data/extension_repository/extension_repository.dart b/lib/src/features/browse_center/data/extension_repository/extension_repository.dart deleted file mode 100644 index fdf1e324..00000000 --- a/lib/src/features/browse_center/data/extension_repository/extension_repository.dart +++ /dev/null @@ -1,92 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:dio/dio.dart'; - -import 'package:file_picker/file_picker.dart'; -import 'package:flutter/material.dart'; -import 'package:riverpod_annotation/riverpod_annotation.dart'; - -import '../../../../constants/endpoints.dart'; -import '../../../../global_providers/global_providers.dart'; - -import '../../../../utils/extensions/custom_extensions.dart'; -import '../../../../utils/storage/dio/dio_client.dart'; -import '../../domain/extension/extension_model.dart'; - -part 'extension_repository.g.dart'; - -class ExtensionRepository { - final DioClient dioClient; - - ExtensionRepository(this.dioClient); - - Future installExtensionFile( - BuildContext context, { - PlatformFile? file, - CancelToken? cancelToken, - }) async { - if ((file?.path).isBlank) { - throw context.l10n!.errorFilePick; - } - if (!(file!.name.endsWith('.apk'))) { - throw context.l10n!.errorFilePickUnknownExtension(".apk"); - } - return (file.path).isNotBlank - ? (await dioClient.post( - ExtensionUrl.installFile, - data: FormData.fromMap({ - 'file': MultipartFile.fromFileSync( - file.path!, - filename: file.name, - ) - }), - cancelToken: cancelToken, - )) - .data - : null; - } - - Future installExtension( - String pkgName, { - CancelToken? cancelToken, - }) => - dioClient.get( - ExtensionUrl.installPkg(pkgName), - cancelToken: cancelToken, - ); - - Future uninstallExtension( - String pkgName, { - CancelToken? cancelToken, - }) => - dioClient.get( - ExtensionUrl.uninstallPkg(pkgName), - cancelToken: cancelToken, - ); - - Future updateExtension( - String pkgName, { - CancelToken? cancelToken, - }) => - dioClient.get( - ExtensionUrl.updatePkg(pkgName), - cancelToken: cancelToken, - ); - - Future?> getExtensionList({CancelToken? cancelToken}) async => - (await dioClient.get, Extension>( - ExtensionUrl.list, - decoder: (e) => - e is Map ? Extension.fromJson(e) : Extension(), - cancelToken: cancelToken, - )) - .data; -} - -@riverpod -ExtensionRepository extensionRepository(ExtensionRepositoryRef ref) => - ExtensionRepository(ref.watch(dioClientKeyProvider)); diff --git a/lib/src/features/browse_center/data/extension_repository/extension_repository.g.dart b/lib/src/features/browse_center/data/extension_repository/extension_repository.g.dart deleted file mode 100644 index 20b89aa4..00000000 --- a/lib/src/features/browse_center/data/extension_repository/extension_repository.g.dart +++ /dev/null @@ -1,27 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'extension_repository.dart'; - -// ************************************************************************** -// RiverpodGenerator -// ************************************************************************** - -String _$extensionRepositoryHash() => - r'd5be612415075dc1ca3ac53de932d9ec4ee92ff2'; - -/// See also [extensionRepository]. -@ProviderFor(extensionRepository) -final extensionRepositoryProvider = - AutoDisposeProvider.internal( - extensionRepository, - name: r'extensionRepositoryProvider', - debugGetCreateSourceHash: const bool.fromEnvironment('dart.vm.product') - ? null - : _$extensionRepositoryHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef ExtensionRepositoryRef = AutoDisposeProviderRef; -// ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member diff --git a/lib/src/features/browse_center/data/source_repository/source_repository.dart b/lib/src/features/browse_center/data/source_repository/source_repository.dart deleted file mode 100644 index bdfe59ec..00000000 --- a/lib/src/features/browse_center/data/source_repository/source_repository.dart +++ /dev/null @@ -1,119 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:dio/dio.dart'; -import 'package:riverpod_annotation/riverpod_annotation.dart'; - -import '../../../../constants/endpoints.dart'; -import '../../../../constants/enum.dart'; -import '../../../../global_providers/global_providers.dart'; -import '../../../../utils/storage/dio/dio_client.dart'; -import '../../domain/filter/filter_model.dart'; -import '../../domain/manga_page/manga_page.dart'; -import '../../domain/source/source_model.dart'; -import '../../domain/source_preference/source_preference.dart'; - -part 'source_repository.g.dart'; - -class SourceRepository { - final DioClient dioClient; - - SourceRepository(this.dioClient); - - Future?> getSourceList({CancelToken? cancelToken}) async => - (await dioClient.get, Source>( - SourceUrl.sourceList, - decoder: (e) => - e is Map ? Source.fromJson(e) : Source(), - cancelToken: cancelToken, - )) - .data; - - Future getMangaList({ - required String sourceId, - required SourceType sourceType, - required int pageNum, - String? query, - List>? filter, - CancelToken? cancelToken, - }) async { - if (sourceType != SourceType.filter) { - return (await dioClient.get( - SourceUrl.getMangaList(sourceId, sourceType.name, pageNum), - decoder: (e) => - e is Map ? MangaPage.fromJson(e) : null, - cancelToken: cancelToken, - )) - .data; - } else { - return (await dioClient.post( - SourceUrl.quickSearch(sourceId), - queryParameters: { - "pageNum": pageNum, - }, - data: { - "searchTerm": query ?? "", - "filter": [...?filter], - }, - decoder: (e) => - e is Map ? MangaPage.fromJson(e) : null, - cancelToken: cancelToken, - )) - .data; - } - } - - Future?> getFilterList({ - required String sourceId, - CancelToken? cancelToken, - }) async => - (await dioClient.get, Filter>( - SourceUrl.filters(sourceId), - decoder: (e) => - e is Map ? Filter.fromJson(e) : Filter(), - cancelToken: cancelToken, - )) - .data; - - Future getSource( - {required String sourceId, CancelToken? cancelToken}) async => - (await dioClient.get( - SourceUrl.withId(sourceId), - decoder: (e) => - e is Map ? Source.fromJson(e) : Source(), - cancelToken: cancelToken, - )) - .data; - - Future?> getPreferenceList({ - required String sourceId, - CancelToken? cancelToken, - }) async => - (await dioClient.get, SourcePreference>( - SourceUrl.preferences(sourceId), - decoder: (e) => e is Map - ? SourcePreference.fromJson(e) - : SourcePreference(), - cancelToken: cancelToken, - )) - .data; - - Future updatePreferenceList({ - required String sourceId, - CancelToken? cancelToken, - Map? preference, - }) async => - (await dioClient.post( - SourceUrl.preferences(sourceId), - data: preference, - cancelToken: cancelToken, - )) - .data; -} - -@riverpod -SourceRepository sourceRepository(ref) => - SourceRepository(ref.watch(dioClientKeyProvider)); diff --git a/lib/src/features/browse_center/data/source_repository/source_repository.g.dart b/lib/src/features/browse_center/data/source_repository/source_repository.g.dart deleted file mode 100644 index dcda92c6..00000000 --- a/lib/src/features/browse_center/data/source_repository/source_repository.g.dart +++ /dev/null @@ -1,25 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'source_repository.dart'; - -// ************************************************************************** -// RiverpodGenerator -// ************************************************************************** - -String _$sourceRepositoryHash() => r'4d2ee52c078c89e88a9d8e8b70cc40cff251994e'; - -/// See also [sourceRepository]. -@ProviderFor(sourceRepository) -final sourceRepositoryProvider = AutoDisposeProvider.internal( - sourceRepository, - name: r'sourceRepositoryProvider', - debugGetCreateSourceHash: const bool.fromEnvironment('dart.vm.product') - ? null - : _$sourceRepositoryHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef SourceRepositoryRef = AutoDisposeProviderRef; -// ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member diff --git a/lib/src/features/browse_center/domain/extension/extension_model.dart b/lib/src/features/browse_center/domain/extension/extension_model.dart deleted file mode 100644 index 7ecf60bb..00000000 --- a/lib/src/features/browse_center/domain/extension/extension_model.dart +++ /dev/null @@ -1,37 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:freezed_annotation/freezed_annotation.dart'; - -import '../../../../utils/freezed_converters/language_json_converter.dart'; -import '../language/language_model.dart'; - -part 'extension_model.freezed.dart'; -part 'extension_model.g.dart'; - -@freezed -class Extension with _$Extension { - factory Extension({ - String? apkName, - bool? hasUpdate, - String? iconUrl, - bool? installed, - bool? isNsfw, - @JsonKey( - fromJson: LanguageJsonConverter.fromJson, - toJson: LanguageJsonConverter.toJson, - ) - Language? lang, - String? name, - bool? obsolete, - String? pkgName, - int? versionCode, - String? versionName, - }) = _Extension; - - factory Extension.fromJson(Map json) => - _$ExtensionFromJson(json); -} diff --git a/lib/src/features/browse_center/domain/extension/extension_model.freezed.dart b/lib/src/features/browse_center/domain/extension/extension_model.freezed.dart deleted file mode 100644 index 036d2a53..00000000 --- a/lib/src/features/browse_center/domain/extension/extension_model.freezed.dart +++ /dev/null @@ -1,409 +0,0 @@ -// coverage:ignore-file -// GENERATED CODE - DO NOT MODIFY BY HAND -// ignore_for_file: type=lint -// ignore_for_file: unused_element, deprecated_member_use, deprecated_member_use_from_same_package, use_function_type_syntax_for_parameters, unnecessary_const, avoid_init_to_null, invalid_override_different_default_values_named, prefer_expression_function_bodies, annotate_overrides, invalid_annotation_target, unnecessary_question_mark - -part of 'extension_model.dart'; - -// ************************************************************************** -// FreezedGenerator -// ************************************************************************** - -T _$identity(T value) => value; - -final _privateConstructorUsedError = UnsupportedError( - 'It seems like you constructed your class using `MyClass._()`. This constructor is only meant to be used by freezed and you are not supposed to need it nor use it.\nPlease check the documentation here for more information: https://github.com/rrousselGit/freezed#custom-getters-and-methods'); - -Extension _$ExtensionFromJson(Map json) { - return _Extension.fromJson(json); -} - -/// @nodoc -mixin _$Extension { - String? get apkName => throw _privateConstructorUsedError; - bool? get hasUpdate => throw _privateConstructorUsedError; - String? get iconUrl => throw _privateConstructorUsedError; - bool? get installed => throw _privateConstructorUsedError; - bool? get isNsfw => throw _privateConstructorUsedError; - @JsonKey( - fromJson: LanguageJsonConverter.fromJson, - toJson: LanguageJsonConverter.toJson) - Language? get lang => throw _privateConstructorUsedError; - String? get name => throw _privateConstructorUsedError; - bool? get obsolete => throw _privateConstructorUsedError; - String? get pkgName => throw _privateConstructorUsedError; - int? get versionCode => throw _privateConstructorUsedError; - String? get versionName => throw _privateConstructorUsedError; - - Map toJson() => throw _privateConstructorUsedError; - @JsonKey(ignore: true) - $ExtensionCopyWith get copyWith => - throw _privateConstructorUsedError; -} - -/// @nodoc -abstract class $ExtensionCopyWith<$Res> { - factory $ExtensionCopyWith(Extension value, $Res Function(Extension) then) = - _$ExtensionCopyWithImpl<$Res, Extension>; - @useResult - $Res call( - {String? apkName, - bool? hasUpdate, - String? iconUrl, - bool? installed, - bool? isNsfw, - @JsonKey( - fromJson: LanguageJsonConverter.fromJson, - toJson: LanguageJsonConverter.toJson) - Language? lang, - String? name, - bool? obsolete, - String? pkgName, - int? versionCode, - String? versionName}); - - $LanguageCopyWith<$Res>? get lang; -} - -/// @nodoc -class _$ExtensionCopyWithImpl<$Res, $Val extends Extension> - implements $ExtensionCopyWith<$Res> { - _$ExtensionCopyWithImpl(this._value, this._then); - - // ignore: unused_field - final $Val _value; - // ignore: unused_field - final $Res Function($Val) _then; - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? apkName = freezed, - Object? hasUpdate = freezed, - Object? iconUrl = freezed, - Object? installed = freezed, - Object? isNsfw = freezed, - Object? lang = freezed, - Object? name = freezed, - Object? obsolete = freezed, - Object? pkgName = freezed, - Object? versionCode = freezed, - Object? versionName = freezed, - }) { - return _then(_value.copyWith( - apkName: freezed == apkName - ? _value.apkName - : apkName // ignore: cast_nullable_to_non_nullable - as String?, - hasUpdate: freezed == hasUpdate - ? _value.hasUpdate - : hasUpdate // ignore: cast_nullable_to_non_nullable - as bool?, - iconUrl: freezed == iconUrl - ? _value.iconUrl - : iconUrl // ignore: cast_nullable_to_non_nullable - as String?, - installed: freezed == installed - ? _value.installed - : installed // ignore: cast_nullable_to_non_nullable - as bool?, - isNsfw: freezed == isNsfw - ? _value.isNsfw - : isNsfw // ignore: cast_nullable_to_non_nullable - as bool?, - lang: freezed == lang - ? _value.lang - : lang // ignore: cast_nullable_to_non_nullable - as Language?, - name: freezed == name - ? _value.name - : name // ignore: cast_nullable_to_non_nullable - as String?, - obsolete: freezed == obsolete - ? _value.obsolete - : obsolete // ignore: cast_nullable_to_non_nullable - as bool?, - pkgName: freezed == pkgName - ? _value.pkgName - : pkgName // ignore: cast_nullable_to_non_nullable - as String?, - versionCode: freezed == versionCode - ? _value.versionCode - : versionCode // ignore: cast_nullable_to_non_nullable - as int?, - versionName: freezed == versionName - ? _value.versionName - : versionName // ignore: cast_nullable_to_non_nullable - as String?, - ) as $Val); - } - - @override - @pragma('vm:prefer-inline') - $LanguageCopyWith<$Res>? get lang { - if (_value.lang == null) { - return null; - } - - return $LanguageCopyWith<$Res>(_value.lang!, (value) { - return _then(_value.copyWith(lang: value) as $Val); - }); - } -} - -/// @nodoc -abstract class _$$ExtensionImplCopyWith<$Res> - implements $ExtensionCopyWith<$Res> { - factory _$$ExtensionImplCopyWith( - _$ExtensionImpl value, $Res Function(_$ExtensionImpl) then) = - __$$ExtensionImplCopyWithImpl<$Res>; - @override - @useResult - $Res call( - {String? apkName, - bool? hasUpdate, - String? iconUrl, - bool? installed, - bool? isNsfw, - @JsonKey( - fromJson: LanguageJsonConverter.fromJson, - toJson: LanguageJsonConverter.toJson) - Language? lang, - String? name, - bool? obsolete, - String? pkgName, - int? versionCode, - String? versionName}); - - @override - $LanguageCopyWith<$Res>? get lang; -} - -/// @nodoc -class __$$ExtensionImplCopyWithImpl<$Res> - extends _$ExtensionCopyWithImpl<$Res, _$ExtensionImpl> - implements _$$ExtensionImplCopyWith<$Res> { - __$$ExtensionImplCopyWithImpl( - _$ExtensionImpl _value, $Res Function(_$ExtensionImpl) _then) - : super(_value, _then); - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? apkName = freezed, - Object? hasUpdate = freezed, - Object? iconUrl = freezed, - Object? installed = freezed, - Object? isNsfw = freezed, - Object? lang = freezed, - Object? name = freezed, - Object? obsolete = freezed, - Object? pkgName = freezed, - Object? versionCode = freezed, - Object? versionName = freezed, - }) { - return _then(_$ExtensionImpl( - apkName: freezed == apkName - ? _value.apkName - : apkName // ignore: cast_nullable_to_non_nullable - as String?, - hasUpdate: freezed == hasUpdate - ? _value.hasUpdate - : hasUpdate // ignore: cast_nullable_to_non_nullable - as bool?, - iconUrl: freezed == iconUrl - ? _value.iconUrl - : iconUrl // ignore: cast_nullable_to_non_nullable - as String?, - installed: freezed == installed - ? _value.installed - : installed // ignore: cast_nullable_to_non_nullable - as bool?, - isNsfw: freezed == isNsfw - ? _value.isNsfw - : isNsfw // ignore: cast_nullable_to_non_nullable - as bool?, - lang: freezed == lang - ? _value.lang - : lang // ignore: cast_nullable_to_non_nullable - as Language?, - name: freezed == name - ? _value.name - : name // ignore: cast_nullable_to_non_nullable - as String?, - obsolete: freezed == obsolete - ? _value.obsolete - : obsolete // ignore: cast_nullable_to_non_nullable - as bool?, - pkgName: freezed == pkgName - ? _value.pkgName - : pkgName // ignore: cast_nullable_to_non_nullable - as String?, - versionCode: freezed == versionCode - ? _value.versionCode - : versionCode // ignore: cast_nullable_to_non_nullable - as int?, - versionName: freezed == versionName - ? _value.versionName - : versionName // ignore: cast_nullable_to_non_nullable - as String?, - )); - } -} - -/// @nodoc -@JsonSerializable() -class _$ExtensionImpl implements _Extension { - _$ExtensionImpl( - {this.apkName, - this.hasUpdate, - this.iconUrl, - this.installed, - this.isNsfw, - @JsonKey( - fromJson: LanguageJsonConverter.fromJson, - toJson: LanguageJsonConverter.toJson) - this.lang, - this.name, - this.obsolete, - this.pkgName, - this.versionCode, - this.versionName}); - - factory _$ExtensionImpl.fromJson(Map json) => - _$$ExtensionImplFromJson(json); - - @override - final String? apkName; - @override - final bool? hasUpdate; - @override - final String? iconUrl; - @override - final bool? installed; - @override - final bool? isNsfw; - @override - @JsonKey( - fromJson: LanguageJsonConverter.fromJson, - toJson: LanguageJsonConverter.toJson) - final Language? lang; - @override - final String? name; - @override - final bool? obsolete; - @override - final String? pkgName; - @override - final int? versionCode; - @override - final String? versionName; - - @override - String toString() { - return 'Extension(apkName: $apkName, hasUpdate: $hasUpdate, iconUrl: $iconUrl, installed: $installed, isNsfw: $isNsfw, lang: $lang, name: $name, obsolete: $obsolete, pkgName: $pkgName, versionCode: $versionCode, versionName: $versionName)'; - } - - @override - bool operator ==(dynamic other) { - return identical(this, other) || - (other.runtimeType == runtimeType && - other is _$ExtensionImpl && - (identical(other.apkName, apkName) || other.apkName == apkName) && - (identical(other.hasUpdate, hasUpdate) || - other.hasUpdate == hasUpdate) && - (identical(other.iconUrl, iconUrl) || other.iconUrl == iconUrl) && - (identical(other.installed, installed) || - other.installed == installed) && - (identical(other.isNsfw, isNsfw) || other.isNsfw == isNsfw) && - (identical(other.lang, lang) || other.lang == lang) && - (identical(other.name, name) || other.name == name) && - (identical(other.obsolete, obsolete) || - other.obsolete == obsolete) && - (identical(other.pkgName, pkgName) || other.pkgName == pkgName) && - (identical(other.versionCode, versionCode) || - other.versionCode == versionCode) && - (identical(other.versionName, versionName) || - other.versionName == versionName)); - } - - @JsonKey(ignore: true) - @override - int get hashCode => Object.hash( - runtimeType, - apkName, - hasUpdate, - iconUrl, - installed, - isNsfw, - lang, - name, - obsolete, - pkgName, - versionCode, - versionName); - - @JsonKey(ignore: true) - @override - @pragma('vm:prefer-inline') - _$$ExtensionImplCopyWith<_$ExtensionImpl> get copyWith => - __$$ExtensionImplCopyWithImpl<_$ExtensionImpl>(this, _$identity); - - @override - Map toJson() { - return _$$ExtensionImplToJson( - this, - ); - } -} - -abstract class _Extension implements Extension { - factory _Extension( - {final String? apkName, - final bool? hasUpdate, - final String? iconUrl, - final bool? installed, - final bool? isNsfw, - @JsonKey( - fromJson: LanguageJsonConverter.fromJson, - toJson: LanguageJsonConverter.toJson) - final Language? lang, - final String? name, - final bool? obsolete, - final String? pkgName, - final int? versionCode, - final String? versionName}) = _$ExtensionImpl; - - factory _Extension.fromJson(Map json) = - _$ExtensionImpl.fromJson; - - @override - String? get apkName; - @override - bool? get hasUpdate; - @override - String? get iconUrl; - @override - bool? get installed; - @override - bool? get isNsfw; - @override - @JsonKey( - fromJson: LanguageJsonConverter.fromJson, - toJson: LanguageJsonConverter.toJson) - Language? get lang; - @override - String? get name; - @override - bool? get obsolete; - @override - String? get pkgName; - @override - int? get versionCode; - @override - String? get versionName; - @override - @JsonKey(ignore: true) - _$$ExtensionImplCopyWith<_$ExtensionImpl> get copyWith => - throw _privateConstructorUsedError; -} diff --git a/lib/src/features/browse_center/domain/extension/extension_model.g.dart b/lib/src/features/browse_center/domain/extension/extension_model.g.dart deleted file mode 100644 index 1ca8db5b..00000000 --- a/lib/src/features/browse_center/domain/extension/extension_model.g.dart +++ /dev/null @@ -1,37 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'extension_model.dart'; - -// ************************************************************************** -// JsonSerializableGenerator -// ************************************************************************** - -_$ExtensionImpl _$$ExtensionImplFromJson(Map json) => - _$ExtensionImpl( - apkName: json['apkName'] as String?, - hasUpdate: json['hasUpdate'] as bool?, - iconUrl: json['iconUrl'] as String?, - installed: json['installed'] as bool?, - isNsfw: json['isNsfw'] as bool?, - lang: LanguageJsonConverter.fromJson(json['lang'] as String?), - name: json['name'] as String?, - obsolete: json['obsolete'] as bool?, - pkgName: json['pkgName'] as String?, - versionCode: json['versionCode'] as int?, - versionName: json['versionName'] as String?, - ); - -Map _$$ExtensionImplToJson(_$ExtensionImpl instance) => - { - 'apkName': instance.apkName, - 'hasUpdate': instance.hasUpdate, - 'iconUrl': instance.iconUrl, - 'installed': instance.installed, - 'isNsfw': instance.isNsfw, - 'lang': LanguageJsonConverter.toJson(instance.lang), - 'name': instance.name, - 'obsolete': instance.obsolete, - 'pkgName': instance.pkgName, - 'versionCode': instance.versionCode, - 'versionName': instance.versionName, - }; diff --git a/lib/src/features/browse_center/domain/filter/filter_model.dart b/lib/src/features/browse_center/domain/filter/filter_model.dart deleted file mode 100644 index 5000cd38..00000000 --- a/lib/src/features/browse_center/domain/filter/filter_model.dart +++ /dev/null @@ -1,67 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'dart:convert'; - -import 'package:freezed_annotation/freezed_annotation.dart'; - -import '../../../../utils/extensions/custom_extensions.dart'; -import '../filter_state/filter_state_model.dart'; - -part 'filter_model.freezed.dart'; -part 'filter_model.g.dart'; - -@freezed -class Filter with _$Filter { - factory Filter({ - String? type, - @JsonKey(readValue: Filter.filterFromJson, name: 'filter') - FilterState? filterState, - }) = _Filter; - - factory Filter.fromJson(Map json) => _$FilterFromJson(json); - - static Map filterFromJson( - Map json, String str) { - final filter = json['filter']; - return { - 'type': json['type'], - if (filter is Map) ...filter, - }; - } - - static List> filtersToJson(List filters) { - final jsonFilter = >[]; - for (int i = 0; i < filters.length; i++) { - final map = Filter.customFilterToJson(filters[i], i); - if (map != null) jsonFilter.addAll(map); - } - return jsonFilter; - } - - static List>? customFilterToJson( - Filter filter, int position) { - return switch (filter.filterState) { - FilterGroup( - state: List? state, - ) => - [ - for (int i = 0; i < (state?.length).getValueOnNullOrNegative(); i++) - { - "position": position, - "state": json.encode(customFilterToJson(state![i], i)?.first), - }, - ], - null => null, - _ => [ - { - "position": position, - "state": json.encode(filter.filterState?.toJson()["state"]) - } - ], - }; - } -} diff --git a/lib/src/features/browse_center/domain/filter/filter_model.freezed.dart b/lib/src/features/browse_center/domain/filter/filter_model.freezed.dart deleted file mode 100644 index 46fcea51..00000000 --- a/lib/src/features/browse_center/domain/filter/filter_model.freezed.dart +++ /dev/null @@ -1,196 +0,0 @@ -// coverage:ignore-file -// GENERATED CODE - DO NOT MODIFY BY HAND -// ignore_for_file: type=lint -// ignore_for_file: unused_element, deprecated_member_use, deprecated_member_use_from_same_package, use_function_type_syntax_for_parameters, unnecessary_const, avoid_init_to_null, invalid_override_different_default_values_named, prefer_expression_function_bodies, annotate_overrides, invalid_annotation_target, unnecessary_question_mark - -part of 'filter_model.dart'; - -// ************************************************************************** -// FreezedGenerator -// ************************************************************************** - -T _$identity(T value) => value; - -final _privateConstructorUsedError = UnsupportedError( - 'It seems like you constructed your class using `MyClass._()`. This constructor is only meant to be used by freezed and you are not supposed to need it nor use it.\nPlease check the documentation here for more information: https://github.com/rrousselGit/freezed#custom-getters-and-methods'); - -Filter _$FilterFromJson(Map json) { - return _Filter.fromJson(json); -} - -/// @nodoc -mixin _$Filter { - String? get type => throw _privateConstructorUsedError; - @JsonKey(readValue: Filter.filterFromJson, name: 'filter') - FilterState? get filterState => throw _privateConstructorUsedError; - - Map toJson() => throw _privateConstructorUsedError; - @JsonKey(ignore: true) - $FilterCopyWith get copyWith => throw _privateConstructorUsedError; -} - -/// @nodoc -abstract class $FilterCopyWith<$Res> { - factory $FilterCopyWith(Filter value, $Res Function(Filter) then) = - _$FilterCopyWithImpl<$Res, Filter>; - @useResult - $Res call( - {String? type, - @JsonKey(readValue: Filter.filterFromJson, name: 'filter') - FilterState? filterState}); - - $FilterStateCopyWith<$Res>? get filterState; -} - -/// @nodoc -class _$FilterCopyWithImpl<$Res, $Val extends Filter> - implements $FilterCopyWith<$Res> { - _$FilterCopyWithImpl(this._value, this._then); - - // ignore: unused_field - final $Val _value; - // ignore: unused_field - final $Res Function($Val) _then; - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? type = freezed, - Object? filterState = freezed, - }) { - return _then(_value.copyWith( - type: freezed == type - ? _value.type - : type // ignore: cast_nullable_to_non_nullable - as String?, - filterState: freezed == filterState - ? _value.filterState - : filterState // ignore: cast_nullable_to_non_nullable - as FilterState?, - ) as $Val); - } - - @override - @pragma('vm:prefer-inline') - $FilterStateCopyWith<$Res>? get filterState { - if (_value.filterState == null) { - return null; - } - - return $FilterStateCopyWith<$Res>(_value.filterState!, (value) { - return _then(_value.copyWith(filterState: value) as $Val); - }); - } -} - -/// @nodoc -abstract class _$$FilterImplCopyWith<$Res> implements $FilterCopyWith<$Res> { - factory _$$FilterImplCopyWith( - _$FilterImpl value, $Res Function(_$FilterImpl) then) = - __$$FilterImplCopyWithImpl<$Res>; - @override - @useResult - $Res call( - {String? type, - @JsonKey(readValue: Filter.filterFromJson, name: 'filter') - FilterState? filterState}); - - @override - $FilterStateCopyWith<$Res>? get filterState; -} - -/// @nodoc -class __$$FilterImplCopyWithImpl<$Res> - extends _$FilterCopyWithImpl<$Res, _$FilterImpl> - implements _$$FilterImplCopyWith<$Res> { - __$$FilterImplCopyWithImpl( - _$FilterImpl _value, $Res Function(_$FilterImpl) _then) - : super(_value, _then); - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? type = freezed, - Object? filterState = freezed, - }) { - return _then(_$FilterImpl( - type: freezed == type - ? _value.type - : type // ignore: cast_nullable_to_non_nullable - as String?, - filterState: freezed == filterState - ? _value.filterState - : filterState // ignore: cast_nullable_to_non_nullable - as FilterState?, - )); - } -} - -/// @nodoc -@JsonSerializable() -class _$FilterImpl implements _Filter { - _$FilterImpl( - {this.type, - @JsonKey(readValue: Filter.filterFromJson, name: 'filter') - this.filterState}); - - factory _$FilterImpl.fromJson(Map json) => - _$$FilterImplFromJson(json); - - @override - final String? type; - @override - @JsonKey(readValue: Filter.filterFromJson, name: 'filter') - final FilterState? filterState; - - @override - String toString() { - return 'Filter(type: $type, filterState: $filterState)'; - } - - @override - bool operator ==(dynamic other) { - return identical(this, other) || - (other.runtimeType == runtimeType && - other is _$FilterImpl && - (identical(other.type, type) || other.type == type) && - (identical(other.filterState, filterState) || - other.filterState == filterState)); - } - - @JsonKey(ignore: true) - @override - int get hashCode => Object.hash(runtimeType, type, filterState); - - @JsonKey(ignore: true) - @override - @pragma('vm:prefer-inline') - _$$FilterImplCopyWith<_$FilterImpl> get copyWith => - __$$FilterImplCopyWithImpl<_$FilterImpl>(this, _$identity); - - @override - Map toJson() { - return _$$FilterImplToJson( - this, - ); - } -} - -abstract class _Filter implements Filter { - factory _Filter( - {final String? type, - @JsonKey(readValue: Filter.filterFromJson, name: 'filter') - final FilterState? filterState}) = _$FilterImpl; - - factory _Filter.fromJson(Map json) = _$FilterImpl.fromJson; - - @override - String? get type; - @override - @JsonKey(readValue: Filter.filterFromJson, name: 'filter') - FilterState? get filterState; - @override - @JsonKey(ignore: true) - _$$FilterImplCopyWith<_$FilterImpl> get copyWith => - throw _privateConstructorUsedError; -} diff --git a/lib/src/features/browse_center/domain/filter/filter_model.g.dart b/lib/src/features/browse_center/domain/filter/filter_model.g.dart deleted file mode 100644 index 3038506f..00000000 --- a/lib/src/features/browse_center/domain/filter/filter_model.g.dart +++ /dev/null @@ -1,21 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'filter_model.dart'; - -// ************************************************************************** -// JsonSerializableGenerator -// ************************************************************************** - -_$FilterImpl _$$FilterImplFromJson(Map json) => _$FilterImpl( - type: json['type'] as String?, - filterState: Filter.filterFromJson(json, 'filter') == null - ? null - : FilterState.fromJson( - Filter.filterFromJson(json, 'filter') as Map), - ); - -Map _$$FilterImplToJson(_$FilterImpl instance) => - { - 'type': instance.type, - 'filter': instance.filterState?.toJson(), - }; diff --git a/lib/src/features/browse_center/domain/filter_state/filter_state_model.dart b/lib/src/features/browse_center/domain/filter_state/filter_state_model.dart deleted file mode 100644 index 9e8fc7fa..00000000 --- a/lib/src/features/browse_center/domain/filter_state/filter_state_model.dart +++ /dev/null @@ -1,74 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:freezed_annotation/freezed_annotation.dart'; - -import '../filter/filter_model.dart'; - -part 'filter_state_model.freezed.dart'; -part 'filter_state_model.g.dart'; - -@Freezed( - unionKey: 'type', - unionValueCase: FreezedUnionCase.pascal, - fallbackUnion: 'separator', -) -sealed class FilterState with _$FilterState { - const factory FilterState.header({int? state, String? name}) = FilterHeader; - - const factory FilterState.separator({int? state, String? name}) = - FilterSeparator; - - const factory FilterState.text({String? state, String? name}) = FilterText; - - const factory FilterState.checkBox({bool? state, String? name}) = - FilterCheckBox; - - const factory FilterState.triState({int? state, String? name}) = - FilterTriState; - - const factory FilterState.sort({ - SortState? state, - String? name, - List? values, - }) = FilterSort; - - const factory FilterState.select({ - int? state, - String? name, - List? displayValues, - }) = FilterSelect; - - const factory FilterState.group({ - List? state, - String? name, - }) = FilterGroup; - - factory FilterState.fromJson(Map json) => - _$FilterStateFromJson(json); -} - -@freezed -class SortState with _$SortState { - factory SortState({ - int? index, - bool? ascending, - }) = _SortState; - - factory SortState.fromJson(Map json) => - _$SortStateFromJson(json); -} - -@freezed -class SelectValues with _$SelectValues { - factory SelectValues({ - String? first, - String? second, - }) = _SelectValues; - - factory SelectValues.fromJson(Map json) => - _$SelectValuesFromJson(json); -} diff --git a/lib/src/features/browse_center/domain/filter_state/filter_state_model.freezed.dart b/lib/src/features/browse_center/domain/filter_state/filter_state_model.freezed.dart deleted file mode 100644 index 89d93561..00000000 --- a/lib/src/features/browse_center/domain/filter_state/filter_state_model.freezed.dart +++ /dev/null @@ -1,2222 +0,0 @@ -// coverage:ignore-file -// GENERATED CODE - DO NOT MODIFY BY HAND -// ignore_for_file: type=lint -// ignore_for_file: unused_element, deprecated_member_use, deprecated_member_use_from_same_package, use_function_type_syntax_for_parameters, unnecessary_const, avoid_init_to_null, invalid_override_different_default_values_named, prefer_expression_function_bodies, annotate_overrides, invalid_annotation_target, unnecessary_question_mark - -part of 'filter_state_model.dart'; - -// ************************************************************************** -// FreezedGenerator -// ************************************************************************** - -T _$identity(T value) => value; - -final _privateConstructorUsedError = UnsupportedError( - 'It seems like you constructed your class using `MyClass._()`. This constructor is only meant to be used by freezed and you are not supposed to need it nor use it.\nPlease check the documentation here for more information: https://github.com/rrousselGit/freezed#custom-getters-and-methods'); - -FilterState _$FilterStateFromJson(Map json) { - switch (json['type']) { - case 'Header': - return FilterHeader.fromJson(json); - case 'Text': - return FilterText.fromJson(json); - case 'CheckBox': - return FilterCheckBox.fromJson(json); - case 'TriState': - return FilterTriState.fromJson(json); - case 'Sort': - return FilterSort.fromJson(json); - case 'Select': - return FilterSelect.fromJson(json); - case 'Group': - return FilterGroup.fromJson(json); - - default: - return FilterSeparator.fromJson(json); - } -} - -/// @nodoc -mixin _$FilterState { - Object? get state => throw _privateConstructorUsedError; - String? get name => throw _privateConstructorUsedError; - @optionalTypeArgs - TResult when({ - required TResult Function(int? state, String? name) header, - required TResult Function(int? state, String? name) separator, - required TResult Function(String? state, String? name) text, - required TResult Function(bool? state, String? name) checkBox, - required TResult Function(int? state, String? name) triState, - required TResult Function( - SortState? state, String? name, List? values) - sort, - required TResult Function( - int? state, String? name, List? displayValues) - select, - required TResult Function(List? state, String? name) group, - }) => - throw _privateConstructorUsedError; - @optionalTypeArgs - TResult? whenOrNull({ - TResult? Function(int? state, String? name)? header, - TResult? Function(int? state, String? name)? separator, - TResult? Function(String? state, String? name)? text, - TResult? Function(bool? state, String? name)? checkBox, - TResult? Function(int? state, String? name)? triState, - TResult? Function(SortState? state, String? name, List? values)? - sort, - TResult? Function(int? state, String? name, List? displayValues)? - select, - TResult? Function(List? state, String? name)? group, - }) => - throw _privateConstructorUsedError; - @optionalTypeArgs - TResult maybeWhen({ - TResult Function(int? state, String? name)? header, - TResult Function(int? state, String? name)? separator, - TResult Function(String? state, String? name)? text, - TResult Function(bool? state, String? name)? checkBox, - TResult Function(int? state, String? name)? triState, - TResult Function(SortState? state, String? name, List? values)? - sort, - TResult Function(int? state, String? name, List? displayValues)? - select, - TResult Function(List? state, String? name)? group, - required TResult orElse(), - }) => - throw _privateConstructorUsedError; - @optionalTypeArgs - TResult map({ - required TResult Function(FilterHeader value) header, - required TResult Function(FilterSeparator value) separator, - required TResult Function(FilterText value) text, - required TResult Function(FilterCheckBox value) checkBox, - required TResult Function(FilterTriState value) triState, - required TResult Function(FilterSort value) sort, - required TResult Function(FilterSelect value) select, - required TResult Function(FilterGroup value) group, - }) => - throw _privateConstructorUsedError; - @optionalTypeArgs - TResult? mapOrNull({ - TResult? Function(FilterHeader value)? header, - TResult? Function(FilterSeparator value)? separator, - TResult? Function(FilterText value)? text, - TResult? Function(FilterCheckBox value)? checkBox, - TResult? Function(FilterTriState value)? triState, - TResult? Function(FilterSort value)? sort, - TResult? Function(FilterSelect value)? select, - TResult? Function(FilterGroup value)? group, - }) => - throw _privateConstructorUsedError; - @optionalTypeArgs - TResult maybeMap({ - TResult Function(FilterHeader value)? header, - TResult Function(FilterSeparator value)? separator, - TResult Function(FilterText value)? text, - TResult Function(FilterCheckBox value)? checkBox, - TResult Function(FilterTriState value)? triState, - TResult Function(FilterSort value)? sort, - TResult Function(FilterSelect value)? select, - TResult Function(FilterGroup value)? group, - required TResult orElse(), - }) => - throw _privateConstructorUsedError; - Map toJson() => throw _privateConstructorUsedError; - @JsonKey(ignore: true) - $FilterStateCopyWith get copyWith => - throw _privateConstructorUsedError; -} - -/// @nodoc -abstract class $FilterStateCopyWith<$Res> { - factory $FilterStateCopyWith( - FilterState value, $Res Function(FilterState) then) = - _$FilterStateCopyWithImpl<$Res, FilterState>; - @useResult - $Res call({String? name}); -} - -/// @nodoc -class _$FilterStateCopyWithImpl<$Res, $Val extends FilterState> - implements $FilterStateCopyWith<$Res> { - _$FilterStateCopyWithImpl(this._value, this._then); - - // ignore: unused_field - final $Val _value; - // ignore: unused_field - final $Res Function($Val) _then; - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? name = freezed, - }) { - return _then(_value.copyWith( - name: freezed == name - ? _value.name - : name // ignore: cast_nullable_to_non_nullable - as String?, - ) as $Val); - } -} - -/// @nodoc -abstract class _$$FilterHeaderImplCopyWith<$Res> - implements $FilterStateCopyWith<$Res> { - factory _$$FilterHeaderImplCopyWith( - _$FilterHeaderImpl value, $Res Function(_$FilterHeaderImpl) then) = - __$$FilterHeaderImplCopyWithImpl<$Res>; - @override - @useResult - $Res call({int? state, String? name}); -} - -/// @nodoc -class __$$FilterHeaderImplCopyWithImpl<$Res> - extends _$FilterStateCopyWithImpl<$Res, _$FilterHeaderImpl> - implements _$$FilterHeaderImplCopyWith<$Res> { - __$$FilterHeaderImplCopyWithImpl( - _$FilterHeaderImpl _value, $Res Function(_$FilterHeaderImpl) _then) - : super(_value, _then); - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? state = freezed, - Object? name = freezed, - }) { - return _then(_$FilterHeaderImpl( - state: freezed == state - ? _value.state - : state // ignore: cast_nullable_to_non_nullable - as int?, - name: freezed == name - ? _value.name - : name // ignore: cast_nullable_to_non_nullable - as String?, - )); - } -} - -/// @nodoc -@JsonSerializable() -class _$FilterHeaderImpl implements FilterHeader { - const _$FilterHeaderImpl({this.state, this.name, final String? $type}) - : $type = $type ?? 'Header'; - - factory _$FilterHeaderImpl.fromJson(Map json) => - _$$FilterHeaderImplFromJson(json); - - @override - final int? state; - @override - final String? name; - - @JsonKey(name: 'type') - final String $type; - - @override - String toString() { - return 'FilterState.header(state: $state, name: $name)'; - } - - @override - bool operator ==(dynamic other) { - return identical(this, other) || - (other.runtimeType == runtimeType && - other is _$FilterHeaderImpl && - (identical(other.state, state) || other.state == state) && - (identical(other.name, name) || other.name == name)); - } - - @JsonKey(ignore: true) - @override - int get hashCode => Object.hash(runtimeType, state, name); - - @JsonKey(ignore: true) - @override - @pragma('vm:prefer-inline') - _$$FilterHeaderImplCopyWith<_$FilterHeaderImpl> get copyWith => - __$$FilterHeaderImplCopyWithImpl<_$FilterHeaderImpl>(this, _$identity); - - @override - @optionalTypeArgs - TResult when({ - required TResult Function(int? state, String? name) header, - required TResult Function(int? state, String? name) separator, - required TResult Function(String? state, String? name) text, - required TResult Function(bool? state, String? name) checkBox, - required TResult Function(int? state, String? name) triState, - required TResult Function( - SortState? state, String? name, List? values) - sort, - required TResult Function( - int? state, String? name, List? displayValues) - select, - required TResult Function(List? state, String? name) group, - }) { - return header(state, name); - } - - @override - @optionalTypeArgs - TResult? whenOrNull({ - TResult? Function(int? state, String? name)? header, - TResult? Function(int? state, String? name)? separator, - TResult? Function(String? state, String? name)? text, - TResult? Function(bool? state, String? name)? checkBox, - TResult? Function(int? state, String? name)? triState, - TResult? Function(SortState? state, String? name, List? values)? - sort, - TResult? Function(int? state, String? name, List? displayValues)? - select, - TResult? Function(List? state, String? name)? group, - }) { - return header?.call(state, name); - } - - @override - @optionalTypeArgs - TResult maybeWhen({ - TResult Function(int? state, String? name)? header, - TResult Function(int? state, String? name)? separator, - TResult Function(String? state, String? name)? text, - TResult Function(bool? state, String? name)? checkBox, - TResult Function(int? state, String? name)? triState, - TResult Function(SortState? state, String? name, List? values)? - sort, - TResult Function(int? state, String? name, List? displayValues)? - select, - TResult Function(List? state, String? name)? group, - required TResult orElse(), - }) { - if (header != null) { - return header(state, name); - } - return orElse(); - } - - @override - @optionalTypeArgs - TResult map({ - required TResult Function(FilterHeader value) header, - required TResult Function(FilterSeparator value) separator, - required TResult Function(FilterText value) text, - required TResult Function(FilterCheckBox value) checkBox, - required TResult Function(FilterTriState value) triState, - required TResult Function(FilterSort value) sort, - required TResult Function(FilterSelect value) select, - required TResult Function(FilterGroup value) group, - }) { - return header(this); - } - - @override - @optionalTypeArgs - TResult? mapOrNull({ - TResult? Function(FilterHeader value)? header, - TResult? Function(FilterSeparator value)? separator, - TResult? Function(FilterText value)? text, - TResult? Function(FilterCheckBox value)? checkBox, - TResult? Function(FilterTriState value)? triState, - TResult? Function(FilterSort value)? sort, - TResult? Function(FilterSelect value)? select, - TResult? Function(FilterGroup value)? group, - }) { - return header?.call(this); - } - - @override - @optionalTypeArgs - TResult maybeMap({ - TResult Function(FilterHeader value)? header, - TResult Function(FilterSeparator value)? separator, - TResult Function(FilterText value)? text, - TResult Function(FilterCheckBox value)? checkBox, - TResult Function(FilterTriState value)? triState, - TResult Function(FilterSort value)? sort, - TResult Function(FilterSelect value)? select, - TResult Function(FilterGroup value)? group, - required TResult orElse(), - }) { - if (header != null) { - return header(this); - } - return orElse(); - } - - @override - Map toJson() { - return _$$FilterHeaderImplToJson( - this, - ); - } -} - -abstract class FilterHeader implements FilterState { - const factory FilterHeader({final int? state, final String? name}) = - _$FilterHeaderImpl; - - factory FilterHeader.fromJson(Map json) = - _$FilterHeaderImpl.fromJson; - - @override - int? get state; - @override - String? get name; - @override - @JsonKey(ignore: true) - _$$FilterHeaderImplCopyWith<_$FilterHeaderImpl> get copyWith => - throw _privateConstructorUsedError; -} - -/// @nodoc -abstract class _$$FilterSeparatorImplCopyWith<$Res> - implements $FilterStateCopyWith<$Res> { - factory _$$FilterSeparatorImplCopyWith(_$FilterSeparatorImpl value, - $Res Function(_$FilterSeparatorImpl) then) = - __$$FilterSeparatorImplCopyWithImpl<$Res>; - @override - @useResult - $Res call({int? state, String? name}); -} - -/// @nodoc -class __$$FilterSeparatorImplCopyWithImpl<$Res> - extends _$FilterStateCopyWithImpl<$Res, _$FilterSeparatorImpl> - implements _$$FilterSeparatorImplCopyWith<$Res> { - __$$FilterSeparatorImplCopyWithImpl( - _$FilterSeparatorImpl _value, $Res Function(_$FilterSeparatorImpl) _then) - : super(_value, _then); - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? state = freezed, - Object? name = freezed, - }) { - return _then(_$FilterSeparatorImpl( - state: freezed == state - ? _value.state - : state // ignore: cast_nullable_to_non_nullable - as int?, - name: freezed == name - ? _value.name - : name // ignore: cast_nullable_to_non_nullable - as String?, - )); - } -} - -/// @nodoc -@JsonSerializable() -class _$FilterSeparatorImpl implements FilterSeparator { - const _$FilterSeparatorImpl({this.state, this.name, final String? $type}) - : $type = $type ?? 'Separator'; - - factory _$FilterSeparatorImpl.fromJson(Map json) => - _$$FilterSeparatorImplFromJson(json); - - @override - final int? state; - @override - final String? name; - - @JsonKey(name: 'type') - final String $type; - - @override - String toString() { - return 'FilterState.separator(state: $state, name: $name)'; - } - - @override - bool operator ==(dynamic other) { - return identical(this, other) || - (other.runtimeType == runtimeType && - other is _$FilterSeparatorImpl && - (identical(other.state, state) || other.state == state) && - (identical(other.name, name) || other.name == name)); - } - - @JsonKey(ignore: true) - @override - int get hashCode => Object.hash(runtimeType, state, name); - - @JsonKey(ignore: true) - @override - @pragma('vm:prefer-inline') - _$$FilterSeparatorImplCopyWith<_$FilterSeparatorImpl> get copyWith => - __$$FilterSeparatorImplCopyWithImpl<_$FilterSeparatorImpl>( - this, _$identity); - - @override - @optionalTypeArgs - TResult when({ - required TResult Function(int? state, String? name) header, - required TResult Function(int? state, String? name) separator, - required TResult Function(String? state, String? name) text, - required TResult Function(bool? state, String? name) checkBox, - required TResult Function(int? state, String? name) triState, - required TResult Function( - SortState? state, String? name, List? values) - sort, - required TResult Function( - int? state, String? name, List? displayValues) - select, - required TResult Function(List? state, String? name) group, - }) { - return separator(state, name); - } - - @override - @optionalTypeArgs - TResult? whenOrNull({ - TResult? Function(int? state, String? name)? header, - TResult? Function(int? state, String? name)? separator, - TResult? Function(String? state, String? name)? text, - TResult? Function(bool? state, String? name)? checkBox, - TResult? Function(int? state, String? name)? triState, - TResult? Function(SortState? state, String? name, List? values)? - sort, - TResult? Function(int? state, String? name, List? displayValues)? - select, - TResult? Function(List? state, String? name)? group, - }) { - return separator?.call(state, name); - } - - @override - @optionalTypeArgs - TResult maybeWhen({ - TResult Function(int? state, String? name)? header, - TResult Function(int? state, String? name)? separator, - TResult Function(String? state, String? name)? text, - TResult Function(bool? state, String? name)? checkBox, - TResult Function(int? state, String? name)? triState, - TResult Function(SortState? state, String? name, List? values)? - sort, - TResult Function(int? state, String? name, List? displayValues)? - select, - TResult Function(List? state, String? name)? group, - required TResult orElse(), - }) { - if (separator != null) { - return separator(state, name); - } - return orElse(); - } - - @override - @optionalTypeArgs - TResult map({ - required TResult Function(FilterHeader value) header, - required TResult Function(FilterSeparator value) separator, - required TResult Function(FilterText value) text, - required TResult Function(FilterCheckBox value) checkBox, - required TResult Function(FilterTriState value) triState, - required TResult Function(FilterSort value) sort, - required TResult Function(FilterSelect value) select, - required TResult Function(FilterGroup value) group, - }) { - return separator(this); - } - - @override - @optionalTypeArgs - TResult? mapOrNull({ - TResult? Function(FilterHeader value)? header, - TResult? Function(FilterSeparator value)? separator, - TResult? Function(FilterText value)? text, - TResult? Function(FilterCheckBox value)? checkBox, - TResult? Function(FilterTriState value)? triState, - TResult? Function(FilterSort value)? sort, - TResult? Function(FilterSelect value)? select, - TResult? Function(FilterGroup value)? group, - }) { - return separator?.call(this); - } - - @override - @optionalTypeArgs - TResult maybeMap({ - TResult Function(FilterHeader value)? header, - TResult Function(FilterSeparator value)? separator, - TResult Function(FilterText value)? text, - TResult Function(FilterCheckBox value)? checkBox, - TResult Function(FilterTriState value)? triState, - TResult Function(FilterSort value)? sort, - TResult Function(FilterSelect value)? select, - TResult Function(FilterGroup value)? group, - required TResult orElse(), - }) { - if (separator != null) { - return separator(this); - } - return orElse(); - } - - @override - Map toJson() { - return _$$FilterSeparatorImplToJson( - this, - ); - } -} - -abstract class FilterSeparator implements FilterState { - const factory FilterSeparator({final int? state, final String? name}) = - _$FilterSeparatorImpl; - - factory FilterSeparator.fromJson(Map json) = - _$FilterSeparatorImpl.fromJson; - - @override - int? get state; - @override - String? get name; - @override - @JsonKey(ignore: true) - _$$FilterSeparatorImplCopyWith<_$FilterSeparatorImpl> get copyWith => - throw _privateConstructorUsedError; -} - -/// @nodoc -abstract class _$$FilterTextImplCopyWith<$Res> - implements $FilterStateCopyWith<$Res> { - factory _$$FilterTextImplCopyWith( - _$FilterTextImpl value, $Res Function(_$FilterTextImpl) then) = - __$$FilterTextImplCopyWithImpl<$Res>; - @override - @useResult - $Res call({String? state, String? name}); -} - -/// @nodoc -class __$$FilterTextImplCopyWithImpl<$Res> - extends _$FilterStateCopyWithImpl<$Res, _$FilterTextImpl> - implements _$$FilterTextImplCopyWith<$Res> { - __$$FilterTextImplCopyWithImpl( - _$FilterTextImpl _value, $Res Function(_$FilterTextImpl) _then) - : super(_value, _then); - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? state = freezed, - Object? name = freezed, - }) { - return _then(_$FilterTextImpl( - state: freezed == state - ? _value.state - : state // ignore: cast_nullable_to_non_nullable - as String?, - name: freezed == name - ? _value.name - : name // ignore: cast_nullable_to_non_nullable - as String?, - )); - } -} - -/// @nodoc -@JsonSerializable() -class _$FilterTextImpl implements FilterText { - const _$FilterTextImpl({this.state, this.name, final String? $type}) - : $type = $type ?? 'Text'; - - factory _$FilterTextImpl.fromJson(Map json) => - _$$FilterTextImplFromJson(json); - - @override - final String? state; - @override - final String? name; - - @JsonKey(name: 'type') - final String $type; - - @override - String toString() { - return 'FilterState.text(state: $state, name: $name)'; - } - - @override - bool operator ==(dynamic other) { - return identical(this, other) || - (other.runtimeType == runtimeType && - other is _$FilterTextImpl && - (identical(other.state, state) || other.state == state) && - (identical(other.name, name) || other.name == name)); - } - - @JsonKey(ignore: true) - @override - int get hashCode => Object.hash(runtimeType, state, name); - - @JsonKey(ignore: true) - @override - @pragma('vm:prefer-inline') - _$$FilterTextImplCopyWith<_$FilterTextImpl> get copyWith => - __$$FilterTextImplCopyWithImpl<_$FilterTextImpl>(this, _$identity); - - @override - @optionalTypeArgs - TResult when({ - required TResult Function(int? state, String? name) header, - required TResult Function(int? state, String? name) separator, - required TResult Function(String? state, String? name) text, - required TResult Function(bool? state, String? name) checkBox, - required TResult Function(int? state, String? name) triState, - required TResult Function( - SortState? state, String? name, List? values) - sort, - required TResult Function( - int? state, String? name, List? displayValues) - select, - required TResult Function(List? state, String? name) group, - }) { - return text(state, name); - } - - @override - @optionalTypeArgs - TResult? whenOrNull({ - TResult? Function(int? state, String? name)? header, - TResult? Function(int? state, String? name)? separator, - TResult? Function(String? state, String? name)? text, - TResult? Function(bool? state, String? name)? checkBox, - TResult? Function(int? state, String? name)? triState, - TResult? Function(SortState? state, String? name, List? values)? - sort, - TResult? Function(int? state, String? name, List? displayValues)? - select, - TResult? Function(List? state, String? name)? group, - }) { - return text?.call(state, name); - } - - @override - @optionalTypeArgs - TResult maybeWhen({ - TResult Function(int? state, String? name)? header, - TResult Function(int? state, String? name)? separator, - TResult Function(String? state, String? name)? text, - TResult Function(bool? state, String? name)? checkBox, - TResult Function(int? state, String? name)? triState, - TResult Function(SortState? state, String? name, List? values)? - sort, - TResult Function(int? state, String? name, List? displayValues)? - select, - TResult Function(List? state, String? name)? group, - required TResult orElse(), - }) { - if (text != null) { - return text(state, name); - } - return orElse(); - } - - @override - @optionalTypeArgs - TResult map({ - required TResult Function(FilterHeader value) header, - required TResult Function(FilterSeparator value) separator, - required TResult Function(FilterText value) text, - required TResult Function(FilterCheckBox value) checkBox, - required TResult Function(FilterTriState value) triState, - required TResult Function(FilterSort value) sort, - required TResult Function(FilterSelect value) select, - required TResult Function(FilterGroup value) group, - }) { - return text(this); - } - - @override - @optionalTypeArgs - TResult? mapOrNull({ - TResult? Function(FilterHeader value)? header, - TResult? Function(FilterSeparator value)? separator, - TResult? Function(FilterText value)? text, - TResult? Function(FilterCheckBox value)? checkBox, - TResult? Function(FilterTriState value)? triState, - TResult? Function(FilterSort value)? sort, - TResult? Function(FilterSelect value)? select, - TResult? Function(FilterGroup value)? group, - }) { - return text?.call(this); - } - - @override - @optionalTypeArgs - TResult maybeMap({ - TResult Function(FilterHeader value)? header, - TResult Function(FilterSeparator value)? separator, - TResult Function(FilterText value)? text, - TResult Function(FilterCheckBox value)? checkBox, - TResult Function(FilterTriState value)? triState, - TResult Function(FilterSort value)? sort, - TResult Function(FilterSelect value)? select, - TResult Function(FilterGroup value)? group, - required TResult orElse(), - }) { - if (text != null) { - return text(this); - } - return orElse(); - } - - @override - Map toJson() { - return _$$FilterTextImplToJson( - this, - ); - } -} - -abstract class FilterText implements FilterState { - const factory FilterText({final String? state, final String? name}) = - _$FilterTextImpl; - - factory FilterText.fromJson(Map json) = - _$FilterTextImpl.fromJson; - - @override - String? get state; - @override - String? get name; - @override - @JsonKey(ignore: true) - _$$FilterTextImplCopyWith<_$FilterTextImpl> get copyWith => - throw _privateConstructorUsedError; -} - -/// @nodoc -abstract class _$$FilterCheckBoxImplCopyWith<$Res> - implements $FilterStateCopyWith<$Res> { - factory _$$FilterCheckBoxImplCopyWith(_$FilterCheckBoxImpl value, - $Res Function(_$FilterCheckBoxImpl) then) = - __$$FilterCheckBoxImplCopyWithImpl<$Res>; - @override - @useResult - $Res call({bool? state, String? name}); -} - -/// @nodoc -class __$$FilterCheckBoxImplCopyWithImpl<$Res> - extends _$FilterStateCopyWithImpl<$Res, _$FilterCheckBoxImpl> - implements _$$FilterCheckBoxImplCopyWith<$Res> { - __$$FilterCheckBoxImplCopyWithImpl( - _$FilterCheckBoxImpl _value, $Res Function(_$FilterCheckBoxImpl) _then) - : super(_value, _then); - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? state = freezed, - Object? name = freezed, - }) { - return _then(_$FilterCheckBoxImpl( - state: freezed == state - ? _value.state - : state // ignore: cast_nullable_to_non_nullable - as bool?, - name: freezed == name - ? _value.name - : name // ignore: cast_nullable_to_non_nullable - as String?, - )); - } -} - -/// @nodoc -@JsonSerializable() -class _$FilterCheckBoxImpl implements FilterCheckBox { - const _$FilterCheckBoxImpl({this.state, this.name, final String? $type}) - : $type = $type ?? 'CheckBox'; - - factory _$FilterCheckBoxImpl.fromJson(Map json) => - _$$FilterCheckBoxImplFromJson(json); - - @override - final bool? state; - @override - final String? name; - - @JsonKey(name: 'type') - final String $type; - - @override - String toString() { - return 'FilterState.checkBox(state: $state, name: $name)'; - } - - @override - bool operator ==(dynamic other) { - return identical(this, other) || - (other.runtimeType == runtimeType && - other is _$FilterCheckBoxImpl && - (identical(other.state, state) || other.state == state) && - (identical(other.name, name) || other.name == name)); - } - - @JsonKey(ignore: true) - @override - int get hashCode => Object.hash(runtimeType, state, name); - - @JsonKey(ignore: true) - @override - @pragma('vm:prefer-inline') - _$$FilterCheckBoxImplCopyWith<_$FilterCheckBoxImpl> get copyWith => - __$$FilterCheckBoxImplCopyWithImpl<_$FilterCheckBoxImpl>( - this, _$identity); - - @override - @optionalTypeArgs - TResult when({ - required TResult Function(int? state, String? name) header, - required TResult Function(int? state, String? name) separator, - required TResult Function(String? state, String? name) text, - required TResult Function(bool? state, String? name) checkBox, - required TResult Function(int? state, String? name) triState, - required TResult Function( - SortState? state, String? name, List? values) - sort, - required TResult Function( - int? state, String? name, List? displayValues) - select, - required TResult Function(List? state, String? name) group, - }) { - return checkBox(state, name); - } - - @override - @optionalTypeArgs - TResult? whenOrNull({ - TResult? Function(int? state, String? name)? header, - TResult? Function(int? state, String? name)? separator, - TResult? Function(String? state, String? name)? text, - TResult? Function(bool? state, String? name)? checkBox, - TResult? Function(int? state, String? name)? triState, - TResult? Function(SortState? state, String? name, List? values)? - sort, - TResult? Function(int? state, String? name, List? displayValues)? - select, - TResult? Function(List? state, String? name)? group, - }) { - return checkBox?.call(state, name); - } - - @override - @optionalTypeArgs - TResult maybeWhen({ - TResult Function(int? state, String? name)? header, - TResult Function(int? state, String? name)? separator, - TResult Function(String? state, String? name)? text, - TResult Function(bool? state, String? name)? checkBox, - TResult Function(int? state, String? name)? triState, - TResult Function(SortState? state, String? name, List? values)? - sort, - TResult Function(int? state, String? name, List? displayValues)? - select, - TResult Function(List? state, String? name)? group, - required TResult orElse(), - }) { - if (checkBox != null) { - return checkBox(state, name); - } - return orElse(); - } - - @override - @optionalTypeArgs - TResult map({ - required TResult Function(FilterHeader value) header, - required TResult Function(FilterSeparator value) separator, - required TResult Function(FilterText value) text, - required TResult Function(FilterCheckBox value) checkBox, - required TResult Function(FilterTriState value) triState, - required TResult Function(FilterSort value) sort, - required TResult Function(FilterSelect value) select, - required TResult Function(FilterGroup value) group, - }) { - return checkBox(this); - } - - @override - @optionalTypeArgs - TResult? mapOrNull({ - TResult? Function(FilterHeader value)? header, - TResult? Function(FilterSeparator value)? separator, - TResult? Function(FilterText value)? text, - TResult? Function(FilterCheckBox value)? checkBox, - TResult? Function(FilterTriState value)? triState, - TResult? Function(FilterSort value)? sort, - TResult? Function(FilterSelect value)? select, - TResult? Function(FilterGroup value)? group, - }) { - return checkBox?.call(this); - } - - @override - @optionalTypeArgs - TResult maybeMap({ - TResult Function(FilterHeader value)? header, - TResult Function(FilterSeparator value)? separator, - TResult Function(FilterText value)? text, - TResult Function(FilterCheckBox value)? checkBox, - TResult Function(FilterTriState value)? triState, - TResult Function(FilterSort value)? sort, - TResult Function(FilterSelect value)? select, - TResult Function(FilterGroup value)? group, - required TResult orElse(), - }) { - if (checkBox != null) { - return checkBox(this); - } - return orElse(); - } - - @override - Map toJson() { - return _$$FilterCheckBoxImplToJson( - this, - ); - } -} - -abstract class FilterCheckBox implements FilterState { - const factory FilterCheckBox({final bool? state, final String? name}) = - _$FilterCheckBoxImpl; - - factory FilterCheckBox.fromJson(Map json) = - _$FilterCheckBoxImpl.fromJson; - - @override - bool? get state; - @override - String? get name; - @override - @JsonKey(ignore: true) - _$$FilterCheckBoxImplCopyWith<_$FilterCheckBoxImpl> get copyWith => - throw _privateConstructorUsedError; -} - -/// @nodoc -abstract class _$$FilterTriStateImplCopyWith<$Res> - implements $FilterStateCopyWith<$Res> { - factory _$$FilterTriStateImplCopyWith(_$FilterTriStateImpl value, - $Res Function(_$FilterTriStateImpl) then) = - __$$FilterTriStateImplCopyWithImpl<$Res>; - @override - @useResult - $Res call({int? state, String? name}); -} - -/// @nodoc -class __$$FilterTriStateImplCopyWithImpl<$Res> - extends _$FilterStateCopyWithImpl<$Res, _$FilterTriStateImpl> - implements _$$FilterTriStateImplCopyWith<$Res> { - __$$FilterTriStateImplCopyWithImpl( - _$FilterTriStateImpl _value, $Res Function(_$FilterTriStateImpl) _then) - : super(_value, _then); - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? state = freezed, - Object? name = freezed, - }) { - return _then(_$FilterTriStateImpl( - state: freezed == state - ? _value.state - : state // ignore: cast_nullable_to_non_nullable - as int?, - name: freezed == name - ? _value.name - : name // ignore: cast_nullable_to_non_nullable - as String?, - )); - } -} - -/// @nodoc -@JsonSerializable() -class _$FilterTriStateImpl implements FilterTriState { - const _$FilterTriStateImpl({this.state, this.name, final String? $type}) - : $type = $type ?? 'TriState'; - - factory _$FilterTriStateImpl.fromJson(Map json) => - _$$FilterTriStateImplFromJson(json); - - @override - final int? state; - @override - final String? name; - - @JsonKey(name: 'type') - final String $type; - - @override - String toString() { - return 'FilterState.triState(state: $state, name: $name)'; - } - - @override - bool operator ==(dynamic other) { - return identical(this, other) || - (other.runtimeType == runtimeType && - other is _$FilterTriStateImpl && - (identical(other.state, state) || other.state == state) && - (identical(other.name, name) || other.name == name)); - } - - @JsonKey(ignore: true) - @override - int get hashCode => Object.hash(runtimeType, state, name); - - @JsonKey(ignore: true) - @override - @pragma('vm:prefer-inline') - _$$FilterTriStateImplCopyWith<_$FilterTriStateImpl> get copyWith => - __$$FilterTriStateImplCopyWithImpl<_$FilterTriStateImpl>( - this, _$identity); - - @override - @optionalTypeArgs - TResult when({ - required TResult Function(int? state, String? name) header, - required TResult Function(int? state, String? name) separator, - required TResult Function(String? state, String? name) text, - required TResult Function(bool? state, String? name) checkBox, - required TResult Function(int? state, String? name) triState, - required TResult Function( - SortState? state, String? name, List? values) - sort, - required TResult Function( - int? state, String? name, List? displayValues) - select, - required TResult Function(List? state, String? name) group, - }) { - return triState(state, name); - } - - @override - @optionalTypeArgs - TResult? whenOrNull({ - TResult? Function(int? state, String? name)? header, - TResult? Function(int? state, String? name)? separator, - TResult? Function(String? state, String? name)? text, - TResult? Function(bool? state, String? name)? checkBox, - TResult? Function(int? state, String? name)? triState, - TResult? Function(SortState? state, String? name, List? values)? - sort, - TResult? Function(int? state, String? name, List? displayValues)? - select, - TResult? Function(List? state, String? name)? group, - }) { - return triState?.call(state, name); - } - - @override - @optionalTypeArgs - TResult maybeWhen({ - TResult Function(int? state, String? name)? header, - TResult Function(int? state, String? name)? separator, - TResult Function(String? state, String? name)? text, - TResult Function(bool? state, String? name)? checkBox, - TResult Function(int? state, String? name)? triState, - TResult Function(SortState? state, String? name, List? values)? - sort, - TResult Function(int? state, String? name, List? displayValues)? - select, - TResult Function(List? state, String? name)? group, - required TResult orElse(), - }) { - if (triState != null) { - return triState(state, name); - } - return orElse(); - } - - @override - @optionalTypeArgs - TResult map({ - required TResult Function(FilterHeader value) header, - required TResult Function(FilterSeparator value) separator, - required TResult Function(FilterText value) text, - required TResult Function(FilterCheckBox value) checkBox, - required TResult Function(FilterTriState value) triState, - required TResult Function(FilterSort value) sort, - required TResult Function(FilterSelect value) select, - required TResult Function(FilterGroup value) group, - }) { - return triState(this); - } - - @override - @optionalTypeArgs - TResult? mapOrNull({ - TResult? Function(FilterHeader value)? header, - TResult? Function(FilterSeparator value)? separator, - TResult? Function(FilterText value)? text, - TResult? Function(FilterCheckBox value)? checkBox, - TResult? Function(FilterTriState value)? triState, - TResult? Function(FilterSort value)? sort, - TResult? Function(FilterSelect value)? select, - TResult? Function(FilterGroup value)? group, - }) { - return triState?.call(this); - } - - @override - @optionalTypeArgs - TResult maybeMap({ - TResult Function(FilterHeader value)? header, - TResult Function(FilterSeparator value)? separator, - TResult Function(FilterText value)? text, - TResult Function(FilterCheckBox value)? checkBox, - TResult Function(FilterTriState value)? triState, - TResult Function(FilterSort value)? sort, - TResult Function(FilterSelect value)? select, - TResult Function(FilterGroup value)? group, - required TResult orElse(), - }) { - if (triState != null) { - return triState(this); - } - return orElse(); - } - - @override - Map toJson() { - return _$$FilterTriStateImplToJson( - this, - ); - } -} - -abstract class FilterTriState implements FilterState { - const factory FilterTriState({final int? state, final String? name}) = - _$FilterTriStateImpl; - - factory FilterTriState.fromJson(Map json) = - _$FilterTriStateImpl.fromJson; - - @override - int? get state; - @override - String? get name; - @override - @JsonKey(ignore: true) - _$$FilterTriStateImplCopyWith<_$FilterTriStateImpl> get copyWith => - throw _privateConstructorUsedError; -} - -/// @nodoc -abstract class _$$FilterSortImplCopyWith<$Res> - implements $FilterStateCopyWith<$Res> { - factory _$$FilterSortImplCopyWith( - _$FilterSortImpl value, $Res Function(_$FilterSortImpl) then) = - __$$FilterSortImplCopyWithImpl<$Res>; - @override - @useResult - $Res call({SortState? state, String? name, List? values}); - - $SortStateCopyWith<$Res>? get state; -} - -/// @nodoc -class __$$FilterSortImplCopyWithImpl<$Res> - extends _$FilterStateCopyWithImpl<$Res, _$FilterSortImpl> - implements _$$FilterSortImplCopyWith<$Res> { - __$$FilterSortImplCopyWithImpl( - _$FilterSortImpl _value, $Res Function(_$FilterSortImpl) _then) - : super(_value, _then); - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? state = freezed, - Object? name = freezed, - Object? values = freezed, - }) { - return _then(_$FilterSortImpl( - state: freezed == state - ? _value.state - : state // ignore: cast_nullable_to_non_nullable - as SortState?, - name: freezed == name - ? _value.name - : name // ignore: cast_nullable_to_non_nullable - as String?, - values: freezed == values - ? _value._values - : values // ignore: cast_nullable_to_non_nullable - as List?, - )); - } - - @override - @pragma('vm:prefer-inline') - $SortStateCopyWith<$Res>? get state { - if (_value.state == null) { - return null; - } - - return $SortStateCopyWith<$Res>(_value.state!, (value) { - return _then(_value.copyWith(state: value)); - }); - } -} - -/// @nodoc -@JsonSerializable() -class _$FilterSortImpl implements FilterSort { - const _$FilterSortImpl( - {this.state, this.name, final List? values, final String? $type}) - : _values = values, - $type = $type ?? 'Sort'; - - factory _$FilterSortImpl.fromJson(Map json) => - _$$FilterSortImplFromJson(json); - - @override - final SortState? state; - @override - final String? name; - final List? _values; - @override - List? get values { - final value = _values; - if (value == null) return null; - if (_values is EqualUnmodifiableListView) return _values; - // ignore: implicit_dynamic_type - return EqualUnmodifiableListView(value); - } - - @JsonKey(name: 'type') - final String $type; - - @override - String toString() { - return 'FilterState.sort(state: $state, name: $name, values: $values)'; - } - - @override - bool operator ==(dynamic other) { - return identical(this, other) || - (other.runtimeType == runtimeType && - other is _$FilterSortImpl && - (identical(other.state, state) || other.state == state) && - (identical(other.name, name) || other.name == name) && - const DeepCollectionEquality().equals(other._values, _values)); - } - - @JsonKey(ignore: true) - @override - int get hashCode => Object.hash( - runtimeType, state, name, const DeepCollectionEquality().hash(_values)); - - @JsonKey(ignore: true) - @override - @pragma('vm:prefer-inline') - _$$FilterSortImplCopyWith<_$FilterSortImpl> get copyWith => - __$$FilterSortImplCopyWithImpl<_$FilterSortImpl>(this, _$identity); - - @override - @optionalTypeArgs - TResult when({ - required TResult Function(int? state, String? name) header, - required TResult Function(int? state, String? name) separator, - required TResult Function(String? state, String? name) text, - required TResult Function(bool? state, String? name) checkBox, - required TResult Function(int? state, String? name) triState, - required TResult Function( - SortState? state, String? name, List? values) - sort, - required TResult Function( - int? state, String? name, List? displayValues) - select, - required TResult Function(List? state, String? name) group, - }) { - return sort(state, name, values); - } - - @override - @optionalTypeArgs - TResult? whenOrNull({ - TResult? Function(int? state, String? name)? header, - TResult? Function(int? state, String? name)? separator, - TResult? Function(String? state, String? name)? text, - TResult? Function(bool? state, String? name)? checkBox, - TResult? Function(int? state, String? name)? triState, - TResult? Function(SortState? state, String? name, List? values)? - sort, - TResult? Function(int? state, String? name, List? displayValues)? - select, - TResult? Function(List? state, String? name)? group, - }) { - return sort?.call(state, name, values); - } - - @override - @optionalTypeArgs - TResult maybeWhen({ - TResult Function(int? state, String? name)? header, - TResult Function(int? state, String? name)? separator, - TResult Function(String? state, String? name)? text, - TResult Function(bool? state, String? name)? checkBox, - TResult Function(int? state, String? name)? triState, - TResult Function(SortState? state, String? name, List? values)? - sort, - TResult Function(int? state, String? name, List? displayValues)? - select, - TResult Function(List? state, String? name)? group, - required TResult orElse(), - }) { - if (sort != null) { - return sort(state, name, values); - } - return orElse(); - } - - @override - @optionalTypeArgs - TResult map({ - required TResult Function(FilterHeader value) header, - required TResult Function(FilterSeparator value) separator, - required TResult Function(FilterText value) text, - required TResult Function(FilterCheckBox value) checkBox, - required TResult Function(FilterTriState value) triState, - required TResult Function(FilterSort value) sort, - required TResult Function(FilterSelect value) select, - required TResult Function(FilterGroup value) group, - }) { - return sort(this); - } - - @override - @optionalTypeArgs - TResult? mapOrNull({ - TResult? Function(FilterHeader value)? header, - TResult? Function(FilterSeparator value)? separator, - TResult? Function(FilterText value)? text, - TResult? Function(FilterCheckBox value)? checkBox, - TResult? Function(FilterTriState value)? triState, - TResult? Function(FilterSort value)? sort, - TResult? Function(FilterSelect value)? select, - TResult? Function(FilterGroup value)? group, - }) { - return sort?.call(this); - } - - @override - @optionalTypeArgs - TResult maybeMap({ - TResult Function(FilterHeader value)? header, - TResult Function(FilterSeparator value)? separator, - TResult Function(FilterText value)? text, - TResult Function(FilterCheckBox value)? checkBox, - TResult Function(FilterTriState value)? triState, - TResult Function(FilterSort value)? sort, - TResult Function(FilterSelect value)? select, - TResult Function(FilterGroup value)? group, - required TResult orElse(), - }) { - if (sort != null) { - return sort(this); - } - return orElse(); - } - - @override - Map toJson() { - return _$$FilterSortImplToJson( - this, - ); - } -} - -abstract class FilterSort implements FilterState { - const factory FilterSort( - {final SortState? state, - final String? name, - final List? values}) = _$FilterSortImpl; - - factory FilterSort.fromJson(Map json) = - _$FilterSortImpl.fromJson; - - @override - SortState? get state; - @override - String? get name; - List? get values; - @override - @JsonKey(ignore: true) - _$$FilterSortImplCopyWith<_$FilterSortImpl> get copyWith => - throw _privateConstructorUsedError; -} - -/// @nodoc -abstract class _$$FilterSelectImplCopyWith<$Res> - implements $FilterStateCopyWith<$Res> { - factory _$$FilterSelectImplCopyWith( - _$FilterSelectImpl value, $Res Function(_$FilterSelectImpl) then) = - __$$FilterSelectImplCopyWithImpl<$Res>; - @override - @useResult - $Res call({int? state, String? name, List? displayValues}); -} - -/// @nodoc -class __$$FilterSelectImplCopyWithImpl<$Res> - extends _$FilterStateCopyWithImpl<$Res, _$FilterSelectImpl> - implements _$$FilterSelectImplCopyWith<$Res> { - __$$FilterSelectImplCopyWithImpl( - _$FilterSelectImpl _value, $Res Function(_$FilterSelectImpl) _then) - : super(_value, _then); - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? state = freezed, - Object? name = freezed, - Object? displayValues = freezed, - }) { - return _then(_$FilterSelectImpl( - state: freezed == state - ? _value.state - : state // ignore: cast_nullable_to_non_nullable - as int?, - name: freezed == name - ? _value.name - : name // ignore: cast_nullable_to_non_nullable - as String?, - displayValues: freezed == displayValues - ? _value._displayValues - : displayValues // ignore: cast_nullable_to_non_nullable - as List?, - )); - } -} - -/// @nodoc -@JsonSerializable() -class _$FilterSelectImpl implements FilterSelect { - const _$FilterSelectImpl( - {this.state, - this.name, - final List? displayValues, - final String? $type}) - : _displayValues = displayValues, - $type = $type ?? 'Select'; - - factory _$FilterSelectImpl.fromJson(Map json) => - _$$FilterSelectImplFromJson(json); - - @override - final int? state; - @override - final String? name; - final List? _displayValues; - @override - List? get displayValues { - final value = _displayValues; - if (value == null) return null; - if (_displayValues is EqualUnmodifiableListView) return _displayValues; - // ignore: implicit_dynamic_type - return EqualUnmodifiableListView(value); - } - - @JsonKey(name: 'type') - final String $type; - - @override - String toString() { - return 'FilterState.select(state: $state, name: $name, displayValues: $displayValues)'; - } - - @override - bool operator ==(dynamic other) { - return identical(this, other) || - (other.runtimeType == runtimeType && - other is _$FilterSelectImpl && - (identical(other.state, state) || other.state == state) && - (identical(other.name, name) || other.name == name) && - const DeepCollectionEquality() - .equals(other._displayValues, _displayValues)); - } - - @JsonKey(ignore: true) - @override - int get hashCode => Object.hash(runtimeType, state, name, - const DeepCollectionEquality().hash(_displayValues)); - - @JsonKey(ignore: true) - @override - @pragma('vm:prefer-inline') - _$$FilterSelectImplCopyWith<_$FilterSelectImpl> get copyWith => - __$$FilterSelectImplCopyWithImpl<_$FilterSelectImpl>(this, _$identity); - - @override - @optionalTypeArgs - TResult when({ - required TResult Function(int? state, String? name) header, - required TResult Function(int? state, String? name) separator, - required TResult Function(String? state, String? name) text, - required TResult Function(bool? state, String? name) checkBox, - required TResult Function(int? state, String? name) triState, - required TResult Function( - SortState? state, String? name, List? values) - sort, - required TResult Function( - int? state, String? name, List? displayValues) - select, - required TResult Function(List? state, String? name) group, - }) { - return select(state, name, displayValues); - } - - @override - @optionalTypeArgs - TResult? whenOrNull({ - TResult? Function(int? state, String? name)? header, - TResult? Function(int? state, String? name)? separator, - TResult? Function(String? state, String? name)? text, - TResult? Function(bool? state, String? name)? checkBox, - TResult? Function(int? state, String? name)? triState, - TResult? Function(SortState? state, String? name, List? values)? - sort, - TResult? Function(int? state, String? name, List? displayValues)? - select, - TResult? Function(List? state, String? name)? group, - }) { - return select?.call(state, name, displayValues); - } - - @override - @optionalTypeArgs - TResult maybeWhen({ - TResult Function(int? state, String? name)? header, - TResult Function(int? state, String? name)? separator, - TResult Function(String? state, String? name)? text, - TResult Function(bool? state, String? name)? checkBox, - TResult Function(int? state, String? name)? triState, - TResult Function(SortState? state, String? name, List? values)? - sort, - TResult Function(int? state, String? name, List? displayValues)? - select, - TResult Function(List? state, String? name)? group, - required TResult orElse(), - }) { - if (select != null) { - return select(state, name, displayValues); - } - return orElse(); - } - - @override - @optionalTypeArgs - TResult map({ - required TResult Function(FilterHeader value) header, - required TResult Function(FilterSeparator value) separator, - required TResult Function(FilterText value) text, - required TResult Function(FilterCheckBox value) checkBox, - required TResult Function(FilterTriState value) triState, - required TResult Function(FilterSort value) sort, - required TResult Function(FilterSelect value) select, - required TResult Function(FilterGroup value) group, - }) { - return select(this); - } - - @override - @optionalTypeArgs - TResult? mapOrNull({ - TResult? Function(FilterHeader value)? header, - TResult? Function(FilterSeparator value)? separator, - TResult? Function(FilterText value)? text, - TResult? Function(FilterCheckBox value)? checkBox, - TResult? Function(FilterTriState value)? triState, - TResult? Function(FilterSort value)? sort, - TResult? Function(FilterSelect value)? select, - TResult? Function(FilterGroup value)? group, - }) { - return select?.call(this); - } - - @override - @optionalTypeArgs - TResult maybeMap({ - TResult Function(FilterHeader value)? header, - TResult Function(FilterSeparator value)? separator, - TResult Function(FilterText value)? text, - TResult Function(FilterCheckBox value)? checkBox, - TResult Function(FilterTriState value)? triState, - TResult Function(FilterSort value)? sort, - TResult Function(FilterSelect value)? select, - TResult Function(FilterGroup value)? group, - required TResult orElse(), - }) { - if (select != null) { - return select(this); - } - return orElse(); - } - - @override - Map toJson() { - return _$$FilterSelectImplToJson( - this, - ); - } -} - -abstract class FilterSelect implements FilterState { - const factory FilterSelect( - {final int? state, - final String? name, - final List? displayValues}) = _$FilterSelectImpl; - - factory FilterSelect.fromJson(Map json) = - _$FilterSelectImpl.fromJson; - - @override - int? get state; - @override - String? get name; - List? get displayValues; - @override - @JsonKey(ignore: true) - _$$FilterSelectImplCopyWith<_$FilterSelectImpl> get copyWith => - throw _privateConstructorUsedError; -} - -/// @nodoc -abstract class _$$FilterGroupImplCopyWith<$Res> - implements $FilterStateCopyWith<$Res> { - factory _$$FilterGroupImplCopyWith( - _$FilterGroupImpl value, $Res Function(_$FilterGroupImpl) then) = - __$$FilterGroupImplCopyWithImpl<$Res>; - @override - @useResult - $Res call({List? state, String? name}); -} - -/// @nodoc -class __$$FilterGroupImplCopyWithImpl<$Res> - extends _$FilterStateCopyWithImpl<$Res, _$FilterGroupImpl> - implements _$$FilterGroupImplCopyWith<$Res> { - __$$FilterGroupImplCopyWithImpl( - _$FilterGroupImpl _value, $Res Function(_$FilterGroupImpl) _then) - : super(_value, _then); - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? state = freezed, - Object? name = freezed, - }) { - return _then(_$FilterGroupImpl( - state: freezed == state - ? _value._state - : state // ignore: cast_nullable_to_non_nullable - as List?, - name: freezed == name - ? _value.name - : name // ignore: cast_nullable_to_non_nullable - as String?, - )); - } -} - -/// @nodoc -@JsonSerializable() -class _$FilterGroupImpl implements FilterGroup { - const _$FilterGroupImpl( - {final List? state, this.name, final String? $type}) - : _state = state, - $type = $type ?? 'Group'; - - factory _$FilterGroupImpl.fromJson(Map json) => - _$$FilterGroupImplFromJson(json); - - final List? _state; - @override - List? get state { - final value = _state; - if (value == null) return null; - if (_state is EqualUnmodifiableListView) return _state; - // ignore: implicit_dynamic_type - return EqualUnmodifiableListView(value); - } - - @override - final String? name; - - @JsonKey(name: 'type') - final String $type; - - @override - String toString() { - return 'FilterState.group(state: $state, name: $name)'; - } - - @override - bool operator ==(dynamic other) { - return identical(this, other) || - (other.runtimeType == runtimeType && - other is _$FilterGroupImpl && - const DeepCollectionEquality().equals(other._state, _state) && - (identical(other.name, name) || other.name == name)); - } - - @JsonKey(ignore: true) - @override - int get hashCode => Object.hash( - runtimeType, const DeepCollectionEquality().hash(_state), name); - - @JsonKey(ignore: true) - @override - @pragma('vm:prefer-inline') - _$$FilterGroupImplCopyWith<_$FilterGroupImpl> get copyWith => - __$$FilterGroupImplCopyWithImpl<_$FilterGroupImpl>(this, _$identity); - - @override - @optionalTypeArgs - TResult when({ - required TResult Function(int? state, String? name) header, - required TResult Function(int? state, String? name) separator, - required TResult Function(String? state, String? name) text, - required TResult Function(bool? state, String? name) checkBox, - required TResult Function(int? state, String? name) triState, - required TResult Function( - SortState? state, String? name, List? values) - sort, - required TResult Function( - int? state, String? name, List? displayValues) - select, - required TResult Function(List? state, String? name) group, - }) { - return group(state, name); - } - - @override - @optionalTypeArgs - TResult? whenOrNull({ - TResult? Function(int? state, String? name)? header, - TResult? Function(int? state, String? name)? separator, - TResult? Function(String? state, String? name)? text, - TResult? Function(bool? state, String? name)? checkBox, - TResult? Function(int? state, String? name)? triState, - TResult? Function(SortState? state, String? name, List? values)? - sort, - TResult? Function(int? state, String? name, List? displayValues)? - select, - TResult? Function(List? state, String? name)? group, - }) { - return group?.call(state, name); - } - - @override - @optionalTypeArgs - TResult maybeWhen({ - TResult Function(int? state, String? name)? header, - TResult Function(int? state, String? name)? separator, - TResult Function(String? state, String? name)? text, - TResult Function(bool? state, String? name)? checkBox, - TResult Function(int? state, String? name)? triState, - TResult Function(SortState? state, String? name, List? values)? - sort, - TResult Function(int? state, String? name, List? displayValues)? - select, - TResult Function(List? state, String? name)? group, - required TResult orElse(), - }) { - if (group != null) { - return group(state, name); - } - return orElse(); - } - - @override - @optionalTypeArgs - TResult map({ - required TResult Function(FilterHeader value) header, - required TResult Function(FilterSeparator value) separator, - required TResult Function(FilterText value) text, - required TResult Function(FilterCheckBox value) checkBox, - required TResult Function(FilterTriState value) triState, - required TResult Function(FilterSort value) sort, - required TResult Function(FilterSelect value) select, - required TResult Function(FilterGroup value) group, - }) { - return group(this); - } - - @override - @optionalTypeArgs - TResult? mapOrNull({ - TResult? Function(FilterHeader value)? header, - TResult? Function(FilterSeparator value)? separator, - TResult? Function(FilterText value)? text, - TResult? Function(FilterCheckBox value)? checkBox, - TResult? Function(FilterTriState value)? triState, - TResult? Function(FilterSort value)? sort, - TResult? Function(FilterSelect value)? select, - TResult? Function(FilterGroup value)? group, - }) { - return group?.call(this); - } - - @override - @optionalTypeArgs - TResult maybeMap({ - TResult Function(FilterHeader value)? header, - TResult Function(FilterSeparator value)? separator, - TResult Function(FilterText value)? text, - TResult Function(FilterCheckBox value)? checkBox, - TResult Function(FilterTriState value)? triState, - TResult Function(FilterSort value)? sort, - TResult Function(FilterSelect value)? select, - TResult Function(FilterGroup value)? group, - required TResult orElse(), - }) { - if (group != null) { - return group(this); - } - return orElse(); - } - - @override - Map toJson() { - return _$$FilterGroupImplToJson( - this, - ); - } -} - -abstract class FilterGroup implements FilterState { - const factory FilterGroup({final List? state, final String? name}) = - _$FilterGroupImpl; - - factory FilterGroup.fromJson(Map json) = - _$FilterGroupImpl.fromJson; - - @override - List? get state; - @override - String? get name; - @override - @JsonKey(ignore: true) - _$$FilterGroupImplCopyWith<_$FilterGroupImpl> get copyWith => - throw _privateConstructorUsedError; -} - -SortState _$SortStateFromJson(Map json) { - return _SortState.fromJson(json); -} - -/// @nodoc -mixin _$SortState { - int? get index => throw _privateConstructorUsedError; - bool? get ascending => throw _privateConstructorUsedError; - - Map toJson() => throw _privateConstructorUsedError; - @JsonKey(ignore: true) - $SortStateCopyWith get copyWith => - throw _privateConstructorUsedError; -} - -/// @nodoc -abstract class $SortStateCopyWith<$Res> { - factory $SortStateCopyWith(SortState value, $Res Function(SortState) then) = - _$SortStateCopyWithImpl<$Res, SortState>; - @useResult - $Res call({int? index, bool? ascending}); -} - -/// @nodoc -class _$SortStateCopyWithImpl<$Res, $Val extends SortState> - implements $SortStateCopyWith<$Res> { - _$SortStateCopyWithImpl(this._value, this._then); - - // ignore: unused_field - final $Val _value; - // ignore: unused_field - final $Res Function($Val) _then; - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? index = freezed, - Object? ascending = freezed, - }) { - return _then(_value.copyWith( - index: freezed == index - ? _value.index - : index // ignore: cast_nullable_to_non_nullable - as int?, - ascending: freezed == ascending - ? _value.ascending - : ascending // ignore: cast_nullable_to_non_nullable - as bool?, - ) as $Val); - } -} - -/// @nodoc -abstract class _$$SortStateImplCopyWith<$Res> - implements $SortStateCopyWith<$Res> { - factory _$$SortStateImplCopyWith( - _$SortStateImpl value, $Res Function(_$SortStateImpl) then) = - __$$SortStateImplCopyWithImpl<$Res>; - @override - @useResult - $Res call({int? index, bool? ascending}); -} - -/// @nodoc -class __$$SortStateImplCopyWithImpl<$Res> - extends _$SortStateCopyWithImpl<$Res, _$SortStateImpl> - implements _$$SortStateImplCopyWith<$Res> { - __$$SortStateImplCopyWithImpl( - _$SortStateImpl _value, $Res Function(_$SortStateImpl) _then) - : super(_value, _then); - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? index = freezed, - Object? ascending = freezed, - }) { - return _then(_$SortStateImpl( - index: freezed == index - ? _value.index - : index // ignore: cast_nullable_to_non_nullable - as int?, - ascending: freezed == ascending - ? _value.ascending - : ascending // ignore: cast_nullable_to_non_nullable - as bool?, - )); - } -} - -/// @nodoc -@JsonSerializable() -class _$SortStateImpl implements _SortState { - _$SortStateImpl({this.index, this.ascending}); - - factory _$SortStateImpl.fromJson(Map json) => - _$$SortStateImplFromJson(json); - - @override - final int? index; - @override - final bool? ascending; - - @override - String toString() { - return 'SortState(index: $index, ascending: $ascending)'; - } - - @override - bool operator ==(dynamic other) { - return identical(this, other) || - (other.runtimeType == runtimeType && - other is _$SortStateImpl && - (identical(other.index, index) || other.index == index) && - (identical(other.ascending, ascending) || - other.ascending == ascending)); - } - - @JsonKey(ignore: true) - @override - int get hashCode => Object.hash(runtimeType, index, ascending); - - @JsonKey(ignore: true) - @override - @pragma('vm:prefer-inline') - _$$SortStateImplCopyWith<_$SortStateImpl> get copyWith => - __$$SortStateImplCopyWithImpl<_$SortStateImpl>(this, _$identity); - - @override - Map toJson() { - return _$$SortStateImplToJson( - this, - ); - } -} - -abstract class _SortState implements SortState { - factory _SortState({final int? index, final bool? ascending}) = - _$SortStateImpl; - - factory _SortState.fromJson(Map json) = - _$SortStateImpl.fromJson; - - @override - int? get index; - @override - bool? get ascending; - @override - @JsonKey(ignore: true) - _$$SortStateImplCopyWith<_$SortStateImpl> get copyWith => - throw _privateConstructorUsedError; -} - -SelectValues _$SelectValuesFromJson(Map json) { - return _SelectValues.fromJson(json); -} - -/// @nodoc -mixin _$SelectValues { - String? get first => throw _privateConstructorUsedError; - String? get second => throw _privateConstructorUsedError; - - Map toJson() => throw _privateConstructorUsedError; - @JsonKey(ignore: true) - $SelectValuesCopyWith get copyWith => - throw _privateConstructorUsedError; -} - -/// @nodoc -abstract class $SelectValuesCopyWith<$Res> { - factory $SelectValuesCopyWith( - SelectValues value, $Res Function(SelectValues) then) = - _$SelectValuesCopyWithImpl<$Res, SelectValues>; - @useResult - $Res call({String? first, String? second}); -} - -/// @nodoc -class _$SelectValuesCopyWithImpl<$Res, $Val extends SelectValues> - implements $SelectValuesCopyWith<$Res> { - _$SelectValuesCopyWithImpl(this._value, this._then); - - // ignore: unused_field - final $Val _value; - // ignore: unused_field - final $Res Function($Val) _then; - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? first = freezed, - Object? second = freezed, - }) { - return _then(_value.copyWith( - first: freezed == first - ? _value.first - : first // ignore: cast_nullable_to_non_nullable - as String?, - second: freezed == second - ? _value.second - : second // ignore: cast_nullable_to_non_nullable - as String?, - ) as $Val); - } -} - -/// @nodoc -abstract class _$$SelectValuesImplCopyWith<$Res> - implements $SelectValuesCopyWith<$Res> { - factory _$$SelectValuesImplCopyWith( - _$SelectValuesImpl value, $Res Function(_$SelectValuesImpl) then) = - __$$SelectValuesImplCopyWithImpl<$Res>; - @override - @useResult - $Res call({String? first, String? second}); -} - -/// @nodoc -class __$$SelectValuesImplCopyWithImpl<$Res> - extends _$SelectValuesCopyWithImpl<$Res, _$SelectValuesImpl> - implements _$$SelectValuesImplCopyWith<$Res> { - __$$SelectValuesImplCopyWithImpl( - _$SelectValuesImpl _value, $Res Function(_$SelectValuesImpl) _then) - : super(_value, _then); - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? first = freezed, - Object? second = freezed, - }) { - return _then(_$SelectValuesImpl( - first: freezed == first - ? _value.first - : first // ignore: cast_nullable_to_non_nullable - as String?, - second: freezed == second - ? _value.second - : second // ignore: cast_nullable_to_non_nullable - as String?, - )); - } -} - -/// @nodoc -@JsonSerializable() -class _$SelectValuesImpl implements _SelectValues { - _$SelectValuesImpl({this.first, this.second}); - - factory _$SelectValuesImpl.fromJson(Map json) => - _$$SelectValuesImplFromJson(json); - - @override - final String? first; - @override - final String? second; - - @override - String toString() { - return 'SelectValues(first: $first, second: $second)'; - } - - @override - bool operator ==(dynamic other) { - return identical(this, other) || - (other.runtimeType == runtimeType && - other is _$SelectValuesImpl && - (identical(other.first, first) || other.first == first) && - (identical(other.second, second) || other.second == second)); - } - - @JsonKey(ignore: true) - @override - int get hashCode => Object.hash(runtimeType, first, second); - - @JsonKey(ignore: true) - @override - @pragma('vm:prefer-inline') - _$$SelectValuesImplCopyWith<_$SelectValuesImpl> get copyWith => - __$$SelectValuesImplCopyWithImpl<_$SelectValuesImpl>(this, _$identity); - - @override - Map toJson() { - return _$$SelectValuesImplToJson( - this, - ); - } -} - -abstract class _SelectValues implements SelectValues { - factory _SelectValues({final String? first, final String? second}) = - _$SelectValuesImpl; - - factory _SelectValues.fromJson(Map json) = - _$SelectValuesImpl.fromJson; - - @override - String? get first; - @override - String? get second; - @override - @JsonKey(ignore: true) - _$$SelectValuesImplCopyWith<_$SelectValuesImpl> get copyWith => - throw _privateConstructorUsedError; -} diff --git a/lib/src/features/browse_center/domain/filter_state/filter_state_model.g.dart b/lib/src/features/browse_center/domain/filter_state/filter_state_model.g.dart deleted file mode 100644 index 4787aa43..00000000 --- a/lib/src/features/browse_center/domain/filter_state/filter_state_model.g.dart +++ /dev/null @@ -1,158 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'filter_state_model.dart'; - -// ************************************************************************** -// JsonSerializableGenerator -// ************************************************************************** - -_$FilterHeaderImpl _$$FilterHeaderImplFromJson(Map json) => - _$FilterHeaderImpl( - state: json['state'] as int?, - name: json['name'] as String?, - $type: json['type'] as String?, - ); - -Map _$$FilterHeaderImplToJson(_$FilterHeaderImpl instance) => - { - 'state': instance.state, - 'name': instance.name, - 'type': instance.$type, - }; - -_$FilterSeparatorImpl _$$FilterSeparatorImplFromJson( - Map json) => - _$FilterSeparatorImpl( - state: json['state'] as int?, - name: json['name'] as String?, - $type: json['type'] as String?, - ); - -Map _$$FilterSeparatorImplToJson( - _$FilterSeparatorImpl instance) => - { - 'state': instance.state, - 'name': instance.name, - 'type': instance.$type, - }; - -_$FilterTextImpl _$$FilterTextImplFromJson(Map json) => - _$FilterTextImpl( - state: json['state'] as String?, - name: json['name'] as String?, - $type: json['type'] as String?, - ); - -Map _$$FilterTextImplToJson(_$FilterTextImpl instance) => - { - 'state': instance.state, - 'name': instance.name, - 'type': instance.$type, - }; - -_$FilterCheckBoxImpl _$$FilterCheckBoxImplFromJson(Map json) => - _$FilterCheckBoxImpl( - state: json['state'] as bool?, - name: json['name'] as String?, - $type: json['type'] as String?, - ); - -Map _$$FilterCheckBoxImplToJson( - _$FilterCheckBoxImpl instance) => - { - 'state': instance.state, - 'name': instance.name, - 'type': instance.$type, - }; - -_$FilterTriStateImpl _$$FilterTriStateImplFromJson(Map json) => - _$FilterTriStateImpl( - state: json['state'] as int?, - name: json['name'] as String?, - $type: json['type'] as String?, - ); - -Map _$$FilterTriStateImplToJson( - _$FilterTriStateImpl instance) => - { - 'state': instance.state, - 'name': instance.name, - 'type': instance.$type, - }; - -_$FilterSortImpl _$$FilterSortImplFromJson(Map json) => - _$FilterSortImpl( - state: json['state'] == null - ? null - : SortState.fromJson(json['state'] as Map), - name: json['name'] as String?, - values: - (json['values'] as List?)?.map((e) => e as String).toList(), - $type: json['type'] as String?, - ); - -Map _$$FilterSortImplToJson(_$FilterSortImpl instance) => - { - 'state': instance.state?.toJson(), - 'name': instance.name, - 'values': instance.values, - 'type': instance.$type, - }; - -_$FilterSelectImpl _$$FilterSelectImplFromJson(Map json) => - _$FilterSelectImpl( - state: json['state'] as int?, - name: json['name'] as String?, - displayValues: (json['displayValues'] as List?) - ?.map((e) => e as String) - .toList(), - $type: json['type'] as String?, - ); - -Map _$$FilterSelectImplToJson(_$FilterSelectImpl instance) => - { - 'state': instance.state, - 'name': instance.name, - 'displayValues': instance.displayValues, - 'type': instance.$type, - }; - -_$FilterGroupImpl _$$FilterGroupImplFromJson(Map json) => - _$FilterGroupImpl( - state: (json['state'] as List?) - ?.map((e) => Filter.fromJson(e as Map)) - .toList(), - name: json['name'] as String?, - $type: json['type'] as String?, - ); - -Map _$$FilterGroupImplToJson(_$FilterGroupImpl instance) => - { - 'state': instance.state?.map((e) => e.toJson()).toList(), - 'name': instance.name, - 'type': instance.$type, - }; - -_$SortStateImpl _$$SortStateImplFromJson(Map json) => - _$SortStateImpl( - index: json['index'] as int?, - ascending: json['ascending'] as bool?, - ); - -Map _$$SortStateImplToJson(_$SortStateImpl instance) => - { - 'index': instance.index, - 'ascending': instance.ascending, - }; - -_$SelectValuesImpl _$$SelectValuesImplFromJson(Map json) => - _$SelectValuesImpl( - first: json['first'] as String?, - second: json['second'] as String?, - ); - -Map _$$SelectValuesImplToJson(_$SelectValuesImpl instance) => - { - 'first': instance.first, - 'second': instance.second, - }; diff --git a/lib/src/features/browse_center/domain/language/language_model.dart b/lib/src/features/browse_center/domain/language/language_model.dart deleted file mode 100644 index 24ea1539..00000000 --- a/lib/src/features/browse_center/domain/language/language_model.dart +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:freezed_annotation/freezed_annotation.dart'; - -part 'language_model.freezed.dart'; -part 'language_model.g.dart'; - -@freezed -class Language with _$Language { - Language._(); - factory Language({ - String? code, - String? name, - String? nativeName, - }) = _Language; - - String? get displayName => nativeName ?? name ?? code; - - factory Language.fromJson(Map json) => - _$LanguageFromJson(json); -} diff --git a/lib/src/features/browse_center/domain/language/language_model.freezed.dart b/lib/src/features/browse_center/domain/language/language_model.freezed.dart deleted file mode 100644 index fa801cf7..00000000 --- a/lib/src/features/browse_center/domain/language/language_model.freezed.dart +++ /dev/null @@ -1,187 +0,0 @@ -// coverage:ignore-file -// GENERATED CODE - DO NOT MODIFY BY HAND -// ignore_for_file: type=lint -// ignore_for_file: unused_element, deprecated_member_use, deprecated_member_use_from_same_package, use_function_type_syntax_for_parameters, unnecessary_const, avoid_init_to_null, invalid_override_different_default_values_named, prefer_expression_function_bodies, annotate_overrides, invalid_annotation_target, unnecessary_question_mark - -part of 'language_model.dart'; - -// ************************************************************************** -// FreezedGenerator -// ************************************************************************** - -T _$identity(T value) => value; - -final _privateConstructorUsedError = UnsupportedError( - 'It seems like you constructed your class using `MyClass._()`. This constructor is only meant to be used by freezed and you are not supposed to need it nor use it.\nPlease check the documentation here for more information: https://github.com/rrousselGit/freezed#custom-getters-and-methods'); - -Language _$LanguageFromJson(Map json) { - return _Language.fromJson(json); -} - -/// @nodoc -mixin _$Language { - String? get code => throw _privateConstructorUsedError; - String? get name => throw _privateConstructorUsedError; - String? get nativeName => throw _privateConstructorUsedError; - - Map toJson() => throw _privateConstructorUsedError; - @JsonKey(ignore: true) - $LanguageCopyWith get copyWith => - throw _privateConstructorUsedError; -} - -/// @nodoc -abstract class $LanguageCopyWith<$Res> { - factory $LanguageCopyWith(Language value, $Res Function(Language) then) = - _$LanguageCopyWithImpl<$Res, Language>; - @useResult - $Res call({String? code, String? name, String? nativeName}); -} - -/// @nodoc -class _$LanguageCopyWithImpl<$Res, $Val extends Language> - implements $LanguageCopyWith<$Res> { - _$LanguageCopyWithImpl(this._value, this._then); - - // ignore: unused_field - final $Val _value; - // ignore: unused_field - final $Res Function($Val) _then; - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? code = freezed, - Object? name = freezed, - Object? nativeName = freezed, - }) { - return _then(_value.copyWith( - code: freezed == code - ? _value.code - : code // ignore: cast_nullable_to_non_nullable - as String?, - name: freezed == name - ? _value.name - : name // ignore: cast_nullable_to_non_nullable - as String?, - nativeName: freezed == nativeName - ? _value.nativeName - : nativeName // ignore: cast_nullable_to_non_nullable - as String?, - ) as $Val); - } -} - -/// @nodoc -abstract class _$$LanguageImplCopyWith<$Res> - implements $LanguageCopyWith<$Res> { - factory _$$LanguageImplCopyWith( - _$LanguageImpl value, $Res Function(_$LanguageImpl) then) = - __$$LanguageImplCopyWithImpl<$Res>; - @override - @useResult - $Res call({String? code, String? name, String? nativeName}); -} - -/// @nodoc -class __$$LanguageImplCopyWithImpl<$Res> - extends _$LanguageCopyWithImpl<$Res, _$LanguageImpl> - implements _$$LanguageImplCopyWith<$Res> { - __$$LanguageImplCopyWithImpl( - _$LanguageImpl _value, $Res Function(_$LanguageImpl) _then) - : super(_value, _then); - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? code = freezed, - Object? name = freezed, - Object? nativeName = freezed, - }) { - return _then(_$LanguageImpl( - code: freezed == code - ? _value.code - : code // ignore: cast_nullable_to_non_nullable - as String?, - name: freezed == name - ? _value.name - : name // ignore: cast_nullable_to_non_nullable - as String?, - nativeName: freezed == nativeName - ? _value.nativeName - : nativeName // ignore: cast_nullable_to_non_nullable - as String?, - )); - } -} - -/// @nodoc -@JsonSerializable() -class _$LanguageImpl extends _Language { - _$LanguageImpl({this.code, this.name, this.nativeName}) : super._(); - - factory _$LanguageImpl.fromJson(Map json) => - _$$LanguageImplFromJson(json); - - @override - final String? code; - @override - final String? name; - @override - final String? nativeName; - - @override - String toString() { - return 'Language(code: $code, name: $name, nativeName: $nativeName)'; - } - - @override - bool operator ==(dynamic other) { - return identical(this, other) || - (other.runtimeType == runtimeType && - other is _$LanguageImpl && - (identical(other.code, code) || other.code == code) && - (identical(other.name, name) || other.name == name) && - (identical(other.nativeName, nativeName) || - other.nativeName == nativeName)); - } - - @JsonKey(ignore: true) - @override - int get hashCode => Object.hash(runtimeType, code, name, nativeName); - - @JsonKey(ignore: true) - @override - @pragma('vm:prefer-inline') - _$$LanguageImplCopyWith<_$LanguageImpl> get copyWith => - __$$LanguageImplCopyWithImpl<_$LanguageImpl>(this, _$identity); - - @override - Map toJson() { - return _$$LanguageImplToJson( - this, - ); - } -} - -abstract class _Language extends Language { - factory _Language( - {final String? code, - final String? name, - final String? nativeName}) = _$LanguageImpl; - _Language._() : super._(); - - factory _Language.fromJson(Map json) = - _$LanguageImpl.fromJson; - - @override - String? get code; - @override - String? get name; - @override - String? get nativeName; - @override - @JsonKey(ignore: true) - _$$LanguageImplCopyWith<_$LanguageImpl> get copyWith => - throw _privateConstructorUsedError; -} diff --git a/lib/src/features/browse_center/domain/language/language_model.g.dart b/lib/src/features/browse_center/domain/language/language_model.g.dart deleted file mode 100644 index 3b2bbd61..00000000 --- a/lib/src/features/browse_center/domain/language/language_model.g.dart +++ /dev/null @@ -1,21 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'language_model.dart'; - -// ************************************************************************** -// JsonSerializableGenerator -// ************************************************************************** - -_$LanguageImpl _$$LanguageImplFromJson(Map json) => - _$LanguageImpl( - code: json['code'] as String?, - name: json['name'] as String?, - nativeName: json['nativeName'] as String?, - ); - -Map _$$LanguageImplToJson(_$LanguageImpl instance) => - { - 'code': instance.code, - 'name': instance.name, - 'nativeName': instance.nativeName, - }; diff --git a/lib/src/features/browse_center/domain/manga_page/manga_page.dart b/lib/src/features/browse_center/domain/manga_page/manga_page.dart deleted file mode 100644 index 4208e249..00000000 --- a/lib/src/features/browse_center/domain/manga_page/manga_page.dart +++ /dev/null @@ -1,23 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:freezed_annotation/freezed_annotation.dart'; - -import '../../../manga_book/domain/manga/manga_model.dart'; - -part 'manga_page.freezed.dart'; -part 'manga_page.g.dart'; - -@freezed -class MangaPage with _$MangaPage { - factory MangaPage({ - List? mangaList, - bool? hasNextPage, - }) = _MangaPage; - - factory MangaPage.fromJson(Map json) => - _$MangaPageFromJson(json); -} diff --git a/lib/src/features/browse_center/domain/manga_page/manga_page.freezed.dart b/lib/src/features/browse_center/domain/manga_page/manga_page.freezed.dart deleted file mode 100644 index b17645d4..00000000 --- a/lib/src/features/browse_center/domain/manga_page/manga_page.freezed.dart +++ /dev/null @@ -1,179 +0,0 @@ -// coverage:ignore-file -// GENERATED CODE - DO NOT MODIFY BY HAND -// ignore_for_file: type=lint -// ignore_for_file: unused_element, deprecated_member_use, deprecated_member_use_from_same_package, use_function_type_syntax_for_parameters, unnecessary_const, avoid_init_to_null, invalid_override_different_default_values_named, prefer_expression_function_bodies, annotate_overrides, invalid_annotation_target, unnecessary_question_mark - -part of 'manga_page.dart'; - -// ************************************************************************** -// FreezedGenerator -// ************************************************************************** - -T _$identity(T value) => value; - -final _privateConstructorUsedError = UnsupportedError( - 'It seems like you constructed your class using `MyClass._()`. This constructor is only meant to be used by freezed and you are not supposed to need it nor use it.\nPlease check the documentation here for more information: https://github.com/rrousselGit/freezed#custom-getters-and-methods'); - -MangaPage _$MangaPageFromJson(Map json) { - return _MangaPage.fromJson(json); -} - -/// @nodoc -mixin _$MangaPage { - List? get mangaList => throw _privateConstructorUsedError; - bool? get hasNextPage => throw _privateConstructorUsedError; - - Map toJson() => throw _privateConstructorUsedError; - @JsonKey(ignore: true) - $MangaPageCopyWith get copyWith => - throw _privateConstructorUsedError; -} - -/// @nodoc -abstract class $MangaPageCopyWith<$Res> { - factory $MangaPageCopyWith(MangaPage value, $Res Function(MangaPage) then) = - _$MangaPageCopyWithImpl<$Res, MangaPage>; - @useResult - $Res call({List? mangaList, bool? hasNextPage}); -} - -/// @nodoc -class _$MangaPageCopyWithImpl<$Res, $Val extends MangaPage> - implements $MangaPageCopyWith<$Res> { - _$MangaPageCopyWithImpl(this._value, this._then); - - // ignore: unused_field - final $Val _value; - // ignore: unused_field - final $Res Function($Val) _then; - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? mangaList = freezed, - Object? hasNextPage = freezed, - }) { - return _then(_value.copyWith( - mangaList: freezed == mangaList - ? _value.mangaList - : mangaList // ignore: cast_nullable_to_non_nullable - as List?, - hasNextPage: freezed == hasNextPage - ? _value.hasNextPage - : hasNextPage // ignore: cast_nullable_to_non_nullable - as bool?, - ) as $Val); - } -} - -/// @nodoc -abstract class _$$MangaPageImplCopyWith<$Res> - implements $MangaPageCopyWith<$Res> { - factory _$$MangaPageImplCopyWith( - _$MangaPageImpl value, $Res Function(_$MangaPageImpl) then) = - __$$MangaPageImplCopyWithImpl<$Res>; - @override - @useResult - $Res call({List? mangaList, bool? hasNextPage}); -} - -/// @nodoc -class __$$MangaPageImplCopyWithImpl<$Res> - extends _$MangaPageCopyWithImpl<$Res, _$MangaPageImpl> - implements _$$MangaPageImplCopyWith<$Res> { - __$$MangaPageImplCopyWithImpl( - _$MangaPageImpl _value, $Res Function(_$MangaPageImpl) _then) - : super(_value, _then); - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? mangaList = freezed, - Object? hasNextPage = freezed, - }) { - return _then(_$MangaPageImpl( - mangaList: freezed == mangaList - ? _value._mangaList - : mangaList // ignore: cast_nullable_to_non_nullable - as List?, - hasNextPage: freezed == hasNextPage - ? _value.hasNextPage - : hasNextPage // ignore: cast_nullable_to_non_nullable - as bool?, - )); - } -} - -/// @nodoc -@JsonSerializable() -class _$MangaPageImpl implements _MangaPage { - _$MangaPageImpl({final List? mangaList, this.hasNextPage}) - : _mangaList = mangaList; - - factory _$MangaPageImpl.fromJson(Map json) => - _$$MangaPageImplFromJson(json); - - final List? _mangaList; - @override - List? get mangaList { - final value = _mangaList; - if (value == null) return null; - if (_mangaList is EqualUnmodifiableListView) return _mangaList; - // ignore: implicit_dynamic_type - return EqualUnmodifiableListView(value); - } - - @override - final bool? hasNextPage; - - @override - String toString() { - return 'MangaPage(mangaList: $mangaList, hasNextPage: $hasNextPage)'; - } - - @override - bool operator ==(dynamic other) { - return identical(this, other) || - (other.runtimeType == runtimeType && - other is _$MangaPageImpl && - const DeepCollectionEquality() - .equals(other._mangaList, _mangaList) && - (identical(other.hasNextPage, hasNextPage) || - other.hasNextPage == hasNextPage)); - } - - @JsonKey(ignore: true) - @override - int get hashCode => Object.hash(runtimeType, - const DeepCollectionEquality().hash(_mangaList), hasNextPage); - - @JsonKey(ignore: true) - @override - @pragma('vm:prefer-inline') - _$$MangaPageImplCopyWith<_$MangaPageImpl> get copyWith => - __$$MangaPageImplCopyWithImpl<_$MangaPageImpl>(this, _$identity); - - @override - Map toJson() { - return _$$MangaPageImplToJson( - this, - ); - } -} - -abstract class _MangaPage implements MangaPage { - factory _MangaPage({final List? mangaList, final bool? hasNextPage}) = - _$MangaPageImpl; - - factory _MangaPage.fromJson(Map json) = - _$MangaPageImpl.fromJson; - - @override - List? get mangaList; - @override - bool? get hasNextPage; - @override - @JsonKey(ignore: true) - _$$MangaPageImplCopyWith<_$MangaPageImpl> get copyWith => - throw _privateConstructorUsedError; -} diff --git a/lib/src/features/browse_center/domain/manga_page/manga_page.g.dart b/lib/src/features/browse_center/domain/manga_page/manga_page.g.dart deleted file mode 100644 index 50f73aeb..00000000 --- a/lib/src/features/browse_center/domain/manga_page/manga_page.g.dart +++ /dev/null @@ -1,21 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'manga_page.dart'; - -// ************************************************************************** -// JsonSerializableGenerator -// ************************************************************************** - -_$MangaPageImpl _$$MangaPageImplFromJson(Map json) => - _$MangaPageImpl( - mangaList: (json['mangaList'] as List?) - ?.map((e) => Manga.fromJson(e as Map)) - .toList(), - hasNextPage: json['hasNextPage'] as bool?, - ); - -Map _$$MangaPageImplToJson(_$MangaPageImpl instance) => - { - 'mangaList': instance.mangaList?.map((e) => e.toJson()).toList(), - 'hasNextPage': instance.hasNextPage, - }; diff --git a/lib/src/features/browse_center/domain/source/source_model.dart b/lib/src/features/browse_center/domain/source/source_model.dart deleted file mode 100644 index d2b6af80..00000000 --- a/lib/src/features/browse_center/domain/source/source_model.dart +++ /dev/null @@ -1,33 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:freezed_annotation/freezed_annotation.dart'; - -import '../../../../utils/freezed_converters/language_json_converter.dart'; -import '../language/language_model.dart'; - -part 'source_model.freezed.dart'; -part 'source_model.g.dart'; - -@freezed -class Source with _$Source { - factory Source({ - String? displayName, - String? iconUrl, - String? id, - bool? isConfigurable, - bool? isNsfw, - @JsonKey( - fromJson: LanguageJsonConverter.fromJson, - toJson: LanguageJsonConverter.toJson, - ) - Language? lang, - String? name, - bool? supportsLatest, - }) = _Source; - - factory Source.fromJson(Map json) => _$SourceFromJson(json); -} diff --git a/lib/src/features/browse_center/domain/source/source_model.freezed.dart b/lib/src/features/browse_center/domain/source/source_model.freezed.dart deleted file mode 100644 index 443bb3cb..00000000 --- a/lib/src/features/browse_center/domain/source/source_model.freezed.dart +++ /dev/null @@ -1,333 +0,0 @@ -// coverage:ignore-file -// GENERATED CODE - DO NOT MODIFY BY HAND -// ignore_for_file: type=lint -// ignore_for_file: unused_element, deprecated_member_use, deprecated_member_use_from_same_package, use_function_type_syntax_for_parameters, unnecessary_const, avoid_init_to_null, invalid_override_different_default_values_named, prefer_expression_function_bodies, annotate_overrides, invalid_annotation_target, unnecessary_question_mark - -part of 'source_model.dart'; - -// ************************************************************************** -// FreezedGenerator -// ************************************************************************** - -T _$identity(T value) => value; - -final _privateConstructorUsedError = UnsupportedError( - 'It seems like you constructed your class using `MyClass._()`. This constructor is only meant to be used by freezed and you are not supposed to need it nor use it.\nPlease check the documentation here for more information: https://github.com/rrousselGit/freezed#custom-getters-and-methods'); - -Source _$SourceFromJson(Map json) { - return _Source.fromJson(json); -} - -/// @nodoc -mixin _$Source { - String? get displayName => throw _privateConstructorUsedError; - String? get iconUrl => throw _privateConstructorUsedError; - String? get id => throw _privateConstructorUsedError; - bool? get isConfigurable => throw _privateConstructorUsedError; - bool? get isNsfw => throw _privateConstructorUsedError; - @JsonKey( - fromJson: LanguageJsonConverter.fromJson, - toJson: LanguageJsonConverter.toJson) - Language? get lang => throw _privateConstructorUsedError; - String? get name => throw _privateConstructorUsedError; - bool? get supportsLatest => throw _privateConstructorUsedError; - - Map toJson() => throw _privateConstructorUsedError; - @JsonKey(ignore: true) - $SourceCopyWith get copyWith => throw _privateConstructorUsedError; -} - -/// @nodoc -abstract class $SourceCopyWith<$Res> { - factory $SourceCopyWith(Source value, $Res Function(Source) then) = - _$SourceCopyWithImpl<$Res, Source>; - @useResult - $Res call( - {String? displayName, - String? iconUrl, - String? id, - bool? isConfigurable, - bool? isNsfw, - @JsonKey( - fromJson: LanguageJsonConverter.fromJson, - toJson: LanguageJsonConverter.toJson) - Language? lang, - String? name, - bool? supportsLatest}); - - $LanguageCopyWith<$Res>? get lang; -} - -/// @nodoc -class _$SourceCopyWithImpl<$Res, $Val extends Source> - implements $SourceCopyWith<$Res> { - _$SourceCopyWithImpl(this._value, this._then); - - // ignore: unused_field - final $Val _value; - // ignore: unused_field - final $Res Function($Val) _then; - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? displayName = freezed, - Object? iconUrl = freezed, - Object? id = freezed, - Object? isConfigurable = freezed, - Object? isNsfw = freezed, - Object? lang = freezed, - Object? name = freezed, - Object? supportsLatest = freezed, - }) { - return _then(_value.copyWith( - displayName: freezed == displayName - ? _value.displayName - : displayName // ignore: cast_nullable_to_non_nullable - as String?, - iconUrl: freezed == iconUrl - ? _value.iconUrl - : iconUrl // ignore: cast_nullable_to_non_nullable - as String?, - id: freezed == id - ? _value.id - : id // ignore: cast_nullable_to_non_nullable - as String?, - isConfigurable: freezed == isConfigurable - ? _value.isConfigurable - : isConfigurable // ignore: cast_nullable_to_non_nullable - as bool?, - isNsfw: freezed == isNsfw - ? _value.isNsfw - : isNsfw // ignore: cast_nullable_to_non_nullable - as bool?, - lang: freezed == lang - ? _value.lang - : lang // ignore: cast_nullable_to_non_nullable - as Language?, - name: freezed == name - ? _value.name - : name // ignore: cast_nullable_to_non_nullable - as String?, - supportsLatest: freezed == supportsLatest - ? _value.supportsLatest - : supportsLatest // ignore: cast_nullable_to_non_nullable - as bool?, - ) as $Val); - } - - @override - @pragma('vm:prefer-inline') - $LanguageCopyWith<$Res>? get lang { - if (_value.lang == null) { - return null; - } - - return $LanguageCopyWith<$Res>(_value.lang!, (value) { - return _then(_value.copyWith(lang: value) as $Val); - }); - } -} - -/// @nodoc -abstract class _$$SourceImplCopyWith<$Res> implements $SourceCopyWith<$Res> { - factory _$$SourceImplCopyWith( - _$SourceImpl value, $Res Function(_$SourceImpl) then) = - __$$SourceImplCopyWithImpl<$Res>; - @override - @useResult - $Res call( - {String? displayName, - String? iconUrl, - String? id, - bool? isConfigurable, - bool? isNsfw, - @JsonKey( - fromJson: LanguageJsonConverter.fromJson, - toJson: LanguageJsonConverter.toJson) - Language? lang, - String? name, - bool? supportsLatest}); - - @override - $LanguageCopyWith<$Res>? get lang; -} - -/// @nodoc -class __$$SourceImplCopyWithImpl<$Res> - extends _$SourceCopyWithImpl<$Res, _$SourceImpl> - implements _$$SourceImplCopyWith<$Res> { - __$$SourceImplCopyWithImpl( - _$SourceImpl _value, $Res Function(_$SourceImpl) _then) - : super(_value, _then); - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? displayName = freezed, - Object? iconUrl = freezed, - Object? id = freezed, - Object? isConfigurable = freezed, - Object? isNsfw = freezed, - Object? lang = freezed, - Object? name = freezed, - Object? supportsLatest = freezed, - }) { - return _then(_$SourceImpl( - displayName: freezed == displayName - ? _value.displayName - : displayName // ignore: cast_nullable_to_non_nullable - as String?, - iconUrl: freezed == iconUrl - ? _value.iconUrl - : iconUrl // ignore: cast_nullable_to_non_nullable - as String?, - id: freezed == id - ? _value.id - : id // ignore: cast_nullable_to_non_nullable - as String?, - isConfigurable: freezed == isConfigurable - ? _value.isConfigurable - : isConfigurable // ignore: cast_nullable_to_non_nullable - as bool?, - isNsfw: freezed == isNsfw - ? _value.isNsfw - : isNsfw // ignore: cast_nullable_to_non_nullable - as bool?, - lang: freezed == lang - ? _value.lang - : lang // ignore: cast_nullable_to_non_nullable - as Language?, - name: freezed == name - ? _value.name - : name // ignore: cast_nullable_to_non_nullable - as String?, - supportsLatest: freezed == supportsLatest - ? _value.supportsLatest - : supportsLatest // ignore: cast_nullable_to_non_nullable - as bool?, - )); - } -} - -/// @nodoc -@JsonSerializable() -class _$SourceImpl implements _Source { - _$SourceImpl( - {this.displayName, - this.iconUrl, - this.id, - this.isConfigurable, - this.isNsfw, - @JsonKey( - fromJson: LanguageJsonConverter.fromJson, - toJson: LanguageJsonConverter.toJson) - this.lang, - this.name, - this.supportsLatest}); - - factory _$SourceImpl.fromJson(Map json) => - _$$SourceImplFromJson(json); - - @override - final String? displayName; - @override - final String? iconUrl; - @override - final String? id; - @override - final bool? isConfigurable; - @override - final bool? isNsfw; - @override - @JsonKey( - fromJson: LanguageJsonConverter.fromJson, - toJson: LanguageJsonConverter.toJson) - final Language? lang; - @override - final String? name; - @override - final bool? supportsLatest; - - @override - String toString() { - return 'Source(displayName: $displayName, iconUrl: $iconUrl, id: $id, isConfigurable: $isConfigurable, isNsfw: $isNsfw, lang: $lang, name: $name, supportsLatest: $supportsLatest)'; - } - - @override - bool operator ==(dynamic other) { - return identical(this, other) || - (other.runtimeType == runtimeType && - other is _$SourceImpl && - (identical(other.displayName, displayName) || - other.displayName == displayName) && - (identical(other.iconUrl, iconUrl) || other.iconUrl == iconUrl) && - (identical(other.id, id) || other.id == id) && - (identical(other.isConfigurable, isConfigurable) || - other.isConfigurable == isConfigurable) && - (identical(other.isNsfw, isNsfw) || other.isNsfw == isNsfw) && - (identical(other.lang, lang) || other.lang == lang) && - (identical(other.name, name) || other.name == name) && - (identical(other.supportsLatest, supportsLatest) || - other.supportsLatest == supportsLatest)); - } - - @JsonKey(ignore: true) - @override - int get hashCode => Object.hash(runtimeType, displayName, iconUrl, id, - isConfigurable, isNsfw, lang, name, supportsLatest); - - @JsonKey(ignore: true) - @override - @pragma('vm:prefer-inline') - _$$SourceImplCopyWith<_$SourceImpl> get copyWith => - __$$SourceImplCopyWithImpl<_$SourceImpl>(this, _$identity); - - @override - Map toJson() { - return _$$SourceImplToJson( - this, - ); - } -} - -abstract class _Source implements Source { - factory _Source( - {final String? displayName, - final String? iconUrl, - final String? id, - final bool? isConfigurable, - final bool? isNsfw, - @JsonKey( - fromJson: LanguageJsonConverter.fromJson, - toJson: LanguageJsonConverter.toJson) - final Language? lang, - final String? name, - final bool? supportsLatest}) = _$SourceImpl; - - factory _Source.fromJson(Map json) = _$SourceImpl.fromJson; - - @override - String? get displayName; - @override - String? get iconUrl; - @override - String? get id; - @override - bool? get isConfigurable; - @override - bool? get isNsfw; - @override - @JsonKey( - fromJson: LanguageJsonConverter.fromJson, - toJson: LanguageJsonConverter.toJson) - Language? get lang; - @override - String? get name; - @override - bool? get supportsLatest; - @override - @JsonKey(ignore: true) - _$$SourceImplCopyWith<_$SourceImpl> get copyWith => - throw _privateConstructorUsedError; -} diff --git a/lib/src/features/browse_center/domain/source/source_model.g.dart b/lib/src/features/browse_center/domain/source/source_model.g.dart deleted file mode 100644 index fe5d0f73..00000000 --- a/lib/src/features/browse_center/domain/source/source_model.g.dart +++ /dev/null @@ -1,30 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'source_model.dart'; - -// ************************************************************************** -// JsonSerializableGenerator -// ************************************************************************** - -_$SourceImpl _$$SourceImplFromJson(Map json) => _$SourceImpl( - displayName: json['displayName'] as String?, - iconUrl: json['iconUrl'] as String?, - id: json['id'] as String?, - isConfigurable: json['isConfigurable'] as bool?, - isNsfw: json['isNsfw'] as bool?, - lang: LanguageJsonConverter.fromJson(json['lang'] as String?), - name: json['name'] as String?, - supportsLatest: json['supportsLatest'] as bool?, - ); - -Map _$$SourceImplToJson(_$SourceImpl instance) => - { - 'displayName': instance.displayName, - 'iconUrl': instance.iconUrl, - 'id': instance.id, - 'isConfigurable': instance.isConfigurable, - 'isNsfw': instance.isNsfw, - 'lang': LanguageJsonConverter.toJson(instance.lang), - 'name': instance.name, - 'supportsLatest': instance.supportsLatest, - }; diff --git a/lib/src/features/browse_center/domain/source_preference/source_preference.dart b/lib/src/features/browse_center/domain/source_preference/source_preference.dart deleted file mode 100644 index 43f385c1..00000000 --- a/lib/src/features/browse_center/domain/source_preference/source_preference.dart +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright (c) 2023 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:freezed_annotation/freezed_annotation.dart'; - -import '../source_preference_prop/source_preference_prop.dart'; - -part 'source_preference.freezed.dart'; -part 'source_preference.g.dart'; - -@freezed -class SourcePreference with _$SourcePreference { - factory SourcePreference({ - String? type, - @JsonKey(readValue: SourcePreference.propsFromJson, name: 'props') - SourcePreferenceProp? sourcePreferenceProp, - }) = _SourcePreference; - - factory SourcePreference.fromJson(Map json) => - _$SourcePreferenceFromJson(json); - - static Map propsFromJson( - Map json, String str) { - final props = json['props']; - final type = json['type']; - if (type == 'MultiSelectListPreference' || type == 'ListPreference') { - final entries = props['entries']; - final entryValues = props['entryValues']; - if (entries != null && - entries is List && - entryValues != null && - entryValues is List) { - props['entries'] = Map.fromIterables( - entryValues.map((e) => e.toString()), - entries.map((e) => e.toString()), - ); - } - } - return { - 'type': json['type'], - if (props is Map) ...props, - }; - } -} diff --git a/lib/src/features/browse_center/domain/source_preference/source_preference.freezed.dart b/lib/src/features/browse_center/domain/source_preference/source_preference.freezed.dart deleted file mode 100644 index fa46e716..00000000 --- a/lib/src/features/browse_center/domain/source_preference/source_preference.freezed.dart +++ /dev/null @@ -1,204 +0,0 @@ -// coverage:ignore-file -// GENERATED CODE - DO NOT MODIFY BY HAND -// ignore_for_file: type=lint -// ignore_for_file: unused_element, deprecated_member_use, deprecated_member_use_from_same_package, use_function_type_syntax_for_parameters, unnecessary_const, avoid_init_to_null, invalid_override_different_default_values_named, prefer_expression_function_bodies, annotate_overrides, invalid_annotation_target, unnecessary_question_mark - -part of 'source_preference.dart'; - -// ************************************************************************** -// FreezedGenerator -// ************************************************************************** - -T _$identity(T value) => value; - -final _privateConstructorUsedError = UnsupportedError( - 'It seems like you constructed your class using `MyClass._()`. This constructor is only meant to be used by freezed and you are not supposed to need it nor use it.\nPlease check the documentation here for more information: https://github.com/rrousselGit/freezed#custom-getters-and-methods'); - -SourcePreference _$SourcePreferenceFromJson(Map json) { - return _SourcePreference.fromJson(json); -} - -/// @nodoc -mixin _$SourcePreference { - String? get type => throw _privateConstructorUsedError; - @JsonKey(readValue: SourcePreference.propsFromJson, name: 'props') - SourcePreferenceProp? get sourcePreferenceProp => - throw _privateConstructorUsedError; - - Map toJson() => throw _privateConstructorUsedError; - @JsonKey(ignore: true) - $SourcePreferenceCopyWith get copyWith => - throw _privateConstructorUsedError; -} - -/// @nodoc -abstract class $SourcePreferenceCopyWith<$Res> { - factory $SourcePreferenceCopyWith( - SourcePreference value, $Res Function(SourcePreference) then) = - _$SourcePreferenceCopyWithImpl<$Res, SourcePreference>; - @useResult - $Res call( - {String? type, - @JsonKey(readValue: SourcePreference.propsFromJson, name: 'props') - SourcePreferenceProp? sourcePreferenceProp}); - - $SourcePreferencePropCopyWith<$Res>? get sourcePreferenceProp; -} - -/// @nodoc -class _$SourcePreferenceCopyWithImpl<$Res, $Val extends SourcePreference> - implements $SourcePreferenceCopyWith<$Res> { - _$SourcePreferenceCopyWithImpl(this._value, this._then); - - // ignore: unused_field - final $Val _value; - // ignore: unused_field - final $Res Function($Val) _then; - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? type = freezed, - Object? sourcePreferenceProp = freezed, - }) { - return _then(_value.copyWith( - type: freezed == type - ? _value.type - : type // ignore: cast_nullable_to_non_nullable - as String?, - sourcePreferenceProp: freezed == sourcePreferenceProp - ? _value.sourcePreferenceProp - : sourcePreferenceProp // ignore: cast_nullable_to_non_nullable - as SourcePreferenceProp?, - ) as $Val); - } - - @override - @pragma('vm:prefer-inline') - $SourcePreferencePropCopyWith<$Res>? get sourcePreferenceProp { - if (_value.sourcePreferenceProp == null) { - return null; - } - - return $SourcePreferencePropCopyWith<$Res>(_value.sourcePreferenceProp!, - (value) { - return _then(_value.copyWith(sourcePreferenceProp: value) as $Val); - }); - } -} - -/// @nodoc -abstract class _$$SourcePreferenceImplCopyWith<$Res> - implements $SourcePreferenceCopyWith<$Res> { - factory _$$SourcePreferenceImplCopyWith(_$SourcePreferenceImpl value, - $Res Function(_$SourcePreferenceImpl) then) = - __$$SourcePreferenceImplCopyWithImpl<$Res>; - @override - @useResult - $Res call( - {String? type, - @JsonKey(readValue: SourcePreference.propsFromJson, name: 'props') - SourcePreferenceProp? sourcePreferenceProp}); - - @override - $SourcePreferencePropCopyWith<$Res>? get sourcePreferenceProp; -} - -/// @nodoc -class __$$SourcePreferenceImplCopyWithImpl<$Res> - extends _$SourcePreferenceCopyWithImpl<$Res, _$SourcePreferenceImpl> - implements _$$SourcePreferenceImplCopyWith<$Res> { - __$$SourcePreferenceImplCopyWithImpl(_$SourcePreferenceImpl _value, - $Res Function(_$SourcePreferenceImpl) _then) - : super(_value, _then); - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? type = freezed, - Object? sourcePreferenceProp = freezed, - }) { - return _then(_$SourcePreferenceImpl( - type: freezed == type - ? _value.type - : type // ignore: cast_nullable_to_non_nullable - as String?, - sourcePreferenceProp: freezed == sourcePreferenceProp - ? _value.sourcePreferenceProp - : sourcePreferenceProp // ignore: cast_nullable_to_non_nullable - as SourcePreferenceProp?, - )); - } -} - -/// @nodoc -@JsonSerializable() -class _$SourcePreferenceImpl implements _SourcePreference { - _$SourcePreferenceImpl( - {this.type, - @JsonKey(readValue: SourcePreference.propsFromJson, name: 'props') - this.sourcePreferenceProp}); - - factory _$SourcePreferenceImpl.fromJson(Map json) => - _$$SourcePreferenceImplFromJson(json); - - @override - final String? type; - @override - @JsonKey(readValue: SourcePreference.propsFromJson, name: 'props') - final SourcePreferenceProp? sourcePreferenceProp; - - @override - String toString() { - return 'SourcePreference(type: $type, sourcePreferenceProp: $sourcePreferenceProp)'; - } - - @override - bool operator ==(dynamic other) { - return identical(this, other) || - (other.runtimeType == runtimeType && - other is _$SourcePreferenceImpl && - (identical(other.type, type) || other.type == type) && - (identical(other.sourcePreferenceProp, sourcePreferenceProp) || - other.sourcePreferenceProp == sourcePreferenceProp)); - } - - @JsonKey(ignore: true) - @override - int get hashCode => Object.hash(runtimeType, type, sourcePreferenceProp); - - @JsonKey(ignore: true) - @override - @pragma('vm:prefer-inline') - _$$SourcePreferenceImplCopyWith<_$SourcePreferenceImpl> get copyWith => - __$$SourcePreferenceImplCopyWithImpl<_$SourcePreferenceImpl>( - this, _$identity); - - @override - Map toJson() { - return _$$SourcePreferenceImplToJson( - this, - ); - } -} - -abstract class _SourcePreference implements SourcePreference { - factory _SourcePreference( - {final String? type, - @JsonKey(readValue: SourcePreference.propsFromJson, name: 'props') - final SourcePreferenceProp? sourcePreferenceProp}) = - _$SourcePreferenceImpl; - - factory _SourcePreference.fromJson(Map json) = - _$SourcePreferenceImpl.fromJson; - - @override - String? get type; - @override - @JsonKey(readValue: SourcePreference.propsFromJson, name: 'props') - SourcePreferenceProp? get sourcePreferenceProp; - @override - @JsonKey(ignore: true) - _$$SourcePreferenceImplCopyWith<_$SourcePreferenceImpl> get copyWith => - throw _privateConstructorUsedError; -} diff --git a/lib/src/features/browse_center/domain/source_preference/source_preference.g.dart b/lib/src/features/browse_center/domain/source_preference/source_preference.g.dart deleted file mode 100644 index 1428f386..00000000 --- a/lib/src/features/browse_center/domain/source_preference/source_preference.g.dart +++ /dev/null @@ -1,26 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'source_preference.dart'; - -// ************************************************************************** -// JsonSerializableGenerator -// ************************************************************************** - -_$SourcePreferenceImpl _$$SourcePreferenceImplFromJson( - Map json) => - _$SourcePreferenceImpl( - type: json['type'] as String?, - sourcePreferenceProp: - SourcePreference.propsFromJson(json, 'props') == null - ? null - : SourcePreferenceProp.fromJson( - SourcePreference.propsFromJson(json, 'props') - as Map), - ); - -Map _$$SourcePreferenceImplToJson( - _$SourcePreferenceImpl instance) => - { - 'type': instance.type, - 'props': instance.sourcePreferenceProp?.toJson(), - }; diff --git a/lib/src/features/browse_center/domain/source_preference_prop/source_preference_prop.dart b/lib/src/features/browse_center/domain/source_preference_prop/source_preference_prop.dart deleted file mode 100644 index 24094424..00000000 --- a/lib/src/features/browse_center/domain/source_preference_prop/source_preference_prop.dart +++ /dev/null @@ -1,75 +0,0 @@ -// Copyright (c) 2023 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:freezed_annotation/freezed_annotation.dart'; - -part 'source_preference_prop.freezed.dart'; -part 'source_preference_prop.g.dart'; - -@Freezed( - unionKey: 'type', - unionValueCase: FreezedUnionCase.pascal, - fallbackUnion: 'fallback', -) -sealed class SourcePreferenceProp with _$SourcePreferenceProp { - const factory SourcePreferenceProp.fallback({ - String? key, - dynamic currentValue, - }) = Fallback; - - const factory SourcePreferenceProp.checkBoxPreference({ - String? key, - String? title, - String? summary, - bool? defaultValue, - bool? currentValue, - String? defaultValueType, - }) = CheckBoxPreference; - - const factory SourcePreferenceProp.switchPreferenceCompat({ - String? key, - String? title, - String? summary, - bool? defaultValue, - bool? currentValue, - String? defaultValueType, - }) = SwitchPreferenceCompat; - - const factory SourcePreferenceProp.listPreference({ - String? key, - String? title, - String? summary, - String? defaultValue, - String? currentValue, - String? defaultValueType, - Map? entries, - }) = ListPreference; - - const factory SourcePreferenceProp.multiSelectListPreference({ - String? key, - String? title, - String? summary, - List? defaultValue, - List? currentValue, - String? defaultValueType, - Map? entries, - }) = MultiSelectListPreference; - - const factory SourcePreferenceProp.editTextPreference({ - String? key, - String? title, - String? summary, - String? defaultValue, - String? currentValue, - String? defaultValueType, - String? dialogTitle, - String? dialogMessage, - String? text, - }) = EditTextPreference; - - factory SourcePreferenceProp.fromJson(Map json) => - _$SourcePreferencePropFromJson(json); -} diff --git a/lib/src/features/browse_center/domain/source_preference_prop/source_preference_prop.freezed.dart b/lib/src/features/browse_center/domain/source_preference_prop/source_preference_prop.freezed.dart deleted file mode 100644 index 8687e5d7..00000000 --- a/lib/src/features/browse_center/domain/source_preference_prop/source_preference_prop.freezed.dart +++ /dev/null @@ -1,2374 +0,0 @@ -// coverage:ignore-file -// GENERATED CODE - DO NOT MODIFY BY HAND -// ignore_for_file: type=lint -// ignore_for_file: unused_element, deprecated_member_use, deprecated_member_use_from_same_package, use_function_type_syntax_for_parameters, unnecessary_const, avoid_init_to_null, invalid_override_different_default_values_named, prefer_expression_function_bodies, annotate_overrides, invalid_annotation_target, unnecessary_question_mark - -part of 'source_preference_prop.dart'; - -// ************************************************************************** -// FreezedGenerator -// ************************************************************************** - -T _$identity(T value) => value; - -final _privateConstructorUsedError = UnsupportedError( - 'It seems like you constructed your class using `MyClass._()`. This constructor is only meant to be used by freezed and you are not supposed to need it nor use it.\nPlease check the documentation here for more information: https://github.com/rrousselGit/freezed#custom-getters-and-methods'); - -SourcePreferenceProp _$SourcePreferencePropFromJson(Map json) { - switch (json['type']) { - case 'CheckBoxPreference': - return CheckBoxPreference.fromJson(json); - case 'SwitchPreferenceCompat': - return SwitchPreferenceCompat.fromJson(json); - case 'ListPreference': - return ListPreference.fromJson(json); - case 'MultiSelectListPreference': - return MultiSelectListPreference.fromJson(json); - case 'EditTextPreference': - return EditTextPreference.fromJson(json); - - default: - return Fallback.fromJson(json); - } -} - -/// @nodoc -mixin _$SourcePreferenceProp { - String? get key => throw _privateConstructorUsedError; - dynamic get currentValue => throw _privateConstructorUsedError; - @optionalTypeArgs - TResult when({ - required TResult Function(String? key, dynamic currentValue) fallback, - required TResult Function(String? key, String? title, String? summary, - bool? defaultValue, bool? currentValue, String? defaultValueType) - checkBoxPreference, - required TResult Function(String? key, String? title, String? summary, - bool? defaultValue, bool? currentValue, String? defaultValueType) - switchPreferenceCompat, - required TResult Function( - String? key, - String? title, - String? summary, - String? defaultValue, - String? currentValue, - String? defaultValueType, - Map? entries) - listPreference, - required TResult Function( - String? key, - String? title, - String? summary, - List? defaultValue, - List? currentValue, - String? defaultValueType, - Map? entries) - multiSelectListPreference, - required TResult Function( - String? key, - String? title, - String? summary, - String? defaultValue, - String? currentValue, - String? defaultValueType, - String? dialogTitle, - String? dialogMessage, - String? text) - editTextPreference, - }) => - throw _privateConstructorUsedError; - @optionalTypeArgs - TResult? whenOrNull({ - TResult? Function(String? key, dynamic currentValue)? fallback, - TResult? Function(String? key, String? title, String? summary, - bool? defaultValue, bool? currentValue, String? defaultValueType)? - checkBoxPreference, - TResult? Function(String? key, String? title, String? summary, - bool? defaultValue, bool? currentValue, String? defaultValueType)? - switchPreferenceCompat, - TResult? Function( - String? key, - String? title, - String? summary, - String? defaultValue, - String? currentValue, - String? defaultValueType, - Map? entries)? - listPreference, - TResult? Function( - String? key, - String? title, - String? summary, - List? defaultValue, - List? currentValue, - String? defaultValueType, - Map? entries)? - multiSelectListPreference, - TResult? Function( - String? key, - String? title, - String? summary, - String? defaultValue, - String? currentValue, - String? defaultValueType, - String? dialogTitle, - String? dialogMessage, - String? text)? - editTextPreference, - }) => - throw _privateConstructorUsedError; - @optionalTypeArgs - TResult maybeWhen({ - TResult Function(String? key, dynamic currentValue)? fallback, - TResult Function(String? key, String? title, String? summary, - bool? defaultValue, bool? currentValue, String? defaultValueType)? - checkBoxPreference, - TResult Function(String? key, String? title, String? summary, - bool? defaultValue, bool? currentValue, String? defaultValueType)? - switchPreferenceCompat, - TResult Function( - String? key, - String? title, - String? summary, - String? defaultValue, - String? currentValue, - String? defaultValueType, - Map? entries)? - listPreference, - TResult Function( - String? key, - String? title, - String? summary, - List? defaultValue, - List? currentValue, - String? defaultValueType, - Map? entries)? - multiSelectListPreference, - TResult Function( - String? key, - String? title, - String? summary, - String? defaultValue, - String? currentValue, - String? defaultValueType, - String? dialogTitle, - String? dialogMessage, - String? text)? - editTextPreference, - required TResult orElse(), - }) => - throw _privateConstructorUsedError; - @optionalTypeArgs - TResult map({ - required TResult Function(Fallback value) fallback, - required TResult Function(CheckBoxPreference value) checkBoxPreference, - required TResult Function(SwitchPreferenceCompat value) - switchPreferenceCompat, - required TResult Function(ListPreference value) listPreference, - required TResult Function(MultiSelectListPreference value) - multiSelectListPreference, - required TResult Function(EditTextPreference value) editTextPreference, - }) => - throw _privateConstructorUsedError; - @optionalTypeArgs - TResult? mapOrNull({ - TResult? Function(Fallback value)? fallback, - TResult? Function(CheckBoxPreference value)? checkBoxPreference, - TResult? Function(SwitchPreferenceCompat value)? switchPreferenceCompat, - TResult? Function(ListPreference value)? listPreference, - TResult? Function(MultiSelectListPreference value)? - multiSelectListPreference, - TResult? Function(EditTextPreference value)? editTextPreference, - }) => - throw _privateConstructorUsedError; - @optionalTypeArgs - TResult maybeMap({ - TResult Function(Fallback value)? fallback, - TResult Function(CheckBoxPreference value)? checkBoxPreference, - TResult Function(SwitchPreferenceCompat value)? switchPreferenceCompat, - TResult Function(ListPreference value)? listPreference, - TResult Function(MultiSelectListPreference value)? - multiSelectListPreference, - TResult Function(EditTextPreference value)? editTextPreference, - required TResult orElse(), - }) => - throw _privateConstructorUsedError; - Map toJson() => throw _privateConstructorUsedError; - @JsonKey(ignore: true) - $SourcePreferencePropCopyWith get copyWith => - throw _privateConstructorUsedError; -} - -/// @nodoc -abstract class $SourcePreferencePropCopyWith<$Res> { - factory $SourcePreferencePropCopyWith(SourcePreferenceProp value, - $Res Function(SourcePreferenceProp) then) = - _$SourcePreferencePropCopyWithImpl<$Res, SourcePreferenceProp>; - @useResult - $Res call({String? key}); -} - -/// @nodoc -class _$SourcePreferencePropCopyWithImpl<$Res, - $Val extends SourcePreferenceProp> - implements $SourcePreferencePropCopyWith<$Res> { - _$SourcePreferencePropCopyWithImpl(this._value, this._then); - - // ignore: unused_field - final $Val _value; - // ignore: unused_field - final $Res Function($Val) _then; - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? key = freezed, - }) { - return _then(_value.copyWith( - key: freezed == key - ? _value.key - : key // ignore: cast_nullable_to_non_nullable - as String?, - ) as $Val); - } -} - -/// @nodoc -abstract class _$$FallbackImplCopyWith<$Res> - implements $SourcePreferencePropCopyWith<$Res> { - factory _$$FallbackImplCopyWith( - _$FallbackImpl value, $Res Function(_$FallbackImpl) then) = - __$$FallbackImplCopyWithImpl<$Res>; - @override - @useResult - $Res call({String? key, dynamic currentValue}); -} - -/// @nodoc -class __$$FallbackImplCopyWithImpl<$Res> - extends _$SourcePreferencePropCopyWithImpl<$Res, _$FallbackImpl> - implements _$$FallbackImplCopyWith<$Res> { - __$$FallbackImplCopyWithImpl( - _$FallbackImpl _value, $Res Function(_$FallbackImpl) _then) - : super(_value, _then); - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? key = freezed, - Object? currentValue = freezed, - }) { - return _then(_$FallbackImpl( - key: freezed == key - ? _value.key - : key // ignore: cast_nullable_to_non_nullable - as String?, - currentValue: freezed == currentValue - ? _value.currentValue - : currentValue // ignore: cast_nullable_to_non_nullable - as dynamic, - )); - } -} - -/// @nodoc -@JsonSerializable() -class _$FallbackImpl implements Fallback { - const _$FallbackImpl({this.key, this.currentValue, final String? $type}) - : $type = $type ?? 'Fallback'; - - factory _$FallbackImpl.fromJson(Map json) => - _$$FallbackImplFromJson(json); - - @override - final String? key; - @override - final dynamic currentValue; - - @JsonKey(name: 'type') - final String $type; - - @override - String toString() { - return 'SourcePreferenceProp.fallback(key: $key, currentValue: $currentValue)'; - } - - @override - bool operator ==(dynamic other) { - return identical(this, other) || - (other.runtimeType == runtimeType && - other is _$FallbackImpl && - (identical(other.key, key) || other.key == key) && - const DeepCollectionEquality() - .equals(other.currentValue, currentValue)); - } - - @JsonKey(ignore: true) - @override - int get hashCode => Object.hash( - runtimeType, key, const DeepCollectionEquality().hash(currentValue)); - - @JsonKey(ignore: true) - @override - @pragma('vm:prefer-inline') - _$$FallbackImplCopyWith<_$FallbackImpl> get copyWith => - __$$FallbackImplCopyWithImpl<_$FallbackImpl>(this, _$identity); - - @override - @optionalTypeArgs - TResult when({ - required TResult Function(String? key, dynamic currentValue) fallback, - required TResult Function(String? key, String? title, String? summary, - bool? defaultValue, bool? currentValue, String? defaultValueType) - checkBoxPreference, - required TResult Function(String? key, String? title, String? summary, - bool? defaultValue, bool? currentValue, String? defaultValueType) - switchPreferenceCompat, - required TResult Function( - String? key, - String? title, - String? summary, - String? defaultValue, - String? currentValue, - String? defaultValueType, - Map? entries) - listPreference, - required TResult Function( - String? key, - String? title, - String? summary, - List? defaultValue, - List? currentValue, - String? defaultValueType, - Map? entries) - multiSelectListPreference, - required TResult Function( - String? key, - String? title, - String? summary, - String? defaultValue, - String? currentValue, - String? defaultValueType, - String? dialogTitle, - String? dialogMessage, - String? text) - editTextPreference, - }) { - return fallback(key, currentValue); - } - - @override - @optionalTypeArgs - TResult? whenOrNull({ - TResult? Function(String? key, dynamic currentValue)? fallback, - TResult? Function(String? key, String? title, String? summary, - bool? defaultValue, bool? currentValue, String? defaultValueType)? - checkBoxPreference, - TResult? Function(String? key, String? title, String? summary, - bool? defaultValue, bool? currentValue, String? defaultValueType)? - switchPreferenceCompat, - TResult? Function( - String? key, - String? title, - String? summary, - String? defaultValue, - String? currentValue, - String? defaultValueType, - Map? entries)? - listPreference, - TResult? Function( - String? key, - String? title, - String? summary, - List? defaultValue, - List? currentValue, - String? defaultValueType, - Map? entries)? - multiSelectListPreference, - TResult? Function( - String? key, - String? title, - String? summary, - String? defaultValue, - String? currentValue, - String? defaultValueType, - String? dialogTitle, - String? dialogMessage, - String? text)? - editTextPreference, - }) { - return fallback?.call(key, currentValue); - } - - @override - @optionalTypeArgs - TResult maybeWhen({ - TResult Function(String? key, dynamic currentValue)? fallback, - TResult Function(String? key, String? title, String? summary, - bool? defaultValue, bool? currentValue, String? defaultValueType)? - checkBoxPreference, - TResult Function(String? key, String? title, String? summary, - bool? defaultValue, bool? currentValue, String? defaultValueType)? - switchPreferenceCompat, - TResult Function( - String? key, - String? title, - String? summary, - String? defaultValue, - String? currentValue, - String? defaultValueType, - Map? entries)? - listPreference, - TResult Function( - String? key, - String? title, - String? summary, - List? defaultValue, - List? currentValue, - String? defaultValueType, - Map? entries)? - multiSelectListPreference, - TResult Function( - String? key, - String? title, - String? summary, - String? defaultValue, - String? currentValue, - String? defaultValueType, - String? dialogTitle, - String? dialogMessage, - String? text)? - editTextPreference, - required TResult orElse(), - }) { - if (fallback != null) { - return fallback(key, currentValue); - } - return orElse(); - } - - @override - @optionalTypeArgs - TResult map({ - required TResult Function(Fallback value) fallback, - required TResult Function(CheckBoxPreference value) checkBoxPreference, - required TResult Function(SwitchPreferenceCompat value) - switchPreferenceCompat, - required TResult Function(ListPreference value) listPreference, - required TResult Function(MultiSelectListPreference value) - multiSelectListPreference, - required TResult Function(EditTextPreference value) editTextPreference, - }) { - return fallback(this); - } - - @override - @optionalTypeArgs - TResult? mapOrNull({ - TResult? Function(Fallback value)? fallback, - TResult? Function(CheckBoxPreference value)? checkBoxPreference, - TResult? Function(SwitchPreferenceCompat value)? switchPreferenceCompat, - TResult? Function(ListPreference value)? listPreference, - TResult? Function(MultiSelectListPreference value)? - multiSelectListPreference, - TResult? Function(EditTextPreference value)? editTextPreference, - }) { - return fallback?.call(this); - } - - @override - @optionalTypeArgs - TResult maybeMap({ - TResult Function(Fallback value)? fallback, - TResult Function(CheckBoxPreference value)? checkBoxPreference, - TResult Function(SwitchPreferenceCompat value)? switchPreferenceCompat, - TResult Function(ListPreference value)? listPreference, - TResult Function(MultiSelectListPreference value)? - multiSelectListPreference, - TResult Function(EditTextPreference value)? editTextPreference, - required TResult orElse(), - }) { - if (fallback != null) { - return fallback(this); - } - return orElse(); - } - - @override - Map toJson() { - return _$$FallbackImplToJson( - this, - ); - } -} - -abstract class Fallback implements SourcePreferenceProp { - const factory Fallback({final String? key, final dynamic currentValue}) = - _$FallbackImpl; - - factory Fallback.fromJson(Map json) = - _$FallbackImpl.fromJson; - - @override - String? get key; - @override - dynamic get currentValue; - @override - @JsonKey(ignore: true) - _$$FallbackImplCopyWith<_$FallbackImpl> get copyWith => - throw _privateConstructorUsedError; -} - -/// @nodoc -abstract class _$$CheckBoxPreferenceImplCopyWith<$Res> - implements $SourcePreferencePropCopyWith<$Res> { - factory _$$CheckBoxPreferenceImplCopyWith(_$CheckBoxPreferenceImpl value, - $Res Function(_$CheckBoxPreferenceImpl) then) = - __$$CheckBoxPreferenceImplCopyWithImpl<$Res>; - @override - @useResult - $Res call( - {String? key, - String? title, - String? summary, - bool? defaultValue, - bool? currentValue, - String? defaultValueType}); -} - -/// @nodoc -class __$$CheckBoxPreferenceImplCopyWithImpl<$Res> - extends _$SourcePreferencePropCopyWithImpl<$Res, _$CheckBoxPreferenceImpl> - implements _$$CheckBoxPreferenceImplCopyWith<$Res> { - __$$CheckBoxPreferenceImplCopyWithImpl(_$CheckBoxPreferenceImpl _value, - $Res Function(_$CheckBoxPreferenceImpl) _then) - : super(_value, _then); - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? key = freezed, - Object? title = freezed, - Object? summary = freezed, - Object? defaultValue = freezed, - Object? currentValue = freezed, - Object? defaultValueType = freezed, - }) { - return _then(_$CheckBoxPreferenceImpl( - key: freezed == key - ? _value.key - : key // ignore: cast_nullable_to_non_nullable - as String?, - title: freezed == title - ? _value.title - : title // ignore: cast_nullable_to_non_nullable - as String?, - summary: freezed == summary - ? _value.summary - : summary // ignore: cast_nullable_to_non_nullable - as String?, - defaultValue: freezed == defaultValue - ? _value.defaultValue - : defaultValue // ignore: cast_nullable_to_non_nullable - as bool?, - currentValue: freezed == currentValue - ? _value.currentValue - : currentValue // ignore: cast_nullable_to_non_nullable - as bool?, - defaultValueType: freezed == defaultValueType - ? _value.defaultValueType - : defaultValueType // ignore: cast_nullable_to_non_nullable - as String?, - )); - } -} - -/// @nodoc -@JsonSerializable() -class _$CheckBoxPreferenceImpl implements CheckBoxPreference { - const _$CheckBoxPreferenceImpl( - {this.key, - this.title, - this.summary, - this.defaultValue, - this.currentValue, - this.defaultValueType, - final String? $type}) - : $type = $type ?? 'CheckBoxPreference'; - - factory _$CheckBoxPreferenceImpl.fromJson(Map json) => - _$$CheckBoxPreferenceImplFromJson(json); - - @override - final String? key; - @override - final String? title; - @override - final String? summary; - @override - final bool? defaultValue; - @override - final bool? currentValue; - @override - final String? defaultValueType; - - @JsonKey(name: 'type') - final String $type; - - @override - String toString() { - return 'SourcePreferenceProp.checkBoxPreference(key: $key, title: $title, summary: $summary, defaultValue: $defaultValue, currentValue: $currentValue, defaultValueType: $defaultValueType)'; - } - - @override - bool operator ==(dynamic other) { - return identical(this, other) || - (other.runtimeType == runtimeType && - other is _$CheckBoxPreferenceImpl && - (identical(other.key, key) || other.key == key) && - (identical(other.title, title) || other.title == title) && - (identical(other.summary, summary) || other.summary == summary) && - (identical(other.defaultValue, defaultValue) || - other.defaultValue == defaultValue) && - (identical(other.currentValue, currentValue) || - other.currentValue == currentValue) && - (identical(other.defaultValueType, defaultValueType) || - other.defaultValueType == defaultValueType)); - } - - @JsonKey(ignore: true) - @override - int get hashCode => Object.hash(runtimeType, key, title, summary, - defaultValue, currentValue, defaultValueType); - - @JsonKey(ignore: true) - @override - @pragma('vm:prefer-inline') - _$$CheckBoxPreferenceImplCopyWith<_$CheckBoxPreferenceImpl> get copyWith => - __$$CheckBoxPreferenceImplCopyWithImpl<_$CheckBoxPreferenceImpl>( - this, _$identity); - - @override - @optionalTypeArgs - TResult when({ - required TResult Function(String? key, dynamic currentValue) fallback, - required TResult Function(String? key, String? title, String? summary, - bool? defaultValue, bool? currentValue, String? defaultValueType) - checkBoxPreference, - required TResult Function(String? key, String? title, String? summary, - bool? defaultValue, bool? currentValue, String? defaultValueType) - switchPreferenceCompat, - required TResult Function( - String? key, - String? title, - String? summary, - String? defaultValue, - String? currentValue, - String? defaultValueType, - Map? entries) - listPreference, - required TResult Function( - String? key, - String? title, - String? summary, - List? defaultValue, - List? currentValue, - String? defaultValueType, - Map? entries) - multiSelectListPreference, - required TResult Function( - String? key, - String? title, - String? summary, - String? defaultValue, - String? currentValue, - String? defaultValueType, - String? dialogTitle, - String? dialogMessage, - String? text) - editTextPreference, - }) { - return checkBoxPreference( - key, title, summary, defaultValue, currentValue, defaultValueType); - } - - @override - @optionalTypeArgs - TResult? whenOrNull({ - TResult? Function(String? key, dynamic currentValue)? fallback, - TResult? Function(String? key, String? title, String? summary, - bool? defaultValue, bool? currentValue, String? defaultValueType)? - checkBoxPreference, - TResult? Function(String? key, String? title, String? summary, - bool? defaultValue, bool? currentValue, String? defaultValueType)? - switchPreferenceCompat, - TResult? Function( - String? key, - String? title, - String? summary, - String? defaultValue, - String? currentValue, - String? defaultValueType, - Map? entries)? - listPreference, - TResult? Function( - String? key, - String? title, - String? summary, - List? defaultValue, - List? currentValue, - String? defaultValueType, - Map? entries)? - multiSelectListPreference, - TResult? Function( - String? key, - String? title, - String? summary, - String? defaultValue, - String? currentValue, - String? defaultValueType, - String? dialogTitle, - String? dialogMessage, - String? text)? - editTextPreference, - }) { - return checkBoxPreference?.call( - key, title, summary, defaultValue, currentValue, defaultValueType); - } - - @override - @optionalTypeArgs - TResult maybeWhen({ - TResult Function(String? key, dynamic currentValue)? fallback, - TResult Function(String? key, String? title, String? summary, - bool? defaultValue, bool? currentValue, String? defaultValueType)? - checkBoxPreference, - TResult Function(String? key, String? title, String? summary, - bool? defaultValue, bool? currentValue, String? defaultValueType)? - switchPreferenceCompat, - TResult Function( - String? key, - String? title, - String? summary, - String? defaultValue, - String? currentValue, - String? defaultValueType, - Map? entries)? - listPreference, - TResult Function( - String? key, - String? title, - String? summary, - List? defaultValue, - List? currentValue, - String? defaultValueType, - Map? entries)? - multiSelectListPreference, - TResult Function( - String? key, - String? title, - String? summary, - String? defaultValue, - String? currentValue, - String? defaultValueType, - String? dialogTitle, - String? dialogMessage, - String? text)? - editTextPreference, - required TResult orElse(), - }) { - if (checkBoxPreference != null) { - return checkBoxPreference( - key, title, summary, defaultValue, currentValue, defaultValueType); - } - return orElse(); - } - - @override - @optionalTypeArgs - TResult map({ - required TResult Function(Fallback value) fallback, - required TResult Function(CheckBoxPreference value) checkBoxPreference, - required TResult Function(SwitchPreferenceCompat value) - switchPreferenceCompat, - required TResult Function(ListPreference value) listPreference, - required TResult Function(MultiSelectListPreference value) - multiSelectListPreference, - required TResult Function(EditTextPreference value) editTextPreference, - }) { - return checkBoxPreference(this); - } - - @override - @optionalTypeArgs - TResult? mapOrNull({ - TResult? Function(Fallback value)? fallback, - TResult? Function(CheckBoxPreference value)? checkBoxPreference, - TResult? Function(SwitchPreferenceCompat value)? switchPreferenceCompat, - TResult? Function(ListPreference value)? listPreference, - TResult? Function(MultiSelectListPreference value)? - multiSelectListPreference, - TResult? Function(EditTextPreference value)? editTextPreference, - }) { - return checkBoxPreference?.call(this); - } - - @override - @optionalTypeArgs - TResult maybeMap({ - TResult Function(Fallback value)? fallback, - TResult Function(CheckBoxPreference value)? checkBoxPreference, - TResult Function(SwitchPreferenceCompat value)? switchPreferenceCompat, - TResult Function(ListPreference value)? listPreference, - TResult Function(MultiSelectListPreference value)? - multiSelectListPreference, - TResult Function(EditTextPreference value)? editTextPreference, - required TResult orElse(), - }) { - if (checkBoxPreference != null) { - return checkBoxPreference(this); - } - return orElse(); - } - - @override - Map toJson() { - return _$$CheckBoxPreferenceImplToJson( - this, - ); - } -} - -abstract class CheckBoxPreference implements SourcePreferenceProp { - const factory CheckBoxPreference( - {final String? key, - final String? title, - final String? summary, - final bool? defaultValue, - final bool? currentValue, - final String? defaultValueType}) = _$CheckBoxPreferenceImpl; - - factory CheckBoxPreference.fromJson(Map json) = - _$CheckBoxPreferenceImpl.fromJson; - - @override - String? get key; - String? get title; - String? get summary; - bool? get defaultValue; - @override - bool? get currentValue; - String? get defaultValueType; - @override - @JsonKey(ignore: true) - _$$CheckBoxPreferenceImplCopyWith<_$CheckBoxPreferenceImpl> get copyWith => - throw _privateConstructorUsedError; -} - -/// @nodoc -abstract class _$$SwitchPreferenceCompatImplCopyWith<$Res> - implements $SourcePreferencePropCopyWith<$Res> { - factory _$$SwitchPreferenceCompatImplCopyWith( - _$SwitchPreferenceCompatImpl value, - $Res Function(_$SwitchPreferenceCompatImpl) then) = - __$$SwitchPreferenceCompatImplCopyWithImpl<$Res>; - @override - @useResult - $Res call( - {String? key, - String? title, - String? summary, - bool? defaultValue, - bool? currentValue, - String? defaultValueType}); -} - -/// @nodoc -class __$$SwitchPreferenceCompatImplCopyWithImpl<$Res> - extends _$SourcePreferencePropCopyWithImpl<$Res, - _$SwitchPreferenceCompatImpl> - implements _$$SwitchPreferenceCompatImplCopyWith<$Res> { - __$$SwitchPreferenceCompatImplCopyWithImpl( - _$SwitchPreferenceCompatImpl _value, - $Res Function(_$SwitchPreferenceCompatImpl) _then) - : super(_value, _then); - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? key = freezed, - Object? title = freezed, - Object? summary = freezed, - Object? defaultValue = freezed, - Object? currentValue = freezed, - Object? defaultValueType = freezed, - }) { - return _then(_$SwitchPreferenceCompatImpl( - key: freezed == key - ? _value.key - : key // ignore: cast_nullable_to_non_nullable - as String?, - title: freezed == title - ? _value.title - : title // ignore: cast_nullable_to_non_nullable - as String?, - summary: freezed == summary - ? _value.summary - : summary // ignore: cast_nullable_to_non_nullable - as String?, - defaultValue: freezed == defaultValue - ? _value.defaultValue - : defaultValue // ignore: cast_nullable_to_non_nullable - as bool?, - currentValue: freezed == currentValue - ? _value.currentValue - : currentValue // ignore: cast_nullable_to_non_nullable - as bool?, - defaultValueType: freezed == defaultValueType - ? _value.defaultValueType - : defaultValueType // ignore: cast_nullable_to_non_nullable - as String?, - )); - } -} - -/// @nodoc -@JsonSerializable() -class _$SwitchPreferenceCompatImpl implements SwitchPreferenceCompat { - const _$SwitchPreferenceCompatImpl( - {this.key, - this.title, - this.summary, - this.defaultValue, - this.currentValue, - this.defaultValueType, - final String? $type}) - : $type = $type ?? 'SwitchPreferenceCompat'; - - factory _$SwitchPreferenceCompatImpl.fromJson(Map json) => - _$$SwitchPreferenceCompatImplFromJson(json); - - @override - final String? key; - @override - final String? title; - @override - final String? summary; - @override - final bool? defaultValue; - @override - final bool? currentValue; - @override - final String? defaultValueType; - - @JsonKey(name: 'type') - final String $type; - - @override - String toString() { - return 'SourcePreferenceProp.switchPreferenceCompat(key: $key, title: $title, summary: $summary, defaultValue: $defaultValue, currentValue: $currentValue, defaultValueType: $defaultValueType)'; - } - - @override - bool operator ==(dynamic other) { - return identical(this, other) || - (other.runtimeType == runtimeType && - other is _$SwitchPreferenceCompatImpl && - (identical(other.key, key) || other.key == key) && - (identical(other.title, title) || other.title == title) && - (identical(other.summary, summary) || other.summary == summary) && - (identical(other.defaultValue, defaultValue) || - other.defaultValue == defaultValue) && - (identical(other.currentValue, currentValue) || - other.currentValue == currentValue) && - (identical(other.defaultValueType, defaultValueType) || - other.defaultValueType == defaultValueType)); - } - - @JsonKey(ignore: true) - @override - int get hashCode => Object.hash(runtimeType, key, title, summary, - defaultValue, currentValue, defaultValueType); - - @JsonKey(ignore: true) - @override - @pragma('vm:prefer-inline') - _$$SwitchPreferenceCompatImplCopyWith<_$SwitchPreferenceCompatImpl> - get copyWith => __$$SwitchPreferenceCompatImplCopyWithImpl< - _$SwitchPreferenceCompatImpl>(this, _$identity); - - @override - @optionalTypeArgs - TResult when({ - required TResult Function(String? key, dynamic currentValue) fallback, - required TResult Function(String? key, String? title, String? summary, - bool? defaultValue, bool? currentValue, String? defaultValueType) - checkBoxPreference, - required TResult Function(String? key, String? title, String? summary, - bool? defaultValue, bool? currentValue, String? defaultValueType) - switchPreferenceCompat, - required TResult Function( - String? key, - String? title, - String? summary, - String? defaultValue, - String? currentValue, - String? defaultValueType, - Map? entries) - listPreference, - required TResult Function( - String? key, - String? title, - String? summary, - List? defaultValue, - List? currentValue, - String? defaultValueType, - Map? entries) - multiSelectListPreference, - required TResult Function( - String? key, - String? title, - String? summary, - String? defaultValue, - String? currentValue, - String? defaultValueType, - String? dialogTitle, - String? dialogMessage, - String? text) - editTextPreference, - }) { - return switchPreferenceCompat( - key, title, summary, defaultValue, currentValue, defaultValueType); - } - - @override - @optionalTypeArgs - TResult? whenOrNull({ - TResult? Function(String? key, dynamic currentValue)? fallback, - TResult? Function(String? key, String? title, String? summary, - bool? defaultValue, bool? currentValue, String? defaultValueType)? - checkBoxPreference, - TResult? Function(String? key, String? title, String? summary, - bool? defaultValue, bool? currentValue, String? defaultValueType)? - switchPreferenceCompat, - TResult? Function( - String? key, - String? title, - String? summary, - String? defaultValue, - String? currentValue, - String? defaultValueType, - Map? entries)? - listPreference, - TResult? Function( - String? key, - String? title, - String? summary, - List? defaultValue, - List? currentValue, - String? defaultValueType, - Map? entries)? - multiSelectListPreference, - TResult? Function( - String? key, - String? title, - String? summary, - String? defaultValue, - String? currentValue, - String? defaultValueType, - String? dialogTitle, - String? dialogMessage, - String? text)? - editTextPreference, - }) { - return switchPreferenceCompat?.call( - key, title, summary, defaultValue, currentValue, defaultValueType); - } - - @override - @optionalTypeArgs - TResult maybeWhen({ - TResult Function(String? key, dynamic currentValue)? fallback, - TResult Function(String? key, String? title, String? summary, - bool? defaultValue, bool? currentValue, String? defaultValueType)? - checkBoxPreference, - TResult Function(String? key, String? title, String? summary, - bool? defaultValue, bool? currentValue, String? defaultValueType)? - switchPreferenceCompat, - TResult Function( - String? key, - String? title, - String? summary, - String? defaultValue, - String? currentValue, - String? defaultValueType, - Map? entries)? - listPreference, - TResult Function( - String? key, - String? title, - String? summary, - List? defaultValue, - List? currentValue, - String? defaultValueType, - Map? entries)? - multiSelectListPreference, - TResult Function( - String? key, - String? title, - String? summary, - String? defaultValue, - String? currentValue, - String? defaultValueType, - String? dialogTitle, - String? dialogMessage, - String? text)? - editTextPreference, - required TResult orElse(), - }) { - if (switchPreferenceCompat != null) { - return switchPreferenceCompat( - key, title, summary, defaultValue, currentValue, defaultValueType); - } - return orElse(); - } - - @override - @optionalTypeArgs - TResult map({ - required TResult Function(Fallback value) fallback, - required TResult Function(CheckBoxPreference value) checkBoxPreference, - required TResult Function(SwitchPreferenceCompat value) - switchPreferenceCompat, - required TResult Function(ListPreference value) listPreference, - required TResult Function(MultiSelectListPreference value) - multiSelectListPreference, - required TResult Function(EditTextPreference value) editTextPreference, - }) { - return switchPreferenceCompat(this); - } - - @override - @optionalTypeArgs - TResult? mapOrNull({ - TResult? Function(Fallback value)? fallback, - TResult? Function(CheckBoxPreference value)? checkBoxPreference, - TResult? Function(SwitchPreferenceCompat value)? switchPreferenceCompat, - TResult? Function(ListPreference value)? listPreference, - TResult? Function(MultiSelectListPreference value)? - multiSelectListPreference, - TResult? Function(EditTextPreference value)? editTextPreference, - }) { - return switchPreferenceCompat?.call(this); - } - - @override - @optionalTypeArgs - TResult maybeMap({ - TResult Function(Fallback value)? fallback, - TResult Function(CheckBoxPreference value)? checkBoxPreference, - TResult Function(SwitchPreferenceCompat value)? switchPreferenceCompat, - TResult Function(ListPreference value)? listPreference, - TResult Function(MultiSelectListPreference value)? - multiSelectListPreference, - TResult Function(EditTextPreference value)? editTextPreference, - required TResult orElse(), - }) { - if (switchPreferenceCompat != null) { - return switchPreferenceCompat(this); - } - return orElse(); - } - - @override - Map toJson() { - return _$$SwitchPreferenceCompatImplToJson( - this, - ); - } -} - -abstract class SwitchPreferenceCompat implements SourcePreferenceProp { - const factory SwitchPreferenceCompat( - {final String? key, - final String? title, - final String? summary, - final bool? defaultValue, - final bool? currentValue, - final String? defaultValueType}) = _$SwitchPreferenceCompatImpl; - - factory SwitchPreferenceCompat.fromJson(Map json) = - _$SwitchPreferenceCompatImpl.fromJson; - - @override - String? get key; - String? get title; - String? get summary; - bool? get defaultValue; - @override - bool? get currentValue; - String? get defaultValueType; - @override - @JsonKey(ignore: true) - _$$SwitchPreferenceCompatImplCopyWith<_$SwitchPreferenceCompatImpl> - get copyWith => throw _privateConstructorUsedError; -} - -/// @nodoc -abstract class _$$ListPreferenceImplCopyWith<$Res> - implements $SourcePreferencePropCopyWith<$Res> { - factory _$$ListPreferenceImplCopyWith(_$ListPreferenceImpl value, - $Res Function(_$ListPreferenceImpl) then) = - __$$ListPreferenceImplCopyWithImpl<$Res>; - @override - @useResult - $Res call( - {String? key, - String? title, - String? summary, - String? defaultValue, - String? currentValue, - String? defaultValueType, - Map? entries}); -} - -/// @nodoc -class __$$ListPreferenceImplCopyWithImpl<$Res> - extends _$SourcePreferencePropCopyWithImpl<$Res, _$ListPreferenceImpl> - implements _$$ListPreferenceImplCopyWith<$Res> { - __$$ListPreferenceImplCopyWithImpl( - _$ListPreferenceImpl _value, $Res Function(_$ListPreferenceImpl) _then) - : super(_value, _then); - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? key = freezed, - Object? title = freezed, - Object? summary = freezed, - Object? defaultValue = freezed, - Object? currentValue = freezed, - Object? defaultValueType = freezed, - Object? entries = freezed, - }) { - return _then(_$ListPreferenceImpl( - key: freezed == key - ? _value.key - : key // ignore: cast_nullable_to_non_nullable - as String?, - title: freezed == title - ? _value.title - : title // ignore: cast_nullable_to_non_nullable - as String?, - summary: freezed == summary - ? _value.summary - : summary // ignore: cast_nullable_to_non_nullable - as String?, - defaultValue: freezed == defaultValue - ? _value.defaultValue - : defaultValue // ignore: cast_nullable_to_non_nullable - as String?, - currentValue: freezed == currentValue - ? _value.currentValue - : currentValue // ignore: cast_nullable_to_non_nullable - as String?, - defaultValueType: freezed == defaultValueType - ? _value.defaultValueType - : defaultValueType // ignore: cast_nullable_to_non_nullable - as String?, - entries: freezed == entries - ? _value._entries - : entries // ignore: cast_nullable_to_non_nullable - as Map?, - )); - } -} - -/// @nodoc -@JsonSerializable() -class _$ListPreferenceImpl implements ListPreference { - const _$ListPreferenceImpl( - {this.key, - this.title, - this.summary, - this.defaultValue, - this.currentValue, - this.defaultValueType, - final Map? entries, - final String? $type}) - : _entries = entries, - $type = $type ?? 'ListPreference'; - - factory _$ListPreferenceImpl.fromJson(Map json) => - _$$ListPreferenceImplFromJson(json); - - @override - final String? key; - @override - final String? title; - @override - final String? summary; - @override - final String? defaultValue; - @override - final String? currentValue; - @override - final String? defaultValueType; - final Map? _entries; - @override - Map? get entries { - final value = _entries; - if (value == null) return null; - if (_entries is EqualUnmodifiableMapView) return _entries; - // ignore: implicit_dynamic_type - return EqualUnmodifiableMapView(value); - } - - @JsonKey(name: 'type') - final String $type; - - @override - String toString() { - return 'SourcePreferenceProp.listPreference(key: $key, title: $title, summary: $summary, defaultValue: $defaultValue, currentValue: $currentValue, defaultValueType: $defaultValueType, entries: $entries)'; - } - - @override - bool operator ==(dynamic other) { - return identical(this, other) || - (other.runtimeType == runtimeType && - other is _$ListPreferenceImpl && - (identical(other.key, key) || other.key == key) && - (identical(other.title, title) || other.title == title) && - (identical(other.summary, summary) || other.summary == summary) && - (identical(other.defaultValue, defaultValue) || - other.defaultValue == defaultValue) && - (identical(other.currentValue, currentValue) || - other.currentValue == currentValue) && - (identical(other.defaultValueType, defaultValueType) || - other.defaultValueType == defaultValueType) && - const DeepCollectionEquality().equals(other._entries, _entries)); - } - - @JsonKey(ignore: true) - @override - int get hashCode => Object.hash( - runtimeType, - key, - title, - summary, - defaultValue, - currentValue, - defaultValueType, - const DeepCollectionEquality().hash(_entries)); - - @JsonKey(ignore: true) - @override - @pragma('vm:prefer-inline') - _$$ListPreferenceImplCopyWith<_$ListPreferenceImpl> get copyWith => - __$$ListPreferenceImplCopyWithImpl<_$ListPreferenceImpl>( - this, _$identity); - - @override - @optionalTypeArgs - TResult when({ - required TResult Function(String? key, dynamic currentValue) fallback, - required TResult Function(String? key, String? title, String? summary, - bool? defaultValue, bool? currentValue, String? defaultValueType) - checkBoxPreference, - required TResult Function(String? key, String? title, String? summary, - bool? defaultValue, bool? currentValue, String? defaultValueType) - switchPreferenceCompat, - required TResult Function( - String? key, - String? title, - String? summary, - String? defaultValue, - String? currentValue, - String? defaultValueType, - Map? entries) - listPreference, - required TResult Function( - String? key, - String? title, - String? summary, - List? defaultValue, - List? currentValue, - String? defaultValueType, - Map? entries) - multiSelectListPreference, - required TResult Function( - String? key, - String? title, - String? summary, - String? defaultValue, - String? currentValue, - String? defaultValueType, - String? dialogTitle, - String? dialogMessage, - String? text) - editTextPreference, - }) { - return listPreference(key, title, summary, defaultValue, currentValue, - defaultValueType, entries); - } - - @override - @optionalTypeArgs - TResult? whenOrNull({ - TResult? Function(String? key, dynamic currentValue)? fallback, - TResult? Function(String? key, String? title, String? summary, - bool? defaultValue, bool? currentValue, String? defaultValueType)? - checkBoxPreference, - TResult? Function(String? key, String? title, String? summary, - bool? defaultValue, bool? currentValue, String? defaultValueType)? - switchPreferenceCompat, - TResult? Function( - String? key, - String? title, - String? summary, - String? defaultValue, - String? currentValue, - String? defaultValueType, - Map? entries)? - listPreference, - TResult? Function( - String? key, - String? title, - String? summary, - List? defaultValue, - List? currentValue, - String? defaultValueType, - Map? entries)? - multiSelectListPreference, - TResult? Function( - String? key, - String? title, - String? summary, - String? defaultValue, - String? currentValue, - String? defaultValueType, - String? dialogTitle, - String? dialogMessage, - String? text)? - editTextPreference, - }) { - return listPreference?.call(key, title, summary, defaultValue, currentValue, - defaultValueType, entries); - } - - @override - @optionalTypeArgs - TResult maybeWhen({ - TResult Function(String? key, dynamic currentValue)? fallback, - TResult Function(String? key, String? title, String? summary, - bool? defaultValue, bool? currentValue, String? defaultValueType)? - checkBoxPreference, - TResult Function(String? key, String? title, String? summary, - bool? defaultValue, bool? currentValue, String? defaultValueType)? - switchPreferenceCompat, - TResult Function( - String? key, - String? title, - String? summary, - String? defaultValue, - String? currentValue, - String? defaultValueType, - Map? entries)? - listPreference, - TResult Function( - String? key, - String? title, - String? summary, - List? defaultValue, - List? currentValue, - String? defaultValueType, - Map? entries)? - multiSelectListPreference, - TResult Function( - String? key, - String? title, - String? summary, - String? defaultValue, - String? currentValue, - String? defaultValueType, - String? dialogTitle, - String? dialogMessage, - String? text)? - editTextPreference, - required TResult orElse(), - }) { - if (listPreference != null) { - return listPreference(key, title, summary, defaultValue, currentValue, - defaultValueType, entries); - } - return orElse(); - } - - @override - @optionalTypeArgs - TResult map({ - required TResult Function(Fallback value) fallback, - required TResult Function(CheckBoxPreference value) checkBoxPreference, - required TResult Function(SwitchPreferenceCompat value) - switchPreferenceCompat, - required TResult Function(ListPreference value) listPreference, - required TResult Function(MultiSelectListPreference value) - multiSelectListPreference, - required TResult Function(EditTextPreference value) editTextPreference, - }) { - return listPreference(this); - } - - @override - @optionalTypeArgs - TResult? mapOrNull({ - TResult? Function(Fallback value)? fallback, - TResult? Function(CheckBoxPreference value)? checkBoxPreference, - TResult? Function(SwitchPreferenceCompat value)? switchPreferenceCompat, - TResult? Function(ListPreference value)? listPreference, - TResult? Function(MultiSelectListPreference value)? - multiSelectListPreference, - TResult? Function(EditTextPreference value)? editTextPreference, - }) { - return listPreference?.call(this); - } - - @override - @optionalTypeArgs - TResult maybeMap({ - TResult Function(Fallback value)? fallback, - TResult Function(CheckBoxPreference value)? checkBoxPreference, - TResult Function(SwitchPreferenceCompat value)? switchPreferenceCompat, - TResult Function(ListPreference value)? listPreference, - TResult Function(MultiSelectListPreference value)? - multiSelectListPreference, - TResult Function(EditTextPreference value)? editTextPreference, - required TResult orElse(), - }) { - if (listPreference != null) { - return listPreference(this); - } - return orElse(); - } - - @override - Map toJson() { - return _$$ListPreferenceImplToJson( - this, - ); - } -} - -abstract class ListPreference implements SourcePreferenceProp { - const factory ListPreference( - {final String? key, - final String? title, - final String? summary, - final String? defaultValue, - final String? currentValue, - final String? defaultValueType, - final Map? entries}) = _$ListPreferenceImpl; - - factory ListPreference.fromJson(Map json) = - _$ListPreferenceImpl.fromJson; - - @override - String? get key; - String? get title; - String? get summary; - String? get defaultValue; - @override - String? get currentValue; - String? get defaultValueType; - Map? get entries; - @override - @JsonKey(ignore: true) - _$$ListPreferenceImplCopyWith<_$ListPreferenceImpl> get copyWith => - throw _privateConstructorUsedError; -} - -/// @nodoc -abstract class _$$MultiSelectListPreferenceImplCopyWith<$Res> - implements $SourcePreferencePropCopyWith<$Res> { - factory _$$MultiSelectListPreferenceImplCopyWith( - _$MultiSelectListPreferenceImpl value, - $Res Function(_$MultiSelectListPreferenceImpl) then) = - __$$MultiSelectListPreferenceImplCopyWithImpl<$Res>; - @override - @useResult - $Res call( - {String? key, - String? title, - String? summary, - List? defaultValue, - List? currentValue, - String? defaultValueType, - Map? entries}); -} - -/// @nodoc -class __$$MultiSelectListPreferenceImplCopyWithImpl<$Res> - extends _$SourcePreferencePropCopyWithImpl<$Res, - _$MultiSelectListPreferenceImpl> - implements _$$MultiSelectListPreferenceImplCopyWith<$Res> { - __$$MultiSelectListPreferenceImplCopyWithImpl( - _$MultiSelectListPreferenceImpl _value, - $Res Function(_$MultiSelectListPreferenceImpl) _then) - : super(_value, _then); - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? key = freezed, - Object? title = freezed, - Object? summary = freezed, - Object? defaultValue = freezed, - Object? currentValue = freezed, - Object? defaultValueType = freezed, - Object? entries = freezed, - }) { - return _then(_$MultiSelectListPreferenceImpl( - key: freezed == key - ? _value.key - : key // ignore: cast_nullable_to_non_nullable - as String?, - title: freezed == title - ? _value.title - : title // ignore: cast_nullable_to_non_nullable - as String?, - summary: freezed == summary - ? _value.summary - : summary // ignore: cast_nullable_to_non_nullable - as String?, - defaultValue: freezed == defaultValue - ? _value._defaultValue - : defaultValue // ignore: cast_nullable_to_non_nullable - as List?, - currentValue: freezed == currentValue - ? _value._currentValue - : currentValue // ignore: cast_nullable_to_non_nullable - as List?, - defaultValueType: freezed == defaultValueType - ? _value.defaultValueType - : defaultValueType // ignore: cast_nullable_to_non_nullable - as String?, - entries: freezed == entries - ? _value._entries - : entries // ignore: cast_nullable_to_non_nullable - as Map?, - )); - } -} - -/// @nodoc -@JsonSerializable() -class _$MultiSelectListPreferenceImpl implements MultiSelectListPreference { - const _$MultiSelectListPreferenceImpl( - {this.key, - this.title, - this.summary, - final List? defaultValue, - final List? currentValue, - this.defaultValueType, - final Map? entries, - final String? $type}) - : _defaultValue = defaultValue, - _currentValue = currentValue, - _entries = entries, - $type = $type ?? 'MultiSelectListPreference'; - - factory _$MultiSelectListPreferenceImpl.fromJson(Map json) => - _$$MultiSelectListPreferenceImplFromJson(json); - - @override - final String? key; - @override - final String? title; - @override - final String? summary; - final List? _defaultValue; - @override - List? get defaultValue { - final value = _defaultValue; - if (value == null) return null; - if (_defaultValue is EqualUnmodifiableListView) return _defaultValue; - // ignore: implicit_dynamic_type - return EqualUnmodifiableListView(value); - } - - final List? _currentValue; - @override - List? get currentValue { - final value = _currentValue; - if (value == null) return null; - if (_currentValue is EqualUnmodifiableListView) return _currentValue; - // ignore: implicit_dynamic_type - return EqualUnmodifiableListView(value); - } - - @override - final String? defaultValueType; - final Map? _entries; - @override - Map? get entries { - final value = _entries; - if (value == null) return null; - if (_entries is EqualUnmodifiableMapView) return _entries; - // ignore: implicit_dynamic_type - return EqualUnmodifiableMapView(value); - } - - @JsonKey(name: 'type') - final String $type; - - @override - String toString() { - return 'SourcePreferenceProp.multiSelectListPreference(key: $key, title: $title, summary: $summary, defaultValue: $defaultValue, currentValue: $currentValue, defaultValueType: $defaultValueType, entries: $entries)'; - } - - @override - bool operator ==(dynamic other) { - return identical(this, other) || - (other.runtimeType == runtimeType && - other is _$MultiSelectListPreferenceImpl && - (identical(other.key, key) || other.key == key) && - (identical(other.title, title) || other.title == title) && - (identical(other.summary, summary) || other.summary == summary) && - const DeepCollectionEquality() - .equals(other._defaultValue, _defaultValue) && - const DeepCollectionEquality() - .equals(other._currentValue, _currentValue) && - (identical(other.defaultValueType, defaultValueType) || - other.defaultValueType == defaultValueType) && - const DeepCollectionEquality().equals(other._entries, _entries)); - } - - @JsonKey(ignore: true) - @override - int get hashCode => Object.hash( - runtimeType, - key, - title, - summary, - const DeepCollectionEquality().hash(_defaultValue), - const DeepCollectionEquality().hash(_currentValue), - defaultValueType, - const DeepCollectionEquality().hash(_entries)); - - @JsonKey(ignore: true) - @override - @pragma('vm:prefer-inline') - _$$MultiSelectListPreferenceImplCopyWith<_$MultiSelectListPreferenceImpl> - get copyWith => __$$MultiSelectListPreferenceImplCopyWithImpl< - _$MultiSelectListPreferenceImpl>(this, _$identity); - - @override - @optionalTypeArgs - TResult when({ - required TResult Function(String? key, dynamic currentValue) fallback, - required TResult Function(String? key, String? title, String? summary, - bool? defaultValue, bool? currentValue, String? defaultValueType) - checkBoxPreference, - required TResult Function(String? key, String? title, String? summary, - bool? defaultValue, bool? currentValue, String? defaultValueType) - switchPreferenceCompat, - required TResult Function( - String? key, - String? title, - String? summary, - String? defaultValue, - String? currentValue, - String? defaultValueType, - Map? entries) - listPreference, - required TResult Function( - String? key, - String? title, - String? summary, - List? defaultValue, - List? currentValue, - String? defaultValueType, - Map? entries) - multiSelectListPreference, - required TResult Function( - String? key, - String? title, - String? summary, - String? defaultValue, - String? currentValue, - String? defaultValueType, - String? dialogTitle, - String? dialogMessage, - String? text) - editTextPreference, - }) { - return multiSelectListPreference(key, title, summary, defaultValue, - currentValue, defaultValueType, entries); - } - - @override - @optionalTypeArgs - TResult? whenOrNull({ - TResult? Function(String? key, dynamic currentValue)? fallback, - TResult? Function(String? key, String? title, String? summary, - bool? defaultValue, bool? currentValue, String? defaultValueType)? - checkBoxPreference, - TResult? Function(String? key, String? title, String? summary, - bool? defaultValue, bool? currentValue, String? defaultValueType)? - switchPreferenceCompat, - TResult? Function( - String? key, - String? title, - String? summary, - String? defaultValue, - String? currentValue, - String? defaultValueType, - Map? entries)? - listPreference, - TResult? Function( - String? key, - String? title, - String? summary, - List? defaultValue, - List? currentValue, - String? defaultValueType, - Map? entries)? - multiSelectListPreference, - TResult? Function( - String? key, - String? title, - String? summary, - String? defaultValue, - String? currentValue, - String? defaultValueType, - String? dialogTitle, - String? dialogMessage, - String? text)? - editTextPreference, - }) { - return multiSelectListPreference?.call(key, title, summary, defaultValue, - currentValue, defaultValueType, entries); - } - - @override - @optionalTypeArgs - TResult maybeWhen({ - TResult Function(String? key, dynamic currentValue)? fallback, - TResult Function(String? key, String? title, String? summary, - bool? defaultValue, bool? currentValue, String? defaultValueType)? - checkBoxPreference, - TResult Function(String? key, String? title, String? summary, - bool? defaultValue, bool? currentValue, String? defaultValueType)? - switchPreferenceCompat, - TResult Function( - String? key, - String? title, - String? summary, - String? defaultValue, - String? currentValue, - String? defaultValueType, - Map? entries)? - listPreference, - TResult Function( - String? key, - String? title, - String? summary, - List? defaultValue, - List? currentValue, - String? defaultValueType, - Map? entries)? - multiSelectListPreference, - TResult Function( - String? key, - String? title, - String? summary, - String? defaultValue, - String? currentValue, - String? defaultValueType, - String? dialogTitle, - String? dialogMessage, - String? text)? - editTextPreference, - required TResult orElse(), - }) { - if (multiSelectListPreference != null) { - return multiSelectListPreference(key, title, summary, defaultValue, - currentValue, defaultValueType, entries); - } - return orElse(); - } - - @override - @optionalTypeArgs - TResult map({ - required TResult Function(Fallback value) fallback, - required TResult Function(CheckBoxPreference value) checkBoxPreference, - required TResult Function(SwitchPreferenceCompat value) - switchPreferenceCompat, - required TResult Function(ListPreference value) listPreference, - required TResult Function(MultiSelectListPreference value) - multiSelectListPreference, - required TResult Function(EditTextPreference value) editTextPreference, - }) { - return multiSelectListPreference(this); - } - - @override - @optionalTypeArgs - TResult? mapOrNull({ - TResult? Function(Fallback value)? fallback, - TResult? Function(CheckBoxPreference value)? checkBoxPreference, - TResult? Function(SwitchPreferenceCompat value)? switchPreferenceCompat, - TResult? Function(ListPreference value)? listPreference, - TResult? Function(MultiSelectListPreference value)? - multiSelectListPreference, - TResult? Function(EditTextPreference value)? editTextPreference, - }) { - return multiSelectListPreference?.call(this); - } - - @override - @optionalTypeArgs - TResult maybeMap({ - TResult Function(Fallback value)? fallback, - TResult Function(CheckBoxPreference value)? checkBoxPreference, - TResult Function(SwitchPreferenceCompat value)? switchPreferenceCompat, - TResult Function(ListPreference value)? listPreference, - TResult Function(MultiSelectListPreference value)? - multiSelectListPreference, - TResult Function(EditTextPreference value)? editTextPreference, - required TResult orElse(), - }) { - if (multiSelectListPreference != null) { - return multiSelectListPreference(this); - } - return orElse(); - } - - @override - Map toJson() { - return _$$MultiSelectListPreferenceImplToJson( - this, - ); - } -} - -abstract class MultiSelectListPreference implements SourcePreferenceProp { - const factory MultiSelectListPreference( - {final String? key, - final String? title, - final String? summary, - final List? defaultValue, - final List? currentValue, - final String? defaultValueType, - final Map? entries}) = _$MultiSelectListPreferenceImpl; - - factory MultiSelectListPreference.fromJson(Map json) = - _$MultiSelectListPreferenceImpl.fromJson; - - @override - String? get key; - String? get title; - String? get summary; - List? get defaultValue; - @override - List? get currentValue; - String? get defaultValueType; - Map? get entries; - @override - @JsonKey(ignore: true) - _$$MultiSelectListPreferenceImplCopyWith<_$MultiSelectListPreferenceImpl> - get copyWith => throw _privateConstructorUsedError; -} - -/// @nodoc -abstract class _$$EditTextPreferenceImplCopyWith<$Res> - implements $SourcePreferencePropCopyWith<$Res> { - factory _$$EditTextPreferenceImplCopyWith(_$EditTextPreferenceImpl value, - $Res Function(_$EditTextPreferenceImpl) then) = - __$$EditTextPreferenceImplCopyWithImpl<$Res>; - @override - @useResult - $Res call( - {String? key, - String? title, - String? summary, - String? defaultValue, - String? currentValue, - String? defaultValueType, - String? dialogTitle, - String? dialogMessage, - String? text}); -} - -/// @nodoc -class __$$EditTextPreferenceImplCopyWithImpl<$Res> - extends _$SourcePreferencePropCopyWithImpl<$Res, _$EditTextPreferenceImpl> - implements _$$EditTextPreferenceImplCopyWith<$Res> { - __$$EditTextPreferenceImplCopyWithImpl(_$EditTextPreferenceImpl _value, - $Res Function(_$EditTextPreferenceImpl) _then) - : super(_value, _then); - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? key = freezed, - Object? title = freezed, - Object? summary = freezed, - Object? defaultValue = freezed, - Object? currentValue = freezed, - Object? defaultValueType = freezed, - Object? dialogTitle = freezed, - Object? dialogMessage = freezed, - Object? text = freezed, - }) { - return _then(_$EditTextPreferenceImpl( - key: freezed == key - ? _value.key - : key // ignore: cast_nullable_to_non_nullable - as String?, - title: freezed == title - ? _value.title - : title // ignore: cast_nullable_to_non_nullable - as String?, - summary: freezed == summary - ? _value.summary - : summary // ignore: cast_nullable_to_non_nullable - as String?, - defaultValue: freezed == defaultValue - ? _value.defaultValue - : defaultValue // ignore: cast_nullable_to_non_nullable - as String?, - currentValue: freezed == currentValue - ? _value.currentValue - : currentValue // ignore: cast_nullable_to_non_nullable - as String?, - defaultValueType: freezed == defaultValueType - ? _value.defaultValueType - : defaultValueType // ignore: cast_nullable_to_non_nullable - as String?, - dialogTitle: freezed == dialogTitle - ? _value.dialogTitle - : dialogTitle // ignore: cast_nullable_to_non_nullable - as String?, - dialogMessage: freezed == dialogMessage - ? _value.dialogMessage - : dialogMessage // ignore: cast_nullable_to_non_nullable - as String?, - text: freezed == text - ? _value.text - : text // ignore: cast_nullable_to_non_nullable - as String?, - )); - } -} - -/// @nodoc -@JsonSerializable() -class _$EditTextPreferenceImpl implements EditTextPreference { - const _$EditTextPreferenceImpl( - {this.key, - this.title, - this.summary, - this.defaultValue, - this.currentValue, - this.defaultValueType, - this.dialogTitle, - this.dialogMessage, - this.text, - final String? $type}) - : $type = $type ?? 'EditTextPreference'; - - factory _$EditTextPreferenceImpl.fromJson(Map json) => - _$$EditTextPreferenceImplFromJson(json); - - @override - final String? key; - @override - final String? title; - @override - final String? summary; - @override - final String? defaultValue; - @override - final String? currentValue; - @override - final String? defaultValueType; - @override - final String? dialogTitle; - @override - final String? dialogMessage; - @override - final String? text; - - @JsonKey(name: 'type') - final String $type; - - @override - String toString() { - return 'SourcePreferenceProp.editTextPreference(key: $key, title: $title, summary: $summary, defaultValue: $defaultValue, currentValue: $currentValue, defaultValueType: $defaultValueType, dialogTitle: $dialogTitle, dialogMessage: $dialogMessage, text: $text)'; - } - - @override - bool operator ==(dynamic other) { - return identical(this, other) || - (other.runtimeType == runtimeType && - other is _$EditTextPreferenceImpl && - (identical(other.key, key) || other.key == key) && - (identical(other.title, title) || other.title == title) && - (identical(other.summary, summary) || other.summary == summary) && - (identical(other.defaultValue, defaultValue) || - other.defaultValue == defaultValue) && - (identical(other.currentValue, currentValue) || - other.currentValue == currentValue) && - (identical(other.defaultValueType, defaultValueType) || - other.defaultValueType == defaultValueType) && - (identical(other.dialogTitle, dialogTitle) || - other.dialogTitle == dialogTitle) && - (identical(other.dialogMessage, dialogMessage) || - other.dialogMessage == dialogMessage) && - (identical(other.text, text) || other.text == text)); - } - - @JsonKey(ignore: true) - @override - int get hashCode => Object.hash( - runtimeType, - key, - title, - summary, - defaultValue, - currentValue, - defaultValueType, - dialogTitle, - dialogMessage, - text); - - @JsonKey(ignore: true) - @override - @pragma('vm:prefer-inline') - _$$EditTextPreferenceImplCopyWith<_$EditTextPreferenceImpl> get copyWith => - __$$EditTextPreferenceImplCopyWithImpl<_$EditTextPreferenceImpl>( - this, _$identity); - - @override - @optionalTypeArgs - TResult when({ - required TResult Function(String? key, dynamic currentValue) fallback, - required TResult Function(String? key, String? title, String? summary, - bool? defaultValue, bool? currentValue, String? defaultValueType) - checkBoxPreference, - required TResult Function(String? key, String? title, String? summary, - bool? defaultValue, bool? currentValue, String? defaultValueType) - switchPreferenceCompat, - required TResult Function( - String? key, - String? title, - String? summary, - String? defaultValue, - String? currentValue, - String? defaultValueType, - Map? entries) - listPreference, - required TResult Function( - String? key, - String? title, - String? summary, - List? defaultValue, - List? currentValue, - String? defaultValueType, - Map? entries) - multiSelectListPreference, - required TResult Function( - String? key, - String? title, - String? summary, - String? defaultValue, - String? currentValue, - String? defaultValueType, - String? dialogTitle, - String? dialogMessage, - String? text) - editTextPreference, - }) { - return editTextPreference(key, title, summary, defaultValue, currentValue, - defaultValueType, dialogTitle, dialogMessage, text); - } - - @override - @optionalTypeArgs - TResult? whenOrNull({ - TResult? Function(String? key, dynamic currentValue)? fallback, - TResult? Function(String? key, String? title, String? summary, - bool? defaultValue, bool? currentValue, String? defaultValueType)? - checkBoxPreference, - TResult? Function(String? key, String? title, String? summary, - bool? defaultValue, bool? currentValue, String? defaultValueType)? - switchPreferenceCompat, - TResult? Function( - String? key, - String? title, - String? summary, - String? defaultValue, - String? currentValue, - String? defaultValueType, - Map? entries)? - listPreference, - TResult? Function( - String? key, - String? title, - String? summary, - List? defaultValue, - List? currentValue, - String? defaultValueType, - Map? entries)? - multiSelectListPreference, - TResult? Function( - String? key, - String? title, - String? summary, - String? defaultValue, - String? currentValue, - String? defaultValueType, - String? dialogTitle, - String? dialogMessage, - String? text)? - editTextPreference, - }) { - return editTextPreference?.call(key, title, summary, defaultValue, - currentValue, defaultValueType, dialogTitle, dialogMessage, text); - } - - @override - @optionalTypeArgs - TResult maybeWhen({ - TResult Function(String? key, dynamic currentValue)? fallback, - TResult Function(String? key, String? title, String? summary, - bool? defaultValue, bool? currentValue, String? defaultValueType)? - checkBoxPreference, - TResult Function(String? key, String? title, String? summary, - bool? defaultValue, bool? currentValue, String? defaultValueType)? - switchPreferenceCompat, - TResult Function( - String? key, - String? title, - String? summary, - String? defaultValue, - String? currentValue, - String? defaultValueType, - Map? entries)? - listPreference, - TResult Function( - String? key, - String? title, - String? summary, - List? defaultValue, - List? currentValue, - String? defaultValueType, - Map? entries)? - multiSelectListPreference, - TResult Function( - String? key, - String? title, - String? summary, - String? defaultValue, - String? currentValue, - String? defaultValueType, - String? dialogTitle, - String? dialogMessage, - String? text)? - editTextPreference, - required TResult orElse(), - }) { - if (editTextPreference != null) { - return editTextPreference(key, title, summary, defaultValue, currentValue, - defaultValueType, dialogTitle, dialogMessage, text); - } - return orElse(); - } - - @override - @optionalTypeArgs - TResult map({ - required TResult Function(Fallback value) fallback, - required TResult Function(CheckBoxPreference value) checkBoxPreference, - required TResult Function(SwitchPreferenceCompat value) - switchPreferenceCompat, - required TResult Function(ListPreference value) listPreference, - required TResult Function(MultiSelectListPreference value) - multiSelectListPreference, - required TResult Function(EditTextPreference value) editTextPreference, - }) { - return editTextPreference(this); - } - - @override - @optionalTypeArgs - TResult? mapOrNull({ - TResult? Function(Fallback value)? fallback, - TResult? Function(CheckBoxPreference value)? checkBoxPreference, - TResult? Function(SwitchPreferenceCompat value)? switchPreferenceCompat, - TResult? Function(ListPreference value)? listPreference, - TResult? Function(MultiSelectListPreference value)? - multiSelectListPreference, - TResult? Function(EditTextPreference value)? editTextPreference, - }) { - return editTextPreference?.call(this); - } - - @override - @optionalTypeArgs - TResult maybeMap({ - TResult Function(Fallback value)? fallback, - TResult Function(CheckBoxPreference value)? checkBoxPreference, - TResult Function(SwitchPreferenceCompat value)? switchPreferenceCompat, - TResult Function(ListPreference value)? listPreference, - TResult Function(MultiSelectListPreference value)? - multiSelectListPreference, - TResult Function(EditTextPreference value)? editTextPreference, - required TResult orElse(), - }) { - if (editTextPreference != null) { - return editTextPreference(this); - } - return orElse(); - } - - @override - Map toJson() { - return _$$EditTextPreferenceImplToJson( - this, - ); - } -} - -abstract class EditTextPreference implements SourcePreferenceProp { - const factory EditTextPreference( - {final String? key, - final String? title, - final String? summary, - final String? defaultValue, - final String? currentValue, - final String? defaultValueType, - final String? dialogTitle, - final String? dialogMessage, - final String? text}) = _$EditTextPreferenceImpl; - - factory EditTextPreference.fromJson(Map json) = - _$EditTextPreferenceImpl.fromJson; - - @override - String? get key; - String? get title; - String? get summary; - String? get defaultValue; - @override - String? get currentValue; - String? get defaultValueType; - String? get dialogTitle; - String? get dialogMessage; - String? get text; - @override - @JsonKey(ignore: true) - _$$EditTextPreferenceImplCopyWith<_$EditTextPreferenceImpl> get copyWith => - throw _privateConstructorUsedError; -} diff --git a/lib/src/features/browse_center/domain/source_preference_prop/source_preference_prop.g.dart b/lib/src/features/browse_center/domain/source_preference_prop/source_preference_prop.g.dart deleted file mode 100644 index 57edc9f8..00000000 --- a/lib/src/features/browse_center/domain/source_preference_prop/source_preference_prop.g.dart +++ /dev/null @@ -1,158 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'source_preference_prop.dart'; - -// ************************************************************************** -// JsonSerializableGenerator -// ************************************************************************** - -_$FallbackImpl _$$FallbackImplFromJson(Map json) => - _$FallbackImpl( - key: json['key'] as String?, - currentValue: json['currentValue'], - $type: json['type'] as String?, - ); - -Map _$$FallbackImplToJson(_$FallbackImpl instance) => - { - 'key': instance.key, - 'currentValue': instance.currentValue, - 'type': instance.$type, - }; - -_$CheckBoxPreferenceImpl _$$CheckBoxPreferenceImplFromJson( - Map json) => - _$CheckBoxPreferenceImpl( - key: json['key'] as String?, - title: json['title'] as String?, - summary: json['summary'] as String?, - defaultValue: json['defaultValue'] as bool?, - currentValue: json['currentValue'] as bool?, - defaultValueType: json['defaultValueType'] as String?, - $type: json['type'] as String?, - ); - -Map _$$CheckBoxPreferenceImplToJson( - _$CheckBoxPreferenceImpl instance) => - { - 'key': instance.key, - 'title': instance.title, - 'summary': instance.summary, - 'defaultValue': instance.defaultValue, - 'currentValue': instance.currentValue, - 'defaultValueType': instance.defaultValueType, - 'type': instance.$type, - }; - -_$SwitchPreferenceCompatImpl _$$SwitchPreferenceCompatImplFromJson( - Map json) => - _$SwitchPreferenceCompatImpl( - key: json['key'] as String?, - title: json['title'] as String?, - summary: json['summary'] as String?, - defaultValue: json['defaultValue'] as bool?, - currentValue: json['currentValue'] as bool?, - defaultValueType: json['defaultValueType'] as String?, - $type: json['type'] as String?, - ); - -Map _$$SwitchPreferenceCompatImplToJson( - _$SwitchPreferenceCompatImpl instance) => - { - 'key': instance.key, - 'title': instance.title, - 'summary': instance.summary, - 'defaultValue': instance.defaultValue, - 'currentValue': instance.currentValue, - 'defaultValueType': instance.defaultValueType, - 'type': instance.$type, - }; - -_$ListPreferenceImpl _$$ListPreferenceImplFromJson(Map json) => - _$ListPreferenceImpl( - key: json['key'] as String?, - title: json['title'] as String?, - summary: json['summary'] as String?, - defaultValue: json['defaultValue'] as String?, - currentValue: json['currentValue'] as String?, - defaultValueType: json['defaultValueType'] as String?, - entries: (json['entries'] as Map?)?.map( - (k, e) => MapEntry(k, e as String), - ), - $type: json['type'] as String?, - ); - -Map _$$ListPreferenceImplToJson( - _$ListPreferenceImpl instance) => - { - 'key': instance.key, - 'title': instance.title, - 'summary': instance.summary, - 'defaultValue': instance.defaultValue, - 'currentValue': instance.currentValue, - 'defaultValueType': instance.defaultValueType, - 'entries': instance.entries, - 'type': instance.$type, - }; - -_$MultiSelectListPreferenceImpl _$$MultiSelectListPreferenceImplFromJson( - Map json) => - _$MultiSelectListPreferenceImpl( - key: json['key'] as String?, - title: json['title'] as String?, - summary: json['summary'] as String?, - defaultValue: (json['defaultValue'] as List?) - ?.map((e) => e as String) - .toList(), - currentValue: (json['currentValue'] as List?) - ?.map((e) => e as String) - .toList(), - defaultValueType: json['defaultValueType'] as String?, - entries: (json['entries'] as Map?)?.map( - (k, e) => MapEntry(k, e as String), - ), - $type: json['type'] as String?, - ); - -Map _$$MultiSelectListPreferenceImplToJson( - _$MultiSelectListPreferenceImpl instance) => - { - 'key': instance.key, - 'title': instance.title, - 'summary': instance.summary, - 'defaultValue': instance.defaultValue, - 'currentValue': instance.currentValue, - 'defaultValueType': instance.defaultValueType, - 'entries': instance.entries, - 'type': instance.$type, - }; - -_$EditTextPreferenceImpl _$$EditTextPreferenceImplFromJson( - Map json) => - _$EditTextPreferenceImpl( - key: json['key'] as String?, - title: json['title'] as String?, - summary: json['summary'] as String?, - defaultValue: json['defaultValue'] as String?, - currentValue: json['currentValue'] as String?, - defaultValueType: json['defaultValueType'] as String?, - dialogTitle: json['dialogTitle'] as String?, - dialogMessage: json['dialogMessage'] as String?, - text: json['text'] as String?, - $type: json['type'] as String?, - ); - -Map _$$EditTextPreferenceImplToJson( - _$EditTextPreferenceImpl instance) => - { - 'key': instance.key, - 'title': instance.title, - 'summary': instance.summary, - 'defaultValue': instance.defaultValue, - 'currentValue': instance.currentValue, - 'defaultValueType': instance.defaultValueType, - 'dialogTitle': instance.dialogTitle, - 'dialogMessage': instance.dialogMessage, - 'text': instance.text, - 'type': instance.$type, - }; diff --git a/lib/src/features/browse_center/presentation/browse/browse_screen.dart b/lib/src/features/browse_center/presentation/browse/browse_screen.dart deleted file mode 100644 index df3e7d08..00000000 --- a/lib/src/features/browse_center/presentation/browse/browse_screen.dart +++ /dev/null @@ -1,107 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:flutter_hooks/flutter_hooks.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../../../../constants/app_sizes.dart'; - -import '../../../../routes/router_config.dart'; -import '../../../../utils/extensions/custom_extensions.dart'; -import '../../../../widgets/search_field.dart'; -import '../extension/controller/extension_controller.dart'; -import '../extension/extension_screen.dart'; -import '../extension/widgets/extension_language_filter_dialog.dart'; -import '../extension/widgets/install_extension_file.dart'; -import '../source/source_screen.dart'; -import '../source/widgets/source_language_filter.dart'; - -class BrowseScreen extends HookConsumerWidget { - const BrowseScreen({super.key}); - - @override - Widget build(BuildContext context, WidgetRef ref) { - final tabController = useTabController(initialLength: 2); - useListenable(tabController); - final key = useMemoized(() => GlobalKey()); - final showSearch = useState(false); - return Scaffold( - appBar: AppBar( - title: Text(context.l10n!.browse), - centerTitle: true, - actions: [ - IconButton( - onPressed: () => showSearch.value = (true), - icon: Icon( - tabController.index == 0 - ? Icons.travel_explore_rounded - : Icons.search_rounded, - ), - ), - if (tabController.index == 1) ...[ - const InstallExtensionFile(), - ], - IconButton( - onPressed: () => showDialog( - context: context, - builder: (context) => tabController.index == 0 - ? const SourceLanguageFilter() - : const ExtensionLanguageFilterDialog(), - ), - icon: const Icon(Icons.translate_rounded), - ), - ], - bottom: PreferredSize( - preferredSize: kCalculateAppBarBottomSize([true, showSearch.value]), - child: Column( - children: [ - TabBar( - dividerColor: Colors.transparent, - isScrollable: context.isTablet, - controller: tabController, - tabs: [ - Tab(text: context.l10n!.sources), - Tab(text: context.l10n!.extensions), - ], - ), - if (showSearch.value) - Align( - alignment: Alignment.centerRight, - child: tabController.index == 0 - ? SearchField( - key: const ValueKey(0), - onSubmitted: (value) { - if (value.isNotBlank) { - GlobalSearchRoute(query: value).push(context); - } - }, - onClose: () => showSearch.value = (false), - ) - : SearchField( - key: const ValueKey(1), - initialText: ref.read(extensionQueryProvider), - onChanged: (val) => ref - .read(extensionQueryProvider.notifier) - .update(val), - onClose: () => showSearch.value = (false), - ), - ), - ], - ), - ), - ), - body: TabBarView( - key: key, - controller: tabController, - children: const [ - SourceScreen(), - ExtensionScreen(), - ], - ), - ); - } -} diff --git a/lib/src/features/browse_center/presentation/extension/controller/extension_controller.dart b/lib/src/features/browse_center/presentation/extension/controller/extension_controller.dart deleted file mode 100644 index d3914d02..00000000 --- a/lib/src/features/browse_center/presentation/extension/controller/extension_controller.dart +++ /dev/null @@ -1,118 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:dio/dio.dart'; -import 'package:riverpod_annotation/riverpod_annotation.dart'; - -import '../../../../../constants/db_keys.dart'; -import '../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../../utils/mixin/shared_preferences_client_mixin.dart'; -import '../../../../../utils/mixin/state_provider_mixin.dart'; -import '../../../../settings/presentation/browse/widgets/show_nsfw_switch/show_nsfw_switch.dart'; -import '../../../data/extension_repository/extension_repository.dart'; -import '../../../domain/extension/extension_model.dart'; - -part 'extension_controller.g.dart'; - -@riverpod -Future?> extension(ExtensionRef ref) async { - final token = CancelToken(); - ref.onDispose(token.cancel); - final result = await ref - .watch(extensionRepositoryProvider) - .getExtensionList(cancelToken: token); - ref.keepAlive(); - return result; -} - -@riverpod -AsyncValue>> extensionMap(ExtensionMapRef ref) { - final extensionMap = >{}; - final extensionListData = ref.watch(extensionProvider); - final extensionList = [...?extensionListData.valueOrNull]; - final showNsfw = ref.watch(showNSFWProvider).ifNull(true); - for (final e in extensionList) { - if (!showNsfw && (e.isNsfw.ifNull())) continue; - if (e.installed.ifNull()) { - if (e.hasUpdate.ifNull()) { - extensionMap.update( - "update", - (value) => [...value, e], - ifAbsent: () => [e], - ); - } else { - extensionMap.update( - "installed", - (value) => [...value, e], - ifAbsent: () => [e], - ); - } - } else { - extensionMap.update( - e.lang?.code?.toLowerCase() ?? "other", - (value) => [...value, e], - ifAbsent: () => [e], - ); - } - } - return extensionListData.copyWithData((p0) => extensionMap); -} - -@riverpod -List extensionFilterLangList(ExtensionFilterLangListRef ref) { - final extensionMap = {...?ref.watch(extensionMapProvider).valueOrNull}; - extensionMap.remove("installed"); - extensionMap.remove("update"); - return [...extensionMap.keys]..sort(); -} - -@riverpod -class ExtensionLanguageFilter extends _$ExtensionLanguageFilter - with SharedPreferenceClientMixin> { - @override - List? build() => initialize( - ref, - key: DBKeys.extensionLanguageFilter.name, - initial: DBKeys.extensionLanguageFilter.initial, - ); -} - -@riverpod -AsyncValue>> extensionMapFiltered( - ExtensionMapFilteredRef ref) { - final extensionMapFiltered = >{}; - final extensionMapData = ref.watch(extensionMapProvider); - final extensionMap = {...?extensionMapData.valueOrNull}; - final enabledLangList = [...?ref.watch(extensionLanguageFilterProvider)]; - for (final e in enabledLangList) { - if (extensionMap.containsKey(e)) extensionMapFiltered[e] = extensionMap[e]!; - } - return extensionMapData.copyWithData((p0) => extensionMapFiltered); -} - -@riverpod -AsyncValue>> extensionMapFilteredAndQueried( - ExtensionMapFilteredAndQueriedRef ref, -) { - final extensionMapData = ref.watch(extensionMapFilteredProvider); - final extensionMap = {...?extensionMapData.valueOrNull}; - final query = ref.watch(extensionQueryProvider); - if (query.isBlank) return extensionMapData; - return extensionMapData.copyWithData( - (e) => extensionMap.map>( - (key, value) => MapEntry( - key, - value.where((element) => element.name.query(query)).toList(), - ), - ), - ); -} - -@riverpod -class ExtensionQuery extends _$ExtensionQuery with StateProviderMixin { - @override - String? build() => null; -} diff --git a/lib/src/features/browse_center/presentation/extension/controller/extension_controller.g.dart b/lib/src/features/browse_center/presentation/extension/controller/extension_controller.g.dart deleted file mode 100644 index f2002cd7..00000000 --- a/lib/src/features/browse_center/presentation/extension/controller/extension_controller.g.dart +++ /dev/null @@ -1,126 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'extension_controller.dart'; - -// ************************************************************************** -// RiverpodGenerator -// ************************************************************************** - -String _$extensionHash() => r'7f4a60c97e38a62db718b504d572bd031b5b845d'; - -/// See also [extension]. -@ProviderFor(extension) -final extensionProvider = AutoDisposeFutureProvider?>.internal( - extension, - name: r'extensionProvider', - debugGetCreateSourceHash: - const bool.fromEnvironment('dart.vm.product') ? null : _$extensionHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef ExtensionRef = AutoDisposeFutureProviderRef?>; -String _$extensionMapHash() => r'868e56067ad0639e41874adcffa4e97c49617f6c'; - -/// See also [extensionMap]. -@ProviderFor(extensionMap) -final extensionMapProvider = - AutoDisposeProvider>>>.internal( - extensionMap, - name: r'extensionMapProvider', - debugGetCreateSourceHash: - const bool.fromEnvironment('dart.vm.product') ? null : _$extensionMapHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef ExtensionMapRef - = AutoDisposeProviderRef>>>; -String _$extensionFilterLangListHash() => - r'9b321188e52c96aa6f900d0bd671217e19d36832'; - -/// See also [extensionFilterLangList]. -@ProviderFor(extensionFilterLangList) -final extensionFilterLangListProvider = - AutoDisposeProvider>.internal( - extensionFilterLangList, - name: r'extensionFilterLangListProvider', - debugGetCreateSourceHash: const bool.fromEnvironment('dart.vm.product') - ? null - : _$extensionFilterLangListHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef ExtensionFilterLangListRef = AutoDisposeProviderRef>; -String _$extensionMapFilteredHash() => - r'bcfe4ed3d11f2987273f35b672a3a27d9156fe77'; - -/// See also [extensionMapFiltered]. -@ProviderFor(extensionMapFiltered) -final extensionMapFilteredProvider = - AutoDisposeProvider>>>.internal( - extensionMapFiltered, - name: r'extensionMapFilteredProvider', - debugGetCreateSourceHash: const bool.fromEnvironment('dart.vm.product') - ? null - : _$extensionMapFilteredHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef ExtensionMapFilteredRef - = AutoDisposeProviderRef>>>; -String _$extensionMapFilteredAndQueriedHash() => - r'211f3d7c994d5a1c7d9f4b1aba3437162cc69521'; - -/// See also [extensionMapFilteredAndQueried]. -@ProviderFor(extensionMapFilteredAndQueried) -final extensionMapFilteredAndQueriedProvider = - AutoDisposeProvider>>>.internal( - extensionMapFilteredAndQueried, - name: r'extensionMapFilteredAndQueriedProvider', - debugGetCreateSourceHash: const bool.fromEnvironment('dart.vm.product') - ? null - : _$extensionMapFilteredAndQueriedHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef ExtensionMapFilteredAndQueriedRef - = AutoDisposeProviderRef>>>; -String _$extensionLanguageFilterHash() => - r'88d38cadc3c1d8ac110d8f0e6150bae813c204f4'; - -/// See also [ExtensionLanguageFilter]. -@ProviderFor(ExtensionLanguageFilter) -final extensionLanguageFilterProvider = AutoDisposeNotifierProvider< - ExtensionLanguageFilter, List?>.internal( - ExtensionLanguageFilter.new, - name: r'extensionLanguageFilterProvider', - debugGetCreateSourceHash: const bool.fromEnvironment('dart.vm.product') - ? null - : _$extensionLanguageFilterHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef _$ExtensionLanguageFilter = AutoDisposeNotifier?>; -String _$extensionQueryHash() => r'342455d95d1f785523fc35799015958a9be4c3e4'; - -/// See also [ExtensionQuery]. -@ProviderFor(ExtensionQuery) -final extensionQueryProvider = - AutoDisposeNotifierProvider.internal( - ExtensionQuery.new, - name: r'extensionQueryProvider', - debugGetCreateSourceHash: const bool.fromEnvironment('dart.vm.product') - ? null - : _$extensionQueryHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef _$ExtensionQuery = AutoDisposeNotifier; -// ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member diff --git a/lib/src/features/browse_center/presentation/extension/extension_screen.dart b/lib/src/features/browse_center/presentation/extension/extension_screen.dart deleted file mode 100644 index e0a3c7cd..00000000 --- a/lib/src/features/browse_center/presentation/extension/extension_screen.dart +++ /dev/null @@ -1,125 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/foundation.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter_hooks/flutter_hooks.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../../../../constants/language_list.dart'; -import '../../../../utils/extensions/custom_extensions.dart'; -import '../../../../utils/misc/toast/toast.dart'; -import '../../../../widgets/emoticons.dart'; -import '../../domain/extension/extension_model.dart'; -import 'controller/extension_controller.dart'; -import 'widgets/extension_list_tile.dart'; - -class ExtensionScreen extends HookConsumerWidget { - const ExtensionScreen({super.key}); - - List extensionSet({ - Key? key, - required String title, - required List? extensions, - required AsyncCallback refresh, - }) { - if (extensions.isBlank) return []; - return [ - SliverToBoxAdapter( - child: ListTile( - title: Text(title), - ), - ), - SliverList( - key: key, - delegate: SliverChildBuilderDelegate( - (context, index) => ExtensionListTile( - key: ValueKey(extensions[index].pkgName), - extension: extensions[index], - refresh: refresh, - ), - childCount: extensions!.length, - ), - ), - ]; - } - - @override - Widget build(BuildContext context, WidgetRef ref) { - final extensionMapData = ref.watch(extensionMapFilteredAndQueriedProvider); - - final extensionMap = {...?extensionMapData.valueOrNull}; - final installed = extensionMap.remove("installed"); - final update = extensionMap.remove("update"); - final all = extensionMap.remove("all"); - - refresh() => ref.refresh(extensionProvider.future); - - useEffect(() { - if (extensionMapData.isNotLoading) refresh(); - return; - }, []); - - useEffect(() { - extensionMapData.showToastOnError( - ref.read(toastProvider(context)), - withMicrotask: true, - ); - return; - }, [extensionMapData.valueOrNull]); - - return extensionMapData.showUiWhenData( - context, - (data) => (extensionMap.isEmpty && - installed.isBlank && - update.isBlank && - all.isBlank) - ? Emoticons( - text: context.l10n!.extensionListEmpty, - button: TextButton( - onPressed: refresh, - child: Text(context.l10n!.refresh), - ), - ) - : RefreshIndicator( - onRefresh: () => ref.refresh(extensionProvider.future), - child: CustomScrollView( - slivers: [ - if (update.isNotBlank) - ...extensionSet( - key: const ValueKey("update"), - title: languageMap["update"]?.displayName ?? "", - extensions: update, - refresh: refresh, - ), - if (installed.isNotBlank) - ...extensionSet( - key: const ValueKey("installed"), - title: languageMap["installed"]?.displayName ?? "", - extensions: installed, - refresh: refresh, - ), - if (all.isNotBlank) - ...extensionSet( - key: const ValueKey("all"), - title: languageMap["all"]?.displayName ?? "", - extensions: all, - refresh: refresh, - ), - for (final k in extensionMap.keys) - ...extensionSet( - key: ValueKey(k), - title: languageMap[k]?.displayName ?? k, - extensions: extensionMap[k], - refresh: refresh, - ), - ], - ), - ), - refresh: refresh, - ); - } -} diff --git a/lib/src/features/browse_center/presentation/extension/widgets/extension_language_filter_dialog.dart b/lib/src/features/browse_center/presentation/extension/widgets/extension_language_filter_dialog.dart deleted file mode 100644 index b5aa2f4c..00000000 --- a/lib/src/features/browse_center/presentation/extension/widgets/extension_language_filter_dialog.dart +++ /dev/null @@ -1,67 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../../../../../constants/language_list.dart'; - -import '../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../../widgets/pop_button.dart'; -import '../../../domain/language/language_model.dart'; -import '../controller/extension_controller.dart'; - -class ExtensionLanguageFilterDialog extends ConsumerWidget { - const ExtensionLanguageFilterDialog({super.key}); - @override - Widget build(BuildContext context, WidgetRef ref) { - final languageCodes = ref.watch(extensionFilterLangListProvider); - final enabledLanguages = ref.watch(extensionLanguageFilterProvider); - return AlertDialog( - title: Text(context.l10n!.languages), - content: SizedBox( - height: context.heightScale(scale: .5), - width: context.widthScale(scale: context.isSmallTablet ? .5 : .8), - child: ListView.builder( - itemCount: languageCodes.length, - itemBuilder: (context, index) { - final String languageCode = languageCodes[index].toLowerCase(); - final Language? language = languageMap[languageCode]; - final enabledLanguagesIndex = - enabledLanguages?.indexOf(languageCode); - return SwitchListTile( - key: Key(languageCode), - value: enabledLanguagesIndex != -1, - onChanged: (value) { - if (value) { - ref.read(extensionLanguageFilterProvider.notifier).update( - {...?enabledLanguages, languageCode}.toList(), - ); - } else { - if (!((enabledLanguagesIndex?.isNegative).ifNull(true))) { - final updatedEnabledLanguages = [...?enabledLanguages] - ..remove(languageCode); - ref - .read(extensionLanguageFilterProvider.notifier) - .update(updatedEnabledLanguages); - } - } - }, - title: Text( - language?.nativeName ?? language?.name ?? languageCode, - ), - subtitle: (language?.name).isNotBlank && - language?.nativeName != language?.name - ? Text(language!.name!) - : null, - ); - }, - ), - ), - actions: [PopButton(popText: context.l10n!.close)], - ); - } -} diff --git a/lib/src/features/browse_center/presentation/extension/widgets/extension_list_tile.dart b/lib/src/features/browse_center/presentation/extension/widgets/extension_list_tile.dart deleted file mode 100644 index d6ba02d2..00000000 --- a/lib/src/features/browse_center/presentation/extension/widgets/extension_list_tile.dart +++ /dev/null @@ -1,196 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/foundation.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter_hooks/flutter_hooks.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../../../../../constants/app_sizes.dart'; -import '../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../../utils/misc/toast/toast.dart'; -import '../../../../../widgets/server_image.dart'; -import '../../../data/extension_repository/extension_repository.dart'; -import '../../../domain/extension/extension_model.dart'; -import '../../source/controller/source_controller.dart'; - -class ExtensionListTile extends HookConsumerWidget { - const ExtensionListTile({ - super.key, - required this.extension, - required this.refresh, - }); - - final Extension extension; - final AsyncCallback refresh; - - @override - Widget build(BuildContext context, WidgetRef ref) { - final repository = ref.watch(extensionRepositoryProvider); - final isLoading = useState(false); - return ListTile( - key: key, - leading: ClipRRect( - borderRadius: KBorderRadius.r8.radius, - child: ServerImageWithCpi( - url: extension.iconUrl ?? "", - outerSize: const Size.square(48), - innerSize: const Size.square(24), - isLoading: isLoading.value, - ), - ), - title: Text( - extension.name ?? "", - overflow: TextOverflow.ellipsis, - ), - subtitle: Text.rich( - TextSpan( - text: (extension.lang) != null - ? "${extension.lang?.displayName} " - : null, - style: const TextStyle(fontWeight: FontWeight.bold), - children: [ - if (extension.versionName.isNotBlank) - TextSpan( - text: "${extension.versionName ?? ""} ", - style: const TextStyle(fontWeight: FontWeight.normal), - ), - if (extension.isNsfw.ifNull()) - TextSpan( - text: context.l10n!.nsfw18, - style: const TextStyle( - fontWeight: FontWeight.w400, - color: Colors.redAccent, - ), - ), - ], - ), - ), - trailing: ExtensionListTileTailing( - extension: extension, - repository: repository, - isLoading: isLoading, - ref: ref, - refresh: refresh, - ), - ); - } -} - -class ExtensionListTileTailing extends StatelessWidget { - const ExtensionListTileTailing({ - super.key, - required this.extension, - required this.repository, - required this.isLoading, - required this.ref, - required this.refresh, - }); - - final Extension extension; - final ExtensionRepository repository; - final ValueNotifier isLoading; - final WidgetRef ref; - final AsyncCallback refresh; - - @override - Widget build(BuildContext context) { - if (extension.obsolete.ifNull()) { - return OutlinedButton( - onPressed: extension.installed.ifNull() - ? () => repository.uninstallExtension(extension.pkgName!) - : null, - child: Text( - context.l10n!.obsolete, - style: const TextStyle(color: Colors.redAccent), - ), - ); - } else { - if (extension.installed.ifNull()) { - return TextButton( - onPressed: (!isLoading.value) - ? () async { - try { - isLoading.value = (true); - final result = (await AsyncValue.guard( - () async { - if (extension.pkgName.isBlank) { - throw context.l10n!.errorExtension; - } - if (extension.hasUpdate.ifNull()) { - await repository.updateExtension(extension.pkgName!); - } else { - await repository - .uninstallExtension(extension.pkgName!); - } - - await refresh(); - }, - )); - if (context.mounted) { - result.showToastOnError(ref.read(toastProvider(context))); - } - isLoading.value = (false); - } catch (e) { - // - } - } - : null, - child: Text( - extension.hasUpdate.ifNull() - ? isLoading.value - ? context.l10n!.updating - : context.l10n!.update - : isLoading.value - ? context.l10n!.uninstalling - : context.l10n!.uninstall, - ), - ); - } else { - return TextButton( - onPressed: !isLoading.value - ? () async { - try { - isLoading.value = (true); - final result = await AsyncValue.guard(() async { - if (extension.pkgName.isBlank) { - throw context.l10n!.errorExtension; - } - await repository.installExtension(extension.pkgName!); - if ((extension.lang?.code).isNotBlank) { - final code = extension.lang!.code!; - final enabledLanguages = - ref.read(sourceLanguageFilterProvider); - if (enabledLanguages.isNotBlank && - !enabledLanguages!.contains(code)) { - ref - .read(sourceLanguageFilterProvider.notifier) - .update( - {...enabledLanguages, code}.toList(), - ); - } - } - await refresh(); - }); - if (context.mounted) { - result.showToastOnError( - ref.read(toastProvider(context)), - ); - } - isLoading.value = (false); - } catch (e) { - // - } - } - : null, - child: Text( - isLoading.value ? context.l10n!.installing : context.l10n!.install, - ), - ); - } - } - } -} diff --git a/lib/src/features/browse_center/presentation/extension/widgets/install_extension_file.dart b/lib/src/features/browse_center/presentation/extension/widgets/install_extension_file.dart deleted file mode 100644 index 37be67f5..00000000 --- a/lib/src/features/browse_center/presentation/extension/widgets/install_extension_file.dart +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:file_picker/file_picker.dart'; -import 'package:flutter/material.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../../utils/misc/toast/toast.dart'; -import '../../../data/extension_repository/extension_repository.dart'; -import '../controller/extension_controller.dart'; - -class InstallExtensionFile extends ConsumerWidget { - const InstallExtensionFile({super.key}); - - void extensionFilePicker(WidgetRef ref, BuildContext context) async { - final toast = ref.read(toastProvider(context)); - final file = await FilePicker.platform.pickFiles( - type: FileType.custom, - allowedExtensions: ['apk'], - ); - if ((file?.files).isNotBlank) { - if (context.mounted) { - toast.show(context.l10n!.installingExtension); - } - } - AsyncValue.guard(() => ref - .read(extensionRepositoryProvider) - .installExtensionFile(context, file: file?.files.single)).then( - (result) => result.whenOrNull( - error: (error, stackTrace) => result.showToastOnError(toast), - data: (data) { - ref.invalidate(extensionProvider); - toast.instantShow(context.l10n!.extensionInstalled); - }, - ), - ); - } - - @override - Widget build(BuildContext context, WidgetRef ref) { - return IconButton( - icon: const Icon(Icons.add_rounded), - onPressed: () => extensionFilePicker(ref, context), - ); - } -} diff --git a/lib/src/features/browse_center/presentation/global_search/controller/source_quick_search_controller.dart b/lib/src/features/browse_center/presentation/global_search/controller/source_quick_search_controller.dart deleted file mode 100644 index ceee9e81..00000000 --- a/lib/src/features/browse_center/presentation/global_search/controller/source_quick_search_controller.dart +++ /dev/null @@ -1,63 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:riverpod_annotation/riverpod_annotation.dart'; - -import '../../../../../constants/enum.dart'; -import '../../../../../global_providers/global_providers.dart'; -import '../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../manga_book/domain/manga/manga_model.dart'; -import '../../../data/source_repository/source_repository.dart'; -import '../../../domain/source/source_model.dart'; -import '../../source/controller/source_controller.dart'; - -part 'source_quick_search_controller.g.dart'; - -typedef QuickSearchResults = ({ - Source source, - AsyncValue> mangaList -}); - -@riverpod -Future> sourceQuickSearchMangaList( - SourceQuickSearchMangaListRef ref, - String sourceId, { - String? query, -}) async { - final rateLimiterQueue = ref.watch(rateLimitQueueProvider); - final mangaPage = await rateLimiterQueue - .add(() => ref.watch(sourceRepositoryProvider).getMangaList( - pageNum: 1, - sourceId: sourceId, - sourceType: SourceType.filter, - query: query, - )); - return [...?(mangaPage?.mangaList)]; -} - -@riverpod -AsyncValue> quickSearchResults( - QuickSearchResultsRef ref, - {String? query}) { - final sourceMapData = ref.watch(sourceMapFilteredProvider); - - final sourceMap = {...?sourceMapData.valueOrNull}..remove("lastUsed"); - final sourceList = sourceMap.values.fold( - [], - (prev, cur) => [...prev, ...cur], - ); - final List sourceMangaListPairList = []; - for (Source source in sourceList) { - if (source.id.isNotBlank) { - final mangaList = ref.watch( - sourceQuickSearchMangaListProvider(source.id!, query: query), - ); - sourceMangaListPairList.add((mangaList: mangaList, source: source)); - } - } - - return sourceMapData.copyWithData((_) => sourceMangaListPairList); -} diff --git a/lib/src/features/browse_center/presentation/global_search/controller/source_quick_search_controller.g.dart b/lib/src/features/browse_center/presentation/global_search/controller/source_quick_search_controller.g.dart deleted file mode 100644 index 66325e70..00000000 --- a/lib/src/features/browse_center/presentation/global_search/controller/source_quick_search_controller.g.dart +++ /dev/null @@ -1,317 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'source_quick_search_controller.dart'; - -// ************************************************************************** -// RiverpodGenerator -// ************************************************************************** - -String _$sourceQuickSearchMangaListHash() => - r'f282b4a1ec9b9c46a8ef72aceffac1130b8a6cf7'; - -/// Copied from Dart SDK -class _SystemHash { - _SystemHash._(); - - static int combine(int hash, int value) { - // ignore: parameter_assignments - hash = 0x1fffffff & (hash + value); - // ignore: parameter_assignments - hash = 0x1fffffff & (hash + ((0x0007ffff & hash) << 10)); - return hash ^ (hash >> 6); - } - - static int finish(int hash) { - // ignore: parameter_assignments - hash = 0x1fffffff & (hash + ((0x03ffffff & hash) << 3)); - // ignore: parameter_assignments - hash = hash ^ (hash >> 11); - return 0x1fffffff & (hash + ((0x00003fff & hash) << 15)); - } -} - -/// See also [sourceQuickSearchMangaList]. -@ProviderFor(sourceQuickSearchMangaList) -const sourceQuickSearchMangaListProvider = SourceQuickSearchMangaListFamily(); - -/// See also [sourceQuickSearchMangaList]. -class SourceQuickSearchMangaListFamily extends Family>> { - /// See also [sourceQuickSearchMangaList]. - const SourceQuickSearchMangaListFamily(); - - /// See also [sourceQuickSearchMangaList]. - SourceQuickSearchMangaListProvider call( - String sourceId, { - String? query, - }) { - return SourceQuickSearchMangaListProvider( - sourceId, - query: query, - ); - } - - @override - SourceQuickSearchMangaListProvider getProviderOverride( - covariant SourceQuickSearchMangaListProvider provider, - ) { - return call( - provider.sourceId, - query: provider.query, - ); - } - - static const Iterable? _dependencies = null; - - @override - Iterable? get dependencies => _dependencies; - - static const Iterable? _allTransitiveDependencies = null; - - @override - Iterable? get allTransitiveDependencies => - _allTransitiveDependencies; - - @override - String? get name => r'sourceQuickSearchMangaListProvider'; -} - -/// See also [sourceQuickSearchMangaList]. -class SourceQuickSearchMangaListProvider - extends AutoDisposeFutureProvider> { - /// See also [sourceQuickSearchMangaList]. - SourceQuickSearchMangaListProvider( - String sourceId, { - String? query, - }) : this._internal( - (ref) => sourceQuickSearchMangaList( - ref as SourceQuickSearchMangaListRef, - sourceId, - query: query, - ), - from: sourceQuickSearchMangaListProvider, - name: r'sourceQuickSearchMangaListProvider', - debugGetCreateSourceHash: - const bool.fromEnvironment('dart.vm.product') - ? null - : _$sourceQuickSearchMangaListHash, - dependencies: SourceQuickSearchMangaListFamily._dependencies, - allTransitiveDependencies: - SourceQuickSearchMangaListFamily._allTransitiveDependencies, - sourceId: sourceId, - query: query, - ); - - SourceQuickSearchMangaListProvider._internal( - super._createNotifier, { - required super.name, - required super.dependencies, - required super.allTransitiveDependencies, - required super.debugGetCreateSourceHash, - required super.from, - required this.sourceId, - required this.query, - }) : super.internal(); - - final String sourceId; - final String? query; - - @override - Override overrideWith( - FutureOr> Function(SourceQuickSearchMangaListRef provider) - create, - ) { - return ProviderOverride( - origin: this, - override: SourceQuickSearchMangaListProvider._internal( - (ref) => create(ref as SourceQuickSearchMangaListRef), - from: from, - name: null, - dependencies: null, - allTransitiveDependencies: null, - debugGetCreateSourceHash: null, - sourceId: sourceId, - query: query, - ), - ); - } - - @override - AutoDisposeFutureProviderElement> createElement() { - return _SourceQuickSearchMangaListProviderElement(this); - } - - @override - bool operator ==(Object other) { - return other is SourceQuickSearchMangaListProvider && - other.sourceId == sourceId && - other.query == query; - } - - @override - int get hashCode { - var hash = _SystemHash.combine(0, runtimeType.hashCode); - hash = _SystemHash.combine(hash, sourceId.hashCode); - hash = _SystemHash.combine(hash, query.hashCode); - - return _SystemHash.finish(hash); - } -} - -mixin SourceQuickSearchMangaListRef - on AutoDisposeFutureProviderRef> { - /// The parameter `sourceId` of this provider. - String get sourceId; - - /// The parameter `query` of this provider. - String? get query; -} - -class _SourceQuickSearchMangaListProviderElement - extends AutoDisposeFutureProviderElement> - with SourceQuickSearchMangaListRef { - _SourceQuickSearchMangaListProviderElement(super.provider); - - @override - String get sourceId => - (origin as SourceQuickSearchMangaListProvider).sourceId; - @override - String? get query => (origin as SourceQuickSearchMangaListProvider).query; -} - -String _$quickSearchResultsHash() => - r'95c8745e42306378a3b8981adb88d6d40679966e'; - -/// See also [quickSearchResults]. -@ProviderFor(quickSearchResults) -const quickSearchResultsProvider = QuickSearchResultsFamily(); - -/// See also [quickSearchResults]. -class QuickSearchResultsFamily - extends Family>> { - /// See also [quickSearchResults]. - const QuickSearchResultsFamily(); - - /// See also [quickSearchResults]. - QuickSearchResultsProvider call({ - String? query, - }) { - return QuickSearchResultsProvider( - query: query, - ); - } - - @override - QuickSearchResultsProvider getProviderOverride( - covariant QuickSearchResultsProvider provider, - ) { - return call( - query: provider.query, - ); - } - - static const Iterable? _dependencies = null; - - @override - Iterable? get dependencies => _dependencies; - - static const Iterable? _allTransitiveDependencies = null; - - @override - Iterable? get allTransitiveDependencies => - _allTransitiveDependencies; - - @override - String? get name => r'quickSearchResultsProvider'; -} - -/// See also [quickSearchResults]. -class QuickSearchResultsProvider - extends AutoDisposeProvider>> { - /// See also [quickSearchResults]. - QuickSearchResultsProvider({ - String? query, - }) : this._internal( - (ref) => quickSearchResults( - ref as QuickSearchResultsRef, - query: query, - ), - from: quickSearchResultsProvider, - name: r'quickSearchResultsProvider', - debugGetCreateSourceHash: - const bool.fromEnvironment('dart.vm.product') - ? null - : _$quickSearchResultsHash, - dependencies: QuickSearchResultsFamily._dependencies, - allTransitiveDependencies: - QuickSearchResultsFamily._allTransitiveDependencies, - query: query, - ); - - QuickSearchResultsProvider._internal( - super._createNotifier, { - required super.name, - required super.dependencies, - required super.allTransitiveDependencies, - required super.debugGetCreateSourceHash, - required super.from, - required this.query, - }) : super.internal(); - - final String? query; - - @override - Override overrideWith( - AsyncValue> Function( - QuickSearchResultsRef provider) - create, - ) { - return ProviderOverride( - origin: this, - override: QuickSearchResultsProvider._internal( - (ref) => create(ref as QuickSearchResultsRef), - from: from, - name: null, - dependencies: null, - allTransitiveDependencies: null, - debugGetCreateSourceHash: null, - query: query, - ), - ); - } - - @override - AutoDisposeProviderElement>> - createElement() { - return _QuickSearchResultsProviderElement(this); - } - - @override - bool operator ==(Object other) { - return other is QuickSearchResultsProvider && other.query == query; - } - - @override - int get hashCode { - var hash = _SystemHash.combine(0, runtimeType.hashCode); - hash = _SystemHash.combine(hash, query.hashCode); - - return _SystemHash.finish(hash); - } -} - -mixin QuickSearchResultsRef - on AutoDisposeProviderRef>> { - /// The parameter `query` of this provider. - String? get query; -} - -class _QuickSearchResultsProviderElement - extends AutoDisposeProviderElement>> - with QuickSearchResultsRef { - _QuickSearchResultsProviderElement(super.provider); - - @override - String? get query => (origin as QuickSearchResultsProvider).query; -} -// ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member diff --git a/lib/src/features/browse_center/presentation/global_search/global_search_screen.dart b/lib/src/features/browse_center/presentation/global_search/global_search_screen.dart deleted file mode 100644 index 21fc477a..00000000 --- a/lib/src/features/browse_center/presentation/global_search/global_search_screen.dart +++ /dev/null @@ -1,72 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:flutter_hooks/flutter_hooks.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../../../../constants/app_sizes.dart'; -import '../../../../utils/extensions/custom_extensions.dart'; -import '../../../../widgets/emoticons.dart'; -import '../../../../widgets/search_field.dart'; -import '../source/controller/source_controller.dart'; -import 'controller/source_quick_search_controller.dart'; -import 'widgets/source_short_search.dart'; - -class GlobalSearchScreen extends HookConsumerWidget { - const GlobalSearchScreen({super.key, this.initialQuery}); - final String? initialQuery; - @override - Widget build(BuildContext context, WidgetRef ref) { - final query = useState(initialQuery); - final quickSearchResult = - ref.watch(quickSearchResultsProvider(query: query.value)); - return Scaffold( - appBar: AppBar( - title: Text(context.l10n!.globalSearch), - bottom: PreferredSize( - preferredSize: kCalculateAppBarBottomSize([true]), - child: Column( - children: [ - Align( - alignment: Alignment.centerRight, - child: SearchField( - initialText: query.value, - onSubmitted: (value) => query.value = value, - ), - ), - ], - ), - ), - ), - body: quickSearchResult.showUiWhenData( - context, - (data) => data.isBlank - ? Emoticons( - text: context.l10n!.noSourcesFound, - button: TextButton( - onPressed: () => ref.invalidate(sourceListProvider), - child: Text(context.l10n!.refresh), - ), - ) - : ListView.builder( - itemBuilder: (context, index) { - if (data[index].source.id == null) { - return const SizedBox.shrink(); - } else { - return SourceShortSearch( - source: data[index].source, - mangaList: data[index].mangaList, - query: query.value, - ); - } - }, - itemCount: data.length, - ), - ), - ); - } -} diff --git a/lib/src/features/browse_center/presentation/global_search/widgets/source_short_search.dart b/lib/src/features/browse_center/presentation/global_search/widgets/source_short_search.dart deleted file mode 100644 index 701745be..00000000 --- a/lib/src/features/browse_center/presentation/global_search/widgets/source_short_search.dart +++ /dev/null @@ -1,75 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../../../../../constants/app_sizes.dart'; -import '../../../../../constants/enum.dart'; - -import '../../../../../routes/router_config.dart'; -import '../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../../widgets/manga_cover/grid/manga_cover_grid_tile.dart'; -import '../../../../manga_book/domain/manga/manga_model.dart'; -import '../../../domain/source/source_model.dart'; - -class SourceShortSearch extends StatelessWidget { - const SourceShortSearch({ - super.key, - required this.source, - required this.mangaList, - this.query, - }); - final Source source; - final AsyncValue> mangaList; - final String? query; - - @override - Widget build(BuildContext context) { - return Column( - mainAxisSize: MainAxisSize.min, - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - ListTile( - title: Text(source.displayName ?? source.name ?? ""), - trailing: const Icon(Icons.arrow_forward_rounded), - onTap: () => SourceMangaRoute( - sourceId: source.id!, - sourceType: SourceType.filter, - query: query, - ).push(context), - ), - mangaList.showUiWhenData( - context, - (data) => data.isEmpty - ? Padding( - padding: KEdgeInsets.h16v4.size, - child: Text(context.l10n!.noResultFound), - ) - : SingleChildScrollView( - scrollDirection: Axis.horizontal, - child: Row( - children: [ - for (final i in data) - SizedBox( - width: 144, - height: 192, - child: MangaCoverGridTile( - manga: i, - showDarkOverlay: i.inLibrary.ifNull(), - onPressed: i.id != null - ? () => MangaRoute(mangaId: i.id!).push(context) - : null, - ), - ), - ], - ), - ), - ), - ], - ); - } -} diff --git a/lib/src/features/browse_center/presentation/source/controller/source_controller.dart b/lib/src/features/browse_center/presentation/source/controller/source_controller.dart deleted file mode 100644 index e8bec3d9..00000000 --- a/lib/src/features/browse_center/presentation/source/controller/source_controller.dart +++ /dev/null @@ -1,118 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:dio/dio.dart'; -import 'package:riverpod_annotation/riverpod_annotation.dart'; - -import '../../../../../constants/db_keys.dart'; -import '../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../../utils/mixin/shared_preferences_client_mixin.dart'; -import '../../../data/source_repository/source_repository.dart'; -import '../../../domain/source/source_model.dart'; - -part 'source_controller.g.dart'; - -@riverpod -Future?> sourceList(SourceListRef ref) async { - final token = CancelToken(); - ref.onDispose(token.cancel); - final result = await ref - .watch(sourceRepositoryProvider) - .getSourceList(cancelToken: token); - ref.keepAlive(); - return result; -} - -@riverpod -AsyncValue>> sourceMap(SourceMapRef ref) { - final sourceMap = >{}; - final sourceListData = ref.watch(sourceListProvider); - final sourceLastUsed = ref.watch(sourceLastUsedProvider); - for (final e in [...?sourceListData.valueOrNull]) { - sourceMap.update( - e.lang?.code ?? "other", - (value) => [...value, e], - ifAbsent: () => [e], - ); - if (e.id == sourceLastUsed) sourceMap["lastUsed"] = [e]; - } - return sourceListData.copyWithData((e) => sourceMap); -} - -@riverpod -class SourceFilterLangMap extends _$SourceFilterLangMap { - @override - Map build() { - final sourceMap = {...?ref.watch(sourceMapProvider).valueOrNull}; - final enabledLanguages = ref.watch(sourceLanguageFilterProvider); - sourceMap.remove("lastUsed"); - sourceMap.remove("localsourcelang"); - return Map.fromIterable( - [...sourceMap.keys], - value: (element) => (enabledLanguages?.contains(element)).ifNull(), - ); - } - - void toggleLang(String langCode, bool value) { - if (!value) { - ref.read(sourceLanguageFilterProvider.notifier).updateWithPreviousState( - (enabledLanguages) => [...?enabledLanguages]..remove(langCode)); - } else { - ref.read(sourceLanguageFilterProvider.notifier).updateWithPreviousState( - (enabledLanguages) => {...?enabledLanguages, langCode}.toList(), - ); - } - } -} - -@riverpod -AsyncValue>?> sourceMapFiltered( - SourceMapFilteredRef ref) { - final sourceMapFiltered = >{}; - final sourceMapData = ref.watch(sourceMapProvider); - final sourceMap = {...?sourceMapData.valueOrNull}; - final enabledLangList = [...?ref.watch(sourceLanguageFilterProvider)]..sort(); - for (final e in enabledLangList) { - if (sourceMap.containsKey(e)) sourceMapFiltered[e] = sourceMap[e]!; - } - return sourceMapData.copyWithData((e) => sourceMapFiltered); -} - -@riverpod -List? sourceQuery(SourceQueryRef ref, {String? query}) { - final sourceMap = {...?ref.watch(sourceMapFilteredProvider).valueOrNull} - ..remove('lastUsed'); - if (query.isNotBlank) { - return sourceMap.values - .expand((list) => list.where( - (element) => element.name.query(query), - )) - .toList(); - } - return sourceMap.values.expand((list) => list).toList(); -} - -@riverpod -class SourceLanguageFilter extends _$SourceLanguageFilter - with SharedPreferenceClientMixin> { - @override - List? build() => initialize( - ref, - key: DBKeys.sourceLanguageFilter.name, - initial: DBKeys.sourceLanguageFilter.initial, - ); -} - -@riverpod -class SourceLastUsed extends _$SourceLastUsed - with SharedPreferenceClientMixin { - @override - String? build() => initialize( - ref, - key: DBKeys.sourceLastUsed.name, - initial: DBKeys.sourceLastUsed.initial, - ); -} diff --git a/lib/src/features/browse_center/presentation/source/controller/source_controller.g.dart b/lib/src/features/browse_center/presentation/source/controller/source_controller.g.dart deleted file mode 100644 index 24508e47..00000000 --- a/lib/src/features/browse_center/presentation/source/controller/source_controller.g.dart +++ /dev/null @@ -1,256 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'source_controller.dart'; - -// ************************************************************************** -// RiverpodGenerator -// ************************************************************************** - -String _$sourceListHash() => r'80d37bd602ce3e229ac64c39743cee84d94fd1f9'; - -/// See also [sourceList]. -@ProviderFor(sourceList) -final sourceListProvider = AutoDisposeFutureProvider?>.internal( - sourceList, - name: r'sourceListProvider', - debugGetCreateSourceHash: - const bool.fromEnvironment('dart.vm.product') ? null : _$sourceListHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef SourceListRef = AutoDisposeFutureProviderRef?>; -String _$sourceMapHash() => r'13682cd8c100d4d7ef007793b2c5ab9f97bad438'; - -/// See also [sourceMap]. -@ProviderFor(sourceMap) -final sourceMapProvider = - AutoDisposeProvider>>>.internal( - sourceMap, - name: r'sourceMapProvider', - debugGetCreateSourceHash: - const bool.fromEnvironment('dart.vm.product') ? null : _$sourceMapHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef SourceMapRef - = AutoDisposeProviderRef>>>; -String _$sourceMapFilteredHash() => r'0154413eb0639738378258287e318c3fa3e92ecc'; - -/// See also [sourceMapFiltered]. -@ProviderFor(sourceMapFiltered) -final sourceMapFilteredProvider = - AutoDisposeProvider>?>>.internal( - sourceMapFiltered, - name: r'sourceMapFilteredProvider', - debugGetCreateSourceHash: const bool.fromEnvironment('dart.vm.product') - ? null - : _$sourceMapFilteredHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef SourceMapFilteredRef - = AutoDisposeProviderRef>?>>; -String _$sourceQueryHash() => r'4e0ea33fcbc3640e4cc3ecbdf15c75923384ed69'; - -/// Copied from Dart SDK -class _SystemHash { - _SystemHash._(); - - static int combine(int hash, int value) { - // ignore: parameter_assignments - hash = 0x1fffffff & (hash + value); - // ignore: parameter_assignments - hash = 0x1fffffff & (hash + ((0x0007ffff & hash) << 10)); - return hash ^ (hash >> 6); - } - - static int finish(int hash) { - // ignore: parameter_assignments - hash = 0x1fffffff & (hash + ((0x03ffffff & hash) << 3)); - // ignore: parameter_assignments - hash = hash ^ (hash >> 11); - return 0x1fffffff & (hash + ((0x00003fff & hash) << 15)); - } -} - -/// See also [sourceQuery]. -@ProviderFor(sourceQuery) -const sourceQueryProvider = SourceQueryFamily(); - -/// See also [sourceQuery]. -class SourceQueryFamily extends Family?> { - /// See also [sourceQuery]. - const SourceQueryFamily(); - - /// See also [sourceQuery]. - SourceQueryProvider call({ - String? query, - }) { - return SourceQueryProvider( - query: query, - ); - } - - @override - SourceQueryProvider getProviderOverride( - covariant SourceQueryProvider provider, - ) { - return call( - query: provider.query, - ); - } - - static const Iterable? _dependencies = null; - - @override - Iterable? get dependencies => _dependencies; - - static const Iterable? _allTransitiveDependencies = null; - - @override - Iterable? get allTransitiveDependencies => - _allTransitiveDependencies; - - @override - String? get name => r'sourceQueryProvider'; -} - -/// See also [sourceQuery]. -class SourceQueryProvider extends AutoDisposeProvider?> { - /// See also [sourceQuery]. - SourceQueryProvider({ - String? query, - }) : this._internal( - (ref) => sourceQuery( - ref as SourceQueryRef, - query: query, - ), - from: sourceQueryProvider, - name: r'sourceQueryProvider', - debugGetCreateSourceHash: - const bool.fromEnvironment('dart.vm.product') - ? null - : _$sourceQueryHash, - dependencies: SourceQueryFamily._dependencies, - allTransitiveDependencies: - SourceQueryFamily._allTransitiveDependencies, - query: query, - ); - - SourceQueryProvider._internal( - super._createNotifier, { - required super.name, - required super.dependencies, - required super.allTransitiveDependencies, - required super.debugGetCreateSourceHash, - required super.from, - required this.query, - }) : super.internal(); - - final String? query; - - @override - Override overrideWith( - List? Function(SourceQueryRef provider) create, - ) { - return ProviderOverride( - origin: this, - override: SourceQueryProvider._internal( - (ref) => create(ref as SourceQueryRef), - from: from, - name: null, - dependencies: null, - allTransitiveDependencies: null, - debugGetCreateSourceHash: null, - query: query, - ), - ); - } - - @override - AutoDisposeProviderElement?> createElement() { - return _SourceQueryProviderElement(this); - } - - @override - bool operator ==(Object other) { - return other is SourceQueryProvider && other.query == query; - } - - @override - int get hashCode { - var hash = _SystemHash.combine(0, runtimeType.hashCode); - hash = _SystemHash.combine(hash, query.hashCode); - - return _SystemHash.finish(hash); - } -} - -mixin SourceQueryRef on AutoDisposeProviderRef?> { - /// The parameter `query` of this provider. - String? get query; -} - -class _SourceQueryProviderElement - extends AutoDisposeProviderElement?> with SourceQueryRef { - _SourceQueryProviderElement(super.provider); - - @override - String? get query => (origin as SourceQueryProvider).query; -} - -String _$sourceFilterLangMapHash() => - r'acd7c06834be607eeba22b9fd2fcaacd6685660b'; - -/// See also [SourceFilterLangMap]. -@ProviderFor(SourceFilterLangMap) -final sourceFilterLangMapProvider = AutoDisposeNotifierProvider< - SourceFilterLangMap, Map>.internal( - SourceFilterLangMap.new, - name: r'sourceFilterLangMapProvider', - debugGetCreateSourceHash: const bool.fromEnvironment('dart.vm.product') - ? null - : _$sourceFilterLangMapHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef _$SourceFilterLangMap = AutoDisposeNotifier>; -String _$sourceLanguageFilterHash() => - r'a5a8701a5d14b4c784744131113eb56cf1979dbc'; - -/// See also [SourceLanguageFilter]. -@ProviderFor(SourceLanguageFilter) -final sourceLanguageFilterProvider = - AutoDisposeNotifierProvider?>.internal( - SourceLanguageFilter.new, - name: r'sourceLanguageFilterProvider', - debugGetCreateSourceHash: const bool.fromEnvironment('dart.vm.product') - ? null - : _$sourceLanguageFilterHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef _$SourceLanguageFilter = AutoDisposeNotifier?>; -String _$sourceLastUsedHash() => r'afe764b063f80d11ed033dd6386ad8133b2c0fcd'; - -/// See also [SourceLastUsed]. -@ProviderFor(SourceLastUsed) -final sourceLastUsedProvider = - AutoDisposeNotifierProvider.internal( - SourceLastUsed.new, - name: r'sourceLastUsedProvider', - debugGetCreateSourceHash: const bool.fromEnvironment('dart.vm.product') - ? null - : _$sourceLastUsedHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef _$SourceLastUsed = AutoDisposeNotifier; -// ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member diff --git a/lib/src/features/browse_center/presentation/source/source_screen.dart b/lib/src/features/browse_center/presentation/source/source_screen.dart deleted file mode 100644 index 69f239a3..00000000 --- a/lib/src/features/browse_center/presentation/source/source_screen.dart +++ /dev/null @@ -1,119 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:flutter_hooks/flutter_hooks.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../../../../constants/language_list.dart'; - -import '../../../../utils/extensions/custom_extensions.dart'; -import '../../../../utils/misc/toast/toast.dart'; -import '../../../../widgets/emoticons.dart'; -import 'controller/source_controller.dart'; -import 'widgets/source_list_tile.dart'; - -class SourceScreen extends HookConsumerWidget { - const SourceScreen({super.key}); - - @override - Widget build(BuildContext context, WidgetRef ref) { - final sourceMapData = ref.watch(sourceMapFilteredProvider); - - final sourceMap = {...?sourceMapData.valueOrNull}; - final localSource = sourceMap.remove("localsourcelang"); - final lastUsed = sourceMap.remove("lastUsed"); - final allSource = sourceMap.remove("all"); - - refresh() => ref.refresh(sourceListProvider.future); - useEffect(() { - if (sourceMapData.isNotLoading) refresh(); - return; - }, []); - - useEffect(() { - sourceMapData.showToastOnError( - ref.read(toastProvider(context)), - withMicrotask: true, - ); - return; - }, [sourceMapData.valueOrNull]); - - return sourceMapData.showUiWhenData( - context, - (data) { - if ((sourceMap.isEmpty && localSource.isBlank && lastUsed.isBlank)) { - return Emoticons( - text: context.l10n!.noSourcesFound, - button: TextButton( - onPressed: refresh, - child: Text(context.l10n!.refresh), - ), - ); - } - return RefreshIndicator( - onRefresh: refresh, - child: CustomScrollView( - slivers: [ - if (lastUsed.isNotBlank) ...[ - SliverToBoxAdapter( - child: ListTile( - title: Text(languageMap["lastUsed"]?.displayName ?? ""), - ), - ), - SliverToBoxAdapter( - child: SourceListTile(source: lastUsed!.first)) - ], - if (allSource.isNotBlank) ...[ - SliverToBoxAdapter( - child: ListTile( - title: Text(languageMap["all"]?.displayName ?? ""), - ), - ), - SliverList( - delegate: SliverChildBuilderDelegate( - (context, index) => SourceListTile( - source: allSource![index], - ), - childCount: allSource?.length, - ), - ) - ], - for (final k in sourceMap.keys) ...[ - if (sourceMap[k].isNotBlank) ...[ - SliverToBoxAdapter( - child: - ListTile(title: Text(languageMap[k]?.displayName ?? k)), - ), - SliverList( - delegate: SliverChildBuilderDelegate( - (context, index) => SourceListTile( - source: sourceMap[k]![index], - ), - childCount: sourceMap[k]?.length, - ), - ) - ] - ], - if (localSource.isNotBlank) ...[ - SliverToBoxAdapter( - child: ListTile( - title: - Text(languageMap["localsourcelang"]?.displayName ?? ""), - ), - ), - SliverToBoxAdapter( - child: SourceListTile(source: localSource!.first), - ) - ], - ], - ), - ); - }, - refresh: refresh, - ); - } -} diff --git a/lib/src/features/browse_center/presentation/source/widgets/source_language_filter.dart b/lib/src/features/browse_center/presentation/source/widgets/source_language_filter.dart deleted file mode 100644 index 1401f3a6..00000000 --- a/lib/src/features/browse_center/presentation/source/widgets/source_language_filter.dart +++ /dev/null @@ -1,67 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:flutter_hooks/flutter_hooks.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../../../../../constants/language_list.dart'; - -import '../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../../widgets/pop_button.dart'; -import '../../../domain/language/language_model.dart'; -import '../controller/source_controller.dart'; - -class SourceLanguageFilter extends HookConsumerWidget { - const SourceLanguageFilter({super.key}); - @override - Widget build(BuildContext context, WidgetRef ref) { - final languageCodesMap = ref.watch(sourceFilterLangMapProvider); - final languageCodes = useState([]); - - useEffect(() { - final languageList = languageCodesMap.keys.toList(); - languageList.sort((a, b) { - final aExist = (languageCodesMap[a].ifNull()); - final bExist = (languageCodesMap[b].ifNull()); - return aExist == bExist ? a.compareTo(b) : bExist.toIntWithNegative; - }); - languageCodes.value = languageList; - return null; - }, []); - - return AlertDialog( - title: Text(context.l10n!.languages), - content: SizedBox( - height: context.heightScale(scale: .5), - width: context.widthScale(scale: context.isSmallTablet ? .5 : .8), - child: ListView.builder( - itemCount: languageCodes.value.length, - itemBuilder: (context, index) { - final String languageCode = languageCodes.value[index]; - final Language? language = languageMap[languageCode]; - return SwitchListTile( - value: languageCodesMap[languageCode].ifNull(), - onChanged: (value) { - ref - .read(sourceFilterLangMapProvider.notifier) - .toggleLang(languageCode, value); - }, - title: Text( - language?.nativeName ?? language?.name ?? languageCode, - ), - subtitle: (language?.name).isNotBlank && - language?.nativeName != language?.name - ? Text(language!.name!) - : null, - ); - }, - ), - ), - actions: [PopButton(popText: context.l10n!.close)], - ); - } -} diff --git a/lib/src/features/browse_center/presentation/source/widgets/source_list_tile.dart b/lib/src/features/browse_center/presentation/source/widgets/source_list_tile.dart deleted file mode 100644 index e456952b..00000000 --- a/lib/src/features/browse_center/presentation/source/widgets/source_list_tile.dart +++ /dev/null @@ -1,60 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../../../../../constants/app_sizes.dart'; -import '../../../../../constants/enum.dart'; - -import '../../../../../routes/router_config.dart'; -import '../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../../widgets/server_image.dart'; -import '../../../domain/source/source_model.dart'; -import '../controller/source_controller.dart'; - -class SourceListTile extends ConsumerWidget { - const SourceListTile({super.key, required this.source}); - - final Source source; - - @override - Widget build(BuildContext context, WidgetRef ref) { - return ListTile( - onTap: (() async { - if (source.id == null) return; - ref.read(sourceLastUsedProvider.notifier).update(source.id); - SourceMangaRoute( - sourceId: source.id!, - sourceType: SourceType.popular, - ).push(context); - }), - leading: ClipRRect( - borderRadius: KBorderRadius.r8.radius, - child: ServerImage( - imageUrl: source.iconUrl ?? "", - size: const Size.square(48), - ), - ), - title: Text(source.name ?? ""), - subtitle: (source.lang?.displayName).isNotBlank - ? Text(source.lang?.displayName ?? "") - : null, - trailing: (source.supportsLatest.ifNull()) - ? TextButton( - onPressed: () async { - ref.read(sourceLastUsedProvider.notifier).update(source.id); - SourceMangaRoute( - sourceId: source.id!, - sourceType: SourceType.latest, - ).push(context); - }, - child: Text(context.l10n!.latest), - ) - : null, - ); - } -} diff --git a/lib/src/features/browse_center/presentation/source_manga_list/controller/source_manga_controller.dart b/lib/src/features/browse_center/presentation/source_manga_list/controller/source_manga_controller.dart deleted file mode 100644 index d443a744..00000000 --- a/lib/src/features/browse_center/presentation/source_manga_list/controller/source_manga_controller.dart +++ /dev/null @@ -1,86 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:dio/dio.dart'; -import 'package:freezed_annotation/freezed_annotation.dart'; -import 'package:riverpod_annotation/riverpod_annotation.dart'; - -import '../../../../../constants/db_keys.dart'; -import '../../../../../constants/enum.dart'; -import '../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../../utils/mixin/shared_preferences_client_mixin.dart'; -import '../../../data/source_repository/source_repository.dart'; -import '../../../domain/filter/filter_model.dart'; -import '../../../domain/source/source_model.dart'; - -part 'source_manga_controller.g.dart'; - -@riverpod -FutureOr source(SourceRef ref, String sourceId) async { - final token = CancelToken(); - ref.onDispose(token.cancel); - final result = await ref - .watch(sourceRepositoryProvider) - .getSource(sourceId: sourceId, cancelToken: token); - ref.keepAlive(); - return result; -} - -@riverpod -Future?> baseSourceMangaFilterList( - BaseSourceMangaFilterListRef ref, - String sourceId, -) async { - final token = CancelToken(); - ref.onDispose(token.cancel); - final result = await ref - .watch(sourceRepositoryProvider) - .getFilterList(sourceId: sourceId); - ref.keepAlive(); - return result; -} - -@riverpod -class SourceMangaFilterList extends _$SourceMangaFilterList { - @override - AsyncValue?> build(String sourceId, {List? filter}) { - final networkFilter = - ref.watch(baseSourceMangaFilterListProvider(sourceId)); - return filter != null ? AsyncData(filter) : networkFilter; - } - - void updateFilter(List? filter) => - state = state.copyWithData((p0) => filter); - - Future reset() async => - ref.invalidate(baseSourceMangaFilterListProvider(sourceId)); - - List> get getAppliedFilter { - final baseFilters = Filter.filtersToJson( - ref.read(baseSourceMangaFilterListProvider(sourceId)).valueOrNull ?? [], - ); - final currentFilters = Filter.filtersToJson(state.valueOrNull ?? []); - if (baseFilters.length != currentFilters.length) return currentFilters; - const equality = DeepCollectionEquality(); - return [ - for (int i = 0; i < baseFilters.length; i++) - if (!equality.equals(currentFilters[i], baseFilters[i])) - currentFilters[i], - ]; - } -} - -@riverpod -class SourceDisplayMode extends _$SourceDisplayMode - with SharedPreferenceEnumClientMixin { - @override - DisplayMode? build() => initialize( - ref, - key: DBKeys.sourceDisplayMode.name, - initial: DBKeys.sourceDisplayMode.initial, - enumList: DisplayMode.sourceDisplayList, - ); -} diff --git a/lib/src/features/browse_center/presentation/source_manga_list/controller/source_manga_controller.g.dart b/lib/src/features/browse_center/presentation/source_manga_list/controller/source_manga_controller.g.dart deleted file mode 100644 index 9a4f0f5c..00000000 --- a/lib/src/features/browse_center/presentation/source_manga_list/controller/source_manga_controller.g.dart +++ /dev/null @@ -1,478 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'source_manga_controller.dart'; - -// ************************************************************************** -// RiverpodGenerator -// ************************************************************************** - -String _$sourceHash() => r'02ebbe306c0a96174aa221c8e90e9f2c96f398ee'; - -/// Copied from Dart SDK -class _SystemHash { - _SystemHash._(); - - static int combine(int hash, int value) { - // ignore: parameter_assignments - hash = 0x1fffffff & (hash + value); - // ignore: parameter_assignments - hash = 0x1fffffff & (hash + ((0x0007ffff & hash) << 10)); - return hash ^ (hash >> 6); - } - - static int finish(int hash) { - // ignore: parameter_assignments - hash = 0x1fffffff & (hash + ((0x03ffffff & hash) << 3)); - // ignore: parameter_assignments - hash = hash ^ (hash >> 11); - return 0x1fffffff & (hash + ((0x00003fff & hash) << 15)); - } -} - -/// See also [source]. -@ProviderFor(source) -const sourceProvider = SourceFamily(); - -/// See also [source]. -class SourceFamily extends Family> { - /// See also [source]. - const SourceFamily(); - - /// See also [source]. - SourceProvider call( - String sourceId, - ) { - return SourceProvider( - sourceId, - ); - } - - @override - SourceProvider getProviderOverride( - covariant SourceProvider provider, - ) { - return call( - provider.sourceId, - ); - } - - static const Iterable? _dependencies = null; - - @override - Iterable? get dependencies => _dependencies; - - static const Iterable? _allTransitiveDependencies = null; - - @override - Iterable? get allTransitiveDependencies => - _allTransitiveDependencies; - - @override - String? get name => r'sourceProvider'; -} - -/// See also [source]. -class SourceProvider extends AutoDisposeFutureProvider { - /// See also [source]. - SourceProvider( - String sourceId, - ) : this._internal( - (ref) => source( - ref as SourceRef, - sourceId, - ), - from: sourceProvider, - name: r'sourceProvider', - debugGetCreateSourceHash: - const bool.fromEnvironment('dart.vm.product') - ? null - : _$sourceHash, - dependencies: SourceFamily._dependencies, - allTransitiveDependencies: SourceFamily._allTransitiveDependencies, - sourceId: sourceId, - ); - - SourceProvider._internal( - super._createNotifier, { - required super.name, - required super.dependencies, - required super.allTransitiveDependencies, - required super.debugGetCreateSourceHash, - required super.from, - required this.sourceId, - }) : super.internal(); - - final String sourceId; - - @override - Override overrideWith( - FutureOr Function(SourceRef provider) create, - ) { - return ProviderOverride( - origin: this, - override: SourceProvider._internal( - (ref) => create(ref as SourceRef), - from: from, - name: null, - dependencies: null, - allTransitiveDependencies: null, - debugGetCreateSourceHash: null, - sourceId: sourceId, - ), - ); - } - - @override - AutoDisposeFutureProviderElement createElement() { - return _SourceProviderElement(this); - } - - @override - bool operator ==(Object other) { - return other is SourceProvider && other.sourceId == sourceId; - } - - @override - int get hashCode { - var hash = _SystemHash.combine(0, runtimeType.hashCode); - hash = _SystemHash.combine(hash, sourceId.hashCode); - - return _SystemHash.finish(hash); - } -} - -mixin SourceRef on AutoDisposeFutureProviderRef { - /// The parameter `sourceId` of this provider. - String get sourceId; -} - -class _SourceProviderElement extends AutoDisposeFutureProviderElement - with SourceRef { - _SourceProviderElement(super.provider); - - @override - String get sourceId => (origin as SourceProvider).sourceId; -} - -String _$baseSourceMangaFilterListHash() => - r'21b6028eb4e3ea54f9708d2faf1c73f21129721e'; - -/// See also [baseSourceMangaFilterList]. -@ProviderFor(baseSourceMangaFilterList) -const baseSourceMangaFilterListProvider = BaseSourceMangaFilterListFamily(); - -/// See also [baseSourceMangaFilterList]. -class BaseSourceMangaFilterListFamily - extends Family?>> { - /// See also [baseSourceMangaFilterList]. - const BaseSourceMangaFilterListFamily(); - - /// See also [baseSourceMangaFilterList]. - BaseSourceMangaFilterListProvider call( - String sourceId, - ) { - return BaseSourceMangaFilterListProvider( - sourceId, - ); - } - - @override - BaseSourceMangaFilterListProvider getProviderOverride( - covariant BaseSourceMangaFilterListProvider provider, - ) { - return call( - provider.sourceId, - ); - } - - static const Iterable? _dependencies = null; - - @override - Iterable? get dependencies => _dependencies; - - static const Iterable? _allTransitiveDependencies = null; - - @override - Iterable? get allTransitiveDependencies => - _allTransitiveDependencies; - - @override - String? get name => r'baseSourceMangaFilterListProvider'; -} - -/// See also [baseSourceMangaFilterList]. -class BaseSourceMangaFilterListProvider - extends AutoDisposeFutureProvider?> { - /// See also [baseSourceMangaFilterList]. - BaseSourceMangaFilterListProvider( - String sourceId, - ) : this._internal( - (ref) => baseSourceMangaFilterList( - ref as BaseSourceMangaFilterListRef, - sourceId, - ), - from: baseSourceMangaFilterListProvider, - name: r'baseSourceMangaFilterListProvider', - debugGetCreateSourceHash: - const bool.fromEnvironment('dart.vm.product') - ? null - : _$baseSourceMangaFilterListHash, - dependencies: BaseSourceMangaFilterListFamily._dependencies, - allTransitiveDependencies: - BaseSourceMangaFilterListFamily._allTransitiveDependencies, - sourceId: sourceId, - ); - - BaseSourceMangaFilterListProvider._internal( - super._createNotifier, { - required super.name, - required super.dependencies, - required super.allTransitiveDependencies, - required super.debugGetCreateSourceHash, - required super.from, - required this.sourceId, - }) : super.internal(); - - final String sourceId; - - @override - Override overrideWith( - FutureOr?> Function(BaseSourceMangaFilterListRef provider) - create, - ) { - return ProviderOverride( - origin: this, - override: BaseSourceMangaFilterListProvider._internal( - (ref) => create(ref as BaseSourceMangaFilterListRef), - from: from, - name: null, - dependencies: null, - allTransitiveDependencies: null, - debugGetCreateSourceHash: null, - sourceId: sourceId, - ), - ); - } - - @override - AutoDisposeFutureProviderElement?> createElement() { - return _BaseSourceMangaFilterListProviderElement(this); - } - - @override - bool operator ==(Object other) { - return other is BaseSourceMangaFilterListProvider && - other.sourceId == sourceId; - } - - @override - int get hashCode { - var hash = _SystemHash.combine(0, runtimeType.hashCode); - hash = _SystemHash.combine(hash, sourceId.hashCode); - - return _SystemHash.finish(hash); - } -} - -mixin BaseSourceMangaFilterListRef - on AutoDisposeFutureProviderRef?> { - /// The parameter `sourceId` of this provider. - String get sourceId; -} - -class _BaseSourceMangaFilterListProviderElement - extends AutoDisposeFutureProviderElement?> - with BaseSourceMangaFilterListRef { - _BaseSourceMangaFilterListProviderElement(super.provider); - - @override - String get sourceId => (origin as BaseSourceMangaFilterListProvider).sourceId; -} - -String _$sourceMangaFilterListHash() => - r'8a73132c795c270e84df2fe1f325301b4e955c45'; - -abstract class _$SourceMangaFilterList - extends BuildlessAutoDisposeNotifier?>> { - late final String sourceId; - late final List? filter; - - AsyncValue?> build( - String sourceId, { - List? filter, - }); -} - -/// See also [SourceMangaFilterList]. -@ProviderFor(SourceMangaFilterList) -const sourceMangaFilterListProvider = SourceMangaFilterListFamily(); - -/// See also [SourceMangaFilterList]. -class SourceMangaFilterListFamily extends Family?>> { - /// See also [SourceMangaFilterList]. - const SourceMangaFilterListFamily(); - - /// See also [SourceMangaFilterList]. - SourceMangaFilterListProvider call( - String sourceId, { - List? filter, - }) { - return SourceMangaFilterListProvider( - sourceId, - filter: filter, - ); - } - - @override - SourceMangaFilterListProvider getProviderOverride( - covariant SourceMangaFilterListProvider provider, - ) { - return call( - provider.sourceId, - filter: provider.filter, - ); - } - - static const Iterable? _dependencies = null; - - @override - Iterable? get dependencies => _dependencies; - - static const Iterable? _allTransitiveDependencies = null; - - @override - Iterable? get allTransitiveDependencies => - _allTransitiveDependencies; - - @override - String? get name => r'sourceMangaFilterListProvider'; -} - -/// See also [SourceMangaFilterList]. -class SourceMangaFilterListProvider extends AutoDisposeNotifierProviderImpl< - SourceMangaFilterList, AsyncValue?>> { - /// See also [SourceMangaFilterList]. - SourceMangaFilterListProvider( - String sourceId, { - List? filter, - }) : this._internal( - () => SourceMangaFilterList() - ..sourceId = sourceId - ..filter = filter, - from: sourceMangaFilterListProvider, - name: r'sourceMangaFilterListProvider', - debugGetCreateSourceHash: - const bool.fromEnvironment('dart.vm.product') - ? null - : _$sourceMangaFilterListHash, - dependencies: SourceMangaFilterListFamily._dependencies, - allTransitiveDependencies: - SourceMangaFilterListFamily._allTransitiveDependencies, - sourceId: sourceId, - filter: filter, - ); - - SourceMangaFilterListProvider._internal( - super._createNotifier, { - required super.name, - required super.dependencies, - required super.allTransitiveDependencies, - required super.debugGetCreateSourceHash, - required super.from, - required this.sourceId, - required this.filter, - }) : super.internal(); - - final String sourceId; - final List? filter; - - @override - AsyncValue?> runNotifierBuild( - covariant SourceMangaFilterList notifier, - ) { - return notifier.build( - sourceId, - filter: filter, - ); - } - - @override - Override overrideWith(SourceMangaFilterList Function() create) { - return ProviderOverride( - origin: this, - override: SourceMangaFilterListProvider._internal( - () => create() - ..sourceId = sourceId - ..filter = filter, - from: from, - name: null, - dependencies: null, - allTransitiveDependencies: null, - debugGetCreateSourceHash: null, - sourceId: sourceId, - filter: filter, - ), - ); - } - - @override - AutoDisposeNotifierProviderElement?>> createElement() { - return _SourceMangaFilterListProviderElement(this); - } - - @override - bool operator ==(Object other) { - return other is SourceMangaFilterListProvider && - other.sourceId == sourceId && - other.filter == filter; - } - - @override - int get hashCode { - var hash = _SystemHash.combine(0, runtimeType.hashCode); - hash = _SystemHash.combine(hash, sourceId.hashCode); - hash = _SystemHash.combine(hash, filter.hashCode); - - return _SystemHash.finish(hash); - } -} - -mixin SourceMangaFilterListRef - on AutoDisposeNotifierProviderRef?>> { - /// The parameter `sourceId` of this provider. - String get sourceId; - - /// The parameter `filter` of this provider. - List? get filter; -} - -class _SourceMangaFilterListProviderElement - extends AutoDisposeNotifierProviderElement?>> with SourceMangaFilterListRef { - _SourceMangaFilterListProviderElement(super.provider); - - @override - String get sourceId => (origin as SourceMangaFilterListProvider).sourceId; - @override - List? get filter => (origin as SourceMangaFilterListProvider).filter; -} - -String _$sourceDisplayModeHash() => r'363b2f9b0683cd1abea761e244ae9362260f4c5e'; - -/// See also [SourceDisplayMode]. -@ProviderFor(SourceDisplayMode) -final sourceDisplayModeProvider = - AutoDisposeNotifierProvider.internal( - SourceDisplayMode.new, - name: r'sourceDisplayModeProvider', - debugGetCreateSourceHash: const bool.fromEnvironment('dart.vm.product') - ? null - : _$sourceDisplayModeHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef _$SourceDisplayMode = AutoDisposeNotifier; -// ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member diff --git a/lib/src/features/browse_center/presentation/source_manga_list/source_manga_list_screen.dart b/lib/src/features/browse_center/presentation/source_manga_list/source_manga_list_screen.dart deleted file mode 100644 index 0755c822..00000000 --- a/lib/src/features/browse_center/presentation/source_manga_list/source_manga_list_screen.dart +++ /dev/null @@ -1,255 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:flutter_hooks/flutter_hooks.dart'; -import 'package:go_router/go_router.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; -import 'package:infinite_scroll_pagination/infinite_scroll_pagination.dart'; - -import '../../../../constants/app_sizes.dart'; -import '../../../../constants/enum.dart'; - -import '../../../../routes/router_config.dart'; -import '../../../../utils/extensions/custom_extensions.dart'; -import '../../../../utils/hooks/paging_controller_hook.dart'; -import '../../../../widgets/search_field.dart'; -import '../../../manga_book/domain/manga/manga_model.dart'; -import '../../data/source_repository/source_repository.dart'; -import '../../domain/filter/filter_model.dart'; -import 'controller/source_manga_controller.dart'; -import 'widgets/source_manga_display_icon_popup.dart'; -import 'widgets/source_manga_display_view.dart'; -import 'widgets/source_manga_filter.dart'; -import 'widgets/source_type_selectable_chip.dart'; - -class SourceMangaListScreen extends HookConsumerWidget { - const SourceMangaListScreen({ - super.key, - required this.sourceId, - required this.sourceType, - this.initialQuery, - this.initialFilter, - }); - final String sourceId; - final SourceType sourceType; - final String? initialQuery; - final List? initialFilter; - - void _fetchPage( - SourceRepository repository, - PagingController controller, - int pageKey, { - ValueNotifier? query, - List>? filter, - }) { - AsyncValue.guard( - () => repository.getMangaList( - sourceId: sourceId, - sourceType: sourceType, - pageNum: pageKey, - query: query?.value, - filter: filter, - ), - ).then( - (value) => value.whenOrNull( - data: (recentChaptersPage) { - try { - if (recentChaptersPage != null) { - if (recentChaptersPage.hasNextPage.ifNull()) { - controller.appendPage( - [...?recentChaptersPage.mangaList], - pageKey + 1, - ); - } else { - controller.appendLastPage([...?recentChaptersPage.mangaList]); - } - } - } catch (e) { - // - } - }, - error: (error, stackTrace) => controller.error = error, - ), - ); - } - - Widget filterWidget( - WidgetRef ref, - SourceMangaFilterListProvider provider, - List? filterList, - PagingController controller, - BuildContext context, - ) { - return filterList == null - ? const SizedBox.shrink() - : SourceMangaFilter( - initialFilters: filterList, - sourceId: sourceId, - onReset: () => ref.read(provider.notifier).reset(), - onSubmitted: (value) { - if (sourceType == SourceType.filter) { - context.pop(); - ref.read(provider.notifier).updateFilter(value); - controller.refresh(); - } else { - SourceMangaRoute( - sourceId: sourceId, - sourceType: SourceType.filter, - $extra: value, - ).pushReplacement(context); - } - }, - ); - } - - @override - Widget build(BuildContext context, WidgetRef ref) { - final filtersProvider = - sourceMangaFilterListProvider(sourceId, filter: initialFilter); - - final sourceRepository = ref.watch(sourceRepositoryProvider); - final filterList = ref.watch(filtersProvider); - final source = ref.watch(sourceProvider(sourceId)); - - final query = useState(initialQuery); - final showSearch = useState(initialQuery.isNotBlank); - final controller = usePagingController(firstPageKey: 1); - - useEffect(() { - controller.addPageRequestListener( - (pageKey) => _fetchPage( - sourceRepository, - controller, - pageKey, - query: query, - filter: ref.read(filtersProvider.notifier).getAppliedFilter, - ), - ); - return; - }, []); - return source.showUiWhenData( - context, - (data) => Scaffold( - appBar: AppBar( - title: Text(data?.displayName ?? context.l10n!.source), - actions: [ - IconButton( - onPressed: () => showSearch.value = true, - icon: const Icon(Icons.search_rounded), - ), - const SourceMangaDisplayIconPopup(), - if ((data?.isConfigurable).ifNull()) - IconButton( - onPressed: () => - SourcePreferenceRoute(sourceId: sourceId).push(context), - icon: const Icon(Icons.settings_rounded), - ), - ], - bottom: PreferredSize( - preferredSize: kCalculateAppBarBottomSize([true, showSearch.value]), - child: Column( - children: [ - Row( - children: [ - SourceTypeSelectableChip( - value: SourceType.popular, - groupValue: sourceType, - onSelected: (val) { - if (sourceType == SourceType.popular) return; - SourceMangaRoute( - sourceId: sourceId, - sourceType: SourceType.popular, - ).pushReplacement(context); - }, - ), - if ((data?.supportsLatest).ifNull()) - SourceTypeSelectableChip( - value: SourceType.latest, - groupValue: sourceType, - onSelected: (val) { - if (sourceType == SourceType.latest) return; - SourceMangaRoute( - sourceId: sourceId, - sourceType: SourceType.latest, - ).pushReplacement(context); - }, - ), - Builder( - builder: (context) => SourceTypeSelectableChip( - value: SourceType.filter, - groupValue: sourceType, - onSelected: (val) { - context.isTablet - ? Scaffold.of(context).openEndDrawer() - : showModalBottomSheet( - context: context, - builder: (context) => filterWidget( - ref, - filtersProvider, - filterList.valueOrNull, - controller, - context, - ), - ); - }, - ), - ), - ], - ), - const Divider(height: 0), - if (showSearch.value) - Align( - alignment: Alignment.centerRight, - child: SearchField( - initialText: query.value, - onClose: () => showSearch.value = (false), - onSubmitted: (val) { - if (sourceType == SourceType.filter) { - query.value = (val); - controller.refresh(); - } else { - if (val == null) return; - SourceMangaRoute( - sourceId: sourceId, - sourceType: SourceType.filter, - query: val, - ).pushReplacement(context); - } - }, - ), - ), - ], - ), - ), - ), - endDrawer: Drawer( - width: kDrawerWidth, - child: Builder( - builder: (context) => filterWidget( - ref, - filtersProvider, - filterList.valueOrNull, - controller, - context, - ), - ), - ), - body: RefreshIndicator( - onRefresh: () async => controller.refresh(), - child: SourceMangaDisplayView(controller: controller, source: data), - ), - ), - refresh: () => ref.refresh(sourceProvider(sourceId)), - wrapper: (body) => Scaffold( - appBar: AppBar( - title: Text(context.l10n!.source), - ), - body: body, - ), - ); - } -} diff --git a/lib/src/features/browse_center/presentation/source_manga_list/widgets/filter_to_widget.dart b/lib/src/features/browse_center/presentation/source_manga_list/widgets/filter_to_widget.dart deleted file mode 100644 index 4182c65f..00000000 --- a/lib/src/features/browse_center/presentation/source_manga_list/widgets/filter_to_widget.dart +++ /dev/null @@ -1,179 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; - -import '../../../../../constants/app_sizes.dart'; -import '../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../../widgets/search_field.dart'; -import '../../../../../widgets/sort_list_tile.dart'; -import '../../../domain/filter/filter_model.dart'; -import '../../../domain/filter_state/filter_state_model.dart'; - -class FilterToWidget extends StatelessWidget { - const FilterToWidget({ - super.key, - required this.filter, - required this.onChanged, - }); - final Filter filter; - final ValueChanged onChanged; - - void onChangedFilterCopyWith(T filterState) => - onChanged(filter.copyWith(filterState: filterState)); - - @override - Widget build(BuildContext context) { - FilterState? filterState = filter.filterState; - return switch (filterState) { - FilterHeader(name: String? name) => name.isNotBlank - ? ListTile( - title: Text(name!), - dense: true, - ) - : const SizedBox.shrink(), - FilterSeparator() => const Divider(), - FilterText( - name: String? name, - state: String? state, - ) => - SearchField( - autofocus: false, - onChanged: (val) => - onChangedFilterCopyWith(filterState.copyWith(state: val)), - hintText: name, - initialText: state, - ), - FilterCheckBox( - name: String? name, - state: bool? state, - ) => - CheckboxListTile( - value: state.ifNull(), - title: Text(name ?? ""), - onChanged: (value) => - onChangedFilterCopyWith(filterState.copyWith(state: value)), - controlAffinity: ListTileControlAffinity.leading, - ), - FilterTriState( - name: String? name, - state: int? state, - ) => - CheckboxListTile( - value: state.toBool, - onChanged: (value) => - onChangedFilterCopyWith(filterState.copyWith(state: value.toInt)), - title: Text(name ?? ""), - controlAffinity: ListTileControlAffinity.leading, - tristate: true, - ), - FilterSort( - name: String? name, - state: SortState? state, - values: List? values, - ) => - ExpansionTile( - title: Text( - name ?? "", - style: context.textTheme.labelLarge, - ), - children: [ - for (int i = 0; - i < (values?.length).getValueOnNullOrNegative(); - i++) - SortListTile( - key: ValueKey("$name-$i"), - ascending: (state?.ascending).ifNull(true), - title: Text(values != null ? values[i] : ""), - selected: i == state?.index, - onChanged: (value) { - if (filterState.copyWith.state == null) return; - onChangedFilterCopyWith( - filterState.copyWith.state!(ascending: value), - ); - }, - onSelected: () { - if (filterState.copyWith.state == null) return; - onChangedFilterCopyWith( - filterState.copyWith.state!(index: i)); - }, - ) - ], - ), - FilterSelect( - name: String? name, - state: int? state, - displayValues: List? displayValues, - ) => - Row( - mainAxisSize: MainAxisSize.min, - children: [ - Expanded( - child: ListTile( - title: Text( - name ?? "", - maxLines: 2, - overflow: TextOverflow.ellipsis, - ), - ), - ), - Expanded( - child: DropdownButtonHideUnderline( - child: Padding( - padding: KEdgeInsets.h16.size, - child: DropdownButton( - icon: const Icon(Icons.keyboard_arrow_down), - isExpanded: true, - value: state, - hint: Text(name ?? ""), - items: List.generate( - (displayValues?.length).getValueOnNullOrNegative(), - (index) => index, - ) - .map((e) => DropdownMenuItem( - value: e, - child: Text( - displayValues![e], - maxLines: 2, - overflow: TextOverflow.ellipsis, - style: context.textTheme.bodySmall, - ), - )) - .toList(), - onChanged: (value) => onChangedFilterCopyWith( - filterState.copyWith(state: value)), - ), - ), - ), - ), - ], - ), - FilterGroup( - name: String? name, - state: List? state, - ) => - ExpansionTile( - title: Text( - name ?? "", - style: context.textTheme.labelLarge, - ), - children: [ - for (int i = 0; i < (state?.length).getValueOnNullOrNegative(); i++) - FilterToWidget( - key: ValueKey("$name-$i"), - filter: state![i], - onChanged: (groupFilter) => onChangedFilterCopyWith( - filterState.copyWith( - state: [...state]..replaceRange(i, i + 1, [groupFilter]), - ), - ), - ), - ], - ), - null => const SizedBox.shrink(), - }; - } -} diff --git a/lib/src/features/browse_center/presentation/source_manga_list/widgets/source_manga_display_icon_popup.dart b/lib/src/features/browse_center/presentation/source_manga_list/widgets/source_manga_display_icon_popup.dart deleted file mode 100644 index ca6c51ff..00000000 --- a/lib/src/features/browse_center/presentation/source_manga_list/widgets/source_manga_display_icon_popup.dart +++ /dev/null @@ -1,43 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:go_router/go_router.dart'; - -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../../../../../constants/db_keys.dart'; -import '../../../../../constants/enum.dart'; - -import '../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../../widgets/radio_list_popup.dart'; -import '../controller/source_manga_controller.dart'; - -class SourceMangaDisplayIconPopup extends ConsumerWidget { - const SourceMangaDisplayIconPopup({super.key}); - - @override - Widget build(BuildContext context, WidgetRef ref) { - final displayMode = ref.watch(sourceDisplayModeProvider) ?? - DBKeys.sourceDisplayMode.initial; - return IconButton( - icon: Icon(displayMode?.icon), - onPressed: () => showDialog( - context: context, - builder: (context) => RadioListPopup( - optionList: DisplayMode.sourceDisplayList, - getOptionTitle: (value) => value.toLocale(context), - title: context.l10n!.displayMode, - value: displayMode, - onChange: (enumValue) async { - ref.read(sourceDisplayModeProvider.notifier).update(enumValue); - if (context.mounted) context.pop(); - }, - ), - ), - ); - } -} diff --git a/lib/src/features/browse_center/presentation/source_manga_list/widgets/source_manga_display_view.dart b/lib/src/features/browse_center/presentation/source_manga_list/widgets/source_manga_display_view.dart deleted file mode 100644 index 4b8fc963..00000000 --- a/lib/src/features/browse_center/presentation/source_manga_list/widgets/source_manga_display_view.dart +++ /dev/null @@ -1,85 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; - -import 'package:hooks_riverpod/hooks_riverpod.dart'; -import 'package:infinite_scroll_pagination/infinite_scroll_pagination.dart'; - -import '../../../../../constants/db_keys.dart'; -import '../../../../../constants/enum.dart'; -import '../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../manga_book/data/manga_book_repository.dart'; -import '../../../../manga_book/domain/manga/manga_model.dart'; -import '../../../domain/source/source_model.dart'; -import '../controller/source_manga_controller.dart'; -import 'source_manga_grid_view.dart'; -import 'source_manga_list_view.dart'; - -class SourceMangaDisplayView extends ConsumerWidget { - const SourceMangaDisplayView({ - super.key, - required this.controller, - this.source, - }); - - final PagingController controller; - final Source? source; - @override - Widget build(BuildContext context, WidgetRef ref) { - final DisplayMode displayMode = ref.watch(sourceDisplayModeProvider) ?? - DBKeys.sourceDisplayMode.initial; - toggleFavorite(Manga item) async { - if (item.inLibrary.ifNull()) { - bool removeManga = false; - await showDialog( - context: context, - builder: (context) => AlertDialog( - title: item.title.isNotBlank ? Text(item.title!) : null, - content: Text( - context.l10n!.removeFromLibrary, - style: context.textTheme.bodyLarge, - ), - actions: [ - TextButton( - onPressed: () => Navigator.pop(context), - child: Text(context.l10n!.cancel), - ), - ElevatedButton( - onPressed: () async { - Navigator.pop(context); - removeManga = true; - }, - child: Text(context.l10n!.remove), - ), - ], - ), - ); - return removeManga - ? await AsyncValue.guard(() => ref - .read(mangaBookRepositoryProvider) - .removeMangaFromLibrary(item.id!)) - : null; - } else { - return AsyncValue.guard(() => - ref.read(mangaBookRepositoryProvider).addMangaToLibrary(item.id!)); - } - } - - return switch (displayMode) { - DisplayMode.grid => SourceMangaGridView( - controller: controller, - source: source, - toggleFavorite: toggleFavorite, - ), - DisplayMode.list || DisplayMode.descriptiveList => SourceMangaListView( - controller: controller, - source: source, - toggleFavorite: toggleFavorite, - ) - }; - } -} diff --git a/lib/src/features/browse_center/presentation/source_manga_list/widgets/source_manga_filter.dart b/lib/src/features/browse_center/presentation/source_manga_list/widgets/source_manga_filter.dart deleted file mode 100644 index b2518145..00000000 --- a/lib/src/features/browse_center/presentation/source_manga_list/widgets/source_manga_filter.dart +++ /dev/null @@ -1,73 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:flutter_hooks/flutter_hooks.dart'; - -import '../../../../../constants/app_sizes.dart'; - -import '../../../../../utils/extensions/custom_extensions.dart'; -import '../../../domain/filter/filter_model.dart'; -import 'filter_to_widget.dart'; - -class SourceMangaFilter extends HookWidget { - const SourceMangaFilter({ - super.key, - required this.initialFilters, - required this.sourceId, - required this.onSubmitted, - required this.onReset, - }); - final List initialFilters; - final String sourceId; - final ValueChanged?> onSubmitted; - final VoidCallback onReset; - @override - Widget build(BuildContext context) { - final filters = useState(initialFilters); - return Scaffold( - appBar: PreferredSize( - preferredSize: const Size.fromHeight(kAppBarBottomHeight), - child: Padding( - padding: const EdgeInsets.all(8.0), - child: Row( - children: [ - TextButton( - onPressed: () { - onReset(); - filters.value = (initialFilters); - }, - child: Text(context.l10n!.reset), - ), - const Spacer(), - FilledButton( - onPressed: () => onSubmitted(filters.value), - child: Text(context.l10n!.filter), - ), - ], - ), - ), - ), - body: ListView.builder( - itemBuilder: (context, index) { - final filter = filters.value[index]; - return FilterToWidget( - key: ValueKey("Filter-${filter.filterState?.name}"), - filter: filter, - onChanged: (value) { - filters.value = ([...initialFilters]..replaceRange( - index, - index + 1, - [value], - )); - }, - ); - }, - itemCount: filters.value.length, - ), - ); - } -} diff --git a/lib/src/features/browse_center/presentation/source_manga_list/widgets/source_manga_grid_view.dart b/lib/src/features/browse_center/presentation/source_manga_list/widgets/source_manga_grid_view.dart deleted file mode 100644 index 955e50d6..00000000 --- a/lib/src/features/browse_center/presentation/source_manga_list/widgets/source_manga_grid_view.dart +++ /dev/null @@ -1,78 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; -import 'package:infinite_scroll_pagination/infinite_scroll_pagination.dart'; - -import '../../../../../constants/app_sizes.dart'; - -import '../../../../../routes/router_config.dart'; -import '../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../../widgets/custom_circular_progress_indicator.dart'; -import '../../../../../widgets/emoticons.dart'; -import '../../../../../widgets/manga_cover/grid/manga_cover_grid_tile.dart'; -import '../../../../manga_book/domain/manga/manga_model.dart'; -import '../../../../settings/presentation/appearance/widgets/grid_cover_min_width.dart'; -import '../../../domain/source/source_model.dart'; - -class SourceMangaGridView extends ConsumerWidget { - const SourceMangaGridView({ - super.key, - required this.toggleFavorite, - required this.controller, - this.source, - }); - final Future Function(Manga) toggleFavorite; - final PagingController controller; - final Source? source; - - @override - Widget build(BuildContext context, WidgetRef ref) { - return PagedGridView( - pagingController: controller, - builderDelegate: PagedChildBuilderDelegate( - firstPageProgressIndicatorBuilder: (context) => - const CenterSorayomiShimmerIndicator(), - newPageProgressIndicatorBuilder: (context) => - const CenterSorayomiShimmerIndicator(), - firstPageErrorIndicatorBuilder: (context) => Emoticons( - text: controller.error.toString(), - button: TextButton( - onPressed: () => controller.refresh(), - child: Text(context.l10n!.retry), - ), - ), - noItemsFoundIndicatorBuilder: (context) => Emoticons( - text: context.l10n!.noMangaFound, - button: TextButton( - onPressed: () => controller.refresh(), - child: Text(context.l10n!.refresh), - ), - ), - itemBuilder: (context, item, index) => MangaCoverGridTile( - manga: item.copyWith(source: source), - showDarkOverlay: item.inLibrary.ifNull(), - onLongPress: () async { - final value = await toggleFavorite(item); - if (value == null) return; - if (value is! AsyncError) { - final items = [...?controller.itemList]; - items[index] = item.copyWith(inLibrary: !item.inLibrary.ifNull()); - controller.itemList = items; - } - }, - onPressed: () { - if (item.id != null) { - MangaRoute(mangaId: item.id!).push(context); - } - }, - ), - ), - gridDelegate: mangaCoverGridDelegate(ref.watch(gridMinWidthProvider)), - ); - } -} diff --git a/lib/src/features/browse_center/presentation/source_manga_list/widgets/source_manga_list_view.dart b/lib/src/features/browse_center/presentation/source_manga_list/widgets/source_manga_list_view.dart deleted file mode 100644 index 7ea9c9b3..00000000 --- a/lib/src/features/browse_center/presentation/source_manga_list/widgets/source_manga_list_view.dart +++ /dev/null @@ -1,101 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; -import 'package:infinite_scroll_pagination/infinite_scroll_pagination.dart'; -import 'package:shimmer/shimmer.dart'; - -import '../../../../../constants/app_sizes.dart'; -import '../../../../../routes/router_config.dart'; -import '../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../../widgets/custom_circular_progress_indicator.dart'; -import '../../../../../widgets/emoticons.dart'; -import '../../../../../widgets/manga_cover/list/manga_cover_list_tile.dart'; -import '../../../../manga_book/domain/manga/manga_model.dart'; -import '../../../domain/source/source_model.dart'; - -class SourceMangaListView extends ConsumerWidget { - const SourceMangaListView({ - super.key, - required this.toggleFavorite, - required this.controller, - this.source, - }); - final Future Function(Manga) toggleFavorite; - final PagingController controller; - final Source? source; - - @override - Widget build(BuildContext context, WidgetRef ref) { - return PagedListView( - pagingController: controller, - builderDelegate: PagedChildBuilderDelegate( - firstPageProgressIndicatorBuilder: (context) => - const CenterSorayomiShimmerIndicator(), - newPageProgressIndicatorBuilder: (context) => Row( - children: [ - SizedBox( - height: 80, - width: 80, - child: ClipRRect( - borderRadius: KBorderRadius.r8.radius, - child: const SorayomiShimmerIndicator(), - ), - ), - Padding( - padding: KEdgeInsets.h8.size, - child: Shimmer.fromColors( - baseColor: context.colorScheme.background, - highlightColor: context.theme.indicatorColor, - child: Container( - width: context.width * .3, - decoration: BoxDecoration( - borderRadius: KBorderRadius.r8.radius, - color: Colors.white, - ), - height: 12, - ), - ), - ), - const Spacer() - ], - ), - firstPageErrorIndicatorBuilder: (context) => Emoticons( - text: controller.error.toString(), - button: TextButton( - onPressed: () => controller.refresh(), - child: Text(context.l10n!.retry), - ), - ), - noItemsFoundIndicatorBuilder: (context) => Emoticons( - text: context.l10n!.noMangaFound, - button: TextButton( - onPressed: () => controller.refresh(), - child: Text(context.l10n!.refresh), - ), - ), - itemBuilder: (context, item, index) => MangaCoverListTile( - manga: item.copyWith(source: source), - onLongPress: () async { - final value = await toggleFavorite(item); - if (value == null) return; - if (value is! AsyncError) { - final items = [...?controller.itemList]; - items[index] = item.copyWith(inLibrary: !item.inLibrary.ifNull()); - controller.itemList = items; - } - }, - onPressed: () { - if (item.id != null) { - MangaRoute(mangaId: item.id!).push(context); - } - }, - ), - ), - ); - } -} diff --git a/lib/src/features/browse_center/presentation/source_manga_list/widgets/source_type_selectable_chip.dart b/lib/src/features/browse_center/presentation/source_manga_list/widgets/source_type_selectable_chip.dart deleted file mode 100644 index 44a62d5a..00000000 --- a/lib/src/features/browse_center/presentation/source_manga_list/widgets/source_type_selectable_chip.dart +++ /dev/null @@ -1,43 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; - -import '../../../../../constants/app_sizes.dart'; -import '../../../../../constants/enum.dart'; -import '../../../../../utils/extensions/custom_extensions.dart'; - -class SourceTypeSelectableChip extends StatelessWidget { - const SourceTypeSelectableChip({ - super.key, - required this.value, - required this.groupValue, - required this.onSelected, - }); - final SourceType value; - final SourceType groupValue; - final ValueChanged onSelected; - - @override - Widget build(BuildContext context) { - final selected = value == groupValue; - return Padding( - padding: KEdgeInsets.h4v8.size, - child: ChoiceChip( - label: Text(value.toLocale(context)), - selected: selected, - avatar: selected - ? null - : Icon( - selected ? value.selectedIcon : value.icon, - color: context.theme.colorScheme.onSurface - .withOpacity(selected ? .5 : 1), - ), - onSelected: onSelected, - ), - ); - } -} diff --git a/lib/src/features/browse_center/presentation/source_preference/controller/source_preference_controller.dart b/lib/src/features/browse_center/presentation/source_preference/controller/source_preference_controller.dart deleted file mode 100644 index d7e674ed..00000000 --- a/lib/src/features/browse_center/presentation/source_preference/controller/source_preference_controller.dart +++ /dev/null @@ -1,41 +0,0 @@ -// Copyright (c) 2023 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'dart:convert'; - -import 'package:riverpod_annotation/riverpod_annotation.dart'; - -import '../../../data/source_repository/source_repository.dart'; -import '../../../domain/source_preference/source_preference.dart'; -part 'source_preference_controller.g.dart'; - -@riverpod -Future?> baseSourcePreferenceList( - BaseSourcePreferenceListRef ref, - String sourceId, -) => - ref.read(sourceRepositoryProvider).getPreferenceList(sourceId: sourceId); - -@riverpod -class SourcePreferenceList extends _$SourcePreferenceList { - @override - AsyncValue?> build(String sourceId) => - ref.watch(baseSourcePreferenceListProvider(sourceId)); - - void reset() => ref.invalidate(baseSourcePreferenceListProvider(sourceId)); - - void updatePreference(int index, SourcePreference preference) async { - final value = preference.sourcePreferenceProp?.currentValue; - await ref.read(sourceRepositoryProvider).updatePreferenceList( - sourceId: sourceId, - preference: { - "position": index, - "value": value is List ? jsonEncode(value) : value, - }, - ); - reset(); - } -} diff --git a/lib/src/features/browse_center/presentation/source_preference/controller/source_preference_controller.g.dart b/lib/src/features/browse_center/presentation/source_preference/controller/source_preference_controller.g.dart deleted file mode 100644 index bcea8004..00000000 --- a/lib/src/features/browse_center/presentation/source_preference/controller/source_preference_controller.g.dart +++ /dev/null @@ -1,313 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'source_preference_controller.dart'; - -// ************************************************************************** -// RiverpodGenerator -// ************************************************************************** - -String _$baseSourcePreferenceListHash() => - r'5f48b999265f1507e80fbcee0caa4e8880d95a76'; - -/// Copied from Dart SDK -class _SystemHash { - _SystemHash._(); - - static int combine(int hash, int value) { - // ignore: parameter_assignments - hash = 0x1fffffff & (hash + value); - // ignore: parameter_assignments - hash = 0x1fffffff & (hash + ((0x0007ffff & hash) << 10)); - return hash ^ (hash >> 6); - } - - static int finish(int hash) { - // ignore: parameter_assignments - hash = 0x1fffffff & (hash + ((0x03ffffff & hash) << 3)); - // ignore: parameter_assignments - hash = hash ^ (hash >> 11); - return 0x1fffffff & (hash + ((0x00003fff & hash) << 15)); - } -} - -/// See also [baseSourcePreferenceList]. -@ProviderFor(baseSourcePreferenceList) -const baseSourcePreferenceListProvider = BaseSourcePreferenceListFamily(); - -/// See also [baseSourcePreferenceList]. -class BaseSourcePreferenceListFamily - extends Family?>> { - /// See also [baseSourcePreferenceList]. - const BaseSourcePreferenceListFamily(); - - /// See also [baseSourcePreferenceList]. - BaseSourcePreferenceListProvider call( - String sourceId, - ) { - return BaseSourcePreferenceListProvider( - sourceId, - ); - } - - @override - BaseSourcePreferenceListProvider getProviderOverride( - covariant BaseSourcePreferenceListProvider provider, - ) { - return call( - provider.sourceId, - ); - } - - static const Iterable? _dependencies = null; - - @override - Iterable? get dependencies => _dependencies; - - static const Iterable? _allTransitiveDependencies = null; - - @override - Iterable? get allTransitiveDependencies => - _allTransitiveDependencies; - - @override - String? get name => r'baseSourcePreferenceListProvider'; -} - -/// See also [baseSourcePreferenceList]. -class BaseSourcePreferenceListProvider - extends AutoDisposeFutureProvider?> { - /// See also [baseSourcePreferenceList]. - BaseSourcePreferenceListProvider( - String sourceId, - ) : this._internal( - (ref) => baseSourcePreferenceList( - ref as BaseSourcePreferenceListRef, - sourceId, - ), - from: baseSourcePreferenceListProvider, - name: r'baseSourcePreferenceListProvider', - debugGetCreateSourceHash: - const bool.fromEnvironment('dart.vm.product') - ? null - : _$baseSourcePreferenceListHash, - dependencies: BaseSourcePreferenceListFamily._dependencies, - allTransitiveDependencies: - BaseSourcePreferenceListFamily._allTransitiveDependencies, - sourceId: sourceId, - ); - - BaseSourcePreferenceListProvider._internal( - super._createNotifier, { - required super.name, - required super.dependencies, - required super.allTransitiveDependencies, - required super.debugGetCreateSourceHash, - required super.from, - required this.sourceId, - }) : super.internal(); - - final String sourceId; - - @override - Override overrideWith( - FutureOr?> Function( - BaseSourcePreferenceListRef provider) - create, - ) { - return ProviderOverride( - origin: this, - override: BaseSourcePreferenceListProvider._internal( - (ref) => create(ref as BaseSourcePreferenceListRef), - from: from, - name: null, - dependencies: null, - allTransitiveDependencies: null, - debugGetCreateSourceHash: null, - sourceId: sourceId, - ), - ); - } - - @override - AutoDisposeFutureProviderElement?> createElement() { - return _BaseSourcePreferenceListProviderElement(this); - } - - @override - bool operator ==(Object other) { - return other is BaseSourcePreferenceListProvider && - other.sourceId == sourceId; - } - - @override - int get hashCode { - var hash = _SystemHash.combine(0, runtimeType.hashCode); - hash = _SystemHash.combine(hash, sourceId.hashCode); - - return _SystemHash.finish(hash); - } -} - -mixin BaseSourcePreferenceListRef - on AutoDisposeFutureProviderRef?> { - /// The parameter `sourceId` of this provider. - String get sourceId; -} - -class _BaseSourcePreferenceListProviderElement - extends AutoDisposeFutureProviderElement?> - with BaseSourcePreferenceListRef { - _BaseSourcePreferenceListProviderElement(super.provider); - - @override - String get sourceId => (origin as BaseSourcePreferenceListProvider).sourceId; -} - -String _$sourcePreferenceListHash() => - r'30c8dca8328a16872db111dcc9052178c9f3e60c'; - -abstract class _$SourcePreferenceList - extends BuildlessAutoDisposeNotifier?>> { - late final String sourceId; - - AsyncValue?> build( - String sourceId, - ); -} - -/// See also [SourcePreferenceList]. -@ProviderFor(SourcePreferenceList) -const sourcePreferenceListProvider = SourcePreferenceListFamily(); - -/// See also [SourcePreferenceList]. -class SourcePreferenceListFamily - extends Family?>> { - /// See also [SourcePreferenceList]. - const SourcePreferenceListFamily(); - - /// See also [SourcePreferenceList]. - SourcePreferenceListProvider call( - String sourceId, - ) { - return SourcePreferenceListProvider( - sourceId, - ); - } - - @override - SourcePreferenceListProvider getProviderOverride( - covariant SourcePreferenceListProvider provider, - ) { - return call( - provider.sourceId, - ); - } - - static const Iterable? _dependencies = null; - - @override - Iterable? get dependencies => _dependencies; - - static const Iterable? _allTransitiveDependencies = null; - - @override - Iterable? get allTransitiveDependencies => - _allTransitiveDependencies; - - @override - String? get name => r'sourcePreferenceListProvider'; -} - -/// See also [SourcePreferenceList]. -class SourcePreferenceListProvider extends AutoDisposeNotifierProviderImpl< - SourcePreferenceList, AsyncValue?>> { - /// See also [SourcePreferenceList]. - SourcePreferenceListProvider( - String sourceId, - ) : this._internal( - () => SourcePreferenceList()..sourceId = sourceId, - from: sourcePreferenceListProvider, - name: r'sourcePreferenceListProvider', - debugGetCreateSourceHash: - const bool.fromEnvironment('dart.vm.product') - ? null - : _$sourcePreferenceListHash, - dependencies: SourcePreferenceListFamily._dependencies, - allTransitiveDependencies: - SourcePreferenceListFamily._allTransitiveDependencies, - sourceId: sourceId, - ); - - SourcePreferenceListProvider._internal( - super._createNotifier, { - required super.name, - required super.dependencies, - required super.allTransitiveDependencies, - required super.debugGetCreateSourceHash, - required super.from, - required this.sourceId, - }) : super.internal(); - - final String sourceId; - - @override - AsyncValue?> runNotifierBuild( - covariant SourcePreferenceList notifier, - ) { - return notifier.build( - sourceId, - ); - } - - @override - Override overrideWith(SourcePreferenceList Function() create) { - return ProviderOverride( - origin: this, - override: SourcePreferenceListProvider._internal( - () => create()..sourceId = sourceId, - from: from, - name: null, - dependencies: null, - allTransitiveDependencies: null, - debugGetCreateSourceHash: null, - sourceId: sourceId, - ), - ); - } - - @override - AutoDisposeNotifierProviderElement?>> createElement() { - return _SourcePreferenceListProviderElement(this); - } - - @override - bool operator ==(Object other) { - return other is SourcePreferenceListProvider && other.sourceId == sourceId; - } - - @override - int get hashCode { - var hash = _SystemHash.combine(0, runtimeType.hashCode); - hash = _SystemHash.combine(hash, sourceId.hashCode); - - return _SystemHash.finish(hash); - } -} - -mixin SourcePreferenceListRef - on AutoDisposeNotifierProviderRef?>> { - /// The parameter `sourceId` of this provider. - String get sourceId; -} - -class _SourcePreferenceListProviderElement - extends AutoDisposeNotifierProviderElement?>> with SourcePreferenceListRef { - _SourcePreferenceListProviderElement(super.provider); - - @override - String get sourceId => (origin as SourcePreferenceListProvider).sourceId; -} -// ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member diff --git a/lib/src/features/browse_center/presentation/source_preference/source_preference_screen.dart b/lib/src/features/browse_center/presentation/source_preference/source_preference_screen.dart deleted file mode 100644 index 706539f0..00000000 --- a/lib/src/features/browse_center/presentation/source_preference/source_preference_screen.dart +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright (c) 2023 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../../../../utils/extensions/custom_extensions.dart'; -import '../source_manga_list/controller/source_manga_controller.dart'; -import 'controller/source_preference_controller.dart'; -import 'widgets/source_preference_to_widget.dart'; - -class SourcePreferenceScreen extends HookConsumerWidget { - const SourcePreferenceScreen({super.key, required this.sourceId}); - - final String sourceId; - - @override - Widget build(BuildContext context, WidgetRef ref) { - final source = ref.watch(sourceProvider(sourceId)); - final preferenceProvider = sourcePreferenceListProvider(sourceId); - final networkPreferences = ref.watch(preferenceProvider); - final preferences = networkPreferences.valueOrNull; - return Scaffold( - appBar: AppBar( - title: Text( - source.valueOrNull?.displayName ?? "", - style: context.textTheme.titleLarge, - ), - ), - body: networkPreferences.showUiWhenData( - context, - (data) => ListView.builder( - itemBuilder: (context, index) { - final sourcePreference = preferences?[index]; - if (sourcePreference == null) return const SizedBox.shrink(); - return SourcePreferenceToWidget( - key: ValueKey( - "Source-preference-${sourcePreference.sourcePreferenceProp?.key}", - ), - sourcePreference: sourcePreference, - onChanged: (value) { - ref - .read(preferenceProvider.notifier) - .updatePreference(index, value); - }, - ); - }, - itemCount: preferences?.length ?? 0, - ), - ), - ); - } -} diff --git a/lib/src/features/browse_center/presentation/source_preference/widgets/source_preference_to_widget.dart b/lib/src/features/browse_center/presentation/source_preference/widgets/source_preference_to_widget.dart deleted file mode 100644 index 7d012d9d..00000000 --- a/lib/src/features/browse_center/presentation/source_preference/widgets/source_preference_to_widget.dart +++ /dev/null @@ -1,143 +0,0 @@ -// Copyright (c) 2023 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:go_router/go_router.dart'; - -import '../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../../widgets/multi_select_popup.dart'; -import '../../../../../widgets/radio_list_popup.dart'; -import '../../../../../widgets/text_field_popup.dart'; -import '../../../domain/source_preference/source_preference.dart'; -import '../../../domain/source_preference_prop/source_preference_prop.dart'; - -class SourcePreferenceToWidget extends StatelessWidget { - const SourcePreferenceToWidget({ - super.key, - required this.sourcePreference, - required this.onChanged, - }); - - final SourcePreference sourcePreference; - final ValueChanged onChanged; - - void onChangedPreferenceCopyWith(T prop, - [BuildContext? context]) { - onChanged(sourcePreference.copyWith(sourcePreferenceProp: prop)); - if (context != null) context.pop(); - } - - @override - Widget build(BuildContext context) { - SourcePreferenceProp? prop = sourcePreference.sourcePreferenceProp; - return switch (prop) { - CheckBoxPreference( - key: String? key, - title: String? title, - summary: String? summary, - defaultValue: bool? defaultValue, - currentValue: bool? currentValue, - ) => - CheckboxListTile( - key: Key(key ?? ""), - title: Text(title ?? ""), - subtitle: summary.isNotBlank ? Text(summary!) : null, - value: currentValue.ifNull(defaultValue.ifNull()), - onChanged: (value) => - onChangedPreferenceCopyWith(prop.copyWith(currentValue: value)), - controlAffinity: ListTileControlAffinity.trailing, - ), - SwitchPreferenceCompat( - key: String? key, - title: String? title, - summary: String? summary, - defaultValue: bool? defaultValue, - currentValue: bool? currentValue, - ) => - SwitchListTile( - key: Key(key ?? ""), - title: Text(title ?? ""), - subtitle: summary.isNotBlank ? Text(summary!) : null, - value: currentValue.ifNull(defaultValue.ifNull()), - onChanged: (value) => - onChangedPreferenceCopyWith(prop.copyWith(currentValue: value)), - controlAffinity: ListTileControlAffinity.trailing, - ), - ListPreference( - key: String? key, - title: String? title, - defaultValue: String? defaultValue, - currentValue: String? currentValue, - entries: Map? entries, - ) => - ListTile( - key: Key(key ?? ""), - title: Text(title ?? ""), - subtitle: currentValue.isNotBlank ? Text(currentValue!) : null, - onTap: () => showDialog( - context: context, - builder: (context) => RadioListPopup( - title: title ?? "", - optionList: entries?.keys.toList() ?? [], - value: currentValue ?? defaultValue ?? "", - onChange: (value) => onChangedPreferenceCopyWith( - prop.copyWith(currentValue: value), context), - getOptionTitle: (entry) => entries?[entry] ?? entry, - ), - ), - ), - MultiSelectListPreference( - key: String? key, - title: String? title, - summary: String? summary, - defaultValue: List? defaultValue, - currentValue: List? currentValue, - entries: Map? entries, - ) => - ListTile( - key: Key(key ?? ""), - title: Text(title ?? ""), - subtitle: summary.isNotBlank ? Text(summary!) : null, - onTap: () => showDialog( - context: context, - builder: (context) => MultiSelectPopup( - title: title ?? "", - optionList: entries?.keys.toList() ?? [], - values: currentValue ?? defaultValue ?? [], - onChange: (value) => onChangedPreferenceCopyWith( - prop.copyWith(currentValue: value), context), - getOptionTitle: (entry) => entries?[entry] ?? entry, - ), - ), - ), - EditTextPreference( - key: String? key, - title: String? title, - summary: String? summary, - defaultValue: String? defaultValue, - currentValue: String? currentValue, - dialogTitle: String? dialogTitle, - dialogMessage: String? dialogMessage, - ) => - ListTile( - key: Key(key ?? ""), - title: Text(title ?? ""), - subtitle: summary.isNotBlank ? Text(summary!) : null, - onTap: () => showDialog( - context: context, - builder: (context) => TextFieldPopup( - title: dialogTitle ?? title ?? "", - subtitle: dialogMessage ?? summary ?? "", - onChange: (value) => onChangedPreferenceCopyWith( - prop.copyWith(currentValue: value), context), - initialValue: currentValue ?? defaultValue, - ), - ), - ), - null || Fallback() => const SizedBox.shrink(), - }; - } -} diff --git a/lib/src/features/library/data/category/category_repository.dart b/lib/src/features/library/data/category/category_repository.dart deleted file mode 100644 index 24b4e637..00000000 --- a/lib/src/features/library/data/category/category_repository.dart +++ /dev/null @@ -1,89 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:dio/dio.dart'; -import 'package:riverpod_annotation/riverpod_annotation.dart'; - -import '../../../../constants/endpoints.dart'; -import '../../../../global_providers/global_providers.dart'; -import '../../../../utils/extensions/custom_extensions.dart'; -import '../../../../utils/storage/dio/dio_client.dart'; -import '../../../manga_book/domain/manga/manga_model.dart'; -import '../../domain/category/category_model.dart'; - -part 'category_repository.g.dart'; - -class CategoryRepository { - final DioClient dioClient; - - CategoryRepository(this.dioClient); - - Future?> getCategoryList({CancelToken? cancelToken}) async => - (await dioClient.get, Category>( - CategoryUrl.category, - decoder: (e) => - e is Map ? Category.fromJson(e) : Category(), - cancelToken: cancelToken, - )) - .data; - - Future createCategory({ - required Category category, - CancelToken? cancelToken, - }) => - dioClient.post( - CategoryUrl.category, - data: FormData.fromMap(category.toJson().filterOutNulls), - cancelToken: cancelToken, - ); - - Future editCategory({ - required Category category, - CancelToken? cancelToken, - }) async => - category.id != null - ? await dioClient.patch( - CategoryUrl.withId(category.id!), - data: FormData.fromMap(category.toJson().filterOutNulls), - cancelToken: cancelToken, - ) - : null; - - Future deleteCategory({ - required Category category, - CancelToken? cancelToken, - }) async => - (category.id != null) - ? dioClient.delete( - CategoryUrl.withId(category.id!), - cancelToken: cancelToken, - ) - : null; - - Future reorderCategory({ - required int from, - required int to, - }) => - dioClient.patch( - CategoryUrl.reorder, - data: FormData.fromMap({"from": from, "to": to}), - ); - - // Manga - Future?> getMangasFromCategory({ - required int categoryId, - CancelToken? cancelToken, - }) async => - (await dioClient.get, Manga>( - CategoryUrl.withId(categoryId), - decoder: (e) => e is Map ? Manga.fromJson(e) : Manga(), - )) - .data; -} - -@riverpod -CategoryRepository categoryRepository(CategoryRepositoryRef ref) => - CategoryRepository(ref.watch(dioClientKeyProvider)); diff --git a/lib/src/features/library/data/category/category_repository.g.dart b/lib/src/features/library/data/category/category_repository.g.dart deleted file mode 100644 index a27a34d4..00000000 --- a/lib/src/features/library/data/category/category_repository.g.dart +++ /dev/null @@ -1,27 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'category_repository.dart'; - -// ************************************************************************** -// RiverpodGenerator -// ************************************************************************** - -String _$categoryRepositoryHash() => - r'f62ecef9ec108e4aba46068e319e118730be6d06'; - -/// See also [categoryRepository]. -@ProviderFor(categoryRepository) -final categoryRepositoryProvider = - AutoDisposeProvider.internal( - categoryRepository, - name: r'categoryRepositoryProvider', - debugGetCreateSourceHash: const bool.fromEnvironment('dart.vm.product') - ? null - : _$categoryRepositoryHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef CategoryRepositoryRef = AutoDisposeProviderRef; -// ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member diff --git a/lib/src/features/library/domain/category/category_model.dart b/lib/src/features/library/domain/category/category_model.dart deleted file mode 100644 index 9ebb5702..00000000 --- a/lib/src/features/library/domain/category/category_model.dart +++ /dev/null @@ -1,23 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:freezed_annotation/freezed_annotation.dart'; - -part 'category_model.freezed.dart'; -part 'category_model.g.dart'; - -@freezed -class Category with _$Category { - factory Category({ - int? id, - String? name, - int? order, - @JsonKey(name: "default") bool? defaultCategory, - }) = _Category; - - factory Category.fromJson(Map json) => - _$CategoryFromJson(json); -} diff --git a/lib/src/features/library/domain/category/category_model.freezed.dart b/lib/src/features/library/domain/category/category_model.freezed.dart deleted file mode 100644 index f405c4f6..00000000 --- a/lib/src/features/library/domain/category/category_model.freezed.dart +++ /dev/null @@ -1,219 +0,0 @@ -// coverage:ignore-file -// GENERATED CODE - DO NOT MODIFY BY HAND -// ignore_for_file: type=lint -// ignore_for_file: unused_element, deprecated_member_use, deprecated_member_use_from_same_package, use_function_type_syntax_for_parameters, unnecessary_const, avoid_init_to_null, invalid_override_different_default_values_named, prefer_expression_function_bodies, annotate_overrides, invalid_annotation_target, unnecessary_question_mark - -part of 'category_model.dart'; - -// ************************************************************************** -// FreezedGenerator -// ************************************************************************** - -T _$identity(T value) => value; - -final _privateConstructorUsedError = UnsupportedError( - 'It seems like you constructed your class using `MyClass._()`. This constructor is only meant to be used by freezed and you are not supposed to need it nor use it.\nPlease check the documentation here for more information: https://github.com/rrousselGit/freezed#custom-getters-and-methods'); - -Category _$CategoryFromJson(Map json) { - return _Category.fromJson(json); -} - -/// @nodoc -mixin _$Category { - int? get id => throw _privateConstructorUsedError; - String? get name => throw _privateConstructorUsedError; - int? get order => throw _privateConstructorUsedError; - @JsonKey(name: "default") - bool? get defaultCategory => throw _privateConstructorUsedError; - - Map toJson() => throw _privateConstructorUsedError; - @JsonKey(ignore: true) - $CategoryCopyWith get copyWith => - throw _privateConstructorUsedError; -} - -/// @nodoc -abstract class $CategoryCopyWith<$Res> { - factory $CategoryCopyWith(Category value, $Res Function(Category) then) = - _$CategoryCopyWithImpl<$Res, Category>; - @useResult - $Res call( - {int? id, - String? name, - int? order, - @JsonKey(name: "default") bool? defaultCategory}); -} - -/// @nodoc -class _$CategoryCopyWithImpl<$Res, $Val extends Category> - implements $CategoryCopyWith<$Res> { - _$CategoryCopyWithImpl(this._value, this._then); - - // ignore: unused_field - final $Val _value; - // ignore: unused_field - final $Res Function($Val) _then; - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? id = freezed, - Object? name = freezed, - Object? order = freezed, - Object? defaultCategory = freezed, - }) { - return _then(_value.copyWith( - id: freezed == id - ? _value.id - : id // ignore: cast_nullable_to_non_nullable - as int?, - name: freezed == name - ? _value.name - : name // ignore: cast_nullable_to_non_nullable - as String?, - order: freezed == order - ? _value.order - : order // ignore: cast_nullable_to_non_nullable - as int?, - defaultCategory: freezed == defaultCategory - ? _value.defaultCategory - : defaultCategory // ignore: cast_nullable_to_non_nullable - as bool?, - ) as $Val); - } -} - -/// @nodoc -abstract class _$$CategoryImplCopyWith<$Res> - implements $CategoryCopyWith<$Res> { - factory _$$CategoryImplCopyWith( - _$CategoryImpl value, $Res Function(_$CategoryImpl) then) = - __$$CategoryImplCopyWithImpl<$Res>; - @override - @useResult - $Res call( - {int? id, - String? name, - int? order, - @JsonKey(name: "default") bool? defaultCategory}); -} - -/// @nodoc -class __$$CategoryImplCopyWithImpl<$Res> - extends _$CategoryCopyWithImpl<$Res, _$CategoryImpl> - implements _$$CategoryImplCopyWith<$Res> { - __$$CategoryImplCopyWithImpl( - _$CategoryImpl _value, $Res Function(_$CategoryImpl) _then) - : super(_value, _then); - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? id = freezed, - Object? name = freezed, - Object? order = freezed, - Object? defaultCategory = freezed, - }) { - return _then(_$CategoryImpl( - id: freezed == id - ? _value.id - : id // ignore: cast_nullable_to_non_nullable - as int?, - name: freezed == name - ? _value.name - : name // ignore: cast_nullable_to_non_nullable - as String?, - order: freezed == order - ? _value.order - : order // ignore: cast_nullable_to_non_nullable - as int?, - defaultCategory: freezed == defaultCategory - ? _value.defaultCategory - : defaultCategory // ignore: cast_nullable_to_non_nullable - as bool?, - )); - } -} - -/// @nodoc -@JsonSerializable() -class _$CategoryImpl implements _Category { - _$CategoryImpl( - {this.id, - this.name, - this.order, - @JsonKey(name: "default") this.defaultCategory}); - - factory _$CategoryImpl.fromJson(Map json) => - _$$CategoryImplFromJson(json); - - @override - final int? id; - @override - final String? name; - @override - final int? order; - @override - @JsonKey(name: "default") - final bool? defaultCategory; - - @override - String toString() { - return 'Category(id: $id, name: $name, order: $order, defaultCategory: $defaultCategory)'; - } - - @override - bool operator ==(dynamic other) { - return identical(this, other) || - (other.runtimeType == runtimeType && - other is _$CategoryImpl && - (identical(other.id, id) || other.id == id) && - (identical(other.name, name) || other.name == name) && - (identical(other.order, order) || other.order == order) && - (identical(other.defaultCategory, defaultCategory) || - other.defaultCategory == defaultCategory)); - } - - @JsonKey(ignore: true) - @override - int get hashCode => - Object.hash(runtimeType, id, name, order, defaultCategory); - - @JsonKey(ignore: true) - @override - @pragma('vm:prefer-inline') - _$$CategoryImplCopyWith<_$CategoryImpl> get copyWith => - __$$CategoryImplCopyWithImpl<_$CategoryImpl>(this, _$identity); - - @override - Map toJson() { - return _$$CategoryImplToJson( - this, - ); - } -} - -abstract class _Category implements Category { - factory _Category( - {final int? id, - final String? name, - final int? order, - @JsonKey(name: "default") final bool? defaultCategory}) = _$CategoryImpl; - - factory _Category.fromJson(Map json) = - _$CategoryImpl.fromJson; - - @override - int? get id; - @override - String? get name; - @override - int? get order; - @override - @JsonKey(name: "default") - bool? get defaultCategory; - @override - @JsonKey(ignore: true) - _$$CategoryImplCopyWith<_$CategoryImpl> get copyWith => - throw _privateConstructorUsedError; -} diff --git a/lib/src/features/library/domain/category/category_model.g.dart b/lib/src/features/library/domain/category/category_model.g.dart deleted file mode 100644 index c207c612..00000000 --- a/lib/src/features/library/domain/category/category_model.g.dart +++ /dev/null @@ -1,23 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'category_model.dart'; - -// ************************************************************************** -// JsonSerializableGenerator -// ************************************************************************** - -_$CategoryImpl _$$CategoryImplFromJson(Map json) => - _$CategoryImpl( - id: json['id'] as int?, - name: json['name'] as String?, - order: json['order'] as int?, - defaultCategory: json['default'] as bool?, - ); - -Map _$$CategoryImplToJson(_$CategoryImpl instance) => - { - 'id': instance.id, - 'name': instance.name, - 'order': instance.order, - 'default': instance.defaultCategory, - }; diff --git a/lib/src/features/library/presentation/category/controller/edit_category_controller.dart b/lib/src/features/library/presentation/category/controller/edit_category_controller.dart deleted file mode 100644 index 61fb0e74..00000000 --- a/lib/src/features/library/presentation/category/controller/edit_category_controller.dart +++ /dev/null @@ -1,70 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:dio/dio.dart'; -import 'package:riverpod_annotation/riverpod_annotation.dart'; - -import '../../../../../utils/extensions/custom_extensions.dart'; -import '../../../data/category/category_repository.dart'; -import '../../../domain/category/category_model.dart'; - -part 'edit_category_controller.g.dart'; - -@riverpod -class CategoryController extends _$CategoryController { - @override - Future?> build() async => loadCategories(ref); - - Future?> loadCategories( - AutoDisposeAsyncNotifierProviderRef?> ref, - ) async { - final token = CancelToken(); - ref.onDispose(token.cancel); - final result = await ref - .watch(categoryRepositoryProvider) - .getCategoryList(cancelToken: token); - ref.keepAlive(); - return result; - } - - Future deleteCategory(Category category) async { - state = await AsyncValue.guard(() async { - await ref - .read(categoryRepositoryProvider) - .deleteCategory(category: category); - return loadCategories(ref); - }); - } - - Future editCategory(Category category) async { - final categoryRepository = ref.read(categoryRepositoryProvider); - state = await AsyncValue.guard(() async { - if (category.id == null) { - await categoryRepository.createCategory(category: category); - } else { - await categoryRepository.editCategory(category: category); - } - return loadCategories(ref); - }); - } - - Future reorderCategory(int from, int to) async { - final categoryRepository = ref.read(categoryRepositoryProvider); - state = await AsyncValue.guard(() async { - await categoryRepository.reorderCategory(from: from, to: to); - return loadCategories(ref); - }); - } -} - -@riverpod -List? categoryListQuery( - CategoryListQueryRef ref, { - required String query, -}) { - final categoryList = ref.watch(categoryControllerProvider).valueOrNull; - return categoryList?.where((element) => element.name.query(query)).toList(); -} diff --git a/lib/src/features/library/presentation/category/controller/edit_category_controller.g.dart b/lib/src/features/library/presentation/category/controller/edit_category_controller.g.dart deleted file mode 100644 index d2593e26..00000000 --- a/lib/src/features/library/presentation/category/controller/edit_category_controller.g.dart +++ /dev/null @@ -1,177 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'edit_category_controller.dart'; - -// ************************************************************************** -// RiverpodGenerator -// ************************************************************************** - -String _$categoryListQueryHash() => r'47eb6a35cc23a6d24dbe7981cff742174512b4ce'; - -/// Copied from Dart SDK -class _SystemHash { - _SystemHash._(); - - static int combine(int hash, int value) { - // ignore: parameter_assignments - hash = 0x1fffffff & (hash + value); - // ignore: parameter_assignments - hash = 0x1fffffff & (hash + ((0x0007ffff & hash) << 10)); - return hash ^ (hash >> 6); - } - - static int finish(int hash) { - // ignore: parameter_assignments - hash = 0x1fffffff & (hash + ((0x03ffffff & hash) << 3)); - // ignore: parameter_assignments - hash = hash ^ (hash >> 11); - return 0x1fffffff & (hash + ((0x00003fff & hash) << 15)); - } -} - -/// See also [categoryListQuery]. -@ProviderFor(categoryListQuery) -const categoryListQueryProvider = CategoryListQueryFamily(); - -/// See also [categoryListQuery]. -class CategoryListQueryFamily extends Family?> { - /// See also [categoryListQuery]. - const CategoryListQueryFamily(); - - /// See also [categoryListQuery]. - CategoryListQueryProvider call({ - required String query, - }) { - return CategoryListQueryProvider( - query: query, - ); - } - - @override - CategoryListQueryProvider getProviderOverride( - covariant CategoryListQueryProvider provider, - ) { - return call( - query: provider.query, - ); - } - - static const Iterable? _dependencies = null; - - @override - Iterable? get dependencies => _dependencies; - - static const Iterable? _allTransitiveDependencies = null; - - @override - Iterable? get allTransitiveDependencies => - _allTransitiveDependencies; - - @override - String? get name => r'categoryListQueryProvider'; -} - -/// See also [categoryListQuery]. -class CategoryListQueryProvider extends AutoDisposeProvider?> { - /// See also [categoryListQuery]. - CategoryListQueryProvider({ - required String query, - }) : this._internal( - (ref) => categoryListQuery( - ref as CategoryListQueryRef, - query: query, - ), - from: categoryListQueryProvider, - name: r'categoryListQueryProvider', - debugGetCreateSourceHash: - const bool.fromEnvironment('dart.vm.product') - ? null - : _$categoryListQueryHash, - dependencies: CategoryListQueryFamily._dependencies, - allTransitiveDependencies: - CategoryListQueryFamily._allTransitiveDependencies, - query: query, - ); - - CategoryListQueryProvider._internal( - super._createNotifier, { - required super.name, - required super.dependencies, - required super.allTransitiveDependencies, - required super.debugGetCreateSourceHash, - required super.from, - required this.query, - }) : super.internal(); - - final String query; - - @override - Override overrideWith( - List? Function(CategoryListQueryRef provider) create, - ) { - return ProviderOverride( - origin: this, - override: CategoryListQueryProvider._internal( - (ref) => create(ref as CategoryListQueryRef), - from: from, - name: null, - dependencies: null, - allTransitiveDependencies: null, - debugGetCreateSourceHash: null, - query: query, - ), - ); - } - - @override - AutoDisposeProviderElement?> createElement() { - return _CategoryListQueryProviderElement(this); - } - - @override - bool operator ==(Object other) { - return other is CategoryListQueryProvider && other.query == query; - } - - @override - int get hashCode { - var hash = _SystemHash.combine(0, runtimeType.hashCode); - hash = _SystemHash.combine(hash, query.hashCode); - - return _SystemHash.finish(hash); - } -} - -mixin CategoryListQueryRef on AutoDisposeProviderRef?> { - /// The parameter `query` of this provider. - String get query; -} - -class _CategoryListQueryProviderElement - extends AutoDisposeProviderElement?> - with CategoryListQueryRef { - _CategoryListQueryProviderElement(super.provider); - - @override - String get query => (origin as CategoryListQueryProvider).query; -} - -String _$categoryControllerHash() => - r'03ec5d51bea1147db0139fa68edaeefdacb11f70'; - -/// See also [CategoryController]. -@ProviderFor(CategoryController) -final categoryControllerProvider = AutoDisposeAsyncNotifierProvider< - CategoryController, List?>.internal( - CategoryController.new, - name: r'categoryControllerProvider', - debugGetCreateSourceHash: const bool.fromEnvironment('dart.vm.product') - ? null - : _$categoryControllerHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef _$CategoryController = AutoDisposeAsyncNotifier?>; -// ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member diff --git a/lib/src/features/library/presentation/category/edit_category_screen.dart b/lib/src/features/library/presentation/category/edit_category_screen.dart deleted file mode 100644 index ccd937de..00000000 --- a/lib/src/features/library/presentation/category/edit_category_screen.dart +++ /dev/null @@ -1,80 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:flutter_hooks/flutter_hooks.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../../../../utils/extensions/custom_extensions.dart'; -import '../../../../utils/misc/toast/toast.dart'; -import '../../../../widgets/emoticons.dart'; -import 'controller/edit_category_controller.dart'; -import 'widgets/category_create_fab.dart'; -import 'widgets/category_tile.dart'; - -class EditCategoryScreen extends HookConsumerWidget { - const EditCategoryScreen({super.key}); - - @override - Widget build(BuildContext context, WidgetRef ref) { - final categoryList = ref.watch(categoryControllerProvider); - - useEffect(() { - categoryList.showToastOnError( - ref.read(toastProvider(context)), - withMicrotask: true, - ); - return; - }, [categoryList.valueOrNull]); - - return Scaffold( - appBar: AppBar( - title: Text(context.l10n!.editCategory), - ), - floatingActionButton: categoryList.asError?.error != null - ? null - : const CategoryCreateFab(), - body: categoryList.showUiWhenData( - context, - (data) { - if (data.isBlank || - (data.isSingletonList && data?.firstOrNull?.id == 0)) { - return Emoticons( - text: context.l10n!.noCategoriesFound, - button: TextButton( - onPressed: () => ref.refresh(categoryControllerProvider.future), - child: Text(context.l10n!.refresh), - ), - ); - } else { - final isDefaultInCategoryList = data!.first.id == 0; - return RefreshIndicator( - child: ListView.builder( - itemCount: data.length, - itemBuilder: (context, index) { - final category = data[index]; - if (category.id == 0) { - return const SizedBox.shrink(); - } else { - return CategoryTile( - key: ValueKey(category.id), - maxOrderIndex: isDefaultInCategoryList - ? data.length - 1 - : data.length, - category: category, - ); - } - }, - ), - onRefresh: () => ref.refresh(categoryControllerProvider.future), - ); - } - }, - refresh: () => ref.refresh(categoryControllerProvider.future), - ), - ); - } -} diff --git a/lib/src/features/library/presentation/category/widgets/category_create_fab.dart b/lib/src/features/library/presentation/category/widgets/category_create_fab.dart deleted file mode 100644 index 56c2a1f8..00000000 --- a/lib/src/features/library/presentation/category/widgets/category_create_fab.dart +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:flutter_hooks/flutter_hooks.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../../widgets/custom_circular_progress_indicator.dart'; -import '../controller/edit_category_controller.dart'; -import 'edit_category_dialog.dart'; - -class CategoryCreateFab extends HookConsumerWidget { - const CategoryCreateFab({super.key}); - - @override - Widget build(BuildContext context, WidgetRef ref) { - final isLoading = useState(false); - return FloatingActionButton.extended( - onPressed: isLoading.value - ? null - : () { - showDialog( - context: context, - builder: (context) => EditCategoryDialog( - editCategory: (newCategory) async { - try { - isLoading.value = (true); - await ref - .read(categoryControllerProvider.notifier) - .editCategory(newCategory); - isLoading.value = (false); - } catch (e) { - // - } - }, - ), - ); - }, - isExtended: context.isTablet && !isLoading.value, - label: Text(context.l10n!.addCategory), - icon: isLoading.value - ? MiniCircularProgressIndicator(color: context.iconColor) - : const Icon(Icons.add_rounded), - ); - } -} diff --git a/lib/src/features/library/presentation/category/widgets/category_tile.dart b/lib/src/features/library/presentation/category/widgets/category_tile.dart deleted file mode 100644 index a52f9583..00000000 --- a/lib/src/features/library/presentation/category/widgets/category_tile.dart +++ /dev/null @@ -1,110 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:go_router/go_router.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../../../../../constants/app_sizes.dart'; - -import '../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../../widgets/pop_button.dart'; -import '../../../domain/category/category_model.dart'; -import '../controller/edit_category_controller.dart'; -import 'edit_category_dialog.dart'; - -class CategoryTile extends HookConsumerWidget { - const CategoryTile({ - super.key, - required this.category, - required this.maxOrderIndex, - }); - - final Category category; - final int maxOrderIndex; - @override - Widget build(BuildContext context, WidgetRef ref) { - final order = category.order.getValueOnNullOrNegative(); - return Card( - margin: KEdgeInsets.h16v4.size, - child: Padding( - padding: const EdgeInsets.symmetric(horizontal: 8.0), - child: Column( - children: [ - ListTile( - leading: const Icon(Icons.label_rounded), - title: Text(category.name ?? ""), - ), - Row( - children: [ - IconButton( - visualDensity: VisualDensity.compact, - onPressed: order <= 1 - ? null - : () => ref - .read(categoryControllerProvider.notifier) - .reorderCategory(order, order - 1), - icon: const Icon(Icons.arrow_drop_up_rounded), - color: Colors.grey, - ), - IconButton( - visualDensity: VisualDensity.compact, - onPressed: order >= maxOrderIndex - ? null - : () => ref - .read(categoryControllerProvider.notifier) - .reorderCategory(order, order + 1), - icon: const Icon(Icons.arrow_drop_down_rounded), - color: Colors.grey, - ), - const Spacer(), - IconButton( - visualDensity: VisualDensity.compact, - onPressed: () => showDialog( - context: context, - builder: (context) => EditCategoryDialog( - category: category, - editCategory: (newCategory) => ref - .read(categoryControllerProvider.notifier) - .editCategory(newCategory), - ), - ), - icon: const Icon(Icons.edit_rounded), - color: Colors.grey, - ), - IconButton( - visualDensity: VisualDensity.compact, - onPressed: () => showDialog( - context: context, - builder: (context) => AlertDialog( - title: Text(context.l10n!.deleteCategoryTitle), - content: Text(context.l10n!.deleteCategoryDescription), - actions: [ - const PopButton(), - ElevatedButton( - onPressed: () { - ref - .read(categoryControllerProvider.notifier) - .deleteCategory(category); - context.pop(); - }, - child: Text(context.l10n!.delete), - ), - ], - ), - ), - icon: const Icon(Icons.delete_rounded), - color: Colors.grey, - ), - ], - ), - KSizedBox.h8.size, - ], - ), - ), - ); - } -} diff --git a/lib/src/features/library/presentation/category/widgets/edit_category_dialog.dart b/lib/src/features/library/presentation/category/widgets/edit_category_dialog.dart deleted file mode 100644 index 5a1efc67..00000000 --- a/lib/src/features/library/presentation/category/widgets/edit_category_dialog.dart +++ /dev/null @@ -1,99 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:flutter_hooks/flutter_hooks.dart'; -import 'package:go_router/go_router.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../../utils/misc/toast/toast.dart'; -import '../../../../../widgets/pop_button.dart'; -import '../../../domain/category/category_model.dart'; - -class EditCategoryDialog extends HookConsumerWidget { - const EditCategoryDialog({ - super.key, - required this.editCategory, - this.category, - }); - final Category? category; - final void Function(Category) editCategory; - - Future submitEditCategory( - String categoryName, - bool defaultCategory, - ) async { - return editCategory((category ?? Category()).copyWith( - name: categoryName, - defaultCategory: defaultCategory, - )); - } - - @override - Widget build(BuildContext context, WidgetRef ref) { - final categoryName = useTextEditingController(text: category?.name); - final defaultCategory = useState((category?.defaultCategory).ifNull()); - return AlertDialog( - title: Text( - category == null - ? context.l10n!.addCategory - : context.l10n!.editCategory, - ), - content: Column( - mainAxisSize: MainAxisSize.min, - children: [ - TextField( - controller: categoryName, - autofocus: true, - decoration: InputDecoration( - hintText: category == null - ? context.l10n!.addCategory - : context.l10n!.editCategory, - border: const OutlineInputBorder(), - ), - onSubmitted: (categoryName.text).isNotBlank - ? (text) { - submitEditCategory( - categoryName.text, - defaultCategory.value, - ); - context.pop(); - } - : null, - ), - CheckboxListTile( - value: defaultCategory.value, - dense: true, - controlAffinity: ListTileControlAffinity.leading, - onChanged: (value) { - if (value != null) { - defaultCategory.value = (value); - } - }, - title: Text(context.l10n!.defaultCategory), - ) - ], - ), - actions: [ - const PopButton(), - ElevatedButton( - onPressed: () { - if ((categoryName.text).isBlank) { - ref - .read(toastProvider(context)) - .show(context.l10n!.emptyCategory); - return; - } - submitEditCategory(categoryName.text, defaultCategory.value); - context.pop(); - }, - child: Text(context.l10n!.save), - ), - ], - ); - } -} diff --git a/lib/src/features/library/presentation/library/category_manga_list.dart b/lib/src/features/library/presentation/library/category_manga_list.dart deleted file mode 100644 index 18766a23..00000000 --- a/lib/src/features/library/presentation/library/category_manga_list.dart +++ /dev/null @@ -1,146 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:flutter_hooks/flutter_hooks.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../../../../constants/app_sizes.dart'; -import '../../../../constants/enum.dart'; - -import '../../../../routes/router_config.dart'; -import '../../../../utils/extensions/custom_extensions.dart'; -import '../../../../widgets/emoticons.dart'; -import '../../../../widgets/manga_cover/grid/manga_cover_grid_tile.dart'; -import '../../../../widgets/manga_cover/list/manga_cover_descriptive_list_tile.dart'; -import '../../../../widgets/manga_cover/list/manga_cover_list_tile.dart'; -import '../../../manga_book/presentation/manga_details/widgets/edit_manga_category_dialog.dart'; -import '../../../settings/presentation/appearance/widgets/grid_cover_min_width.dart'; -import 'controller/library_controller.dart'; - -class CategoryMangaList extends HookConsumerWidget { - const CategoryMangaList({super.key, required this.categoryId}); - final int categoryId; - @override - Widget build(BuildContext context, WidgetRef ref) { - final provider = - categoryMangaListWithQueryAndFilterProvider(categoryId: categoryId); - final mangaList = ref.watch(provider); - final displayMode = ref.watch(libraryDisplayModeProvider); - refresh() => ref.invalidate(categoryMangaListProvider(categoryId)); - useEffect(() { - if (mangaList.isNotLoading) refresh(); - return; - }, []); - return mangaList.showUiWhenData( - context, - (data) { - if (data.isBlank) { - return Emoticons( - text: context.l10n!.noCategoryMangaFound, - button: TextButton( - onPressed: refresh, - child: Text(context.l10n!.refresh), - ), - ); - } - final Widget mangaList = switch (displayMode) { - DisplayMode.list || null => ListView.builder( - itemExtent: 96, - itemCount: (data?.length).getValueOnNullOrNegative(), - itemBuilder: (context, index) => MangaCoverListTile( - manga: data![index], - onPressed: () { - if (data[index].id != null) { - MangaRoute( - mangaId: data[index].id!, - categoryId: categoryId, - ).push(context); - } - }, - onLongPress: () async { - if (data[index].id != null) { - await showDialog( - context: context, - builder: (context) => EditMangaCategoryDialog( - mangaId: data[index].id!, - title: data[index].title, - ), - ); - refresh(); - } - }, - showCountBadges: true, - ), - ), - DisplayMode.grid => GridView.builder( - gridDelegate: - mangaCoverGridDelegate(ref.watch(gridMinWidthProvider)), - itemCount: (data?.length).getValueOnNullOrNegative(), - itemBuilder: (context, index) => MangaCoverGridTile( - onLongPress: () async { - if (data[index].id != null) { - await showDialog( - context: context, - builder: (context) => EditMangaCategoryDialog( - mangaId: data[index].id!, - title: data[index].title, - ), - ); - refresh(); - } - }, - manga: data![index], - onPressed: () { - if (data[index].id != null) { - MangaRoute( - mangaId: data[index].id!, - categoryId: categoryId, - ).push(context); - } - }, - showCountBadges: true, - showDarkOverlay: false, - ), - ), - DisplayMode.descriptiveList => ListView.builder( - itemExtent: 176, - itemCount: (data?.length).getValueOnNullOrNegative(), - itemBuilder: (context, index) => MangaCoverDescriptiveListTile( - manga: data![index], - onPressed: () { - if (data[index].id != null) { - MangaRoute( - mangaId: data[index].id!, - categoryId: categoryId, - ).push(context); - } - }, - onLongPress: () async { - if (data[index].id != null) { - await showDialog( - context: context, - builder: (context) => EditMangaCategoryDialog( - mangaId: data[index].id!, - title: data[index].title, - ), - ); - refresh(); - } - }, - showBadges: true, - ), - ) - }; - return RefreshIndicator( - onRefresh: () async => refresh(), - child: mangaList, - ); - }, - refresh: refresh, - ); - } -} diff --git a/lib/src/features/library/presentation/library/controller/library_controller.dart b/lib/src/features/library/presentation/library/controller/library_controller.dart deleted file mode 100644 index fc1f7f09..00000000 --- a/lib/src/features/library/presentation/library/controller/library_controller.dart +++ /dev/null @@ -1,177 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:dio/dio.dart'; -import 'package:riverpod_annotation/riverpod_annotation.dart'; - -import '../../../../../constants/db_keys.dart'; -import '../../../../../constants/enum.dart'; -import '../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../../utils/mixin/shared_preferences_client_mixin.dart'; -import '../../../../../utils/mixin/state_provider_mixin.dart'; -import '../../../../manga_book/domain/manga/manga_model.dart'; -import '../../../data/category/category_repository.dart'; -import '../../../domain/category/category_model.dart'; - -part 'library_controller.g.dart'; - -@riverpod -Future?> categoryMangaList( - CategoryMangaListRef ref, int categoryId) async { - final token = CancelToken(); - ref.onDispose(token.cancel); - final result = await ref - .watch(categoryRepositoryProvider) - .getMangasFromCategory(categoryId: categoryId, cancelToken: token); - ref.keepAlive(); - return result; -} - -@riverpod -class LibraryDisplayCategory extends _$LibraryDisplayCategory - with StateProviderMixin { - @override - Category? build() => null; -} - -@riverpod -class CategoryMangaListWithQueryAndFilter - extends _$CategoryMangaListWithQueryAndFilter { - @override - AsyncValue?> build({required int categoryId}) { - final mangaList = ref.watch(categoryMangaListProvider(categoryId)); - final query = ref.watch(libraryQueryProvider); - final mangaFilterUnread = ref.watch(libraryMangaFilterUnreadProvider); - final mangaFilterDownloaded = - ref.watch(libraryMangaFilterDownloadedProvider); - final mangaFilterCompleted = ref.watch(libraryMangaFilterCompletedProvider); - final MangaSort sortedBy = - ref.watch(libraryMangaSortProvider) ?? DBKeys.mangaSort.initial; - final sortedDirection = - ref.watch(libraryMangaSortDirectionProvider).ifNull(true); - - bool applyMangaFilter(Manga manga) { - if (mangaFilterUnread != null && - (mangaFilterUnread ^ manga.unreadCount.isGreaterThan(0))) { - return false; - } - - if (mangaFilterDownloaded != null && - (mangaFilterDownloaded ^ manga.downloadCount.isGreaterThan(0))) { - return false; - } - - if (mangaFilterCompleted != null && - (mangaFilterCompleted ^ (manga.status?.title == "COMPLETED"))) { - return false; - } - - if (!manga.query(query)) { - return false; - } - - return true; - } - - int applyMangaSort(Manga m1, Manga m2) { - final sortDirToggle = (sortedDirection ? 1 : -1); - return (switch (sortedBy) { - MangaSort.alphabetical => - (m1.title ?? "").compareTo(m2.title ?? ""), - MangaSort.unread => (m1.unreadCount.getValueOnNullOrNegative()) - .compareTo(m2.unreadCount.getValueOnNullOrNegative()), - MangaSort.dateAdded => (m1.inLibraryAt.getValueOnNullOrNegative()) - .compareTo(m2.inLibraryAt.getValueOnNullOrNegative()), - MangaSort.lastRead => (m2.lastReadAt.getValueOnNullOrNegative()) - .compareTo(m1.lastReadAt.getValueOnNullOrNegative()) - }) * - sortDirToggle; - } - - return mangaList.map?>>( - data: (e) => AsyncData(e.valueOrNull?.where(applyMangaFilter).toList() - ?..sort(applyMangaSort)), - error: (e) => e, - loading: (e) => e, - ); - } - - void invalidate() => ref.invalidate(categoryMangaListProvider(categoryId)); -} - -@riverpod -class LibraryQuery extends _$LibraryQuery with StateProviderMixin { - @override - String? build() => null; -} - -@riverpod -class LibraryMangaFilterDownloaded extends _$LibraryMangaFilterDownloaded - with SharedPreferenceClientMixin { - @override - bool? build() => initialize( - ref, - key: DBKeys.mangaFilterDownloaded.name, - initial: DBKeys.mangaFilterDownloaded.initial, - ); -} - -@riverpod -class LibraryMangaFilterUnread extends _$LibraryMangaFilterUnread - with SharedPreferenceClientMixin { - @override - bool? build() => initialize( - ref, - key: DBKeys.mangaFilterUnread.name, - initial: DBKeys.mangaFilterUnread.initial, - ); -} - -@riverpod -class LibraryMangaFilterCompleted extends _$LibraryMangaFilterCompleted - with SharedPreferenceClientMixin { - @override - bool? build() => initialize( - ref, - key: DBKeys.mangaFilterCompleted.name, - initial: DBKeys.mangaFilterCompleted.initial, - ); -} - -@riverpod -class LibraryMangaSort extends _$LibraryMangaSort - with SharedPreferenceEnumClientMixin { - @override - MangaSort? build() => initialize( - ref, - key: DBKeys.mangaSort.name, - initial: DBKeys.mangaSort.initial, - enumList: MangaSort.values, - ); -} - -@riverpod -class LibraryMangaSortDirection extends _$LibraryMangaSortDirection - with SharedPreferenceClientMixin { - @override - bool? build() => initialize( - ref, - key: DBKeys.mangaSortDirection.name, - initial: DBKeys.mangaSortDirection.initial, - ); -} - -@riverpod -class LibraryDisplayMode extends _$LibraryDisplayMode - with SharedPreferenceEnumClientMixin { - @override - DisplayMode? build() => initialize( - ref, - key: DBKeys.libraryDisplayMode.name, - initial: DBKeys.libraryDisplayMode.initial, - enumList: DisplayMode.values, - ); -} diff --git a/lib/src/features/library/presentation/library/controller/library_controller.g.dart b/lib/src/features/library/presentation/library/controller/library_controller.g.dart deleted file mode 100644 index eb51d34c..00000000 --- a/lib/src/features/library/presentation/library/controller/library_controller.g.dart +++ /dev/null @@ -1,446 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'library_controller.dart'; - -// ************************************************************************** -// RiverpodGenerator -// ************************************************************************** - -String _$categoryMangaListHash() => r'9da0d48991ecde48dd144171ef5091fd2f597ef7'; - -/// Copied from Dart SDK -class _SystemHash { - _SystemHash._(); - - static int combine(int hash, int value) { - // ignore: parameter_assignments - hash = 0x1fffffff & (hash + value); - // ignore: parameter_assignments - hash = 0x1fffffff & (hash + ((0x0007ffff & hash) << 10)); - return hash ^ (hash >> 6); - } - - static int finish(int hash) { - // ignore: parameter_assignments - hash = 0x1fffffff & (hash + ((0x03ffffff & hash) << 3)); - // ignore: parameter_assignments - hash = hash ^ (hash >> 11); - return 0x1fffffff & (hash + ((0x00003fff & hash) << 15)); - } -} - -/// See also [categoryMangaList]. -@ProviderFor(categoryMangaList) -const categoryMangaListProvider = CategoryMangaListFamily(); - -/// See also [categoryMangaList]. -class CategoryMangaListFamily extends Family?>> { - /// See also [categoryMangaList]. - const CategoryMangaListFamily(); - - /// See also [categoryMangaList]. - CategoryMangaListProvider call( - int categoryId, - ) { - return CategoryMangaListProvider( - categoryId, - ); - } - - @override - CategoryMangaListProvider getProviderOverride( - covariant CategoryMangaListProvider provider, - ) { - return call( - provider.categoryId, - ); - } - - static const Iterable? _dependencies = null; - - @override - Iterable? get dependencies => _dependencies; - - static const Iterable? _allTransitiveDependencies = null; - - @override - Iterable? get allTransitiveDependencies => - _allTransitiveDependencies; - - @override - String? get name => r'categoryMangaListProvider'; -} - -/// See also [categoryMangaList]. -class CategoryMangaListProvider - extends AutoDisposeFutureProvider?> { - /// See also [categoryMangaList]. - CategoryMangaListProvider( - int categoryId, - ) : this._internal( - (ref) => categoryMangaList( - ref as CategoryMangaListRef, - categoryId, - ), - from: categoryMangaListProvider, - name: r'categoryMangaListProvider', - debugGetCreateSourceHash: - const bool.fromEnvironment('dart.vm.product') - ? null - : _$categoryMangaListHash, - dependencies: CategoryMangaListFamily._dependencies, - allTransitiveDependencies: - CategoryMangaListFamily._allTransitiveDependencies, - categoryId: categoryId, - ); - - CategoryMangaListProvider._internal( - super._createNotifier, { - required super.name, - required super.dependencies, - required super.allTransitiveDependencies, - required super.debugGetCreateSourceHash, - required super.from, - required this.categoryId, - }) : super.internal(); - - final int categoryId; - - @override - Override overrideWith( - FutureOr?> Function(CategoryMangaListRef provider) create, - ) { - return ProviderOverride( - origin: this, - override: CategoryMangaListProvider._internal( - (ref) => create(ref as CategoryMangaListRef), - from: from, - name: null, - dependencies: null, - allTransitiveDependencies: null, - debugGetCreateSourceHash: null, - categoryId: categoryId, - ), - ); - } - - @override - AutoDisposeFutureProviderElement?> createElement() { - return _CategoryMangaListProviderElement(this); - } - - @override - bool operator ==(Object other) { - return other is CategoryMangaListProvider && other.categoryId == categoryId; - } - - @override - int get hashCode { - var hash = _SystemHash.combine(0, runtimeType.hashCode); - hash = _SystemHash.combine(hash, categoryId.hashCode); - - return _SystemHash.finish(hash); - } -} - -mixin CategoryMangaListRef on AutoDisposeFutureProviderRef?> { - /// The parameter `categoryId` of this provider. - int get categoryId; -} - -class _CategoryMangaListProviderElement - extends AutoDisposeFutureProviderElement?> - with CategoryMangaListRef { - _CategoryMangaListProviderElement(super.provider); - - @override - int get categoryId => (origin as CategoryMangaListProvider).categoryId; -} - -String _$libraryDisplayCategoryHash() => - r'984e71bb74c05d7d19d4a6131f2d7b569493fd56'; - -/// See also [LibraryDisplayCategory]. -@ProviderFor(LibraryDisplayCategory) -final libraryDisplayCategoryProvider = - AutoDisposeNotifierProvider.internal( - LibraryDisplayCategory.new, - name: r'libraryDisplayCategoryProvider', - debugGetCreateSourceHash: const bool.fromEnvironment('dart.vm.product') - ? null - : _$libraryDisplayCategoryHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef _$LibraryDisplayCategory = AutoDisposeNotifier; -String _$categoryMangaListWithQueryAndFilterHash() => - r'f4f63df844426a1dd5f7d556caa091343d4d810a'; - -abstract class _$CategoryMangaListWithQueryAndFilter - extends BuildlessAutoDisposeNotifier?>> { - late final int categoryId; - - AsyncValue?> build({ - required int categoryId, - }); -} - -/// See also [CategoryMangaListWithQueryAndFilter]. -@ProviderFor(CategoryMangaListWithQueryAndFilter) -const categoryMangaListWithQueryAndFilterProvider = - CategoryMangaListWithQueryAndFilterFamily(); - -/// See also [CategoryMangaListWithQueryAndFilter]. -class CategoryMangaListWithQueryAndFilterFamily - extends Family?>> { - /// See also [CategoryMangaListWithQueryAndFilter]. - const CategoryMangaListWithQueryAndFilterFamily(); - - /// See also [CategoryMangaListWithQueryAndFilter]. - CategoryMangaListWithQueryAndFilterProvider call({ - required int categoryId, - }) { - return CategoryMangaListWithQueryAndFilterProvider( - categoryId: categoryId, - ); - } - - @override - CategoryMangaListWithQueryAndFilterProvider getProviderOverride( - covariant CategoryMangaListWithQueryAndFilterProvider provider, - ) { - return call( - categoryId: provider.categoryId, - ); - } - - static const Iterable? _dependencies = null; - - @override - Iterable? get dependencies => _dependencies; - - static const Iterable? _allTransitiveDependencies = null; - - @override - Iterable? get allTransitiveDependencies => - _allTransitiveDependencies; - - @override - String? get name => r'categoryMangaListWithQueryAndFilterProvider'; -} - -/// See also [CategoryMangaListWithQueryAndFilter]. -class CategoryMangaListWithQueryAndFilterProvider - extends AutoDisposeNotifierProviderImpl?>> { - /// See also [CategoryMangaListWithQueryAndFilter]. - CategoryMangaListWithQueryAndFilterProvider({ - required int categoryId, - }) : this._internal( - () => CategoryMangaListWithQueryAndFilter()..categoryId = categoryId, - from: categoryMangaListWithQueryAndFilterProvider, - name: r'categoryMangaListWithQueryAndFilterProvider', - debugGetCreateSourceHash: - const bool.fromEnvironment('dart.vm.product') - ? null - : _$categoryMangaListWithQueryAndFilterHash, - dependencies: CategoryMangaListWithQueryAndFilterFamily._dependencies, - allTransitiveDependencies: CategoryMangaListWithQueryAndFilterFamily - ._allTransitiveDependencies, - categoryId: categoryId, - ); - - CategoryMangaListWithQueryAndFilterProvider._internal( - super._createNotifier, { - required super.name, - required super.dependencies, - required super.allTransitiveDependencies, - required super.debugGetCreateSourceHash, - required super.from, - required this.categoryId, - }) : super.internal(); - - final int categoryId; - - @override - AsyncValue?> runNotifierBuild( - covariant CategoryMangaListWithQueryAndFilter notifier, - ) { - return notifier.build( - categoryId: categoryId, - ); - } - - @override - Override overrideWith(CategoryMangaListWithQueryAndFilter Function() create) { - return ProviderOverride( - origin: this, - override: CategoryMangaListWithQueryAndFilterProvider._internal( - () => create()..categoryId = categoryId, - from: from, - name: null, - dependencies: null, - allTransitiveDependencies: null, - debugGetCreateSourceHash: null, - categoryId: categoryId, - ), - ); - } - - @override - AutoDisposeNotifierProviderElement?>> createElement() { - return _CategoryMangaListWithQueryAndFilterProviderElement(this); - } - - @override - bool operator ==(Object other) { - return other is CategoryMangaListWithQueryAndFilterProvider && - other.categoryId == categoryId; - } - - @override - int get hashCode { - var hash = _SystemHash.combine(0, runtimeType.hashCode); - hash = _SystemHash.combine(hash, categoryId.hashCode); - - return _SystemHash.finish(hash); - } -} - -mixin CategoryMangaListWithQueryAndFilterRef - on AutoDisposeNotifierProviderRef?>> { - /// The parameter `categoryId` of this provider. - int get categoryId; -} - -class _CategoryMangaListWithQueryAndFilterProviderElement - extends AutoDisposeNotifierProviderElement< - CategoryMangaListWithQueryAndFilter, - AsyncValue?>> with CategoryMangaListWithQueryAndFilterRef { - _CategoryMangaListWithQueryAndFilterProviderElement(super.provider); - - @override - int get categoryId => - (origin as CategoryMangaListWithQueryAndFilterProvider).categoryId; -} - -String _$libraryQueryHash() => r'e9f6238da1c3475448f4839b567e65833e7e151e'; - -/// See also [LibraryQuery]. -@ProviderFor(LibraryQuery) -final libraryQueryProvider = - AutoDisposeNotifierProvider.internal( - LibraryQuery.new, - name: r'libraryQueryProvider', - debugGetCreateSourceHash: - const bool.fromEnvironment('dart.vm.product') ? null : _$libraryQueryHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef _$LibraryQuery = AutoDisposeNotifier; -String _$libraryMangaFilterDownloadedHash() => - r'4b5c2ca8b1f0321d704f8676676f62eb3eb21888'; - -/// See also [LibraryMangaFilterDownloaded]. -@ProviderFor(LibraryMangaFilterDownloaded) -final libraryMangaFilterDownloadedProvider = - AutoDisposeNotifierProvider.internal( - LibraryMangaFilterDownloaded.new, - name: r'libraryMangaFilterDownloadedProvider', - debugGetCreateSourceHash: const bool.fromEnvironment('dart.vm.product') - ? null - : _$libraryMangaFilterDownloadedHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef _$LibraryMangaFilterDownloaded = AutoDisposeNotifier; -String _$libraryMangaFilterUnreadHash() => - r'26994046eb38ff69b5ea7efc5b1878e59308eddb'; - -/// See also [LibraryMangaFilterUnread]. -@ProviderFor(LibraryMangaFilterUnread) -final libraryMangaFilterUnreadProvider = - AutoDisposeNotifierProvider.internal( - LibraryMangaFilterUnread.new, - name: r'libraryMangaFilterUnreadProvider', - debugGetCreateSourceHash: const bool.fromEnvironment('dart.vm.product') - ? null - : _$libraryMangaFilterUnreadHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef _$LibraryMangaFilterUnread = AutoDisposeNotifier; -String _$libraryMangaFilterCompletedHash() => - r'286c538b222f4212f1c1b1d25c6205db9e1ef092'; - -/// See also [LibraryMangaFilterCompleted]. -@ProviderFor(LibraryMangaFilterCompleted) -final libraryMangaFilterCompletedProvider = - AutoDisposeNotifierProvider.internal( - LibraryMangaFilterCompleted.new, - name: r'libraryMangaFilterCompletedProvider', - debugGetCreateSourceHash: const bool.fromEnvironment('dart.vm.product') - ? null - : _$libraryMangaFilterCompletedHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef _$LibraryMangaFilterCompleted = AutoDisposeNotifier; -String _$libraryMangaSortHash() => r'0442be97843a0ef97ead6592820af33162ecc11e'; - -/// See also [LibraryMangaSort]. -@ProviderFor(LibraryMangaSort) -final libraryMangaSortProvider = - AutoDisposeNotifierProvider.internal( - LibraryMangaSort.new, - name: r'libraryMangaSortProvider', - debugGetCreateSourceHash: const bool.fromEnvironment('dart.vm.product') - ? null - : _$libraryMangaSortHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef _$LibraryMangaSort = AutoDisposeNotifier; -String _$libraryMangaSortDirectionHash() => - r'70819ff0294ca866e94d229cce3bf75d7ed614a0'; - -/// See also [LibraryMangaSortDirection]. -@ProviderFor(LibraryMangaSortDirection) -final libraryMangaSortDirectionProvider = - AutoDisposeNotifierProvider.internal( - LibraryMangaSortDirection.new, - name: r'libraryMangaSortDirectionProvider', - debugGetCreateSourceHash: const bool.fromEnvironment('dart.vm.product') - ? null - : _$libraryMangaSortDirectionHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef _$LibraryMangaSortDirection = AutoDisposeNotifier; -String _$libraryDisplayModeHash() => - r'59e6744684315ec99998bb19f91c6c85c6659161'; - -/// See also [LibraryDisplayMode]. -@ProviderFor(LibraryDisplayMode) -final libraryDisplayModeProvider = - AutoDisposeNotifierProvider.internal( - LibraryDisplayMode.new, - name: r'libraryDisplayModeProvider', - debugGetCreateSourceHash: const bool.fromEnvironment('dart.vm.product') - ? null - : _$libraryDisplayModeHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef _$LibraryDisplayMode = AutoDisposeNotifier; -// ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member diff --git a/lib/src/features/library/presentation/library/library_screen.dart b/lib/src/features/library/presentation/library/library_screen.dart deleted file mode 100644 index 21dd8cac..00000000 --- a/lib/src/features/library/presentation/library/library_screen.dart +++ /dev/null @@ -1,155 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'dart:math'; - -import 'package:flutter/material.dart'; -import 'package:flutter_hooks/flutter_hooks.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../../../../constants/app_sizes.dart'; - -import '../../../../utils/extensions/custom_extensions.dart'; -import '../../../../utils/misc/toast/toast.dart'; -import '../../../../widgets/emoticons.dart'; -import '../../../../widgets/search_field.dart'; -import '../../../manga_book/widgets/update_status_popup_menu.dart'; -import '../category/controller/edit_category_controller.dart'; -import 'category_manga_list.dart'; -import 'controller/library_controller.dart'; -import 'widgets/library_manga_organizer.dart'; - -class LibraryScreen extends HookConsumerWidget { - const LibraryScreen({super.key, this.initialCategoryOrder}); - final int? initialCategoryOrder; - @override - Widget build(BuildContext context, WidgetRef ref) { - final toast = ref.watch(toastProvider(context)); - final categoryList = ref.watch(categoryControllerProvider); - final showSearch = useState(false); - useEffect(() { - categoryList.showToastOnError(toast, withMicrotask: true); - return; - }, [categoryList.valueOrNull]); - - return categoryList.showUiWhenData( - context, - (data) => data.isBlank - ? Emoticons( - text: context.l10n!.noCategoriesFound, - button: TextButton( - onPressed: () => ref.refresh(categoryControllerProvider), - child: Text(context.l10n!.refresh), - ), - ) - : DefaultTabController( - length: data!.length, - initialIndex: min(initialCategoryOrder.getValueOnNullOrNegative(), - data.length - 1), - child: Scaffold( - appBar: AppBar( - title: Text(context.l10n!.library), - centerTitle: true, - bottom: PreferredSize( - preferredSize: kCalculateAppBarBottomSize( - [data.length.isGreaterThan(1), showSearch.value], - ), - child: Column( - children: [ - if (data.length.isGreaterThan(1)) - TabBar( - isScrollable: true, - tabs: data - .map((e) => Tab(text: e.name ?? "")) - .toList(), - dividerColor: Colors.transparent, - ), - if (showSearch.value) - Align( - alignment: Alignment.centerRight, - child: SearchField( - initialText: ref.read(libraryQueryProvider), - onChanged: (val) => ref - .read(libraryQueryProvider.notifier) - .update(val), - onClose: () => showSearch.value = (false), - ), - ), - ], - ), - ), - actions: [ - IconButton( - onPressed: () => showSearch.value = (true), - icon: const Icon(Icons.search_rounded), - ), - Builder( - builder: (context) => IconButton( - onPressed: () { - if (context.isTablet) { - Scaffold.of(context).openEndDrawer(); - } else { - showModalBottomSheet( - context: context, - shape: RoundedRectangleBorder( - borderRadius: KBorderRadius.rT16.radius, - ), - clipBehavior: Clip.hardEdge, - builder: (_) => const LibraryMangaOrganizer(), - ); - } - }, - icon: const Icon(Icons.filter_list_rounded), - ), - ), - Builder( - builder: (context) { - return UpdateStatusPopupMenu( - getCategory: () => data.isNotBlank - ? data[DefaultTabController.of(context).index] - : null, - ); - }, - ), - ], - ), - endDrawerEnableOpenDragGesture: false, - endDrawer: const Drawer( - width: kDrawerWidth, - child: LibraryMangaOrganizer(), - ), - body: data.isBlank - ? Emoticons( - text: context.l10n!.noCategoriesFound, - button: TextButton( - onPressed: () => - ref.refresh(categoryControllerProvider), - child: Text(context.l10n!.refresh), - ), - ) - : Padding( - padding: KEdgeInsets.h8.size, - child: TabBarView( - children: data - .map((e) => CategoryMangaList( - categoryId: e.id.getValueOnNullOrNegative(), - )) - .toList(), - ), - ), - ), - ), - refresh: () => ref.refresh(categoryControllerProvider), - wrapper: (body) => Scaffold( - appBar: AppBar( - title: Text(context.l10n!.library), - centerTitle: true, - ), - body: body, - ), - ); - } -} diff --git a/lib/src/features/library/presentation/library/widgets/library_manga_display.dart b/lib/src/features/library/presentation/library/widgets/library_manga_display.dart deleted file mode 100644 index 54d87c97..00000000 --- a/lib/src/features/library/presentation/library/widgets/library_manga_display.dart +++ /dev/null @@ -1,63 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../../../../../constants/db_keys.dart'; -import '../../../../../constants/enum.dart'; - -import '../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../../widgets/custom_checkbox_list_tile.dart'; -import '../../../../../widgets/manga_cover/providers/manga_cover_providers.dart'; -import '../../../../../widgets/radio_list_popup.dart'; -import '../controller/library_controller.dart'; - -class LibraryMangaDisplay extends ConsumerWidget { - const LibraryMangaDisplay({super.key}); - - @override - Widget build(BuildContext context, WidgetRef ref) { - final displayMode = ref.watch(libraryDisplayModeProvider); - return ListView( - children: [ - ListTile( - title: Text( - context.l10n!.displayMode, - style: context.textTheme.labelLarge, - ), - dense: true, - ), - RadioList( - optionList: DisplayMode.values, - getTitle: (value) => value.toLocale(context), - value: displayMode ?? DBKeys.libraryDisplayMode.initial, - onChange: (value) => - ref.read(libraryDisplayModeProvider.notifier).update(value), - ), - ListTile( - title: Text( - context.l10n!.badges, - style: context.textTheme.labelLarge, - ), - dense: true, - ), - CustomCheckboxListTile( - title: context.l10n!.downloaded, - provider: downloadedBadgeProvider, - onChanged: ref.read(downloadedBadgeProvider.notifier).update, - tristate: false, - ), - CustomCheckboxListTile( - title: context.l10n!.unread, - provider: unreadBadgeProvider, - onChanged: ref.read(unreadBadgeProvider.notifier).update, - tristate: false, - ), - ], - ); - } -} diff --git a/lib/src/features/library/presentation/library/widgets/library_manga_filter.dart b/lib/src/features/library/presentation/library/widgets/library_manga_filter.dart deleted file mode 100644 index ff5d95e0..00000000 --- a/lib/src/features/library/presentation/library/widgets/library_manga_filter.dart +++ /dev/null @@ -1,41 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../../widgets/custom_checkbox_list_tile.dart'; -import '../controller/library_controller.dart'; - -class LibraryMangaFilter extends ConsumerWidget { - const LibraryMangaFilter({super.key}); - - @override - Widget build(BuildContext context, WidgetRef ref) { - return ListView( - children: [ - CustomCheckboxListTile( - title: context.l10n!.unread, - provider: libraryMangaFilterUnreadProvider, - onChanged: ref.read(libraryMangaFilterUnreadProvider.notifier).update, - ), - CustomCheckboxListTile( - title: context.l10n!.completed, - provider: libraryMangaFilterCompletedProvider, - onChanged: - ref.read(libraryMangaFilterCompletedProvider.notifier).update, - ), - CustomCheckboxListTile( - title: context.l10n!.downloaded, - provider: libraryMangaFilterDownloadedProvider, - onChanged: - ref.read(libraryMangaFilterDownloadedProvider.notifier).update, - ), - ], - ); - } -} diff --git a/lib/src/features/library/presentation/library/widgets/library_manga_organizer.dart b/lib/src/features/library/presentation/library/widgets/library_manga_organizer.dart deleted file mode 100644 index 8515fb7e..00000000 --- a/lib/src/features/library/presentation/library/widgets/library_manga_organizer.dart +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; - -import '../../../../../constants/enum.dart'; -import '../../../../../utils/extensions/custom_extensions.dart'; -import 'library_manga_display.dart'; -import 'library_manga_filter.dart'; -import 'library_manga_sort_tile.dart'; - -class LibraryMangaOrganizer extends StatelessWidget { - const LibraryMangaOrganizer({ - super.key, - /* required this.controller */ - }); - // final ScrollController controller; - @override - Widget build(BuildContext context) { - return DefaultTabController( - length: 3, - child: Scaffold( - appBar: TabBar( - tabs: [ - Tab(text: context.l10n!.filter), - Tab(text: context.l10n!.sort), - Tab(text: context.l10n!.display), - ], - ), - body: TabBarView( - children: [ - const LibraryMangaFilter(), - ListView( - children: [ - for (MangaSort sortType in MangaSort.values) - LibraryMangaSortTile(sortType: sortType), - ], - ), - const LibraryMangaDisplay(), - ], - ), - ), - ); - } -} diff --git a/lib/src/features/library/presentation/library/widgets/library_manga_sort_tile.dart b/lib/src/features/library/presentation/library/widgets/library_manga_sort_tile.dart deleted file mode 100644 index 2385eed8..00000000 --- a/lib/src/features/library/presentation/library/widgets/library_manga_sort_tile.dart +++ /dev/null @@ -1,36 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../../../../../constants/enum.dart'; -import '../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../../widgets/sort_list_tile.dart'; -import '../controller/library_controller.dart'; - -class LibraryMangaSortTile extends ConsumerWidget { - const LibraryMangaSortTile({ - super.key, - required this.sortType, - }); - final MangaSort sortType; - @override - Widget build(BuildContext context, WidgetRef ref) { - final sortedBy = ref.watch(libraryMangaSortProvider); - final sortedDirection = ref.watch(libraryMangaSortDirectionProvider); - return SortListTile( - selected: sortType == sortedBy, - title: Text(sortType.toLocale(context)), - ascending: sortedDirection.ifNull(true), - onChanged: (bool? value) => ref - .read(libraryMangaSortDirectionProvider.notifier) - .update(!(sortedDirection.ifNull())), - onSelected: () => - ref.read(libraryMangaSortProvider.notifier).update(sortType), - ); - } -} diff --git a/lib/src/features/manga_book/data/downloads/downloads_repository.dart b/lib/src/features/manga_book/data/downloads/downloads_repository.dart deleted file mode 100644 index 40e184c4..00000000 --- a/lib/src/features/manga_book/data/downloads/downloads_repository.dart +++ /dev/null @@ -1,123 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'dart:convert'; - -import 'package:flutter/foundation.dart'; - -import 'package:riverpod_annotation/riverpod_annotation.dart'; -import 'package:web_socket_channel/io.dart'; -import 'package:web_socket_channel/web_socket_channel.dart'; - -import '../../../../constants/db_keys.dart'; -import '../../../../constants/endpoints.dart'; -import '../../../../constants/enum.dart'; -import '../../../../global_providers/global_providers.dart'; -import '../../../../utils/extensions/custom_extensions.dart'; -import '../../../../utils/storage/dio/dio_client.dart'; -import '../../../settings/presentation/server/widget/credential_popup/credentials_popup.dart'; -import '../../domain/downloads/downloads_model.dart'; -import '../../domain/downloads_queue/downloads_queue_model.dart'; - -part 'downloads_repository.g.dart'; - -class DownloadsRepository { - const DownloadsRepository(this.dioClient); - - final DioClient dioClient; - // Downloads - Future startDownloads() => dioClient.get(DownloaderUrl.start); - Future stopDownloads() => dioClient.get(DownloaderUrl.stop); - Future clearDownloads() => dioClient.get(DownloaderUrl.clear); - Future addChaptersBatchToDownloadQueue(List chapterIds) => - dioClient.post( - DownloaderUrl.batch, - data: {"chapterIds": chapterIds}, - ); - Future addChapterToDownloadQueue(int mangaId, int chapterIndex) => - dioClient.get(DownloaderUrl.chapter(mangaId, chapterIndex)); - - Future removeChapterFromDownloadQueue(int mangaId, int chapterIndex) => - dioClient.delete(DownloaderUrl.chapter(mangaId, chapterIndex)); - - Future reorderDownload(int mangaId, int chapterIndex, int to) => - dioClient.patch( - DownloaderUrl.reorderDownload(mangaId, chapterIndex, to), - ); - - ({Stream stream, AsyncCallback closeStream}) socketDownloads( - {required AuthType authType, String? credentials}) { - final url = (dioClient.dio.options.baseUrl.toWebSocket!); - final channel = kIsWeb - ? WebSocketChannel.connect(Uri.parse(url + DownloaderUrl.downloads)) - : IOWebSocketChannel.connect( - Uri.parse(url + DownloaderUrl.downloads), - headers: { - if (authType == AuthType.basic) "Authorization": credentials - }, - ); - - return ( - stream: channel.stream.asyncMap( - (event) => compute( - (s) => Downloads.fromJson(json.decode(s)), - event, - ), - ), - closeStream: channel.sink.close, - ); - } -} - -@riverpod -DownloadsRepository downloadsRepository(DownloadsRepositoryRef ref) => - DownloadsRepository(ref.watch(dioClientKeyProvider)); - -@riverpod -class DownloadsSocket extends _$DownloadsSocket { - @override - Stream build() { - final socket = ref.watch(downloadsRepositoryProvider).socketDownloads( - authType: ref.watch(authTypeKeyProvider) ?? DBKeys.authType.initial, - credentials: ref.watch(credentialsProvider), - ); - ref.onDispose(socket.closeStream); - return socket.stream; - } -} - -@riverpod -Map downloadsMap(DownloadsMapRef ref) { - final downloads = ref.watch(downloadsSocketProvider); - return { - for (DownloadsQueue element in [...?downloads.valueOrNull?.queue]) - element.chapter?.id ?? -1: element - }; -} - -@riverpod -DownloadsQueue? downloadsFromId(DownloadsFromIdRef ref, int chapterId) => - ref.watch(downloadsMapProvider.select((map) => map[chapterId])); - -@riverpod -List downloadsChapterIds(DownloadsChapterIdsRef ref) { - return ref.watch(downloadsMapProvider).keys.toList(); -} - -@riverpod -AsyncValue downloadsStatus(DownloadsStatusRef ref) { - return ref.watch(downloadsSocketProvider - .select((value) => value.copyWithData((data) => data.status))); -} - -@riverpod -bool showDownloadsFAB(ShowDownloadsFABRef ref) { - final downloads = ref.watch(downloadsSocketProvider); - return (downloads.valueOrNull?.queue).isNotBlank && - downloads.valueOrNull!.queue!.any( - (element) => element.state != "Error" || element.tries != 3, - ); -} diff --git a/lib/src/features/manga_book/data/downloads/downloads_repository.g.dart b/lib/src/features/manga_book/data/downloads/downloads_repository.g.dart deleted file mode 100644 index 82b8c93a..00000000 --- a/lib/src/features/manga_book/data/downloads/downloads_repository.g.dart +++ /dev/null @@ -1,255 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'downloads_repository.dart'; - -// ************************************************************************** -// RiverpodGenerator -// ************************************************************************** - -String _$downloadsRepositoryHash() => - r'5863e339050a4025a026249d55ea40d25137c001'; - -/// See also [downloadsRepository]. -@ProviderFor(downloadsRepository) -final downloadsRepositoryProvider = - AutoDisposeProvider.internal( - downloadsRepository, - name: r'downloadsRepositoryProvider', - debugGetCreateSourceHash: const bool.fromEnvironment('dart.vm.product') - ? null - : _$downloadsRepositoryHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef DownloadsRepositoryRef = AutoDisposeProviderRef; -String _$downloadsMapHash() => r'069e7137bb59b01aea1cc49d4605e4b8c8a9d7fd'; - -/// See also [downloadsMap]. -@ProviderFor(downloadsMap) -final downloadsMapProvider = - AutoDisposeProvider>.internal( - downloadsMap, - name: r'downloadsMapProvider', - debugGetCreateSourceHash: - const bool.fromEnvironment('dart.vm.product') ? null : _$downloadsMapHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef DownloadsMapRef = AutoDisposeProviderRef>; -String _$downloadsFromIdHash() => r'ebec2d8410a8aa34a66a72061acfe62582f955dd'; - -/// Copied from Dart SDK -class _SystemHash { - _SystemHash._(); - - static int combine(int hash, int value) { - // ignore: parameter_assignments - hash = 0x1fffffff & (hash + value); - // ignore: parameter_assignments - hash = 0x1fffffff & (hash + ((0x0007ffff & hash) << 10)); - return hash ^ (hash >> 6); - } - - static int finish(int hash) { - // ignore: parameter_assignments - hash = 0x1fffffff & (hash + ((0x03ffffff & hash) << 3)); - // ignore: parameter_assignments - hash = hash ^ (hash >> 11); - return 0x1fffffff & (hash + ((0x00003fff & hash) << 15)); - } -} - -/// See also [downloadsFromId]. -@ProviderFor(downloadsFromId) -const downloadsFromIdProvider = DownloadsFromIdFamily(); - -/// See also [downloadsFromId]. -class DownloadsFromIdFamily extends Family { - /// See also [downloadsFromId]. - const DownloadsFromIdFamily(); - - /// See also [downloadsFromId]. - DownloadsFromIdProvider call( - int chapterId, - ) { - return DownloadsFromIdProvider( - chapterId, - ); - } - - @override - DownloadsFromIdProvider getProviderOverride( - covariant DownloadsFromIdProvider provider, - ) { - return call( - provider.chapterId, - ); - } - - static const Iterable? _dependencies = null; - - @override - Iterable? get dependencies => _dependencies; - - static const Iterable? _allTransitiveDependencies = null; - - @override - Iterable? get allTransitiveDependencies => - _allTransitiveDependencies; - - @override - String? get name => r'downloadsFromIdProvider'; -} - -/// See also [downloadsFromId]. -class DownloadsFromIdProvider extends AutoDisposeProvider { - /// See also [downloadsFromId]. - DownloadsFromIdProvider( - int chapterId, - ) : this._internal( - (ref) => downloadsFromId( - ref as DownloadsFromIdRef, - chapterId, - ), - from: downloadsFromIdProvider, - name: r'downloadsFromIdProvider', - debugGetCreateSourceHash: - const bool.fromEnvironment('dart.vm.product') - ? null - : _$downloadsFromIdHash, - dependencies: DownloadsFromIdFamily._dependencies, - allTransitiveDependencies: - DownloadsFromIdFamily._allTransitiveDependencies, - chapterId: chapterId, - ); - - DownloadsFromIdProvider._internal( - super._createNotifier, { - required super.name, - required super.dependencies, - required super.allTransitiveDependencies, - required super.debugGetCreateSourceHash, - required super.from, - required this.chapterId, - }) : super.internal(); - - final int chapterId; - - @override - Override overrideWith( - DownloadsQueue? Function(DownloadsFromIdRef provider) create, - ) { - return ProviderOverride( - origin: this, - override: DownloadsFromIdProvider._internal( - (ref) => create(ref as DownloadsFromIdRef), - from: from, - name: null, - dependencies: null, - allTransitiveDependencies: null, - debugGetCreateSourceHash: null, - chapterId: chapterId, - ), - ); - } - - @override - AutoDisposeProviderElement createElement() { - return _DownloadsFromIdProviderElement(this); - } - - @override - bool operator ==(Object other) { - return other is DownloadsFromIdProvider && other.chapterId == chapterId; - } - - @override - int get hashCode { - var hash = _SystemHash.combine(0, runtimeType.hashCode); - hash = _SystemHash.combine(hash, chapterId.hashCode); - - return _SystemHash.finish(hash); - } -} - -mixin DownloadsFromIdRef on AutoDisposeProviderRef { - /// The parameter `chapterId` of this provider. - int get chapterId; -} - -class _DownloadsFromIdProviderElement - extends AutoDisposeProviderElement - with DownloadsFromIdRef { - _DownloadsFromIdProviderElement(super.provider); - - @override - int get chapterId => (origin as DownloadsFromIdProvider).chapterId; -} - -String _$downloadsChapterIdsHash() => - r'3c490718de46a5ffd3009b398c3c61441421d958'; - -/// See also [downloadsChapterIds]. -@ProviderFor(downloadsChapterIds) -final downloadsChapterIdsProvider = AutoDisposeProvider>.internal( - downloadsChapterIds, - name: r'downloadsChapterIdsProvider', - debugGetCreateSourceHash: const bool.fromEnvironment('dart.vm.product') - ? null - : _$downloadsChapterIdsHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef DownloadsChapterIdsRef = AutoDisposeProviderRef>; -String _$downloadsStatusHash() => r'e1f120563dfc9a83a2e3459680f56168bbf21637'; - -/// See also [downloadsStatus]. -@ProviderFor(downloadsStatus) -final downloadsStatusProvider = - AutoDisposeProvider>.internal( - downloadsStatus, - name: r'downloadsStatusProvider', - debugGetCreateSourceHash: const bool.fromEnvironment('dart.vm.product') - ? null - : _$downloadsStatusHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef DownloadsStatusRef = AutoDisposeProviderRef>; -String _$showDownloadsFABHash() => r'4c00b8fa136dc475476fed61a807a4901cc7cdb8'; - -/// See also [showDownloadsFAB]. -@ProviderFor(showDownloadsFAB) -final showDownloadsFABProvider = AutoDisposeProvider.internal( - showDownloadsFAB, - name: r'showDownloadsFABProvider', - debugGetCreateSourceHash: const bool.fromEnvironment('dart.vm.product') - ? null - : _$showDownloadsFABHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef ShowDownloadsFABRef = AutoDisposeProviderRef; -String _$downloadsSocketHash() => r'ee5f9b56575b716ba8051e1e1d2b65e8bfb222e8'; - -/// See also [DownloadsSocket]. -@ProviderFor(DownloadsSocket) -final downloadsSocketProvider = - AutoDisposeStreamNotifierProvider.internal( - DownloadsSocket.new, - name: r'downloadsSocketProvider', - debugGetCreateSourceHash: const bool.fromEnvironment('dart.vm.product') - ? null - : _$downloadsSocketHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef _$DownloadsSocket = AutoDisposeStreamNotifier; -// ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member diff --git a/lib/src/features/manga_book/data/manga_book_repository.dart b/lib/src/features/manga_book/data/manga_book_repository.dart deleted file mode 100644 index c754d330..00000000 --- a/lib/src/features/manga_book/data/manga_book_repository.dart +++ /dev/null @@ -1,119 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:dio/dio.dart'; -import 'package:riverpod_annotation/riverpod_annotation.dart'; - -import '../../../constants/endpoints.dart'; -import '../../../global_providers/global_providers.dart'; -import '../../../utils/extensions/custom_extensions.dart'; -import '../../../utils/storage/dio/dio_client.dart'; -import '../../library/domain/category/category_model.dart'; -import '../domain/chapter/chapter_model.dart'; -import '../domain/chapter_batch/chapter_batch_model.dart'; -import '../domain/chapter_patch/chapter_put_model.dart'; -import '../domain/manga/manga_model.dart'; - -part 'manga_book_repository.g.dart'; - -class MangaBookRepository { - const MangaBookRepository(this.dioClient); - - final DioClient dioClient; - Future addMangaToLibrary(int mangaId) => - dioClient.get(MangaUrl.library(mangaId)); - Future removeMangaFromLibrary(int mangaId) => - dioClient.delete(MangaUrl.library(mangaId)); - - Future modifyBulkChapters({ChapterBatch? batch}) => dioClient - .post(MangaUrl.chapterBatch, data: batch?.toJson().filterOutNulls); - - // Mangas - Future getManga({ - required int mangaId, - bool onlineFetch = false, - CancelToken? cancelToken, - }) async => - (await dioClient.get( - MangaUrl.fullWithId(mangaId), - queryParameters: {"onlineFetch": onlineFetch}, - decoder: (e) => e is Map ? Manga.fromJson(e) : null, - cancelToken: cancelToken, - )) - .data; - - // Chapters - - Future getChapter({ - required int mangaId, - required int chapterIndex, - CancelToken? cancelToken, - }) async => - (await dioClient.get( - MangaUrl.chapterWithIndex(mangaId, chapterIndex), - decoder: (e) => e is Map ? Chapter.fromJson(e) : null, - cancelToken: cancelToken, - )) - .data; - - Future putChapter({ - required int mangaId, - required int chapterIndex, - required ChapterPut patch, - CancelToken? cancelToken, - }) async => - (await dioClient.put( - MangaUrl.chapterWithIndex(mangaId, chapterIndex), - data: FormData.fromMap(patch.toJson().filterOutNulls), - cancelToken: cancelToken, - )); - - Future patchMangaMeta({ - required int mangaId, - required String key, - required dynamic value, - CancelToken? cancelToken, - }) async => - (await dioClient.patch( - MangaUrl.meta(mangaId), - data: FormData.fromMap({"key": key, "value": value?.toString()}), - cancelToken: cancelToken, - )); - - Future?> getChapterList({ - required int mangaId, - bool onlineFetch = false, - CancelToken? cancelToken, - }) async => - (await dioClient.get, Chapter>( - MangaUrl.chapters(mangaId), - queryParameters: {"onlineFetch": onlineFetch}, - decoder: (e) => - e is Map ? Chapter.fromJson(e) : Chapter(), - cancelToken: cancelToken, - )) - .data; - - Future?> getMangaCategoryList({ - required int mangaId, - CancelToken? cancelToken, - }) async => - (await dioClient.get, Category>( - MangaUrl.category(mangaId), - decoder: (e) => - e is Map ? Category.fromJson(e) : Category(), - cancelToken: cancelToken, - )) - .data; - Future addMangaToCategory(int mangaId, String categoryId) => - dioClient.get(MangaUrl.categoryId(mangaId, categoryId)); - Future removeMangaFromCategory(int mangaId, String categoryId) => - dioClient.delete(MangaUrl.categoryId(mangaId, categoryId)); -} - -@riverpod -MangaBookRepository mangaBookRepository(MangaBookRepositoryRef ref) => - MangaBookRepository(ref.watch(dioClientKeyProvider)); diff --git a/lib/src/features/manga_book/data/manga_book_repository.g.dart b/lib/src/features/manga_book/data/manga_book_repository.g.dart deleted file mode 100644 index a73bdd36..00000000 --- a/lib/src/features/manga_book/data/manga_book_repository.g.dart +++ /dev/null @@ -1,27 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'manga_book_repository.dart'; - -// ************************************************************************** -// RiverpodGenerator -// ************************************************************************** - -String _$mangaBookRepositoryHash() => - r'fbc0619db23d43e750686649e9c371b48bb46f66'; - -/// See also [mangaBookRepository]. -@ProviderFor(mangaBookRepository) -final mangaBookRepositoryProvider = - AutoDisposeProvider.internal( - mangaBookRepository, - name: r'mangaBookRepositoryProvider', - debugGetCreateSourceHash: const bool.fromEnvironment('dart.vm.product') - ? null - : _$mangaBookRepositoryHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef MangaBookRepositoryRef = AutoDisposeProviderRef; -// ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member diff --git a/lib/src/features/manga_book/data/updates/updates_repository.dart b/lib/src/features/manga_book/data/updates/updates_repository.dart deleted file mode 100644 index abaf752f..00000000 --- a/lib/src/features/manga_book/data/updates/updates_repository.dart +++ /dev/null @@ -1,121 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'dart:convert'; - -import 'package:dio/dio.dart'; -import 'package:flutter/foundation.dart'; -import 'package:riverpod_annotation/riverpod_annotation.dart'; -import 'package:web_socket_channel/io.dart'; -import 'package:web_socket_channel/web_socket_channel.dart'; - -import '../../../../constants/db_keys.dart'; -import '../../../../constants/endpoints.dart'; -import '../../../../constants/enum.dart'; -import '../../../../global_providers/global_providers.dart'; -import '../../../../utils/extensions/custom_extensions.dart'; -import '../../../../utils/storage/dio/dio_client.dart'; -import '../../../settings/presentation/server/widget/credential_popup/credentials_popup.dart'; -import '../../domain/chapter_page/chapter_page_model.dart'; -import '../../domain/update_status/update_status_model.dart'; - -part 'updates_repository.g.dart'; - -class UpdatesRepository { - const UpdatesRepository(this.dioClient); - - final DioClient dioClient; - // Downloads - - // Updates - Future getRecentChaptersPage({ - int pageNo = 0, - CancelToken? cancelToken, - }) async => - (await dioClient.get( - UpdateUrl.recentChapters(pageNo), - decoder: (e) => - e is Map ? ChapterPage.fromJson(e) : null, - cancelToken: cancelToken, - )) - .data; - - Future fetchUpdates({ - int? categoryId, - CancelToken? cancelToken, - }) => - dioClient.post( - UpdateUrl.fetch, - cancelToken: cancelToken, - data: FormData.fromMap({ - if (categoryId != null && categoryId != 0) "categoryId": categoryId, - }), - ); - - Future resetUpdates({ - CancelToken? cancelToken, - }) => - dioClient.post(UpdateUrl.reset, cancelToken: cancelToken); - - Future summaryUpdates({ - CancelToken? cancelToken, - }) async => - (await dioClient.get( - UpdateUrl.summary, - cancelToken: cancelToken, - decoder: (e) => e is Map - ? UpdateStatus.fromJson(e["statusMap"]) - : null, - )) - .data; - - ({Stream stream, AsyncCallback closeStream}) socketUpdates( - {required AuthType authType, String? credentials}) { - final url = (dioClient.dio.options.baseUrl.toWebSocket!); - final channel = kIsWeb - ? WebSocketChannel.connect(Uri.parse(url + DownloaderUrl.downloads)) - : IOWebSocketChannel.connect( - Uri.parse(url + DownloaderUrl.downloads), - headers: { - if (authType == AuthType.basic) "Authorization": credentials - }, - ); - return ( - stream: channel.stream.asyncMap((event) => - compute( - (s) => UpdateStatus.fromJson({...?json.decode(s)["statusMap"]}), - event)), - closeStream: channel.sink.close, - ); - } -} - -@riverpod -UpdatesRepository updatesRepository(UpdatesRepositoryRef ref) => - UpdatesRepository(ref.watch(dioClientKeyProvider)); - -@riverpod -Future updateSummary(UpdateSummaryRef ref) async { - final token = CancelToken(); - ref.onDispose(token.cancel); - final result = await ref - .watch(updatesRepositoryProvider) - .summaryUpdates(cancelToken: token); - return result; -} - -@riverpod -class UpdatesSocket extends _$UpdatesSocket { - @override - Stream build() { - final stream = ref.watch(updatesRepositoryProvider).socketUpdates( - authType: ref.watch(authTypeKeyProvider) ?? DBKeys.authType.initial, - credentials: ref.watch(credentialsProvider), - ); - ref.onDispose(stream.closeStream); - return stream.stream; - } -} diff --git a/lib/src/features/manga_book/data/updates/updates_repository.g.dart b/lib/src/features/manga_book/data/updates/updates_repository.g.dart deleted file mode 100644 index 4088a9bf..00000000 --- a/lib/src/features/manga_book/data/updates/updates_repository.g.dart +++ /dev/null @@ -1,57 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'updates_repository.dart'; - -// ************************************************************************** -// RiverpodGenerator -// ************************************************************************** - -String _$updatesRepositoryHash() => r'7137ec4e542f1b7b9e5f9d74abcc570b100530d0'; - -/// See also [updatesRepository]. -@ProviderFor(updatesRepository) -final updatesRepositoryProvider = - AutoDisposeProvider.internal( - updatesRepository, - name: r'updatesRepositoryProvider', - debugGetCreateSourceHash: const bool.fromEnvironment('dart.vm.product') - ? null - : _$updatesRepositoryHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef UpdatesRepositoryRef = AutoDisposeProviderRef; -String _$updateSummaryHash() => r'cd04991640fe6971183b65daf9e45e9445205800'; - -/// See also [updateSummary]. -@ProviderFor(updateSummary) -final updateSummaryProvider = AutoDisposeFutureProvider.internal( - updateSummary, - name: r'updateSummaryProvider', - debugGetCreateSourceHash: const bool.fromEnvironment('dart.vm.product') - ? null - : _$updateSummaryHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef UpdateSummaryRef = AutoDisposeFutureProviderRef; -String _$updatesSocketHash() => r'714e545daee4dc279babf3b72e9c1c5a4f8934e5'; - -/// See also [UpdatesSocket]. -@ProviderFor(UpdatesSocket) -final updatesSocketProvider = - AutoDisposeStreamNotifierProvider.internal( - UpdatesSocket.new, - name: r'updatesSocketProvider', - debugGetCreateSourceHash: const bool.fromEnvironment('dart.vm.product') - ? null - : _$updatesSocketHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef _$UpdatesSocket = AutoDisposeStreamNotifier; -// ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member diff --git a/lib/src/features/manga_book/domain/chapter/chapter_model.dart b/lib/src/features/manga_book/domain/chapter/chapter_model.dart deleted file mode 100644 index 4a87bae1..00000000 --- a/lib/src/features/manga_book/domain/chapter/chapter_model.dart +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:freezed_annotation/freezed_annotation.dart'; - -import '../../../../utils/extensions/custom_extensions.dart'; - -part 'chapter_model.freezed.dart'; -part 'chapter_model.g.dart'; - -@freezed -class Chapter with _$Chapter { - Chapter._(); - factory Chapter({ - int? id, - bool? bookmarked, - int? chapterCount, - double? chapterNumber, - bool? downloaded, - int? fetchedAt, - int? index, - int? lastPageRead, - int? lastReadAt, - int? mangaId, - String? name, - int? pageCount, - bool? read, - String? realUrl, - String? scanlator, - int? uploadDate, - String? url, - Map? meta, - }) = _Chapter; - - factory Chapter.fromJson(Map json) => - _$ChapterFromJson(json); - - bool query([String? query]) { - return name.query(query) || index == int.tryParse(query ?? ''); - } - - String getDisplayName(BuildContext context) { - return name ?? - context.l10n!.chapterNumber( - chapterNumber ?? index?.toDouble() ?? 0, - ); - } -} diff --git a/lib/src/features/manga_book/domain/chapter/chapter_model.freezed.dart b/lib/src/features/manga_book/domain/chapter/chapter_model.freezed.dart deleted file mode 100644 index dd2d4cd0..00000000 --- a/lib/src/features/manga_book/domain/chapter/chapter_model.freezed.dart +++ /dev/null @@ -1,530 +0,0 @@ -// coverage:ignore-file -// GENERATED CODE - DO NOT MODIFY BY HAND -// ignore_for_file: type=lint -// ignore_for_file: unused_element, deprecated_member_use, deprecated_member_use_from_same_package, use_function_type_syntax_for_parameters, unnecessary_const, avoid_init_to_null, invalid_override_different_default_values_named, prefer_expression_function_bodies, annotate_overrides, invalid_annotation_target, unnecessary_question_mark - -part of 'chapter_model.dart'; - -// ************************************************************************** -// FreezedGenerator -// ************************************************************************** - -T _$identity(T value) => value; - -final _privateConstructorUsedError = UnsupportedError( - 'It seems like you constructed your class using `MyClass._()`. This constructor is only meant to be used by freezed and you are not supposed to need it nor use it.\nPlease check the documentation here for more information: https://github.com/rrousselGit/freezed#custom-getters-and-methods'); - -Chapter _$ChapterFromJson(Map json) { - return _Chapter.fromJson(json); -} - -/// @nodoc -mixin _$Chapter { - int? get id => throw _privateConstructorUsedError; - bool? get bookmarked => throw _privateConstructorUsedError; - int? get chapterCount => throw _privateConstructorUsedError; - double? get chapterNumber => throw _privateConstructorUsedError; - bool? get downloaded => throw _privateConstructorUsedError; - int? get fetchedAt => throw _privateConstructorUsedError; - int? get index => throw _privateConstructorUsedError; - int? get lastPageRead => throw _privateConstructorUsedError; - int? get lastReadAt => throw _privateConstructorUsedError; - int? get mangaId => throw _privateConstructorUsedError; - String? get name => throw _privateConstructorUsedError; - int? get pageCount => throw _privateConstructorUsedError; - bool? get read => throw _privateConstructorUsedError; - String? get realUrl => throw _privateConstructorUsedError; - String? get scanlator => throw _privateConstructorUsedError; - int? get uploadDate => throw _privateConstructorUsedError; - String? get url => throw _privateConstructorUsedError; - Map? get meta => throw _privateConstructorUsedError; - - Map toJson() => throw _privateConstructorUsedError; - @JsonKey(ignore: true) - $ChapterCopyWith get copyWith => throw _privateConstructorUsedError; -} - -/// @nodoc -abstract class $ChapterCopyWith<$Res> { - factory $ChapterCopyWith(Chapter value, $Res Function(Chapter) then) = - _$ChapterCopyWithImpl<$Res, Chapter>; - @useResult - $Res call( - {int? id, - bool? bookmarked, - int? chapterCount, - double? chapterNumber, - bool? downloaded, - int? fetchedAt, - int? index, - int? lastPageRead, - int? lastReadAt, - int? mangaId, - String? name, - int? pageCount, - bool? read, - String? realUrl, - String? scanlator, - int? uploadDate, - String? url, - Map? meta}); -} - -/// @nodoc -class _$ChapterCopyWithImpl<$Res, $Val extends Chapter> - implements $ChapterCopyWith<$Res> { - _$ChapterCopyWithImpl(this._value, this._then); - - // ignore: unused_field - final $Val _value; - // ignore: unused_field - final $Res Function($Val) _then; - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? id = freezed, - Object? bookmarked = freezed, - Object? chapterCount = freezed, - Object? chapterNumber = freezed, - Object? downloaded = freezed, - Object? fetchedAt = freezed, - Object? index = freezed, - Object? lastPageRead = freezed, - Object? lastReadAt = freezed, - Object? mangaId = freezed, - Object? name = freezed, - Object? pageCount = freezed, - Object? read = freezed, - Object? realUrl = freezed, - Object? scanlator = freezed, - Object? uploadDate = freezed, - Object? url = freezed, - Object? meta = freezed, - }) { - return _then(_value.copyWith( - id: freezed == id - ? _value.id - : id // ignore: cast_nullable_to_non_nullable - as int?, - bookmarked: freezed == bookmarked - ? _value.bookmarked - : bookmarked // ignore: cast_nullable_to_non_nullable - as bool?, - chapterCount: freezed == chapterCount - ? _value.chapterCount - : chapterCount // ignore: cast_nullable_to_non_nullable - as int?, - chapterNumber: freezed == chapterNumber - ? _value.chapterNumber - : chapterNumber // ignore: cast_nullable_to_non_nullable - as double?, - downloaded: freezed == downloaded - ? _value.downloaded - : downloaded // ignore: cast_nullable_to_non_nullable - as bool?, - fetchedAt: freezed == fetchedAt - ? _value.fetchedAt - : fetchedAt // ignore: cast_nullable_to_non_nullable - as int?, - index: freezed == index - ? _value.index - : index // ignore: cast_nullable_to_non_nullable - as int?, - lastPageRead: freezed == lastPageRead - ? _value.lastPageRead - : lastPageRead // ignore: cast_nullable_to_non_nullable - as int?, - lastReadAt: freezed == lastReadAt - ? _value.lastReadAt - : lastReadAt // ignore: cast_nullable_to_non_nullable - as int?, - mangaId: freezed == mangaId - ? _value.mangaId - : mangaId // ignore: cast_nullable_to_non_nullable - as int?, - name: freezed == name - ? _value.name - : name // ignore: cast_nullable_to_non_nullable - as String?, - pageCount: freezed == pageCount - ? _value.pageCount - : pageCount // ignore: cast_nullable_to_non_nullable - as int?, - read: freezed == read - ? _value.read - : read // ignore: cast_nullable_to_non_nullable - as bool?, - realUrl: freezed == realUrl - ? _value.realUrl - : realUrl // ignore: cast_nullable_to_non_nullable - as String?, - scanlator: freezed == scanlator - ? _value.scanlator - : scanlator // ignore: cast_nullable_to_non_nullable - as String?, - uploadDate: freezed == uploadDate - ? _value.uploadDate - : uploadDate // ignore: cast_nullable_to_non_nullable - as int?, - url: freezed == url - ? _value.url - : url // ignore: cast_nullable_to_non_nullable - as String?, - meta: freezed == meta - ? _value.meta - : meta // ignore: cast_nullable_to_non_nullable - as Map?, - ) as $Val); - } -} - -/// @nodoc -abstract class _$$ChapterImplCopyWith<$Res> implements $ChapterCopyWith<$Res> { - factory _$$ChapterImplCopyWith( - _$ChapterImpl value, $Res Function(_$ChapterImpl) then) = - __$$ChapterImplCopyWithImpl<$Res>; - @override - @useResult - $Res call( - {int? id, - bool? bookmarked, - int? chapterCount, - double? chapterNumber, - bool? downloaded, - int? fetchedAt, - int? index, - int? lastPageRead, - int? lastReadAt, - int? mangaId, - String? name, - int? pageCount, - bool? read, - String? realUrl, - String? scanlator, - int? uploadDate, - String? url, - Map? meta}); -} - -/// @nodoc -class __$$ChapterImplCopyWithImpl<$Res> - extends _$ChapterCopyWithImpl<$Res, _$ChapterImpl> - implements _$$ChapterImplCopyWith<$Res> { - __$$ChapterImplCopyWithImpl( - _$ChapterImpl _value, $Res Function(_$ChapterImpl) _then) - : super(_value, _then); - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? id = freezed, - Object? bookmarked = freezed, - Object? chapterCount = freezed, - Object? chapterNumber = freezed, - Object? downloaded = freezed, - Object? fetchedAt = freezed, - Object? index = freezed, - Object? lastPageRead = freezed, - Object? lastReadAt = freezed, - Object? mangaId = freezed, - Object? name = freezed, - Object? pageCount = freezed, - Object? read = freezed, - Object? realUrl = freezed, - Object? scanlator = freezed, - Object? uploadDate = freezed, - Object? url = freezed, - Object? meta = freezed, - }) { - return _then(_$ChapterImpl( - id: freezed == id - ? _value.id - : id // ignore: cast_nullable_to_non_nullable - as int?, - bookmarked: freezed == bookmarked - ? _value.bookmarked - : bookmarked // ignore: cast_nullable_to_non_nullable - as bool?, - chapterCount: freezed == chapterCount - ? _value.chapterCount - : chapterCount // ignore: cast_nullable_to_non_nullable - as int?, - chapterNumber: freezed == chapterNumber - ? _value.chapterNumber - : chapterNumber // ignore: cast_nullable_to_non_nullable - as double?, - downloaded: freezed == downloaded - ? _value.downloaded - : downloaded // ignore: cast_nullable_to_non_nullable - as bool?, - fetchedAt: freezed == fetchedAt - ? _value.fetchedAt - : fetchedAt // ignore: cast_nullable_to_non_nullable - as int?, - index: freezed == index - ? _value.index - : index // ignore: cast_nullable_to_non_nullable - as int?, - lastPageRead: freezed == lastPageRead - ? _value.lastPageRead - : lastPageRead // ignore: cast_nullable_to_non_nullable - as int?, - lastReadAt: freezed == lastReadAt - ? _value.lastReadAt - : lastReadAt // ignore: cast_nullable_to_non_nullable - as int?, - mangaId: freezed == mangaId - ? _value.mangaId - : mangaId // ignore: cast_nullable_to_non_nullable - as int?, - name: freezed == name - ? _value.name - : name // ignore: cast_nullable_to_non_nullable - as String?, - pageCount: freezed == pageCount - ? _value.pageCount - : pageCount // ignore: cast_nullable_to_non_nullable - as int?, - read: freezed == read - ? _value.read - : read // ignore: cast_nullable_to_non_nullable - as bool?, - realUrl: freezed == realUrl - ? _value.realUrl - : realUrl // ignore: cast_nullable_to_non_nullable - as String?, - scanlator: freezed == scanlator - ? _value.scanlator - : scanlator // ignore: cast_nullable_to_non_nullable - as String?, - uploadDate: freezed == uploadDate - ? _value.uploadDate - : uploadDate // ignore: cast_nullable_to_non_nullable - as int?, - url: freezed == url - ? _value.url - : url // ignore: cast_nullable_to_non_nullable - as String?, - meta: freezed == meta - ? _value._meta - : meta // ignore: cast_nullable_to_non_nullable - as Map?, - )); - } -} - -/// @nodoc -@JsonSerializable() -class _$ChapterImpl extends _Chapter { - _$ChapterImpl( - {this.id, - this.bookmarked, - this.chapterCount, - this.chapterNumber, - this.downloaded, - this.fetchedAt, - this.index, - this.lastPageRead, - this.lastReadAt, - this.mangaId, - this.name, - this.pageCount, - this.read, - this.realUrl, - this.scanlator, - this.uploadDate, - this.url, - final Map? meta}) - : _meta = meta, - super._(); - - factory _$ChapterImpl.fromJson(Map json) => - _$$ChapterImplFromJson(json); - - @override - final int? id; - @override - final bool? bookmarked; - @override - final int? chapterCount; - @override - final double? chapterNumber; - @override - final bool? downloaded; - @override - final int? fetchedAt; - @override - final int? index; - @override - final int? lastPageRead; - @override - final int? lastReadAt; - @override - final int? mangaId; - @override - final String? name; - @override - final int? pageCount; - @override - final bool? read; - @override - final String? realUrl; - @override - final String? scanlator; - @override - final int? uploadDate; - @override - final String? url; - final Map? _meta; - @override - Map? get meta { - final value = _meta; - if (value == null) return null; - if (_meta is EqualUnmodifiableMapView) return _meta; - // ignore: implicit_dynamic_type - return EqualUnmodifiableMapView(value); - } - - @override - String toString() { - return 'Chapter(id: $id, bookmarked: $bookmarked, chapterCount: $chapterCount, chapterNumber: $chapterNumber, downloaded: $downloaded, fetchedAt: $fetchedAt, index: $index, lastPageRead: $lastPageRead, lastReadAt: $lastReadAt, mangaId: $mangaId, name: $name, pageCount: $pageCount, read: $read, realUrl: $realUrl, scanlator: $scanlator, uploadDate: $uploadDate, url: $url, meta: $meta)'; - } - - @override - bool operator ==(dynamic other) { - return identical(this, other) || - (other.runtimeType == runtimeType && - other is _$ChapterImpl && - (identical(other.id, id) || other.id == id) && - (identical(other.bookmarked, bookmarked) || - other.bookmarked == bookmarked) && - (identical(other.chapterCount, chapterCount) || - other.chapterCount == chapterCount) && - (identical(other.chapterNumber, chapterNumber) || - other.chapterNumber == chapterNumber) && - (identical(other.downloaded, downloaded) || - other.downloaded == downloaded) && - (identical(other.fetchedAt, fetchedAt) || - other.fetchedAt == fetchedAt) && - (identical(other.index, index) || other.index == index) && - (identical(other.lastPageRead, lastPageRead) || - other.lastPageRead == lastPageRead) && - (identical(other.lastReadAt, lastReadAt) || - other.lastReadAt == lastReadAt) && - (identical(other.mangaId, mangaId) || other.mangaId == mangaId) && - (identical(other.name, name) || other.name == name) && - (identical(other.pageCount, pageCount) || - other.pageCount == pageCount) && - (identical(other.read, read) || other.read == read) && - (identical(other.realUrl, realUrl) || other.realUrl == realUrl) && - (identical(other.scanlator, scanlator) || - other.scanlator == scanlator) && - (identical(other.uploadDate, uploadDate) || - other.uploadDate == uploadDate) && - (identical(other.url, url) || other.url == url) && - const DeepCollectionEquality().equals(other._meta, _meta)); - } - - @JsonKey(ignore: true) - @override - int get hashCode => Object.hash( - runtimeType, - id, - bookmarked, - chapterCount, - chapterNumber, - downloaded, - fetchedAt, - index, - lastPageRead, - lastReadAt, - mangaId, - name, - pageCount, - read, - realUrl, - scanlator, - uploadDate, - url, - const DeepCollectionEquality().hash(_meta)); - - @JsonKey(ignore: true) - @override - @pragma('vm:prefer-inline') - _$$ChapterImplCopyWith<_$ChapterImpl> get copyWith => - __$$ChapterImplCopyWithImpl<_$ChapterImpl>(this, _$identity); - - @override - Map toJson() { - return _$$ChapterImplToJson( - this, - ); - } -} - -abstract class _Chapter extends Chapter { - factory _Chapter( - {final int? id, - final bool? bookmarked, - final int? chapterCount, - final double? chapterNumber, - final bool? downloaded, - final int? fetchedAt, - final int? index, - final int? lastPageRead, - final int? lastReadAt, - final int? mangaId, - final String? name, - final int? pageCount, - final bool? read, - final String? realUrl, - final String? scanlator, - final int? uploadDate, - final String? url, - final Map? meta}) = _$ChapterImpl; - _Chapter._() : super._(); - - factory _Chapter.fromJson(Map json) = _$ChapterImpl.fromJson; - - @override - int? get id; - @override - bool? get bookmarked; - @override - int? get chapterCount; - @override - double? get chapterNumber; - @override - bool? get downloaded; - @override - int? get fetchedAt; - @override - int? get index; - @override - int? get lastPageRead; - @override - int? get lastReadAt; - @override - int? get mangaId; - @override - String? get name; - @override - int? get pageCount; - @override - bool? get read; - @override - String? get realUrl; - @override - String? get scanlator; - @override - int? get uploadDate; - @override - String? get url; - @override - Map? get meta; - @override - @JsonKey(ignore: true) - _$$ChapterImplCopyWith<_$ChapterImpl> get copyWith => - throw _privateConstructorUsedError; -} diff --git a/lib/src/features/manga_book/domain/chapter/chapter_model.g.dart b/lib/src/features/manga_book/domain/chapter/chapter_model.g.dart deleted file mode 100644 index 38b5408a..00000000 --- a/lib/src/features/manga_book/domain/chapter/chapter_model.g.dart +++ /dev/null @@ -1,53 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'chapter_model.dart'; - -// ************************************************************************** -// JsonSerializableGenerator -// ************************************************************************** - -_$ChapterImpl _$$ChapterImplFromJson(Map json) => - _$ChapterImpl( - id: json['id'] as int?, - bookmarked: json['bookmarked'] as bool?, - chapterCount: json['chapterCount'] as int?, - chapterNumber: (json['chapterNumber'] as num?)?.toDouble(), - downloaded: json['downloaded'] as bool?, - fetchedAt: json['fetchedAt'] as int?, - index: json['index'] as int?, - lastPageRead: json['lastPageRead'] as int?, - lastReadAt: json['lastReadAt'] as int?, - mangaId: json['mangaId'] as int?, - name: json['name'] as String?, - pageCount: json['pageCount'] as int?, - read: json['read'] as bool?, - realUrl: json['realUrl'] as String?, - scanlator: json['scanlator'] as String?, - uploadDate: json['uploadDate'] as int?, - url: json['url'] as String?, - meta: (json['meta'] as Map?)?.map( - (k, e) => MapEntry(k, e as String), - ), - ); - -Map _$$ChapterImplToJson(_$ChapterImpl instance) => - { - 'id': instance.id, - 'bookmarked': instance.bookmarked, - 'chapterCount': instance.chapterCount, - 'chapterNumber': instance.chapterNumber, - 'downloaded': instance.downloaded, - 'fetchedAt': instance.fetchedAt, - 'index': instance.index, - 'lastPageRead': instance.lastPageRead, - 'lastReadAt': instance.lastReadAt, - 'mangaId': instance.mangaId, - 'name': instance.name, - 'pageCount': instance.pageCount, - 'read': instance.read, - 'realUrl': instance.realUrl, - 'scanlator': instance.scanlator, - 'uploadDate': instance.uploadDate, - 'url': instance.url, - 'meta': instance.meta, - }; diff --git a/lib/src/features/manga_book/domain/chapter_batch/chapter_batch_model.dart b/lib/src/features/manga_book/domain/chapter_batch/chapter_batch_model.dart deleted file mode 100644 index 1a6accdc..00000000 --- a/lib/src/features/manga_book/domain/chapter_batch/chapter_batch_model.dart +++ /dev/null @@ -1,34 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:freezed_annotation/freezed_annotation.dart'; - -part 'chapter_batch_model.freezed.dart'; -part 'chapter_batch_model.g.dart'; - -@freezed -class ChapterBatch with _$ChapterBatch { - factory ChapterBatch({ - List? chapterIds, - ChapterChange? change, - }) = _ChapterBatch; - - factory ChapterBatch.fromJson(Map json) => - _$ChapterBatchFromJson(json); -} - -@freezed -class ChapterChange with _$ChapterChange { - factory ChapterChange({ - bool? isRead, - bool? isBookmarked, - int? lastPageRead, - bool? delete, - }) = _ChapterChange; - - factory ChapterChange.fromJson(Map json) => - _$ChapterChangeFromJson(json); -} diff --git a/lib/src/features/manga_book/domain/chapter_batch/chapter_batch_model.freezed.dart b/lib/src/features/manga_book/domain/chapter_batch/chapter_batch_model.freezed.dart deleted file mode 100644 index 2cf86193..00000000 --- a/lib/src/features/manga_book/domain/chapter_batch/chapter_batch_model.freezed.dart +++ /dev/null @@ -1,391 +0,0 @@ -// coverage:ignore-file -// GENERATED CODE - DO NOT MODIFY BY HAND -// ignore_for_file: type=lint -// ignore_for_file: unused_element, deprecated_member_use, deprecated_member_use_from_same_package, use_function_type_syntax_for_parameters, unnecessary_const, avoid_init_to_null, invalid_override_different_default_values_named, prefer_expression_function_bodies, annotate_overrides, invalid_annotation_target, unnecessary_question_mark - -part of 'chapter_batch_model.dart'; - -// ************************************************************************** -// FreezedGenerator -// ************************************************************************** - -T _$identity(T value) => value; - -final _privateConstructorUsedError = UnsupportedError( - 'It seems like you constructed your class using `MyClass._()`. This constructor is only meant to be used by freezed and you are not supposed to need it nor use it.\nPlease check the documentation here for more information: https://github.com/rrousselGit/freezed#custom-getters-and-methods'); - -ChapterBatch _$ChapterBatchFromJson(Map json) { - return _ChapterBatch.fromJson(json); -} - -/// @nodoc -mixin _$ChapterBatch { - List? get chapterIds => throw _privateConstructorUsedError; - ChapterChange? get change => throw _privateConstructorUsedError; - - Map toJson() => throw _privateConstructorUsedError; - @JsonKey(ignore: true) - $ChapterBatchCopyWith get copyWith => - throw _privateConstructorUsedError; -} - -/// @nodoc -abstract class $ChapterBatchCopyWith<$Res> { - factory $ChapterBatchCopyWith( - ChapterBatch value, $Res Function(ChapterBatch) then) = - _$ChapterBatchCopyWithImpl<$Res, ChapterBatch>; - @useResult - $Res call({List? chapterIds, ChapterChange? change}); - - $ChapterChangeCopyWith<$Res>? get change; -} - -/// @nodoc -class _$ChapterBatchCopyWithImpl<$Res, $Val extends ChapterBatch> - implements $ChapterBatchCopyWith<$Res> { - _$ChapterBatchCopyWithImpl(this._value, this._then); - - // ignore: unused_field - final $Val _value; - // ignore: unused_field - final $Res Function($Val) _then; - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? chapterIds = freezed, - Object? change = freezed, - }) { - return _then(_value.copyWith( - chapterIds: freezed == chapterIds - ? _value.chapterIds - : chapterIds // ignore: cast_nullable_to_non_nullable - as List?, - change: freezed == change - ? _value.change - : change // ignore: cast_nullable_to_non_nullable - as ChapterChange?, - ) as $Val); - } - - @override - @pragma('vm:prefer-inline') - $ChapterChangeCopyWith<$Res>? get change { - if (_value.change == null) { - return null; - } - - return $ChapterChangeCopyWith<$Res>(_value.change!, (value) { - return _then(_value.copyWith(change: value) as $Val); - }); - } -} - -/// @nodoc -abstract class _$$ChapterBatchImplCopyWith<$Res> - implements $ChapterBatchCopyWith<$Res> { - factory _$$ChapterBatchImplCopyWith( - _$ChapterBatchImpl value, $Res Function(_$ChapterBatchImpl) then) = - __$$ChapterBatchImplCopyWithImpl<$Res>; - @override - @useResult - $Res call({List? chapterIds, ChapterChange? change}); - - @override - $ChapterChangeCopyWith<$Res>? get change; -} - -/// @nodoc -class __$$ChapterBatchImplCopyWithImpl<$Res> - extends _$ChapterBatchCopyWithImpl<$Res, _$ChapterBatchImpl> - implements _$$ChapterBatchImplCopyWith<$Res> { - __$$ChapterBatchImplCopyWithImpl( - _$ChapterBatchImpl _value, $Res Function(_$ChapterBatchImpl) _then) - : super(_value, _then); - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? chapterIds = freezed, - Object? change = freezed, - }) { - return _then(_$ChapterBatchImpl( - chapterIds: freezed == chapterIds - ? _value._chapterIds - : chapterIds // ignore: cast_nullable_to_non_nullable - as List?, - change: freezed == change - ? _value.change - : change // ignore: cast_nullable_to_non_nullable - as ChapterChange?, - )); - } -} - -/// @nodoc -@JsonSerializable() -class _$ChapterBatchImpl implements _ChapterBatch { - _$ChapterBatchImpl({final List? chapterIds, this.change}) - : _chapterIds = chapterIds; - - factory _$ChapterBatchImpl.fromJson(Map json) => - _$$ChapterBatchImplFromJson(json); - - final List? _chapterIds; - @override - List? get chapterIds { - final value = _chapterIds; - if (value == null) return null; - if (_chapterIds is EqualUnmodifiableListView) return _chapterIds; - // ignore: implicit_dynamic_type - return EqualUnmodifiableListView(value); - } - - @override - final ChapterChange? change; - - @override - String toString() { - return 'ChapterBatch(chapterIds: $chapterIds, change: $change)'; - } - - @override - bool operator ==(dynamic other) { - return identical(this, other) || - (other.runtimeType == runtimeType && - other is _$ChapterBatchImpl && - const DeepCollectionEquality() - .equals(other._chapterIds, _chapterIds) && - (identical(other.change, change) || other.change == change)); - } - - @JsonKey(ignore: true) - @override - int get hashCode => Object.hash( - runtimeType, const DeepCollectionEquality().hash(_chapterIds), change); - - @JsonKey(ignore: true) - @override - @pragma('vm:prefer-inline') - _$$ChapterBatchImplCopyWith<_$ChapterBatchImpl> get copyWith => - __$$ChapterBatchImplCopyWithImpl<_$ChapterBatchImpl>(this, _$identity); - - @override - Map toJson() { - return _$$ChapterBatchImplToJson( - this, - ); - } -} - -abstract class _ChapterBatch implements ChapterBatch { - factory _ChapterBatch( - {final List? chapterIds, - final ChapterChange? change}) = _$ChapterBatchImpl; - - factory _ChapterBatch.fromJson(Map json) = - _$ChapterBatchImpl.fromJson; - - @override - List? get chapterIds; - @override - ChapterChange? get change; - @override - @JsonKey(ignore: true) - _$$ChapterBatchImplCopyWith<_$ChapterBatchImpl> get copyWith => - throw _privateConstructorUsedError; -} - -ChapterChange _$ChapterChangeFromJson(Map json) { - return _ChapterChange.fromJson(json); -} - -/// @nodoc -mixin _$ChapterChange { - bool? get isRead => throw _privateConstructorUsedError; - bool? get isBookmarked => throw _privateConstructorUsedError; - int? get lastPageRead => throw _privateConstructorUsedError; - bool? get delete => throw _privateConstructorUsedError; - - Map toJson() => throw _privateConstructorUsedError; - @JsonKey(ignore: true) - $ChapterChangeCopyWith get copyWith => - throw _privateConstructorUsedError; -} - -/// @nodoc -abstract class $ChapterChangeCopyWith<$Res> { - factory $ChapterChangeCopyWith( - ChapterChange value, $Res Function(ChapterChange) then) = - _$ChapterChangeCopyWithImpl<$Res, ChapterChange>; - @useResult - $Res call( - {bool? isRead, bool? isBookmarked, int? lastPageRead, bool? delete}); -} - -/// @nodoc -class _$ChapterChangeCopyWithImpl<$Res, $Val extends ChapterChange> - implements $ChapterChangeCopyWith<$Res> { - _$ChapterChangeCopyWithImpl(this._value, this._then); - - // ignore: unused_field - final $Val _value; - // ignore: unused_field - final $Res Function($Val) _then; - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? isRead = freezed, - Object? isBookmarked = freezed, - Object? lastPageRead = freezed, - Object? delete = freezed, - }) { - return _then(_value.copyWith( - isRead: freezed == isRead - ? _value.isRead - : isRead // ignore: cast_nullable_to_non_nullable - as bool?, - isBookmarked: freezed == isBookmarked - ? _value.isBookmarked - : isBookmarked // ignore: cast_nullable_to_non_nullable - as bool?, - lastPageRead: freezed == lastPageRead - ? _value.lastPageRead - : lastPageRead // ignore: cast_nullable_to_non_nullable - as int?, - delete: freezed == delete - ? _value.delete - : delete // ignore: cast_nullable_to_non_nullable - as bool?, - ) as $Val); - } -} - -/// @nodoc -abstract class _$$ChapterChangeImplCopyWith<$Res> - implements $ChapterChangeCopyWith<$Res> { - factory _$$ChapterChangeImplCopyWith( - _$ChapterChangeImpl value, $Res Function(_$ChapterChangeImpl) then) = - __$$ChapterChangeImplCopyWithImpl<$Res>; - @override - @useResult - $Res call( - {bool? isRead, bool? isBookmarked, int? lastPageRead, bool? delete}); -} - -/// @nodoc -class __$$ChapterChangeImplCopyWithImpl<$Res> - extends _$ChapterChangeCopyWithImpl<$Res, _$ChapterChangeImpl> - implements _$$ChapterChangeImplCopyWith<$Res> { - __$$ChapterChangeImplCopyWithImpl( - _$ChapterChangeImpl _value, $Res Function(_$ChapterChangeImpl) _then) - : super(_value, _then); - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? isRead = freezed, - Object? isBookmarked = freezed, - Object? lastPageRead = freezed, - Object? delete = freezed, - }) { - return _then(_$ChapterChangeImpl( - isRead: freezed == isRead - ? _value.isRead - : isRead // ignore: cast_nullable_to_non_nullable - as bool?, - isBookmarked: freezed == isBookmarked - ? _value.isBookmarked - : isBookmarked // ignore: cast_nullable_to_non_nullable - as bool?, - lastPageRead: freezed == lastPageRead - ? _value.lastPageRead - : lastPageRead // ignore: cast_nullable_to_non_nullable - as int?, - delete: freezed == delete - ? _value.delete - : delete // ignore: cast_nullable_to_non_nullable - as bool?, - )); - } -} - -/// @nodoc -@JsonSerializable() -class _$ChapterChangeImpl implements _ChapterChange { - _$ChapterChangeImpl( - {this.isRead, this.isBookmarked, this.lastPageRead, this.delete}); - - factory _$ChapterChangeImpl.fromJson(Map json) => - _$$ChapterChangeImplFromJson(json); - - @override - final bool? isRead; - @override - final bool? isBookmarked; - @override - final int? lastPageRead; - @override - final bool? delete; - - @override - String toString() { - return 'ChapterChange(isRead: $isRead, isBookmarked: $isBookmarked, lastPageRead: $lastPageRead, delete: $delete)'; - } - - @override - bool operator ==(dynamic other) { - return identical(this, other) || - (other.runtimeType == runtimeType && - other is _$ChapterChangeImpl && - (identical(other.isRead, isRead) || other.isRead == isRead) && - (identical(other.isBookmarked, isBookmarked) || - other.isBookmarked == isBookmarked) && - (identical(other.lastPageRead, lastPageRead) || - other.lastPageRead == lastPageRead) && - (identical(other.delete, delete) || other.delete == delete)); - } - - @JsonKey(ignore: true) - @override - int get hashCode => - Object.hash(runtimeType, isRead, isBookmarked, lastPageRead, delete); - - @JsonKey(ignore: true) - @override - @pragma('vm:prefer-inline') - _$$ChapterChangeImplCopyWith<_$ChapterChangeImpl> get copyWith => - __$$ChapterChangeImplCopyWithImpl<_$ChapterChangeImpl>(this, _$identity); - - @override - Map toJson() { - return _$$ChapterChangeImplToJson( - this, - ); - } -} - -abstract class _ChapterChange implements ChapterChange { - factory _ChapterChange( - {final bool? isRead, - final bool? isBookmarked, - final int? lastPageRead, - final bool? delete}) = _$ChapterChangeImpl; - - factory _ChapterChange.fromJson(Map json) = - _$ChapterChangeImpl.fromJson; - - @override - bool? get isRead; - @override - bool? get isBookmarked; - @override - int? get lastPageRead; - @override - bool? get delete; - @override - @JsonKey(ignore: true) - _$$ChapterChangeImplCopyWith<_$ChapterChangeImpl> get copyWith => - throw _privateConstructorUsedError; -} diff --git a/lib/src/features/manga_book/domain/chapter_batch/chapter_batch_model.g.dart b/lib/src/features/manga_book/domain/chapter_batch/chapter_batch_model.g.dart deleted file mode 100644 index 177d18b5..00000000 --- a/lib/src/features/manga_book/domain/chapter_batch/chapter_batch_model.g.dart +++ /dev/null @@ -1,38 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'chapter_batch_model.dart'; - -// ************************************************************************** -// JsonSerializableGenerator -// ************************************************************************** - -_$ChapterBatchImpl _$$ChapterBatchImplFromJson(Map json) => - _$ChapterBatchImpl( - chapterIds: - (json['chapterIds'] as List?)?.map((e) => e as int).toList(), - change: json['change'] == null - ? null - : ChapterChange.fromJson(json['change'] as Map), - ); - -Map _$$ChapterBatchImplToJson(_$ChapterBatchImpl instance) => - { - 'chapterIds': instance.chapterIds, - 'change': instance.change?.toJson(), - }; - -_$ChapterChangeImpl _$$ChapterChangeImplFromJson(Map json) => - _$ChapterChangeImpl( - isRead: json['isRead'] as bool?, - isBookmarked: json['isBookmarked'] as bool?, - lastPageRead: json['lastPageRead'] as int?, - delete: json['delete'] as bool?, - ); - -Map _$$ChapterChangeImplToJson(_$ChapterChangeImpl instance) => - { - 'isRead': instance.isRead, - 'isBookmarked': instance.isBookmarked, - 'lastPageRead': instance.lastPageRead, - 'delete': instance.delete, - }; diff --git a/lib/src/features/manga_book/domain/chapter_page/chapter_page_model.dart b/lib/src/features/manga_book/domain/chapter_page/chapter_page_model.dart deleted file mode 100644 index 47b571a4..00000000 --- a/lib/src/features/manga_book/domain/chapter_page/chapter_page_model.dart +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:freezed_annotation/freezed_annotation.dart'; - -import '../chapter/chapter_model.dart'; -import '../manga/manga_model.dart'; - -part 'chapter_page_model.freezed.dart'; -part 'chapter_page_model.g.dart'; - -@freezed -class ChapterMangaPair with _$ChapterMangaPair { - factory ChapterMangaPair({ - Chapter? chapter, - Manga? manga, - }) = _ChapterMangaPair; - - factory ChapterMangaPair.fromJson(Map json) => - _$ChapterMangaPairFromJson(json); -} - -@freezed -class ChapterPage with _$ChapterPage { - factory ChapterPage({ - bool? hasNextPage, - List? page, - }) = _ChapterPage; - - factory ChapterPage.fromJson(Map json) => - _$ChapterPageFromJson(json); -} diff --git a/lib/src/features/manga_book/domain/chapter_page/chapter_page_model.freezed.dart b/lib/src/features/manga_book/domain/chapter_page/chapter_page_model.freezed.dart deleted file mode 100644 index 7d52d4ad..00000000 --- a/lib/src/features/manga_book/domain/chapter_page/chapter_page_model.freezed.dart +++ /dev/null @@ -1,365 +0,0 @@ -// coverage:ignore-file -// GENERATED CODE - DO NOT MODIFY BY HAND -// ignore_for_file: type=lint -// ignore_for_file: unused_element, deprecated_member_use, deprecated_member_use_from_same_package, use_function_type_syntax_for_parameters, unnecessary_const, avoid_init_to_null, invalid_override_different_default_values_named, prefer_expression_function_bodies, annotate_overrides, invalid_annotation_target, unnecessary_question_mark - -part of 'chapter_page_model.dart'; - -// ************************************************************************** -// FreezedGenerator -// ************************************************************************** - -T _$identity(T value) => value; - -final _privateConstructorUsedError = UnsupportedError( - 'It seems like you constructed your class using `MyClass._()`. This constructor is only meant to be used by freezed and you are not supposed to need it nor use it.\nPlease check the documentation here for more information: https://github.com/rrousselGit/freezed#custom-getters-and-methods'); - -ChapterMangaPair _$ChapterMangaPairFromJson(Map json) { - return _ChapterMangaPair.fromJson(json); -} - -/// @nodoc -mixin _$ChapterMangaPair { - Chapter? get chapter => throw _privateConstructorUsedError; - Manga? get manga => throw _privateConstructorUsedError; - - Map toJson() => throw _privateConstructorUsedError; - @JsonKey(ignore: true) - $ChapterMangaPairCopyWith get copyWith => - throw _privateConstructorUsedError; -} - -/// @nodoc -abstract class $ChapterMangaPairCopyWith<$Res> { - factory $ChapterMangaPairCopyWith( - ChapterMangaPair value, $Res Function(ChapterMangaPair) then) = - _$ChapterMangaPairCopyWithImpl<$Res, ChapterMangaPair>; - @useResult - $Res call({Chapter? chapter, Manga? manga}); - - $ChapterCopyWith<$Res>? get chapter; - $MangaCopyWith<$Res>? get manga; -} - -/// @nodoc -class _$ChapterMangaPairCopyWithImpl<$Res, $Val extends ChapterMangaPair> - implements $ChapterMangaPairCopyWith<$Res> { - _$ChapterMangaPairCopyWithImpl(this._value, this._then); - - // ignore: unused_field - final $Val _value; - // ignore: unused_field - final $Res Function($Val) _then; - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? chapter = freezed, - Object? manga = freezed, - }) { - return _then(_value.copyWith( - chapter: freezed == chapter - ? _value.chapter - : chapter // ignore: cast_nullable_to_non_nullable - as Chapter?, - manga: freezed == manga - ? _value.manga - : manga // ignore: cast_nullable_to_non_nullable - as Manga?, - ) as $Val); - } - - @override - @pragma('vm:prefer-inline') - $ChapterCopyWith<$Res>? get chapter { - if (_value.chapter == null) { - return null; - } - - return $ChapterCopyWith<$Res>(_value.chapter!, (value) { - return _then(_value.copyWith(chapter: value) as $Val); - }); - } - - @override - @pragma('vm:prefer-inline') - $MangaCopyWith<$Res>? get manga { - if (_value.manga == null) { - return null; - } - - return $MangaCopyWith<$Res>(_value.manga!, (value) { - return _then(_value.copyWith(manga: value) as $Val); - }); - } -} - -/// @nodoc -abstract class _$$ChapterMangaPairImplCopyWith<$Res> - implements $ChapterMangaPairCopyWith<$Res> { - factory _$$ChapterMangaPairImplCopyWith(_$ChapterMangaPairImpl value, - $Res Function(_$ChapterMangaPairImpl) then) = - __$$ChapterMangaPairImplCopyWithImpl<$Res>; - @override - @useResult - $Res call({Chapter? chapter, Manga? manga}); - - @override - $ChapterCopyWith<$Res>? get chapter; - @override - $MangaCopyWith<$Res>? get manga; -} - -/// @nodoc -class __$$ChapterMangaPairImplCopyWithImpl<$Res> - extends _$ChapterMangaPairCopyWithImpl<$Res, _$ChapterMangaPairImpl> - implements _$$ChapterMangaPairImplCopyWith<$Res> { - __$$ChapterMangaPairImplCopyWithImpl(_$ChapterMangaPairImpl _value, - $Res Function(_$ChapterMangaPairImpl) _then) - : super(_value, _then); - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? chapter = freezed, - Object? manga = freezed, - }) { - return _then(_$ChapterMangaPairImpl( - chapter: freezed == chapter - ? _value.chapter - : chapter // ignore: cast_nullable_to_non_nullable - as Chapter?, - manga: freezed == manga - ? _value.manga - : manga // ignore: cast_nullable_to_non_nullable - as Manga?, - )); - } -} - -/// @nodoc -@JsonSerializable() -class _$ChapterMangaPairImpl implements _ChapterMangaPair { - _$ChapterMangaPairImpl({this.chapter, this.manga}); - - factory _$ChapterMangaPairImpl.fromJson(Map json) => - _$$ChapterMangaPairImplFromJson(json); - - @override - final Chapter? chapter; - @override - final Manga? manga; - - @override - String toString() { - return 'ChapterMangaPair(chapter: $chapter, manga: $manga)'; - } - - @override - bool operator ==(dynamic other) { - return identical(this, other) || - (other.runtimeType == runtimeType && - other is _$ChapterMangaPairImpl && - (identical(other.chapter, chapter) || other.chapter == chapter) && - (identical(other.manga, manga) || other.manga == manga)); - } - - @JsonKey(ignore: true) - @override - int get hashCode => Object.hash(runtimeType, chapter, manga); - - @JsonKey(ignore: true) - @override - @pragma('vm:prefer-inline') - _$$ChapterMangaPairImplCopyWith<_$ChapterMangaPairImpl> get copyWith => - __$$ChapterMangaPairImplCopyWithImpl<_$ChapterMangaPairImpl>( - this, _$identity); - - @override - Map toJson() { - return _$$ChapterMangaPairImplToJson( - this, - ); - } -} - -abstract class _ChapterMangaPair implements ChapterMangaPair { - factory _ChapterMangaPair({final Chapter? chapter, final Manga? manga}) = - _$ChapterMangaPairImpl; - - factory _ChapterMangaPair.fromJson(Map json) = - _$ChapterMangaPairImpl.fromJson; - - @override - Chapter? get chapter; - @override - Manga? get manga; - @override - @JsonKey(ignore: true) - _$$ChapterMangaPairImplCopyWith<_$ChapterMangaPairImpl> get copyWith => - throw _privateConstructorUsedError; -} - -ChapterPage _$ChapterPageFromJson(Map json) { - return _ChapterPage.fromJson(json); -} - -/// @nodoc -mixin _$ChapterPage { - bool? get hasNextPage => throw _privateConstructorUsedError; - List? get page => throw _privateConstructorUsedError; - - Map toJson() => throw _privateConstructorUsedError; - @JsonKey(ignore: true) - $ChapterPageCopyWith get copyWith => - throw _privateConstructorUsedError; -} - -/// @nodoc -abstract class $ChapterPageCopyWith<$Res> { - factory $ChapterPageCopyWith( - ChapterPage value, $Res Function(ChapterPage) then) = - _$ChapterPageCopyWithImpl<$Res, ChapterPage>; - @useResult - $Res call({bool? hasNextPage, List? page}); -} - -/// @nodoc -class _$ChapterPageCopyWithImpl<$Res, $Val extends ChapterPage> - implements $ChapterPageCopyWith<$Res> { - _$ChapterPageCopyWithImpl(this._value, this._then); - - // ignore: unused_field - final $Val _value; - // ignore: unused_field - final $Res Function($Val) _then; - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? hasNextPage = freezed, - Object? page = freezed, - }) { - return _then(_value.copyWith( - hasNextPage: freezed == hasNextPage - ? _value.hasNextPage - : hasNextPage // ignore: cast_nullable_to_non_nullable - as bool?, - page: freezed == page - ? _value.page - : page // ignore: cast_nullable_to_non_nullable - as List?, - ) as $Val); - } -} - -/// @nodoc -abstract class _$$ChapterPageImplCopyWith<$Res> - implements $ChapterPageCopyWith<$Res> { - factory _$$ChapterPageImplCopyWith( - _$ChapterPageImpl value, $Res Function(_$ChapterPageImpl) then) = - __$$ChapterPageImplCopyWithImpl<$Res>; - @override - @useResult - $Res call({bool? hasNextPage, List? page}); -} - -/// @nodoc -class __$$ChapterPageImplCopyWithImpl<$Res> - extends _$ChapterPageCopyWithImpl<$Res, _$ChapterPageImpl> - implements _$$ChapterPageImplCopyWith<$Res> { - __$$ChapterPageImplCopyWithImpl( - _$ChapterPageImpl _value, $Res Function(_$ChapterPageImpl) _then) - : super(_value, _then); - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? hasNextPage = freezed, - Object? page = freezed, - }) { - return _then(_$ChapterPageImpl( - hasNextPage: freezed == hasNextPage - ? _value.hasNextPage - : hasNextPage // ignore: cast_nullable_to_non_nullable - as bool?, - page: freezed == page - ? _value._page - : page // ignore: cast_nullable_to_non_nullable - as List?, - )); - } -} - -/// @nodoc -@JsonSerializable() -class _$ChapterPageImpl implements _ChapterPage { - _$ChapterPageImpl({this.hasNextPage, final List? page}) - : _page = page; - - factory _$ChapterPageImpl.fromJson(Map json) => - _$$ChapterPageImplFromJson(json); - - @override - final bool? hasNextPage; - final List? _page; - @override - List? get page { - final value = _page; - if (value == null) return null; - if (_page is EqualUnmodifiableListView) return _page; - // ignore: implicit_dynamic_type - return EqualUnmodifiableListView(value); - } - - @override - String toString() { - return 'ChapterPage(hasNextPage: $hasNextPage, page: $page)'; - } - - @override - bool operator ==(dynamic other) { - return identical(this, other) || - (other.runtimeType == runtimeType && - other is _$ChapterPageImpl && - (identical(other.hasNextPage, hasNextPage) || - other.hasNextPage == hasNextPage) && - const DeepCollectionEquality().equals(other._page, _page)); - } - - @JsonKey(ignore: true) - @override - int get hashCode => Object.hash( - runtimeType, hasNextPage, const DeepCollectionEquality().hash(_page)); - - @JsonKey(ignore: true) - @override - @pragma('vm:prefer-inline') - _$$ChapterPageImplCopyWith<_$ChapterPageImpl> get copyWith => - __$$ChapterPageImplCopyWithImpl<_$ChapterPageImpl>(this, _$identity); - - @override - Map toJson() { - return _$$ChapterPageImplToJson( - this, - ); - } -} - -abstract class _ChapterPage implements ChapterPage { - factory _ChapterPage( - {final bool? hasNextPage, - final List? page}) = _$ChapterPageImpl; - - factory _ChapterPage.fromJson(Map json) = - _$ChapterPageImpl.fromJson; - - @override - bool? get hasNextPage; - @override - List? get page; - @override - @JsonKey(ignore: true) - _$$ChapterPageImplCopyWith<_$ChapterPageImpl> get copyWith => - throw _privateConstructorUsedError; -} diff --git a/lib/src/features/manga_book/domain/chapter_page/chapter_page_model.g.dart b/lib/src/features/manga_book/domain/chapter_page/chapter_page_model.g.dart deleted file mode 100644 index cdbe439a..00000000 --- a/lib/src/features/manga_book/domain/chapter_page/chapter_page_model.g.dart +++ /dev/null @@ -1,39 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'chapter_page_model.dart'; - -// ************************************************************************** -// JsonSerializableGenerator -// ************************************************************************** - -_$ChapterMangaPairImpl _$$ChapterMangaPairImplFromJson( - Map json) => - _$ChapterMangaPairImpl( - chapter: json['chapter'] == null - ? null - : Chapter.fromJson(json['chapter'] as Map), - manga: json['manga'] == null - ? null - : Manga.fromJson(json['manga'] as Map), - ); - -Map _$$ChapterMangaPairImplToJson( - _$ChapterMangaPairImpl instance) => - { - 'chapter': instance.chapter?.toJson(), - 'manga': instance.manga?.toJson(), - }; - -_$ChapterPageImpl _$$ChapterPageImplFromJson(Map json) => - _$ChapterPageImpl( - hasNextPage: json['hasNextPage'] as bool?, - page: (json['page'] as List?) - ?.map((e) => ChapterMangaPair.fromJson(e as Map)) - .toList(), - ); - -Map _$$ChapterPageImplToJson(_$ChapterPageImpl instance) => - { - 'hasNextPage': instance.hasNextPage, - 'page': instance.page?.map((e) => e.toJson()).toList(), - }; diff --git a/lib/src/features/manga_book/domain/chapter_patch/chapter_put_model.dart b/lib/src/features/manga_book/domain/chapter_patch/chapter_put_model.dart deleted file mode 100644 index 28ef966b..00000000 --- a/lib/src/features/manga_book/domain/chapter_patch/chapter_put_model.dart +++ /dev/null @@ -1,23 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:freezed_annotation/freezed_annotation.dart'; - -part 'chapter_put_model.freezed.dart'; -part 'chapter_put_model.g.dart'; - -@freezed -class ChapterPut with _$ChapterPut { - factory ChapterPut({ - bool? read, - bool? bookmarked, - bool? markPrevRead, - int? lastPageRead, - }) = _ChapterPut; - - factory ChapterPut.fromJson(Map json) => - _$ChapterPutFromJson(json); -} diff --git a/lib/src/features/manga_book/domain/chapter_patch/chapter_put_model.freezed.dart b/lib/src/features/manga_book/domain/chapter_patch/chapter_put_model.freezed.dart deleted file mode 100644 index f9bfe1d2..00000000 --- a/lib/src/features/manga_book/domain/chapter_patch/chapter_put_model.freezed.dart +++ /dev/null @@ -1,210 +0,0 @@ -// coverage:ignore-file -// GENERATED CODE - DO NOT MODIFY BY HAND -// ignore_for_file: type=lint -// ignore_for_file: unused_element, deprecated_member_use, deprecated_member_use_from_same_package, use_function_type_syntax_for_parameters, unnecessary_const, avoid_init_to_null, invalid_override_different_default_values_named, prefer_expression_function_bodies, annotate_overrides, invalid_annotation_target, unnecessary_question_mark - -part of 'chapter_put_model.dart'; - -// ************************************************************************** -// FreezedGenerator -// ************************************************************************** - -T _$identity(T value) => value; - -final _privateConstructorUsedError = UnsupportedError( - 'It seems like you constructed your class using `MyClass._()`. This constructor is only meant to be used by freezed and you are not supposed to need it nor use it.\nPlease check the documentation here for more information: https://github.com/rrousselGit/freezed#custom-getters-and-methods'); - -ChapterPut _$ChapterPutFromJson(Map json) { - return _ChapterPut.fromJson(json); -} - -/// @nodoc -mixin _$ChapterPut { - bool? get read => throw _privateConstructorUsedError; - bool? get bookmarked => throw _privateConstructorUsedError; - bool? get markPrevRead => throw _privateConstructorUsedError; - int? get lastPageRead => throw _privateConstructorUsedError; - - Map toJson() => throw _privateConstructorUsedError; - @JsonKey(ignore: true) - $ChapterPutCopyWith get copyWith => - throw _privateConstructorUsedError; -} - -/// @nodoc -abstract class $ChapterPutCopyWith<$Res> { - factory $ChapterPutCopyWith( - ChapterPut value, $Res Function(ChapterPut) then) = - _$ChapterPutCopyWithImpl<$Res, ChapterPut>; - @useResult - $Res call( - {bool? read, bool? bookmarked, bool? markPrevRead, int? lastPageRead}); -} - -/// @nodoc -class _$ChapterPutCopyWithImpl<$Res, $Val extends ChapterPut> - implements $ChapterPutCopyWith<$Res> { - _$ChapterPutCopyWithImpl(this._value, this._then); - - // ignore: unused_field - final $Val _value; - // ignore: unused_field - final $Res Function($Val) _then; - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? read = freezed, - Object? bookmarked = freezed, - Object? markPrevRead = freezed, - Object? lastPageRead = freezed, - }) { - return _then(_value.copyWith( - read: freezed == read - ? _value.read - : read // ignore: cast_nullable_to_non_nullable - as bool?, - bookmarked: freezed == bookmarked - ? _value.bookmarked - : bookmarked // ignore: cast_nullable_to_non_nullable - as bool?, - markPrevRead: freezed == markPrevRead - ? _value.markPrevRead - : markPrevRead // ignore: cast_nullable_to_non_nullable - as bool?, - lastPageRead: freezed == lastPageRead - ? _value.lastPageRead - : lastPageRead // ignore: cast_nullable_to_non_nullable - as int?, - ) as $Val); - } -} - -/// @nodoc -abstract class _$$ChapterPutImplCopyWith<$Res> - implements $ChapterPutCopyWith<$Res> { - factory _$$ChapterPutImplCopyWith( - _$ChapterPutImpl value, $Res Function(_$ChapterPutImpl) then) = - __$$ChapterPutImplCopyWithImpl<$Res>; - @override - @useResult - $Res call( - {bool? read, bool? bookmarked, bool? markPrevRead, int? lastPageRead}); -} - -/// @nodoc -class __$$ChapterPutImplCopyWithImpl<$Res> - extends _$ChapterPutCopyWithImpl<$Res, _$ChapterPutImpl> - implements _$$ChapterPutImplCopyWith<$Res> { - __$$ChapterPutImplCopyWithImpl( - _$ChapterPutImpl _value, $Res Function(_$ChapterPutImpl) _then) - : super(_value, _then); - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? read = freezed, - Object? bookmarked = freezed, - Object? markPrevRead = freezed, - Object? lastPageRead = freezed, - }) { - return _then(_$ChapterPutImpl( - read: freezed == read - ? _value.read - : read // ignore: cast_nullable_to_non_nullable - as bool?, - bookmarked: freezed == bookmarked - ? _value.bookmarked - : bookmarked // ignore: cast_nullable_to_non_nullable - as bool?, - markPrevRead: freezed == markPrevRead - ? _value.markPrevRead - : markPrevRead // ignore: cast_nullable_to_non_nullable - as bool?, - lastPageRead: freezed == lastPageRead - ? _value.lastPageRead - : lastPageRead // ignore: cast_nullable_to_non_nullable - as int?, - )); - } -} - -/// @nodoc -@JsonSerializable() -class _$ChapterPutImpl implements _ChapterPut { - _$ChapterPutImpl( - {this.read, this.bookmarked, this.markPrevRead, this.lastPageRead}); - - factory _$ChapterPutImpl.fromJson(Map json) => - _$$ChapterPutImplFromJson(json); - - @override - final bool? read; - @override - final bool? bookmarked; - @override - final bool? markPrevRead; - @override - final int? lastPageRead; - - @override - String toString() { - return 'ChapterPut(read: $read, bookmarked: $bookmarked, markPrevRead: $markPrevRead, lastPageRead: $lastPageRead)'; - } - - @override - bool operator ==(dynamic other) { - return identical(this, other) || - (other.runtimeType == runtimeType && - other is _$ChapterPutImpl && - (identical(other.read, read) || other.read == read) && - (identical(other.bookmarked, bookmarked) || - other.bookmarked == bookmarked) && - (identical(other.markPrevRead, markPrevRead) || - other.markPrevRead == markPrevRead) && - (identical(other.lastPageRead, lastPageRead) || - other.lastPageRead == lastPageRead)); - } - - @JsonKey(ignore: true) - @override - int get hashCode => - Object.hash(runtimeType, read, bookmarked, markPrevRead, lastPageRead); - - @JsonKey(ignore: true) - @override - @pragma('vm:prefer-inline') - _$$ChapterPutImplCopyWith<_$ChapterPutImpl> get copyWith => - __$$ChapterPutImplCopyWithImpl<_$ChapterPutImpl>(this, _$identity); - - @override - Map toJson() { - return _$$ChapterPutImplToJson( - this, - ); - } -} - -abstract class _ChapterPut implements ChapterPut { - factory _ChapterPut( - {final bool? read, - final bool? bookmarked, - final bool? markPrevRead, - final int? lastPageRead}) = _$ChapterPutImpl; - - factory _ChapterPut.fromJson(Map json) = - _$ChapterPutImpl.fromJson; - - @override - bool? get read; - @override - bool? get bookmarked; - @override - bool? get markPrevRead; - @override - int? get lastPageRead; - @override - @JsonKey(ignore: true) - _$$ChapterPutImplCopyWith<_$ChapterPutImpl> get copyWith => - throw _privateConstructorUsedError; -} diff --git a/lib/src/features/manga_book/domain/chapter_patch/chapter_put_model.g.dart b/lib/src/features/manga_book/domain/chapter_patch/chapter_put_model.g.dart deleted file mode 100644 index 84e11d0c..00000000 --- a/lib/src/features/manga_book/domain/chapter_patch/chapter_put_model.g.dart +++ /dev/null @@ -1,23 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'chapter_put_model.dart'; - -// ************************************************************************** -// JsonSerializableGenerator -// ************************************************************************** - -_$ChapterPutImpl _$$ChapterPutImplFromJson(Map json) => - _$ChapterPutImpl( - read: json['read'] as bool?, - bookmarked: json['bookmarked'] as bool?, - markPrevRead: json['markPrevRead'] as bool?, - lastPageRead: json['lastPageRead'] as int?, - ); - -Map _$$ChapterPutImplToJson(_$ChapterPutImpl instance) => - { - 'read': instance.read, - 'bookmarked': instance.bookmarked, - 'markPrevRead': instance.markPrevRead, - 'lastPageRead': instance.lastPageRead, - }; diff --git a/lib/src/features/manga_book/domain/downloads/downloads_model.dart b/lib/src/features/manga_book/domain/downloads/downloads_model.dart deleted file mode 100644 index a5643dc8..00000000 --- a/lib/src/features/manga_book/domain/downloads/downloads_model.dart +++ /dev/null @@ -1,23 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:freezed_annotation/freezed_annotation.dart'; - -import '../downloads_queue/downloads_queue_model.dart'; - -part 'downloads_model.freezed.dart'; -part 'downloads_model.g.dart'; - -@freezed -class Downloads with _$Downloads { - factory Downloads({ - List? queue, - String? status, - }) = _Downloads; - - factory Downloads.fromJson(Map json) => - _$DownloadsFromJson(json); -} diff --git a/lib/src/features/manga_book/domain/downloads/downloads_model.freezed.dart b/lib/src/features/manga_book/domain/downloads/downloads_model.freezed.dart deleted file mode 100644 index 429f28ef..00000000 --- a/lib/src/features/manga_book/domain/downloads/downloads_model.freezed.dart +++ /dev/null @@ -1,178 +0,0 @@ -// coverage:ignore-file -// GENERATED CODE - DO NOT MODIFY BY HAND -// ignore_for_file: type=lint -// ignore_for_file: unused_element, deprecated_member_use, deprecated_member_use_from_same_package, use_function_type_syntax_for_parameters, unnecessary_const, avoid_init_to_null, invalid_override_different_default_values_named, prefer_expression_function_bodies, annotate_overrides, invalid_annotation_target, unnecessary_question_mark - -part of 'downloads_model.dart'; - -// ************************************************************************** -// FreezedGenerator -// ************************************************************************** - -T _$identity(T value) => value; - -final _privateConstructorUsedError = UnsupportedError( - 'It seems like you constructed your class using `MyClass._()`. This constructor is only meant to be used by freezed and you are not supposed to need it nor use it.\nPlease check the documentation here for more information: https://github.com/rrousselGit/freezed#custom-getters-and-methods'); - -Downloads _$DownloadsFromJson(Map json) { - return _Downloads.fromJson(json); -} - -/// @nodoc -mixin _$Downloads { - List? get queue => throw _privateConstructorUsedError; - String? get status => throw _privateConstructorUsedError; - - Map toJson() => throw _privateConstructorUsedError; - @JsonKey(ignore: true) - $DownloadsCopyWith get copyWith => - throw _privateConstructorUsedError; -} - -/// @nodoc -abstract class $DownloadsCopyWith<$Res> { - factory $DownloadsCopyWith(Downloads value, $Res Function(Downloads) then) = - _$DownloadsCopyWithImpl<$Res, Downloads>; - @useResult - $Res call({List? queue, String? status}); -} - -/// @nodoc -class _$DownloadsCopyWithImpl<$Res, $Val extends Downloads> - implements $DownloadsCopyWith<$Res> { - _$DownloadsCopyWithImpl(this._value, this._then); - - // ignore: unused_field - final $Val _value; - // ignore: unused_field - final $Res Function($Val) _then; - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? queue = freezed, - Object? status = freezed, - }) { - return _then(_value.copyWith( - queue: freezed == queue - ? _value.queue - : queue // ignore: cast_nullable_to_non_nullable - as List?, - status: freezed == status - ? _value.status - : status // ignore: cast_nullable_to_non_nullable - as String?, - ) as $Val); - } -} - -/// @nodoc -abstract class _$$DownloadsImplCopyWith<$Res> - implements $DownloadsCopyWith<$Res> { - factory _$$DownloadsImplCopyWith( - _$DownloadsImpl value, $Res Function(_$DownloadsImpl) then) = - __$$DownloadsImplCopyWithImpl<$Res>; - @override - @useResult - $Res call({List? queue, String? status}); -} - -/// @nodoc -class __$$DownloadsImplCopyWithImpl<$Res> - extends _$DownloadsCopyWithImpl<$Res, _$DownloadsImpl> - implements _$$DownloadsImplCopyWith<$Res> { - __$$DownloadsImplCopyWithImpl( - _$DownloadsImpl _value, $Res Function(_$DownloadsImpl) _then) - : super(_value, _then); - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? queue = freezed, - Object? status = freezed, - }) { - return _then(_$DownloadsImpl( - queue: freezed == queue - ? _value._queue - : queue // ignore: cast_nullable_to_non_nullable - as List?, - status: freezed == status - ? _value.status - : status // ignore: cast_nullable_to_non_nullable - as String?, - )); - } -} - -/// @nodoc -@JsonSerializable() -class _$DownloadsImpl implements _Downloads { - _$DownloadsImpl({final List? queue, this.status}) - : _queue = queue; - - factory _$DownloadsImpl.fromJson(Map json) => - _$$DownloadsImplFromJson(json); - - final List? _queue; - @override - List? get queue { - final value = _queue; - if (value == null) return null; - if (_queue is EqualUnmodifiableListView) return _queue; - // ignore: implicit_dynamic_type - return EqualUnmodifiableListView(value); - } - - @override - final String? status; - - @override - String toString() { - return 'Downloads(queue: $queue, status: $status)'; - } - - @override - bool operator ==(dynamic other) { - return identical(this, other) || - (other.runtimeType == runtimeType && - other is _$DownloadsImpl && - const DeepCollectionEquality().equals(other._queue, _queue) && - (identical(other.status, status) || other.status == status)); - } - - @JsonKey(ignore: true) - @override - int get hashCode => Object.hash( - runtimeType, const DeepCollectionEquality().hash(_queue), status); - - @JsonKey(ignore: true) - @override - @pragma('vm:prefer-inline') - _$$DownloadsImplCopyWith<_$DownloadsImpl> get copyWith => - __$$DownloadsImplCopyWithImpl<_$DownloadsImpl>(this, _$identity); - - @override - Map toJson() { - return _$$DownloadsImplToJson( - this, - ); - } -} - -abstract class _Downloads implements Downloads { - factory _Downloads( - {final List? queue, - final String? status}) = _$DownloadsImpl; - - factory _Downloads.fromJson(Map json) = - _$DownloadsImpl.fromJson; - - @override - List? get queue; - @override - String? get status; - @override - @JsonKey(ignore: true) - _$$DownloadsImplCopyWith<_$DownloadsImpl> get copyWith => - throw _privateConstructorUsedError; -} diff --git a/lib/src/features/manga_book/domain/downloads/downloads_model.g.dart b/lib/src/features/manga_book/domain/downloads/downloads_model.g.dart deleted file mode 100644 index d89cc904..00000000 --- a/lib/src/features/manga_book/domain/downloads/downloads_model.g.dart +++ /dev/null @@ -1,21 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'downloads_model.dart'; - -// ************************************************************************** -// JsonSerializableGenerator -// ************************************************************************** - -_$DownloadsImpl _$$DownloadsImplFromJson(Map json) => - _$DownloadsImpl( - queue: (json['queue'] as List?) - ?.map((e) => DownloadsQueue.fromJson(e as Map)) - .toList(), - status: json['status'] as String?, - ); - -Map _$$DownloadsImplToJson(_$DownloadsImpl instance) => - { - 'queue': instance.queue?.map((e) => e.toJson()).toList(), - 'status': instance.status, - }; diff --git a/lib/src/features/manga_book/domain/downloads_queue/downloads_queue_model.dart b/lib/src/features/manga_book/domain/downloads_queue/downloads_queue_model.dart deleted file mode 100644 index b807d7d9..00000000 --- a/lib/src/features/manga_book/domain/downloads_queue/downloads_queue_model.dart +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:freezed_annotation/freezed_annotation.dart'; - -import '../chapter/chapter_model.dart'; -import '../manga/manga_model.dart'; - -part 'downloads_queue_model.freezed.dart'; -part 'downloads_queue_model.g.dart'; - -@freezed -class DownloadsQueue with _$DownloadsQueue { - factory DownloadsQueue({ - Chapter? chapter, - int? chapterIndex, - Manga? manga, - int? mangaId, - double? progress, - String? state, - int? tries, - }) = _DownloadsQueue; - - factory DownloadsQueue.fromJson(Map json) => - _$DownloadsQueueFromJson(json); -} diff --git a/lib/src/features/manga_book/domain/downloads_queue/downloads_queue_model.freezed.dart b/lib/src/features/manga_book/domain/downloads_queue/downloads_queue_model.freezed.dart deleted file mode 100644 index 175360e0..00000000 --- a/lib/src/features/manga_book/domain/downloads_queue/downloads_queue_model.freezed.dart +++ /dev/null @@ -1,311 +0,0 @@ -// coverage:ignore-file -// GENERATED CODE - DO NOT MODIFY BY HAND -// ignore_for_file: type=lint -// ignore_for_file: unused_element, deprecated_member_use, deprecated_member_use_from_same_package, use_function_type_syntax_for_parameters, unnecessary_const, avoid_init_to_null, invalid_override_different_default_values_named, prefer_expression_function_bodies, annotate_overrides, invalid_annotation_target, unnecessary_question_mark - -part of 'downloads_queue_model.dart'; - -// ************************************************************************** -// FreezedGenerator -// ************************************************************************** - -T _$identity(T value) => value; - -final _privateConstructorUsedError = UnsupportedError( - 'It seems like you constructed your class using `MyClass._()`. This constructor is only meant to be used by freezed and you are not supposed to need it nor use it.\nPlease check the documentation here for more information: https://github.com/rrousselGit/freezed#custom-getters-and-methods'); - -DownloadsQueue _$DownloadsQueueFromJson(Map json) { - return _DownloadsQueue.fromJson(json); -} - -/// @nodoc -mixin _$DownloadsQueue { - Chapter? get chapter => throw _privateConstructorUsedError; - int? get chapterIndex => throw _privateConstructorUsedError; - Manga? get manga => throw _privateConstructorUsedError; - int? get mangaId => throw _privateConstructorUsedError; - double? get progress => throw _privateConstructorUsedError; - String? get state => throw _privateConstructorUsedError; - int? get tries => throw _privateConstructorUsedError; - - Map toJson() => throw _privateConstructorUsedError; - @JsonKey(ignore: true) - $DownloadsQueueCopyWith get copyWith => - throw _privateConstructorUsedError; -} - -/// @nodoc -abstract class $DownloadsQueueCopyWith<$Res> { - factory $DownloadsQueueCopyWith( - DownloadsQueue value, $Res Function(DownloadsQueue) then) = - _$DownloadsQueueCopyWithImpl<$Res, DownloadsQueue>; - @useResult - $Res call( - {Chapter? chapter, - int? chapterIndex, - Manga? manga, - int? mangaId, - double? progress, - String? state, - int? tries}); - - $ChapterCopyWith<$Res>? get chapter; - $MangaCopyWith<$Res>? get manga; -} - -/// @nodoc -class _$DownloadsQueueCopyWithImpl<$Res, $Val extends DownloadsQueue> - implements $DownloadsQueueCopyWith<$Res> { - _$DownloadsQueueCopyWithImpl(this._value, this._then); - - // ignore: unused_field - final $Val _value; - // ignore: unused_field - final $Res Function($Val) _then; - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? chapter = freezed, - Object? chapterIndex = freezed, - Object? manga = freezed, - Object? mangaId = freezed, - Object? progress = freezed, - Object? state = freezed, - Object? tries = freezed, - }) { - return _then(_value.copyWith( - chapter: freezed == chapter - ? _value.chapter - : chapter // ignore: cast_nullable_to_non_nullable - as Chapter?, - chapterIndex: freezed == chapterIndex - ? _value.chapterIndex - : chapterIndex // ignore: cast_nullable_to_non_nullable - as int?, - manga: freezed == manga - ? _value.manga - : manga // ignore: cast_nullable_to_non_nullable - as Manga?, - mangaId: freezed == mangaId - ? _value.mangaId - : mangaId // ignore: cast_nullable_to_non_nullable - as int?, - progress: freezed == progress - ? _value.progress - : progress // ignore: cast_nullable_to_non_nullable - as double?, - state: freezed == state - ? _value.state - : state // ignore: cast_nullable_to_non_nullable - as String?, - tries: freezed == tries - ? _value.tries - : tries // ignore: cast_nullable_to_non_nullable - as int?, - ) as $Val); - } - - @override - @pragma('vm:prefer-inline') - $ChapterCopyWith<$Res>? get chapter { - if (_value.chapter == null) { - return null; - } - - return $ChapterCopyWith<$Res>(_value.chapter!, (value) { - return _then(_value.copyWith(chapter: value) as $Val); - }); - } - - @override - @pragma('vm:prefer-inline') - $MangaCopyWith<$Res>? get manga { - if (_value.manga == null) { - return null; - } - - return $MangaCopyWith<$Res>(_value.manga!, (value) { - return _then(_value.copyWith(manga: value) as $Val); - }); - } -} - -/// @nodoc -abstract class _$$DownloadsQueueImplCopyWith<$Res> - implements $DownloadsQueueCopyWith<$Res> { - factory _$$DownloadsQueueImplCopyWith(_$DownloadsQueueImpl value, - $Res Function(_$DownloadsQueueImpl) then) = - __$$DownloadsQueueImplCopyWithImpl<$Res>; - @override - @useResult - $Res call( - {Chapter? chapter, - int? chapterIndex, - Manga? manga, - int? mangaId, - double? progress, - String? state, - int? tries}); - - @override - $ChapterCopyWith<$Res>? get chapter; - @override - $MangaCopyWith<$Res>? get manga; -} - -/// @nodoc -class __$$DownloadsQueueImplCopyWithImpl<$Res> - extends _$DownloadsQueueCopyWithImpl<$Res, _$DownloadsQueueImpl> - implements _$$DownloadsQueueImplCopyWith<$Res> { - __$$DownloadsQueueImplCopyWithImpl( - _$DownloadsQueueImpl _value, $Res Function(_$DownloadsQueueImpl) _then) - : super(_value, _then); - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? chapter = freezed, - Object? chapterIndex = freezed, - Object? manga = freezed, - Object? mangaId = freezed, - Object? progress = freezed, - Object? state = freezed, - Object? tries = freezed, - }) { - return _then(_$DownloadsQueueImpl( - chapter: freezed == chapter - ? _value.chapter - : chapter // ignore: cast_nullable_to_non_nullable - as Chapter?, - chapterIndex: freezed == chapterIndex - ? _value.chapterIndex - : chapterIndex // ignore: cast_nullable_to_non_nullable - as int?, - manga: freezed == manga - ? _value.manga - : manga // ignore: cast_nullable_to_non_nullable - as Manga?, - mangaId: freezed == mangaId - ? _value.mangaId - : mangaId // ignore: cast_nullable_to_non_nullable - as int?, - progress: freezed == progress - ? _value.progress - : progress // ignore: cast_nullable_to_non_nullable - as double?, - state: freezed == state - ? _value.state - : state // ignore: cast_nullable_to_non_nullable - as String?, - tries: freezed == tries - ? _value.tries - : tries // ignore: cast_nullable_to_non_nullable - as int?, - )); - } -} - -/// @nodoc -@JsonSerializable() -class _$DownloadsQueueImpl implements _DownloadsQueue { - _$DownloadsQueueImpl( - {this.chapter, - this.chapterIndex, - this.manga, - this.mangaId, - this.progress, - this.state, - this.tries}); - - factory _$DownloadsQueueImpl.fromJson(Map json) => - _$$DownloadsQueueImplFromJson(json); - - @override - final Chapter? chapter; - @override - final int? chapterIndex; - @override - final Manga? manga; - @override - final int? mangaId; - @override - final double? progress; - @override - final String? state; - @override - final int? tries; - - @override - String toString() { - return 'DownloadsQueue(chapter: $chapter, chapterIndex: $chapterIndex, manga: $manga, mangaId: $mangaId, progress: $progress, state: $state, tries: $tries)'; - } - - @override - bool operator ==(dynamic other) { - return identical(this, other) || - (other.runtimeType == runtimeType && - other is _$DownloadsQueueImpl && - (identical(other.chapter, chapter) || other.chapter == chapter) && - (identical(other.chapterIndex, chapterIndex) || - other.chapterIndex == chapterIndex) && - (identical(other.manga, manga) || other.manga == manga) && - (identical(other.mangaId, mangaId) || other.mangaId == mangaId) && - (identical(other.progress, progress) || - other.progress == progress) && - (identical(other.state, state) || other.state == state) && - (identical(other.tries, tries) || other.tries == tries)); - } - - @JsonKey(ignore: true) - @override - int get hashCode => Object.hash(runtimeType, chapter, chapterIndex, manga, - mangaId, progress, state, tries); - - @JsonKey(ignore: true) - @override - @pragma('vm:prefer-inline') - _$$DownloadsQueueImplCopyWith<_$DownloadsQueueImpl> get copyWith => - __$$DownloadsQueueImplCopyWithImpl<_$DownloadsQueueImpl>( - this, _$identity); - - @override - Map toJson() { - return _$$DownloadsQueueImplToJson( - this, - ); - } -} - -abstract class _DownloadsQueue implements DownloadsQueue { - factory _DownloadsQueue( - {final Chapter? chapter, - final int? chapterIndex, - final Manga? manga, - final int? mangaId, - final double? progress, - final String? state, - final int? tries}) = _$DownloadsQueueImpl; - - factory _DownloadsQueue.fromJson(Map json) = - _$DownloadsQueueImpl.fromJson; - - @override - Chapter? get chapter; - @override - int? get chapterIndex; - @override - Manga? get manga; - @override - int? get mangaId; - @override - double? get progress; - @override - String? get state; - @override - int? get tries; - @override - @JsonKey(ignore: true) - _$$DownloadsQueueImplCopyWith<_$DownloadsQueueImpl> get copyWith => - throw _privateConstructorUsedError; -} diff --git a/lib/src/features/manga_book/domain/downloads_queue/downloads_queue_model.g.dart b/lib/src/features/manga_book/domain/downloads_queue/downloads_queue_model.g.dart deleted file mode 100644 index 9af8224d..00000000 --- a/lib/src/features/manga_book/domain/downloads_queue/downloads_queue_model.g.dart +++ /dev/null @@ -1,34 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'downloads_queue_model.dart'; - -// ************************************************************************** -// JsonSerializableGenerator -// ************************************************************************** - -_$DownloadsQueueImpl _$$DownloadsQueueImplFromJson(Map json) => - _$DownloadsQueueImpl( - chapter: json['chapter'] == null - ? null - : Chapter.fromJson(json['chapter'] as Map), - chapterIndex: json['chapterIndex'] as int?, - manga: json['manga'] == null - ? null - : Manga.fromJson(json['manga'] as Map), - mangaId: json['mangaId'] as int?, - progress: (json['progress'] as num?)?.toDouble(), - state: json['state'] as String?, - tries: json['tries'] as int?, - ); - -Map _$$DownloadsQueueImplToJson( - _$DownloadsQueueImpl instance) => - { - 'chapter': instance.chapter?.toJson(), - 'chapterIndex': instance.chapterIndex, - 'manga': instance.manga?.toJson(), - 'mangaId': instance.mangaId, - 'progress': instance.progress, - 'state': instance.state, - 'tries': instance.tries, - }; diff --git a/lib/src/features/manga_book/domain/manga/manga_model.dart b/lib/src/features/manga_book/domain/manga/manga_model.dart deleted file mode 100644 index 83670faa..00000000 --- a/lib/src/features/manga_book/domain/manga/manga_model.dart +++ /dev/null @@ -1,111 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:freezed_annotation/freezed_annotation.dart'; - -import '../../../../constants/enum.dart'; -import '../../../../utils/extensions/custom_extensions.dart'; -import '../../../browse_center/domain/source/source_model.dart'; -import '../chapter/chapter_model.dart'; - -part 'manga_model.freezed.dart'; -part 'manga_model.g.dart'; - -@freezed -class Manga with _$Manga { - Manga._(); - factory Manga({ - String? artist, - String? author, - String? description, - int? downloadCount, - int? chapterCount, - int? lastReadAt, - Chapter? lastChapterRead, - bool? freshData, - List? genre, - bool? inLibrary, - int? id, - int? inLibraryAt, - bool? initialized, - String? realUrl, - Source? source, - String? sourceId, - @JsonKey(fromJson: MangaStatus.fromJson, toJson: MangaStatus.toJson) - MangaStatus? status, - String? thumbnailUrl, - int? thumbnailUrlLastFetched, - String? title, - int? unreadCount, - int? lastFetchedAt, - int? chaptersLastFetchedAt, - String? url, - MangaMeta? meta, - }) = _Manga; - - factory Manga.fromJson(Map json) => _$MangaFromJson(json); - - bool genreMatches( - List? mangaGenreList, List? queryGenreList) { - Set? mangaSet = mangaGenreList?.map((e) => e.toLowerCase()).toSet(); - Set? querySet = - queryGenreList?.map((e) => e.toLowerCase().trim()).toSet(); - return (mangaSet?.containsAll(querySet ?? {})).ifNull(true); - } - - bool query([String? query]) { - return title.query(query) || - author.query(query) || - genreMatches(genre, query?.split(',')); - } -} - -@freezed -class MangaMeta with _$MangaMeta { - factory MangaMeta({ - @JsonKey( - name: "flutter_readerNavigationLayoutInvert", - fromJson: MangaMeta.fromJsonToBool, - ) - bool? invertTap, - @JsonKey(name: "flutter_readerNavigationLayout") - ReaderNavigationLayout? readerNavigationLayout, - @JsonKey(name: "flutter_readerMode") ReaderMode? readerMode, - @JsonKey( - name: "flutter_readerPadding", - fromJson: MangaMeta.fromJsonToDouble, - ) - double? readerPadding, - @JsonKey( - name: "flutter_readerMagnifierSize", - fromJson: MangaMeta.fromJsonToDouble, - ) - double? readerMagnifierSize, - @JsonKey(name: "flutter_scanlator") String? scanlator, - }) = _MangaMeta; - - static bool? fromJsonToBool(dynamic val) => val != null && val is String - ? val.toLowerCase().compareTo(true.toString()) == 0 - : null; - - static double? fromJsonToDouble(dynamic val) => - val != null && val is String ? double.parse(val) : null; - factory MangaMeta.fromJson(Map json) => - _$MangaMetaFromJson(json); -} - -enum MangaMetaKeys { - invertTap("flutter_readerNavigationLayoutInvert"), - readerNavigationLayout("flutter_readerNavigationLayout"), - readerMode("flutter_readerMode"), - readerPadding("flutter_readerPadding"), - readerMagnifierSize("flutter_readerMagnifierSize"), - scanlator("flutter_scanlator"), - ; - - const MangaMetaKeys(this.key); - final String key; -} diff --git a/lib/src/features/manga_book/domain/manga/manga_model.freezed.dart b/lib/src/features/manga_book/domain/manga/manga_model.freezed.dart deleted file mode 100644 index 4b93f7e9..00000000 --- a/lib/src/features/manga_book/domain/manga/manga_model.freezed.dart +++ /dev/null @@ -1,1056 +0,0 @@ -// coverage:ignore-file -// GENERATED CODE - DO NOT MODIFY BY HAND -// ignore_for_file: type=lint -// ignore_for_file: unused_element, deprecated_member_use, deprecated_member_use_from_same_package, use_function_type_syntax_for_parameters, unnecessary_const, avoid_init_to_null, invalid_override_different_default_values_named, prefer_expression_function_bodies, annotate_overrides, invalid_annotation_target, unnecessary_question_mark - -part of 'manga_model.dart'; - -// ************************************************************************** -// FreezedGenerator -// ************************************************************************** - -T _$identity(T value) => value; - -final _privateConstructorUsedError = UnsupportedError( - 'It seems like you constructed your class using `MyClass._()`. This constructor is only meant to be used by freezed and you are not supposed to need it nor use it.\nPlease check the documentation here for more information: https://github.com/rrousselGit/freezed#custom-getters-and-methods'); - -Manga _$MangaFromJson(Map json) { - return _Manga.fromJson(json); -} - -/// @nodoc -mixin _$Manga { - String? get artist => throw _privateConstructorUsedError; - String? get author => throw _privateConstructorUsedError; - String? get description => throw _privateConstructorUsedError; - int? get downloadCount => throw _privateConstructorUsedError; - int? get chapterCount => throw _privateConstructorUsedError; - int? get lastReadAt => throw _privateConstructorUsedError; - Chapter? get lastChapterRead => throw _privateConstructorUsedError; - bool? get freshData => throw _privateConstructorUsedError; - List? get genre => throw _privateConstructorUsedError; - bool? get inLibrary => throw _privateConstructorUsedError; - int? get id => throw _privateConstructorUsedError; - int? get inLibraryAt => throw _privateConstructorUsedError; - bool? get initialized => throw _privateConstructorUsedError; - String? get realUrl => throw _privateConstructorUsedError; - Source? get source => throw _privateConstructorUsedError; - String? get sourceId => throw _privateConstructorUsedError; - @JsonKey(fromJson: MangaStatus.fromJson, toJson: MangaStatus.toJson) - MangaStatus? get status => throw _privateConstructorUsedError; - String? get thumbnailUrl => throw _privateConstructorUsedError; - int? get thumbnailUrlLastFetched => throw _privateConstructorUsedError; - String? get title => throw _privateConstructorUsedError; - int? get unreadCount => throw _privateConstructorUsedError; - int? get lastFetchedAt => throw _privateConstructorUsedError; - int? get chaptersLastFetchedAt => throw _privateConstructorUsedError; - String? get url => throw _privateConstructorUsedError; - MangaMeta? get meta => throw _privateConstructorUsedError; - - Map toJson() => throw _privateConstructorUsedError; - @JsonKey(ignore: true) - $MangaCopyWith get copyWith => throw _privateConstructorUsedError; -} - -/// @nodoc -abstract class $MangaCopyWith<$Res> { - factory $MangaCopyWith(Manga value, $Res Function(Manga) then) = - _$MangaCopyWithImpl<$Res, Manga>; - @useResult - $Res call( - {String? artist, - String? author, - String? description, - int? downloadCount, - int? chapterCount, - int? lastReadAt, - Chapter? lastChapterRead, - bool? freshData, - List? genre, - bool? inLibrary, - int? id, - int? inLibraryAt, - bool? initialized, - String? realUrl, - Source? source, - String? sourceId, - @JsonKey(fromJson: MangaStatus.fromJson, toJson: MangaStatus.toJson) - MangaStatus? status, - String? thumbnailUrl, - int? thumbnailUrlLastFetched, - String? title, - int? unreadCount, - int? lastFetchedAt, - int? chaptersLastFetchedAt, - String? url, - MangaMeta? meta}); - - $ChapterCopyWith<$Res>? get lastChapterRead; - $SourceCopyWith<$Res>? get source; - $MangaMetaCopyWith<$Res>? get meta; -} - -/// @nodoc -class _$MangaCopyWithImpl<$Res, $Val extends Manga> - implements $MangaCopyWith<$Res> { - _$MangaCopyWithImpl(this._value, this._then); - - // ignore: unused_field - final $Val _value; - // ignore: unused_field - final $Res Function($Val) _then; - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? artist = freezed, - Object? author = freezed, - Object? description = freezed, - Object? downloadCount = freezed, - Object? chapterCount = freezed, - Object? lastReadAt = freezed, - Object? lastChapterRead = freezed, - Object? freshData = freezed, - Object? genre = freezed, - Object? inLibrary = freezed, - Object? id = freezed, - Object? inLibraryAt = freezed, - Object? initialized = freezed, - Object? realUrl = freezed, - Object? source = freezed, - Object? sourceId = freezed, - Object? status = freezed, - Object? thumbnailUrl = freezed, - Object? thumbnailUrlLastFetched = freezed, - Object? title = freezed, - Object? unreadCount = freezed, - Object? lastFetchedAt = freezed, - Object? chaptersLastFetchedAt = freezed, - Object? url = freezed, - Object? meta = freezed, - }) { - return _then(_value.copyWith( - artist: freezed == artist - ? _value.artist - : artist // ignore: cast_nullable_to_non_nullable - as String?, - author: freezed == author - ? _value.author - : author // ignore: cast_nullable_to_non_nullable - as String?, - description: freezed == description - ? _value.description - : description // ignore: cast_nullable_to_non_nullable - as String?, - downloadCount: freezed == downloadCount - ? _value.downloadCount - : downloadCount // ignore: cast_nullable_to_non_nullable - as int?, - chapterCount: freezed == chapterCount - ? _value.chapterCount - : chapterCount // ignore: cast_nullable_to_non_nullable - as int?, - lastReadAt: freezed == lastReadAt - ? _value.lastReadAt - : lastReadAt // ignore: cast_nullable_to_non_nullable - as int?, - lastChapterRead: freezed == lastChapterRead - ? _value.lastChapterRead - : lastChapterRead // ignore: cast_nullable_to_non_nullable - as Chapter?, - freshData: freezed == freshData - ? _value.freshData - : freshData // ignore: cast_nullable_to_non_nullable - as bool?, - genre: freezed == genre - ? _value.genre - : genre // ignore: cast_nullable_to_non_nullable - as List?, - inLibrary: freezed == inLibrary - ? _value.inLibrary - : inLibrary // ignore: cast_nullable_to_non_nullable - as bool?, - id: freezed == id - ? _value.id - : id // ignore: cast_nullable_to_non_nullable - as int?, - inLibraryAt: freezed == inLibraryAt - ? _value.inLibraryAt - : inLibraryAt // ignore: cast_nullable_to_non_nullable - as int?, - initialized: freezed == initialized - ? _value.initialized - : initialized // ignore: cast_nullable_to_non_nullable - as bool?, - realUrl: freezed == realUrl - ? _value.realUrl - : realUrl // ignore: cast_nullable_to_non_nullable - as String?, - source: freezed == source - ? _value.source - : source // ignore: cast_nullable_to_non_nullable - as Source?, - sourceId: freezed == sourceId - ? _value.sourceId - : sourceId // ignore: cast_nullable_to_non_nullable - as String?, - status: freezed == status - ? _value.status - : status // ignore: cast_nullable_to_non_nullable - as MangaStatus?, - thumbnailUrl: freezed == thumbnailUrl - ? _value.thumbnailUrl - : thumbnailUrl // ignore: cast_nullable_to_non_nullable - as String?, - thumbnailUrlLastFetched: freezed == thumbnailUrlLastFetched - ? _value.thumbnailUrlLastFetched - : thumbnailUrlLastFetched // ignore: cast_nullable_to_non_nullable - as int?, - title: freezed == title - ? _value.title - : title // ignore: cast_nullable_to_non_nullable - as String?, - unreadCount: freezed == unreadCount - ? _value.unreadCount - : unreadCount // ignore: cast_nullable_to_non_nullable - as int?, - lastFetchedAt: freezed == lastFetchedAt - ? _value.lastFetchedAt - : lastFetchedAt // ignore: cast_nullable_to_non_nullable - as int?, - chaptersLastFetchedAt: freezed == chaptersLastFetchedAt - ? _value.chaptersLastFetchedAt - : chaptersLastFetchedAt // ignore: cast_nullable_to_non_nullable - as int?, - url: freezed == url - ? _value.url - : url // ignore: cast_nullable_to_non_nullable - as String?, - meta: freezed == meta - ? _value.meta - : meta // ignore: cast_nullable_to_non_nullable - as MangaMeta?, - ) as $Val); - } - - @override - @pragma('vm:prefer-inline') - $ChapterCopyWith<$Res>? get lastChapterRead { - if (_value.lastChapterRead == null) { - return null; - } - - return $ChapterCopyWith<$Res>(_value.lastChapterRead!, (value) { - return _then(_value.copyWith(lastChapterRead: value) as $Val); - }); - } - - @override - @pragma('vm:prefer-inline') - $SourceCopyWith<$Res>? get source { - if (_value.source == null) { - return null; - } - - return $SourceCopyWith<$Res>(_value.source!, (value) { - return _then(_value.copyWith(source: value) as $Val); - }); - } - - @override - @pragma('vm:prefer-inline') - $MangaMetaCopyWith<$Res>? get meta { - if (_value.meta == null) { - return null; - } - - return $MangaMetaCopyWith<$Res>(_value.meta!, (value) { - return _then(_value.copyWith(meta: value) as $Val); - }); - } -} - -/// @nodoc -abstract class _$$MangaImplCopyWith<$Res> implements $MangaCopyWith<$Res> { - factory _$$MangaImplCopyWith( - _$MangaImpl value, $Res Function(_$MangaImpl) then) = - __$$MangaImplCopyWithImpl<$Res>; - @override - @useResult - $Res call( - {String? artist, - String? author, - String? description, - int? downloadCount, - int? chapterCount, - int? lastReadAt, - Chapter? lastChapterRead, - bool? freshData, - List? genre, - bool? inLibrary, - int? id, - int? inLibraryAt, - bool? initialized, - String? realUrl, - Source? source, - String? sourceId, - @JsonKey(fromJson: MangaStatus.fromJson, toJson: MangaStatus.toJson) - MangaStatus? status, - String? thumbnailUrl, - int? thumbnailUrlLastFetched, - String? title, - int? unreadCount, - int? lastFetchedAt, - int? chaptersLastFetchedAt, - String? url, - MangaMeta? meta}); - - @override - $ChapterCopyWith<$Res>? get lastChapterRead; - @override - $SourceCopyWith<$Res>? get source; - @override - $MangaMetaCopyWith<$Res>? get meta; -} - -/// @nodoc -class __$$MangaImplCopyWithImpl<$Res> - extends _$MangaCopyWithImpl<$Res, _$MangaImpl> - implements _$$MangaImplCopyWith<$Res> { - __$$MangaImplCopyWithImpl( - _$MangaImpl _value, $Res Function(_$MangaImpl) _then) - : super(_value, _then); - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? artist = freezed, - Object? author = freezed, - Object? description = freezed, - Object? downloadCount = freezed, - Object? chapterCount = freezed, - Object? lastReadAt = freezed, - Object? lastChapterRead = freezed, - Object? freshData = freezed, - Object? genre = freezed, - Object? inLibrary = freezed, - Object? id = freezed, - Object? inLibraryAt = freezed, - Object? initialized = freezed, - Object? realUrl = freezed, - Object? source = freezed, - Object? sourceId = freezed, - Object? status = freezed, - Object? thumbnailUrl = freezed, - Object? thumbnailUrlLastFetched = freezed, - Object? title = freezed, - Object? unreadCount = freezed, - Object? lastFetchedAt = freezed, - Object? chaptersLastFetchedAt = freezed, - Object? url = freezed, - Object? meta = freezed, - }) { - return _then(_$MangaImpl( - artist: freezed == artist - ? _value.artist - : artist // ignore: cast_nullable_to_non_nullable - as String?, - author: freezed == author - ? _value.author - : author // ignore: cast_nullable_to_non_nullable - as String?, - description: freezed == description - ? _value.description - : description // ignore: cast_nullable_to_non_nullable - as String?, - downloadCount: freezed == downloadCount - ? _value.downloadCount - : downloadCount // ignore: cast_nullable_to_non_nullable - as int?, - chapterCount: freezed == chapterCount - ? _value.chapterCount - : chapterCount // ignore: cast_nullable_to_non_nullable - as int?, - lastReadAt: freezed == lastReadAt - ? _value.lastReadAt - : lastReadAt // ignore: cast_nullable_to_non_nullable - as int?, - lastChapterRead: freezed == lastChapterRead - ? _value.lastChapterRead - : lastChapterRead // ignore: cast_nullable_to_non_nullable - as Chapter?, - freshData: freezed == freshData - ? _value.freshData - : freshData // ignore: cast_nullable_to_non_nullable - as bool?, - genre: freezed == genre - ? _value._genre - : genre // ignore: cast_nullable_to_non_nullable - as List?, - inLibrary: freezed == inLibrary - ? _value.inLibrary - : inLibrary // ignore: cast_nullable_to_non_nullable - as bool?, - id: freezed == id - ? _value.id - : id // ignore: cast_nullable_to_non_nullable - as int?, - inLibraryAt: freezed == inLibraryAt - ? _value.inLibraryAt - : inLibraryAt // ignore: cast_nullable_to_non_nullable - as int?, - initialized: freezed == initialized - ? _value.initialized - : initialized // ignore: cast_nullable_to_non_nullable - as bool?, - realUrl: freezed == realUrl - ? _value.realUrl - : realUrl // ignore: cast_nullable_to_non_nullable - as String?, - source: freezed == source - ? _value.source - : source // ignore: cast_nullable_to_non_nullable - as Source?, - sourceId: freezed == sourceId - ? _value.sourceId - : sourceId // ignore: cast_nullable_to_non_nullable - as String?, - status: freezed == status - ? _value.status - : status // ignore: cast_nullable_to_non_nullable - as MangaStatus?, - thumbnailUrl: freezed == thumbnailUrl - ? _value.thumbnailUrl - : thumbnailUrl // ignore: cast_nullable_to_non_nullable - as String?, - thumbnailUrlLastFetched: freezed == thumbnailUrlLastFetched - ? _value.thumbnailUrlLastFetched - : thumbnailUrlLastFetched // ignore: cast_nullable_to_non_nullable - as int?, - title: freezed == title - ? _value.title - : title // ignore: cast_nullable_to_non_nullable - as String?, - unreadCount: freezed == unreadCount - ? _value.unreadCount - : unreadCount // ignore: cast_nullable_to_non_nullable - as int?, - lastFetchedAt: freezed == lastFetchedAt - ? _value.lastFetchedAt - : lastFetchedAt // ignore: cast_nullable_to_non_nullable - as int?, - chaptersLastFetchedAt: freezed == chaptersLastFetchedAt - ? _value.chaptersLastFetchedAt - : chaptersLastFetchedAt // ignore: cast_nullable_to_non_nullable - as int?, - url: freezed == url - ? _value.url - : url // ignore: cast_nullable_to_non_nullable - as String?, - meta: freezed == meta - ? _value.meta - : meta // ignore: cast_nullable_to_non_nullable - as MangaMeta?, - )); - } -} - -/// @nodoc -@JsonSerializable() -class _$MangaImpl extends _Manga { - _$MangaImpl( - {this.artist, - this.author, - this.description, - this.downloadCount, - this.chapterCount, - this.lastReadAt, - this.lastChapterRead, - this.freshData, - final List? genre, - this.inLibrary, - this.id, - this.inLibraryAt, - this.initialized, - this.realUrl, - this.source, - this.sourceId, - @JsonKey(fromJson: MangaStatus.fromJson, toJson: MangaStatus.toJson) - this.status, - this.thumbnailUrl, - this.thumbnailUrlLastFetched, - this.title, - this.unreadCount, - this.lastFetchedAt, - this.chaptersLastFetchedAt, - this.url, - this.meta}) - : _genre = genre, - super._(); - - factory _$MangaImpl.fromJson(Map json) => - _$$MangaImplFromJson(json); - - @override - final String? artist; - @override - final String? author; - @override - final String? description; - @override - final int? downloadCount; - @override - final int? chapterCount; - @override - final int? lastReadAt; - @override - final Chapter? lastChapterRead; - @override - final bool? freshData; - final List? _genre; - @override - List? get genre { - final value = _genre; - if (value == null) return null; - if (_genre is EqualUnmodifiableListView) return _genre; - // ignore: implicit_dynamic_type - return EqualUnmodifiableListView(value); - } - - @override - final bool? inLibrary; - @override - final int? id; - @override - final int? inLibraryAt; - @override - final bool? initialized; - @override - final String? realUrl; - @override - final Source? source; - @override - final String? sourceId; - @override - @JsonKey(fromJson: MangaStatus.fromJson, toJson: MangaStatus.toJson) - final MangaStatus? status; - @override - final String? thumbnailUrl; - @override - final int? thumbnailUrlLastFetched; - @override - final String? title; - @override - final int? unreadCount; - @override - final int? lastFetchedAt; - @override - final int? chaptersLastFetchedAt; - @override - final String? url; - @override - final MangaMeta? meta; - - @override - String toString() { - return 'Manga(artist: $artist, author: $author, description: $description, downloadCount: $downloadCount, chapterCount: $chapterCount, lastReadAt: $lastReadAt, lastChapterRead: $lastChapterRead, freshData: $freshData, genre: $genre, inLibrary: $inLibrary, id: $id, inLibraryAt: $inLibraryAt, initialized: $initialized, realUrl: $realUrl, source: $source, sourceId: $sourceId, status: $status, thumbnailUrl: $thumbnailUrl, thumbnailUrlLastFetched: $thumbnailUrlLastFetched, title: $title, unreadCount: $unreadCount, lastFetchedAt: $lastFetchedAt, chaptersLastFetchedAt: $chaptersLastFetchedAt, url: $url, meta: $meta)'; - } - - @override - bool operator ==(dynamic other) { - return identical(this, other) || - (other.runtimeType == runtimeType && - other is _$MangaImpl && - (identical(other.artist, artist) || other.artist == artist) && - (identical(other.author, author) || other.author == author) && - (identical(other.description, description) || - other.description == description) && - (identical(other.downloadCount, downloadCount) || - other.downloadCount == downloadCount) && - (identical(other.chapterCount, chapterCount) || - other.chapterCount == chapterCount) && - (identical(other.lastReadAt, lastReadAt) || - other.lastReadAt == lastReadAt) && - (identical(other.lastChapterRead, lastChapterRead) || - other.lastChapterRead == lastChapterRead) && - (identical(other.freshData, freshData) || - other.freshData == freshData) && - const DeepCollectionEquality().equals(other._genre, _genre) && - (identical(other.inLibrary, inLibrary) || - other.inLibrary == inLibrary) && - (identical(other.id, id) || other.id == id) && - (identical(other.inLibraryAt, inLibraryAt) || - other.inLibraryAt == inLibraryAt) && - (identical(other.initialized, initialized) || - other.initialized == initialized) && - (identical(other.realUrl, realUrl) || other.realUrl == realUrl) && - (identical(other.source, source) || other.source == source) && - (identical(other.sourceId, sourceId) || - other.sourceId == sourceId) && - (identical(other.status, status) || other.status == status) && - (identical(other.thumbnailUrl, thumbnailUrl) || - other.thumbnailUrl == thumbnailUrl) && - (identical( - other.thumbnailUrlLastFetched, thumbnailUrlLastFetched) || - other.thumbnailUrlLastFetched == thumbnailUrlLastFetched) && - (identical(other.title, title) || other.title == title) && - (identical(other.unreadCount, unreadCount) || - other.unreadCount == unreadCount) && - (identical(other.lastFetchedAt, lastFetchedAt) || - other.lastFetchedAt == lastFetchedAt) && - (identical(other.chaptersLastFetchedAt, chaptersLastFetchedAt) || - other.chaptersLastFetchedAt == chaptersLastFetchedAt) && - (identical(other.url, url) || other.url == url) && - (identical(other.meta, meta) || other.meta == meta)); - } - - @JsonKey(ignore: true) - @override - int get hashCode => Object.hashAll([ - runtimeType, - artist, - author, - description, - downloadCount, - chapterCount, - lastReadAt, - lastChapterRead, - freshData, - const DeepCollectionEquality().hash(_genre), - inLibrary, - id, - inLibraryAt, - initialized, - realUrl, - source, - sourceId, - status, - thumbnailUrl, - thumbnailUrlLastFetched, - title, - unreadCount, - lastFetchedAt, - chaptersLastFetchedAt, - url, - meta - ]); - - @JsonKey(ignore: true) - @override - @pragma('vm:prefer-inline') - _$$MangaImplCopyWith<_$MangaImpl> get copyWith => - __$$MangaImplCopyWithImpl<_$MangaImpl>(this, _$identity); - - @override - Map toJson() { - return _$$MangaImplToJson( - this, - ); - } -} - -abstract class _Manga extends Manga { - factory _Manga( - {final String? artist, - final String? author, - final String? description, - final int? downloadCount, - final int? chapterCount, - final int? lastReadAt, - final Chapter? lastChapterRead, - final bool? freshData, - final List? genre, - final bool? inLibrary, - final int? id, - final int? inLibraryAt, - final bool? initialized, - final String? realUrl, - final Source? source, - final String? sourceId, - @JsonKey(fromJson: MangaStatus.fromJson, toJson: MangaStatus.toJson) - final MangaStatus? status, - final String? thumbnailUrl, - final int? thumbnailUrlLastFetched, - final String? title, - final int? unreadCount, - final int? lastFetchedAt, - final int? chaptersLastFetchedAt, - final String? url, - final MangaMeta? meta}) = _$MangaImpl; - _Manga._() : super._(); - - factory _Manga.fromJson(Map json) = _$MangaImpl.fromJson; - - @override - String? get artist; - @override - String? get author; - @override - String? get description; - @override - int? get downloadCount; - @override - int? get chapterCount; - @override - int? get lastReadAt; - @override - Chapter? get lastChapterRead; - @override - bool? get freshData; - @override - List? get genre; - @override - bool? get inLibrary; - @override - int? get id; - @override - int? get inLibraryAt; - @override - bool? get initialized; - @override - String? get realUrl; - @override - Source? get source; - @override - String? get sourceId; - @override - @JsonKey(fromJson: MangaStatus.fromJson, toJson: MangaStatus.toJson) - MangaStatus? get status; - @override - String? get thumbnailUrl; - @override - int? get thumbnailUrlLastFetched; - @override - String? get title; - @override - int? get unreadCount; - @override - int? get lastFetchedAt; - @override - int? get chaptersLastFetchedAt; - @override - String? get url; - @override - MangaMeta? get meta; - @override - @JsonKey(ignore: true) - _$$MangaImplCopyWith<_$MangaImpl> get copyWith => - throw _privateConstructorUsedError; -} - -MangaMeta _$MangaMetaFromJson(Map json) { - return _MangaMeta.fromJson(json); -} - -/// @nodoc -mixin _$MangaMeta { - @JsonKey( - name: "flutter_readerNavigationLayoutInvert", - fromJson: MangaMeta.fromJsonToBool) - bool? get invertTap => throw _privateConstructorUsedError; - @JsonKey(name: "flutter_readerNavigationLayout") - ReaderNavigationLayout? get readerNavigationLayout => - throw _privateConstructorUsedError; - @JsonKey(name: "flutter_readerMode") - ReaderMode? get readerMode => throw _privateConstructorUsedError; - @JsonKey(name: "flutter_readerPadding", fromJson: MangaMeta.fromJsonToDouble) - double? get readerPadding => throw _privateConstructorUsedError; - @JsonKey( - name: "flutter_readerMagnifierSize", fromJson: MangaMeta.fromJsonToDouble) - double? get readerMagnifierSize => throw _privateConstructorUsedError; - @JsonKey(name: "flutter_scanlator") - String? get scanlator => throw _privateConstructorUsedError; - - Map toJson() => throw _privateConstructorUsedError; - @JsonKey(ignore: true) - $MangaMetaCopyWith get copyWith => - throw _privateConstructorUsedError; -} - -/// @nodoc -abstract class $MangaMetaCopyWith<$Res> { - factory $MangaMetaCopyWith(MangaMeta value, $Res Function(MangaMeta) then) = - _$MangaMetaCopyWithImpl<$Res, MangaMeta>; - @useResult - $Res call( - {@JsonKey( - name: "flutter_readerNavigationLayoutInvert", - fromJson: MangaMeta.fromJsonToBool) - bool? invertTap, - @JsonKey(name: "flutter_readerNavigationLayout") - ReaderNavigationLayout? readerNavigationLayout, - @JsonKey(name: "flutter_readerMode") ReaderMode? readerMode, - @JsonKey( - name: "flutter_readerPadding", fromJson: MangaMeta.fromJsonToDouble) - double? readerPadding, - @JsonKey( - name: "flutter_readerMagnifierSize", - fromJson: MangaMeta.fromJsonToDouble) - double? readerMagnifierSize, - @JsonKey(name: "flutter_scanlator") String? scanlator}); -} - -/// @nodoc -class _$MangaMetaCopyWithImpl<$Res, $Val extends MangaMeta> - implements $MangaMetaCopyWith<$Res> { - _$MangaMetaCopyWithImpl(this._value, this._then); - - // ignore: unused_field - final $Val _value; - // ignore: unused_field - final $Res Function($Val) _then; - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? invertTap = freezed, - Object? readerNavigationLayout = freezed, - Object? readerMode = freezed, - Object? readerPadding = freezed, - Object? readerMagnifierSize = freezed, - Object? scanlator = freezed, - }) { - return _then(_value.copyWith( - invertTap: freezed == invertTap - ? _value.invertTap - : invertTap // ignore: cast_nullable_to_non_nullable - as bool?, - readerNavigationLayout: freezed == readerNavigationLayout - ? _value.readerNavigationLayout - : readerNavigationLayout // ignore: cast_nullable_to_non_nullable - as ReaderNavigationLayout?, - readerMode: freezed == readerMode - ? _value.readerMode - : readerMode // ignore: cast_nullable_to_non_nullable - as ReaderMode?, - readerPadding: freezed == readerPadding - ? _value.readerPadding - : readerPadding // ignore: cast_nullable_to_non_nullable - as double?, - readerMagnifierSize: freezed == readerMagnifierSize - ? _value.readerMagnifierSize - : readerMagnifierSize // ignore: cast_nullable_to_non_nullable - as double?, - scanlator: freezed == scanlator - ? _value.scanlator - : scanlator // ignore: cast_nullable_to_non_nullable - as String?, - ) as $Val); - } -} - -/// @nodoc -abstract class _$$MangaMetaImplCopyWith<$Res> - implements $MangaMetaCopyWith<$Res> { - factory _$$MangaMetaImplCopyWith( - _$MangaMetaImpl value, $Res Function(_$MangaMetaImpl) then) = - __$$MangaMetaImplCopyWithImpl<$Res>; - @override - @useResult - $Res call( - {@JsonKey( - name: "flutter_readerNavigationLayoutInvert", - fromJson: MangaMeta.fromJsonToBool) - bool? invertTap, - @JsonKey(name: "flutter_readerNavigationLayout") - ReaderNavigationLayout? readerNavigationLayout, - @JsonKey(name: "flutter_readerMode") ReaderMode? readerMode, - @JsonKey( - name: "flutter_readerPadding", fromJson: MangaMeta.fromJsonToDouble) - double? readerPadding, - @JsonKey( - name: "flutter_readerMagnifierSize", - fromJson: MangaMeta.fromJsonToDouble) - double? readerMagnifierSize, - @JsonKey(name: "flutter_scanlator") String? scanlator}); -} - -/// @nodoc -class __$$MangaMetaImplCopyWithImpl<$Res> - extends _$MangaMetaCopyWithImpl<$Res, _$MangaMetaImpl> - implements _$$MangaMetaImplCopyWith<$Res> { - __$$MangaMetaImplCopyWithImpl( - _$MangaMetaImpl _value, $Res Function(_$MangaMetaImpl) _then) - : super(_value, _then); - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? invertTap = freezed, - Object? readerNavigationLayout = freezed, - Object? readerMode = freezed, - Object? readerPadding = freezed, - Object? readerMagnifierSize = freezed, - Object? scanlator = freezed, - }) { - return _then(_$MangaMetaImpl( - invertTap: freezed == invertTap - ? _value.invertTap - : invertTap // ignore: cast_nullable_to_non_nullable - as bool?, - readerNavigationLayout: freezed == readerNavigationLayout - ? _value.readerNavigationLayout - : readerNavigationLayout // ignore: cast_nullable_to_non_nullable - as ReaderNavigationLayout?, - readerMode: freezed == readerMode - ? _value.readerMode - : readerMode // ignore: cast_nullable_to_non_nullable - as ReaderMode?, - readerPadding: freezed == readerPadding - ? _value.readerPadding - : readerPadding // ignore: cast_nullable_to_non_nullable - as double?, - readerMagnifierSize: freezed == readerMagnifierSize - ? _value.readerMagnifierSize - : readerMagnifierSize // ignore: cast_nullable_to_non_nullable - as double?, - scanlator: freezed == scanlator - ? _value.scanlator - : scanlator // ignore: cast_nullable_to_non_nullable - as String?, - )); - } -} - -/// @nodoc -@JsonSerializable() -class _$MangaMetaImpl implements _MangaMeta { - _$MangaMetaImpl( - {@JsonKey( - name: "flutter_readerNavigationLayoutInvert", - fromJson: MangaMeta.fromJsonToBool) - this.invertTap, - @JsonKey(name: "flutter_readerNavigationLayout") - this.readerNavigationLayout, - @JsonKey(name: "flutter_readerMode") this.readerMode, - @JsonKey( - name: "flutter_readerPadding", fromJson: MangaMeta.fromJsonToDouble) - this.readerPadding, - @JsonKey( - name: "flutter_readerMagnifierSize", - fromJson: MangaMeta.fromJsonToDouble) - this.readerMagnifierSize, - @JsonKey(name: "flutter_scanlator") this.scanlator}); - - factory _$MangaMetaImpl.fromJson(Map json) => - _$$MangaMetaImplFromJson(json); - - @override - @JsonKey( - name: "flutter_readerNavigationLayoutInvert", - fromJson: MangaMeta.fromJsonToBool) - final bool? invertTap; - @override - @JsonKey(name: "flutter_readerNavigationLayout") - final ReaderNavigationLayout? readerNavigationLayout; - @override - @JsonKey(name: "flutter_readerMode") - final ReaderMode? readerMode; - @override - @JsonKey(name: "flutter_readerPadding", fromJson: MangaMeta.fromJsonToDouble) - final double? readerPadding; - @override - @JsonKey( - name: "flutter_readerMagnifierSize", fromJson: MangaMeta.fromJsonToDouble) - final double? readerMagnifierSize; - @override - @JsonKey(name: "flutter_scanlator") - final String? scanlator; - - @override - String toString() { - return 'MangaMeta(invertTap: $invertTap, readerNavigationLayout: $readerNavigationLayout, readerMode: $readerMode, readerPadding: $readerPadding, readerMagnifierSize: $readerMagnifierSize, scanlator: $scanlator)'; - } - - @override - bool operator ==(dynamic other) { - return identical(this, other) || - (other.runtimeType == runtimeType && - other is _$MangaMetaImpl && - (identical(other.invertTap, invertTap) || - other.invertTap == invertTap) && - (identical(other.readerNavigationLayout, readerNavigationLayout) || - other.readerNavigationLayout == readerNavigationLayout) && - (identical(other.readerMode, readerMode) || - other.readerMode == readerMode) && - (identical(other.readerPadding, readerPadding) || - other.readerPadding == readerPadding) && - (identical(other.readerMagnifierSize, readerMagnifierSize) || - other.readerMagnifierSize == readerMagnifierSize) && - (identical(other.scanlator, scanlator) || - other.scanlator == scanlator)); - } - - @JsonKey(ignore: true) - @override - int get hashCode => Object.hash( - runtimeType, - invertTap, - readerNavigationLayout, - readerMode, - readerPadding, - readerMagnifierSize, - scanlator); - - @JsonKey(ignore: true) - @override - @pragma('vm:prefer-inline') - _$$MangaMetaImplCopyWith<_$MangaMetaImpl> get copyWith => - __$$MangaMetaImplCopyWithImpl<_$MangaMetaImpl>(this, _$identity); - - @override - Map toJson() { - return _$$MangaMetaImplToJson( - this, - ); - } -} - -abstract class _MangaMeta implements MangaMeta { - factory _MangaMeta( - {@JsonKey( - name: "flutter_readerNavigationLayoutInvert", - fromJson: MangaMeta.fromJsonToBool) - final bool? invertTap, - @JsonKey(name: "flutter_readerNavigationLayout") - final ReaderNavigationLayout? readerNavigationLayout, - @JsonKey(name: "flutter_readerMode") final ReaderMode? readerMode, - @JsonKey( - name: "flutter_readerPadding", fromJson: MangaMeta.fromJsonToDouble) - final double? readerPadding, - @JsonKey( - name: "flutter_readerMagnifierSize", - fromJson: MangaMeta.fromJsonToDouble) - final double? readerMagnifierSize, - @JsonKey(name: "flutter_scanlator") - final String? scanlator}) = _$MangaMetaImpl; - - factory _MangaMeta.fromJson(Map json) = - _$MangaMetaImpl.fromJson; - - @override - @JsonKey( - name: "flutter_readerNavigationLayoutInvert", - fromJson: MangaMeta.fromJsonToBool) - bool? get invertTap; - @override - @JsonKey(name: "flutter_readerNavigationLayout") - ReaderNavigationLayout? get readerNavigationLayout; - @override - @JsonKey(name: "flutter_readerMode") - ReaderMode? get readerMode; - @override - @JsonKey(name: "flutter_readerPadding", fromJson: MangaMeta.fromJsonToDouble) - double? get readerPadding; - @override - @JsonKey( - name: "flutter_readerMagnifierSize", fromJson: MangaMeta.fromJsonToDouble) - double? get readerMagnifierSize; - @override - @JsonKey(name: "flutter_scanlator") - String? get scanlator; - @override - @JsonKey(ignore: true) - _$$MangaMetaImplCopyWith<_$MangaMetaImpl> get copyWith => - throw _privateConstructorUsedError; -} diff --git a/lib/src/features/manga_book/domain/manga/manga_model.g.dart b/lib/src/features/manga_book/domain/manga/manga_model.g.dart deleted file mode 100644 index 3be9d6e1..00000000 --- a/lib/src/features/manga_book/domain/manga/manga_model.g.dart +++ /dev/null @@ -1,117 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'manga_model.dart'; - -// ************************************************************************** -// JsonSerializableGenerator -// ************************************************************************** - -_$MangaImpl _$$MangaImplFromJson(Map json) => _$MangaImpl( - artist: json['artist'] as String?, - author: json['author'] as String?, - description: json['description'] as String?, - downloadCount: json['downloadCount'] as int?, - chapterCount: json['chapterCount'] as int?, - lastReadAt: json['lastReadAt'] as int?, - lastChapterRead: json['lastChapterRead'] == null - ? null - : Chapter.fromJson(json['lastChapterRead'] as Map), - freshData: json['freshData'] as bool?, - genre: - (json['genre'] as List?)?.map((e) => e as String).toList(), - inLibrary: json['inLibrary'] as bool?, - id: json['id'] as int?, - inLibraryAt: json['inLibraryAt'] as int?, - initialized: json['initialized'] as bool?, - realUrl: json['realUrl'] as String?, - source: json['source'] == null - ? null - : Source.fromJson(json['source'] as Map), - sourceId: json['sourceId'] as String?, - status: MangaStatus.fromJson(json['status'] as String), - thumbnailUrl: json['thumbnailUrl'] as String?, - thumbnailUrlLastFetched: json['thumbnailUrlLastFetched'] as int?, - title: json['title'] as String?, - unreadCount: json['unreadCount'] as int?, - lastFetchedAt: json['lastFetchedAt'] as int?, - chaptersLastFetchedAt: json['chaptersLastFetchedAt'] as int?, - url: json['url'] as String?, - meta: json['meta'] == null - ? null - : MangaMeta.fromJson(json['meta'] as Map), - ); - -Map _$$MangaImplToJson(_$MangaImpl instance) => - { - 'artist': instance.artist, - 'author': instance.author, - 'description': instance.description, - 'downloadCount': instance.downloadCount, - 'chapterCount': instance.chapterCount, - 'lastReadAt': instance.lastReadAt, - 'lastChapterRead': instance.lastChapterRead?.toJson(), - 'freshData': instance.freshData, - 'genre': instance.genre, - 'inLibrary': instance.inLibrary, - 'id': instance.id, - 'inLibraryAt': instance.inLibraryAt, - 'initialized': instance.initialized, - 'realUrl': instance.realUrl, - 'source': instance.source?.toJson(), - 'sourceId': instance.sourceId, - 'status': MangaStatus.toJson(instance.status), - 'thumbnailUrl': instance.thumbnailUrl, - 'thumbnailUrlLastFetched': instance.thumbnailUrlLastFetched, - 'title': instance.title, - 'unreadCount': instance.unreadCount, - 'lastFetchedAt': instance.lastFetchedAt, - 'chaptersLastFetchedAt': instance.chaptersLastFetchedAt, - 'url': instance.url, - 'meta': instance.meta?.toJson(), - }; - -_$MangaMetaImpl _$$MangaMetaImplFromJson(Map json) => - _$MangaMetaImpl( - invertTap: MangaMeta.fromJsonToBool( - json['flutter_readerNavigationLayoutInvert']), - readerNavigationLayout: $enumDecodeNullable( - _$ReaderNavigationLayoutEnumMap, - json['flutter_readerNavigationLayout']), - readerMode: - $enumDecodeNullable(_$ReaderModeEnumMap, json['flutter_readerMode']), - readerPadding: MangaMeta.fromJsonToDouble(json['flutter_readerPadding']), - readerMagnifierSize: - MangaMeta.fromJsonToDouble(json['flutter_readerMagnifierSize']), - scanlator: json['flutter_scanlator'] as String?, - ); - -Map _$$MangaMetaImplToJson(_$MangaMetaImpl instance) => - { - 'flutter_readerNavigationLayoutInvert': instance.invertTap, - 'flutter_readerNavigationLayout': - _$ReaderNavigationLayoutEnumMap[instance.readerNavigationLayout], - 'flutter_readerMode': _$ReaderModeEnumMap[instance.readerMode], - 'flutter_readerPadding': instance.readerPadding, - 'flutter_readerMagnifierSize': instance.readerMagnifierSize, - 'flutter_scanlator': instance.scanlator, - }; - -const _$ReaderNavigationLayoutEnumMap = { - ReaderNavigationLayout.defaultNavigation: 'defaultNavigation', - ReaderNavigationLayout.lShaped: 'lShaped', - ReaderNavigationLayout.rightAndLeft: 'rightAndLeft', - ReaderNavigationLayout.edge: 'edge', - ReaderNavigationLayout.kindlish: 'kindlish', - ReaderNavigationLayout.disabled: 'disabled', -}; - -const _$ReaderModeEnumMap = { - ReaderMode.defaultReader: 'defaultReader', - ReaderMode.continuousVertical: 'continuousVertical', - ReaderMode.singleHorizontalLTR: 'singleHorizontalLTR', - ReaderMode.singleHorizontalRTL: 'singleHorizontalRTL', - ReaderMode.continuousHorizontalLTR: 'continuousHorizontalLTR', - ReaderMode.continuousHorizontalRTL: 'continuousHorizontalRTL', - ReaderMode.singleVertical: 'singleVertical', - ReaderMode.webtoon: 'webtoon', -}; diff --git a/lib/src/features/manga_book/domain/update_status/update_status_model.dart b/lib/src/features/manga_book/domain/update_status/update_status_model.dart deleted file mode 100644 index bb6bc02f..00000000 --- a/lib/src/features/manga_book/domain/update_status/update_status_model.dart +++ /dev/null @@ -1,42 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:freezed_annotation/freezed_annotation.dart'; - -import '../../../../utils/extensions/custom_extensions.dart'; -import '../manga/manga_model.dart'; - -part 'update_status_model.freezed.dart'; -part 'update_status_model.g.dart'; - -@freezed -class UpdateStatus with _$UpdateStatus { - UpdateStatus._(); - factory UpdateStatus({ - @JsonKey(name: "PENDING") List? pending, - @JsonKey(name: "RUNNING") List? running, - @JsonKey(name: "COMPLETE") List? completed, - @JsonKey(name: "FAILED") List? failed, - }) = _UpdateStatus; - - int get total => - (pending?.length).getValueOnNullOrNegative() + - (running?.length).getValueOnNullOrNegative() + - (completed?.length).getValueOnNullOrNegative() + - (failed?.length).getValueOnNullOrNegative(); - - int get updateChecked => - (completed?.length).getValueOnNullOrNegative() + - (failed?.length).getValueOnNullOrNegative(); - - bool get isUpdateCheckCompleted => total == updateChecked; - - bool get isUpdateChecking => - (total).isGreaterThan(0) && !(isUpdateCheckCompleted); - - factory UpdateStatus.fromJson(Map json) => - _$UpdateStatusFromJson(json); -} diff --git a/lib/src/features/manga_book/domain/update_status/update_status_model.freezed.dart b/lib/src/features/manga_book/domain/update_status/update_status_model.freezed.dart deleted file mode 100644 index 15a80aa0..00000000 --- a/lib/src/features/manga_book/domain/update_status/update_status_model.freezed.dart +++ /dev/null @@ -1,270 +0,0 @@ -// coverage:ignore-file -// GENERATED CODE - DO NOT MODIFY BY HAND -// ignore_for_file: type=lint -// ignore_for_file: unused_element, deprecated_member_use, deprecated_member_use_from_same_package, use_function_type_syntax_for_parameters, unnecessary_const, avoid_init_to_null, invalid_override_different_default_values_named, prefer_expression_function_bodies, annotate_overrides, invalid_annotation_target, unnecessary_question_mark - -part of 'update_status_model.dart'; - -// ************************************************************************** -// FreezedGenerator -// ************************************************************************** - -T _$identity(T value) => value; - -final _privateConstructorUsedError = UnsupportedError( - 'It seems like you constructed your class using `MyClass._()`. This constructor is only meant to be used by freezed and you are not supposed to need it nor use it.\nPlease check the documentation here for more information: https://github.com/rrousselGit/freezed#custom-getters-and-methods'); - -UpdateStatus _$UpdateStatusFromJson(Map json) { - return _UpdateStatus.fromJson(json); -} - -/// @nodoc -mixin _$UpdateStatus { - @JsonKey(name: "PENDING") - List? get pending => throw _privateConstructorUsedError; - @JsonKey(name: "RUNNING") - List? get running => throw _privateConstructorUsedError; - @JsonKey(name: "COMPLETE") - List? get completed => throw _privateConstructorUsedError; - @JsonKey(name: "FAILED") - List? get failed => throw _privateConstructorUsedError; - - Map toJson() => throw _privateConstructorUsedError; - @JsonKey(ignore: true) - $UpdateStatusCopyWith get copyWith => - throw _privateConstructorUsedError; -} - -/// @nodoc -abstract class $UpdateStatusCopyWith<$Res> { - factory $UpdateStatusCopyWith( - UpdateStatus value, $Res Function(UpdateStatus) then) = - _$UpdateStatusCopyWithImpl<$Res, UpdateStatus>; - @useResult - $Res call( - {@JsonKey(name: "PENDING") List? pending, - @JsonKey(name: "RUNNING") List? running, - @JsonKey(name: "COMPLETE") List? completed, - @JsonKey(name: "FAILED") List? failed}); -} - -/// @nodoc -class _$UpdateStatusCopyWithImpl<$Res, $Val extends UpdateStatus> - implements $UpdateStatusCopyWith<$Res> { - _$UpdateStatusCopyWithImpl(this._value, this._then); - - // ignore: unused_field - final $Val _value; - // ignore: unused_field - final $Res Function($Val) _then; - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? pending = freezed, - Object? running = freezed, - Object? completed = freezed, - Object? failed = freezed, - }) { - return _then(_value.copyWith( - pending: freezed == pending - ? _value.pending - : pending // ignore: cast_nullable_to_non_nullable - as List?, - running: freezed == running - ? _value.running - : running // ignore: cast_nullable_to_non_nullable - as List?, - completed: freezed == completed - ? _value.completed - : completed // ignore: cast_nullable_to_non_nullable - as List?, - failed: freezed == failed - ? _value.failed - : failed // ignore: cast_nullable_to_non_nullable - as List?, - ) as $Val); - } -} - -/// @nodoc -abstract class _$$UpdateStatusImplCopyWith<$Res> - implements $UpdateStatusCopyWith<$Res> { - factory _$$UpdateStatusImplCopyWith( - _$UpdateStatusImpl value, $Res Function(_$UpdateStatusImpl) then) = - __$$UpdateStatusImplCopyWithImpl<$Res>; - @override - @useResult - $Res call( - {@JsonKey(name: "PENDING") List? pending, - @JsonKey(name: "RUNNING") List? running, - @JsonKey(name: "COMPLETE") List? completed, - @JsonKey(name: "FAILED") List? failed}); -} - -/// @nodoc -class __$$UpdateStatusImplCopyWithImpl<$Res> - extends _$UpdateStatusCopyWithImpl<$Res, _$UpdateStatusImpl> - implements _$$UpdateStatusImplCopyWith<$Res> { - __$$UpdateStatusImplCopyWithImpl( - _$UpdateStatusImpl _value, $Res Function(_$UpdateStatusImpl) _then) - : super(_value, _then); - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? pending = freezed, - Object? running = freezed, - Object? completed = freezed, - Object? failed = freezed, - }) { - return _then(_$UpdateStatusImpl( - pending: freezed == pending - ? _value._pending - : pending // ignore: cast_nullable_to_non_nullable - as List?, - running: freezed == running - ? _value._running - : running // ignore: cast_nullable_to_non_nullable - as List?, - completed: freezed == completed - ? _value._completed - : completed // ignore: cast_nullable_to_non_nullable - as List?, - failed: freezed == failed - ? _value._failed - : failed // ignore: cast_nullable_to_non_nullable - as List?, - )); - } -} - -/// @nodoc -@JsonSerializable() -class _$UpdateStatusImpl extends _UpdateStatus { - _$UpdateStatusImpl( - {@JsonKey(name: "PENDING") final List? pending, - @JsonKey(name: "RUNNING") final List? running, - @JsonKey(name: "COMPLETE") final List? completed, - @JsonKey(name: "FAILED") final List? failed}) - : _pending = pending, - _running = running, - _completed = completed, - _failed = failed, - super._(); - - factory _$UpdateStatusImpl.fromJson(Map json) => - _$$UpdateStatusImplFromJson(json); - - final List? _pending; - @override - @JsonKey(name: "PENDING") - List? get pending { - final value = _pending; - if (value == null) return null; - if (_pending is EqualUnmodifiableListView) return _pending; - // ignore: implicit_dynamic_type - return EqualUnmodifiableListView(value); - } - - final List? _running; - @override - @JsonKey(name: "RUNNING") - List? get running { - final value = _running; - if (value == null) return null; - if (_running is EqualUnmodifiableListView) return _running; - // ignore: implicit_dynamic_type - return EqualUnmodifiableListView(value); - } - - final List? _completed; - @override - @JsonKey(name: "COMPLETE") - List? get completed { - final value = _completed; - if (value == null) return null; - if (_completed is EqualUnmodifiableListView) return _completed; - // ignore: implicit_dynamic_type - return EqualUnmodifiableListView(value); - } - - final List? _failed; - @override - @JsonKey(name: "FAILED") - List? get failed { - final value = _failed; - if (value == null) return null; - if (_failed is EqualUnmodifiableListView) return _failed; - // ignore: implicit_dynamic_type - return EqualUnmodifiableListView(value); - } - - @override - String toString() { - return 'UpdateStatus(pending: $pending, running: $running, completed: $completed, failed: $failed)'; - } - - @override - bool operator ==(dynamic other) { - return identical(this, other) || - (other.runtimeType == runtimeType && - other is _$UpdateStatusImpl && - const DeepCollectionEquality().equals(other._pending, _pending) && - const DeepCollectionEquality().equals(other._running, _running) && - const DeepCollectionEquality() - .equals(other._completed, _completed) && - const DeepCollectionEquality().equals(other._failed, _failed)); - } - - @JsonKey(ignore: true) - @override - int get hashCode => Object.hash( - runtimeType, - const DeepCollectionEquality().hash(_pending), - const DeepCollectionEquality().hash(_running), - const DeepCollectionEquality().hash(_completed), - const DeepCollectionEquality().hash(_failed)); - - @JsonKey(ignore: true) - @override - @pragma('vm:prefer-inline') - _$$UpdateStatusImplCopyWith<_$UpdateStatusImpl> get copyWith => - __$$UpdateStatusImplCopyWithImpl<_$UpdateStatusImpl>(this, _$identity); - - @override - Map toJson() { - return _$$UpdateStatusImplToJson( - this, - ); - } -} - -abstract class _UpdateStatus extends UpdateStatus { - factory _UpdateStatus( - {@JsonKey(name: "PENDING") final List? pending, - @JsonKey(name: "RUNNING") final List? running, - @JsonKey(name: "COMPLETE") final List? completed, - @JsonKey(name: "FAILED") final List? failed}) = _$UpdateStatusImpl; - _UpdateStatus._() : super._(); - - factory _UpdateStatus.fromJson(Map json) = - _$UpdateStatusImpl.fromJson; - - @override - @JsonKey(name: "PENDING") - List? get pending; - @override - @JsonKey(name: "RUNNING") - List? get running; - @override - @JsonKey(name: "COMPLETE") - List? get completed; - @override - @JsonKey(name: "FAILED") - List? get failed; - @override - @JsonKey(ignore: true) - _$$UpdateStatusImplCopyWith<_$UpdateStatusImpl> get copyWith => - throw _privateConstructorUsedError; -} diff --git a/lib/src/features/manga_book/domain/update_status/update_status_model.g.dart b/lib/src/features/manga_book/domain/update_status/update_status_model.g.dart deleted file mode 100644 index a6b2ff64..00000000 --- a/lib/src/features/manga_book/domain/update_status/update_status_model.g.dart +++ /dev/null @@ -1,31 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'update_status_model.dart'; - -// ************************************************************************** -// JsonSerializableGenerator -// ************************************************************************** - -_$UpdateStatusImpl _$$UpdateStatusImplFromJson(Map json) => - _$UpdateStatusImpl( - pending: (json['PENDING'] as List?) - ?.map((e) => Manga.fromJson(e as Map)) - .toList(), - running: (json['RUNNING'] as List?) - ?.map((e) => Manga.fromJson(e as Map)) - .toList(), - completed: (json['COMPLETE'] as List?) - ?.map((e) => Manga.fromJson(e as Map)) - .toList(), - failed: (json['FAILED'] as List?) - ?.map((e) => Manga.fromJson(e as Map)) - .toList(), - ); - -Map _$$UpdateStatusImplToJson(_$UpdateStatusImpl instance) => - { - 'PENDING': instance.pending?.map((e) => e.toJson()).toList(), - 'RUNNING': instance.running?.map((e) => e.toJson()).toList(), - 'COMPLETE': instance.completed?.map((e) => e.toJson()).toList(), - 'FAILED': instance.failed?.map((e) => e.toJson()).toList(), - }; diff --git a/lib/src/features/manga_book/presentation/downloads/downloads_screen.dart b/lib/src/features/manga_book/presentation/downloads/downloads_screen.dart deleted file mode 100644 index 4e20f992..00000000 --- a/lib/src/features/manga_book/presentation/downloads/downloads_screen.dart +++ /dev/null @@ -1,75 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../../../../constants/app_sizes.dart'; - -import '../../../../utils/extensions/custom_extensions.dart'; -import '../../../../utils/misc/toast/toast.dart'; -import '../../../../widgets/emoticons.dart'; -import '../../data/downloads/downloads_repository.dart'; -import 'widgets/download_progress_list_tile.dart'; -import 'widgets/downloads_fab.dart'; - -class DownloadsScreen extends ConsumerWidget { - const DownloadsScreen({super.key}); - - @override - Widget build(BuildContext context, WidgetRef ref) { - final toast = ref.watch(toastProvider(context)); - final downloadsChapterIds = ref.watch(downloadsChapterIdsProvider); - final downloadsGlobalStatus = ref.watch(downloadsStatusProvider); - final showDownloadsFAB = ref.watch(showDownloadsFABProvider); - return Scaffold( - appBar: AppBar( - title: Text(context.l10n!.downloads), - actions: [ - if ((downloadsChapterIds).isNotBlank) - IconButton( - onPressed: () => AsyncValue.guard( - ref.read(downloadsRepositoryProvider).clearDownloads, - ), - icon: const Icon(Icons.delete_sweep_rounded), - ), - ], - ), - floatingActionButton: showDownloadsFAB - ? DownloadsFab(status: downloadsGlobalStatus.valueOrNull ?? "") - : null, - body: downloadsGlobalStatus.showUiWhenData( - context, - (data) { - if (data == null) { - return Emoticons(text: context.l10n!.errorSomethingWentWrong); - } else if (downloadsChapterIds.isBlank) { - return Emoticons(text: context.l10n!.noDownloads); - } else { - final downloadsCount = - (downloadsChapterIds.length).getValueOnNullOrNegative(); - return ListView.builder( - itemExtent: 104, - itemBuilder: (context, index) { - if (index == downloadsCount) return KSizedBox.h104.size; - final chapterId = downloadsChapterIds[index]; - return DownloadProgressListTile( - key: ValueKey("$chapterId"), - index: index, - downloadsCount: downloadsCount, - chapterId: chapterId, - toast: toast, - ); - }, - itemCount: downloadsCount + 1, - ); - } - }, - showGenericError: true, - ), - ); - } -} diff --git a/lib/src/features/manga_book/presentation/downloads/widgets/download_progress_list_tile.dart b/lib/src/features/manga_book/presentation/downloads/widgets/download_progress_list_tile.dart deleted file mode 100644 index bd85e334..00000000 --- a/lib/src/features/manga_book/presentation/downloads/widgets/download_progress_list_tile.dart +++ /dev/null @@ -1,207 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:flutter_hooks/flutter_hooks.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../../../../../constants/app_sizes.dart'; - -import '../../../../../routes/router_config.dart'; -import '../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../../utils/misc/toast/toast.dart'; -import '../../../../../widgets/server_image.dart'; -import '../../../data/downloads/downloads_repository.dart'; - -class DownloadProgressListTile extends HookConsumerWidget { - const DownloadProgressListTile({ - super.key, - required this.chapterId, - required this.toast, - required this.index, - required this.downloadsCount, - }); - final int chapterId; - final Toast toast; - final int index; - final int downloadsCount; - - Future toggleChapterToQueue( - Toast toast, - WidgetRef ref, - bool addToDownload, - int mangaId, - int chapterIndex, - ) async { - try { - if (!chapterIndex.isNull && !mangaId.isNull) { - (await AsyncValue.guard(() async { - final repo = ref.read(downloadsRepositoryProvider); - await repo.removeChapterFromDownloadQueue( - mangaId, - chapterIndex, - ); - if (addToDownload) { - await repo.addChapterToDownloadQueue( - mangaId, - chapterIndex, - ); - } - })) - .showToastOnError(toast); - } - } catch (e) { - // - } - } - - @override - Widget build(BuildContext context, WidgetRef ref) { - final status = useState(null); - final download = ref.watch(downloadsFromIdProvider(chapterId)); - useEffect(() { - status.value = download?.state == "Downloading" - ? "${((download?.progress ?? 0) * 100).toInt()}%" - : download?.state == "Error" - ? "${download?.state}(${download?.tries})" - : download?.state; - return null; - }, [download?.state, download?.progress, download?.tries]); - if (download == null) return const SizedBox.shrink(); - return Card( - margin: KEdgeInsets.h16v4.size, - child: Padding( - padding: const EdgeInsets.symmetric(horizontal: 8.0), - child: Row( - children: [ - if ((download.manga?.thumbnailUrl).isNotBlank) - Padding( - padding: KEdgeInsets.a8.size, - child: InkWell( - onTap: () => - MangaRoute(mangaId: download.mangaId!).push(context), - child: ClipRRect( - borderRadius: KBorderRadius.r8.radius, - child: ServerImage( - imageUrl: download.manga!.thumbnailUrl!, - size: const Size.square(56), - ), - ), - ), - ), - Expanded( - child: Padding( - padding: KEdgeInsets.a4.size, - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - ListTile( - contentPadding: EdgeInsets.zero, - dense: true, - title: Text( - download.manga?.title ?? "", - style: context.textTheme.labelLarge, - overflow: TextOverflow.ellipsis, - ), - subtitle: Text( - download.chapter?.name ?? - download.chapter?.chapterNumber.toString() ?? - "", - overflow: TextOverflow.ellipsis, - style: context.textTheme.labelSmall, - ), - trailing: status.value.isNull - ? null - : Text( - status.value!, - overflow: TextOverflow.ellipsis, - ), - ), - LinearProgressIndicator( - value: (download.progress ?? 0), - semanticsValue: - "${((download.progress ?? 0) * 100).toInt()}%", - ), - Row( - children: [ - IconButton( - visualDensity: VisualDensity.compact, - onPressed: index.isZero - ? null - : () => ref - .read(downloadsRepositoryProvider) - .reorderDownload( - download.mangaId!, - download.chapterIndex!, - index - 1, - ), - icon: const Icon(Icons.arrow_drop_up_rounded), - color: Colors.grey, - ), - IconButton( - visualDensity: VisualDensity.compact, - onPressed: index >= downloadsCount - 1 - ? null - : () => ref - .read(downloadsRepositoryProvider) - .reorderDownload( - download.mangaId!, - download.chapterIndex!, - index + 1, - ), - icon: const Icon(Icons.arrow_drop_down_rounded), - color: Colors.grey, - ), - ], - ), - ], - ), - ), - ), - PopupMenuButton( - shape: RoundedRectangleBorder( - borderRadius: KBorderRadius.r16.radius, - ), - itemBuilder: (context) => [ - if (download.state == "Error") - PopupMenuItem( - child: Text(context.l10n!.retry), - onTap: () => toggleChapterToQueue(toast, ref, true, - download.mangaId!, download.chapterIndex!), - ), - PopupMenuItem( - child: Text(context.l10n!.delete), - onTap: () => toggleChapterToQueue(toast, ref, false, - download.mangaId!, download.chapterIndex!), - ), - if (!index.isZero) - PopupMenuItem( - child: Text(context.l10n!.moveToTop), - onTap: () => - ref.read(downloadsRepositoryProvider).reorderDownload( - download.mangaId!, - download.chapterIndex!, - 0, - ), - ), - if (index < downloadsCount - 1) - PopupMenuItem( - child: Text(context.l10n!.moveToBottom), - onTap: () => - ref.read(downloadsRepositoryProvider).reorderDownload( - download.mangaId!, - download.chapterIndex!, - downloadsCount - 1, - ), - ), - ], - ), - ], - ), - ), - ); - } -} diff --git a/lib/src/features/manga_book/presentation/downloads/widgets/downloads_fab.dart b/lib/src/features/manga_book/presentation/downloads/widgets/downloads_fab.dart deleted file mode 100644 index 14da638b..00000000 --- a/lib/src/features/manga_book/presentation/downloads/widgets/downloads_fab.dart +++ /dev/null @@ -1,44 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../../utils/misc/toast/toast.dart'; -import '../../../data/downloads/downloads_repository.dart'; - -class DownloadsFab extends ConsumerWidget { - const DownloadsFab({super.key, required this.status}); - final String status; - @override - Widget build(BuildContext context, WidgetRef ref) { - final toast = ref.watch(toastProvider(context)); - if (status == "Stopped" || status == "Error") { - return FloatingActionButton.extended( - onPressed: () async { - (await AsyncValue.guard( - ref.read(downloadsRepositoryProvider).startDownloads)) - .showToastOnError(toast); - }, - label: Text(context.l10n!.resume), - isExtended: context.isTablet, - icon: const Icon(Icons.play_arrow), - ); - } else { - return FloatingActionButton.extended( - onPressed: () async { - (await AsyncValue.guard( - ref.read(downloadsRepositoryProvider).stopDownloads)) - .showToastOnError(toast); - }, - label: Text(context.l10n!.pause), - isExtended: context.isTablet, - icon: const Icon(Icons.pause_rounded), - ); - } - } -} diff --git a/lib/src/features/manga_book/presentation/manga_details/controller/manga_details_controller.dart b/lib/src/features/manga_book/presentation/manga_details/controller/manga_details_controller.dart deleted file mode 100644 index 232cabd1..00000000 --- a/lib/src/features/manga_book/presentation/manga_details/controller/manga_details_controller.dart +++ /dev/null @@ -1,320 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:dio/dio.dart'; -import 'package:riverpod_annotation/riverpod_annotation.dart'; - -import '../../../../../constants/db_keys.dart'; -import '../../../../../constants/enum.dart'; -import '../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../../utils/mixin/shared_preferences_client_mixin.dart'; -import '../../../../library/domain/category/category_model.dart'; -import '../../../data/manga_book_repository.dart'; -import '../../../domain/chapter/chapter_model.dart'; -import '../../../domain/manga/manga_model.dart'; - -part 'manga_details_controller.g.dart'; - -@riverpod -class MangaWithId extends _$MangaWithId { - @override - Future build({required int mangaId}) async { - final token = CancelToken(); - ref.onDispose(token.cancel); - final result = await ref - .watch(mangaBookRepositoryProvider) - .getManga(mangaId: mangaId, cancelToken: token); - ref.keepAlive(); - return result; - } - - Future refresh([bool onlineFetch = false]) async { - final token = CancelToken(); - ref.onDispose(token.cancel); - final result = await AsyncValue.guard( - () => ref.watch(mangaBookRepositoryProvider).getManga( - mangaId: mangaId, - cancelToken: token, - onlineFetch: onlineFetch, - ), - ); - ref.keepAlive(); - if (result.hasError) { - state = result.copyWithPrevious(state); - } else { - state = result; - } - } -} - -@riverpod -class MangaChapterList extends _$MangaChapterList { - @override - Future?> build({required int mangaId}) async { - final token = CancelToken(); - ref.onDispose(token.cancel); - final result = await ref.watch(mangaBookRepositoryProvider).getChapterList( - mangaId: mangaId, - cancelToken: token, - onlineFetch: false, - ); - ref.keepAlive(); - return result; - } - - Future refresh([bool onlineFetch = false]) async { - final token = CancelToken(); - ref.onDispose(token.cancel); - final result = await AsyncValue.guard( - () => ref.read(mangaBookRepositoryProvider).getChapterList( - mangaId: mangaId, - cancelToken: token, - onlineFetch: onlineFetch, - ), - ); - ref.keepAlive(); - if (result.hasError) { - state = result.copyWithPrevious(state); - } else { - state = result; - } - } - - void updateChapter(int index, Chapter chapter) { - try { - final newList = [...?state.valueOrNull]; - newList[index] = chapter; - state = AsyncData?>(newList).copyWithPrevious(state); - } catch (e) { - // - } - } -} - -@riverpod -Set mangaScanlatorList(MangaScanlatorListRef ref, - {required int mangaId}) { - final chapterList = ref.watch(mangaChapterListProvider(mangaId: mangaId)); - final scanlatorList = {}; - chapterList.whenData((data) { - if (data == null) return; - for (final chapter in data) { - if (chapter.scanlator.isNotBlank) { - scanlatorList.add(chapter.scanlator!); - } - } - }); - return scanlatorList; -} - -@riverpod -class MangaChapterFilterScanlator extends _$MangaChapterFilterScanlator { - @override - String build({required int mangaId}) { - final manga = ref.watch(mangaWithIdProvider(mangaId: mangaId)); - return manga.valueOrNull?.meta?.scanlator ?? MangaMetaKeys.scanlator.key; - } - - void update(String? scanlator) async { - await AsyncValue.guard( - () => ref.read(mangaBookRepositoryProvider).patchMangaMeta( - mangaId: mangaId, - key: MangaMetaKeys.scanlator.key, - value: scanlator ?? MangaMetaKeys.scanlator.key, - ), - ); - ref.invalidate(mangaWithIdProvider(mangaId: mangaId)); - state = scanlator ?? MangaMetaKeys.scanlator.key; - } -} - -@riverpod -AsyncValue?> mangaChapterListWithFilter( - MangaChapterListWithFilterRef ref, { - required int mangaId, -}) { - final chapterList = ref.watch(mangaChapterListProvider(mangaId: mangaId)); - final chapterFilterUnread = ref.watch(mangaChapterFilterUnreadProvider); - final chapterFilterDownloaded = - ref.watch(mangaChapterFilterDownloadedProvider); - final chapterFilterBookmark = ref.watch(mangaChapterFilterBookmarkedProvider); - final ChapterSort sortedBy = ref.watch(mangaChapterSortProvider) ?? - DBKeys.chapterSortDirection.initial; - final sortedDirection = - ref.watch(mangaChapterSortDirectionProvider).ifNull(true); - - final chapterFilterScanlator = - ref.watch(mangaChapterFilterScanlatorProvider(mangaId: mangaId)); - - bool applyChapterFilter(Chapter chapter) { - if (chapterFilterUnread != null && - (chapterFilterUnread ^ !(chapter.read.ifNull()))) { - return false; - } - - if (chapterFilterDownloaded != null && - (chapterFilterDownloaded ^ (chapter.downloaded.ifNull()))) { - return false; - } - - if (chapterFilterBookmark != null && - (chapterFilterBookmark ^ (chapter.bookmarked.ifNull()))) { - return false; - } - - if (chapterFilterScanlator != MangaMetaKeys.scanlator.key && - chapter.scanlator != chapterFilterScanlator) { - return false; - } - return true; - } - - int applyChapterSort(Chapter m1, Chapter m2) { - final sortDirToggle = (sortedDirection ? 1 : -1); - return (switch (sortedBy) { - ChapterSort.fetchedDate => - (m1.fetchedAt ?? 0).compareTo(m2.fetchedAt ?? 0), - ChapterSort.source => (m1.index ?? 0).compareTo(m2.index ?? 0), - ChapterSort.uploadDate => - (m1.uploadDate ?? 0).compareTo(m2.uploadDate ?? 0), - }) * - sortDirToggle; - } - - return chapterList.copyWithData( - (data) => [...?data?.where(applyChapterFilter)]..sort(applyChapterSort), - ); -} - -@riverpod -Chapter? firstUnreadInFilteredChapterList( - FirstUnreadInFilteredChapterListRef ref, { - required int mangaId, -}) { - final isAscSorted = ref.watch(mangaChapterSortDirectionProvider) ?? - DBKeys.chapterSortDirection.initial; - final filteredList = ref - .watch(mangaChapterListWithFilterProvider(mangaId: mangaId)) - .valueOrNull; - if (filteredList == null) { - return null; - } else { - if (isAscSorted) { - return filteredList - .firstWhereOrNull((element) => !element.read.ifNull(true)); - } else { - return filteredList - .lastWhereOrNull((element) => !element.read.ifNull(true)); - } - } -} - -@riverpod -({Chapter? first, Chapter? second})? getNextAndPreviousChapters( - GetNextAndPreviousChaptersRef ref, { - required int mangaId, - required String chapterIndex, - bool shouldAscSort = true, -}) { - final isAscSorted = ref.watch(mangaChapterSortDirectionProvider) ?? - DBKeys.chapterSortDirection.initial; - final filteredList = ref - .watch(mangaChapterListWithFilterProvider(mangaId: mangaId)) - .valueOrNull; - if (filteredList == null) { - return null; - } else { - final currentChapterIndex = filteredList - .indexWhere((element) => "${element.index}" == chapterIndex); - final prevChapter = - currentChapterIndex > 0 ? filteredList[currentChapterIndex - 1] : null; - final nextChapter = currentChapterIndex < (filteredList.length - 1) - ? filteredList[currentChapterIndex + 1] - : null; - return ( - first: shouldAscSort && isAscSorted ? nextChapter : prevChapter, - second: shouldAscSort && isAscSorted ? prevChapter : nextChapter, - ); - } -} - -@riverpod -class MangaChapterSort extends _$MangaChapterSort - with SharedPreferenceEnumClientMixin { - @override - ChapterSort? build() => initialize( - ref, - key: DBKeys.chapterSort.name, - initial: DBKeys.chapterSort.initial, - enumList: ChapterSort.values, - ); -} - -@riverpod -class MangaChapterSortDirection extends _$MangaChapterSortDirection - with SharedPreferenceClientMixin { - @override - bool? build() => initialize( - ref, - key: DBKeys.chapterSortDirection.name, - initial: DBKeys.chapterSortDirection.initial, - ); -} - -@riverpod -class MangaChapterFilterDownloaded extends _$MangaChapterFilterDownloaded - with SharedPreferenceClientMixin { - @override - bool? build() => initialize( - ref, - key: DBKeys.chapterFilterDownloaded.name, - initial: DBKeys.chapterFilterDownloaded.initial, - ); -} - -@riverpod -class MangaChapterFilterUnread extends _$MangaChapterFilterUnread - with SharedPreferenceClientMixin { - @override - bool? build() => initialize( - ref, - key: DBKeys.chapterFilterUnread.name, - initial: DBKeys.chapterFilterUnread.initial, - ); -} - -@riverpod -class MangaChapterFilterBookmarked extends _$MangaChapterFilterBookmarked - with SharedPreferenceClientMixin { - @override - bool? build() => initialize( - ref, - key: DBKeys.chapterFilterBookmarked.name, - initial: DBKeys.chapterFilterBookmarked.initial, - ); -} - -@riverpod -class MangaCategoryList extends _$MangaCategoryList { - @override - FutureOr?> build(int mangaId) async { - final result = await ref - .watch(mangaBookRepositoryProvider) - .getMangaCategoryList(mangaId: mangaId); - return { - for (Category i in (result ?? [])) "${i.id ?? ''}": i, - }; - } - - Future refresh() async { - final result = await AsyncValue.guard(() => ref - .watch(mangaBookRepositoryProvider) - .getMangaCategoryList(mangaId: mangaId)); - state = result.copyWithData((data) => { - for (Category i in (data ?? [])) "${i.id ?? ''}": i, - }); - } -} diff --git a/lib/src/features/manga_book/presentation/manga_details/controller/manga_details_controller.g.dart b/lib/src/features/manga_book/presentation/manga_details/controller/manga_details_controller.g.dart deleted file mode 100644 index 1aae01e3..00000000 --- a/lib/src/features/manga_book/presentation/manga_details/controller/manga_details_controller.g.dart +++ /dev/null @@ -1,1263 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'manga_details_controller.dart'; - -// ************************************************************************** -// RiverpodGenerator -// ************************************************************************** - -String _$mangaScanlatorListHash() => - r'de9a418bc7324f26283f6409bff10dff5b8c676d'; - -/// Copied from Dart SDK -class _SystemHash { - _SystemHash._(); - - static int combine(int hash, int value) { - // ignore: parameter_assignments - hash = 0x1fffffff & (hash + value); - // ignore: parameter_assignments - hash = 0x1fffffff & (hash + ((0x0007ffff & hash) << 10)); - return hash ^ (hash >> 6); - } - - static int finish(int hash) { - // ignore: parameter_assignments - hash = 0x1fffffff & (hash + ((0x03ffffff & hash) << 3)); - // ignore: parameter_assignments - hash = hash ^ (hash >> 11); - return 0x1fffffff & (hash + ((0x00003fff & hash) << 15)); - } -} - -/// See also [mangaScanlatorList]. -@ProviderFor(mangaScanlatorList) -const mangaScanlatorListProvider = MangaScanlatorListFamily(); - -/// See also [mangaScanlatorList]. -class MangaScanlatorListFamily extends Family> { - /// See also [mangaScanlatorList]. - const MangaScanlatorListFamily(); - - /// See also [mangaScanlatorList]. - MangaScanlatorListProvider call({ - required int mangaId, - }) { - return MangaScanlatorListProvider( - mangaId: mangaId, - ); - } - - @override - MangaScanlatorListProvider getProviderOverride( - covariant MangaScanlatorListProvider provider, - ) { - return call( - mangaId: provider.mangaId, - ); - } - - static const Iterable? _dependencies = null; - - @override - Iterable? get dependencies => _dependencies; - - static const Iterable? _allTransitiveDependencies = null; - - @override - Iterable? get allTransitiveDependencies => - _allTransitiveDependencies; - - @override - String? get name => r'mangaScanlatorListProvider'; -} - -/// See also [mangaScanlatorList]. -class MangaScanlatorListProvider extends AutoDisposeProvider> { - /// See also [mangaScanlatorList]. - MangaScanlatorListProvider({ - required int mangaId, - }) : this._internal( - (ref) => mangaScanlatorList( - ref as MangaScanlatorListRef, - mangaId: mangaId, - ), - from: mangaScanlatorListProvider, - name: r'mangaScanlatorListProvider', - debugGetCreateSourceHash: - const bool.fromEnvironment('dart.vm.product') - ? null - : _$mangaScanlatorListHash, - dependencies: MangaScanlatorListFamily._dependencies, - allTransitiveDependencies: - MangaScanlatorListFamily._allTransitiveDependencies, - mangaId: mangaId, - ); - - MangaScanlatorListProvider._internal( - super._createNotifier, { - required super.name, - required super.dependencies, - required super.allTransitiveDependencies, - required super.debugGetCreateSourceHash, - required super.from, - required this.mangaId, - }) : super.internal(); - - final int mangaId; - - @override - Override overrideWith( - Set Function(MangaScanlatorListRef provider) create, - ) { - return ProviderOverride( - origin: this, - override: MangaScanlatorListProvider._internal( - (ref) => create(ref as MangaScanlatorListRef), - from: from, - name: null, - dependencies: null, - allTransitiveDependencies: null, - debugGetCreateSourceHash: null, - mangaId: mangaId, - ), - ); - } - - @override - AutoDisposeProviderElement> createElement() { - return _MangaScanlatorListProviderElement(this); - } - - @override - bool operator ==(Object other) { - return other is MangaScanlatorListProvider && other.mangaId == mangaId; - } - - @override - int get hashCode { - var hash = _SystemHash.combine(0, runtimeType.hashCode); - hash = _SystemHash.combine(hash, mangaId.hashCode); - - return _SystemHash.finish(hash); - } -} - -mixin MangaScanlatorListRef on AutoDisposeProviderRef> { - /// The parameter `mangaId` of this provider. - int get mangaId; -} - -class _MangaScanlatorListProviderElement - extends AutoDisposeProviderElement> with MangaScanlatorListRef { - _MangaScanlatorListProviderElement(super.provider); - - @override - int get mangaId => (origin as MangaScanlatorListProvider).mangaId; -} - -String _$mangaChapterListWithFilterHash() => - r'd8e95ee63920e7ee5acf15deda7b9d795ca452c9'; - -/// See also [mangaChapterListWithFilter]. -@ProviderFor(mangaChapterListWithFilter) -const mangaChapterListWithFilterProvider = MangaChapterListWithFilterFamily(); - -/// See also [mangaChapterListWithFilter]. -class MangaChapterListWithFilterFamily - extends Family?>> { - /// See also [mangaChapterListWithFilter]. - const MangaChapterListWithFilterFamily(); - - /// See also [mangaChapterListWithFilter]. - MangaChapterListWithFilterProvider call({ - required int mangaId, - }) { - return MangaChapterListWithFilterProvider( - mangaId: mangaId, - ); - } - - @override - MangaChapterListWithFilterProvider getProviderOverride( - covariant MangaChapterListWithFilterProvider provider, - ) { - return call( - mangaId: provider.mangaId, - ); - } - - static const Iterable? _dependencies = null; - - @override - Iterable? get dependencies => _dependencies; - - static const Iterable? _allTransitiveDependencies = null; - - @override - Iterable? get allTransitiveDependencies => - _allTransitiveDependencies; - - @override - String? get name => r'mangaChapterListWithFilterProvider'; -} - -/// See also [mangaChapterListWithFilter]. -class MangaChapterListWithFilterProvider - extends AutoDisposeProvider?>> { - /// See also [mangaChapterListWithFilter]. - MangaChapterListWithFilterProvider({ - required int mangaId, - }) : this._internal( - (ref) => mangaChapterListWithFilter( - ref as MangaChapterListWithFilterRef, - mangaId: mangaId, - ), - from: mangaChapterListWithFilterProvider, - name: r'mangaChapterListWithFilterProvider', - debugGetCreateSourceHash: - const bool.fromEnvironment('dart.vm.product') - ? null - : _$mangaChapterListWithFilterHash, - dependencies: MangaChapterListWithFilterFamily._dependencies, - allTransitiveDependencies: - MangaChapterListWithFilterFamily._allTransitiveDependencies, - mangaId: mangaId, - ); - - MangaChapterListWithFilterProvider._internal( - super._createNotifier, { - required super.name, - required super.dependencies, - required super.allTransitiveDependencies, - required super.debugGetCreateSourceHash, - required super.from, - required this.mangaId, - }) : super.internal(); - - final int mangaId; - - @override - Override overrideWith( - AsyncValue?> Function(MangaChapterListWithFilterRef provider) - create, - ) { - return ProviderOverride( - origin: this, - override: MangaChapterListWithFilterProvider._internal( - (ref) => create(ref as MangaChapterListWithFilterRef), - from: from, - name: null, - dependencies: null, - allTransitiveDependencies: null, - debugGetCreateSourceHash: null, - mangaId: mangaId, - ), - ); - } - - @override - AutoDisposeProviderElement?>> createElement() { - return _MangaChapterListWithFilterProviderElement(this); - } - - @override - bool operator ==(Object other) { - return other is MangaChapterListWithFilterProvider && - other.mangaId == mangaId; - } - - @override - int get hashCode { - var hash = _SystemHash.combine(0, runtimeType.hashCode); - hash = _SystemHash.combine(hash, mangaId.hashCode); - - return _SystemHash.finish(hash); - } -} - -mixin MangaChapterListWithFilterRef - on AutoDisposeProviderRef?>> { - /// The parameter `mangaId` of this provider. - int get mangaId; -} - -class _MangaChapterListWithFilterProviderElement - extends AutoDisposeProviderElement?>> - with MangaChapterListWithFilterRef { - _MangaChapterListWithFilterProviderElement(super.provider); - - @override - int get mangaId => (origin as MangaChapterListWithFilterProvider).mangaId; -} - -String _$firstUnreadInFilteredChapterListHash() => - r'ed13a5108da7bb4f9224899075348531da8a118e'; - -/// See also [firstUnreadInFilteredChapterList]. -@ProviderFor(firstUnreadInFilteredChapterList) -const firstUnreadInFilteredChapterListProvider = - FirstUnreadInFilteredChapterListFamily(); - -/// See also [firstUnreadInFilteredChapterList]. -class FirstUnreadInFilteredChapterListFamily extends Family { - /// See also [firstUnreadInFilteredChapterList]. - const FirstUnreadInFilteredChapterListFamily(); - - /// See also [firstUnreadInFilteredChapterList]. - FirstUnreadInFilteredChapterListProvider call({ - required int mangaId, - }) { - return FirstUnreadInFilteredChapterListProvider( - mangaId: mangaId, - ); - } - - @override - FirstUnreadInFilteredChapterListProvider getProviderOverride( - covariant FirstUnreadInFilteredChapterListProvider provider, - ) { - return call( - mangaId: provider.mangaId, - ); - } - - static const Iterable? _dependencies = null; - - @override - Iterable? get dependencies => _dependencies; - - static const Iterable? _allTransitiveDependencies = null; - - @override - Iterable? get allTransitiveDependencies => - _allTransitiveDependencies; - - @override - String? get name => r'firstUnreadInFilteredChapterListProvider'; -} - -/// See also [firstUnreadInFilteredChapterList]. -class FirstUnreadInFilteredChapterListProvider - extends AutoDisposeProvider { - /// See also [firstUnreadInFilteredChapterList]. - FirstUnreadInFilteredChapterListProvider({ - required int mangaId, - }) : this._internal( - (ref) => firstUnreadInFilteredChapterList( - ref as FirstUnreadInFilteredChapterListRef, - mangaId: mangaId, - ), - from: firstUnreadInFilteredChapterListProvider, - name: r'firstUnreadInFilteredChapterListProvider', - debugGetCreateSourceHash: - const bool.fromEnvironment('dart.vm.product') - ? null - : _$firstUnreadInFilteredChapterListHash, - dependencies: FirstUnreadInFilteredChapterListFamily._dependencies, - allTransitiveDependencies: - FirstUnreadInFilteredChapterListFamily._allTransitiveDependencies, - mangaId: mangaId, - ); - - FirstUnreadInFilteredChapterListProvider._internal( - super._createNotifier, { - required super.name, - required super.dependencies, - required super.allTransitiveDependencies, - required super.debugGetCreateSourceHash, - required super.from, - required this.mangaId, - }) : super.internal(); - - final int mangaId; - - @override - Override overrideWith( - Chapter? Function(FirstUnreadInFilteredChapterListRef provider) create, - ) { - return ProviderOverride( - origin: this, - override: FirstUnreadInFilteredChapterListProvider._internal( - (ref) => create(ref as FirstUnreadInFilteredChapterListRef), - from: from, - name: null, - dependencies: null, - allTransitiveDependencies: null, - debugGetCreateSourceHash: null, - mangaId: mangaId, - ), - ); - } - - @override - AutoDisposeProviderElement createElement() { - return _FirstUnreadInFilteredChapterListProviderElement(this); - } - - @override - bool operator ==(Object other) { - return other is FirstUnreadInFilteredChapterListProvider && - other.mangaId == mangaId; - } - - @override - int get hashCode { - var hash = _SystemHash.combine(0, runtimeType.hashCode); - hash = _SystemHash.combine(hash, mangaId.hashCode); - - return _SystemHash.finish(hash); - } -} - -mixin FirstUnreadInFilteredChapterListRef on AutoDisposeProviderRef { - /// The parameter `mangaId` of this provider. - int get mangaId; -} - -class _FirstUnreadInFilteredChapterListProviderElement - extends AutoDisposeProviderElement - with FirstUnreadInFilteredChapterListRef { - _FirstUnreadInFilteredChapterListProviderElement(super.provider); - - @override - int get mangaId => - (origin as FirstUnreadInFilteredChapterListProvider).mangaId; -} - -String _$getNextAndPreviousChaptersHash() => - r'c4de0562e24cb2b3a6ead00889b2c5325d8cf7b5'; - -/// See also [getNextAndPreviousChapters]. -@ProviderFor(getNextAndPreviousChapters) -const getNextAndPreviousChaptersProvider = GetNextAndPreviousChaptersFamily(); - -/// See also [getNextAndPreviousChapters]. -class GetNextAndPreviousChaptersFamily - extends Family<({Chapter? first, Chapter? second})?> { - /// See also [getNextAndPreviousChapters]. - const GetNextAndPreviousChaptersFamily(); - - /// See also [getNextAndPreviousChapters]. - GetNextAndPreviousChaptersProvider call({ - required int mangaId, - required String chapterIndex, - bool shouldAscSort = true, - }) { - return GetNextAndPreviousChaptersProvider( - mangaId: mangaId, - chapterIndex: chapterIndex, - shouldAscSort: shouldAscSort, - ); - } - - @override - GetNextAndPreviousChaptersProvider getProviderOverride( - covariant GetNextAndPreviousChaptersProvider provider, - ) { - return call( - mangaId: provider.mangaId, - chapterIndex: provider.chapterIndex, - shouldAscSort: provider.shouldAscSort, - ); - } - - static const Iterable? _dependencies = null; - - @override - Iterable? get dependencies => _dependencies; - - static const Iterable? _allTransitiveDependencies = null; - - @override - Iterable? get allTransitiveDependencies => - _allTransitiveDependencies; - - @override - String? get name => r'getNextAndPreviousChaptersProvider'; -} - -/// See also [getNextAndPreviousChapters]. -class GetNextAndPreviousChaptersProvider - extends AutoDisposeProvider<({Chapter? first, Chapter? second})?> { - /// See also [getNextAndPreviousChapters]. - GetNextAndPreviousChaptersProvider({ - required int mangaId, - required String chapterIndex, - bool shouldAscSort = true, - }) : this._internal( - (ref) => getNextAndPreviousChapters( - ref as GetNextAndPreviousChaptersRef, - mangaId: mangaId, - chapterIndex: chapterIndex, - shouldAscSort: shouldAscSort, - ), - from: getNextAndPreviousChaptersProvider, - name: r'getNextAndPreviousChaptersProvider', - debugGetCreateSourceHash: - const bool.fromEnvironment('dart.vm.product') - ? null - : _$getNextAndPreviousChaptersHash, - dependencies: GetNextAndPreviousChaptersFamily._dependencies, - allTransitiveDependencies: - GetNextAndPreviousChaptersFamily._allTransitiveDependencies, - mangaId: mangaId, - chapterIndex: chapterIndex, - shouldAscSort: shouldAscSort, - ); - - GetNextAndPreviousChaptersProvider._internal( - super._createNotifier, { - required super.name, - required super.dependencies, - required super.allTransitiveDependencies, - required super.debugGetCreateSourceHash, - required super.from, - required this.mangaId, - required this.chapterIndex, - required this.shouldAscSort, - }) : super.internal(); - - final int mangaId; - final String chapterIndex; - final bool shouldAscSort; - - @override - Override overrideWith( - ({Chapter? first, Chapter? second})? Function( - GetNextAndPreviousChaptersRef provider) - create, - ) { - return ProviderOverride( - origin: this, - override: GetNextAndPreviousChaptersProvider._internal( - (ref) => create(ref as GetNextAndPreviousChaptersRef), - from: from, - name: null, - dependencies: null, - allTransitiveDependencies: null, - debugGetCreateSourceHash: null, - mangaId: mangaId, - chapterIndex: chapterIndex, - shouldAscSort: shouldAscSort, - ), - ); - } - - @override - AutoDisposeProviderElement<({Chapter? first, Chapter? second})?> - createElement() { - return _GetNextAndPreviousChaptersProviderElement(this); - } - - @override - bool operator ==(Object other) { - return other is GetNextAndPreviousChaptersProvider && - other.mangaId == mangaId && - other.chapterIndex == chapterIndex && - other.shouldAscSort == shouldAscSort; - } - - @override - int get hashCode { - var hash = _SystemHash.combine(0, runtimeType.hashCode); - hash = _SystemHash.combine(hash, mangaId.hashCode); - hash = _SystemHash.combine(hash, chapterIndex.hashCode); - hash = _SystemHash.combine(hash, shouldAscSort.hashCode); - - return _SystemHash.finish(hash); - } -} - -mixin GetNextAndPreviousChaptersRef - on AutoDisposeProviderRef<({Chapter? first, Chapter? second})?> { - /// The parameter `mangaId` of this provider. - int get mangaId; - - /// The parameter `chapterIndex` of this provider. - String get chapterIndex; - - /// The parameter `shouldAscSort` of this provider. - bool get shouldAscSort; -} - -class _GetNextAndPreviousChaptersProviderElement - extends AutoDisposeProviderElement<({Chapter? first, Chapter? second})?> - with GetNextAndPreviousChaptersRef { - _GetNextAndPreviousChaptersProviderElement(super.provider); - - @override - int get mangaId => (origin as GetNextAndPreviousChaptersProvider).mangaId; - @override - String get chapterIndex => - (origin as GetNextAndPreviousChaptersProvider).chapterIndex; - @override - bool get shouldAscSort => - (origin as GetNextAndPreviousChaptersProvider).shouldAscSort; -} - -String _$mangaWithIdHash() => r'aea36ab8126c57f1c73a24b1f8dc6ecbd03f25c1'; - -abstract class _$MangaWithId extends BuildlessAutoDisposeAsyncNotifier { - late final int mangaId; - - FutureOr build({ - required int mangaId, - }); -} - -/// See also [MangaWithId]. -@ProviderFor(MangaWithId) -const mangaWithIdProvider = MangaWithIdFamily(); - -/// See also [MangaWithId]. -class MangaWithIdFamily extends Family> { - /// See also [MangaWithId]. - const MangaWithIdFamily(); - - /// See also [MangaWithId]. - MangaWithIdProvider call({ - required int mangaId, - }) { - return MangaWithIdProvider( - mangaId: mangaId, - ); - } - - @override - MangaWithIdProvider getProviderOverride( - covariant MangaWithIdProvider provider, - ) { - return call( - mangaId: provider.mangaId, - ); - } - - static const Iterable? _dependencies = null; - - @override - Iterable? get dependencies => _dependencies; - - static const Iterable? _allTransitiveDependencies = null; - - @override - Iterable? get allTransitiveDependencies => - _allTransitiveDependencies; - - @override - String? get name => r'mangaWithIdProvider'; -} - -/// See also [MangaWithId]. -class MangaWithIdProvider - extends AutoDisposeAsyncNotifierProviderImpl { - /// See also [MangaWithId]. - MangaWithIdProvider({ - required int mangaId, - }) : this._internal( - () => MangaWithId()..mangaId = mangaId, - from: mangaWithIdProvider, - name: r'mangaWithIdProvider', - debugGetCreateSourceHash: - const bool.fromEnvironment('dart.vm.product') - ? null - : _$mangaWithIdHash, - dependencies: MangaWithIdFamily._dependencies, - allTransitiveDependencies: - MangaWithIdFamily._allTransitiveDependencies, - mangaId: mangaId, - ); - - MangaWithIdProvider._internal( - super._createNotifier, { - required super.name, - required super.dependencies, - required super.allTransitiveDependencies, - required super.debugGetCreateSourceHash, - required super.from, - required this.mangaId, - }) : super.internal(); - - final int mangaId; - - @override - FutureOr runNotifierBuild( - covariant MangaWithId notifier, - ) { - return notifier.build( - mangaId: mangaId, - ); - } - - @override - Override overrideWith(MangaWithId Function() create) { - return ProviderOverride( - origin: this, - override: MangaWithIdProvider._internal( - () => create()..mangaId = mangaId, - from: from, - name: null, - dependencies: null, - allTransitiveDependencies: null, - debugGetCreateSourceHash: null, - mangaId: mangaId, - ), - ); - } - - @override - AutoDisposeAsyncNotifierProviderElement createElement() { - return _MangaWithIdProviderElement(this); - } - - @override - bool operator ==(Object other) { - return other is MangaWithIdProvider && other.mangaId == mangaId; - } - - @override - int get hashCode { - var hash = _SystemHash.combine(0, runtimeType.hashCode); - hash = _SystemHash.combine(hash, mangaId.hashCode); - - return _SystemHash.finish(hash); - } -} - -mixin MangaWithIdRef on AutoDisposeAsyncNotifierProviderRef { - /// The parameter `mangaId` of this provider. - int get mangaId; -} - -class _MangaWithIdProviderElement - extends AutoDisposeAsyncNotifierProviderElement - with MangaWithIdRef { - _MangaWithIdProviderElement(super.provider); - - @override - int get mangaId => (origin as MangaWithIdProvider).mangaId; -} - -String _$mangaChapterListHash() => r'cf56cf36f6e1373d708eb3099b396395ec54032d'; - -abstract class _$MangaChapterList - extends BuildlessAutoDisposeAsyncNotifier?> { - late final int mangaId; - - FutureOr?> build({ - required int mangaId, - }); -} - -/// See also [MangaChapterList]. -@ProviderFor(MangaChapterList) -const mangaChapterListProvider = MangaChapterListFamily(); - -/// See also [MangaChapterList]. -class MangaChapterListFamily extends Family?>> { - /// See also [MangaChapterList]. - const MangaChapterListFamily(); - - /// See also [MangaChapterList]. - MangaChapterListProvider call({ - required int mangaId, - }) { - return MangaChapterListProvider( - mangaId: mangaId, - ); - } - - @override - MangaChapterListProvider getProviderOverride( - covariant MangaChapterListProvider provider, - ) { - return call( - mangaId: provider.mangaId, - ); - } - - static const Iterable? _dependencies = null; - - @override - Iterable? get dependencies => _dependencies; - - static const Iterable? _allTransitiveDependencies = null; - - @override - Iterable? get allTransitiveDependencies => - _allTransitiveDependencies; - - @override - String? get name => r'mangaChapterListProvider'; -} - -/// See also [MangaChapterList]. -class MangaChapterListProvider extends AutoDisposeAsyncNotifierProviderImpl< - MangaChapterList, List?> { - /// See also [MangaChapterList]. - MangaChapterListProvider({ - required int mangaId, - }) : this._internal( - () => MangaChapterList()..mangaId = mangaId, - from: mangaChapterListProvider, - name: r'mangaChapterListProvider', - debugGetCreateSourceHash: - const bool.fromEnvironment('dart.vm.product') - ? null - : _$mangaChapterListHash, - dependencies: MangaChapterListFamily._dependencies, - allTransitiveDependencies: - MangaChapterListFamily._allTransitiveDependencies, - mangaId: mangaId, - ); - - MangaChapterListProvider._internal( - super._createNotifier, { - required super.name, - required super.dependencies, - required super.allTransitiveDependencies, - required super.debugGetCreateSourceHash, - required super.from, - required this.mangaId, - }) : super.internal(); - - final int mangaId; - - @override - FutureOr?> runNotifierBuild( - covariant MangaChapterList notifier, - ) { - return notifier.build( - mangaId: mangaId, - ); - } - - @override - Override overrideWith(MangaChapterList Function() create) { - return ProviderOverride( - origin: this, - override: MangaChapterListProvider._internal( - () => create()..mangaId = mangaId, - from: from, - name: null, - dependencies: null, - allTransitiveDependencies: null, - debugGetCreateSourceHash: null, - mangaId: mangaId, - ), - ); - } - - @override - AutoDisposeAsyncNotifierProviderElement?> - createElement() { - return _MangaChapterListProviderElement(this); - } - - @override - bool operator ==(Object other) { - return other is MangaChapterListProvider && other.mangaId == mangaId; - } - - @override - int get hashCode { - var hash = _SystemHash.combine(0, runtimeType.hashCode); - hash = _SystemHash.combine(hash, mangaId.hashCode); - - return _SystemHash.finish(hash); - } -} - -mixin MangaChapterListRef - on AutoDisposeAsyncNotifierProviderRef?> { - /// The parameter `mangaId` of this provider. - int get mangaId; -} - -class _MangaChapterListProviderElement - extends AutoDisposeAsyncNotifierProviderElement?> with MangaChapterListRef { - _MangaChapterListProviderElement(super.provider); - - @override - int get mangaId => (origin as MangaChapterListProvider).mangaId; -} - -String _$mangaChapterFilterScanlatorHash() => - r'4d6da76af3cbbf033f1ca5fb04ea6eb7798c5820'; - -abstract class _$MangaChapterFilterScanlator - extends BuildlessAutoDisposeNotifier { - late final int mangaId; - - String build({ - required int mangaId, - }); -} - -/// See also [MangaChapterFilterScanlator]. -@ProviderFor(MangaChapterFilterScanlator) -const mangaChapterFilterScanlatorProvider = MangaChapterFilterScanlatorFamily(); - -/// See also [MangaChapterFilterScanlator]. -class MangaChapterFilterScanlatorFamily extends Family { - /// See also [MangaChapterFilterScanlator]. - const MangaChapterFilterScanlatorFamily(); - - /// See also [MangaChapterFilterScanlator]. - MangaChapterFilterScanlatorProvider call({ - required int mangaId, - }) { - return MangaChapterFilterScanlatorProvider( - mangaId: mangaId, - ); - } - - @override - MangaChapterFilterScanlatorProvider getProviderOverride( - covariant MangaChapterFilterScanlatorProvider provider, - ) { - return call( - mangaId: provider.mangaId, - ); - } - - static const Iterable? _dependencies = null; - - @override - Iterable? get dependencies => _dependencies; - - static const Iterable? _allTransitiveDependencies = null; - - @override - Iterable? get allTransitiveDependencies => - _allTransitiveDependencies; - - @override - String? get name => r'mangaChapterFilterScanlatorProvider'; -} - -/// See also [MangaChapterFilterScanlator]. -class MangaChapterFilterScanlatorProvider - extends AutoDisposeNotifierProviderImpl { - /// See also [MangaChapterFilterScanlator]. - MangaChapterFilterScanlatorProvider({ - required int mangaId, - }) : this._internal( - () => MangaChapterFilterScanlator()..mangaId = mangaId, - from: mangaChapterFilterScanlatorProvider, - name: r'mangaChapterFilterScanlatorProvider', - debugGetCreateSourceHash: - const bool.fromEnvironment('dart.vm.product') - ? null - : _$mangaChapterFilterScanlatorHash, - dependencies: MangaChapterFilterScanlatorFamily._dependencies, - allTransitiveDependencies: - MangaChapterFilterScanlatorFamily._allTransitiveDependencies, - mangaId: mangaId, - ); - - MangaChapterFilterScanlatorProvider._internal( - super._createNotifier, { - required super.name, - required super.dependencies, - required super.allTransitiveDependencies, - required super.debugGetCreateSourceHash, - required super.from, - required this.mangaId, - }) : super.internal(); - - final int mangaId; - - @override - String runNotifierBuild( - covariant MangaChapterFilterScanlator notifier, - ) { - return notifier.build( - mangaId: mangaId, - ); - } - - @override - Override overrideWith(MangaChapterFilterScanlator Function() create) { - return ProviderOverride( - origin: this, - override: MangaChapterFilterScanlatorProvider._internal( - () => create()..mangaId = mangaId, - from: from, - name: null, - dependencies: null, - allTransitiveDependencies: null, - debugGetCreateSourceHash: null, - mangaId: mangaId, - ), - ); - } - - @override - AutoDisposeNotifierProviderElement - createElement() { - return _MangaChapterFilterScanlatorProviderElement(this); - } - - @override - bool operator ==(Object other) { - return other is MangaChapterFilterScanlatorProvider && - other.mangaId == mangaId; - } - - @override - int get hashCode { - var hash = _SystemHash.combine(0, runtimeType.hashCode); - hash = _SystemHash.combine(hash, mangaId.hashCode); - - return _SystemHash.finish(hash); - } -} - -mixin MangaChapterFilterScanlatorRef on AutoDisposeNotifierProviderRef { - /// The parameter `mangaId` of this provider. - int get mangaId; -} - -class _MangaChapterFilterScanlatorProviderElement - extends AutoDisposeNotifierProviderElement with MangaChapterFilterScanlatorRef { - _MangaChapterFilterScanlatorProviderElement(super.provider); - - @override - int get mangaId => (origin as MangaChapterFilterScanlatorProvider).mangaId; -} - -String _$mangaChapterSortHash() => r'c8c1ab8e5211e62f7690f359ffd74d9bb134dcdd'; - -/// See also [MangaChapterSort]. -@ProviderFor(MangaChapterSort) -final mangaChapterSortProvider = - AutoDisposeNotifierProvider.internal( - MangaChapterSort.new, - name: r'mangaChapterSortProvider', - debugGetCreateSourceHash: const bool.fromEnvironment('dart.vm.product') - ? null - : _$mangaChapterSortHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef _$MangaChapterSort = AutoDisposeNotifier; -String _$mangaChapterSortDirectionHash() => - r'2028754952ec76ed4fabae6acea36692526c6aef'; - -/// See also [MangaChapterSortDirection]. -@ProviderFor(MangaChapterSortDirection) -final mangaChapterSortDirectionProvider = - AutoDisposeNotifierProvider.internal( - MangaChapterSortDirection.new, - name: r'mangaChapterSortDirectionProvider', - debugGetCreateSourceHash: const bool.fromEnvironment('dart.vm.product') - ? null - : _$mangaChapterSortDirectionHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef _$MangaChapterSortDirection = AutoDisposeNotifier; -String _$mangaChapterFilterDownloadedHash() => - r'79ecc5ba5a1222c45b3fe90d4ab3af5d5ef45862'; - -/// See also [MangaChapterFilterDownloaded]. -@ProviderFor(MangaChapterFilterDownloaded) -final mangaChapterFilterDownloadedProvider = - AutoDisposeNotifierProvider.internal( - MangaChapterFilterDownloaded.new, - name: r'mangaChapterFilterDownloadedProvider', - debugGetCreateSourceHash: const bool.fromEnvironment('dart.vm.product') - ? null - : _$mangaChapterFilterDownloadedHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef _$MangaChapterFilterDownloaded = AutoDisposeNotifier; -String _$mangaChapterFilterUnreadHash() => - r'3ee19d85422eb771c4c2ce3a49e32732c56b7e02'; - -/// See also [MangaChapterFilterUnread]. -@ProviderFor(MangaChapterFilterUnread) -final mangaChapterFilterUnreadProvider = - AutoDisposeNotifierProvider.internal( - MangaChapterFilterUnread.new, - name: r'mangaChapterFilterUnreadProvider', - debugGetCreateSourceHash: const bool.fromEnvironment('dart.vm.product') - ? null - : _$mangaChapterFilterUnreadHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef _$MangaChapterFilterUnread = AutoDisposeNotifier; -String _$mangaChapterFilterBookmarkedHash() => - r'ce62d26fc7f1be1807028b15499f370dc2872ad2'; - -/// See also [MangaChapterFilterBookmarked]. -@ProviderFor(MangaChapterFilterBookmarked) -final mangaChapterFilterBookmarkedProvider = - AutoDisposeNotifierProvider.internal( - MangaChapterFilterBookmarked.new, - name: r'mangaChapterFilterBookmarkedProvider', - debugGetCreateSourceHash: const bool.fromEnvironment('dart.vm.product') - ? null - : _$mangaChapterFilterBookmarkedHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef _$MangaChapterFilterBookmarked = AutoDisposeNotifier; -String _$mangaCategoryListHash() => r'3fec3a544adc138ec7fbc98ad216e1b7399d0983'; - -abstract class _$MangaCategoryList - extends BuildlessAutoDisposeAsyncNotifier?> { - late final int mangaId; - - FutureOr?> build( - int mangaId, - ); -} - -/// See also [MangaCategoryList]. -@ProviderFor(MangaCategoryList) -const mangaCategoryListProvider = MangaCategoryListFamily(); - -/// See also [MangaCategoryList]. -class MangaCategoryListFamily - extends Family?>> { - /// See also [MangaCategoryList]. - const MangaCategoryListFamily(); - - /// See also [MangaCategoryList]. - MangaCategoryListProvider call( - int mangaId, - ) { - return MangaCategoryListProvider( - mangaId, - ); - } - - @override - MangaCategoryListProvider getProviderOverride( - covariant MangaCategoryListProvider provider, - ) { - return call( - provider.mangaId, - ); - } - - static const Iterable? _dependencies = null; - - @override - Iterable? get dependencies => _dependencies; - - static const Iterable? _allTransitiveDependencies = null; - - @override - Iterable? get allTransitiveDependencies => - _allTransitiveDependencies; - - @override - String? get name => r'mangaCategoryListProvider'; -} - -/// See also [MangaCategoryList]. -class MangaCategoryListProvider extends AutoDisposeAsyncNotifierProviderImpl< - MangaCategoryList, Map?> { - /// See also [MangaCategoryList]. - MangaCategoryListProvider( - int mangaId, - ) : this._internal( - () => MangaCategoryList()..mangaId = mangaId, - from: mangaCategoryListProvider, - name: r'mangaCategoryListProvider', - debugGetCreateSourceHash: - const bool.fromEnvironment('dart.vm.product') - ? null - : _$mangaCategoryListHash, - dependencies: MangaCategoryListFamily._dependencies, - allTransitiveDependencies: - MangaCategoryListFamily._allTransitiveDependencies, - mangaId: mangaId, - ); - - MangaCategoryListProvider._internal( - super._createNotifier, { - required super.name, - required super.dependencies, - required super.allTransitiveDependencies, - required super.debugGetCreateSourceHash, - required super.from, - required this.mangaId, - }) : super.internal(); - - final int mangaId; - - @override - FutureOr?> runNotifierBuild( - covariant MangaCategoryList notifier, - ) { - return notifier.build( - mangaId, - ); - } - - @override - Override overrideWith(MangaCategoryList Function() create) { - return ProviderOverride( - origin: this, - override: MangaCategoryListProvider._internal( - () => create()..mangaId = mangaId, - from: from, - name: null, - dependencies: null, - allTransitiveDependencies: null, - debugGetCreateSourceHash: null, - mangaId: mangaId, - ), - ); - } - - @override - AutoDisposeAsyncNotifierProviderElement?> createElement() { - return _MangaCategoryListProviderElement(this); - } - - @override - bool operator ==(Object other) { - return other is MangaCategoryListProvider && other.mangaId == mangaId; - } - - @override - int get hashCode { - var hash = _SystemHash.combine(0, runtimeType.hashCode); - hash = _SystemHash.combine(hash, mangaId.hashCode); - - return _SystemHash.finish(hash); - } -} - -mixin MangaCategoryListRef - on AutoDisposeAsyncNotifierProviderRef?> { - /// The parameter `mangaId` of this provider. - int get mangaId; -} - -class _MangaCategoryListProviderElement - extends AutoDisposeAsyncNotifierProviderElement?> with MangaCategoryListRef { - _MangaCategoryListProviderElement(super.provider); - - @override - int get mangaId => (origin as MangaCategoryListProvider).mangaId; -} -// ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member diff --git a/lib/src/features/manga_book/presentation/manga_details/manga_details_screen.dart b/lib/src/features/manga_book/presentation/manga_details/manga_details_screen.dart deleted file mode 100644 index 18b967dc..00000000 --- a/lib/src/features/manga_book/presentation/manga_details/manga_details_screen.dart +++ /dev/null @@ -1,330 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'dart:math'; - -import 'package:flutter/material.dart'; -import 'package:flutter_hooks/flutter_hooks.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../../../../constants/app_sizes.dart'; - -import '../../../../routes/router_config.dart'; -import '../../../../utils/extensions/custom_extensions.dart'; -import '../../../../utils/misc/toast/toast.dart'; -import '../../../../widgets/emoticons.dart'; -import '../../../library/presentation/library/controller/library_controller.dart'; -import '../../domain/chapter/chapter_model.dart'; -import '../../widgets/chapter_actions/multi_chapters_actions_bottom_app_bar.dart'; -import 'controller/manga_details_controller.dart'; -import 'widgets/big_screen_manga_details.dart'; -import 'widgets/edit_manga_category_dialog.dart'; -import 'widgets/manga_chapter_organizer.dart'; -import 'widgets/small_screen_manga_details.dart'; - -class MangaDetailsScreen extends HookConsumerWidget { - const MangaDetailsScreen({super.key, required this.mangaId, this.categoryId}); - final int mangaId; - final int? categoryId; - @override - Widget build(BuildContext context, WidgetRef ref) { - // Providers as Class for this screen - final mangaProvider = mangaWithIdProvider(mangaId: mangaId); - final chapterListProvider = mangaChapterListProvider(mangaId: mangaId); - final chapterListFilteredProvider = - mangaChapterListWithFilterProvider(mangaId: mangaId); - - final manga = ref.watch(mangaProvider); - final filteredChapterList = ref.watch(chapterListFilteredProvider); - final firstUnreadChapter = ref.watch( - firstUnreadInFilteredChapterListProvider(mangaId: mangaId), - ); - - final selectedChapters = useState>({}); - - // Refresh manga - final mangaRefresh = useCallback( - ([bool onlineFetch = false]) async => - await ref.read(mangaProvider.notifier).refresh(onlineFetch), - [mangaProvider]); - - // Refresh chapter list - final chapterListRefresh = useCallback( - ([bool onlineFetch = false]) async => - await ref.read(chapterListProvider.notifier).refresh(onlineFetch), - [chapterListProvider]); - - final refresh = useCallback(([onlineFetch = false]) async { - if (context.mounted && onlineFetch) { - ref.read(toastProvider(context)).show( - context.l10n!.updating, - withMicrotask: true, - ); - } - await mangaRefresh(onlineFetch); - await chapterListRefresh(onlineFetch); - if (context.mounted && onlineFetch) { - if (manga.hasError) { - ref.read(toastProvider(context)).showError( - context.l10n!.errorSomethingWentWrong, - ); - } else { - ref.read(toastProvider(context)).show( - context.l10n!.updateCompleted, - withMicrotask: true, - ); - } - } - }, [context, mangaRefresh, chapterListRefresh]); - - useEffect(() { - if (filteredChapterList.isNotLoading && manga.isNotLoading) refresh(); - return; - }, []); - - return WillPopScope( - onWillPop: () async { - if (categoryId != null) { - ref.invalidate(categoryMangaListProvider(categoryId!)); - } - return true; - }, - child: manga.showUiWhenData( - context, - (data) => Scaffold( - appBar: selectedChapters.value.isNotEmpty - ? AppBar( - leading: IconButton( - onPressed: () => selectedChapters.value = ({}), - icon: const Icon(Icons.close_rounded), - ), - title: Text( - context.l10n!.numSelected(selectedChapters.value.length), - ), - actions: [ - IconButton( - onPressed: () { - final chapterList = [ - ...?filteredChapterList.valueOrNull - ]; - selectedChapters.value = ({ - for (Chapter i in chapterList) - if (i.id != null) i.id!: i - }); - }, - icon: const Icon(Icons.select_all_rounded), - ), - IconButton( - onPressed: () { - final chapterList = [ - ...?filteredChapterList.valueOrNull - ]; - selectedChapters.value = ({ - for (Chapter i in chapterList) - if (i.id != null && - !selectedChapters.value.containsKey(i.id)) - i.id!: i - }); - }, - icon: const Icon(Icons.flip_to_back_rounded), - ), - MultiSelectPopupButton( - filteredChapterList: filteredChapterList, - selectedChapters: selectedChapters, - ), - ], - ) - : AppBar( - title: Text(data?.title ?? context.l10n!.manga), - actions: [ - if (context.isTablet) - IconButton( - onPressed: () => refresh(true), - icon: const Icon(Icons.refresh_rounded), - ), - Builder( - builder: (context) => IconButton( - onPressed: () { - if (context.isTablet) { - Scaffold.of(context).openEndDrawer(); - } else { - showModalBottomSheet( - context: context, - shape: RoundedRectangleBorder( - borderRadius: KBorderRadius.rT16.radius, - ), - clipBehavior: Clip.hardEdge, - builder: (_) => - MangaChapterOrganizer(mangaId: mangaId), - ); - } - }, - icon: const Icon(Icons.filter_list_rounded), - ), - ), - PopupMenuButton( - shape: RoundedRectangleBorder( - borderRadius: KBorderRadius.r16.radius, - ), - icon: const Icon(Icons.more_vert_rounded), - itemBuilder: (context) => [ - PopupMenuItem( - onTap: () => Future.microtask( - () => showDialog( - context: context, - builder: (context) => - EditMangaCategoryDialog(mangaId: mangaId), - ), - ), - child: Text(context.l10n!.editCategory), - ), - if (!context.isTablet) - PopupMenuItem( - onTap: () => refresh(true), - child: Text(context.l10n!.refresh), - ), - ], - ) - ], - ), - endDrawer: Drawer( - width: kDrawerWidth, - child: MangaChapterOrganizer(mangaId: mangaId), - ), - bottomSheet: selectedChapters.value.isNotEmpty - ? MultiChaptersActionsBottomAppBar( - afterOptionSelected: chapterListRefresh, - selectedChapters: selectedChapters, - ) - : null, - floatingActionButton: - firstUnreadChapter != null && selectedChapters.value.isEmpty - ? FloatingActionButton.extended( - isExtended: context.isTablet, - label: Text( - data?.lastChapterRead?.index != null - ? context.l10n!.resume - : context.l10n!.start, - ), - icon: const Icon(Icons.play_arrow_rounded), - onPressed: () { - ReaderRoute( - mangaId: firstUnreadChapter.mangaId ?? mangaId, - chapterIndex: firstUnreadChapter.index ?? 0, - showReaderLayoutAnimation: true, - ).push(context); - }, - ) - : null, - body: data != null - ? context.isTablet - ? BigScreenMangaDetails( - chapterList: filteredChapterList, - manga: data, - mangaId: mangaId, - onRefresh: refresh, - onDescriptionRefresh: mangaRefresh, - onListRefresh: chapterListRefresh, - selectedChapters: selectedChapters, - ) - : SmallScreenMangaDetails( - chapterList: filteredChapterList, - manga: data, - mangaId: mangaId, - onRefresh: refresh, - onDescriptionRefresh: mangaRefresh, - onListRefresh: chapterListRefresh, - selectedChapters: selectedChapters, - ) - : Emoticons( - text: context.l10n!.noMangaFound, - button: TextButton( - onPressed: refresh, - child: Text(context.l10n!.refresh), - ), - ), - ), - refresh: refresh, - wrapper: (body) => Scaffold( - appBar: AppBar( - title: Text(context.l10n!.manga), - ), - body: body, - ), - ), - ); - } -} - -class MultiSelectPopupButton extends StatelessWidget { - const MultiSelectPopupButton({ - super.key, - required this.filteredChapterList, - required this.selectedChapters, - }); - - final AsyncValue?> filteredChapterList; - final ValueNotifier> selectedChapters; - - @override - Widget build(BuildContext context) { - return PopupMenuButton( - shape: RoundedRectangleBorder( - borderRadius: KBorderRadius.r16.radius, - ), - icon: const Icon(Icons.more_vert_rounded), - itemBuilder: (context) => [ - PopupMenuItem( - onTap: () { - List chapterList = [...?filteredChapterList.valueOrNull]; - final lastId = selectedChapters.value.keys.last; - final lastIndex = - chapterList.lastIndexWhere((chapter) => chapter.id == lastId); - final maxIndex = min(chapterList.length, lastIndex + 10); - selectedChapters.value = ({ - ...selectedChapters.value, - for (int i = lastIndex + 1; i < maxIndex; i++) - if (chapterList[i].id != null) - chapterList[i].id!: chapterList[i] - }); - }, - child: Text(context.l10n!.selectNext10), - ), - PopupMenuItem( - onTap: () { - final chapterList = [...?filteredChapterList.valueOrNull]; - - selectedChapters.value = ({ - for (Chapter i in chapterList) - if (i.id != null && !i.read.ifNull()) i.id!: i - }); - }, - child: Text(context.l10n!.selectUnread), - ), - PopupMenuItem( - onTap: () { - final chapterList = [...?filteredChapterList.valueOrNull]; - final selectedChapterIds = - selectedChapters.value.keys.toList(growable: false); - final firstSelectedIndex = chapterList.indexWhere( - (chapter) => chapter.id == selectedChapterIds.firstOrNull); - final lastSelectedIndex = chapterList.indexWhere( - (chapter) => chapter.id == selectedChapterIds.lastOrNull); - final firstIndex = min(firstSelectedIndex, lastSelectedIndex); - final lastIndex = max(firstSelectedIndex, lastSelectedIndex); - - selectedChapters.value = ({ - for (int i = firstIndex; i <= lastIndex; i++) - if (chapterList[i].id != null) - chapterList[i].id!: chapterList[i] - }); - }, - child: Text(context.l10n!.selectInBetween), - ), - ], - ); - } -} diff --git a/lib/src/features/manga_book/presentation/manga_details/widgets/big_screen_manga_details.dart b/lib/src/features/manga_book/presentation/manga_details/widgets/big_screen_manga_details.dart deleted file mode 100644 index 7b06c310..00000000 --- a/lib/src/features/manga_book/presentation/manga_details/widgets/big_screen_manga_details.dart +++ /dev/null @@ -1,119 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/foundation.dart'; -import 'package:flutter/material.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../../widgets/emoticons.dart'; -import '../../../data/manga_book_repository.dart'; -import '../../../domain/chapter/chapter_model.dart'; -import '../../../domain/manga/manga_model.dart'; -import 'chapter_list_tile.dart'; -import 'manga_description.dart'; - -class BigScreenMangaDetails extends ConsumerWidget { - const BigScreenMangaDetails({ - super.key, - required this.chapterList, - required this.manga, - required this.mangaId, - required this.selectedChapters, - required this.onListRefresh, - required this.onRefresh, - required this.onDescriptionRefresh, - }); - final Manga manga; - final int mangaId; - final AsyncValueSetter onListRefresh; - final AsyncValueSetter onDescriptionRefresh; - final AsyncValueSetter onRefresh; - final ValueNotifier> selectedChapters; - final AsyncValue?> chapterList; - @override - Widget build(BuildContext context, WidgetRef ref) { - final filteredChapterList = chapterList.valueOrNull; - return RefreshIndicator( - onRefresh: () => onRefresh(true), - child: Row( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Expanded( - child: SingleChildScrollView( - child: MangaDescription( - manga: manga, - removeMangaFromLibrary: (() => ref - .read(mangaBookRepositoryProvider) - .removeMangaFromLibrary(mangaId)), - addMangaToLibrary: (() => ref - .read(mangaBookRepositoryProvider) - .addMangaToLibrary(mangaId)), - refresh: () => onDescriptionRefresh(false), - ), - ), - ), - const VerticalDivider(width: 0), - Expanded( - child: chapterList.showUiWhenData( - context, - (data) { - if (data.isNotBlank) { - return Column( - children: [ - ListTile( - title: Text(context.l10n!.noOfChapters( - filteredChapterList?.length ?? 0, - )), - ), - Expanded( - child: ListView.builder( - physics: const AlwaysScrollableScrollPhysics(), - itemBuilder: (context, index) { - if (filteredChapterList.length == index) { - return const ListTile(); - } - final key = - ValueKey("${filteredChapterList[index].id}"); - final chapter = filteredChapterList[index]; - return ChapterListTile( - key: key, - manga: manga, - chapter: chapter, - updateData: () => onListRefresh(false), - isSelected: selectedChapters.value - .containsKey(chapter.id), - canTapSelect: selectedChapters.value.isNotEmpty, - toggleSelect: (Chapter val) { - if ((val.id).isNull) return; - selectedChapters.value = selectedChapters.value - .toggleKey(val.id!, val); - }, - ); - }, - itemCount: filteredChapterList!.length + 1, - ), - ), - ], - ); - } else { - return Emoticons( - text: context.l10n!.noChaptersFound, - button: TextButton( - onPressed: () => onListRefresh(true), - child: Text(context.l10n!.refresh), - ), - ); - } - }, - refresh: () => onRefresh(false), - ), - ), - ], - ), - ); - } -} diff --git a/lib/src/features/manga_book/presentation/manga_details/widgets/chapter_list_tile.dart b/lib/src/features/manga_book/presentation/manga_details/widgets/chapter_list_tile.dart deleted file mode 100644 index 93931df1..00000000 --- a/lib/src/features/manga_book/presentation/manga_details/widgets/chapter_list_tile.dart +++ /dev/null @@ -1,114 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/foundation.dart'; -import 'package:flutter/material.dart'; - -import '../../../../../constants/app_sizes.dart'; - -import '../../../../../routes/router_config.dart'; -import '../../../../../utils/extensions/custom_extensions.dart'; -import '../../../domain/chapter/chapter_model.dart'; -import '../../../domain/manga/manga_model.dart'; -import '../../../widgets/download_status_icon.dart'; - -class ChapterListTile extends StatelessWidget { - const ChapterListTile({ - super.key, - required this.manga, - required this.chapter, - required this.updateData, - required this.toggleSelect, - this.canTapSelect = false, - this.isSelected = false, - }); - final Manga manga; - final Chapter chapter; - final AsyncCallback updateData; - final ValueChanged toggleSelect; - final bool canTapSelect; - final bool isSelected; - @override - Widget build(BuildContext context) { - return GestureDetector( - key: Key("manga-${manga.id}-chapter-${chapter.id}"), - onSecondaryTap: () => toggleSelect(chapter), - child: ListTile( - title: Row( - mainAxisSize: MainAxisSize.min, - children: [ - if (chapter.bookmarked.ifNull()) ...[ - Icon( - Icons.bookmark, - color: chapter.read.ifNull() ? Colors.grey : context.iconColor, - size: 20, - ), - KSizedBox.w4.size, - ], - Expanded( - child: Text( - chapter.getDisplayName(context), - style: TextStyle( - color: chapter.read.ifNull() ? Colors.grey : null, - ), - overflow: TextOverflow.ellipsis, - ), - ), - ], - ), - subtitle: chapter.uploadDate != null - ? Row( - children: [ - Text( - chapter.uploadDate!.toDaysAgo(context), - style: TextStyle( - color: chapter.read.ifNull() ? Colors.grey : null, - ), - ), - if (!chapter.read.ifNull() && - (chapter.lastPageRead).getValueOnNullOrNegative() != 0) - Text( - " • ${context.l10n!.page(chapter.lastPageRead.getValueOnNullOrNegative() + 1)}", - style: const TextStyle(color: Colors.grey), - overflow: TextOverflow.ellipsis, - ), - if (chapter.scanlator.isNotBlank) - Expanded( - child: Text( - " • ${chapter.scanlator}", - style: TextStyle( - color: chapter.read.ifNull() ? Colors.grey : null, - ), - overflow: TextOverflow.ellipsis, - ), - ), - ], - ) - : null, - trailing: (chapter.index != null && manga.id != null) - ? DownloadStatusIcon( - updateData: updateData, - chapter: chapter, - mangaId: manga.id!, - isDownloaded: chapter.downloaded.ifNull(), - ) - : null, - selectedColor: context.theme.colorScheme.onSurface, - selectedTileColor: - context.isDarkMode ? Colors.grey.shade700 : Colors.grey.shade300, - selected: isSelected, - onTap: canTapSelect - ? () => toggleSelect(chapter) - : () => ReaderRoute( - mangaId: manga.id!, - chapterIndex: chapter.index!, - showReaderLayoutAnimation: true, - ).push(context), - onLongPress: () => toggleSelect(chapter), - ), - ); - } -} diff --git a/lib/src/features/manga_book/presentation/manga_details/widgets/edit_manga_category_dialog.dart b/lib/src/features/manga_book/presentation/manga_details/widgets/edit_manga_category_dialog.dart deleted file mode 100644 index ddd82302..00000000 --- a/lib/src/features/manga_book/presentation/manga_details/widgets/edit_manga_category_dialog.dart +++ /dev/null @@ -1,97 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../../../../../constants/app_sizes.dart'; - -import '../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../../widgets/async_buttons/async_checkbox_list_tile.dart'; -import '../../../../../widgets/pop_button.dart'; -import '../../../../library/domain/category/category_model.dart'; -import '../../../../library/presentation/category/controller/edit_category_controller.dart'; -import '../../../data/manga_book_repository.dart'; -import '../controller/manga_details_controller.dart'; - -class EditMangaCategoryDialog extends HookConsumerWidget { - const EditMangaCategoryDialog({ - super.key, - required this.mangaId, - this.title, - }); - final int mangaId; - final String? title; - @override - Widget build(BuildContext context, WidgetRef ref) { - final categoryList = ref.watch(categoryControllerProvider); - final provider = mangaCategoryListProvider(mangaId); - final mangaCategoryList = ref.watch(provider); - return AlertDialog( - title: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Text(context.l10n!.editCategory), - if (title.isNotBlank) - Text( - title!, - style: context.textTheme.bodySmall, - overflow: TextOverflow.ellipsis, - ) - ], - ), - contentPadding: KEdgeInsets.h8v16.size, - actions: [PopButton(popText: context.l10n!.close)], - content: categoryList.showUiWhenData( - context, - (data) => ConstrainedBox( - constraints: BoxConstraints(maxHeight: context.height * .7), - child: data.isBlank || (data.isSingletonList && data!.first.id == 0) - ? Padding( - padding: KEdgeInsets.h16.size, - child: Text(context.l10n!.noCategoriesFoundAlt), - ) - : SingleChildScrollView( - child: mangaCategoryList.showUiWhenData( - context, - (selectedCategoryList) => Column( - children: [ - for (Category category in data!) - if (category.id != 0) - AsyncCheckboxListTile( - onChanged: (value) async { - await AsyncValue.guard( - () => value.ifNull() - ? ref - .read(mangaBookRepositoryProvider) - .addMangaToCategory( - mangaId, - "${category.id!}", - ) - : ref - .read(mangaBookRepositoryProvider) - .removeMangaFromCategory( - mangaId, - "${category.id!}", - ), - ); - await ref.read(provider.notifier).refresh(); - }, - value: selectedCategoryList?.containsKey( - "${category.id}", - ) ?? - false, - title: Text(category.name ?? ""), - ), - ], - ), - ), - ), - ), - ), - ); - } -} diff --git a/lib/src/features/manga_book/presentation/manga_details/widgets/manga_chapter_filter.dart b/lib/src/features/manga_book/presentation/manga_details/widgets/manga_chapter_filter.dart deleted file mode 100644 index 7819ee22..00000000 --- a/lib/src/features/manga_book/presentation/manga_details/widgets/manga_chapter_filter.dart +++ /dev/null @@ -1,72 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../../widgets/custom_checkbox_list_tile.dart'; -import '../../../domain/manga/manga_model.dart'; -import '../controller/manga_details_controller.dart'; - -class MangaChapterFilter extends ConsumerWidget { - const MangaChapterFilter({super.key, required this.mangaId}); - final int mangaId; - @override - Widget build(BuildContext context, WidgetRef ref) { - final scanlatorList = - ref.watch(mangaScanlatorListProvider(mangaId: mangaId)); - final selectedScanlator = - ref.watch(mangaChapterFilterScanlatorProvider(mangaId: mangaId)); - return ListView(children: [ - CustomCheckboxListTile( - title: context.l10n!.unread, - provider: mangaChapterFilterUnreadProvider, - onChanged: ref.read(mangaChapterFilterUnreadProvider.notifier).update, - ), - CustomCheckboxListTile( - title: context.l10n!.bookmarked, - provider: mangaChapterFilterBookmarkedProvider, - onChanged: - ref.read(mangaChapterFilterBookmarkedProvider.notifier).update, - ), - CustomCheckboxListTile( - title: context.l10n!.downloaded, - provider: mangaChapterFilterDownloadedProvider, - onChanged: - ref.read(mangaChapterFilterDownloadedProvider.notifier).update, - ), - if (scanlatorList.isNotBlank && scanlatorList.length > 1) ...[ - ListTile( - title: Text( - context.l10n!.scanlators, - style: context.textTheme.labelLarge, - ), - dense: true, - ), - RadioListTile( - title: Text(context.l10n!.allScanlators), - value: MangaMetaKeys.scanlator.key, - groupValue: selectedScanlator, - onChanged: (val) => ref - .read(mangaChapterFilterScanlatorProvider(mangaId: mangaId) - .notifier) - .update(val), - ), - for (final scanlator in scanlatorList) - RadioListTile( - title: Text(scanlator), - value: scanlator, - groupValue: selectedScanlator, - onChanged: (val) => ref - .read(mangaChapterFilterScanlatorProvider(mangaId: mangaId) - .notifier) - .update(val), - ), - ], - ]); - } -} diff --git a/lib/src/features/manga_book/presentation/manga_details/widgets/manga_chapter_organizer.dart b/lib/src/features/manga_book/presentation/manga_details/widgets/manga_chapter_organizer.dart deleted file mode 100644 index 406c3fba..00000000 --- a/lib/src/features/manga_book/presentation/manga_details/widgets/manga_chapter_organizer.dart +++ /dev/null @@ -1,36 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; - -import '../../../../../utils/extensions/custom_extensions.dart'; -import 'manga_chapter_filter.dart'; -import 'manga_chapter_sort.dart'; - -class MangaChapterOrganizer extends StatelessWidget { - const MangaChapterOrganizer({super.key, required this.mangaId}); - final int mangaId; - @override - Widget build(BuildContext context) { - return DefaultTabController( - length: 2, - child: Scaffold( - appBar: TabBar( - tabs: [ - Tab(text: context.l10n!.filter), - Tab(text: context.l10n!.sort), - ], - ), - body: TabBarView( - children: [ - MangaChapterFilter(mangaId: mangaId), - const MangaChapterSort(), - ], - ), - ), - ); - } -} diff --git a/lib/src/features/manga_book/presentation/manga_details/widgets/manga_chapter_sort.dart b/lib/src/features/manga_book/presentation/manga_details/widgets/manga_chapter_sort.dart deleted file mode 100644 index a536a43e..00000000 --- a/lib/src/features/manga_book/presentation/manga_details/widgets/manga_chapter_sort.dart +++ /dev/null @@ -1,27 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; - -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../../../../../constants/enum.dart'; -import 'manga_chapter_sort_tile.dart'; - -class MangaChapterSort extends ConsumerWidget { - const MangaChapterSort({super.key}); - - @override - Widget build(BuildContext context, WidgetRef ref) { - return ListView( - children: [ - const Divider(height: .5), - for (ChapterSort chapterSort in ChapterSort.values) - MangaChapterSortTile(sortType: chapterSort), - ], - ); - } -} diff --git a/lib/src/features/manga_book/presentation/manga_details/widgets/manga_chapter_sort_tile.dart b/lib/src/features/manga_book/presentation/manga_details/widgets/manga_chapter_sort_tile.dart deleted file mode 100644 index dbacd172..00000000 --- a/lib/src/features/manga_book/presentation/manga_details/widgets/manga_chapter_sort_tile.dart +++ /dev/null @@ -1,36 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../../../../../constants/enum.dart'; -import '../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../../widgets/sort_list_tile.dart'; -import '../controller/manga_details_controller.dart'; - -class MangaChapterSortTile extends ConsumerWidget { - const MangaChapterSortTile({ - super.key, - required this.sortType, - }); - final ChapterSort sortType; - @override - Widget build(BuildContext context, WidgetRef ref) { - final sortedBy = ref.watch(mangaChapterSortProvider); - final sortedDirection = ref.watch(mangaChapterSortDirectionProvider); - return SortListTile( - selected: sortType == sortedBy, - title: Text(sortType.toLocale(context)), - ascending: sortedDirection.ifNull(true), - onChanged: (bool? value) => ref - .read(mangaChapterSortDirectionProvider.notifier) - .update(!(sortedDirection.ifNull())), - onSelected: () => - ref.read(mangaChapterSortProvider.notifier).update(sortType), - ); - } -} diff --git a/lib/src/features/manga_book/presentation/manga_details/widgets/manga_description.dart b/lib/src/features/manga_book/presentation/manga_details/widgets/manga_description.dart deleted file mode 100644 index 9b454f4d..00000000 --- a/lib/src/features/manga_book/presentation/manga_details/widgets/manga_description.dart +++ /dev/null @@ -1,166 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/foundation.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter_hooks/flutter_hooks.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../../../../../constants/app_sizes.dart'; - -import '../../../../../routes/router_config.dart'; -import '../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../../utils/launch_url_in_web.dart'; -import '../../../../../utils/misc/toast/toast.dart'; -import '../../../../../widgets/async_buttons/async_text_button_icon.dart'; -import '../../../../../widgets/manga_cover/list/manga_cover_descriptive_list_tile.dart'; -import '../../../domain/manga/manga_model.dart'; - -class MangaDescription extends HookConsumerWidget { - const MangaDescription({ - super.key, - required this.manga, - required this.removeMangaFromLibrary, - required this.addMangaToLibrary, - required this.refresh, - }); - final Manga manga; - final AsyncCallback refresh; - final AsyncCallback removeMangaFromLibrary; - final AsyncCallback addMangaToLibrary; - @override - Widget build(BuildContext context, WidgetRef ref) { - final isExpanded = useState(context.isTablet); - return Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - MangaCoverDescriptiveListTile( - manga: manga, - showBadges: false, - onTitleClicked: (query) => - GlobalSearchRoute(query: query).push(context), - ), - Padding( - padding: const EdgeInsets.all(8.0), - child: Row( - mainAxisAlignment: MainAxisAlignment.spaceEvenly, - children: [ - AsyncTextButtonIcon( - onPressed: () async { - final val = await AsyncValue.guard(() async { - if (manga.inLibrary.ifNull()) { - await removeMangaFromLibrary(); - } else { - await addMangaToLibrary(); - } - await refresh(); - }); - if (context.mounted) { - val.showToastOnError(ref.read(toastProvider(context))); - } - }, - isPrimary: manga.inLibrary.ifNull(), - primaryIcon: const Icon(Icons.favorite_rounded), - secondaryIcon: const Icon(Icons.favorite_border_outlined), - secondaryStyle: - TextButton.styleFrom(foregroundColor: Colors.grey), - primaryLabel: Text(context.l10n!.inLibrary), - secondaryLabel: Text(context.l10n!.addToLibrary), - ), - if (manga.realUrl.isNotBlank) - TextButton.icon( - onPressed: () async { - launchUrlInWeb( - context, - (manga.realUrl ?? ""), - ref.read(toastProvider(context)), - ); - }, - icon: const Icon(Icons.public), - style: TextButton.styleFrom(foregroundColor: Colors.grey), - label: Text(context.l10n!.webView), - ), - ], - ), - ), - if (manga.description.isNotBlank) - Padding( - padding: KEdgeInsets.a16.size, - child: Stack( - alignment: AlignmentDirectional.bottomStart, - children: [ - Text( - "${manga.description}\n", - maxLines: isExpanded.value ? null : 3, - ), - InkWell( - child: Container( - margin: EdgeInsets.zero, - decoration: BoxDecoration( - boxShadow: [ - BoxShadow( - color: context.theme.canvasColor.withOpacity(.7), - ), - ], - gradient: LinearGradient( - colors: [ - context.theme.canvasColor.withOpacity(0), - context.theme.canvasColor.withOpacity(.3), - context.theme.canvasColor.withOpacity(.5), - context.theme.canvasColor.withOpacity(.6), - ], - begin: Alignment.topCenter, - end: Alignment.bottomCenter, - ), - ), - child: Center( - child: Icon( - isExpanded.value - ? Icons.keyboard_arrow_up_rounded - : Icons.keyboard_arrow_down_rounded, - ), - ), - ), - onTap: () => isExpanded.value = (!isExpanded.value), - ), - ], - ), - ), - if (isExpanded.value) - Padding( - padding: KEdgeInsets.h16.size, - child: Wrap( - spacing: 8, - runSpacing: 8, - // alignment: WrapAlignment.spaceBetween, - children: [ - ...?manga.genre?.map( - (e) => Chip(label: Text(e)), - ) - ], - ), - ) - else - Padding( - padding: KEdgeInsets.h16.size, - child: SingleChildScrollView( - scrollDirection: Axis.horizontal, - child: Row( - children: [ - ...?manga.genre?.map( - (e) => Padding( - padding: KEdgeInsets.h4.size, - child: Chip(label: Text(e)), - ), - ) - ], - ), - ), - ), - ], - ); - } -} diff --git a/lib/src/features/manga_book/presentation/manga_details/widgets/small_screen_manga_details.dart b/lib/src/features/manga_book/presentation/manga_details/widgets/small_screen_manga_details.dart deleted file mode 100644 index 6d9477c4..00000000 --- a/lib/src/features/manga_book/presentation/manga_details/widgets/small_screen_manga_details.dart +++ /dev/null @@ -1,114 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/foundation.dart'; -import 'package:flutter/material.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../../widgets/emoticons.dart'; -import '../../../data/manga_book_repository.dart'; -import '../../../domain/chapter/chapter_model.dart'; -import '../../../domain/manga/manga_model.dart'; -import 'chapter_list_tile.dart'; -import 'manga_description.dart'; - -class SmallScreenMangaDetails extends ConsumerWidget { - const SmallScreenMangaDetails({ - super.key, - required this.chapterList, - required this.manga, - required this.selectedChapters, - required this.mangaId, - required this.onRefresh, - required this.onDescriptionRefresh, - required this.onListRefresh, - }); - final int mangaId; - final Manga manga; - final AsyncValueSetter onRefresh; - final ValueNotifier> selectedChapters; - final AsyncValue?> chapterList; - final AsyncValueSetter onListRefresh; - final AsyncValueSetter onDescriptionRefresh; - @override - Widget build(BuildContext context, WidgetRef ref) { - final filteredChapterList = chapterList.valueOrNull; - return RefreshIndicator( - onRefresh: () => onRefresh(true), - child: CustomScrollView( - physics: const AlwaysScrollableScrollPhysics(), - slivers: [ - SliverToBoxAdapter( - child: SingleChildScrollView( - child: MangaDescription( - manga: manga, - refresh: () => onDescriptionRefresh(false), - removeMangaFromLibrary: () => ref - .read(mangaBookRepositoryProvider) - .removeMangaFromLibrary(mangaId), - addMangaToLibrary: () => ref - .read(mangaBookRepositoryProvider) - .addMangaToLibrary(mangaId), - ), - ), - ), - SliverToBoxAdapter( - child: ListTile( - title: Text( - context.l10n!.noOfChapters(filteredChapterList?.length ?? 0), - ), - ), - ), - chapterList.showUiWhenData( - context, - (data) { - if (data.isNotBlank) { - return SliverList( - delegate: SliverChildBuilderDelegate( - (context, index) => ChapterListTile( - key: ValueKey("${filteredChapterList[index].id}"), - manga: manga, - chapter: filteredChapterList[index], - updateData: () => onRefresh(false), - isSelected: selectedChapters.value - .containsKey(filteredChapterList[index].id), - canTapSelect: selectedChapters.value.isNotEmpty, - toggleSelect: (Chapter val) { - if ((val.id).isNull) return; - selectedChapters.value = - selectedChapters.value.toggleKey(val.id!, val); - }, - ), - childCount: filteredChapterList!.length, - ), - ); - } else { - return SliverToBoxAdapter( - child: Emoticons( - text: context.l10n!.noChaptersFound, - button: TextButton( - onPressed: () => onDescriptionRefresh(true), - child: Text(context.l10n!.refresh), - ), - ), - ); - } - }, - refresh: () => onRefresh(false), - wrapper: (child) => SliverToBoxAdapter( - child: SizedBox( - height: context.height * .5, - child: child, - ), - ), - ), - const SliverToBoxAdapter(child: ListTile()), - ], - ), - ); - } -} diff --git a/lib/src/features/manga_book/presentation/manga_thumbnail_viewer/manga_thumbnail_viewer.dart b/lib/src/features/manga_book/presentation/manga_thumbnail_viewer/manga_thumbnail_viewer.dart deleted file mode 100644 index 26643eda..00000000 --- a/lib/src/features/manga_book/presentation/manga_thumbnail_viewer/manga_thumbnail_viewer.dart +++ /dev/null @@ -1,45 +0,0 @@ -// Copyright (c) 2023 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'dart:ui'; - -import 'package:flutter/material.dart'; -import 'package:go_router/go_router.dart'; - -import '../../../../utils/extensions/custom_extensions.dart'; -import '../../../../widgets/server_image.dart'; - -class MangaThumbnailViewer extends StatelessWidget { - const MangaThumbnailViewer({ - super.key, - required this.imageUrl, - }); - final String imageUrl; - @override - Widget build(BuildContext context) { - return GestureDetector( - onTap: () => context.pop(), - child: Scaffold( - appBar: AppBar(backgroundColor: Colors.transparent), - backgroundColor: Colors.transparent, - body: BackdropFilter( - filter: ImageFilter.blur(sigmaX: 3.0, sigmaY: 3.0), - child: Container( - decoration: BoxDecoration( - color: context.colorScheme.background.withOpacity(0.1), - ), - child: InteractiveViewer( - maxScale: 4, - child: Center( - child: ServerImage(imageUrl: imageUrl), - ), - ), - ), - ), - ), - ); - } -} diff --git a/lib/src/features/manga_book/presentation/reader/controller/reader_controller.dart b/lib/src/features/manga_book/presentation/reader/controller/reader_controller.dart deleted file mode 100644 index 68ad5ff8..00000000 --- a/lib/src/features/manga_book/presentation/reader/controller/reader_controller.dart +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:dio/dio.dart'; -import 'package:riverpod_annotation/riverpod_annotation.dart'; - -import '../../../data/manga_book_repository.dart'; -import '../../../domain/chapter/chapter_model.dart'; - -part 'reader_controller.g.dart'; - -@riverpod -FutureOr chapter( - ChapterRef ref, { - required int mangaId, - required int chapterIndex, -}) async { - final token = CancelToken(); - ref.onDispose(token.cancel); - final result = await ref.watch(mangaBookRepositoryProvider).getChapter( - mangaId: mangaId, - chapterIndex: chapterIndex, - ); - ref.keepAlive(); - return result; -} diff --git a/lib/src/features/manga_book/presentation/reader/controller/reader_controller.g.dart b/lib/src/features/manga_book/presentation/reader/controller/reader_controller.g.dart deleted file mode 100644 index 86454b8d..00000000 --- a/lib/src/features/manga_book/presentation/reader/controller/reader_controller.g.dart +++ /dev/null @@ -1,174 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'reader_controller.dart'; - -// ************************************************************************** -// RiverpodGenerator -// ************************************************************************** - -String _$chapterHash() => r'8cdfda4725491b07f03c8b51a655b22090fca811'; - -/// Copied from Dart SDK -class _SystemHash { - _SystemHash._(); - - static int combine(int hash, int value) { - // ignore: parameter_assignments - hash = 0x1fffffff & (hash + value); - // ignore: parameter_assignments - hash = 0x1fffffff & (hash + ((0x0007ffff & hash) << 10)); - return hash ^ (hash >> 6); - } - - static int finish(int hash) { - // ignore: parameter_assignments - hash = 0x1fffffff & (hash + ((0x03ffffff & hash) << 3)); - // ignore: parameter_assignments - hash = hash ^ (hash >> 11); - return 0x1fffffff & (hash + ((0x00003fff & hash) << 15)); - } -} - -/// See also [chapter]. -@ProviderFor(chapter) -const chapterProvider = ChapterFamily(); - -/// See also [chapter]. -class ChapterFamily extends Family> { - /// See also [chapter]. - const ChapterFamily(); - - /// See also [chapter]. - ChapterProvider call({ - required int mangaId, - required int chapterIndex, - }) { - return ChapterProvider( - mangaId: mangaId, - chapterIndex: chapterIndex, - ); - } - - @override - ChapterProvider getProviderOverride( - covariant ChapterProvider provider, - ) { - return call( - mangaId: provider.mangaId, - chapterIndex: provider.chapterIndex, - ); - } - - static const Iterable? _dependencies = null; - - @override - Iterable? get dependencies => _dependencies; - - static const Iterable? _allTransitiveDependencies = null; - - @override - Iterable? get allTransitiveDependencies => - _allTransitiveDependencies; - - @override - String? get name => r'chapterProvider'; -} - -/// See also [chapter]. -class ChapterProvider extends AutoDisposeFutureProvider { - /// See also [chapter]. - ChapterProvider({ - required int mangaId, - required int chapterIndex, - }) : this._internal( - (ref) => chapter( - ref as ChapterRef, - mangaId: mangaId, - chapterIndex: chapterIndex, - ), - from: chapterProvider, - name: r'chapterProvider', - debugGetCreateSourceHash: - const bool.fromEnvironment('dart.vm.product') - ? null - : _$chapterHash, - dependencies: ChapterFamily._dependencies, - allTransitiveDependencies: ChapterFamily._allTransitiveDependencies, - mangaId: mangaId, - chapterIndex: chapterIndex, - ); - - ChapterProvider._internal( - super._createNotifier, { - required super.name, - required super.dependencies, - required super.allTransitiveDependencies, - required super.debugGetCreateSourceHash, - required super.from, - required this.mangaId, - required this.chapterIndex, - }) : super.internal(); - - final int mangaId; - final int chapterIndex; - - @override - Override overrideWith( - FutureOr Function(ChapterRef provider) create, - ) { - return ProviderOverride( - origin: this, - override: ChapterProvider._internal( - (ref) => create(ref as ChapterRef), - from: from, - name: null, - dependencies: null, - allTransitiveDependencies: null, - debugGetCreateSourceHash: null, - mangaId: mangaId, - chapterIndex: chapterIndex, - ), - ); - } - - @override - AutoDisposeFutureProviderElement createElement() { - return _ChapterProviderElement(this); - } - - @override - bool operator ==(Object other) { - return other is ChapterProvider && - other.mangaId == mangaId && - other.chapterIndex == chapterIndex; - } - - @override - int get hashCode { - var hash = _SystemHash.combine(0, runtimeType.hashCode); - hash = _SystemHash.combine(hash, mangaId.hashCode); - hash = _SystemHash.combine(hash, chapterIndex.hashCode); - - return _SystemHash.finish(hash); - } -} - -mixin ChapterRef on AutoDisposeFutureProviderRef { - /// The parameter `mangaId` of this provider. - int get mangaId; - - /// The parameter `chapterIndex` of this provider. - int get chapterIndex; -} - -class _ChapterProviderElement extends AutoDisposeFutureProviderElement - with ChapterRef { - _ChapterProviderElement(super.provider); - - @override - int get mangaId => (origin as ChapterProvider).mangaId; - @override - int get chapterIndex => (origin as ChapterProvider).chapterIndex; -} -// ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member diff --git a/lib/src/features/manga_book/presentation/reader/reader_screen.dart b/lib/src/features/manga_book/presentation/reader/reader_screen.dart deleted file mode 100644 index 25bb2cfd..00000000 --- a/lib/src/features/manga_book/presentation/reader/reader_screen.dart +++ /dev/null @@ -1,180 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. -import 'dart:async'; - -import 'package:flutter/foundation.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter/services.dart'; -import 'package:flutter_hooks/flutter_hooks.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../../../../constants/enum.dart'; -import '../../../../utils/extensions/custom_extensions.dart'; -import '../../../settings/presentation/reader/widgets/reader_mode_tile/reader_mode_tile.dart'; -import '../../data/manga_book_repository.dart'; -import '../../domain/chapter_patch/chapter_put_model.dart'; -import '../manga_details/controller/manga_details_controller.dart'; -import 'controller/reader_controller.dart'; -import 'widgets/reader_mode/continuous_reader_mode.dart'; -import 'widgets/reader_mode/single_page_reader_mode.dart'; - -class ReaderScreen extends HookConsumerWidget { - const ReaderScreen({ - super.key, - required this.mangaId, - required this.chapterIndex, - this.showReaderLayoutAnimation = false, - }); - final int mangaId; - final int chapterIndex; - final bool showReaderLayoutAnimation; - @override - Widget build(BuildContext context, WidgetRef ref) { - final mangaProvider = mangaWithIdProvider(mangaId: mangaId); - final chapterProviderWithIndex = - chapterProvider(mangaId: mangaId, chapterIndex: chapterIndex); - - final manga = ref.watch(mangaProvider); - final chapter = ref.watch(chapterProviderWithIndex); - final defaultReaderMode = ref.watch(readerModeKeyProvider); - - final debounce = useRef(null); - final updateLastRead = useCallback((int currentPage) async { - final chapterValue = chapter.valueOrNull; - final isReadingCompeted = chapterValue != null && - ((chapterValue.read).ifNull() || - (currentPage >= - ((chapterValue.pageCount).getValueOnNullOrNegative() - 1))); - await AsyncValue.guard( - () => ref.read(mangaBookRepositoryProvider).putChapter( - mangaId: mangaId, - chapterIndex: chapterIndex, - patch: ChapterPut( - lastPageRead: isReadingCompeted ? 0 : currentPage, - read: isReadingCompeted, - ), - ), - ); - }, [chapter.valueOrNull]); - - final onPageChanged = useCallback>( - (int index) async { - final chapterValue = chapter.valueOrNull; - if ((chapterValue?.read).ifNull() || - (chapterValue?.lastPageRead).getValueOnNullOrNegative() >= index) { - return; - } - - final finalDebounce = debounce.value; - if ((finalDebounce?.isActive).ifNull()) { - finalDebounce?.cancel(); - } - - if ((index >= - ((chapter.valueOrNull?.pageCount).getValueOnNullOrNegative() - - 1))) { - updateLastRead(index); - } else { - debounce.value = Timer( - const Duration(seconds: 2), - () => updateLastRead(index), - ); - } - return; - }, - [chapter], - ); - - useEffect(() { - SystemChrome.setEnabledSystemUIMode(SystemUiMode.immersiveSticky); - return () => SystemChrome.setEnabledSystemUIMode( - SystemUiMode.manual, - overlays: SystemUiOverlay.values, - ); - }, []); - - return WillPopScope( - onWillPop: () async { - ref.invalidate(chapterProviderWithIndex); - ref.invalidate(mangaChapterListProvider(mangaId: mangaId)); - return true; - }, - child: SafeArea( - child: manga.showUiWhenData( - context, - (data) { - if (data == null) return const SizedBox.shrink(); - return chapter.showUiWhenData( - context, - (chapterData) { - if (chapterData == null) return const SizedBox.shrink(); - return switch (data.meta?.readerMode ?? defaultReaderMode) { - ReaderMode.singleVertical => SinglePageReaderMode( - chapter: chapterData, - manga: data, - onPageChanged: onPageChanged, - scrollDirection: Axis.vertical, - showReaderLayoutAnimation: showReaderLayoutAnimation, - ), - ReaderMode.singleHorizontalRTL => SinglePageReaderMode( - chapter: chapterData, - manga: data, - onPageChanged: onPageChanged, - reverse: true, - showReaderLayoutAnimation: showReaderLayoutAnimation, - ), - ReaderMode.continuousHorizontalLTR => ContinuousReaderMode( - chapter: chapterData, - manga: data, - onPageChanged: onPageChanged, - scrollDirection: Axis.horizontal, - showReaderLayoutAnimation: showReaderLayoutAnimation, - ), - ReaderMode.continuousHorizontalRTL => ContinuousReaderMode( - chapter: chapterData, - manga: data, - onPageChanged: onPageChanged, - scrollDirection: Axis.horizontal, - reverse: true, - showReaderLayoutAnimation: showReaderLayoutAnimation, - ), - ReaderMode.singleHorizontalLTR => SinglePageReaderMode( - chapter: chapterData, - manga: data, - onPageChanged: onPageChanged, - ), - ReaderMode.continuousVertical => ContinuousReaderMode( - chapter: chapterData, - manga: data, - onPageChanged: onPageChanged, - showSeparator: true, - showReaderLayoutAnimation: showReaderLayoutAnimation, - ), - ReaderMode.webtoon => ContinuousReaderMode( - chapter: chapterData, - manga: data, - onPageChanged: onPageChanged, - showReaderLayoutAnimation: showReaderLayoutAnimation, - ), - ReaderMode.defaultReader || null => ContinuousReaderMode( - chapter: chapterData, - manga: data, - onPageChanged: onPageChanged, - showReaderLayoutAnimation: showReaderLayoutAnimation, - ) - }; - }, - refresh: () => ref.refresh(chapterProviderWithIndex), - addScaffoldWrapper: true, - ); - }, - addScaffoldWrapper: true, - refresh: () => ref.refresh(mangaProvider), - ), - ), - ); - } -} diff --git a/lib/src/features/manga_book/presentation/reader/widgets/chapter_separator.dart b/lib/src/features/manga_book/presentation/reader/widgets/chapter_separator.dart deleted file mode 100644 index c6f7ca36..00000000 --- a/lib/src/features/manga_book/presentation/reader/widgets/chapter_separator.dart +++ /dev/null @@ -1,106 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../../../../../constants/app_sizes.dart'; -import '../../../../../constants/enum.dart'; -import '../../../../../routes/router_config.dart'; -import '../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../settings/presentation/reader/widgets/reader_navigation_layout_tile/reader_navigation_layout_tile.dart'; -import '../../../domain/chapter/chapter_model.dart'; -import '../../../domain/manga/manga_model.dart'; -import '../../manga_details/controller/manga_details_controller.dart'; - -class ChapterSeparator extends ConsumerWidget { - const ChapterSeparator({ - super.key, - required this.manga, - required this.chapter, - required this.isPreviousChapterSeparator, - }); - final Manga manga; - final Chapter chapter; - final bool isPreviousChapterSeparator; - @override - Widget build(BuildContext context, WidgetRef ref) { - final nextPrevChapterPair = ref.watch( - getNextAndPreviousChaptersProvider( - mangaId: manga.id!, - chapterIndex: "${chapter.index}", - ), - ); - final navigationLayout = ref.watch(readerNavigationLayoutKeyProvider); - final showPrevNextButtons = - manga.meta?.readerNavigationLayout == ReaderNavigationLayout.disabled || - ((manga.meta?.readerNavigationLayout == null || - manga.meta?.readerNavigationLayout == - ReaderNavigationLayout.defaultNavigation) && - navigationLayout == ReaderNavigationLayout.disabled); - return Center( - child: SingleChildScrollView( - child: Column( - mainAxisAlignment: MainAxisAlignment.center, - crossAxisAlignment: CrossAxisAlignment.center, - children: [ - KSizedBox.h16.size, - if (showPrevNextButtons && - nextPrevChapterPair?.second != null && - isPreviousChapterSeparator) - Padding( - padding: KEdgeInsets.v16.size, - child: FilledButton( - onPressed: () => ReaderRoute( - mangaId: nextPrevChapterPair!.second!.mangaId!, - chapterIndex: nextPrevChapterPair.second!.index!, - ).pushReplacement(context), - child: Text( - context.l10n!.previousChapter( - nextPrevChapterPair?.second?.getDisplayName(context) ?? - "", - ), - ), - ), - ), - Text( - isPreviousChapterSeparator - ? context.l10n!.start - : context.l10n!.finished, - style: context.textTheme.titleMedium - ?.copyWith(fontWeight: FontWeight.bold), - overflow: TextOverflow.ellipsis, - ), - Text( - chapter.getDisplayName(context), - style: context.textTheme.bodyMedium - ?.copyWith(fontWeight: FontWeight.bold), - overflow: TextOverflow.ellipsis, - ), - if (showPrevNextButtons && - nextPrevChapterPair?.first != null && - !isPreviousChapterSeparator) - Padding( - padding: KEdgeInsets.v16.size, - child: FilledButton( - onPressed: () => ReaderRoute( - mangaId: nextPrevChapterPair!.first!.mangaId!, - chapterIndex: nextPrevChapterPair.first!.index!, - ).pushReplacement(context), - child: Text( - context.l10n!.nextChapter( - nextPrevChapterPair?.first?.getDisplayName(context) ?? "", - ), - ), - ), - ), - KSizedBox.h16.size, - ], - ), - ), - ); - } -} diff --git a/lib/src/features/manga_book/presentation/reader/widgets/page_number_slider.dart b/lib/src/features/manga_book/presentation/reader/widgets/page_number_slider.dart deleted file mode 100644 index e2c16a7e..00000000 --- a/lib/src/features/manga_book/presentation/reader/widgets/page_number_slider.dart +++ /dev/null @@ -1,57 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'dart:math'; - -import 'package:flutter/material.dart'; - -import '../../../../../constants/app_sizes.dart'; -import '../../../../../utils/extensions/custom_extensions.dart'; - -class PageNumberSlider extends StatelessWidget { - const PageNumberSlider({ - super.key, - required this.currentValue, - required this.maxValue, - required this.onChanged, - this.inverted = false, - }); - final int currentValue; - final int maxValue; - final ValueChanged onChanged; - final bool inverted; - @override - Widget build(BuildContext context) { - final sliderWidget = [ - Text("${currentValue + 1}"), - Expanded( - child: Transform.flip( - flipX: inverted, - child: Slider( - value: min(currentValue.toDouble(), maxValue.toDouble()), - min: 0, - max: maxValue.toDouble() - 1, - divisions: max(maxValue - 1, 1), - onChanged: (val) => onChanged(val.toInt()), - ), - ), - ), - Text("$maxValue"), - ]; - return Card( - color: context.theme.appBarTheme.backgroundColor?.withOpacity(.7), - shape: RoundedRectangleBorder( - borderRadius: KBorderRadius.r32.radius, - ), - child: Padding( - padding: const EdgeInsets.symmetric(horizontal: 16), - child: Row( - children: inverted ? sliderWidget.reversed.toList() : sliderWidget, - ), - ), - ); - } -} diff --git a/lib/src/features/manga_book/presentation/reader/widgets/reader_mode/continuous_reader_mode.dart b/lib/src/features/manga_book/presentation/reader/widgets/reader_mode/continuous_reader_mode.dart deleted file mode 100644 index 21ae3842..00000000 --- a/lib/src/features/manga_book/presentation/reader/widgets/reader_mode/continuous_reader_mode.dart +++ /dev/null @@ -1,208 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'dart:io'; - -import 'package:flutter/foundation.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter_hooks/flutter_hooks.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; -import 'package:scrollable_positioned_list/scrollable_positioned_list.dart'; - -import '../../../../../../constants/app_constants.dart'; -import '../../../../../../constants/app_sizes.dart'; -import '../../../../../../constants/endpoints.dart'; - -import '../../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../../../utils/misc/app_utils.dart'; -import '../../../../../../widgets/server_image.dart'; -import '../../../../../settings/presentation/reader/widgets/reader_scroll_animation_tile/reader_scroll_animation_tile.dart'; -import '../../../../domain/chapter/chapter_model.dart'; -import '../../../../domain/manga/manga_model.dart'; -import '../chapter_separator.dart'; -import '../reader_wrapper.dart'; - -class ContinuousReaderMode extends HookConsumerWidget { - const ContinuousReaderMode({ - super.key, - required this.manga, - required this.chapter, - this.showSeparator = false, - this.onPageChanged, - this.scrollDirection = Axis.vertical, - this.reverse = false, - this.showReaderLayoutAnimation = false, - }); - final Manga manga; - final Chapter chapter; - final bool showSeparator; - final ValueSetter? onPageChanged; - final Axis scrollDirection; - final bool reverse; - final bool showReaderLayoutAnimation; - @override - Widget build(BuildContext context, WidgetRef ref) { - final touchPoints = useState(0); - final scrollController = useMemoized(() => ItemScrollController()); - final positionsListener = useMemoized(() => ItemPositionsListener.create()); - final currentIndex = useState( - chapter.read.ifNull() - ? 0 - : (chapter.lastPageRead).getValueOnNullOrNegative(), - ); - useEffect(() { - if (onPageChanged != null) { - onPageChanged!(currentIndex.value); - } - return; - }, [currentIndex.value]); - useEffect(() { - listener() { - final positions = positionsListener.itemPositions.value.toList(); - if (positions.isSingletonList) { - currentIndex.value = (positions.first.index); - } else { - final newPositions = positions.where((ItemPosition position) => - position.itemTrailingEdge.liesBetween()); - if (newPositions.isBlank) return; - currentIndex.value = (newPositions - .reduce((ItemPosition max, ItemPosition position) => - position.itemTrailingEdge > max.itemTrailingEdge - ? position - : max) - .index); - } - } - - positionsListener.itemPositions.addListener(listener); - return () => positionsListener.itemPositions.removeListener(listener); - }, []); - final isAnimationEnabled = - ref.read(readerScrollAnimationProvider).ifNull(true); - return ReaderWrapper( - touchPoints: touchPoints, - scrollDirection: scrollDirection, - chapter: chapter, - manga: manga, - showReaderLayoutAnimation: showReaderLayoutAnimation, - currentIndex: currentIndex.value, - onChanged: (index) => scrollController.jumpTo(index: index), - onPrevious: () { - final ItemPosition itemPosition = - positionsListener.itemPositions.value.toList().first; - isAnimationEnabled - ? scrollController.scrollTo( - index: itemPosition.index, - duration: kDuration, - curve: kCurve, - alignment: itemPosition.itemLeadingEdge + .8, - ) - : scrollController.jumpTo( - index: itemPosition.index, - alignment: itemPosition.itemLeadingEdge + .8, - ); - }, - onNext: () { - ItemPosition itemPosition = positionsListener.itemPositions.value.first; - final int index; - final double alignment; - if (itemPosition.itemTrailingEdge > 1) { - index = itemPosition.index; - alignment = itemPosition.itemLeadingEdge - .8; - } else { - index = itemPosition.index + 1; - alignment = 0; - } - isAnimationEnabled - ? scrollController.scrollTo( - index: index, - duration: kDuration, - curve: kCurve, - alignment: alignment, - ) - : scrollController.jumpTo( - index: index, - alignment: alignment, - ); - }, - child: AppUtils.wrapIf( - !kIsWeb && (Platform.isAndroid || Platform.isIOS) - ? (child) => InteractiveViewer(maxScale: 5, child: child) - : null, - ScrollablePositionedList.separated( - physics: touchPoints.value >= 2 - ? const NeverScrollableScrollPhysics() - : null, - itemScrollController: scrollController, - itemPositionsListener: positionsListener, - initialScrollIndex: chapter.read.ifNull() - ? 0 - : chapter.lastPageRead.getValueOnNullOrNegative(), - scrollDirection: scrollDirection, - reverse: reverse, - itemCount: chapter.pageCount ?? 0, - minCacheExtent: scrollDirection == Axis.vertical - ? context.height * 2 - : context.width * 2, - separatorBuilder: (BuildContext context, int index) => - showSeparator ? KSizedBox.h16.size : const SizedBox.shrink(), - itemBuilder: (BuildContext context, int index) { - final image = ServerImage( - showReloadButton: true, - fit: scrollDirection == Axis.vertical - ? BoxFit.fitWidth - : BoxFit.fitHeight, - appendApiToUrl: true, - imageUrl: MangaUrl.chapterPageWithIndex( - chapterIndex: chapter.index!, - mangaId: manga.id!, - pageIndex: index, - ), - progressIndicatorBuilder: (_, __, downloadProgress) => Center( - child: CircularProgressIndicator( - value: downloadProgress.progress, - ), - ), - wrapper: (child) => SizedBox( - height: scrollDirection == Axis.vertical - ? context.height * .7 - : null, - width: scrollDirection != Axis.vertical - ? context.width * .7 - : null, - child: child, - ), - ); - if (index == 0 || index == (chapter.pageCount ?? 1) - 1) { - final bool reverseDirection = - scrollDirection == Axis.horizontal && reverse; - final separator = SizedBox( - width: scrollDirection != Axis.vertical - ? context.width * .5 - : null, - child: ChapterSeparator( - manga: manga, - chapter: chapter, - isPreviousChapterSeparator: (index == 0), - ), - ); - return Flex( - direction: scrollDirection, - mainAxisSize: MainAxisSize.min, - crossAxisAlignment: CrossAxisAlignment.stretch, - children: ((index == 0) != reverseDirection) - ? [separator, image] - : [image, separator], - ); - } else { - return image; - } - }, - ), - ), - ); - } -} diff --git a/lib/src/features/manga_book/presentation/reader/widgets/reader_mode/single_page_reader_mode.dart b/lib/src/features/manga_book/presentation/reader/widgets/reader_mode/single_page_reader_mode.dart deleted file mode 100644 index 4944fac4..00000000 --- a/lib/src/features/manga_book/presentation/reader/widgets/reader_mode/single_page_reader_mode.dart +++ /dev/null @@ -1,153 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'dart:io'; - -import 'package:flutter/foundation.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter_cache_manager/flutter_cache_manager.dart'; -import 'package:flutter_hooks/flutter_hooks.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../../../../../../constants/app_constants.dart'; -import '../../../../../../constants/endpoints.dart'; -import '../../../../../../utils/extensions/cache_manager_extensions.dart'; -import '../../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../../../utils/misc/app_utils.dart'; -import '../../../../../../widgets/custom_circular_progress_indicator.dart'; -import '../../../../../../widgets/server_image.dart'; -import '../../../../../settings/presentation/reader/widgets/reader_scroll_animation_tile/reader_scroll_animation_tile.dart'; -import '../../../../domain/chapter/chapter_model.dart'; -import '../../../../domain/manga/manga_model.dart'; -import '../reader_wrapper.dart'; - -class SinglePageReaderMode extends HookConsumerWidget { - const SinglePageReaderMode({ - super.key, - required this.manga, - required this.chapter, - this.onPageChanged, - this.reverse = false, - this.scrollDirection = Axis.horizontal, - this.showReaderLayoutAnimation = false, - }); - - final Manga manga; - final Chapter chapter; - final ValueSetter? onPageChanged; - final bool reverse; - final Axis scrollDirection; - final bool showReaderLayoutAnimation; - @override - Widget build(BuildContext context, WidgetRef ref) { - final touchPoints = useState(0); - final cacheManager = useMemoized(() => DefaultCacheManager()); - final scrollController = usePageController( - initialPage: chapter.read.ifNull() - ? 0 - : chapter.lastPageRead.getValueOnNullOrNegative(), - ); - final currentIndex = useState(scrollController.initialPage); - useEffect(() { - if (onPageChanged != null) onPageChanged!(currentIndex.value); - int currentPage = currentIndex.value; - // Prev page - if (currentPage > 0) { - cacheManager.getServerFile( - ref, - MangaUrl.chapterPageWithIndex( - chapterIndex: chapter.index!, - mangaId: manga.id!, - pageIndex: currentPage - 1, - ), - ); - } - // Next page - if (currentPage < (chapter.pageCount.getValueOnNullOrNegative() - 1)) { - cacheManager.getServerFile( - ref, - MangaUrl.chapterPageWithIndex( - chapterIndex: chapter.index!, - mangaId: manga.id!, - pageIndex: currentPage + 1, - ), - ); - } - // 2nd next page - if (currentPage < (chapter.pageCount.getValueOnNullOrNegative() - 2)) { - cacheManager.getServerFile( - ref, - MangaUrl.chapterPageWithIndex( - chapterIndex: chapter.index!, - mangaId: manga.id!, - pageIndex: currentPage + 2, - ), - ); - } - return null; - }, [currentIndex.value]); - useEffect(() { - listener() { - final currentPage = scrollController.page; - if (currentPage != null) currentIndex.value = (currentPage.toInt()); - } - - scrollController.addListener(listener); - return () => scrollController.removeListener(listener); - }, [scrollController]); - final isAnimationEnabled = - ref.read(readerScrollAnimationProvider).ifNull(true); - return ReaderWrapper( - touchPoints: touchPoints, - scrollDirection: scrollDirection, - chapter: chapter, - manga: manga, - currentIndex: currentIndex.value, - onChanged: (index) => scrollController.jumpToPage(index), - showReaderLayoutAnimation: showReaderLayoutAnimation, - onPrevious: () => scrollController.previousPage( - duration: isAnimationEnabled ? kDuration : kInstantDuration, - curve: kCurve, - ), - onNext: () => scrollController.nextPage( - duration: isAnimationEnabled ? kDuration : kInstantDuration, - curve: kCurve, - ), - child: PageView.builder( - physics: touchPoints.value >= 2 - ? const NeverScrollableScrollPhysics() - : null, - scrollDirection: scrollDirection, - reverse: reverse, - controller: scrollController, - itemBuilder: (BuildContext context, int index) { - final image = ServerImage( - showReloadButton: true, - fit: BoxFit.contain, - size: Size.fromHeight(context.height), - appendApiToUrl: true, - imageUrl: MangaUrl.chapterPageWithIndex( - chapterIndex: chapter.index!, - mangaId: manga.id!, - pageIndex: index, - ), - progressIndicatorBuilder: (context, url, downloadProgress) => - CenterSorayomiShimmerIndicator( - value: downloadProgress.progress, - ), - ); - return AppUtils.wrapIf( - !kIsWeb && (Platform.isAndroid || Platform.isIOS) - ? (child) => InteractiveViewer(maxScale: 5, child: child) - : null, - image, - ); - }, - itemCount: chapter.pageCount.getValueOnNullOrNegative(), - ), - ); - } -} diff --git a/lib/src/features/manga_book/presentation/reader/widgets/reader_navigation_layout/layouts/edge_layout.dart b/lib/src/features/manga_book/presentation/reader/widgets/reader_navigation_layout/layouts/edge_layout.dart deleted file mode 100644 index b21f2f24..00000000 --- a/lib/src/features/manga_book/presentation/reader/widgets/reader_navigation_layout/layouts/edge_layout.dart +++ /dev/null @@ -1,60 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; - -class EdgeLayout extends StatelessWidget { - const EdgeLayout({ - super.key, - this.onLeftTap, - this.onRightTap, - this.leftColor, - this.rightColor, - }); - final VoidCallback? onLeftTap; - final VoidCallback? onRightTap; - final Color? leftColor; - final Color? rightColor; - @override - Widget build(BuildContext context) { - return Row( - mainAxisAlignment: MainAxisAlignment.spaceBetween, - children: [ - Expanded( - child: GestureDetector( - behavior: HitTestBehavior.translucent, - onTap: onRightTap, - child: Container(color: rightColor), - ), - ), - Expanded( - child: Column( - children: [ - const Expanded( - flex: 2, - child: SizedBox.expand(), - ), - Expanded( - child: GestureDetector( - behavior: HitTestBehavior.translucent, - onTap: onLeftTap, - child: Container(color: leftColor), - ), - ), - ], - ), - ), - Expanded( - child: GestureDetector( - behavior: HitTestBehavior.translucent, - onTap: onRightTap, - child: Container(color: rightColor), - ), - ), - ], - ); - } -} diff --git a/lib/src/features/manga_book/presentation/reader/widgets/reader_navigation_layout/layouts/kindlish_layout.dart b/lib/src/features/manga_book/presentation/reader/widgets/reader_navigation_layout/layouts/kindlish_layout.dart deleted file mode 100644 index 8d61094e..00000000 --- a/lib/src/features/manga_book/presentation/reader/widgets/reader_navigation_layout/layouts/kindlish_layout.dart +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; - -class KindlishLayout extends StatelessWidget { - const KindlishLayout({ - super.key, - this.onLeftTap, - this.onRightTap, - this.leftColor, - this.rightColor, - }); - final VoidCallback? onLeftTap; - final VoidCallback? onRightTap; - final Color? leftColor; - final Color? rightColor; - @override - Widget build(BuildContext context) { - return Column( - mainAxisAlignment: MainAxisAlignment.end, - children: [ - const Expanded(child: SizedBox.expand()), - Expanded( - flex: 2, - child: Row( - children: [ - Expanded( - child: GestureDetector( - behavior: HitTestBehavior.translucent, - onTap: onLeftTap, - child: Container(color: leftColor), - ), - ), - Expanded( - flex: 2, - child: GestureDetector( - behavior: HitTestBehavior.translucent, - onTap: onRightTap, - child: Container(color: rightColor), - ), - ) - ], - ), - ), - ], - ); - } -} diff --git a/lib/src/features/manga_book/presentation/reader/widgets/reader_navigation_layout/layouts/l_shaped_layout.dart b/lib/src/features/manga_book/presentation/reader/widgets/reader_navigation_layout/layouts/l_shaped_layout.dart deleted file mode 100644 index 6a8d83fd..00000000 --- a/lib/src/features/manga_book/presentation/reader/widgets/reader_navigation_layout/layouts/l_shaped_layout.dart +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; - -class LShapedLayout extends StatelessWidget { - const LShapedLayout({ - super.key, - this.onLeftTap, - this.onRightTap, - this.leftColor, - this.rightColor, - }); - - final VoidCallback? onLeftTap; - final VoidCallback? onRightTap; - final Color? leftColor; - final Color? rightColor; - @override - Widget build(BuildContext context) { - return Column( - children: [ - Expanded( - child: GestureDetector( - behavior: HitTestBehavior.translucent, - onTap: onLeftTap, - child: Container(color: leftColor), - ), - ), - Expanded( - child: Row( - mainAxisAlignment: MainAxisAlignment.spaceBetween, - children: [ - Expanded( - child: GestureDetector( - behavior: HitTestBehavior.translucent, - onTap: onLeftTap, - child: Container(color: leftColor), - ), - ), - const Expanded(child: SizedBox.expand()), - Expanded( - child: GestureDetector( - behavior: HitTestBehavior.translucent, - onTap: onRightTap, - child: Container(color: rightColor), - ), - ), - ], - ), - ), - Expanded( - child: GestureDetector( - behavior: HitTestBehavior.translucent, - onTap: onRightTap, - child: Container(color: rightColor), - ), - ), - ], - ); - } -} diff --git a/lib/src/features/manga_book/presentation/reader/widgets/reader_navigation_layout/layouts/right_and_left_layout.dart b/lib/src/features/manga_book/presentation/reader/widgets/reader_navigation_layout/layouts/right_and_left_layout.dart deleted file mode 100644 index fb7c347f..00000000 --- a/lib/src/features/manga_book/presentation/reader/widgets/reader_navigation_layout/layouts/right_and_left_layout.dart +++ /dev/null @@ -1,44 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; - -class RightAndLeftLayout extends StatelessWidget { - const RightAndLeftLayout({ - super.key, - this.onLeftTap, - this.onRightTap, - this.leftColor, - this.rightColor, - }); - final VoidCallback? onLeftTap; - final VoidCallback? onRightTap; - final Color? leftColor; - final Color? rightColor; - @override - Widget build(BuildContext context) { - return Row( - mainAxisAlignment: MainAxisAlignment.spaceBetween, - children: [ - Expanded( - child: GestureDetector( - behavior: HitTestBehavior.translucent, - onTap: onLeftTap, - child: Container(color: leftColor), - ), - ), - const Expanded(child: SizedBox.expand()), - Expanded( - child: GestureDetector( - behavior: HitTestBehavior.translucent, - onTap: onRightTap, - child: Container(color: rightColor), - ), - ), - ], - ); - } -} diff --git a/lib/src/features/manga_book/presentation/reader/widgets/reader_navigation_layout/reader_navigation_layout.dart b/lib/src/features/manga_book/presentation/reader/widgets/reader_navigation_layout/reader_navigation_layout.dart deleted file mode 100644 index 73894c96..00000000 --- a/lib/src/features/manga_book/presentation/reader/widgets/reader_navigation_layout/reader_navigation_layout.dart +++ /dev/null @@ -1,100 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:flutter_hooks/flutter_hooks.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../../../../../../constants/app_constants.dart'; -import '../../../../../../constants/enum.dart'; -import '../../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../../settings/presentation/reader/widgets/reader_invert_tap_tile/reader_invert_tap_tile.dart'; -import '../../../../../settings/presentation/reader/widgets/reader_navigation_layout_tile/reader_navigation_layout_tile.dart'; -import 'layouts/edge_layout.dart'; -import 'layouts/kindlish_layout.dart'; -import 'layouts/l_shaped_layout.dart'; -import 'layouts/right_and_left_layout.dart'; - -class ReaderNavigationLayoutWidget extends HookConsumerWidget { - const ReaderNavigationLayoutWidget({ - super.key, - this.navigationLayout, - required this.onPrevious, - required this.onNext, - this.showReaderLayoutAnimation = false, - }); - final ReaderNavigationLayout? navigationLayout; - final VoidCallback? onPrevious; - final VoidCallback? onNext; - final bool showReaderLayoutAnimation; - @override - Widget build(BuildContext context, WidgetRef ref) { - final animationController = useAnimationController(duration: kLongDuration); - useAnimation(animationController); - final nextColorTween = ColorTween( - begin: showReaderLayoutAnimation ? Colors.green : Colors.transparent, - ).animate(animationController).value; - - final prevColorTween = ColorTween( - begin: showReaderLayoutAnimation ? Colors.blue : Colors.transparent, - ).animate(animationController).value; - useEffect(() { - animationController.forward(); - return; - }, []); - - final layout = navigationLayout == null || - navigationLayout == ReaderNavigationLayout.defaultNavigation - ? ref.watch(readerNavigationLayoutKeyProvider) - : navigationLayout; - final invertTap = ref.watch(invertTapProvider).ifNull(); - final VoidCallback? onLeftTap; - final VoidCallback? onRightTap; - final Color? leftColor; - final Color? rightColor; - if (invertTap) { - onLeftTap = onNext; - onRightTap = onPrevious; - leftColor = nextColorTween; - rightColor = prevColorTween; - } else { - onLeftTap = onPrevious; - onRightTap = onNext; - leftColor = prevColorTween; - rightColor = nextColorTween; - } - return switch (layout) { - ReaderNavigationLayout.edge => EdgeLayout( - onLeftTap: onLeftTap, - onRightTap: onRightTap, - leftColor: leftColor, - rightColor: rightColor, - ), - ReaderNavigationLayout.kindlish => KindlishLayout( - onLeftTap: onLeftTap, - onRightTap: onRightTap, - leftColor: leftColor, - rightColor: rightColor, - ), - ReaderNavigationLayout.lShaped => LShapedLayout( - onLeftTap: onLeftTap, - onRightTap: onRightTap, - leftColor: leftColor, - rightColor: rightColor, - ), - ReaderNavigationLayout.rightAndLeft => RightAndLeftLayout( - onLeftTap: onLeftTap, - onRightTap: onRightTap, - leftColor: leftColor, - rightColor: rightColor, - ), - ReaderNavigationLayout.defaultNavigation || - ReaderNavigationLayout.disabled || - null => - const SizedBox.shrink(), - }; - } -} diff --git a/lib/src/features/manga_book/presentation/reader/widgets/reader_wrapper.dart b/lib/src/features/manga_book/presentation/reader/widgets/reader_wrapper.dart deleted file mode 100644 index 316aba5c..00000000 --- a/lib/src/features/manga_book/presentation/reader/widgets/reader_wrapper.dart +++ /dev/null @@ -1,584 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'dart:async'; - -import 'package:flutter/material.dart'; -import 'package:flutter/services.dart'; -import 'package:flutter_android_volume_keydown/flutter_android_volume_keydown.dart'; -import 'package:flutter_hooks/flutter_hooks.dart'; -import 'package:go_router/go_router.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../../../../../constants/app_constants.dart'; -import '../../../../../constants/app_sizes.dart'; -import '../../../../../constants/db_keys.dart'; -import '../../../../../constants/enum.dart'; -import '../../../../../constants/reader_keyboard_shortcuts.dart'; -import '../../../../../routes/router_config.dart'; -import '../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../../utils/launch_url_in_web.dart'; -import '../../../../../utils/misc/toast/toast.dart'; -import '../../../../../widgets/radio_list_popup.dart'; -import '../../../../settings/presentation/reader/widgets/reader_initial_overlay_tile/reader_initial_overlay_tile.dart'; -import '../../../../settings/presentation/reader/widgets/reader_invert_tap_tile/reader_invert_tap_tile.dart'; -import '../../../../settings/presentation/reader/widgets/reader_magnifier_size_slider/reader_magnifier_size_slider.dart'; -import '../../../../settings/presentation/reader/widgets/reader_padding_slider/reader_padding_slider.dart'; -import '../../../../settings/presentation/reader/widgets/reader_swipe_toggle_tile/reader_swipe_chapter_toggle_tile.dart'; -import '../../../../settings/presentation/reader/widgets/reader_volume_tap_invert_tile/reader_volume_tap_invert_tile.dart'; -import '../../../../settings/presentation/reader/widgets/reader_volume_tap_tile/reader_volume_tap_tile.dart'; -import '../../../data/manga_book_repository.dart'; -import '../../../domain/chapter/chapter_model.dart'; -import '../../../domain/chapter_patch/chapter_put_model.dart'; -import '../../../domain/manga/manga_model.dart'; -import '../../../widgets/chapter_actions/single_chapter_action_icon.dart'; -import '../../manga_details/controller/manga_details_controller.dart'; -import '../controller/reader_controller.dart'; -import 'page_number_slider.dart'; -import 'reader_navigation_layout/reader_navigation_layout.dart'; - -class ReaderWrapper extends HookConsumerWidget { - const ReaderWrapper({ - super.key, - required this.child, - required this.manga, - required this.chapter, - required this.onChanged, - required this.currentIndex, - required this.onNext, - required this.onPrevious, - required this.scrollDirection, - required this.touchPoints, - this.showReaderLayoutAnimation = false, - }); - final Widget child; - final Manga manga; - final Chapter chapter; - final ValueChanged onChanged; - final VoidCallback onPrevious; - final VoidCallback onNext; - final int currentIndex; - final Axis scrollDirection; - final bool showReaderLayoutAnimation; - final ValueNotifier touchPoints; - - @override - Widget build(BuildContext context, WidgetRef ref) { - final nextPrevChapterPair = ref.watch( - getNextAndPreviousChaptersProvider( - mangaId: manga.id!, - chapterIndex: "${chapter.index}", - ), - ); - final invertTap = ref.watch(invertTapProvider).ifNull(); - - final bool volumeTap = ref.watch(volumeTapProvider).ifNull(); - final bool volumeTapInvert = ref.watch(volumeTapInvertProvider).ifNull(); - - final double localMangaReaderPadding = - ref.watch(readerPaddingKeyProvider) ?? DBKeys.readerPadding.initial; - - final bool readerSwipeChapterToggle = - ref.watch(swipeChapterToggleProvider) ?? DBKeys.swipeToggle.initial; - - final double localMangaReaderMagnifierSize = - ref.watch(readerMagnifierSizeKeyProvider) ?? - DBKeys.readerMagnifierSize.initial; - - final visibility = - useState(ref.read(readerInitialOverlayProvider).ifNull()); - final mangaReaderPadding = - useState(manga.meta?.readerPadding ?? localMangaReaderPadding); - final mangaReaderMagnifierSize = useState( - manga.meta?.readerMagnifierSize ?? localMangaReaderMagnifierSize, - ); - - final mangaReaderMode = manga.meta?.readerMode ?? ReaderMode.defaultReader; - final mangaReaderNavigationLayout = manga.meta?.readerNavigationLayout ?? - ReaderNavigationLayout.defaultNavigation; - - final showReaderModePopup = useCallback( - () => showDialog( - context: context, - builder: (context) => RadioListPopup( - optionList: ReaderMode.values, - getOptionTitle: (value) => value.toLocale(context), - value: mangaReaderMode, - title: context.l10n!.readerMode, - onChange: (enumValue) async { - if (context.mounted) context.pop(); - await AsyncValue.guard( - () => ref.read(mangaBookRepositoryProvider).patchMangaMeta( - mangaId: manga.id!, - key: MangaMetaKeys.readerMode.key, - value: enumValue.name, - ), - ); - ref.invalidate(mangaWithIdProvider(mangaId: manga.id!)); - }, - ), - ), - [mangaReaderMode], - ); - - final showReaderNavigationLayoutPopup = useCallback( - () => showDialog( - context: context, - builder: (context) => RadioListPopup( - optionList: ReaderNavigationLayout.values, - getOptionTitle: (value) => value.toLocale(context), - title: context.l10n!.readerNavigationLayout, - value: mangaReaderNavigationLayout, - onChange: (enumValue) async { - if (context.mounted) context.pop(); - await AsyncValue.guard( - () => ref.read(mangaBookRepositoryProvider).patchMangaMeta( - mangaId: manga.id!, - key: MangaMetaKeys.readerNavigationLayout.key, - value: enumValue.name, - ), - ); - ref.invalidate( - mangaWithIdProvider(mangaId: manga.id!), - ); - }, - ), - ), - [mangaReaderNavigationLayout], - ); - - useEffect(() { - if (!visibility.value) { - SystemChrome.setEnabledSystemUIMode(SystemUiMode.immersiveSticky); - } - return null; - }, [visibility.value]); - - useEffect(() { - StreamSubscription? subscription; - if (volumeTap) { - subscription = FlutterAndroidVolumeKeydown.stream.listen( - (event) => (switch (event) { - HardwareButton.volume_up => - volumeTapInvert ? onNext() : onPrevious(), - HardwareButton.volume_down => - volumeTapInvert ? onPrevious() : onNext(), - }), - ); - } - return () => subscription?.cancel(); - }, [volumeTap, volumeTapInvert]); - - return Theme( - data: context.theme.copyWith( - bottomSheetTheme: const BottomSheetThemeData( - backgroundColor: Colors.transparent, - elevation: 0, - ), - ), - child: Scaffold( - appBar: visibility.value - ? AppBar( - title: ListTile( - title: (manga.title).isNotBlank - ? Text( - "${manga.title}", - overflow: TextOverflow.ellipsis, - ) - : null, - subtitle: (chapter.name).isNotBlank - ? Text( - "${chapter.name}", - overflow: TextOverflow.ellipsis, - ) - : null, - ), - elevation: 0, - actions: [ - chapter.realUrl.isBlank - ? const SizedBox.shrink() - : IconButton( - onPressed: () async { - launchUrlInWeb( - context, - (chapter.realUrl ?? ""), - ref.read(toastProvider(context)), - ); - }, - icon: const Icon(Icons.public), - ) - ], - ) - : null, - extendBodyBehindAppBar: true, - extendBody: true, - endDrawerEnableOpenDragGesture: false, - endDrawer: Drawer( - width: kDrawerWidth, - shape: const RoundedRectangleBorder(), - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - mainAxisSize: MainAxisSize.min, - children: [ - AppBar( - backgroundColor: Colors.transparent, - actions: const [SizedBox.shrink()], - ), - ListTile( - leading: const Icon(Icons.app_settings_alt_outlined), - title: Text(context.l10n!.readerMode), - subtitle: Text(mangaReaderMode.toLocale(context)), - onTap: () { - context.pop(); - showReaderModePopup(); - }, - ), - ListTile( - leading: const Icon(Icons.touch_app_rounded), - title: Text(context.l10n!.readerNavigationLayout), - subtitle: Text(mangaReaderNavigationLayout.toLocale(context)), - onTap: () { - context.pop(); - showReaderNavigationLayoutPopup(); - }, - ), - AsyncReaderPaddingSlider( - readerPadding: mangaReaderPadding, - onChanged: (value) { - AsyncValue.guard( - () => ref.read(mangaBookRepositoryProvider).patchMangaMeta( - mangaId: manga.id!, - key: MangaMetaKeys.readerPadding.key, - value: value, - ), - ); - ref.invalidate(mangaWithIdProvider(mangaId: manga.id!)); - }, - ), - AsyncReaderMagnifierSizeSlider( - readerMagnifierSize: mangaReaderMagnifierSize, - onChanged: (value) { - AsyncValue.guard( - () => ref.read(mangaBookRepositoryProvider).patchMangaMeta( - mangaId: manga.id!, - key: MangaMetaKeys.readerMagnifierSize.key, - value: value, - ), - ); - ref.invalidate(mangaWithIdProvider(mangaId: manga.id!)); - }, - ), - ], - ), - ), - bottomSheet: visibility.value - ? ExcludeFocus( - child: Column( - mainAxisSize: MainAxisSize.min, - children: [ - Row( - children: [ - Card( - shape: const CircleBorder(), - child: IconButton( - onPressed: nextPrevChapterPair?.second != null - ? () => ReaderRoute( - mangaId: - nextPrevChapterPair!.second!.mangaId!, - chapterIndex: - nextPrevChapterPair.second!.index!, - toPrev: true, - transVertical: - scrollDirection != Axis.vertical, - ).pushReplacement(context) - : null, - icon: const Icon( - Icons.skip_previous_rounded, - ), - ), - ), - Expanded( - child: PageNumberSlider( - currentValue: currentIndex, - maxValue: chapter.pageCount ?? 1, - onChanged: (index) => onChanged(index), - inverted: invertTap, - ), - ), - Card( - shape: const CircleBorder(), - child: IconButton( - onPressed: nextPrevChapterPair?.first != null - ? () => ReaderRoute( - mangaId: - nextPrevChapterPair!.first!.mangaId!, - chapterIndex: - nextPrevChapterPair.first!.index!, - transVertical: - scrollDirection != Axis.vertical, - ).pushReplacement(context) - : null, - icon: const Icon(Icons.skip_next_rounded), - ), - ) - ], - ), - KSizedBox.h8.size, - Card( - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.vertical( - top: KRadius.r8.radius, - ), - ), - margin: EdgeInsets.zero, - child: Padding( - padding: KEdgeInsets.h16v8.size, - child: Row( - mainAxisAlignment: MainAxisAlignment.spaceEvenly, - children: [ - if (chapter.index != null && - chapter.bookmarked != null) - SingleChapterActionIcon( - icon: chapter.bookmarked! - ? Icons.bookmark_rounded - : Icons.bookmark_outline_rounded, - chapterIndex: chapter.index!, - mangaId: manga.id!, - chapterPut: ChapterPut( - bookmarked: !chapter.bookmarked!, - ), - refresh: () async { - if (manga.id != null && - chapter.index != null) { - return ref.refresh(chapterProvider( - mangaId: manga.id!, - chapterIndex: chapter.index!, - ).future); - } - }, - ), - IconButton( - icon: const Icon(Icons.app_settings_alt_outlined), - onPressed: () => showReaderModePopup(), - ), - Builder(builder: (context) { - return IconButton( - onPressed: () => - Scaffold.of(context).openEndDrawer(), - icon: const Icon(Icons.settings_rounded), - ); - }), - ], - ), - ), - ), - ], - ), - ) - : null, - body: Shortcuts.manager( - manager: readerShortcutManager(scrollDirection), - child: Actions( - actions: { - PreviousScrollIntent: CallbackAction( - onInvoke: (intent) => invertTap ? onNext() : onPrevious(), - ), - NextScrollIntent: CallbackAction( - onInvoke: (intent) => invertTap ? onPrevious() : onNext(), - ), - PreviousChapterIntent: CallbackAction( - onInvoke: (intent) { - nextPrevChapterPair?.second != null - ? ReaderRoute( - mangaId: nextPrevChapterPair!.second!.mangaId!, - chapterIndex: nextPrevChapterPair.second!.index!, - toPrev: true, - transVertical: scrollDirection != Axis.vertical, - ).pushReplacement(context) - : onPrevious(); - return null; - }, - ), - NextChapterIntent: CallbackAction( - onInvoke: (intent) => nextPrevChapterPair?.first != null - ? ReaderRoute( - mangaId: nextPrevChapterPair!.first!.mangaId!, - chapterIndex: nextPrevChapterPair.first!.index!, - transVertical: scrollDirection != Axis.vertical, - ).pushReplacement(context) - : onNext(), - ), - HideQuickOpenIntent: CallbackAction( - onInvoke: (HideQuickOpenIntent intent) { - visibility.value = !visibility.value; - return null; - }, - ), - }, - child: Focus( - autofocus: true, - child: Listener( - onPointerDown: (_) => touchPoints.value += 1, - onPointerUp: (_) => touchPoints.value -= 1, - onPointerCancel: (_) => touchPoints.value -= 1, - child: RepaintBoundary( - child: ReaderView( - touchPoints: touchPoints, - toggleVisibility: () { - if (touchPoints.value >= 2) return; - visibility.value = !visibility.value; - }, - scrollDirection: scrollDirection, - mangaReaderPadding: mangaReaderPadding.value, - mangaReaderMagnifierSize: mangaReaderMagnifierSize.value, - onNext: onNext, - onPrevious: onPrevious, - mangaReaderNavigationLayout: mangaReaderNavigationLayout, - prevNextChapterPair: nextPrevChapterPair, - readerSwipeChapterToggle: readerSwipeChapterToggle, - showReaderLayoutAnimation: showReaderLayoutAnimation, - child: child, - ), - ), - ), - ), - ), - ), - ), - ); - } -} - -class ReaderView extends HookWidget { - const ReaderView({ - super.key, - required this.toggleVisibility, - required this.scrollDirection, - required this.mangaReaderPadding, - required this.mangaReaderMagnifierSize, - required this.onNext, - required this.onPrevious, - required this.prevNextChapterPair, - required this.mangaReaderNavigationLayout, - required this.readerSwipeChapterToggle, - required this.child, - required this.touchPoints, - this.showReaderLayoutAnimation = false, - }); - - final VoidCallback toggleVisibility; - final Axis scrollDirection; - final double mangaReaderPadding; - final double mangaReaderMagnifierSize; - final VoidCallback onNext; - final VoidCallback onPrevious; - final ({Chapter? first, Chapter? second})? prevNextChapterPair; - final ReaderNavigationLayout mangaReaderNavigationLayout; - final bool readerSwipeChapterToggle; - final bool showReaderLayoutAnimation; - final Widget child; - final ValueNotifier touchPoints; - - @override - Widget build(BuildContext context) { - final showMagnification = useState(false); - final dragGesturePosition = useState(Offset.zero); - final positionOffset = kMagnifierPosition( - dragGesturePosition.value, - context.mediaQuerySize, - mangaReaderMagnifierSize, - ); - nextChapter() => prevNextChapterPair?.first != null - ? ReaderRoute( - mangaId: prevNextChapterPair!.first!.mangaId!, - chapterIndex: prevNextChapterPair!.first!.index!, - transVertical: scrollDirection != Axis.vertical, - ).pushReplacement(context) - : null; - prevChapter() => prevNextChapterPair?.second != null - ? ReaderRoute( - mangaId: prevNextChapterPair!.second!.mangaId!, - chapterIndex: prevNextChapterPair!.second!.index!, - toPrev: true, - transVertical: scrollDirection != Axis.vertical, - ).pushReplacement(context) - : null; - return Stack( - children: [ - GestureDetector( - onLongPressStart: (details) { - dragGesturePosition.value = (details.localPosition); - showMagnification.value = (true); - }, - onLongPressEnd: (details) { - dragGesturePosition.value = (details.localPosition); - showMagnification.value = (false); - }, - onLongPressMoveUpdate: (details) => - dragGesturePosition.value = (details.localPosition), - onTap: toggleVisibility, - behavior: HitTestBehavior.translucent, - onHorizontalDragEnd: (details) { - if (touchPoints.value >= 2) return; - if (scrollDirection == Axis.vertical && readerSwipeChapterToggle) { - if (details.primaryVelocity == null) { - return; - } else if (details.primaryVelocity! > 8) { - prevChapter(); - } else { - nextChapter(); - } - } - }, - onVerticalDragEnd: (details) { - if (touchPoints.value >= 2) return; - if (scrollDirection == Axis.horizontal && - readerSwipeChapterToggle) { - if (details.primaryVelocity == null) { - return; - } else if (details.primaryVelocity! > 8) { - prevChapter(); - } else { - nextChapter(); - } - } - }, - child: Padding( - padding: EdgeInsets.symmetric( - vertical: context.height * - (scrollDirection != Axis.vertical ? mangaReaderPadding : 0), - horizontal: context.width * - (scrollDirection == Axis.vertical ? mangaReaderPadding : 0), - ), - child: child, - ), - ), - ReaderNavigationLayoutWidget( - onNext: onNext, - onPrevious: onPrevious, - navigationLayout: mangaReaderNavigationLayout, - showReaderLayoutAnimation: showReaderLayoutAnimation, - ), - if (showMagnification.value) - Positioned( - left: positionOffset.dx, - top: positionOffset.dy, - child: RawMagnifier( - decoration: kMagnifierDecoration, - size: kMagnifierSize * mangaReaderMagnifierSize, - focalPointOffset: kMagnifierOffset( - dragGesturePosition.value, - context.mediaQuerySize, - mangaReaderMagnifierSize, - ), - magnificationScale: 2, - child: const ColoredBox(color: Color.fromARGB(8, 158, 158, 158)), - ), - ) - ], - ); - } -} diff --git a/lib/src/features/manga_book/presentation/updates/updates_screen.dart b/lib/src/features/manga_book/presentation/updates/updates_screen.dart deleted file mode 100644 index dbaa837c..00000000 --- a/lib/src/features/manga_book/presentation/updates/updates_screen.dart +++ /dev/null @@ -1,196 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:flutter_hooks/flutter_hooks.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; -import 'package:infinite_scroll_pagination/infinite_scroll_pagination.dart'; - -import '../../../../utils/extensions/custom_extensions.dart'; -import '../../../../utils/hooks/paging_controller_hook.dart'; -import '../../../../utils/misc/toast/toast.dart'; -import '../../../../widgets/custom_circular_progress_indicator.dart'; -import '../../../../widgets/emoticons.dart'; -import '../../data/updates/updates_repository.dart'; -import '../../domain/chapter/chapter_model.dart'; -import '../../domain/chapter_page/chapter_page_model.dart'; -import '../../widgets/chapter_actions/multi_chapters_actions_bottom_app_bar.dart'; -import '../../widgets/update_status_fab.dart'; -import '../../widgets/update_status_popup_menu.dart'; -import '../reader/controller/reader_controller.dart'; -import 'widgets/chapter_manga_list_tile.dart'; - -class UpdatesScreen extends HookConsumerWidget { - const UpdatesScreen({super.key}); - - Future _fetchPage( - UpdatesRepository repository, - PagingController controller, - int pageKey, - ) async { - AsyncValue.guard( - () async => await repository.getRecentChaptersPage(pageNo: pageKey), - ).then( - (value) => value.whenOrNull( - data: (recentChaptersPage) { - try { - if (recentChaptersPage != null) { - if (recentChaptersPage.hasNextPage.ifNull()) { - controller - .appendPage([...?recentChaptersPage.page], pageKey + 1); - } else { - controller.appendLastPage([...?recentChaptersPage.page]); - } - } - } catch (e) { - // - } - }, - error: (error, stackTrace) => controller.error = error, - ), - ); - } - - @override - Widget build(BuildContext context, WidgetRef ref) { - final controller = - usePagingController(firstPageKey: 0); - final updatesRepository = ref.watch(updatesRepositoryProvider); - final isUpdatesChecking = ref - .watch(updatesSocketProvider - .select((value) => value.valueOrNull?.isUpdateChecking)) - .ifNull(); - final selectedChapters = useState>({}); - useEffect(() { - controller.addPageRequestListener((pageKey) => _fetchPage( - updatesRepository, - controller, - pageKey, - )); - return; - }, []); - useEffect(() { - if (!isUpdatesChecking) { - try { - selectedChapters.value = ({}); - controller.refresh(); - } catch (e) { - // - } - } - return null; - }, [isUpdatesChecking]); - return Scaffold( - floatingActionButton: - selectedChapters.value.isEmpty ? const UpdateStatusFab() : null, - appBar: selectedChapters.value.isNotEmpty - ? AppBar( - leading: IconButton( - onPressed: () => selectedChapters.value = ({}), - icon: const Icon(Icons.close_rounded), - ), - title: Text( - context.l10n!.numSelected(selectedChapters.value.length), - ), - ) - : AppBar( - title: Text(context.l10n!.updates), - actions: const [UpdateStatusPopupMenu()], - ), - bottomSheet: selectedChapters.value.isNotEmpty - ? MultiChaptersActionsBottomAppBar( - selectedChapters: selectedChapters, - afterOptionSelected: () async => controller.refresh(), - hasPreviousDone: false, - ) - : null, - body: RefreshIndicator( - onRefresh: () async { - selectedChapters.value = ({}); - controller.refresh(); - }, - child: PagedListView( - pagingController: controller, - builderDelegate: PagedChildBuilderDelegate( - firstPageProgressIndicatorBuilder: (context) => - const CenterSorayomiShimmerIndicator(), - firstPageErrorIndicatorBuilder: (context) => Emoticons( - text: controller.error.toString(), - button: TextButton( - onPressed: () => controller.refresh(), - child: Text(context.l10n!.retry), - ), - ), - noItemsFoundIndicatorBuilder: (context) => Emoticons( - text: context.l10n!.noUpdatesFound, - button: TextButton( - onPressed: () => controller.refresh(), - child: Text(context.l10n!.refresh), - ), - ), - itemBuilder: (context, item, index) { - int? previousDate; - try { - previousDate = - controller.itemList?[index - 1].chapter?.fetchedAt; - } catch (e) { - previousDate = null; - } - final chapterTile = ChapterMangaListTile( - pair: item, - updatePair: () async { - if (item.manga?.id == null || item.chapter?.index == null) { - return; - } else { - final chapter = ref - .refresh(chapterProvider( - mangaId: item.manga!.id!, - chapterIndex: item.chapter!.index!, - )) - .valueOrToast(ref.read(toastProvider(context))); - try { - controller.itemList = [...?controller.itemList] - ..replaceRange(index, index + 1, [ - item.copyWith( - chapter: chapter ?? item.chapter, - ) - ]); - } catch (e) { - // - } - } - }, - isSelected: - selectedChapters.value.containsKey(item.chapter!.id!), - canTapSelect: selectedChapters.value.isNotEmpty, - toggleSelect: (Chapter val) { - if ((val.id).isNull) return; - selectedChapters.value = - (selectedChapters.value.toggleKey(val.id!, val)); - }, - ); - if ((item.chapter?.fetchedAt).isSameDayAs(previousDate)) { - return chapterTile; - } else { - return Column( - mainAxisSize: MainAxisSize.min, - children: [ - ListTile( - title: Text( - item.chapter!.fetchedAt.toDaysAgoFromSeconds(context), - ), - ), - chapterTile, - ], - ); - } - }, - ), - ), - ), - ); - } -} diff --git a/lib/src/features/manga_book/presentation/updates/widgets/chapter_manga_list_tile.dart b/lib/src/features/manga_book/presentation/updates/widgets/chapter_manga_list_tile.dart deleted file mode 100644 index f5c58863..00000000 --- a/lib/src/features/manga_book/presentation/updates/widgets/chapter_manga_list_tile.dart +++ /dev/null @@ -1,105 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/foundation.dart'; -import 'package:flutter/material.dart'; - -import '../../../../../constants/app_sizes.dart'; -import '../../../../../routes/router_config.dart'; -import '../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../../widgets/server_image.dart'; -import '../../../domain/chapter/chapter_model.dart'; -import '../../../domain/chapter_page/chapter_page_model.dart'; -import '../../../widgets/download_status_icon.dart'; - -class ChapterMangaListTile extends StatelessWidget { - const ChapterMangaListTile({ - super.key, - required this.pair, - required this.updatePair, - required this.toggleSelect, - this.canTapSelect = false, - this.isSelected = false, - }); - final ChapterMangaPair pair; - final AsyncCallback updatePair; - final ValueChanged toggleSelect; - final bool canTapSelect; - final bool isSelected; - - @override - Widget build(BuildContext context) { - final color = (pair.chapter?.read).ifNull() ? Colors.grey : null; - return GestureDetector( - onSecondaryTap: - pair.chapter != null ? () => toggleSelect(pair.chapter!) : null, - child: ListTile( - title: Row( - mainAxisSize: MainAxisSize.min, - children: [ - if ((pair.chapter?.bookmarked).ifNull()) ...[ - const Icon(Icons.bookmark, size: 20), - KSizedBox.w4.size, - ], - Expanded( - child: Text( - pair.manga?.title ?? "", - style: TextStyle(color: color), - ), - ), - ], - ), - leading: ClipRRect( - borderRadius: KBorderRadius.r8.radius, - child: InkWell( - onTap: () { - if ((pair.manga?.id) != null) { - MangaRoute( - mangaId: pair.manga!.id!, - ).push(context); - } - }, - child: ServerImage( - imageUrl: pair.manga?.thumbnailUrl ?? "", - size: const Size.square(48), - ), - ), - ), - subtitle: Text( - pair.chapter?.name ?? pair.chapter?.chapterNumber.toString() ?? "", - style: TextStyle(color: color), - ), - trailing: (pair.manga?.id != null && pair.chapter?.index != null) - ? DownloadStatusIcon( - isDownloaded: (pair.chapter?.downloaded).ifNull(), - mangaId: pair.manga!.id!, - chapter: pair.chapter!, - updateData: updatePair, - ) - : null, - selectedColor: context.theme.colorScheme.onSurface, - selectedTileColor: - context.isDarkMode ? Colors.grey.shade700 : Colors.grey.shade300, - selected: isSelected, - onTap: pair.chapter != null && pair.manga != null - ? () { - if (canTapSelect) { - toggleSelect(pair.chapter!); - } else { - ReaderRoute( - mangaId: pair.manga!.id!, - chapterIndex: pair.chapter!.index!, - showReaderLayoutAnimation: true, - ).push(context); - } - } - : null, - onLongPress: - pair.chapter != null ? () => toggleSelect(pair.chapter!) : null, - ), - ); - } -} diff --git a/lib/src/features/manga_book/widgets/chapter_actions/multi_chapters_action_icon.dart b/lib/src/features/manga_book/widgets/chapter_actions/multi_chapters_action_icon.dart deleted file mode 100644 index 3599797c..00000000 --- a/lib/src/features/manga_book/widgets/chapter_actions/multi_chapters_action_icon.dart +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/foundation.dart'; -import 'package:flutter/material.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../../../../utils/extensions/custom_extensions.dart'; -import '../../../../utils/misc/toast/toast.dart'; -import '../../data/downloads/downloads_repository.dart'; -import '../../data/manga_book_repository.dart'; -import '../../domain/chapter_batch/chapter_batch_model.dart'; - -class MultiChaptersActionIcon extends ConsumerWidget { - const MultiChaptersActionIcon({ - required this.icon, - required this.chapterList, - this.change, - required this.refresh, - super.key, - }); - final List chapterList; - final ChapterChange? change; - final AsyncValueSetter refresh; - final IconData icon; - @override - Widget build(BuildContext context, WidgetRef ref) { - return IconButton( - icon: Icon(icon), - onPressed: () async { - final result = await AsyncValue.guard( - () => change == null - ? ref - .read(downloadsRepositoryProvider) - .addChaptersBatchToDownloadQueue(chapterList) - : ref.read(mangaBookRepositoryProvider).modifyBulkChapters( - batch: ChapterBatch( - chapterIds: chapterList, - change: change, - ), - ), - ); - if (context.mounted) { - result.showToastOnError(ref.read(toastProvider(context))); - } - await refresh(change != null); - }, - ); - } -} diff --git a/lib/src/features/manga_book/widgets/chapter_actions/multi_chapters_actions_bottom_app_bar.dart b/lib/src/features/manga_book/widgets/chapter_actions/multi_chapters_actions_bottom_app_bar.dart deleted file mode 100644 index f078c3d4..00000000 --- a/lib/src/features/manga_book/widgets/chapter_actions/multi_chapters_actions_bottom_app_bar.dart +++ /dev/null @@ -1,108 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/foundation.dart'; -import 'package:flutter/material.dart'; - -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../../../../constants/app_sizes.dart'; -import '../../../../constants/gen/assets.gen.dart'; -import '../../../../utils/extensions/custom_extensions.dart'; -import '../../domain/chapter/chapter_model.dart'; -import '../../domain/chapter_batch/chapter_batch_model.dart'; -import '../../domain/chapter_patch/chapter_put_model.dart'; -import 'multi_chapters_action_icon.dart'; -import 'single_chapter_action_icon.dart'; - -class MultiChaptersActionsBottomAppBar extends HookConsumerWidget { - const MultiChaptersActionsBottomAppBar({ - super.key, - required this.selectedChapters, - required this.afterOptionSelected, - this.hasPreviousDone = true, - }); - - final ValueNotifier> selectedChapters; - final AsyncCallback afterOptionSelected; - final bool hasPreviousDone; - - List get chapterList => selectedChapters.value.keys.toList(); - - @override - Widget build(BuildContext context, WidgetRef ref) { - refresh([bool triggerAfterOption = true]) async { - selectedChapters.value = {}; - if (triggerAfterOption) await afterOptionSelected(); - } - - final selectedList = selectedChapters.value.values; - - return Padding( - padding: KEdgeInsets.a8.size, - child: Row( - mainAxisAlignment: MainAxisAlignment.spaceEvenly, - children: [ - if (selectedList.any((e) => e.bookmarked.ifNull())) - MultiChaptersActionIcon( - icon: Icons.bookmark_remove_sharp, - chapterList: chapterList, - change: ChapterChange(isBookmarked: false), - refresh: refresh, - ), - if (selectedList.any((e) => !(e.bookmarked.ifNull()))) - MultiChaptersActionIcon( - icon: Icons.bookmark_add_sharp, - chapterList: chapterList, - change: ChapterChange(isBookmarked: true), - refresh: refresh, - ), - if (selectedList.isSingletonList && hasPreviousDone) - SingleChapterActionIcon( - chapterIndex: selectedChapters.value[chapterList.first]!.index!, - mangaId: selectedChapters.value[chapterList.first]!.mangaId!, - imageIcon: ImageIcon( - Assets.icons.previousDone.provider(), - color: context.theme.cardTheme.color, - ), - chapterPut: ChapterPut(markPrevRead: true), - refresh: refresh, - ), - if (selectedList.any((e) => !(e.read.ifNull()))) - MultiChaptersActionIcon( - icon: Icons.done_all_sharp, - chapterList: chapterList, - change: ChapterChange(isRead: true, lastPageRead: 0), - refresh: refresh, - ), - if (selectedList.any((e) => e.read.ifNull())) - MultiChaptersActionIcon( - icon: Icons.remove_done_sharp, - chapterList: chapterList, - change: ChapterChange(isRead: false), - refresh: refresh, - ), - if (selectedList.any((e) => !(e.downloaded.ifNull()))) - MultiChaptersActionIcon( - icon: Icons.download_sharp, - chapterList: [ - for (var e in selectedList) - if (!(e.downloaded.ifNull(true))) (e.id!) - ], - refresh: refresh, - ), - if (selectedList.any((e) => e.downloaded.ifNull())) - MultiChaptersActionIcon( - icon: Icons.delete_sharp, - chapterList: chapterList, - change: ChapterChange(delete: true), - refresh: refresh, - ), - ], - ), - ); - } -} diff --git a/lib/src/features/manga_book/widgets/chapter_actions/single_chapter_action_icon.dart b/lib/src/features/manga_book/widgets/chapter_actions/single_chapter_action_icon.dart deleted file mode 100644 index 05587c4d..00000000 --- a/lib/src/features/manga_book/widgets/chapter_actions/single_chapter_action_icon.dart +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/foundation.dart'; -import 'package:flutter/material.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../../../../utils/extensions/custom_extensions.dart'; -import '../../../../utils/misc/toast/toast.dart'; -import '../../data/manga_book_repository.dart'; -import '../../domain/chapter_patch/chapter_put_model.dart'; - -class SingleChapterActionIcon extends ConsumerWidget { - const SingleChapterActionIcon({ - required this.chapterIndex, - required this.mangaId, - this.icon, - this.imageIcon, - required this.chapterPut, - required this.refresh, - super.key, - }) : assert(imageIcon != null || icon != null); - final int chapterIndex; - final int mangaId; - final ChapterPut chapterPut; - final AsyncCallback refresh; - final IconData? icon; - final ImageIcon? imageIcon; - @override - Widget build(BuildContext context, WidgetRef ref) { - return IconButton( - icon: imageIcon ?? Icon(icon), - onPressed: () async { - final result = (await AsyncValue.guard( - () => ref.read(mangaBookRepositoryProvider).putChapter( - mangaId: mangaId, - chapterIndex: chapterIndex, - patch: chapterPut, - ), - )); - if (context.mounted) { - result.showToastOnError(ref.read(toastProvider(context))); - } - await refresh(); - }, - ); - } -} diff --git a/lib/src/features/manga_book/widgets/download_status_icon.dart b/lib/src/features/manga_book/widgets/download_status_icon.dart deleted file mode 100644 index db0c5d7a..00000000 --- a/lib/src/features/manga_book/widgets/download_status_icon.dart +++ /dev/null @@ -1,133 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/foundation.dart'; -import 'package:flutter/material.dart'; - -import 'package:flutter_hooks/flutter_hooks.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../../../constants/app_sizes.dart'; -import '../../../utils/extensions/custom_extensions.dart'; -import '../../../utils/misc/toast/toast.dart'; -import '../../../widgets/custom_circular_progress_indicator.dart'; -import '../data/downloads/downloads_repository.dart'; -import '../data/manga_book_repository.dart'; -import '../domain/chapter/chapter_model.dart'; -import '../domain/chapter_batch/chapter_batch_model.dart'; - -class DownloadStatusIcon extends HookConsumerWidget { - const DownloadStatusIcon({ - super.key, - required this.updateData, - required this.chapter, - required this.mangaId, - required this.isDownloaded, - }); - final AsyncCallback updateData; - final Chapter chapter; - final int mangaId; - final bool isDownloaded; - - Future newUpdatePair( - WidgetRef ref, ValueSetter setIsLoading) async { - try { - setIsLoading(true); - await updateData(); - setIsLoading(false); - } catch (e) { - // - } - } - - Future toggleChapterToQueue( - Toast toast, - WidgetRef ref, { - bool isAdd = false, - bool isRemove = false, - bool isError = false, - }) async { - try { - if (chapter.index == null) return; - (await AsyncValue.guard(() async { - final repo = ref.read(downloadsRepositoryProvider); - if (isRemove || isError) { - await repo.removeChapterFromDownloadQueue(mangaId, chapter.index!); - } - if (isAdd || isError) { - await repo.addChapterToDownloadQueue(mangaId, chapter.index!); - } - })) - .showToastOnError(toast); - } catch (e) { - // - } - } - - @override - Widget build(BuildContext context, WidgetRef ref) { - final isLoading = useState(false); - - final toast = ref.watch(toastProvider(context)); - final download = ref.watch(downloadsFromIdProvider(chapter.id ?? -1)); - useEffect(() { - if (download?.state == "Finished") { - Future.microtask( - () => newUpdatePair(ref, (value) => isLoading.value = value)); - } - return; - }, [download?.state]); - - if (isLoading.value) { - return Padding( - padding: KEdgeInsets.h8.size, - child: MiniCircularProgressIndicator(color: context.iconColor), - ); - } else { - if (download != null) { - if (download.state == "Error") { - return IconButton( - onPressed: () => toggleChapterToQueue(toast, ref, isError: true), - icon: const Icon(Icons.replay_rounded), - ); - } else { - return IconButton( - onPressed: () => toggleChapterToQueue(toast, ref, isRemove: true), - icon: MiniCircularProgressIndicator( - value: download.progress == 0 ? null : download.progress, - color: context.iconColor, - ), - ); - } - } else { - if (isDownloaded) { - return IconButton( - icon: const Icon(Icons.check_circle_rounded), - onPressed: () async { - (await AsyncValue.guard( - () => ref.read(mangaBookRepositoryProvider).modifyBulkChapters( - batch: ChapterBatch( - chapterIds: [chapter.id!], - change: ChapterChange(delete: true), - ), - ), - )) - .showToastOnError(toast); - await newUpdatePair(ref, (value) => isLoading.value = value); - }, - ); - } else { - return IconButton( - icon: const Icon(Icons.download_for_offline_rounded), - onPressed: () { - toggleChapterToQueue(toast, ref, isAdd: true); - }, - ); - } - } - } - } -} diff --git a/lib/src/features/manga_book/widgets/update_status_fab.dart b/lib/src/features/manga_book/widgets/update_status_fab.dart deleted file mode 100644 index 72b8790d..00000000 --- a/lib/src/features/manga_book/widgets/update_status_fab.dart +++ /dev/null @@ -1,33 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; - -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../../../routes/router_config.dart'; -import '../../../utils/extensions/custom_extensions.dart'; -import '../data/updates/updates_repository.dart'; - -class UpdateStatusFab extends ConsumerWidget { - const UpdateStatusFab({super.key}); - - @override - Widget build(BuildContext context, WidgetRef ref) { - final updateStatus = ref.watch(updatesSocketProvider); - final showStatus = (updateStatus.valueOrNull?.isUpdateChecking).ifNull(); - return FloatingActionButton.extended( - icon: showStatus ? null : const Icon(Icons.refresh), - onPressed: () => showStatus - ? const UpdateStatusRoute().push(context) - : ref.read(updatesRepositoryProvider).fetchUpdates(), - label: showStatus - ? Text("${updateStatus.valueOrNull?.updateChecked.padLeft()}" - "/${updateStatus.valueOrNull?.total.padLeft()}") - : Text(context.l10n!.update), - ); - } -} diff --git a/lib/src/features/manga_book/widgets/update_status_popup_menu.dart b/lib/src/features/manga_book/widgets/update_status_popup_menu.dart deleted file mode 100644 index bea764f7..00000000 --- a/lib/src/features/manga_book/widgets/update_status_popup_menu.dart +++ /dev/null @@ -1,55 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../../../constants/app_sizes.dart'; - -import '../../../routes/router_config.dart'; -import '../../../utils/extensions/custom_extensions.dart'; -import '../../library/domain/category/category_model.dart'; -import '../data/updates/updates_repository.dart'; - -class UpdateStatusPopupMenu extends ConsumerWidget { - const UpdateStatusPopupMenu({ - super.key, - this.getCategory, - this.showSummaryButton = true, - }); - final Category? Function()? getCategory; - final bool showSummaryButton; - @override - Widget build(BuildContext context, WidgetRef ref) { - return PopupMenuButton( - icon: const Icon(Icons.more_vert_rounded), - shape: RoundedRectangleBorder(borderRadius: KBorderRadius.r16.radius), - itemBuilder: (context) { - final category = getCategory?.call(); - return [ - if (category != null && category.id != null && category.id != 0) - PopupMenuItem( - child: Text(context.l10n!.categoryUpdate), - onTap: () => ref - .read(updatesRepositoryProvider) - .fetchUpdates(categoryId: category.id), - ), - PopupMenuItem( - onTap: () => ref.read(updatesRepositoryProvider).fetchUpdates(), - child: Text(context.l10n!.globalUpdate), - ), - if (showSummaryButton) - PopupMenuItem( - onTap: () => const UpdateStatusRoute().push(context), - child: Text( - context.l10n!.updatesSummary, - ), - ), - ]; - }, - ); - } -} diff --git a/lib/src/features/manga_book/widgets/update_status_summary_sheet.dart b/lib/src/features/manga_book/widgets/update_status_summary_sheet.dart deleted file mode 100644 index 320a9fbd..00000000 --- a/lib/src/features/manga_book/widgets/update_status_summary_sheet.dart +++ /dev/null @@ -1,98 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../../../routes/router_config.dart'; -import '../../../utils/extensions/custom_extensions.dart'; -import '../../../widgets/manga_cover/list/manga_cover_list_tile.dart'; -import '../data/updates/updates_repository.dart'; -import '../domain/manga/manga_model.dart'; -import '../domain/update_status/update_status_model.dart'; -import 'update_status_popup_menu.dart'; - -class UpdateStatusSummaryDialog extends ConsumerWidget { - const UpdateStatusSummaryDialog({super.key}); - - @override - Widget build(BuildContext context, WidgetRef ref) { - final statusUpdate = ref.watch(updateSummaryProvider); - final statusUpdateStream = ref.watch(updatesSocketProvider); - final AsyncValue finalStatus = - (statusUpdateStream.valueOrNull?.total.isGreaterThan(0)).ifNull() - ? statusUpdateStream - : statusUpdate; - return Scaffold( - appBar: AppBar( - title: Text(context.l10n!.updatesSummary), - actions: const [UpdateStatusPopupMenu(showSummaryButton: false)], - ), - body: finalStatus.showUiWhenData( - context, - (data) => RefreshIndicator( - onRefresh: () => ref.refresh(updateSummaryProvider.future), - child: ListView( - children: [ - if ((data?.running).isNotBlank) - UpdateStatusExpansionTile( - mangas: data!.running!, - title: context.l10n!.running, - initiallyExpanded: true, - ), - if ((data?.pending).isNotBlank) - UpdateStatusExpansionTile( - mangas: data!.pending!, - title: context.l10n!.pending, - ), - if ((data?.completed).isNotBlank) - UpdateStatusExpansionTile( - mangas: data!.completed!, - title: context.l10n!.completed, - ), - if ((data?.failed).isNotBlank) - UpdateStatusExpansionTile( - mangas: data!.failed!, - title: context.l10n!.failed, - initiallyExpanded: true, - ), - ], - ), - ), - refresh: () => ref.invalidate(updateSummaryProvider), - ), - ); - } -} - -class UpdateStatusExpansionTile extends StatelessWidget { - const UpdateStatusExpansionTile({ - super.key, - required this.mangas, - required this.title, - this.initiallyExpanded = false, - }); - final List mangas; - final String title; - final bool initiallyExpanded; - @override - Widget build(BuildContext context) { - return ExpansionTile( - title: Text("$title (${mangas.length.padLeft()})"), - initiallyExpanded: initiallyExpanded, - textColor: context.theme.indicatorColor, - iconColor: context.theme.indicatorColor, - shape: const RoundedRectangleBorder(), - children: mangas - .map((e) => MangaCoverListTile( - manga: e, - showCountBadges: true, - onPressed: () => MangaRoute(mangaId: e.id!).push(context), - )) - .toList(), - ); - } -} diff --git a/lib/src/features/quick_open/domain/quick_search_result.dart b/lib/src/features/quick_open/domain/quick_search_result.dart deleted file mode 100644 index 1aeeef4e..00000000 --- a/lib/src/features/quick_open/domain/quick_search_result.dart +++ /dev/null @@ -1,61 +0,0 @@ -// Copyright (c) 2023 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:freezed_annotation/freezed_annotation.dart'; - -import '../../browse_center/domain/source/source_model.dart'; -import '../../library/domain/category/category_model.dart'; -import '../../manga_book/domain/chapter/chapter_model.dart'; -import '../../manga_book/domain/manga/manga_model.dart'; - -part 'quick_search_result.freezed.dart'; - -@freezed -class QuickSearchResult with _$QuickSearchResult { - const factory QuickSearchResult.helpText({ - required String prefill, - String? pattern, - required String hintText, - }) = HelpTextQuickSearchResult; - - const factory QuickSearchResult.source({ - required Source source, - }) = SourceQuickSearchResult; - - const factory QuickSearchResult.sourceSearch({ - required Source source, - required String query, - }) = SourceSearchQuickSearchResult; - - const factory QuickSearchResult.category({ - required Category category, - }) = CategoryQuickSearchResult; - - const factory QuickSearchResult.categoryManga({ - required Category category, - required Manga manga, - }) = CategoryMangaQuickSearchResult; - - const factory QuickSearchResult.categoryMangaChapter({ - Category? category, - required Manga manga, - required Chapter chapter, - }) = CategoryMangaChapterQuickSearchResult; - - const factory QuickSearchResult.manga({ - Source? source, - required Manga manga, - }) = MangaQuickSearchResult; - - const factory QuickSearchResult.chapter({ - Source? source, - required Manga manga, - required Chapter chapter, - }) = ChapterQuickSearchResult; - - const factory QuickSearchResult.globalSearch() = - GlobalSearchQuickSearchResult; -} diff --git a/lib/src/features/quick_open/domain/quick_search_result.freezed.dart b/lib/src/features/quick_open/domain/quick_search_result.freezed.dart deleted file mode 100644 index bd979bdc..00000000 --- a/lib/src/features/quick_open/domain/quick_search_result.freezed.dart +++ /dev/null @@ -1,2061 +0,0 @@ -// coverage:ignore-file -// GENERATED CODE - DO NOT MODIFY BY HAND -// ignore_for_file: type=lint -// ignore_for_file: unused_element, deprecated_member_use, deprecated_member_use_from_same_package, use_function_type_syntax_for_parameters, unnecessary_const, avoid_init_to_null, invalid_override_different_default_values_named, prefer_expression_function_bodies, annotate_overrides, invalid_annotation_target, unnecessary_question_mark - -part of 'quick_search_result.dart'; - -// ************************************************************************** -// FreezedGenerator -// ************************************************************************** - -T _$identity(T value) => value; - -final _privateConstructorUsedError = UnsupportedError( - 'It seems like you constructed your class using `MyClass._()`. This constructor is only meant to be used by freezed and you are not supposed to need it nor use it.\nPlease check the documentation here for more information: https://github.com/rrousselGit/freezed#custom-getters-and-methods'); - -/// @nodoc -mixin _$QuickSearchResult { - @optionalTypeArgs - TResult when({ - required TResult Function(String prefill, String? pattern, String hintText) - helpText, - required TResult Function(Source source) source, - required TResult Function(Source source, String query) sourceSearch, - required TResult Function(Category category) category, - required TResult Function(Category category, Manga manga) categoryManga, - required TResult Function(Category? category, Manga manga, Chapter chapter) - categoryMangaChapter, - required TResult Function(Source? source, Manga manga) manga, - required TResult Function(Source? source, Manga manga, Chapter chapter) - chapter, - required TResult Function() globalSearch, - }) => - throw _privateConstructorUsedError; - @optionalTypeArgs - TResult? whenOrNull({ - TResult? Function(String prefill, String? pattern, String hintText)? - helpText, - TResult? Function(Source source)? source, - TResult? Function(Source source, String query)? sourceSearch, - TResult? Function(Category category)? category, - TResult? Function(Category category, Manga manga)? categoryManga, - TResult? Function(Category? category, Manga manga, Chapter chapter)? - categoryMangaChapter, - TResult? Function(Source? source, Manga manga)? manga, - TResult? Function(Source? source, Manga manga, Chapter chapter)? chapter, - TResult? Function()? globalSearch, - }) => - throw _privateConstructorUsedError; - @optionalTypeArgs - TResult maybeWhen({ - TResult Function(String prefill, String? pattern, String hintText)? - helpText, - TResult Function(Source source)? source, - TResult Function(Source source, String query)? sourceSearch, - TResult Function(Category category)? category, - TResult Function(Category category, Manga manga)? categoryManga, - TResult Function(Category? category, Manga manga, Chapter chapter)? - categoryMangaChapter, - TResult Function(Source? source, Manga manga)? manga, - TResult Function(Source? source, Manga manga, Chapter chapter)? chapter, - TResult Function()? globalSearch, - required TResult orElse(), - }) => - throw _privateConstructorUsedError; - @optionalTypeArgs - TResult map({ - required TResult Function(HelpTextQuickSearchResult value) helpText, - required TResult Function(SourceQuickSearchResult value) source, - required TResult Function(SourceSearchQuickSearchResult value) sourceSearch, - required TResult Function(CategoryQuickSearchResult value) category, - required TResult Function(CategoryMangaQuickSearchResult value) - categoryManga, - required TResult Function(CategoryMangaChapterQuickSearchResult value) - categoryMangaChapter, - required TResult Function(MangaQuickSearchResult value) manga, - required TResult Function(ChapterQuickSearchResult value) chapter, - required TResult Function(GlobalSearchQuickSearchResult value) globalSearch, - }) => - throw _privateConstructorUsedError; - @optionalTypeArgs - TResult? mapOrNull({ - TResult? Function(HelpTextQuickSearchResult value)? helpText, - TResult? Function(SourceQuickSearchResult value)? source, - TResult? Function(SourceSearchQuickSearchResult value)? sourceSearch, - TResult? Function(CategoryQuickSearchResult value)? category, - TResult? Function(CategoryMangaQuickSearchResult value)? categoryManga, - TResult? Function(CategoryMangaChapterQuickSearchResult value)? - categoryMangaChapter, - TResult? Function(MangaQuickSearchResult value)? manga, - TResult? Function(ChapterQuickSearchResult value)? chapter, - TResult? Function(GlobalSearchQuickSearchResult value)? globalSearch, - }) => - throw _privateConstructorUsedError; - @optionalTypeArgs - TResult maybeMap({ - TResult Function(HelpTextQuickSearchResult value)? helpText, - TResult Function(SourceQuickSearchResult value)? source, - TResult Function(SourceSearchQuickSearchResult value)? sourceSearch, - TResult Function(CategoryQuickSearchResult value)? category, - TResult Function(CategoryMangaQuickSearchResult value)? categoryManga, - TResult Function(CategoryMangaChapterQuickSearchResult value)? - categoryMangaChapter, - TResult Function(MangaQuickSearchResult value)? manga, - TResult Function(ChapterQuickSearchResult value)? chapter, - TResult Function(GlobalSearchQuickSearchResult value)? globalSearch, - required TResult orElse(), - }) => - throw _privateConstructorUsedError; -} - -/// @nodoc -abstract class $QuickSearchResultCopyWith<$Res> { - factory $QuickSearchResultCopyWith( - QuickSearchResult value, $Res Function(QuickSearchResult) then) = - _$QuickSearchResultCopyWithImpl<$Res, QuickSearchResult>; -} - -/// @nodoc -class _$QuickSearchResultCopyWithImpl<$Res, $Val extends QuickSearchResult> - implements $QuickSearchResultCopyWith<$Res> { - _$QuickSearchResultCopyWithImpl(this._value, this._then); - - // ignore: unused_field - final $Val _value; - // ignore: unused_field - final $Res Function($Val) _then; -} - -/// @nodoc -abstract class _$$HelpTextQuickSearchResultImplCopyWith<$Res> { - factory _$$HelpTextQuickSearchResultImplCopyWith( - _$HelpTextQuickSearchResultImpl value, - $Res Function(_$HelpTextQuickSearchResultImpl) then) = - __$$HelpTextQuickSearchResultImplCopyWithImpl<$Res>; - @useResult - $Res call({String prefill, String? pattern, String hintText}); -} - -/// @nodoc -class __$$HelpTextQuickSearchResultImplCopyWithImpl<$Res> - extends _$QuickSearchResultCopyWithImpl<$Res, - _$HelpTextQuickSearchResultImpl> - implements _$$HelpTextQuickSearchResultImplCopyWith<$Res> { - __$$HelpTextQuickSearchResultImplCopyWithImpl( - _$HelpTextQuickSearchResultImpl _value, - $Res Function(_$HelpTextQuickSearchResultImpl) _then) - : super(_value, _then); - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? prefill = null, - Object? pattern = freezed, - Object? hintText = null, - }) { - return _then(_$HelpTextQuickSearchResultImpl( - prefill: null == prefill - ? _value.prefill - : prefill // ignore: cast_nullable_to_non_nullable - as String, - pattern: freezed == pattern - ? _value.pattern - : pattern // ignore: cast_nullable_to_non_nullable - as String?, - hintText: null == hintText - ? _value.hintText - : hintText // ignore: cast_nullable_to_non_nullable - as String, - )); - } -} - -/// @nodoc - -class _$HelpTextQuickSearchResultImpl implements HelpTextQuickSearchResult { - const _$HelpTextQuickSearchResultImpl( - {required this.prefill, this.pattern, required this.hintText}); - - @override - final String prefill; - @override - final String? pattern; - @override - final String hintText; - - @override - String toString() { - return 'QuickSearchResult.helpText(prefill: $prefill, pattern: $pattern, hintText: $hintText)'; - } - - @override - bool operator ==(dynamic other) { - return identical(this, other) || - (other.runtimeType == runtimeType && - other is _$HelpTextQuickSearchResultImpl && - (identical(other.prefill, prefill) || other.prefill == prefill) && - (identical(other.pattern, pattern) || other.pattern == pattern) && - (identical(other.hintText, hintText) || - other.hintText == hintText)); - } - - @override - int get hashCode => Object.hash(runtimeType, prefill, pattern, hintText); - - @JsonKey(ignore: true) - @override - @pragma('vm:prefer-inline') - _$$HelpTextQuickSearchResultImplCopyWith<_$HelpTextQuickSearchResultImpl> - get copyWith => __$$HelpTextQuickSearchResultImplCopyWithImpl< - _$HelpTextQuickSearchResultImpl>(this, _$identity); - - @override - @optionalTypeArgs - TResult when({ - required TResult Function(String prefill, String? pattern, String hintText) - helpText, - required TResult Function(Source source) source, - required TResult Function(Source source, String query) sourceSearch, - required TResult Function(Category category) category, - required TResult Function(Category category, Manga manga) categoryManga, - required TResult Function(Category? category, Manga manga, Chapter chapter) - categoryMangaChapter, - required TResult Function(Source? source, Manga manga) manga, - required TResult Function(Source? source, Manga manga, Chapter chapter) - chapter, - required TResult Function() globalSearch, - }) { - return helpText(prefill, pattern, hintText); - } - - @override - @optionalTypeArgs - TResult? whenOrNull({ - TResult? Function(String prefill, String? pattern, String hintText)? - helpText, - TResult? Function(Source source)? source, - TResult? Function(Source source, String query)? sourceSearch, - TResult? Function(Category category)? category, - TResult? Function(Category category, Manga manga)? categoryManga, - TResult? Function(Category? category, Manga manga, Chapter chapter)? - categoryMangaChapter, - TResult? Function(Source? source, Manga manga)? manga, - TResult? Function(Source? source, Manga manga, Chapter chapter)? chapter, - TResult? Function()? globalSearch, - }) { - return helpText?.call(prefill, pattern, hintText); - } - - @override - @optionalTypeArgs - TResult maybeWhen({ - TResult Function(String prefill, String? pattern, String hintText)? - helpText, - TResult Function(Source source)? source, - TResult Function(Source source, String query)? sourceSearch, - TResult Function(Category category)? category, - TResult Function(Category category, Manga manga)? categoryManga, - TResult Function(Category? category, Manga manga, Chapter chapter)? - categoryMangaChapter, - TResult Function(Source? source, Manga manga)? manga, - TResult Function(Source? source, Manga manga, Chapter chapter)? chapter, - TResult Function()? globalSearch, - required TResult orElse(), - }) { - if (helpText != null) { - return helpText(prefill, pattern, hintText); - } - return orElse(); - } - - @override - @optionalTypeArgs - TResult map({ - required TResult Function(HelpTextQuickSearchResult value) helpText, - required TResult Function(SourceQuickSearchResult value) source, - required TResult Function(SourceSearchQuickSearchResult value) sourceSearch, - required TResult Function(CategoryQuickSearchResult value) category, - required TResult Function(CategoryMangaQuickSearchResult value) - categoryManga, - required TResult Function(CategoryMangaChapterQuickSearchResult value) - categoryMangaChapter, - required TResult Function(MangaQuickSearchResult value) manga, - required TResult Function(ChapterQuickSearchResult value) chapter, - required TResult Function(GlobalSearchQuickSearchResult value) globalSearch, - }) { - return helpText(this); - } - - @override - @optionalTypeArgs - TResult? mapOrNull({ - TResult? Function(HelpTextQuickSearchResult value)? helpText, - TResult? Function(SourceQuickSearchResult value)? source, - TResult? Function(SourceSearchQuickSearchResult value)? sourceSearch, - TResult? Function(CategoryQuickSearchResult value)? category, - TResult? Function(CategoryMangaQuickSearchResult value)? categoryManga, - TResult? Function(CategoryMangaChapterQuickSearchResult value)? - categoryMangaChapter, - TResult? Function(MangaQuickSearchResult value)? manga, - TResult? Function(ChapterQuickSearchResult value)? chapter, - TResult? Function(GlobalSearchQuickSearchResult value)? globalSearch, - }) { - return helpText?.call(this); - } - - @override - @optionalTypeArgs - TResult maybeMap({ - TResult Function(HelpTextQuickSearchResult value)? helpText, - TResult Function(SourceQuickSearchResult value)? source, - TResult Function(SourceSearchQuickSearchResult value)? sourceSearch, - TResult Function(CategoryQuickSearchResult value)? category, - TResult Function(CategoryMangaQuickSearchResult value)? categoryManga, - TResult Function(CategoryMangaChapterQuickSearchResult value)? - categoryMangaChapter, - TResult Function(MangaQuickSearchResult value)? manga, - TResult Function(ChapterQuickSearchResult value)? chapter, - TResult Function(GlobalSearchQuickSearchResult value)? globalSearch, - required TResult orElse(), - }) { - if (helpText != null) { - return helpText(this); - } - return orElse(); - } -} - -abstract class HelpTextQuickSearchResult implements QuickSearchResult { - const factory HelpTextQuickSearchResult( - {required final String prefill, - final String? pattern, - required final String hintText}) = _$HelpTextQuickSearchResultImpl; - - String get prefill; - String? get pattern; - String get hintText; - @JsonKey(ignore: true) - _$$HelpTextQuickSearchResultImplCopyWith<_$HelpTextQuickSearchResultImpl> - get copyWith => throw _privateConstructorUsedError; -} - -/// @nodoc -abstract class _$$SourceQuickSearchResultImplCopyWith<$Res> { - factory _$$SourceQuickSearchResultImplCopyWith( - _$SourceQuickSearchResultImpl value, - $Res Function(_$SourceQuickSearchResultImpl) then) = - __$$SourceQuickSearchResultImplCopyWithImpl<$Res>; - @useResult - $Res call({Source source}); - - $SourceCopyWith<$Res> get source; -} - -/// @nodoc -class __$$SourceQuickSearchResultImplCopyWithImpl<$Res> - extends _$QuickSearchResultCopyWithImpl<$Res, _$SourceQuickSearchResultImpl> - implements _$$SourceQuickSearchResultImplCopyWith<$Res> { - __$$SourceQuickSearchResultImplCopyWithImpl( - _$SourceQuickSearchResultImpl _value, - $Res Function(_$SourceQuickSearchResultImpl) _then) - : super(_value, _then); - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? source = null, - }) { - return _then(_$SourceQuickSearchResultImpl( - source: null == source - ? _value.source - : source // ignore: cast_nullable_to_non_nullable - as Source, - )); - } - - @override - @pragma('vm:prefer-inline') - $SourceCopyWith<$Res> get source { - return $SourceCopyWith<$Res>(_value.source, (value) { - return _then(_value.copyWith(source: value)); - }); - } -} - -/// @nodoc - -class _$SourceQuickSearchResultImpl implements SourceQuickSearchResult { - const _$SourceQuickSearchResultImpl({required this.source}); - - @override - final Source source; - - @override - String toString() { - return 'QuickSearchResult.source(source: $source)'; - } - - @override - bool operator ==(dynamic other) { - return identical(this, other) || - (other.runtimeType == runtimeType && - other is _$SourceQuickSearchResultImpl && - (identical(other.source, source) || other.source == source)); - } - - @override - int get hashCode => Object.hash(runtimeType, source); - - @JsonKey(ignore: true) - @override - @pragma('vm:prefer-inline') - _$$SourceQuickSearchResultImplCopyWith<_$SourceQuickSearchResultImpl> - get copyWith => __$$SourceQuickSearchResultImplCopyWithImpl< - _$SourceQuickSearchResultImpl>(this, _$identity); - - @override - @optionalTypeArgs - TResult when({ - required TResult Function(String prefill, String? pattern, String hintText) - helpText, - required TResult Function(Source source) source, - required TResult Function(Source source, String query) sourceSearch, - required TResult Function(Category category) category, - required TResult Function(Category category, Manga manga) categoryManga, - required TResult Function(Category? category, Manga manga, Chapter chapter) - categoryMangaChapter, - required TResult Function(Source? source, Manga manga) manga, - required TResult Function(Source? source, Manga manga, Chapter chapter) - chapter, - required TResult Function() globalSearch, - }) { - return source(this.source); - } - - @override - @optionalTypeArgs - TResult? whenOrNull({ - TResult? Function(String prefill, String? pattern, String hintText)? - helpText, - TResult? Function(Source source)? source, - TResult? Function(Source source, String query)? sourceSearch, - TResult? Function(Category category)? category, - TResult? Function(Category category, Manga manga)? categoryManga, - TResult? Function(Category? category, Manga manga, Chapter chapter)? - categoryMangaChapter, - TResult? Function(Source? source, Manga manga)? manga, - TResult? Function(Source? source, Manga manga, Chapter chapter)? chapter, - TResult? Function()? globalSearch, - }) { - return source?.call(this.source); - } - - @override - @optionalTypeArgs - TResult maybeWhen({ - TResult Function(String prefill, String? pattern, String hintText)? - helpText, - TResult Function(Source source)? source, - TResult Function(Source source, String query)? sourceSearch, - TResult Function(Category category)? category, - TResult Function(Category category, Manga manga)? categoryManga, - TResult Function(Category? category, Manga manga, Chapter chapter)? - categoryMangaChapter, - TResult Function(Source? source, Manga manga)? manga, - TResult Function(Source? source, Manga manga, Chapter chapter)? chapter, - TResult Function()? globalSearch, - required TResult orElse(), - }) { - if (source != null) { - return source(this.source); - } - return orElse(); - } - - @override - @optionalTypeArgs - TResult map({ - required TResult Function(HelpTextQuickSearchResult value) helpText, - required TResult Function(SourceQuickSearchResult value) source, - required TResult Function(SourceSearchQuickSearchResult value) sourceSearch, - required TResult Function(CategoryQuickSearchResult value) category, - required TResult Function(CategoryMangaQuickSearchResult value) - categoryManga, - required TResult Function(CategoryMangaChapterQuickSearchResult value) - categoryMangaChapter, - required TResult Function(MangaQuickSearchResult value) manga, - required TResult Function(ChapterQuickSearchResult value) chapter, - required TResult Function(GlobalSearchQuickSearchResult value) globalSearch, - }) { - return source(this); - } - - @override - @optionalTypeArgs - TResult? mapOrNull({ - TResult? Function(HelpTextQuickSearchResult value)? helpText, - TResult? Function(SourceQuickSearchResult value)? source, - TResult? Function(SourceSearchQuickSearchResult value)? sourceSearch, - TResult? Function(CategoryQuickSearchResult value)? category, - TResult? Function(CategoryMangaQuickSearchResult value)? categoryManga, - TResult? Function(CategoryMangaChapterQuickSearchResult value)? - categoryMangaChapter, - TResult? Function(MangaQuickSearchResult value)? manga, - TResult? Function(ChapterQuickSearchResult value)? chapter, - TResult? Function(GlobalSearchQuickSearchResult value)? globalSearch, - }) { - return source?.call(this); - } - - @override - @optionalTypeArgs - TResult maybeMap({ - TResult Function(HelpTextQuickSearchResult value)? helpText, - TResult Function(SourceQuickSearchResult value)? source, - TResult Function(SourceSearchQuickSearchResult value)? sourceSearch, - TResult Function(CategoryQuickSearchResult value)? category, - TResult Function(CategoryMangaQuickSearchResult value)? categoryManga, - TResult Function(CategoryMangaChapterQuickSearchResult value)? - categoryMangaChapter, - TResult Function(MangaQuickSearchResult value)? manga, - TResult Function(ChapterQuickSearchResult value)? chapter, - TResult Function(GlobalSearchQuickSearchResult value)? globalSearch, - required TResult orElse(), - }) { - if (source != null) { - return source(this); - } - return orElse(); - } -} - -abstract class SourceQuickSearchResult implements QuickSearchResult { - const factory SourceQuickSearchResult({required final Source source}) = - _$SourceQuickSearchResultImpl; - - Source get source; - @JsonKey(ignore: true) - _$$SourceQuickSearchResultImplCopyWith<_$SourceQuickSearchResultImpl> - get copyWith => throw _privateConstructorUsedError; -} - -/// @nodoc -abstract class _$$SourceSearchQuickSearchResultImplCopyWith<$Res> { - factory _$$SourceSearchQuickSearchResultImplCopyWith( - _$SourceSearchQuickSearchResultImpl value, - $Res Function(_$SourceSearchQuickSearchResultImpl) then) = - __$$SourceSearchQuickSearchResultImplCopyWithImpl<$Res>; - @useResult - $Res call({Source source, String query}); - - $SourceCopyWith<$Res> get source; -} - -/// @nodoc -class __$$SourceSearchQuickSearchResultImplCopyWithImpl<$Res> - extends _$QuickSearchResultCopyWithImpl<$Res, - _$SourceSearchQuickSearchResultImpl> - implements _$$SourceSearchQuickSearchResultImplCopyWith<$Res> { - __$$SourceSearchQuickSearchResultImplCopyWithImpl( - _$SourceSearchQuickSearchResultImpl _value, - $Res Function(_$SourceSearchQuickSearchResultImpl) _then) - : super(_value, _then); - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? source = null, - Object? query = null, - }) { - return _then(_$SourceSearchQuickSearchResultImpl( - source: null == source - ? _value.source - : source // ignore: cast_nullable_to_non_nullable - as Source, - query: null == query - ? _value.query - : query // ignore: cast_nullable_to_non_nullable - as String, - )); - } - - @override - @pragma('vm:prefer-inline') - $SourceCopyWith<$Res> get source { - return $SourceCopyWith<$Res>(_value.source, (value) { - return _then(_value.copyWith(source: value)); - }); - } -} - -/// @nodoc - -class _$SourceSearchQuickSearchResultImpl - implements SourceSearchQuickSearchResult { - const _$SourceSearchQuickSearchResultImpl( - {required this.source, required this.query}); - - @override - final Source source; - @override - final String query; - - @override - String toString() { - return 'QuickSearchResult.sourceSearch(source: $source, query: $query)'; - } - - @override - bool operator ==(dynamic other) { - return identical(this, other) || - (other.runtimeType == runtimeType && - other is _$SourceSearchQuickSearchResultImpl && - (identical(other.source, source) || other.source == source) && - (identical(other.query, query) || other.query == query)); - } - - @override - int get hashCode => Object.hash(runtimeType, source, query); - - @JsonKey(ignore: true) - @override - @pragma('vm:prefer-inline') - _$$SourceSearchQuickSearchResultImplCopyWith< - _$SourceSearchQuickSearchResultImpl> - get copyWith => __$$SourceSearchQuickSearchResultImplCopyWithImpl< - _$SourceSearchQuickSearchResultImpl>(this, _$identity); - - @override - @optionalTypeArgs - TResult when({ - required TResult Function(String prefill, String? pattern, String hintText) - helpText, - required TResult Function(Source source) source, - required TResult Function(Source source, String query) sourceSearch, - required TResult Function(Category category) category, - required TResult Function(Category category, Manga manga) categoryManga, - required TResult Function(Category? category, Manga manga, Chapter chapter) - categoryMangaChapter, - required TResult Function(Source? source, Manga manga) manga, - required TResult Function(Source? source, Manga manga, Chapter chapter) - chapter, - required TResult Function() globalSearch, - }) { - return sourceSearch(this.source, query); - } - - @override - @optionalTypeArgs - TResult? whenOrNull({ - TResult? Function(String prefill, String? pattern, String hintText)? - helpText, - TResult? Function(Source source)? source, - TResult? Function(Source source, String query)? sourceSearch, - TResult? Function(Category category)? category, - TResult? Function(Category category, Manga manga)? categoryManga, - TResult? Function(Category? category, Manga manga, Chapter chapter)? - categoryMangaChapter, - TResult? Function(Source? source, Manga manga)? manga, - TResult? Function(Source? source, Manga manga, Chapter chapter)? chapter, - TResult? Function()? globalSearch, - }) { - return sourceSearch?.call(this.source, query); - } - - @override - @optionalTypeArgs - TResult maybeWhen({ - TResult Function(String prefill, String? pattern, String hintText)? - helpText, - TResult Function(Source source)? source, - TResult Function(Source source, String query)? sourceSearch, - TResult Function(Category category)? category, - TResult Function(Category category, Manga manga)? categoryManga, - TResult Function(Category? category, Manga manga, Chapter chapter)? - categoryMangaChapter, - TResult Function(Source? source, Manga manga)? manga, - TResult Function(Source? source, Manga manga, Chapter chapter)? chapter, - TResult Function()? globalSearch, - required TResult orElse(), - }) { - if (sourceSearch != null) { - return sourceSearch(this.source, query); - } - return orElse(); - } - - @override - @optionalTypeArgs - TResult map({ - required TResult Function(HelpTextQuickSearchResult value) helpText, - required TResult Function(SourceQuickSearchResult value) source, - required TResult Function(SourceSearchQuickSearchResult value) sourceSearch, - required TResult Function(CategoryQuickSearchResult value) category, - required TResult Function(CategoryMangaQuickSearchResult value) - categoryManga, - required TResult Function(CategoryMangaChapterQuickSearchResult value) - categoryMangaChapter, - required TResult Function(MangaQuickSearchResult value) manga, - required TResult Function(ChapterQuickSearchResult value) chapter, - required TResult Function(GlobalSearchQuickSearchResult value) globalSearch, - }) { - return sourceSearch(this); - } - - @override - @optionalTypeArgs - TResult? mapOrNull({ - TResult? Function(HelpTextQuickSearchResult value)? helpText, - TResult? Function(SourceQuickSearchResult value)? source, - TResult? Function(SourceSearchQuickSearchResult value)? sourceSearch, - TResult? Function(CategoryQuickSearchResult value)? category, - TResult? Function(CategoryMangaQuickSearchResult value)? categoryManga, - TResult? Function(CategoryMangaChapterQuickSearchResult value)? - categoryMangaChapter, - TResult? Function(MangaQuickSearchResult value)? manga, - TResult? Function(ChapterQuickSearchResult value)? chapter, - TResult? Function(GlobalSearchQuickSearchResult value)? globalSearch, - }) { - return sourceSearch?.call(this); - } - - @override - @optionalTypeArgs - TResult maybeMap({ - TResult Function(HelpTextQuickSearchResult value)? helpText, - TResult Function(SourceQuickSearchResult value)? source, - TResult Function(SourceSearchQuickSearchResult value)? sourceSearch, - TResult Function(CategoryQuickSearchResult value)? category, - TResult Function(CategoryMangaQuickSearchResult value)? categoryManga, - TResult Function(CategoryMangaChapterQuickSearchResult value)? - categoryMangaChapter, - TResult Function(MangaQuickSearchResult value)? manga, - TResult Function(ChapterQuickSearchResult value)? chapter, - TResult Function(GlobalSearchQuickSearchResult value)? globalSearch, - required TResult orElse(), - }) { - if (sourceSearch != null) { - return sourceSearch(this); - } - return orElse(); - } -} - -abstract class SourceSearchQuickSearchResult implements QuickSearchResult { - const factory SourceSearchQuickSearchResult( - {required final Source source, - required final String query}) = _$SourceSearchQuickSearchResultImpl; - - Source get source; - String get query; - @JsonKey(ignore: true) - _$$SourceSearchQuickSearchResultImplCopyWith< - _$SourceSearchQuickSearchResultImpl> - get copyWith => throw _privateConstructorUsedError; -} - -/// @nodoc -abstract class _$$CategoryQuickSearchResultImplCopyWith<$Res> { - factory _$$CategoryQuickSearchResultImplCopyWith( - _$CategoryQuickSearchResultImpl value, - $Res Function(_$CategoryQuickSearchResultImpl) then) = - __$$CategoryQuickSearchResultImplCopyWithImpl<$Res>; - @useResult - $Res call({Category category}); - - $CategoryCopyWith<$Res> get category; -} - -/// @nodoc -class __$$CategoryQuickSearchResultImplCopyWithImpl<$Res> - extends _$QuickSearchResultCopyWithImpl<$Res, - _$CategoryQuickSearchResultImpl> - implements _$$CategoryQuickSearchResultImplCopyWith<$Res> { - __$$CategoryQuickSearchResultImplCopyWithImpl( - _$CategoryQuickSearchResultImpl _value, - $Res Function(_$CategoryQuickSearchResultImpl) _then) - : super(_value, _then); - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? category = null, - }) { - return _then(_$CategoryQuickSearchResultImpl( - category: null == category - ? _value.category - : category // ignore: cast_nullable_to_non_nullable - as Category, - )); - } - - @override - @pragma('vm:prefer-inline') - $CategoryCopyWith<$Res> get category { - return $CategoryCopyWith<$Res>(_value.category, (value) { - return _then(_value.copyWith(category: value)); - }); - } -} - -/// @nodoc - -class _$CategoryQuickSearchResultImpl implements CategoryQuickSearchResult { - const _$CategoryQuickSearchResultImpl({required this.category}); - - @override - final Category category; - - @override - String toString() { - return 'QuickSearchResult.category(category: $category)'; - } - - @override - bool operator ==(dynamic other) { - return identical(this, other) || - (other.runtimeType == runtimeType && - other is _$CategoryQuickSearchResultImpl && - (identical(other.category, category) || - other.category == category)); - } - - @override - int get hashCode => Object.hash(runtimeType, category); - - @JsonKey(ignore: true) - @override - @pragma('vm:prefer-inline') - _$$CategoryQuickSearchResultImplCopyWith<_$CategoryQuickSearchResultImpl> - get copyWith => __$$CategoryQuickSearchResultImplCopyWithImpl< - _$CategoryQuickSearchResultImpl>(this, _$identity); - - @override - @optionalTypeArgs - TResult when({ - required TResult Function(String prefill, String? pattern, String hintText) - helpText, - required TResult Function(Source source) source, - required TResult Function(Source source, String query) sourceSearch, - required TResult Function(Category category) category, - required TResult Function(Category category, Manga manga) categoryManga, - required TResult Function(Category? category, Manga manga, Chapter chapter) - categoryMangaChapter, - required TResult Function(Source? source, Manga manga) manga, - required TResult Function(Source? source, Manga manga, Chapter chapter) - chapter, - required TResult Function() globalSearch, - }) { - return category(this.category); - } - - @override - @optionalTypeArgs - TResult? whenOrNull({ - TResult? Function(String prefill, String? pattern, String hintText)? - helpText, - TResult? Function(Source source)? source, - TResult? Function(Source source, String query)? sourceSearch, - TResult? Function(Category category)? category, - TResult? Function(Category category, Manga manga)? categoryManga, - TResult? Function(Category? category, Manga manga, Chapter chapter)? - categoryMangaChapter, - TResult? Function(Source? source, Manga manga)? manga, - TResult? Function(Source? source, Manga manga, Chapter chapter)? chapter, - TResult? Function()? globalSearch, - }) { - return category?.call(this.category); - } - - @override - @optionalTypeArgs - TResult maybeWhen({ - TResult Function(String prefill, String? pattern, String hintText)? - helpText, - TResult Function(Source source)? source, - TResult Function(Source source, String query)? sourceSearch, - TResult Function(Category category)? category, - TResult Function(Category category, Manga manga)? categoryManga, - TResult Function(Category? category, Manga manga, Chapter chapter)? - categoryMangaChapter, - TResult Function(Source? source, Manga manga)? manga, - TResult Function(Source? source, Manga manga, Chapter chapter)? chapter, - TResult Function()? globalSearch, - required TResult orElse(), - }) { - if (category != null) { - return category(this.category); - } - return orElse(); - } - - @override - @optionalTypeArgs - TResult map({ - required TResult Function(HelpTextQuickSearchResult value) helpText, - required TResult Function(SourceQuickSearchResult value) source, - required TResult Function(SourceSearchQuickSearchResult value) sourceSearch, - required TResult Function(CategoryQuickSearchResult value) category, - required TResult Function(CategoryMangaQuickSearchResult value) - categoryManga, - required TResult Function(CategoryMangaChapterQuickSearchResult value) - categoryMangaChapter, - required TResult Function(MangaQuickSearchResult value) manga, - required TResult Function(ChapterQuickSearchResult value) chapter, - required TResult Function(GlobalSearchQuickSearchResult value) globalSearch, - }) { - return category(this); - } - - @override - @optionalTypeArgs - TResult? mapOrNull({ - TResult? Function(HelpTextQuickSearchResult value)? helpText, - TResult? Function(SourceQuickSearchResult value)? source, - TResult? Function(SourceSearchQuickSearchResult value)? sourceSearch, - TResult? Function(CategoryQuickSearchResult value)? category, - TResult? Function(CategoryMangaQuickSearchResult value)? categoryManga, - TResult? Function(CategoryMangaChapterQuickSearchResult value)? - categoryMangaChapter, - TResult? Function(MangaQuickSearchResult value)? manga, - TResult? Function(ChapterQuickSearchResult value)? chapter, - TResult? Function(GlobalSearchQuickSearchResult value)? globalSearch, - }) { - return category?.call(this); - } - - @override - @optionalTypeArgs - TResult maybeMap({ - TResult Function(HelpTextQuickSearchResult value)? helpText, - TResult Function(SourceQuickSearchResult value)? source, - TResult Function(SourceSearchQuickSearchResult value)? sourceSearch, - TResult Function(CategoryQuickSearchResult value)? category, - TResult Function(CategoryMangaQuickSearchResult value)? categoryManga, - TResult Function(CategoryMangaChapterQuickSearchResult value)? - categoryMangaChapter, - TResult Function(MangaQuickSearchResult value)? manga, - TResult Function(ChapterQuickSearchResult value)? chapter, - TResult Function(GlobalSearchQuickSearchResult value)? globalSearch, - required TResult orElse(), - }) { - if (category != null) { - return category(this); - } - return orElse(); - } -} - -abstract class CategoryQuickSearchResult implements QuickSearchResult { - const factory CategoryQuickSearchResult({required final Category category}) = - _$CategoryQuickSearchResultImpl; - - Category get category; - @JsonKey(ignore: true) - _$$CategoryQuickSearchResultImplCopyWith<_$CategoryQuickSearchResultImpl> - get copyWith => throw _privateConstructorUsedError; -} - -/// @nodoc -abstract class _$$CategoryMangaQuickSearchResultImplCopyWith<$Res> { - factory _$$CategoryMangaQuickSearchResultImplCopyWith( - _$CategoryMangaQuickSearchResultImpl value, - $Res Function(_$CategoryMangaQuickSearchResultImpl) then) = - __$$CategoryMangaQuickSearchResultImplCopyWithImpl<$Res>; - @useResult - $Res call({Category category, Manga manga}); - - $CategoryCopyWith<$Res> get category; - $MangaCopyWith<$Res> get manga; -} - -/// @nodoc -class __$$CategoryMangaQuickSearchResultImplCopyWithImpl<$Res> - extends _$QuickSearchResultCopyWithImpl<$Res, - _$CategoryMangaQuickSearchResultImpl> - implements _$$CategoryMangaQuickSearchResultImplCopyWith<$Res> { - __$$CategoryMangaQuickSearchResultImplCopyWithImpl( - _$CategoryMangaQuickSearchResultImpl _value, - $Res Function(_$CategoryMangaQuickSearchResultImpl) _then) - : super(_value, _then); - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? category = null, - Object? manga = null, - }) { - return _then(_$CategoryMangaQuickSearchResultImpl( - category: null == category - ? _value.category - : category // ignore: cast_nullable_to_non_nullable - as Category, - manga: null == manga - ? _value.manga - : manga // ignore: cast_nullable_to_non_nullable - as Manga, - )); - } - - @override - @pragma('vm:prefer-inline') - $CategoryCopyWith<$Res> get category { - return $CategoryCopyWith<$Res>(_value.category, (value) { - return _then(_value.copyWith(category: value)); - }); - } - - @override - @pragma('vm:prefer-inline') - $MangaCopyWith<$Res> get manga { - return $MangaCopyWith<$Res>(_value.manga, (value) { - return _then(_value.copyWith(manga: value)); - }); - } -} - -/// @nodoc - -class _$CategoryMangaQuickSearchResultImpl - implements CategoryMangaQuickSearchResult { - const _$CategoryMangaQuickSearchResultImpl( - {required this.category, required this.manga}); - - @override - final Category category; - @override - final Manga manga; - - @override - String toString() { - return 'QuickSearchResult.categoryManga(category: $category, manga: $manga)'; - } - - @override - bool operator ==(dynamic other) { - return identical(this, other) || - (other.runtimeType == runtimeType && - other is _$CategoryMangaQuickSearchResultImpl && - (identical(other.category, category) || - other.category == category) && - (identical(other.manga, manga) || other.manga == manga)); - } - - @override - int get hashCode => Object.hash(runtimeType, category, manga); - - @JsonKey(ignore: true) - @override - @pragma('vm:prefer-inline') - _$$CategoryMangaQuickSearchResultImplCopyWith< - _$CategoryMangaQuickSearchResultImpl> - get copyWith => __$$CategoryMangaQuickSearchResultImplCopyWithImpl< - _$CategoryMangaQuickSearchResultImpl>(this, _$identity); - - @override - @optionalTypeArgs - TResult when({ - required TResult Function(String prefill, String? pattern, String hintText) - helpText, - required TResult Function(Source source) source, - required TResult Function(Source source, String query) sourceSearch, - required TResult Function(Category category) category, - required TResult Function(Category category, Manga manga) categoryManga, - required TResult Function(Category? category, Manga manga, Chapter chapter) - categoryMangaChapter, - required TResult Function(Source? source, Manga manga) manga, - required TResult Function(Source? source, Manga manga, Chapter chapter) - chapter, - required TResult Function() globalSearch, - }) { - return categoryManga(this.category, this.manga); - } - - @override - @optionalTypeArgs - TResult? whenOrNull({ - TResult? Function(String prefill, String? pattern, String hintText)? - helpText, - TResult? Function(Source source)? source, - TResult? Function(Source source, String query)? sourceSearch, - TResult? Function(Category category)? category, - TResult? Function(Category category, Manga manga)? categoryManga, - TResult? Function(Category? category, Manga manga, Chapter chapter)? - categoryMangaChapter, - TResult? Function(Source? source, Manga manga)? manga, - TResult? Function(Source? source, Manga manga, Chapter chapter)? chapter, - TResult? Function()? globalSearch, - }) { - return categoryManga?.call(this.category, this.manga); - } - - @override - @optionalTypeArgs - TResult maybeWhen({ - TResult Function(String prefill, String? pattern, String hintText)? - helpText, - TResult Function(Source source)? source, - TResult Function(Source source, String query)? sourceSearch, - TResult Function(Category category)? category, - TResult Function(Category category, Manga manga)? categoryManga, - TResult Function(Category? category, Manga manga, Chapter chapter)? - categoryMangaChapter, - TResult Function(Source? source, Manga manga)? manga, - TResult Function(Source? source, Manga manga, Chapter chapter)? chapter, - TResult Function()? globalSearch, - required TResult orElse(), - }) { - if (categoryManga != null) { - return categoryManga(this.category, this.manga); - } - return orElse(); - } - - @override - @optionalTypeArgs - TResult map({ - required TResult Function(HelpTextQuickSearchResult value) helpText, - required TResult Function(SourceQuickSearchResult value) source, - required TResult Function(SourceSearchQuickSearchResult value) sourceSearch, - required TResult Function(CategoryQuickSearchResult value) category, - required TResult Function(CategoryMangaQuickSearchResult value) - categoryManga, - required TResult Function(CategoryMangaChapterQuickSearchResult value) - categoryMangaChapter, - required TResult Function(MangaQuickSearchResult value) manga, - required TResult Function(ChapterQuickSearchResult value) chapter, - required TResult Function(GlobalSearchQuickSearchResult value) globalSearch, - }) { - return categoryManga(this); - } - - @override - @optionalTypeArgs - TResult? mapOrNull({ - TResult? Function(HelpTextQuickSearchResult value)? helpText, - TResult? Function(SourceQuickSearchResult value)? source, - TResult? Function(SourceSearchQuickSearchResult value)? sourceSearch, - TResult? Function(CategoryQuickSearchResult value)? category, - TResult? Function(CategoryMangaQuickSearchResult value)? categoryManga, - TResult? Function(CategoryMangaChapterQuickSearchResult value)? - categoryMangaChapter, - TResult? Function(MangaQuickSearchResult value)? manga, - TResult? Function(ChapterQuickSearchResult value)? chapter, - TResult? Function(GlobalSearchQuickSearchResult value)? globalSearch, - }) { - return categoryManga?.call(this); - } - - @override - @optionalTypeArgs - TResult maybeMap({ - TResult Function(HelpTextQuickSearchResult value)? helpText, - TResult Function(SourceQuickSearchResult value)? source, - TResult Function(SourceSearchQuickSearchResult value)? sourceSearch, - TResult Function(CategoryQuickSearchResult value)? category, - TResult Function(CategoryMangaQuickSearchResult value)? categoryManga, - TResult Function(CategoryMangaChapterQuickSearchResult value)? - categoryMangaChapter, - TResult Function(MangaQuickSearchResult value)? manga, - TResult Function(ChapterQuickSearchResult value)? chapter, - TResult Function(GlobalSearchQuickSearchResult value)? globalSearch, - required TResult orElse(), - }) { - if (categoryManga != null) { - return categoryManga(this); - } - return orElse(); - } -} - -abstract class CategoryMangaQuickSearchResult implements QuickSearchResult { - const factory CategoryMangaQuickSearchResult( - {required final Category category, - required final Manga manga}) = _$CategoryMangaQuickSearchResultImpl; - - Category get category; - Manga get manga; - @JsonKey(ignore: true) - _$$CategoryMangaQuickSearchResultImplCopyWith< - _$CategoryMangaQuickSearchResultImpl> - get copyWith => throw _privateConstructorUsedError; -} - -/// @nodoc -abstract class _$$CategoryMangaChapterQuickSearchResultImplCopyWith<$Res> { - factory _$$CategoryMangaChapterQuickSearchResultImplCopyWith( - _$CategoryMangaChapterQuickSearchResultImpl value, - $Res Function(_$CategoryMangaChapterQuickSearchResultImpl) then) = - __$$CategoryMangaChapterQuickSearchResultImplCopyWithImpl<$Res>; - @useResult - $Res call({Category? category, Manga manga, Chapter chapter}); - - $CategoryCopyWith<$Res>? get category; - $MangaCopyWith<$Res> get manga; - $ChapterCopyWith<$Res> get chapter; -} - -/// @nodoc -class __$$CategoryMangaChapterQuickSearchResultImplCopyWithImpl<$Res> - extends _$QuickSearchResultCopyWithImpl<$Res, - _$CategoryMangaChapterQuickSearchResultImpl> - implements _$$CategoryMangaChapterQuickSearchResultImplCopyWith<$Res> { - __$$CategoryMangaChapterQuickSearchResultImplCopyWithImpl( - _$CategoryMangaChapterQuickSearchResultImpl _value, - $Res Function(_$CategoryMangaChapterQuickSearchResultImpl) _then) - : super(_value, _then); - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? category = freezed, - Object? manga = null, - Object? chapter = null, - }) { - return _then(_$CategoryMangaChapterQuickSearchResultImpl( - category: freezed == category - ? _value.category - : category // ignore: cast_nullable_to_non_nullable - as Category?, - manga: null == manga - ? _value.manga - : manga // ignore: cast_nullable_to_non_nullable - as Manga, - chapter: null == chapter - ? _value.chapter - : chapter // ignore: cast_nullable_to_non_nullable - as Chapter, - )); - } - - @override - @pragma('vm:prefer-inline') - $CategoryCopyWith<$Res>? get category { - if (_value.category == null) { - return null; - } - - return $CategoryCopyWith<$Res>(_value.category!, (value) { - return _then(_value.copyWith(category: value)); - }); - } - - @override - @pragma('vm:prefer-inline') - $MangaCopyWith<$Res> get manga { - return $MangaCopyWith<$Res>(_value.manga, (value) { - return _then(_value.copyWith(manga: value)); - }); - } - - @override - @pragma('vm:prefer-inline') - $ChapterCopyWith<$Res> get chapter { - return $ChapterCopyWith<$Res>(_value.chapter, (value) { - return _then(_value.copyWith(chapter: value)); - }); - } -} - -/// @nodoc - -class _$CategoryMangaChapterQuickSearchResultImpl - implements CategoryMangaChapterQuickSearchResult { - const _$CategoryMangaChapterQuickSearchResultImpl( - {this.category, required this.manga, required this.chapter}); - - @override - final Category? category; - @override - final Manga manga; - @override - final Chapter chapter; - - @override - String toString() { - return 'QuickSearchResult.categoryMangaChapter(category: $category, manga: $manga, chapter: $chapter)'; - } - - @override - bool operator ==(dynamic other) { - return identical(this, other) || - (other.runtimeType == runtimeType && - other is _$CategoryMangaChapterQuickSearchResultImpl && - (identical(other.category, category) || - other.category == category) && - (identical(other.manga, manga) || other.manga == manga) && - (identical(other.chapter, chapter) || other.chapter == chapter)); - } - - @override - int get hashCode => Object.hash(runtimeType, category, manga, chapter); - - @JsonKey(ignore: true) - @override - @pragma('vm:prefer-inline') - _$$CategoryMangaChapterQuickSearchResultImplCopyWith< - _$CategoryMangaChapterQuickSearchResultImpl> - get copyWith => __$$CategoryMangaChapterQuickSearchResultImplCopyWithImpl< - _$CategoryMangaChapterQuickSearchResultImpl>(this, _$identity); - - @override - @optionalTypeArgs - TResult when({ - required TResult Function(String prefill, String? pattern, String hintText) - helpText, - required TResult Function(Source source) source, - required TResult Function(Source source, String query) sourceSearch, - required TResult Function(Category category) category, - required TResult Function(Category category, Manga manga) categoryManga, - required TResult Function(Category? category, Manga manga, Chapter chapter) - categoryMangaChapter, - required TResult Function(Source? source, Manga manga) manga, - required TResult Function(Source? source, Manga manga, Chapter chapter) - chapter, - required TResult Function() globalSearch, - }) { - return categoryMangaChapter(this.category, this.manga, this.chapter); - } - - @override - @optionalTypeArgs - TResult? whenOrNull({ - TResult? Function(String prefill, String? pattern, String hintText)? - helpText, - TResult? Function(Source source)? source, - TResult? Function(Source source, String query)? sourceSearch, - TResult? Function(Category category)? category, - TResult? Function(Category category, Manga manga)? categoryManga, - TResult? Function(Category? category, Manga manga, Chapter chapter)? - categoryMangaChapter, - TResult? Function(Source? source, Manga manga)? manga, - TResult? Function(Source? source, Manga manga, Chapter chapter)? chapter, - TResult? Function()? globalSearch, - }) { - return categoryMangaChapter?.call(this.category, this.manga, this.chapter); - } - - @override - @optionalTypeArgs - TResult maybeWhen({ - TResult Function(String prefill, String? pattern, String hintText)? - helpText, - TResult Function(Source source)? source, - TResult Function(Source source, String query)? sourceSearch, - TResult Function(Category category)? category, - TResult Function(Category category, Manga manga)? categoryManga, - TResult Function(Category? category, Manga manga, Chapter chapter)? - categoryMangaChapter, - TResult Function(Source? source, Manga manga)? manga, - TResult Function(Source? source, Manga manga, Chapter chapter)? chapter, - TResult Function()? globalSearch, - required TResult orElse(), - }) { - if (categoryMangaChapter != null) { - return categoryMangaChapter(this.category, this.manga, this.chapter); - } - return orElse(); - } - - @override - @optionalTypeArgs - TResult map({ - required TResult Function(HelpTextQuickSearchResult value) helpText, - required TResult Function(SourceQuickSearchResult value) source, - required TResult Function(SourceSearchQuickSearchResult value) sourceSearch, - required TResult Function(CategoryQuickSearchResult value) category, - required TResult Function(CategoryMangaQuickSearchResult value) - categoryManga, - required TResult Function(CategoryMangaChapterQuickSearchResult value) - categoryMangaChapter, - required TResult Function(MangaQuickSearchResult value) manga, - required TResult Function(ChapterQuickSearchResult value) chapter, - required TResult Function(GlobalSearchQuickSearchResult value) globalSearch, - }) { - return categoryMangaChapter(this); - } - - @override - @optionalTypeArgs - TResult? mapOrNull({ - TResult? Function(HelpTextQuickSearchResult value)? helpText, - TResult? Function(SourceQuickSearchResult value)? source, - TResult? Function(SourceSearchQuickSearchResult value)? sourceSearch, - TResult? Function(CategoryQuickSearchResult value)? category, - TResult? Function(CategoryMangaQuickSearchResult value)? categoryManga, - TResult? Function(CategoryMangaChapterQuickSearchResult value)? - categoryMangaChapter, - TResult? Function(MangaQuickSearchResult value)? manga, - TResult? Function(ChapterQuickSearchResult value)? chapter, - TResult? Function(GlobalSearchQuickSearchResult value)? globalSearch, - }) { - return categoryMangaChapter?.call(this); - } - - @override - @optionalTypeArgs - TResult maybeMap({ - TResult Function(HelpTextQuickSearchResult value)? helpText, - TResult Function(SourceQuickSearchResult value)? source, - TResult Function(SourceSearchQuickSearchResult value)? sourceSearch, - TResult Function(CategoryQuickSearchResult value)? category, - TResult Function(CategoryMangaQuickSearchResult value)? categoryManga, - TResult Function(CategoryMangaChapterQuickSearchResult value)? - categoryMangaChapter, - TResult Function(MangaQuickSearchResult value)? manga, - TResult Function(ChapterQuickSearchResult value)? chapter, - TResult Function(GlobalSearchQuickSearchResult value)? globalSearch, - required TResult orElse(), - }) { - if (categoryMangaChapter != null) { - return categoryMangaChapter(this); - } - return orElse(); - } -} - -abstract class CategoryMangaChapterQuickSearchResult - implements QuickSearchResult { - const factory CategoryMangaChapterQuickSearchResult( - {final Category? category, - required final Manga manga, - required final Chapter chapter}) = - _$CategoryMangaChapterQuickSearchResultImpl; - - Category? get category; - Manga get manga; - Chapter get chapter; - @JsonKey(ignore: true) - _$$CategoryMangaChapterQuickSearchResultImplCopyWith< - _$CategoryMangaChapterQuickSearchResultImpl> - get copyWith => throw _privateConstructorUsedError; -} - -/// @nodoc -abstract class _$$MangaQuickSearchResultImplCopyWith<$Res> { - factory _$$MangaQuickSearchResultImplCopyWith( - _$MangaQuickSearchResultImpl value, - $Res Function(_$MangaQuickSearchResultImpl) then) = - __$$MangaQuickSearchResultImplCopyWithImpl<$Res>; - @useResult - $Res call({Source? source, Manga manga}); - - $SourceCopyWith<$Res>? get source; - $MangaCopyWith<$Res> get manga; -} - -/// @nodoc -class __$$MangaQuickSearchResultImplCopyWithImpl<$Res> - extends _$QuickSearchResultCopyWithImpl<$Res, _$MangaQuickSearchResultImpl> - implements _$$MangaQuickSearchResultImplCopyWith<$Res> { - __$$MangaQuickSearchResultImplCopyWithImpl( - _$MangaQuickSearchResultImpl _value, - $Res Function(_$MangaQuickSearchResultImpl) _then) - : super(_value, _then); - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? source = freezed, - Object? manga = null, - }) { - return _then(_$MangaQuickSearchResultImpl( - source: freezed == source - ? _value.source - : source // ignore: cast_nullable_to_non_nullable - as Source?, - manga: null == manga - ? _value.manga - : manga // ignore: cast_nullable_to_non_nullable - as Manga, - )); - } - - @override - @pragma('vm:prefer-inline') - $SourceCopyWith<$Res>? get source { - if (_value.source == null) { - return null; - } - - return $SourceCopyWith<$Res>(_value.source!, (value) { - return _then(_value.copyWith(source: value)); - }); - } - - @override - @pragma('vm:prefer-inline') - $MangaCopyWith<$Res> get manga { - return $MangaCopyWith<$Res>(_value.manga, (value) { - return _then(_value.copyWith(manga: value)); - }); - } -} - -/// @nodoc - -class _$MangaQuickSearchResultImpl implements MangaQuickSearchResult { - const _$MangaQuickSearchResultImpl({this.source, required this.manga}); - - @override - final Source? source; - @override - final Manga manga; - - @override - String toString() { - return 'QuickSearchResult.manga(source: $source, manga: $manga)'; - } - - @override - bool operator ==(dynamic other) { - return identical(this, other) || - (other.runtimeType == runtimeType && - other is _$MangaQuickSearchResultImpl && - (identical(other.source, source) || other.source == source) && - (identical(other.manga, manga) || other.manga == manga)); - } - - @override - int get hashCode => Object.hash(runtimeType, source, manga); - - @JsonKey(ignore: true) - @override - @pragma('vm:prefer-inline') - _$$MangaQuickSearchResultImplCopyWith<_$MangaQuickSearchResultImpl> - get copyWith => __$$MangaQuickSearchResultImplCopyWithImpl< - _$MangaQuickSearchResultImpl>(this, _$identity); - - @override - @optionalTypeArgs - TResult when({ - required TResult Function(String prefill, String? pattern, String hintText) - helpText, - required TResult Function(Source source) source, - required TResult Function(Source source, String query) sourceSearch, - required TResult Function(Category category) category, - required TResult Function(Category category, Manga manga) categoryManga, - required TResult Function(Category? category, Manga manga, Chapter chapter) - categoryMangaChapter, - required TResult Function(Source? source, Manga manga) manga, - required TResult Function(Source? source, Manga manga, Chapter chapter) - chapter, - required TResult Function() globalSearch, - }) { - return manga(this.source, this.manga); - } - - @override - @optionalTypeArgs - TResult? whenOrNull({ - TResult? Function(String prefill, String? pattern, String hintText)? - helpText, - TResult? Function(Source source)? source, - TResult? Function(Source source, String query)? sourceSearch, - TResult? Function(Category category)? category, - TResult? Function(Category category, Manga manga)? categoryManga, - TResult? Function(Category? category, Manga manga, Chapter chapter)? - categoryMangaChapter, - TResult? Function(Source? source, Manga manga)? manga, - TResult? Function(Source? source, Manga manga, Chapter chapter)? chapter, - TResult? Function()? globalSearch, - }) { - return manga?.call(this.source, this.manga); - } - - @override - @optionalTypeArgs - TResult maybeWhen({ - TResult Function(String prefill, String? pattern, String hintText)? - helpText, - TResult Function(Source source)? source, - TResult Function(Source source, String query)? sourceSearch, - TResult Function(Category category)? category, - TResult Function(Category category, Manga manga)? categoryManga, - TResult Function(Category? category, Manga manga, Chapter chapter)? - categoryMangaChapter, - TResult Function(Source? source, Manga manga)? manga, - TResult Function(Source? source, Manga manga, Chapter chapter)? chapter, - TResult Function()? globalSearch, - required TResult orElse(), - }) { - if (manga != null) { - return manga(this.source, this.manga); - } - return orElse(); - } - - @override - @optionalTypeArgs - TResult map({ - required TResult Function(HelpTextQuickSearchResult value) helpText, - required TResult Function(SourceQuickSearchResult value) source, - required TResult Function(SourceSearchQuickSearchResult value) sourceSearch, - required TResult Function(CategoryQuickSearchResult value) category, - required TResult Function(CategoryMangaQuickSearchResult value) - categoryManga, - required TResult Function(CategoryMangaChapterQuickSearchResult value) - categoryMangaChapter, - required TResult Function(MangaQuickSearchResult value) manga, - required TResult Function(ChapterQuickSearchResult value) chapter, - required TResult Function(GlobalSearchQuickSearchResult value) globalSearch, - }) { - return manga(this); - } - - @override - @optionalTypeArgs - TResult? mapOrNull({ - TResult? Function(HelpTextQuickSearchResult value)? helpText, - TResult? Function(SourceQuickSearchResult value)? source, - TResult? Function(SourceSearchQuickSearchResult value)? sourceSearch, - TResult? Function(CategoryQuickSearchResult value)? category, - TResult? Function(CategoryMangaQuickSearchResult value)? categoryManga, - TResult? Function(CategoryMangaChapterQuickSearchResult value)? - categoryMangaChapter, - TResult? Function(MangaQuickSearchResult value)? manga, - TResult? Function(ChapterQuickSearchResult value)? chapter, - TResult? Function(GlobalSearchQuickSearchResult value)? globalSearch, - }) { - return manga?.call(this); - } - - @override - @optionalTypeArgs - TResult maybeMap({ - TResult Function(HelpTextQuickSearchResult value)? helpText, - TResult Function(SourceQuickSearchResult value)? source, - TResult Function(SourceSearchQuickSearchResult value)? sourceSearch, - TResult Function(CategoryQuickSearchResult value)? category, - TResult Function(CategoryMangaQuickSearchResult value)? categoryManga, - TResult Function(CategoryMangaChapterQuickSearchResult value)? - categoryMangaChapter, - TResult Function(MangaQuickSearchResult value)? manga, - TResult Function(ChapterQuickSearchResult value)? chapter, - TResult Function(GlobalSearchQuickSearchResult value)? globalSearch, - required TResult orElse(), - }) { - if (manga != null) { - return manga(this); - } - return orElse(); - } -} - -abstract class MangaQuickSearchResult implements QuickSearchResult { - const factory MangaQuickSearchResult( - {final Source? source, - required final Manga manga}) = _$MangaQuickSearchResultImpl; - - Source? get source; - Manga get manga; - @JsonKey(ignore: true) - _$$MangaQuickSearchResultImplCopyWith<_$MangaQuickSearchResultImpl> - get copyWith => throw _privateConstructorUsedError; -} - -/// @nodoc -abstract class _$$ChapterQuickSearchResultImplCopyWith<$Res> { - factory _$$ChapterQuickSearchResultImplCopyWith( - _$ChapterQuickSearchResultImpl value, - $Res Function(_$ChapterQuickSearchResultImpl) then) = - __$$ChapterQuickSearchResultImplCopyWithImpl<$Res>; - @useResult - $Res call({Source? source, Manga manga, Chapter chapter}); - - $SourceCopyWith<$Res>? get source; - $MangaCopyWith<$Res> get manga; - $ChapterCopyWith<$Res> get chapter; -} - -/// @nodoc -class __$$ChapterQuickSearchResultImplCopyWithImpl<$Res> - extends _$QuickSearchResultCopyWithImpl<$Res, - _$ChapterQuickSearchResultImpl> - implements _$$ChapterQuickSearchResultImplCopyWith<$Res> { - __$$ChapterQuickSearchResultImplCopyWithImpl( - _$ChapterQuickSearchResultImpl _value, - $Res Function(_$ChapterQuickSearchResultImpl) _then) - : super(_value, _then); - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? source = freezed, - Object? manga = null, - Object? chapter = null, - }) { - return _then(_$ChapterQuickSearchResultImpl( - source: freezed == source - ? _value.source - : source // ignore: cast_nullable_to_non_nullable - as Source?, - manga: null == manga - ? _value.manga - : manga // ignore: cast_nullable_to_non_nullable - as Manga, - chapter: null == chapter - ? _value.chapter - : chapter // ignore: cast_nullable_to_non_nullable - as Chapter, - )); - } - - @override - @pragma('vm:prefer-inline') - $SourceCopyWith<$Res>? get source { - if (_value.source == null) { - return null; - } - - return $SourceCopyWith<$Res>(_value.source!, (value) { - return _then(_value.copyWith(source: value)); - }); - } - - @override - @pragma('vm:prefer-inline') - $MangaCopyWith<$Res> get manga { - return $MangaCopyWith<$Res>(_value.manga, (value) { - return _then(_value.copyWith(manga: value)); - }); - } - - @override - @pragma('vm:prefer-inline') - $ChapterCopyWith<$Res> get chapter { - return $ChapterCopyWith<$Res>(_value.chapter, (value) { - return _then(_value.copyWith(chapter: value)); - }); - } -} - -/// @nodoc - -class _$ChapterQuickSearchResultImpl implements ChapterQuickSearchResult { - const _$ChapterQuickSearchResultImpl( - {this.source, required this.manga, required this.chapter}); - - @override - final Source? source; - @override - final Manga manga; - @override - final Chapter chapter; - - @override - String toString() { - return 'QuickSearchResult.chapter(source: $source, manga: $manga, chapter: $chapter)'; - } - - @override - bool operator ==(dynamic other) { - return identical(this, other) || - (other.runtimeType == runtimeType && - other is _$ChapterQuickSearchResultImpl && - (identical(other.source, source) || other.source == source) && - (identical(other.manga, manga) || other.manga == manga) && - (identical(other.chapter, chapter) || other.chapter == chapter)); - } - - @override - int get hashCode => Object.hash(runtimeType, source, manga, chapter); - - @JsonKey(ignore: true) - @override - @pragma('vm:prefer-inline') - _$$ChapterQuickSearchResultImplCopyWith<_$ChapterQuickSearchResultImpl> - get copyWith => __$$ChapterQuickSearchResultImplCopyWithImpl< - _$ChapterQuickSearchResultImpl>(this, _$identity); - - @override - @optionalTypeArgs - TResult when({ - required TResult Function(String prefill, String? pattern, String hintText) - helpText, - required TResult Function(Source source) source, - required TResult Function(Source source, String query) sourceSearch, - required TResult Function(Category category) category, - required TResult Function(Category category, Manga manga) categoryManga, - required TResult Function(Category? category, Manga manga, Chapter chapter) - categoryMangaChapter, - required TResult Function(Source? source, Manga manga) manga, - required TResult Function(Source? source, Manga manga, Chapter chapter) - chapter, - required TResult Function() globalSearch, - }) { - return chapter(this.source, this.manga, this.chapter); - } - - @override - @optionalTypeArgs - TResult? whenOrNull({ - TResult? Function(String prefill, String? pattern, String hintText)? - helpText, - TResult? Function(Source source)? source, - TResult? Function(Source source, String query)? sourceSearch, - TResult? Function(Category category)? category, - TResult? Function(Category category, Manga manga)? categoryManga, - TResult? Function(Category? category, Manga manga, Chapter chapter)? - categoryMangaChapter, - TResult? Function(Source? source, Manga manga)? manga, - TResult? Function(Source? source, Manga manga, Chapter chapter)? chapter, - TResult? Function()? globalSearch, - }) { - return chapter?.call(this.source, this.manga, this.chapter); - } - - @override - @optionalTypeArgs - TResult maybeWhen({ - TResult Function(String prefill, String? pattern, String hintText)? - helpText, - TResult Function(Source source)? source, - TResult Function(Source source, String query)? sourceSearch, - TResult Function(Category category)? category, - TResult Function(Category category, Manga manga)? categoryManga, - TResult Function(Category? category, Manga manga, Chapter chapter)? - categoryMangaChapter, - TResult Function(Source? source, Manga manga)? manga, - TResult Function(Source? source, Manga manga, Chapter chapter)? chapter, - TResult Function()? globalSearch, - required TResult orElse(), - }) { - if (chapter != null) { - return chapter(this.source, this.manga, this.chapter); - } - return orElse(); - } - - @override - @optionalTypeArgs - TResult map({ - required TResult Function(HelpTextQuickSearchResult value) helpText, - required TResult Function(SourceQuickSearchResult value) source, - required TResult Function(SourceSearchQuickSearchResult value) sourceSearch, - required TResult Function(CategoryQuickSearchResult value) category, - required TResult Function(CategoryMangaQuickSearchResult value) - categoryManga, - required TResult Function(CategoryMangaChapterQuickSearchResult value) - categoryMangaChapter, - required TResult Function(MangaQuickSearchResult value) manga, - required TResult Function(ChapterQuickSearchResult value) chapter, - required TResult Function(GlobalSearchQuickSearchResult value) globalSearch, - }) { - return chapter(this); - } - - @override - @optionalTypeArgs - TResult? mapOrNull({ - TResult? Function(HelpTextQuickSearchResult value)? helpText, - TResult? Function(SourceQuickSearchResult value)? source, - TResult? Function(SourceSearchQuickSearchResult value)? sourceSearch, - TResult? Function(CategoryQuickSearchResult value)? category, - TResult? Function(CategoryMangaQuickSearchResult value)? categoryManga, - TResult? Function(CategoryMangaChapterQuickSearchResult value)? - categoryMangaChapter, - TResult? Function(MangaQuickSearchResult value)? manga, - TResult? Function(ChapterQuickSearchResult value)? chapter, - TResult? Function(GlobalSearchQuickSearchResult value)? globalSearch, - }) { - return chapter?.call(this); - } - - @override - @optionalTypeArgs - TResult maybeMap({ - TResult Function(HelpTextQuickSearchResult value)? helpText, - TResult Function(SourceQuickSearchResult value)? source, - TResult Function(SourceSearchQuickSearchResult value)? sourceSearch, - TResult Function(CategoryQuickSearchResult value)? category, - TResult Function(CategoryMangaQuickSearchResult value)? categoryManga, - TResult Function(CategoryMangaChapterQuickSearchResult value)? - categoryMangaChapter, - TResult Function(MangaQuickSearchResult value)? manga, - TResult Function(ChapterQuickSearchResult value)? chapter, - TResult Function(GlobalSearchQuickSearchResult value)? globalSearch, - required TResult orElse(), - }) { - if (chapter != null) { - return chapter(this); - } - return orElse(); - } -} - -abstract class ChapterQuickSearchResult implements QuickSearchResult { - const factory ChapterQuickSearchResult( - {final Source? source, - required final Manga manga, - required final Chapter chapter}) = _$ChapterQuickSearchResultImpl; - - Source? get source; - Manga get manga; - Chapter get chapter; - @JsonKey(ignore: true) - _$$ChapterQuickSearchResultImplCopyWith<_$ChapterQuickSearchResultImpl> - get copyWith => throw _privateConstructorUsedError; -} - -/// @nodoc -abstract class _$$GlobalSearchQuickSearchResultImplCopyWith<$Res> { - factory _$$GlobalSearchQuickSearchResultImplCopyWith( - _$GlobalSearchQuickSearchResultImpl value, - $Res Function(_$GlobalSearchQuickSearchResultImpl) then) = - __$$GlobalSearchQuickSearchResultImplCopyWithImpl<$Res>; -} - -/// @nodoc -class __$$GlobalSearchQuickSearchResultImplCopyWithImpl<$Res> - extends _$QuickSearchResultCopyWithImpl<$Res, - _$GlobalSearchQuickSearchResultImpl> - implements _$$GlobalSearchQuickSearchResultImplCopyWith<$Res> { - __$$GlobalSearchQuickSearchResultImplCopyWithImpl( - _$GlobalSearchQuickSearchResultImpl _value, - $Res Function(_$GlobalSearchQuickSearchResultImpl) _then) - : super(_value, _then); -} - -/// @nodoc - -class _$GlobalSearchQuickSearchResultImpl - implements GlobalSearchQuickSearchResult { - const _$GlobalSearchQuickSearchResultImpl(); - - @override - String toString() { - return 'QuickSearchResult.globalSearch()'; - } - - @override - bool operator ==(dynamic other) { - return identical(this, other) || - (other.runtimeType == runtimeType && - other is _$GlobalSearchQuickSearchResultImpl); - } - - @override - int get hashCode => runtimeType.hashCode; - - @override - @optionalTypeArgs - TResult when({ - required TResult Function(String prefill, String? pattern, String hintText) - helpText, - required TResult Function(Source source) source, - required TResult Function(Source source, String query) sourceSearch, - required TResult Function(Category category) category, - required TResult Function(Category category, Manga manga) categoryManga, - required TResult Function(Category? category, Manga manga, Chapter chapter) - categoryMangaChapter, - required TResult Function(Source? source, Manga manga) manga, - required TResult Function(Source? source, Manga manga, Chapter chapter) - chapter, - required TResult Function() globalSearch, - }) { - return globalSearch(); - } - - @override - @optionalTypeArgs - TResult? whenOrNull({ - TResult? Function(String prefill, String? pattern, String hintText)? - helpText, - TResult? Function(Source source)? source, - TResult? Function(Source source, String query)? sourceSearch, - TResult? Function(Category category)? category, - TResult? Function(Category category, Manga manga)? categoryManga, - TResult? Function(Category? category, Manga manga, Chapter chapter)? - categoryMangaChapter, - TResult? Function(Source? source, Manga manga)? manga, - TResult? Function(Source? source, Manga manga, Chapter chapter)? chapter, - TResult? Function()? globalSearch, - }) { - return globalSearch?.call(); - } - - @override - @optionalTypeArgs - TResult maybeWhen({ - TResult Function(String prefill, String? pattern, String hintText)? - helpText, - TResult Function(Source source)? source, - TResult Function(Source source, String query)? sourceSearch, - TResult Function(Category category)? category, - TResult Function(Category category, Manga manga)? categoryManga, - TResult Function(Category? category, Manga manga, Chapter chapter)? - categoryMangaChapter, - TResult Function(Source? source, Manga manga)? manga, - TResult Function(Source? source, Manga manga, Chapter chapter)? chapter, - TResult Function()? globalSearch, - required TResult orElse(), - }) { - if (globalSearch != null) { - return globalSearch(); - } - return orElse(); - } - - @override - @optionalTypeArgs - TResult map({ - required TResult Function(HelpTextQuickSearchResult value) helpText, - required TResult Function(SourceQuickSearchResult value) source, - required TResult Function(SourceSearchQuickSearchResult value) sourceSearch, - required TResult Function(CategoryQuickSearchResult value) category, - required TResult Function(CategoryMangaQuickSearchResult value) - categoryManga, - required TResult Function(CategoryMangaChapterQuickSearchResult value) - categoryMangaChapter, - required TResult Function(MangaQuickSearchResult value) manga, - required TResult Function(ChapterQuickSearchResult value) chapter, - required TResult Function(GlobalSearchQuickSearchResult value) globalSearch, - }) { - return globalSearch(this); - } - - @override - @optionalTypeArgs - TResult? mapOrNull({ - TResult? Function(HelpTextQuickSearchResult value)? helpText, - TResult? Function(SourceQuickSearchResult value)? source, - TResult? Function(SourceSearchQuickSearchResult value)? sourceSearch, - TResult? Function(CategoryQuickSearchResult value)? category, - TResult? Function(CategoryMangaQuickSearchResult value)? categoryManga, - TResult? Function(CategoryMangaChapterQuickSearchResult value)? - categoryMangaChapter, - TResult? Function(MangaQuickSearchResult value)? manga, - TResult? Function(ChapterQuickSearchResult value)? chapter, - TResult? Function(GlobalSearchQuickSearchResult value)? globalSearch, - }) { - return globalSearch?.call(this); - } - - @override - @optionalTypeArgs - TResult maybeMap({ - TResult Function(HelpTextQuickSearchResult value)? helpText, - TResult Function(SourceQuickSearchResult value)? source, - TResult Function(SourceSearchQuickSearchResult value)? sourceSearch, - TResult Function(CategoryQuickSearchResult value)? category, - TResult Function(CategoryMangaQuickSearchResult value)? categoryManga, - TResult Function(CategoryMangaChapterQuickSearchResult value)? - categoryMangaChapter, - TResult Function(MangaQuickSearchResult value)? manga, - TResult Function(ChapterQuickSearchResult value)? chapter, - TResult Function(GlobalSearchQuickSearchResult value)? globalSearch, - required TResult orElse(), - }) { - if (globalSearch != null) { - return globalSearch(this); - } - return orElse(); - } -} - -abstract class GlobalSearchQuickSearchResult implements QuickSearchResult { - const factory GlobalSearchQuickSearchResult() = - _$GlobalSearchQuickSearchResultImpl; -} diff --git a/lib/src/features/quick_open/presentation/quick_search/controller/quick_search_controller.dart b/lib/src/features/quick_open/presentation/quick_search/controller/quick_search_controller.dart deleted file mode 100644 index 397b0f1d..00000000 --- a/lib/src/features/quick_open/presentation/quick_search/controller/quick_search_controller.dart +++ /dev/null @@ -1,141 +0,0 @@ -// Copyright (c) 2023 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:riverpod_annotation/riverpod_annotation.dart'; -import '../../../../../constants/quick_open_help_text.dart'; -import '../../../../../routes/router_config.dart'; -import '../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../../utils/mixin/state_provider_mixin.dart'; -import '../../../../browse_center/presentation/source/controller/source_controller.dart'; -import '../../../../library/domain/category/category_model.dart'; -import '../../../../library/presentation/category/controller/edit_category_controller.dart'; -import '../../../../library/presentation/library/controller/library_controller.dart'; -import '../../../../manga_book/domain/manga/manga_model.dart'; -import '../../../../manga_book/presentation/manga_details/controller/manga_details_controller.dart'; -import '../../../domain/quick_search_result.dart'; -part 'quick_search_controller.g.dart'; - -@riverpod -class QuickSearchQuery extends _$QuickSearchQuery - with StateProviderMixin { - @override - String? build() => null; -} - -@riverpod -List? processesQuickSearch( - ProcessesQuickSearchRef ref, { - required BuildContext context, -}) { - String query = ref.watch(quickSearchQueryProvider) ?? ""; - - if (query.startsWith('?')) return getQuickShowHintTextList(context); - - // Source Search - if (query.startsWith('@')) { - String sourceQuery = query.startsWith('@') ? query.substring(1) : query; - final queryList = sourceQuery.split('/'); - final sourceList = - ref.watch(sourceQueryProvider(query: queryList.firstOrNull)); - - if (queryList.length > 1) { - return sourceList - ?.map((e) => QuickSearchResult.sourceSearch( - source: e, - query: queryList[1], - )) - .toList(); - } else { - return sourceList - ?.map((e) => QuickSearchResult.source(source: e)) - .toList(); - } - } - // Chapter Search with Manga - List? chapterSearch(Manga manga, - {Category? category, String? query}) { - final chapterList = ref - .watch(mangaChapterListProvider(mangaId: manga.id!)) - .valueOrNull - ?.where( - (chapter) => chapter.query(query), - ) - .toList(); - return chapterList - ?.map( - (c) => QuickSearchResult.categoryMangaChapter( - category: category, - manga: manga, - chapter: c, - ), - ) - .toList(); - } - - // Library Category Search with Query - List? mangaSearch(String query) { - final categoryQuery = query.startsWith('#') ? query.substring(1) : query; - final categoryMangaQueryList = categoryQuery.split('/'); - - final categoryList = ref - .watch(categoryListQueryProvider(query: categoryMangaQueryList.first)); - - if (categoryMangaQueryList.length > 1) { - final firstCategory = categoryList.firstOrNull; - if (firstCategory?.id == null) return null; - - final mangaChapterQueryList = categoryMangaQueryList[1].split(':'); - final mangaList = ref - .watch(categoryMangaListProvider(firstCategory!.id!)) - .valueOrNull - ?.where((e) => e.query(mangaChapterQueryList.firstOrNull)); - - if (mangaChapterQueryList.length > 1) { - final firstManga = mangaList.firstOrNull; - if (firstManga != null && firstManga.id != null) { - return chapterSearch( - firstManga, - category: firstCategory, - query: mangaChapterQueryList[1], - ); - } - } else { - return mangaList - ?.map((e) => QuickSearchResult.categoryManga( - category: firstCategory, - manga: e, - )) - .toList(); - } - } - return categoryList - ?.map((e) => QuickSearchResult.category(category: e)) - .toList(); - } - - // Manga Search - if (query.startsWith('#') || - (context.location.contains(Routes.library)).ifNull()) { - return mangaSearch(query); - } - - // Manga Description context aware Search - if ((context.location.startsWith(Routes.mangaRoute)).ifNull()) { - final id = int.tryParse(context.location - .substring(Routes.mangaRoute.length) - .split('/') - .firstOrNull - ?.split('?') - .firstOrNull ?? - ''); - if (id != null) { - final manga = ref.watch(MangaWithIdProvider(mangaId: id)).valueOrNull; - if (manga != null) return chapterSearch(manga, query: query); - } - } - return mangaSearch(query); -} diff --git a/lib/src/features/quick_open/presentation/quick_search/controller/quick_search_controller.g.dart b/lib/src/features/quick_open/presentation/quick_search/controller/quick_search_controller.g.dart deleted file mode 100644 index ff6af366..00000000 --- a/lib/src/features/quick_open/presentation/quick_search/controller/quick_search_controller.g.dart +++ /dev/null @@ -1,179 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'quick_search_controller.dart'; - -// ************************************************************************** -// RiverpodGenerator -// ************************************************************************** - -String _$processesQuickSearchHash() => - r'93fc20d8122c2e7cb96f566d756f68d9436cc08c'; - -/// Copied from Dart SDK -class _SystemHash { - _SystemHash._(); - - static int combine(int hash, int value) { - // ignore: parameter_assignments - hash = 0x1fffffff & (hash + value); - // ignore: parameter_assignments - hash = 0x1fffffff & (hash + ((0x0007ffff & hash) << 10)); - return hash ^ (hash >> 6); - } - - static int finish(int hash) { - // ignore: parameter_assignments - hash = 0x1fffffff & (hash + ((0x03ffffff & hash) << 3)); - // ignore: parameter_assignments - hash = hash ^ (hash >> 11); - return 0x1fffffff & (hash + ((0x00003fff & hash) << 15)); - } -} - -/// See also [processesQuickSearch]. -@ProviderFor(processesQuickSearch) -const processesQuickSearchProvider = ProcessesQuickSearchFamily(); - -/// See also [processesQuickSearch]. -class ProcessesQuickSearchFamily extends Family?> { - /// See also [processesQuickSearch]. - const ProcessesQuickSearchFamily(); - - /// See also [processesQuickSearch]. - ProcessesQuickSearchProvider call({ - required BuildContext context, - }) { - return ProcessesQuickSearchProvider( - context: context, - ); - } - - @override - ProcessesQuickSearchProvider getProviderOverride( - covariant ProcessesQuickSearchProvider provider, - ) { - return call( - context: provider.context, - ); - } - - static const Iterable? _dependencies = null; - - @override - Iterable? get dependencies => _dependencies; - - static const Iterable? _allTransitiveDependencies = null; - - @override - Iterable? get allTransitiveDependencies => - _allTransitiveDependencies; - - @override - String? get name => r'processesQuickSearchProvider'; -} - -/// See also [processesQuickSearch]. -class ProcessesQuickSearchProvider - extends AutoDisposeProvider?> { - /// See also [processesQuickSearch]. - ProcessesQuickSearchProvider({ - required BuildContext context, - }) : this._internal( - (ref) => processesQuickSearch( - ref as ProcessesQuickSearchRef, - context: context, - ), - from: processesQuickSearchProvider, - name: r'processesQuickSearchProvider', - debugGetCreateSourceHash: - const bool.fromEnvironment('dart.vm.product') - ? null - : _$processesQuickSearchHash, - dependencies: ProcessesQuickSearchFamily._dependencies, - allTransitiveDependencies: - ProcessesQuickSearchFamily._allTransitiveDependencies, - context: context, - ); - - ProcessesQuickSearchProvider._internal( - super._createNotifier, { - required super.name, - required super.dependencies, - required super.allTransitiveDependencies, - required super.debugGetCreateSourceHash, - required super.from, - required this.context, - }) : super.internal(); - - final BuildContext context; - - @override - Override overrideWith( - List? Function(ProcessesQuickSearchRef provider) create, - ) { - return ProviderOverride( - origin: this, - override: ProcessesQuickSearchProvider._internal( - (ref) => create(ref as ProcessesQuickSearchRef), - from: from, - name: null, - dependencies: null, - allTransitiveDependencies: null, - debugGetCreateSourceHash: null, - context: context, - ), - ); - } - - @override - AutoDisposeProviderElement?> createElement() { - return _ProcessesQuickSearchProviderElement(this); - } - - @override - bool operator ==(Object other) { - return other is ProcessesQuickSearchProvider && other.context == context; - } - - @override - int get hashCode { - var hash = _SystemHash.combine(0, runtimeType.hashCode); - hash = _SystemHash.combine(hash, context.hashCode); - - return _SystemHash.finish(hash); - } -} - -mixin ProcessesQuickSearchRef - on AutoDisposeProviderRef?> { - /// The parameter `context` of this provider. - BuildContext get context; -} - -class _ProcessesQuickSearchProviderElement - extends AutoDisposeProviderElement?> - with ProcessesQuickSearchRef { - _ProcessesQuickSearchProviderElement(super.provider); - - @override - BuildContext get context => (origin as ProcessesQuickSearchProvider).context; -} - -String _$quickSearchQueryHash() => r'92868329e912423e36de604ccac3e6c1a96056e3'; - -/// See also [QuickSearchQuery]. -@ProviderFor(QuickSearchQuery) -final quickSearchQueryProvider = - AutoDisposeNotifierProvider.internal( - QuickSearchQuery.new, - name: r'quickSearchQueryProvider', - debugGetCreateSourceHash: const bool.fromEnvironment('dart.vm.product') - ? null - : _$quickSearchQueryHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef _$QuickSearchQuery = AutoDisposeNotifier; -// ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member diff --git a/lib/src/features/quick_open/presentation/quick_search/quick_search_screen.dart b/lib/src/features/quick_open/presentation/quick_search/quick_search_screen.dart deleted file mode 100644 index fd5fe1f9..00000000 --- a/lib/src/features/quick_open/presentation/quick_search/quick_search_screen.dart +++ /dev/null @@ -1,58 +0,0 @@ -// Copyright (c) 2023 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:flutter_hooks/flutter_hooks.dart'; - -import '../../../../utils/extensions/custom_extensions.dart'; -import 'widgets/quick_query_result.dart'; -import 'widgets/quick_search_bar.dart'; - -class QuickSearchScreen extends HookWidget { - const QuickSearchScreen({super.key, required this.afterClick}); - final VoidCallback afterClick; - @override - Widget build(BuildContext context) { - final controller = useTextEditingController(); - useEffect(() { - Future.microtask( - () => controller.selection = TextSelection( - baseOffset: 0, - extentOffset: controller.text.length, - ), - ); - - return null; - }, []); - return Padding( - padding: EdgeInsets.symmetric( - horizontal: context.widthScale(scale: .1), - vertical: context.heightScale(scale: .05), - ), - child: Align( - alignment: Alignment.topCenter, - child: FocusScope( - child: Column( - mainAxisSize: MainAxisSize.min, - children: [ - QuickSearchBar(controller: controller), - Flexible( - child: QuickQueryResult( - afterClick: afterClick, - controller: controller, - ), - ), - Material( - color: Colors.transparent, - child: Text(context.l10n!.quickSearchShowAllCommandTip), - ) - ], - ), - ), - ), - ); - } -} diff --git a/lib/src/features/quick_open/presentation/quick_search/widgets/category_query_list_tile.dart b/lib/src/features/quick_open/presentation/quick_search/widgets/category_query_list_tile.dart deleted file mode 100644 index e688e71e..00000000 --- a/lib/src/features/quick_open/presentation/quick_search/widgets/category_query_list_tile.dart +++ /dev/null @@ -1,105 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; - -import '../../../../../constants/app_sizes.dart'; -import '../../../../../routes/router_config.dart'; -import '../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../../widgets/server_image.dart'; -import '../../../../library/domain/category/category_model.dart'; -import '../../../../manga_book/domain/chapter/chapter_model.dart'; -import '../../../../manga_book/domain/manga/manga_model.dart'; - -class CategoryQueryListTile extends StatelessWidget { - const CategoryQueryListTile({ - super.key, - this.category, - this.manga, - this.chapter, - this.afterClick, - }) : assert(category == null ? manga != null && chapter != null : true), - assert(chapter != null ? manga != null : true); - final Category? category; - final Manga? manga; - final Chapter? chapter; - final VoidCallback? afterClick; - - @override - Widget build(BuildContext context) { - String title; - if ((manga?.title).isBlank) { - title = category?.name ?? ""; - } else if ((chapter?.name).isBlank) { - title = (manga?.title ?? ""); - } else { - title = chapter?.getDisplayName(context) ?? ""; - } - - return InkWell( - onTap: () { - if (chapter?.index != null) { - ReaderRoute( - mangaId: manga!.id!, - chapterIndex: chapter!.index!, - showReaderLayoutAnimation: true, - ).push(context); - } else if (manga?.id != null) { - MangaRoute(mangaId: manga!.id!, categoryId: category?.id) - .push(context); - } else { - LibraryRoute(initialCategoryOrder: category?.order).push(context); - } - afterClick?.call(); - }, - child: Row( - children: [ - Padding( - padding: const EdgeInsets.all(8.0), - child: ClipRRect( - borderRadius: KBorderRadius.r8.radius, - child: (manga?.thumbnailUrl).isBlank - ? Icon( - Icons.category_rounded, - color: context.theme.disabledColor, - ) - : ServerImage( - imageUrl: manga?.thumbnailUrl ?? "", - size: const Size.square(48), - ), - ), - ), - Expanded( - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - if ((manga?.title).isNotBlank) - Text( - (chapter?.name).isBlank - ? "${(category?.name ?? "")}/ " - : "${manga?.title ?? ""}/", - overflow: TextOverflow.ellipsis, - maxLines: 1, - style: Theme.of(context).textTheme.bodySmall?.copyWith( - letterSpacing: .1, - wordSpacing: .1, - color: context.theme.hintColor, - ), - ), - Text( - title, - overflow: TextOverflow.ellipsis, - maxLines: 1, - style: Theme.of(context).textTheme.titleMedium, - ), - ], - ), - ), - ], - ), - ); - } -} diff --git a/lib/src/features/quick_open/presentation/quick_search/widgets/quick_query_result.dart b/lib/src/features/quick_open/presentation/quick_search/widgets/quick_query_result.dart deleted file mode 100644 index 6fa94054..00000000 --- a/lib/src/features/quick_open/presentation/quick_search/widgets/quick_query_result.dart +++ /dev/null @@ -1,44 +0,0 @@ -// Copyright (c) 2023 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../../../../../utils/extensions/custom_extensions.dart'; -import '../controller/quick_search_controller.dart'; -import 'search_result_to_widget.dart'; - -class QuickQueryResult extends ConsumerWidget { - const QuickQueryResult({ - super.key, - required this.afterClick, - this.controller, - }); - final VoidCallback afterClick; - final TextEditingController? controller; - @override - Widget build(BuildContext context, WidgetRef ref) { - final results = ref.watch(processesQuickSearchProvider(context: context)); - if (results.isBlank) return const SizedBox.shrink(); - return Card( - clipBehavior: Clip.hardEdge, - child: SingleChildScrollView( - child: Column( - mainAxisSize: MainAxisSize.min, - children: results! - .map( - (e) => SearchResultToWidget( - result: e, - afterClick: afterClick, - controller: controller, - ), - ) - .toList(), - ), - ), - ); - } -} diff --git a/lib/src/features/quick_open/presentation/quick_search/widgets/quick_search_bar.dart b/lib/src/features/quick_open/presentation/quick_search/widgets/quick_search_bar.dart deleted file mode 100644 index 25180646..00000000 --- a/lib/src/features/quick_open/presentation/quick_search/widgets/quick_search_bar.dart +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright (c) 2023 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:flutter_hooks/flutter_hooks.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../../../../../constants/app_sizes.dart'; -import '../../../../../utils/extensions/custom_extensions.dart'; -import '../controller/quick_search_controller.dart'; - -class QuickSearchBar extends HookConsumerWidget { - const QuickSearchBar({ - super.key, - required this.controller, - }); - final TextEditingController controller; - @override - Widget build(BuildContext context, WidgetRef ref) { - final focus = useFocusNode(); - useEffect(() { - focus.requestFocus(); - return () => focus.unfocus(); - }, []); - useEffect(() { - updateOnChange() => - ref.read(quickSearchQueryProvider.notifier).update(controller.text); - controller.addListener(updateOnChange); - return () => controller.removeListener(updateOnChange); - }, [controller]); - return Card( - shape: RoundedRectangleBorder(borderRadius: KBorderRadius.r16.radius), - child: TextField( - controller: controller, - focusNode: focus, - autofocus: true, - onEditingComplete: () { - FocusScope.of(context).nextFocus(); - }, - decoration: InputDecoration( - isDense: true, - hintText: context.l10n!.search, - border: OutlineInputBorder(borderRadius: KBorderRadius.r16.radius), - ), - ), - ); - } -} diff --git a/lib/src/features/quick_open/presentation/quick_search/widgets/search_result_to_widget.dart b/lib/src/features/quick_open/presentation/quick_search/widgets/search_result_to_widget.dart deleted file mode 100644 index 17b1a067..00000000 --- a/lib/src/features/quick_open/presentation/quick_search/widgets/search_result_to_widget.dart +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright (c) 2023 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; - -import '../../../../../utils/extensions/custom_extensions.dart'; -import '../../../domain/quick_search_result.dart'; -import 'category_query_list_tile.dart'; -import 'source_query_list_tile.dart'; - -class SearchResultToWidget extends StatelessWidget { - const SearchResultToWidget({ - super.key, - required this.result, - required this.afterClick, - this.controller, - }); - final QuickSearchResult result; - final VoidCallback afterClick; - final TextEditingController? controller; - @override - Widget build(BuildContext context) { - return result.when( - // helpText: , - helpText: (prefill, pattern, hintText) => ListTile( - leading: Text(prefill), - title: Text( - hintText, - style: TextStyle(color: context.theme.hintColor), - ), - onTap: () => pattern.isNotBlank ? controller?.text = pattern! : null, - ), - source: (source) => SourceQueryListTile( - source: source, - afterClick: afterClick, - ), - sourceSearch: (source, query) => SourceQueryListTile( - source: source, - query: query, - afterClick: afterClick, - ), - category: (category) => CategoryQueryListTile( - category: category, - afterClick: afterClick, - ), - categoryManga: (category, manga) => CategoryQueryListTile( - category: category, - manga: manga, - afterClick: afterClick, - ), - categoryMangaChapter: (category, manga, chapter) => CategoryQueryListTile( - category: category, - manga: manga, - chapter: chapter, - afterClick: afterClick, - ), - manga: (source, manga) => const SizedBox.shrink(), - chapter: (source, manga, chapter) => const SizedBox.shrink(), - globalSearch: () => const SizedBox.shrink(), - ); - } -} diff --git a/lib/src/features/quick_open/presentation/quick_search/widgets/source_query_list_tile.dart b/lib/src/features/quick_open/presentation/quick_search/widgets/source_query_list_tile.dart deleted file mode 100644 index d7835bd1..00000000 --- a/lib/src/features/quick_open/presentation/quick_search/widgets/source_query_list_tile.dart +++ /dev/null @@ -1,78 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../../../../../constants/app_sizes.dart'; -import '../../../../../constants/enum.dart'; - -import '../../../../../routes/router_config.dart'; -import '../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../../widgets/server_image.dart'; -import '../../../../browse_center/domain/source/source_model.dart'; -import '../../../../browse_center/presentation/source/controller/source_controller.dart'; - -class SourceQueryListTile extends ConsumerWidget { - const SourceQueryListTile({ - super.key, - required this.source, - this.query, - this.afterClick, - }); - - final Source source; - final String? query; - final VoidCallback? afterClick; - @override - Widget build(BuildContext context, WidgetRef ref) { - return ListTile( - onTap: (() async { - if (source.id == null) return; - ref.read(sourceLastUsedProvider.notifier).update(source.id); - SourceMangaRoute( - sourceId: source.id!, - sourceType: query.isBlank ? SourceType.popular : SourceType.filter, - query: query, - ).push(context); - afterClick?.call(); - }), - leading: ClipRRect( - borderRadius: KBorderRadius.r8.radius, - child: ServerImage( - imageUrl: source.iconUrl ?? "", - size: const Size.square(48), - ), - ), - title: query.isNotBlank - ? RichText( - text: TextSpan( - children: [ - TextSpan( - text: "${source.displayName ?? source.name ?? ""}/ ", - style: Theme.of(context).textTheme.bodySmall?.copyWith( - letterSpacing: .1, - wordSpacing: .1, - color: context.theme.hintColor, - ), - ), - TextSpan( - text: query ?? "", - style: Theme.of(context).textTheme.titleMedium, - ), - ], - ), - ) - : Text(source.displayName ?? source.name ?? ""), - subtitle: (source.lang?.displayName).isNotBlank - ? Text( - source.lang?.displayName ?? "", - style: TextStyle(color: context.theme.hintColor), - ) - : null, - ); - } -} diff --git a/lib/src/features/quick_open/presentation/search_stack/search_stack_screen.dart b/lib/src/features/quick_open/presentation/search_stack/search_stack_screen.dart deleted file mode 100644 index e197540d..00000000 --- a/lib/src/features/quick_open/presentation/search_stack/search_stack_screen.dart +++ /dev/null @@ -1,96 +0,0 @@ -// Copyright (c) 2023 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'dart:io'; -import 'dart:ui'; - -import 'package:flutter/foundation.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter/services.dart'; -import 'package:flutter_hooks/flutter_hooks.dart'; - -import '../../../../utils/extensions/custom_extensions.dart'; -import '../quick_search/quick_search_screen.dart'; - -class ShowQuickOpenIntent extends Intent {} - -class HideQuickOpenIntent extends Intent {} - -class SearchStackScreen extends HookWidget { - const SearchStackScreen({super.key, this.child}); - final Widget? child; - @override - Widget build(BuildContext context) { - final visible = useState(false); - return QuickSearchShortcutWrapper( - visible: visible, - child: Stack( - children: [ - if (child != null) child!, - if (visible.value) - GestureDetector( - onTap: () => visible.value = (false), - child: BackdropFilter( - filter: ImageFilter.blur(sigmaX: 5, sigmaY: 5), - child: Container( - constraints: const BoxConstraints.expand(), - decoration: BoxDecoration( - color: context.theme.canvasColor.withOpacity(.1), - ), - child: QuickSearchScreen( - afterClick: () => visible.value = (false), - ), - ), - ), - ), - ], - ), - ); - } -} - -class QuickSearchShortcutWrapper extends StatelessWidget { - const QuickSearchShortcutWrapper({ - super.key, - required this.child, - required this.visible, - }); - final Widget child; - final ValueNotifier visible; - @override - Widget build(BuildContext context) { - return Shortcuts( - shortcuts: { - SingleActivator( - LogicalKeyboardKey.keyP, - control: kIsWeb || !Platform.isMacOS, - meta: kIsWeb ? false : Platform.isMacOS, - ): ShowQuickOpenIntent(), - const SingleActivator(LogicalKeyboardKey.escape): HideQuickOpenIntent(), - }, - child: Actions( - actions: { - ShowQuickOpenIntent: CallbackAction( - onInvoke: (ShowQuickOpenIntent intent) { - visible.value = (true); - return null; - }, - ), - HideQuickOpenIntent: CallbackAction( - onInvoke: (HideQuickOpenIntent intent) { - visible.value = (false); - return null; - }, - ), - }, - child: GestureDetector( - onLongPress: () => visible.value = (true), - child: child, - ), - ), - ); - } -} diff --git a/lib/src/features/settings/data/backup/backup_repository.dart b/lib/src/features/settings/data/backup/backup_repository.dart deleted file mode 100644 index b38ff63c..00000000 --- a/lib/src/features/settings/data/backup/backup_repository.dart +++ /dev/null @@ -1,60 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:dio/dio.dart'; - -import 'package:file_picker/file_picker.dart'; -import 'package:flutter/foundation.dart'; -import 'package:flutter/material.dart'; -import 'package:riverpod_annotation/riverpod_annotation.dart'; - -import '../../../../constants/endpoints.dart'; -import '../../../../global_providers/global_providers.dart'; - -import '../../../../utils/extensions/custom_extensions.dart'; -import '../../../../utils/storage/dio/dio_client.dart'; -import '../../domain/backup_missing/backup_missing.dart'; - -part 'backup_repository.g.dart'; - -class BackupRepository { - const BackupRepository(this.dioClient); - - final DioClient dioClient; - - Future restoreBackup( - BuildContext context, PlatformFile? file) async { - if ((file?.name).isBlank || - (kIsWeb && (file?.bytes).isBlank || - (!kIsWeb && (file?.path).isBlank))) { - throw context.l10n!.errorFilePick; - } - if (!(file!.name.endsWith('.proto.gz'))) { - throw context.l10n!.errorFilePickUnknownExtension(".proto.gz"); - } - return (await dioClient.post( - BackupUrl.import, - data: FormData.fromMap({ - 'backup.proto.gz': kIsWeb - ? MultipartFile.fromBytes( - file.bytes!, - filename: "backup.proto.gz", - ) - : MultipartFile.fromFileSync( - file.path!, - filename: "backup.proto.gz", - ) - }), - decoder: (e) => - e is Map ? BackupMissing.fromJson(e) : null, - )) - .data; - } -} - -@riverpod -BackupRepository backupRepository(BackupRepositoryRef ref) => - BackupRepository(ref.watch(dioClientKeyProvider)); diff --git a/lib/src/features/settings/data/backup/backup_repository.g.dart b/lib/src/features/settings/data/backup/backup_repository.g.dart deleted file mode 100644 index a5372112..00000000 --- a/lib/src/features/settings/data/backup/backup_repository.g.dart +++ /dev/null @@ -1,25 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'backup_repository.dart'; - -// ************************************************************************** -// RiverpodGenerator -// ************************************************************************** - -String _$backupRepositoryHash() => r'f23ad9ca70263d5a36808247d3868230cacaa3cd'; - -/// See also [backupRepository]. -@ProviderFor(backupRepository) -final backupRepositoryProvider = AutoDisposeProvider.internal( - backupRepository, - name: r'backupRepositoryProvider', - debugGetCreateSourceHash: const bool.fromEnvironment('dart.vm.product') - ? null - : _$backupRepositoryHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef BackupRepositoryRef = AutoDisposeProviderRef; -// ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member diff --git a/lib/src/features/settings/domain/backup_missing/backup_missing.dart b/lib/src/features/settings/domain/backup_missing/backup_missing.dart deleted file mode 100644 index c517098c..00000000 --- a/lib/src/features/settings/domain/backup_missing/backup_missing.dart +++ /dev/null @@ -1,38 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:freezed_annotation/freezed_annotation.dart'; - -import '../../../../utils/extensions/custom_extensions.dart'; - -part 'backup_missing.freezed.dart'; -part 'backup_missing.g.dart'; - -@freezed -class BackupMissing with _$BackupMissing { - BackupMissing._(); - factory BackupMissing({ - List? missingSources, - List? missingTrackers, - List? mangasMissingSources, - }) = _BackupMissing; - - BackupMissing get filter => BackupMissing( - missingSources: [...?missingSources] - ..removeWhere((element) => element.isBlank), - missingTrackers: [...?missingTrackers] - ..removeWhere((element) => element.isBlank), - mangasMissingSources: [...?mangasMissingSources] - ..removeWhere((element) => element.isBlank), - ); - bool get isEmpty => - missingSources.isBlank && - missingTrackers.isBlank && - mangasMissingSources.isBlank; - - factory BackupMissing.fromJson(Map json) => - _$BackupMissingFromJson(json); -} diff --git a/lib/src/features/settings/domain/backup_missing/backup_missing.freezed.dart b/lib/src/features/settings/domain/backup_missing/backup_missing.freezed.dart deleted file mode 100644 index 17178273..00000000 --- a/lib/src/features/settings/domain/backup_missing/backup_missing.freezed.dart +++ /dev/null @@ -1,231 +0,0 @@ -// coverage:ignore-file -// GENERATED CODE - DO NOT MODIFY BY HAND -// ignore_for_file: type=lint -// ignore_for_file: unused_element, deprecated_member_use, deprecated_member_use_from_same_package, use_function_type_syntax_for_parameters, unnecessary_const, avoid_init_to_null, invalid_override_different_default_values_named, prefer_expression_function_bodies, annotate_overrides, invalid_annotation_target, unnecessary_question_mark - -part of 'backup_missing.dart'; - -// ************************************************************************** -// FreezedGenerator -// ************************************************************************** - -T _$identity(T value) => value; - -final _privateConstructorUsedError = UnsupportedError( - 'It seems like you constructed your class using `MyClass._()`. This constructor is only meant to be used by freezed and you are not supposed to need it nor use it.\nPlease check the documentation here for more information: https://github.com/rrousselGit/freezed#custom-getters-and-methods'); - -BackupMissing _$BackupMissingFromJson(Map json) { - return _BackupMissing.fromJson(json); -} - -/// @nodoc -mixin _$BackupMissing { - List? get missingSources => throw _privateConstructorUsedError; - List? get missingTrackers => throw _privateConstructorUsedError; - List? get mangasMissingSources => throw _privateConstructorUsedError; - - Map toJson() => throw _privateConstructorUsedError; - @JsonKey(ignore: true) - $BackupMissingCopyWith get copyWith => - throw _privateConstructorUsedError; -} - -/// @nodoc -abstract class $BackupMissingCopyWith<$Res> { - factory $BackupMissingCopyWith( - BackupMissing value, $Res Function(BackupMissing) then) = - _$BackupMissingCopyWithImpl<$Res, BackupMissing>; - @useResult - $Res call( - {List? missingSources, - List? missingTrackers, - List? mangasMissingSources}); -} - -/// @nodoc -class _$BackupMissingCopyWithImpl<$Res, $Val extends BackupMissing> - implements $BackupMissingCopyWith<$Res> { - _$BackupMissingCopyWithImpl(this._value, this._then); - - // ignore: unused_field - final $Val _value; - // ignore: unused_field - final $Res Function($Val) _then; - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? missingSources = freezed, - Object? missingTrackers = freezed, - Object? mangasMissingSources = freezed, - }) { - return _then(_value.copyWith( - missingSources: freezed == missingSources - ? _value.missingSources - : missingSources // ignore: cast_nullable_to_non_nullable - as List?, - missingTrackers: freezed == missingTrackers - ? _value.missingTrackers - : missingTrackers // ignore: cast_nullable_to_non_nullable - as List?, - mangasMissingSources: freezed == mangasMissingSources - ? _value.mangasMissingSources - : mangasMissingSources // ignore: cast_nullable_to_non_nullable - as List?, - ) as $Val); - } -} - -/// @nodoc -abstract class _$$BackupMissingImplCopyWith<$Res> - implements $BackupMissingCopyWith<$Res> { - factory _$$BackupMissingImplCopyWith( - _$BackupMissingImpl value, $Res Function(_$BackupMissingImpl) then) = - __$$BackupMissingImplCopyWithImpl<$Res>; - @override - @useResult - $Res call( - {List? missingSources, - List? missingTrackers, - List? mangasMissingSources}); -} - -/// @nodoc -class __$$BackupMissingImplCopyWithImpl<$Res> - extends _$BackupMissingCopyWithImpl<$Res, _$BackupMissingImpl> - implements _$$BackupMissingImplCopyWith<$Res> { - __$$BackupMissingImplCopyWithImpl( - _$BackupMissingImpl _value, $Res Function(_$BackupMissingImpl) _then) - : super(_value, _then); - - @pragma('vm:prefer-inline') - @override - $Res call({ - Object? missingSources = freezed, - Object? missingTrackers = freezed, - Object? mangasMissingSources = freezed, - }) { - return _then(_$BackupMissingImpl( - missingSources: freezed == missingSources - ? _value._missingSources - : missingSources // ignore: cast_nullable_to_non_nullable - as List?, - missingTrackers: freezed == missingTrackers - ? _value._missingTrackers - : missingTrackers // ignore: cast_nullable_to_non_nullable - as List?, - mangasMissingSources: freezed == mangasMissingSources - ? _value._mangasMissingSources - : mangasMissingSources // ignore: cast_nullable_to_non_nullable - as List?, - )); - } -} - -/// @nodoc -@JsonSerializable() -class _$BackupMissingImpl extends _BackupMissing { - _$BackupMissingImpl( - {final List? missingSources, - final List? missingTrackers, - final List? mangasMissingSources}) - : _missingSources = missingSources, - _missingTrackers = missingTrackers, - _mangasMissingSources = mangasMissingSources, - super._(); - - factory _$BackupMissingImpl.fromJson(Map json) => - _$$BackupMissingImplFromJson(json); - - final List? _missingSources; - @override - List? get missingSources { - final value = _missingSources; - if (value == null) return null; - if (_missingSources is EqualUnmodifiableListView) return _missingSources; - // ignore: implicit_dynamic_type - return EqualUnmodifiableListView(value); - } - - final List? _missingTrackers; - @override - List? get missingTrackers { - final value = _missingTrackers; - if (value == null) return null; - if (_missingTrackers is EqualUnmodifiableListView) return _missingTrackers; - // ignore: implicit_dynamic_type - return EqualUnmodifiableListView(value); - } - - final List? _mangasMissingSources; - @override - List? get mangasMissingSources { - final value = _mangasMissingSources; - if (value == null) return null; - if (_mangasMissingSources is EqualUnmodifiableListView) - return _mangasMissingSources; - // ignore: implicit_dynamic_type - return EqualUnmodifiableListView(value); - } - - @override - String toString() { - return 'BackupMissing(missingSources: $missingSources, missingTrackers: $missingTrackers, mangasMissingSources: $mangasMissingSources)'; - } - - @override - bool operator ==(dynamic other) { - return identical(this, other) || - (other.runtimeType == runtimeType && - other is _$BackupMissingImpl && - const DeepCollectionEquality() - .equals(other._missingSources, _missingSources) && - const DeepCollectionEquality() - .equals(other._missingTrackers, _missingTrackers) && - const DeepCollectionEquality() - .equals(other._mangasMissingSources, _mangasMissingSources)); - } - - @JsonKey(ignore: true) - @override - int get hashCode => Object.hash( - runtimeType, - const DeepCollectionEquality().hash(_missingSources), - const DeepCollectionEquality().hash(_missingTrackers), - const DeepCollectionEquality().hash(_mangasMissingSources)); - - @JsonKey(ignore: true) - @override - @pragma('vm:prefer-inline') - _$$BackupMissingImplCopyWith<_$BackupMissingImpl> get copyWith => - __$$BackupMissingImplCopyWithImpl<_$BackupMissingImpl>(this, _$identity); - - @override - Map toJson() { - return _$$BackupMissingImplToJson( - this, - ); - } -} - -abstract class _BackupMissing extends BackupMissing { - factory _BackupMissing( - {final List? missingSources, - final List? missingTrackers, - final List? mangasMissingSources}) = _$BackupMissingImpl; - _BackupMissing._() : super._(); - - factory _BackupMissing.fromJson(Map json) = - _$BackupMissingImpl.fromJson; - - @override - List? get missingSources; - @override - List? get missingTrackers; - @override - List? get mangasMissingSources; - @override - @JsonKey(ignore: true) - _$$BackupMissingImplCopyWith<_$BackupMissingImpl> get copyWith => - throw _privateConstructorUsedError; -} diff --git a/lib/src/features/settings/domain/backup_missing/backup_missing.g.dart b/lib/src/features/settings/domain/backup_missing/backup_missing.g.dart deleted file mode 100644 index f42017a6..00000000 --- a/lib/src/features/settings/domain/backup_missing/backup_missing.g.dart +++ /dev/null @@ -1,27 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'backup_missing.dart'; - -// ************************************************************************** -// JsonSerializableGenerator -// ************************************************************************** - -_$BackupMissingImpl _$$BackupMissingImplFromJson(Map json) => - _$BackupMissingImpl( - missingSources: (json['missingSources'] as List?) - ?.map((e) => e as String) - .toList(), - missingTrackers: (json['missingTrackers'] as List?) - ?.map((e) => e as String) - .toList(), - mangasMissingSources: (json['mangasMissingSources'] as List?) - ?.map((e) => e as String) - .toList(), - ); - -Map _$$BackupMissingImplToJson(_$BackupMissingImpl instance) => - { - 'missingSources': instance.missingSources, - 'missingTrackers': instance.missingTrackers, - 'mangasMissingSources': instance.mangasMissingSources, - }; diff --git a/lib/src/features/settings/presentation/appearance/appearance_screen.dart b/lib/src/features/settings/presentation/appearance/appearance_screen.dart deleted file mode 100644 index ad8465bb..00000000 --- a/lib/src/features/settings/presentation/appearance/appearance_screen.dart +++ /dev/null @@ -1,28 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; - -import '../../../../utils/extensions/custom_extensions.dart'; -import '../../widgets/theme_mode_tile/theme_mode_tile.dart'; -import 'widgets/grid_cover_min_width.dart'; - -class AppearanceScreen extends StatelessWidget { - const AppearanceScreen({super.key}); - - @override - Widget build(BuildContext context) { - return Scaffold( - appBar: AppBar(title: Text(context.l10n!.appearance)), - body: ListView( - children: const [ - AppThemeTile(), - GridCoverMinWidth(), - ], - ), - ); - } -} diff --git a/lib/src/features/settings/presentation/appearance/widgets/grid_cover_min_width.dart b/lib/src/features/settings/presentation/appearance/widgets/grid_cover_min_width.dart deleted file mode 100644 index 5851a173..00000000 --- a/lib/src/features/settings/presentation/appearance/widgets/grid_cover_min_width.dart +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright (c) 2023 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; -import 'package:riverpod_annotation/riverpod_annotation.dart'; - -import '../../../../../constants/db_keys.dart'; -import '../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../../utils/mixin/shared_preferences_client_mixin.dart'; -import '../../../widgets/slider_setting_tile/slider_setting_tile.dart'; - -part 'grid_cover_min_width.g.dart'; - -@riverpod -class GridMinWidth extends _$GridMinWidth - with SharedPreferenceClientMixin { - @override - double? build() => initialize( - ref, - key: DBKeys.gridMangaCoverWidth.name, - initial: DBKeys.gridMangaCoverWidth.initial, - ); -} - -class GridCoverMinWidth extends ConsumerWidget { - const GridCoverMinWidth({super.key}); - - @override - Widget build(BuildContext context, WidgetRef ref) { - return SliderSettingTile( - defaultValue: DBKeys.gridMangaCoverWidth.initial, - getSliderLabel: (value) => value.round().toString(), - title: context.l10n!.mangaGridSize, - icon: Icons.grid_view_rounded, - value: - ref.watch(gridMinWidthProvider) ?? DBKeys.gridMangaCoverWidth.initial, - onChanged: (val) => - ref.read(gridMinWidthProvider.notifier).update(val.roundToDouble()), - min: 100, - max: 999, - ); - } -} diff --git a/lib/src/features/settings/presentation/appearance/widgets/grid_cover_min_width.g.dart b/lib/src/features/settings/presentation/appearance/widgets/grid_cover_min_width.g.dart deleted file mode 100644 index 422083c4..00000000 --- a/lib/src/features/settings/presentation/appearance/widgets/grid_cover_min_width.g.dart +++ /dev/null @@ -1,25 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'grid_cover_min_width.dart'; - -// ************************************************************************** -// RiverpodGenerator -// ************************************************************************** - -String _$gridMinWidthHash() => r'8cd39a48857bc29905fc40604feaa224976d287c'; - -/// See also [GridMinWidth]. -@ProviderFor(GridMinWidth) -final gridMinWidthProvider = - AutoDisposeNotifierProvider.internal( - GridMinWidth.new, - name: r'gridMinWidthProvider', - debugGetCreateSourceHash: - const bool.fromEnvironment('dart.vm.product') ? null : _$gridMinWidthHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef _$GridMinWidth = AutoDisposeNotifier; -// ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member diff --git a/lib/src/features/settings/presentation/backup/backup_screen.dart b/lib/src/features/settings/presentation/backup/backup_screen.dart deleted file mode 100644 index 31bd17a5..00000000 --- a/lib/src/features/settings/presentation/backup/backup_screen.dart +++ /dev/null @@ -1,95 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:file_picker/file_picker.dart'; -import 'package:flutter/material.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../../../../constants/endpoints.dart'; - -import '../../../../utils/extensions/custom_extensions.dart'; -import '../../../../utils/launch_url_in_web.dart'; -import '../../../../utils/misc/toast/toast.dart'; -import '../../data/backup/backup_repository.dart'; -import '../../widgets/server_port_tile/server_port_tile.dart'; -import '../../widgets/server_url_tile/server_url_tile.dart'; -import 'widgets/backup_missing_dialog.dart'; - -class BackupScreen extends ConsumerWidget { - const BackupScreen({super.key}); - - void backupFilePicker(WidgetRef ref, BuildContext context) async { - Toast getToast(context) => ref.read(toastProvider(context)); - final file = await FilePicker.platform.pickFiles( - type: FileType.custom, - allowedExtensions: ['gz'], - ); - if ((file?.files).isNotBlank) { - if (context.mounted) { - getToast(context).show(context.l10n!.restoring); - } - } - final result = await AsyncValue.guard(() => ref - .read(backupRepositoryProvider) - .restoreBackup(context, file?.files.single)); - result.whenOrNull( - error: (error, stackTrace) { - if (context.mounted) { - result.showToastOnError(getToast(context)); - } - }, - data: (data) { - final backupMissing = data?.filter; - if (context.mounted) { - getToast(context).instantShow(context.l10n!.restored); - } - if (backupMissing != null && !backupMissing.isEmpty) { - showDialog( - context: context, - builder: (context) => BackupMissingDialog( - backupMissing: backupMissing, - ), - ); - } - }, - ); - } - - @override - Widget build(BuildContext context, WidgetRef ref) { - return Scaffold( - appBar: AppBar(title: Text(context.l10n!.backup)), - body: ListView( - children: [ - ListTile( - title: Text(context.l10n!.createBackupTitle), - subtitle: Text(context.l10n!.createBackupDescription), - leading: const Icon(Icons.backup_rounded), - onTap: () async { - final toast = ref.read(toastProvider(context)); - launchUrlInWeb( - context, - Endpoints.baseApi( - baseUrl: ref.read(serverUrlProvider), - port: ref.read(serverPortProvider), - addPort: ref.watch(serverPortToggleProvider).ifNull(), - ) + - BackupUrl.export, - toast, - ); - }, - ), - ListTile( - title: Text(context.l10n!.restoreBackupTitle), - subtitle: Text(context.l10n!.restoreBackupDescription), - leading: const Icon(Icons.restore_rounded), - onTap: () => backupFilePicker(ref, context), - ), - ], - ), - ); - } -} diff --git a/lib/src/features/settings/presentation/backup/widgets/backup_missing_dialog.dart b/lib/src/features/settings/presentation/backup/widgets/backup_missing_dialog.dart deleted file mode 100644 index 69461272..00000000 --- a/lib/src/features/settings/presentation/backup/widgets/backup_missing_dialog.dart +++ /dev/null @@ -1,68 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; - -import '../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../../widgets/pop_button.dart'; -import '../../../domain/backup_missing/backup_missing.dart'; - -class BackupMissingDialog extends StatelessWidget { - const BackupMissingDialog({ - super.key, - required this.backupMissing, - }); - final BackupMissing backupMissing; - @override - Widget build(BuildContext context) { - return AlertDialog( - content: SingleChildScrollView( - child: Column( - mainAxisSize: MainAxisSize.min, - children: [ - if (backupMissing.missingSources.isNotBlank) ...[ - Text( - context.l10n!.missingExtension, - style: context.textTheme.titleMedium, - ), - ...?backupMissing.missingSources?.map( - (e) => ListTile( - leading: const Icon(Icons.extension_rounded), - title: Text(e), - ), - ), - ], - if (backupMissing.missingTrackers.isNotBlank) ...[ - Text( - context.l10n!.missingTrackers, - style: context.textTheme.titleMedium, - ), - ...?backupMissing.missingTrackers?.map( - (e) => ListTile( - leading: const Icon(Icons.sync_rounded), - title: Text(e), - ), - ), - ], - if (backupMissing.mangasMissingSources.isNotBlank) ...[ - Text( - context.l10n!.mangaMissingSources, - style: context.textTheme.titleMedium, - ), - ...?backupMissing.mangasMissingSources?.map( - (e) => ListTile( - leading: const Icon(Icons.explore), - title: Text(e), - ), - ), - ] - ], - ), - ), - actions: [PopButton(popText: context.l10n!.close)], - ); - } -} diff --git a/lib/src/features/settings/presentation/browse/browse_settings_screen.dart b/lib/src/features/settings/presentation/browse/browse_settings_screen.dart deleted file mode 100644 index b5550d92..00000000 --- a/lib/src/features/settings/presentation/browse/browse_settings_screen.dart +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; - -import '../../../../utils/extensions/custom_extensions.dart'; -import 'widgets/show_nsfw_switch/show_nsfw_switch.dart'; - -class BrowseSettingsScreen extends StatelessWidget { - const BrowseSettingsScreen({super.key}); - - @override - Widget build(BuildContext context) { - return Scaffold( - appBar: AppBar(title: Text(context.l10n!.browse)), - body: ListView( - children: [ - const ShowNSFWTile(), - ListTile( - subtitle: Text(context.l10n!.nsfwInfo), - leading: const Icon(Icons.info_rounded), - dense: true, - ), - const Divider(), - ], - ), - ); - } -} diff --git a/lib/src/features/settings/presentation/browse/widgets/show_nsfw_switch/show_nsfw_switch.dart b/lib/src/features/settings/presentation/browse/widgets/show_nsfw_switch/show_nsfw_switch.dart deleted file mode 100644 index 79400a29..00000000 --- a/lib/src/features/settings/presentation/browse/widgets/show_nsfw_switch/show_nsfw_switch.dart +++ /dev/null @@ -1,42 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; -import 'package:riverpod_annotation/riverpod_annotation.dart'; - -import '../../../../../../constants/db_keys.dart'; - -import '../../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../../../utils/mixin/shared_preferences_client_mixin.dart'; - -part 'show_nsfw_switch.g.dart'; - -@riverpod -class ShowNSFW extends _$ShowNSFW with SharedPreferenceClientMixin { - @override - bool? build() => initialize( - ref, - key: DBKeys.showNSFW.name, - initial: DBKeys.showNSFW.initial, - ); -} - -class ShowNSFWTile extends ConsumerWidget { - const ShowNSFWTile({super.key}); - @override - Widget build(BuildContext context, WidgetRef ref) { - return SwitchListTile( - controlAffinity: ListTileControlAffinity.trailing, - secondary: const Icon(Icons.eighteen_up_rating_rounded), - title: Text( - context.l10n!.nsfw, - ), - onChanged: ref.read(showNSFWProvider.notifier).update, - value: ref.watch(showNSFWProvider).ifNull(), - ); - } -} diff --git a/lib/src/features/settings/presentation/browse/widgets/show_nsfw_switch/show_nsfw_switch.g.dart b/lib/src/features/settings/presentation/browse/widgets/show_nsfw_switch/show_nsfw_switch.g.dart deleted file mode 100644 index 84b51e0e..00000000 --- a/lib/src/features/settings/presentation/browse/widgets/show_nsfw_switch/show_nsfw_switch.g.dart +++ /dev/null @@ -1,24 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'show_nsfw_switch.dart'; - -// ************************************************************************** -// RiverpodGenerator -// ************************************************************************** - -String _$showNSFWHash() => r'a88757282270337527e28828b83e3a36189a424c'; - -/// See also [ShowNSFW]. -@ProviderFor(ShowNSFW) -final showNSFWProvider = AutoDisposeNotifierProvider.internal( - ShowNSFW.new, - name: r'showNSFWProvider', - debugGetCreateSourceHash: - const bool.fromEnvironment('dart.vm.product') ? null : _$showNSFWHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef _$ShowNSFW = AutoDisposeNotifier; -// ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member diff --git a/lib/src/features/settings/presentation/general/general_screen.dart b/lib/src/features/settings/presentation/general/general_screen.dart deleted file mode 100644 index 69c0318b..00000000 --- a/lib/src/features/settings/presentation/general/general_screen.dart +++ /dev/null @@ -1,64 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:flutter_cache_manager/flutter_cache_manager.dart'; -import 'package:flutter_gen/gen_l10n/app_localizations.dart'; -import 'package:go_router/go_router.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../../../../constants/language_list.dart'; -import '../../../../global_providers/global_providers.dart'; -import '../../../../utils/extensions/custom_extensions.dart'; -import '../../../../utils/misc/toast/toast.dart'; -import '../../../../widgets/radio_list_popup.dart'; - -class GeneralScreen extends ConsumerWidget { - const GeneralScreen({super.key}); - - @override - Widget build(BuildContext context, WidgetRef ref) { - return Scaffold( - appBar: AppBar(title: Text(context.l10n!.general)), - body: ListView( - children: [ - ListTile( - leading: const Icon(Icons.translate_rounded), - title: Text(context.l10n!.appLanguage), - subtitle: Text(getLanguageNameFormLocale(context.currentLocale)), - onTap: () => showDialog( - context: context, - builder: (context) => RadioListPopup( - title: context.l10n!.appLanguage, - optionList: AppLocalizations.supportedLocales, - value: context.currentLocale, - onChange: (locale) { - ref.read(l10nProvider.notifier).update(locale); - context.pop(); - }, - getOptionTitle: getLanguageNameFormLocale, - getOptionSubtitle: getLanguageNameInEnFormLocale, - ), - ), - ), - ListTile( - leading: const Icon(Icons.cleaning_services_rounded), - title: Text(context.l10n!.clearCache), - onTap: () async { - await ref.watch(hiveCacheStoreProvider).clean(); - DefaultCacheManager().emptyCache(); - if (context.mounted) { - ref - .read(toastProvider(context)) - .show(context.l10n!.cacheCleared); - } - }, - ), - ], - ), - ); - } -} diff --git a/lib/src/features/settings/presentation/library/library_settings_screen.dart b/lib/src/features/settings/presentation/library/library_settings_screen.dart deleted file mode 100644 index 047b32c0..00000000 --- a/lib/src/features/settings/presentation/library/library_settings_screen.dart +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; - -import '../../../../routes/router_config.dart'; -import '../../../../utils/extensions/custom_extensions.dart'; - -class LibrarySettingsScreen extends StatelessWidget { - const LibrarySettingsScreen({super.key}); - - @override - Widget build(BuildContext context) { - return Scaffold( - appBar: AppBar( - title: Text(context.l10n!.library), - ), - body: ListView( - children: [ - ListTile( - title: Text(context.l10n!.categories), - leading: const Icon(Icons.label_rounded), - onTap: () => const EditCategoriesRoute().push(context), - ), - ], - ), - ); - } -} diff --git a/lib/src/features/settings/presentation/more/more_screen.dart b/lib/src/features/settings/presentation/more/more_screen.dart deleted file mode 100644 index e857e654..00000000 --- a/lib/src/features/settings/presentation/more/more_screen.dart +++ /dev/null @@ -1,72 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../../../../constants/gen/assets.gen.dart'; -import '../../../../constants/urls.dart'; - -import '../../../../routes/router_config.dart'; -import '../../../../utils/extensions/custom_extensions.dart'; -import '../../../../utils/launch_url_in_web.dart'; -import '../../../../utils/misc/toast/toast.dart'; -import '../../widgets/server_url_tile/server_url_tile.dart'; -import '../../widgets/theme_mode_tile/theme_mode_tile.dart'; - -class MoreScreen extends ConsumerWidget { - const MoreScreen({super.key}); - - @override - Widget build(BuildContext context, WidgetRef ref) { - return Scaffold( - appBar: AppBar( - title: Text(context.l10n!.more), - ), - body: ListView( - children: [ - ImageIcon( - AssetImage(Assets.icons.darkIcon.path), - size: context.height * .2, - ), - const Divider(), - const ServerUrlTile(), - ListTile( - title: Text(context.l10n!.categories), - leading: const Icon(Icons.label_rounded), - onTap: () => const EditCategoriesRoute().push(context), - ), - const AppThemeTile(), - ListTile( - title: Text(context.l10n!.backup), - leading: const Icon(Icons.settings_backup_restore_rounded), - onTap: () => const BackupRoute().push(context), - ), - const Divider(), - ListTile( - title: Text(context.l10n!.settings), - leading: const Icon(Icons.settings_rounded), - onTap: () => const SettingsRoute().push(context), - ), - ListTile( - title: Text(context.l10n!.about), - leading: const Icon(Icons.info_rounded), - onTap: () => const AboutRoute().push(context), - ), - ListTile( - title: Text(context.l10n!.help), - leading: const Icon(Icons.help_rounded), - onTap: () => launchUrlInWeb( - context, - AppUrls.tachideskHelp.url, - ref.read(toastProvider(context)), - ), - ), - ], - ), - ); - } -} diff --git a/lib/src/features/settings/presentation/reader/reader_settings_screen.dart b/lib/src/features/settings/presentation/reader/reader_settings_screen.dart deleted file mode 100644 index efef24af..00000000 --- a/lib/src/features/settings/presentation/reader/reader_settings_screen.dart +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'dart:io'; - -import 'package:flutter/foundation.dart'; -import 'package:flutter/material.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../../../../utils/extensions/custom_extensions.dart'; -import 'widgets/reader_initial_overlay_tile/reader_initial_overlay_tile.dart'; -import 'widgets/reader_invert_tap_tile/reader_invert_tap_tile.dart'; -import 'widgets/reader_magnifier_size_slider/reader_magnifier_size_slider.dart'; -import 'widgets/reader_mode_tile/reader_mode_tile.dart'; -import 'widgets/reader_navigation_layout_tile/reader_navigation_layout_tile.dart'; -import 'widgets/reader_padding_slider/reader_padding_slider.dart'; -import 'widgets/reader_scroll_animation_tile/reader_scroll_animation_tile.dart'; -import 'widgets/reader_swipe_toggle_tile/reader_swipe_chapter_toggle_tile.dart'; -import 'widgets/reader_volume_tap_invert_tile/reader_volume_tap_invert_tile.dart'; -import 'widgets/reader_volume_tap_tile/reader_volume_tap_tile.dart'; - -class ReaderSettingsScreen extends ConsumerWidget { - const ReaderSettingsScreen({super.key}); - - @override - Widget build(BuildContext context, WidgetRef ref) { - final isVolumeTapEnabled = ref.watch(volumeTapProvider).ifNull(); - return Scaffold( - appBar: AppBar(title: Text(context.l10n!.reader)), - body: ListView( - children: [ - const ReaderModeTile(), - const ReaderNavigationLayoutTile(), - const ReaderInvertTapTile(), - const ReaderInitialOverlayTile(), - const SwipeChapterToggleTile(), - const ReaderScrollAnimationTile(), - const ReaderPaddingSlider(), - const ReaderMagnifierSizeSlider(), - if (!kIsWeb && Platform.isAndroid) ...[ - const ReaderVolumeTapTile(), - if (isVolumeTapEnabled) const ReaderVolumeTapInvertTile(), - ] - ], - ), - ); - } -} diff --git a/lib/src/features/settings/presentation/reader/widgets/reader_initial_overlay_tile/reader_initial_overlay_tile.dart b/lib/src/features/settings/presentation/reader/widgets/reader_initial_overlay_tile/reader_initial_overlay_tile.dart deleted file mode 100644 index 022f6132..00000000 --- a/lib/src/features/settings/presentation/reader/widgets/reader_initial_overlay_tile/reader_initial_overlay_tile.dart +++ /dev/null @@ -1,42 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; -import 'package:riverpod_annotation/riverpod_annotation.dart'; - -import '../../../../../../constants/db_keys.dart'; - -import '../../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../../../utils/mixin/shared_preferences_client_mixin.dart'; - -part 'reader_initial_overlay_tile.g.dart'; - -@riverpod -class ReaderInitialOverlay extends _$ReaderInitialOverlay - with SharedPreferenceClientMixin { - @override - bool? build() => initialize( - ref, - key: DBKeys.readerOverlay.name, - initial: DBKeys.readerOverlay.initial, - ); -} - -class ReaderInitialOverlayTile extends HookConsumerWidget { - const ReaderInitialOverlayTile({super.key}); - @override - Widget build(BuildContext context, WidgetRef ref) { - return SwitchListTile( - controlAffinity: ListTileControlAffinity.trailing, - secondary: const Icon(Icons.layers_outlined), - title: Text(context.l10n!.readerOverlay), - subtitle: Text(context.l10n!.readerOverlaySubtitle), - onChanged: ref.read(readerInitialOverlayProvider.notifier).update, - value: ref.watch(readerInitialOverlayProvider).ifNull(), - ); - } -} diff --git a/lib/src/features/settings/presentation/reader/widgets/reader_initial_overlay_tile/reader_initial_overlay_tile.g.dart b/lib/src/features/settings/presentation/reader/widgets/reader_initial_overlay_tile/reader_initial_overlay_tile.g.dart deleted file mode 100644 index 81454654..00000000 --- a/lib/src/features/settings/presentation/reader/widgets/reader_initial_overlay_tile/reader_initial_overlay_tile.g.dart +++ /dev/null @@ -1,27 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'reader_initial_overlay_tile.dart'; - -// ************************************************************************** -// RiverpodGenerator -// ************************************************************************** - -String _$readerInitialOverlayHash() => - r'0cdf556eafc512165da2ba3b955544a187f03aad'; - -/// See also [ReaderInitialOverlay]. -@ProviderFor(ReaderInitialOverlay) -final readerInitialOverlayProvider = - AutoDisposeNotifierProvider.internal( - ReaderInitialOverlay.new, - name: r'readerInitialOverlayProvider', - debugGetCreateSourceHash: const bool.fromEnvironment('dart.vm.product') - ? null - : _$readerInitialOverlayHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef _$ReaderInitialOverlay = AutoDisposeNotifier; -// ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member diff --git a/lib/src/features/settings/presentation/reader/widgets/reader_invert_tap_tile/reader_invert_tap_tile.dart b/lib/src/features/settings/presentation/reader/widgets/reader_invert_tap_tile/reader_invert_tap_tile.dart deleted file mode 100644 index 94596c8b..00000000 --- a/lib/src/features/settings/presentation/reader/widgets/reader_invert_tap_tile/reader_invert_tap_tile.dart +++ /dev/null @@ -1,40 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; -import 'package:riverpod_annotation/riverpod_annotation.dart'; - -import '../../../../../../constants/db_keys.dart'; - -import '../../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../../../utils/mixin/shared_preferences_client_mixin.dart'; - -part 'reader_invert_tap_tile.g.dart'; - -@riverpod -class InvertTap extends _$InvertTap with SharedPreferenceClientMixin { - @override - bool? build() => initialize( - ref, - key: DBKeys.invertTap.name, - initial: DBKeys.invertTap.initial, - ); -} - -class ReaderInvertTapTile extends HookConsumerWidget { - const ReaderInvertTapTile({super.key}); - @override - Widget build(BuildContext context, WidgetRef ref) { - return SwitchListTile( - controlAffinity: ListTileControlAffinity.trailing, - secondary: const Icon(Icons.switch_left_rounded), - title: Text(context.l10n!.readerNavigationLayoutInvert), - onChanged: ref.read(invertTapProvider.notifier).update, - value: ref.watch(invertTapProvider).ifNull(), - ); - } -} diff --git a/lib/src/features/settings/presentation/reader/widgets/reader_invert_tap_tile/reader_invert_tap_tile.g.dart b/lib/src/features/settings/presentation/reader/widgets/reader_invert_tap_tile/reader_invert_tap_tile.g.dart deleted file mode 100644 index 0b46aa58..00000000 --- a/lib/src/features/settings/presentation/reader/widgets/reader_invert_tap_tile/reader_invert_tap_tile.g.dart +++ /dev/null @@ -1,25 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'reader_invert_tap_tile.dart'; - -// ************************************************************************** -// RiverpodGenerator -// ************************************************************************** - -String _$invertTapHash() => r'8885890ec1184098ce4769b2488f02078502937b'; - -/// See also [InvertTap]. -@ProviderFor(InvertTap) -final invertTapProvider = - AutoDisposeNotifierProvider.internal( - InvertTap.new, - name: r'invertTapProvider', - debugGetCreateSourceHash: - const bool.fromEnvironment('dart.vm.product') ? null : _$invertTapHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef _$InvertTap = AutoDisposeNotifier; -// ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member diff --git a/lib/src/features/settings/presentation/reader/widgets/reader_magnifier_size_slider/reader_magnifier_size_slider.dart b/lib/src/features/settings/presentation/reader/widgets/reader_magnifier_size_slider/reader_magnifier_size_slider.dart deleted file mode 100644 index f4125504..00000000 --- a/lib/src/features/settings/presentation/reader/widgets/reader_magnifier_size_slider/reader_magnifier_size_slider.dart +++ /dev/null @@ -1,95 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'dart:async'; - -import 'package:flutter/material.dart'; -import 'package:flutter_hooks/flutter_hooks.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; -import 'package:riverpod_annotation/riverpod_annotation.dart'; - -import '../../../../../../constants/app_constants.dart'; -import '../../../../../../constants/db_keys.dart'; - -import '../../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../../../utils/mixin/shared_preferences_client_mixin.dart'; -import '../../../../widgets/slider_setting_tile/slider_setting_tile.dart'; - -part 'reader_magnifier_size_slider.g.dart'; - -@riverpod -class ReaderMagnifierSizeKey extends _$ReaderMagnifierSizeKey - with SharedPreferenceClientMixin { - @override - double? build() => initialize( - ref, - initial: DBKeys.readerMagnifierSize.initial, - key: DBKeys.readerMagnifierSize.name, - ); -} - -class ReaderMagnifierSizeSlider extends ConsumerWidget { - const ReaderMagnifierSizeSlider({super.key}); - - @override - Widget build(BuildContext context, WidgetRef ref) { - final double readerMagnifierSize = - ref.watch(readerMagnifierSizeKeyProvider) ?? - DBKeys.readerMagnifierSize.initial; - return SliderSettingTile( - icon: Icons.search, - title: context.l10n!.readerMagnifierSize, - value: readerMagnifierSize, - getSliderLabel: (val) => val.toStringAsFixed(2), - onChanged: ref.read(readerMagnifierSizeKeyProvider.notifier).update, - defaultValue: DBKeys.readerMagnifierSize.initial, - min: 1, - max: 5, - ); - } -} - -class AsyncReaderMagnifierSizeSlider extends HookConsumerWidget { - const AsyncReaderMagnifierSizeSlider({ - super.key, - required this.onChanged, - required this.readerMagnifierSize, - }); - - final ValueSetter onChanged; - final ValueNotifier readerMagnifierSize; - - @override - Widget build(BuildContext context, WidgetRef ref) { - final debounce = useRef(null); - - final onDebounceChanged = useCallback>( - (double magnifierSizeValue) async { - readerMagnifierSize.value = (magnifierSizeValue); - final finalDebounce = debounce.value; - if ((finalDebounce?.isActive).ifNull()) { - finalDebounce?.cancel(); - } - debounce.value = Timer( - kDebounceDuration, - () => onChanged(magnifierSizeValue), - ); - return; - }, - [], - ); - return SliderSettingTile( - icon: Icons.search, - title: context.l10n!.readerMagnifierSize, - value: readerMagnifierSize.value, - getSliderLabel: (val) => val.toStringAsFixed(2), - onChanged: onDebounceChanged, - defaultValue: DBKeys.readerMagnifierSize.initial, - min: 1, - max: 5, - ); - } -} diff --git a/lib/src/features/settings/presentation/reader/widgets/reader_magnifier_size_slider/reader_magnifier_size_slider.g.dart b/lib/src/features/settings/presentation/reader/widgets/reader_magnifier_size_slider/reader_magnifier_size_slider.g.dart deleted file mode 100644 index 3c757e4a..00000000 --- a/lib/src/features/settings/presentation/reader/widgets/reader_magnifier_size_slider/reader_magnifier_size_slider.g.dart +++ /dev/null @@ -1,27 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'reader_magnifier_size_slider.dart'; - -// ************************************************************************** -// RiverpodGenerator -// ************************************************************************** - -String _$readerMagnifierSizeKeyHash() => - r'c8e05f6d26e6853042d03b2fff6cc31f7a0950be'; - -/// See also [ReaderMagnifierSizeKey]. -@ProviderFor(ReaderMagnifierSizeKey) -final readerMagnifierSizeKeyProvider = - AutoDisposeNotifierProvider.internal( - ReaderMagnifierSizeKey.new, - name: r'readerMagnifierSizeKeyProvider', - debugGetCreateSourceHash: const bool.fromEnvironment('dart.vm.product') - ? null - : _$readerMagnifierSizeKeyHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef _$ReaderMagnifierSizeKey = AutoDisposeNotifier; -// ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member diff --git a/lib/src/features/settings/presentation/reader/widgets/reader_mode_tile/reader_mode_tile.dart b/lib/src/features/settings/presentation/reader/widgets/reader_mode_tile/reader_mode_tile.dart deleted file mode 100644 index b6356166..00000000 --- a/lib/src/features/settings/presentation/reader/widgets/reader_mode_tile/reader_mode_tile.dart +++ /dev/null @@ -1,58 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:go_router/go_router.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; -import 'package:riverpod_annotation/riverpod_annotation.dart'; - -import '../../../../../../constants/db_keys.dart'; -import '../../../../../../constants/enum.dart'; - -import '../../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../../../utils/mixin/shared_preferences_client_mixin.dart'; -import '../../../../../../widgets/radio_list_popup.dart'; - -part 'reader_mode_tile.g.dart'; - -@riverpod -class ReaderModeKey extends _$ReaderModeKey - with SharedPreferenceEnumClientMixin { - @override - ReaderMode? build() => initialize( - ref, - initial: DBKeys.readerMode.initial, - key: DBKeys.readerMode.name, - enumList: ReaderMode.values, - ); -} - -class ReaderModeTile extends ConsumerWidget { - const ReaderModeTile({super.key}); - - @override - Widget build(BuildContext context, WidgetRef ref) { - final readerMode = ref.watch(readerModeKeyProvider); - return ListTile( - leading: const Icon(Icons.app_settings_alt_rounded), - subtitle: readerMode != null ? Text(readerMode.toLocale(context)) : null, - title: Text(context.l10n!.readerMode), - onTap: () => showDialog( - context: context, - builder: (context) => RadioListPopup( - title: context.l10n!.readerMode, - optionList: ReaderMode.values.sublist(1), - getOptionTitle: (value) => value.toLocale(context), - value: readerMode ?? ReaderMode.webtoon, - onChange: (enumValue) async { - ref.read(readerModeKeyProvider.notifier).update(enumValue); - if (context.mounted) context.pop(); - }, - ), - ), - ); - } -} diff --git a/lib/src/features/settings/presentation/reader/widgets/reader_mode_tile/reader_mode_tile.g.dart b/lib/src/features/settings/presentation/reader/widgets/reader_mode_tile/reader_mode_tile.g.dart deleted file mode 100644 index 7c38f7f1..00000000 --- a/lib/src/features/settings/presentation/reader/widgets/reader_mode_tile/reader_mode_tile.g.dart +++ /dev/null @@ -1,26 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'reader_mode_tile.dart'; - -// ************************************************************************** -// RiverpodGenerator -// ************************************************************************** - -String _$readerModeKeyHash() => r'ce3cb3f4277926e44291974f73e2ff82c91242e6'; - -/// See also [ReaderModeKey]. -@ProviderFor(ReaderModeKey) -final readerModeKeyProvider = - AutoDisposeNotifierProvider.internal( - ReaderModeKey.new, - name: r'readerModeKeyProvider', - debugGetCreateSourceHash: const bool.fromEnvironment('dart.vm.product') - ? null - : _$readerModeKeyHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef _$ReaderModeKey = AutoDisposeNotifier; -// ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member diff --git a/lib/src/features/settings/presentation/reader/widgets/reader_navigation_layout_tile/reader_navigation_layout_tile.dart b/lib/src/features/settings/presentation/reader/widgets/reader_navigation_layout_tile/reader_navigation_layout_tile.dart deleted file mode 100644 index 9f0bd6c0..00000000 --- a/lib/src/features/settings/presentation/reader/widgets/reader_navigation_layout_tile/reader_navigation_layout_tile.dart +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:go_router/go_router.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; -import 'package:riverpod_annotation/riverpod_annotation.dart'; - -import '../../../../../../constants/db_keys.dart'; -import '../../../../../../constants/enum.dart'; - -import '../../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../../../utils/mixin/shared_preferences_client_mixin.dart'; -import '../../../../../../widgets/radio_list_popup.dart'; - -part 'reader_navigation_layout_tile.g.dart'; - -@riverpod -class ReaderNavigationLayoutKey extends _$ReaderNavigationLayoutKey - with SharedPreferenceEnumClientMixin { - @override - ReaderNavigationLayout? build() => initialize( - ref, - initial: DBKeys.readerNavigationLayout.initial, - key: DBKeys.readerNavigationLayout.name, - enumList: ReaderNavigationLayout.values, - ); -} - -class ReaderNavigationLayoutTile extends ConsumerWidget { - const ReaderNavigationLayoutTile({super.key}); - - @override - Widget build(BuildContext context, WidgetRef ref) { - final readerNavigationLayout = ref.watch(readerNavigationLayoutKeyProvider); - return ListTile( - leading: const Icon(Icons.touch_app_rounded), - subtitle: readerNavigationLayout != null - ? Text(readerNavigationLayout.toLocale(context)) - : null, - title: Text(context.l10n!.readerNavigationLayout), - onTap: () => showDialog( - context: context, - builder: (context) => RadioListPopup( - title: context.l10n!.readerNavigationLayout, - optionList: ReaderNavigationLayout.values.sublist(1), - getOptionTitle: (value) => value.toLocale(context), - value: readerNavigationLayout ?? ReaderNavigationLayout.disabled, - onChange: (enumValue) async { - ref - .read(readerNavigationLayoutKeyProvider.notifier) - .update(enumValue); - if (context.mounted) context.pop(); - }, - ), - ), - ); - } -} diff --git a/lib/src/features/settings/presentation/reader/widgets/reader_navigation_layout_tile/reader_navigation_layout_tile.g.dart b/lib/src/features/settings/presentation/reader/widgets/reader_navigation_layout_tile/reader_navigation_layout_tile.g.dart deleted file mode 100644 index 876acafb..00000000 --- a/lib/src/features/settings/presentation/reader/widgets/reader_navigation_layout_tile/reader_navigation_layout_tile.g.dart +++ /dev/null @@ -1,28 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'reader_navigation_layout_tile.dart'; - -// ************************************************************************** -// RiverpodGenerator -// ************************************************************************** - -String _$readerNavigationLayoutKeyHash() => - r'aa37cea42eb029b459e56aad6a1803fa139d7db0'; - -/// See also [ReaderNavigationLayoutKey]. -@ProviderFor(ReaderNavigationLayoutKey) -final readerNavigationLayoutKeyProvider = AutoDisposeNotifierProvider< - ReaderNavigationLayoutKey, ReaderNavigationLayout?>.internal( - ReaderNavigationLayoutKey.new, - name: r'readerNavigationLayoutKeyProvider', - debugGetCreateSourceHash: const bool.fromEnvironment('dart.vm.product') - ? null - : _$readerNavigationLayoutKeyHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef _$ReaderNavigationLayoutKey - = AutoDisposeNotifier; -// ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member diff --git a/lib/src/features/settings/presentation/reader/widgets/reader_padding_slider/reader_padding_slider.dart b/lib/src/features/settings/presentation/reader/widgets/reader_padding_slider/reader_padding_slider.dart deleted file mode 100644 index 2946906f..00000000 --- a/lib/src/features/settings/presentation/reader/widgets/reader_padding_slider/reader_padding_slider.dart +++ /dev/null @@ -1,94 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'dart:async'; - -import 'package:flutter/material.dart'; -import 'package:flutter_hooks/flutter_hooks.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; -import 'package:riverpod_annotation/riverpod_annotation.dart'; - -import '../../../../../../constants/app_constants.dart'; -import '../../../../../../constants/db_keys.dart'; - -import '../../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../../../utils/mixin/shared_preferences_client_mixin.dart'; -import '../../../../widgets/slider_setting_tile/slider_setting_tile.dart'; - -part 'reader_padding_slider.g.dart'; - -@riverpod -class ReaderPaddingKey extends _$ReaderPaddingKey - with SharedPreferenceClientMixin { - @override - double? build() => initialize( - ref, - initial: DBKeys.readerPadding.initial, - key: DBKeys.readerPadding.name, - ); -} - -class ReaderPaddingSlider extends ConsumerWidget { - const ReaderPaddingSlider({super.key}); - - @override - Widget build(BuildContext context, WidgetRef ref) { - final double readerPadding = - ref.watch(readerPaddingKeyProvider) ?? DBKeys.readerPadding.initial; - return SliderSettingTile( - icon: Icons.width_wide_rounded, - title: context.l10n!.readerPadding, - value: readerPadding, - getSliderLabel: (val) => (val * 2.5).toStringAsFixed(2), - onChanged: ref.read(readerPaddingKeyProvider.notifier).update, - defaultValue: DBKeys.readerPadding.initial, - min: 0, - max: 0.4, - ); - } -} - -class AsyncReaderPaddingSlider extends HookConsumerWidget { - const AsyncReaderPaddingSlider({ - super.key, - required this.onChanged, - required this.readerPadding, - }); - - final ValueSetter onChanged; - final ValueNotifier readerPadding; - - @override - Widget build(BuildContext context, WidgetRef ref) { - final debounce = useRef(null); - - final onDebounceChanged = useCallback>( - (double paddingValue) async { - readerPadding.value = (paddingValue); - final finalDebounce = debounce.value; - if ((finalDebounce?.isActive).ifNull()) { - finalDebounce?.cancel(); - } - debounce.value = Timer( - kDebounceDuration, - () => onChanged(paddingValue), - ); - return; - }, - [], - ); - return SliderSettingTile( - icon: Icons.width_wide_rounded, - title: context.l10n!.readerPadding, - value: readerPadding.value, - getSliderLabel: (val) => (val * 2.5).toStringAsFixed(2), - onChanged: onDebounceChanged, - defaultValue: DBKeys.readerPadding.initial, - min: 0, - max: 0.4, - ); - } -} diff --git a/lib/src/features/settings/presentation/reader/widgets/reader_padding_slider/reader_padding_slider.g.dart b/lib/src/features/settings/presentation/reader/widgets/reader_padding_slider/reader_padding_slider.g.dart deleted file mode 100644 index 9e81cce2..00000000 --- a/lib/src/features/settings/presentation/reader/widgets/reader_padding_slider/reader_padding_slider.g.dart +++ /dev/null @@ -1,26 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'reader_padding_slider.dart'; - -// ************************************************************************** -// RiverpodGenerator -// ************************************************************************** - -String _$readerPaddingKeyHash() => r'733c2f49bded5354ed4bc6016d2951bb3626a23e'; - -/// See also [ReaderPaddingKey]. -@ProviderFor(ReaderPaddingKey) -final readerPaddingKeyProvider = - AutoDisposeNotifierProvider.internal( - ReaderPaddingKey.new, - name: r'readerPaddingKeyProvider', - debugGetCreateSourceHash: const bool.fromEnvironment('dart.vm.product') - ? null - : _$readerPaddingKeyHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef _$ReaderPaddingKey = AutoDisposeNotifier; -// ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member diff --git a/lib/src/features/settings/presentation/reader/widgets/reader_scroll_animation_tile/reader_scroll_animation_tile.dart b/lib/src/features/settings/presentation/reader/widgets/reader_scroll_animation_tile/reader_scroll_animation_tile.dart deleted file mode 100644 index 36e845d3..00000000 --- a/lib/src/features/settings/presentation/reader/widgets/reader_scroll_animation_tile/reader_scroll_animation_tile.dart +++ /dev/null @@ -1,41 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; -import 'package:riverpod_annotation/riverpod_annotation.dart'; - -import '../../../../../../constants/db_keys.dart'; - -import '../../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../../../utils/mixin/shared_preferences_client_mixin.dart'; - -part 'reader_scroll_animation_tile.g.dart'; - -@riverpod -class ReaderScrollAnimation extends _$ReaderScrollAnimation - with SharedPreferenceClientMixin { - @override - bool? build() => initialize( - ref, - key: DBKeys.scrollAnimation.name, - initial: DBKeys.scrollAnimation.initial, - ); -} - -class ReaderScrollAnimationTile extends HookConsumerWidget { - const ReaderScrollAnimationTile({super.key}); - @override - Widget build(BuildContext context, WidgetRef ref) { - return SwitchListTile( - controlAffinity: ListTileControlAffinity.trailing, - secondary: const Icon(Icons.animation_rounded), - title: Text(context.l10n!.readerScrollAnimation), - onChanged: ref.read(readerScrollAnimationProvider.notifier).update, - value: ref.watch(readerScrollAnimationProvider).ifNull(), - ); - } -} diff --git a/lib/src/features/settings/presentation/reader/widgets/reader_scroll_animation_tile/reader_scroll_animation_tile.g.dart b/lib/src/features/settings/presentation/reader/widgets/reader_scroll_animation_tile/reader_scroll_animation_tile.g.dart deleted file mode 100644 index 7b5b7bdc..00000000 --- a/lib/src/features/settings/presentation/reader/widgets/reader_scroll_animation_tile/reader_scroll_animation_tile.g.dart +++ /dev/null @@ -1,27 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'reader_scroll_animation_tile.dart'; - -// ************************************************************************** -// RiverpodGenerator -// ************************************************************************** - -String _$readerScrollAnimationHash() => - r'5795593f5a067596e2bcbd198ae9bf79e584e4e8'; - -/// See also [ReaderScrollAnimation]. -@ProviderFor(ReaderScrollAnimation) -final readerScrollAnimationProvider = - AutoDisposeNotifierProvider.internal( - ReaderScrollAnimation.new, - name: r'readerScrollAnimationProvider', - debugGetCreateSourceHash: const bool.fromEnvironment('dart.vm.product') - ? null - : _$readerScrollAnimationHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef _$ReaderScrollAnimation = AutoDisposeNotifier; -// ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member diff --git a/lib/src/features/settings/presentation/reader/widgets/reader_swipe_toggle_tile/reader_swipe_chapter_toggle_tile.dart b/lib/src/features/settings/presentation/reader/widgets/reader_swipe_toggle_tile/reader_swipe_chapter_toggle_tile.dart deleted file mode 100644 index 265d7019..00000000 --- a/lib/src/features/settings/presentation/reader/widgets/reader_swipe_toggle_tile/reader_swipe_chapter_toggle_tile.dart +++ /dev/null @@ -1,42 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; -import 'package:riverpod_annotation/riverpod_annotation.dart'; - -import '../../../../../../constants/db_keys.dart'; - -import '../../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../../../utils/mixin/shared_preferences_client_mixin.dart'; - -part 'reader_swipe_chapter_toggle_tile.g.dart'; - -@riverpod -class SwipeChapterToggle extends _$SwipeChapterToggle - with SharedPreferenceClientMixin { - @override - bool? build() => initialize( - ref, - key: DBKeys.swipeToggle.name, - initial: DBKeys.swipeToggle.initial, - ); -} - -class SwipeChapterToggleTile extends HookConsumerWidget { - const SwipeChapterToggleTile({super.key}); - @override - Widget build(BuildContext context, WidgetRef ref) { - return SwitchListTile( - controlAffinity: ListTileControlAffinity.trailing, - secondary: const Icon(Icons.swipe_rounded), - title: Text(context.l10n!.readerSwipeChapterToggle), - subtitle: Text(context.l10n!.readerSwipeChapterToggleDescription), - onChanged: ref.read(swipeChapterToggleProvider.notifier).update, - value: ref.watch(swipeChapterToggleProvider).ifNull(), - ); - } -} diff --git a/lib/src/features/settings/presentation/reader/widgets/reader_swipe_toggle_tile/reader_swipe_chapter_toggle_tile.g.dart b/lib/src/features/settings/presentation/reader/widgets/reader_swipe_toggle_tile/reader_swipe_chapter_toggle_tile.g.dart deleted file mode 100644 index a03e44d8..00000000 --- a/lib/src/features/settings/presentation/reader/widgets/reader_swipe_toggle_tile/reader_swipe_chapter_toggle_tile.g.dart +++ /dev/null @@ -1,27 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'reader_swipe_chapter_toggle_tile.dart'; - -// ************************************************************************** -// RiverpodGenerator -// ************************************************************************** - -String _$swipeChapterToggleHash() => - r'5434750ad1b77a70b2b3647d8f0eeb69bb681003'; - -/// See also [SwipeChapterToggle]. -@ProviderFor(SwipeChapterToggle) -final swipeChapterToggleProvider = - AutoDisposeNotifierProvider.internal( - SwipeChapterToggle.new, - name: r'swipeChapterToggleProvider', - debugGetCreateSourceHash: const bool.fromEnvironment('dart.vm.product') - ? null - : _$swipeChapterToggleHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef _$SwipeChapterToggle = AutoDisposeNotifier; -// ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member diff --git a/lib/src/features/settings/presentation/reader/widgets/reader_volume_tap_invert_tile/reader_invert_tap_tile.g.dart b/lib/src/features/settings/presentation/reader/widgets/reader_volume_tap_invert_tile/reader_invert_tap_tile.g.dart deleted file mode 100644 index 0b46aa58..00000000 --- a/lib/src/features/settings/presentation/reader/widgets/reader_volume_tap_invert_tile/reader_invert_tap_tile.g.dart +++ /dev/null @@ -1,25 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'reader_invert_tap_tile.dart'; - -// ************************************************************************** -// RiverpodGenerator -// ************************************************************************** - -String _$invertTapHash() => r'8885890ec1184098ce4769b2488f02078502937b'; - -/// See also [InvertTap]. -@ProviderFor(InvertTap) -final invertTapProvider = - AutoDisposeNotifierProvider.internal( - InvertTap.new, - name: r'invertTapProvider', - debugGetCreateSourceHash: - const bool.fromEnvironment('dart.vm.product') ? null : _$invertTapHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef _$InvertTap = AutoDisposeNotifier; -// ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member diff --git a/lib/src/features/settings/presentation/reader/widgets/reader_volume_tap_invert_tile/reader_volume_tap_invert_tile.dart b/lib/src/features/settings/presentation/reader/widgets/reader_volume_tap_invert_tile/reader_volume_tap_invert_tile.dart deleted file mode 100644 index 32686e32..00000000 --- a/lib/src/features/settings/presentation/reader/widgets/reader_volume_tap_invert_tile/reader_volume_tap_invert_tile.dart +++ /dev/null @@ -1,44 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. -import 'dart:math' as math; -import 'package:flutter/material.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; -import 'package:riverpod_annotation/riverpod_annotation.dart'; - -import '../../../../../../constants/db_keys.dart'; - -import '../../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../../../utils/mixin/shared_preferences_client_mixin.dart'; - -part 'reader_volume_tap_invert_tile.g.dart'; - -@riverpod -class VolumeTapInvert extends _$VolumeTapInvert - with SharedPreferenceClientMixin { - @override - bool? build() => initialize( - ref, - key: DBKeys.volumeTapInvert.name, - initial: DBKeys.volumeTapInvert.initial, - ); -} - -class ReaderVolumeTapInvertTile extends HookConsumerWidget { - const ReaderVolumeTapInvertTile({super.key}); - @override - Widget build(BuildContext context, WidgetRef ref) { - return SwitchListTile( - controlAffinity: ListTileControlAffinity.trailing, - secondary: Transform.rotate( - angle: -math.pi / 2, - child: const Icon(Icons.switch_left_rounded), - ), - title: Text(context.l10n!.readerVolumeTapInvert), - onChanged: ref.read(volumeTapInvertProvider.notifier).update, - value: ref.watch(volumeTapInvertProvider).ifNull(), - ); - } -} diff --git a/lib/src/features/settings/presentation/reader/widgets/reader_volume_tap_invert_tile/reader_volume_tap_invert_tile.g.dart b/lib/src/features/settings/presentation/reader/widgets/reader_volume_tap_invert_tile/reader_volume_tap_invert_tile.g.dart deleted file mode 100644 index 6781b0de..00000000 --- a/lib/src/features/settings/presentation/reader/widgets/reader_volume_tap_invert_tile/reader_volume_tap_invert_tile.g.dart +++ /dev/null @@ -1,26 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'reader_volume_tap_invert_tile.dart'; - -// ************************************************************************** -// RiverpodGenerator -// ************************************************************************** - -String _$volumeTapInvertHash() => r'1d598d8e98e6f885720edc3c3e4d72589efe3880'; - -/// See also [VolumeTapInvert]. -@ProviderFor(VolumeTapInvert) -final volumeTapInvertProvider = - AutoDisposeNotifierProvider.internal( - VolumeTapInvert.new, - name: r'volumeTapInvertProvider', - debugGetCreateSourceHash: const bool.fromEnvironment('dart.vm.product') - ? null - : _$volumeTapInvertHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef _$VolumeTapInvert = AutoDisposeNotifier; -// ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member diff --git a/lib/src/features/settings/presentation/reader/widgets/reader_volume_tap_tile/reader_invert_tap_tile.g.dart b/lib/src/features/settings/presentation/reader/widgets/reader_volume_tap_tile/reader_invert_tap_tile.g.dart deleted file mode 100644 index 0b46aa58..00000000 --- a/lib/src/features/settings/presentation/reader/widgets/reader_volume_tap_tile/reader_invert_tap_tile.g.dart +++ /dev/null @@ -1,25 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'reader_invert_tap_tile.dart'; - -// ************************************************************************** -// RiverpodGenerator -// ************************************************************************** - -String _$invertTapHash() => r'8885890ec1184098ce4769b2488f02078502937b'; - -/// See also [InvertTap]. -@ProviderFor(InvertTap) -final invertTapProvider = - AutoDisposeNotifierProvider.internal( - InvertTap.new, - name: r'invertTapProvider', - debugGetCreateSourceHash: - const bool.fromEnvironment('dart.vm.product') ? null : _$invertTapHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef _$InvertTap = AutoDisposeNotifier; -// ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member diff --git a/lib/src/features/settings/presentation/reader/widgets/reader_volume_tap_tile/reader_volume_tap_tile.dart b/lib/src/features/settings/presentation/reader/widgets/reader_volume_tap_tile/reader_volume_tap_tile.dart deleted file mode 100644 index eb76bc89..00000000 --- a/lib/src/features/settings/presentation/reader/widgets/reader_volume_tap_tile/reader_volume_tap_tile.dart +++ /dev/null @@ -1,44 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. -import 'dart:math' as math; -import 'package:flutter/material.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; -import 'package:riverpod_annotation/riverpod_annotation.dart'; - -import '../../../../../../constants/db_keys.dart'; - -import '../../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../../../utils/mixin/shared_preferences_client_mixin.dart'; - -part 'reader_volume_tap_tile.g.dart'; - -@riverpod -class VolumeTap extends _$VolumeTap with SharedPreferenceClientMixin { - @override - bool? build() => initialize( - ref, - key: DBKeys.volumeTap.name, - initial: DBKeys.volumeTap.initial, - ); -} - -class ReaderVolumeTapTile extends HookConsumerWidget { - const ReaderVolumeTapTile({super.key}); - @override - Widget build(BuildContext context, WidgetRef ref) { - return SwitchListTile( - controlAffinity: ListTileControlAffinity.trailing, - secondary: Transform.rotate( - angle: math.pi / 2, - child: const Icon(Icons.switch_left_rounded), - ), - title: Text(context.l10n!.readerVolumeTap), - subtitle: Text(context.l10n!.readerVolumeTapSubtitle), - onChanged: ref.read(volumeTapProvider.notifier).update, - value: ref.watch(volumeTapProvider).ifNull(), - ); - } -} diff --git a/lib/src/features/settings/presentation/reader/widgets/reader_volume_tap_tile/reader_volume_tap_tile.g.dart b/lib/src/features/settings/presentation/reader/widgets/reader_volume_tap_tile/reader_volume_tap_tile.g.dart deleted file mode 100644 index 57697e89..00000000 --- a/lib/src/features/settings/presentation/reader/widgets/reader_volume_tap_tile/reader_volume_tap_tile.g.dart +++ /dev/null @@ -1,25 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'reader_volume_tap_tile.dart'; - -// ************************************************************************** -// RiverpodGenerator -// ************************************************************************** - -String _$volumeTapHash() => r'7b79b64e431952b2976ee0000cfe14857ada4c30'; - -/// See also [VolumeTap]. -@ProviderFor(VolumeTap) -final volumeTapProvider = - AutoDisposeNotifierProvider.internal( - VolumeTap.new, - name: r'volumeTapProvider', - debugGetCreateSourceHash: - const bool.fromEnvironment('dart.vm.product') ? null : _$volumeTapHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef _$VolumeTap = AutoDisposeNotifier; -// ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member diff --git a/lib/src/features/settings/presentation/server/server_screen.dart b/lib/src/features/settings/presentation/server/server_screen.dart deleted file mode 100644 index 2e5fb366..00000000 --- a/lib/src/features/settings/presentation/server/server_screen.dart +++ /dev/null @@ -1,72 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/foundation.dart'; -import 'package:flutter/material.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../../../../constants/endpoints.dart'; -import '../../../../constants/enum.dart'; -import '../../../../global_providers/global_providers.dart'; - -import '../../../../utils/extensions/custom_extensions.dart'; -import '../../../../utils/launch_url_in_web.dart'; -import '../../../../utils/misc/toast/toast.dart'; -import '../../widgets/server_port_tile/server_port_tile.dart'; -import '../../widgets/server_url_tile/server_url_tile.dart'; -import 'widget/auth_type_tile.dart'; -import 'widget/credential_popup/credentials_popup.dart'; - -class ServerScreen extends ConsumerWidget { - const ServerScreen({super.key}); - @override - Widget build(BuildContext context, WidgetRef ref) { - final authType = ref.watch(authTypeKeyProvider); - return Scaffold( - appBar: AppBar( - title: Text(context.l10n!.server), - ), - body: ListView( - children: [ - const ServerUrlTile(), - const ServerPortTile(), - const AuthTypeTile(), - if (authType != null && authType != AuthType.none) - ListTile( - leading: const Icon(Icons.password_rounded), - title: Text(context.l10n!.credentials), - onTap: () { - showDialog( - context: context, - builder: (context) => const CredentialsPopup(), - ); - }, - ), - if (!kIsWeb) - ListTile( - leading: const Icon(Icons.web_rounded), - title: Text(context.l10n!.webUI), - onTap: () { - final url = Endpoints.baseApi( - baseUrl: ref.read(serverUrlProvider), - port: ref.read(serverPortProvider), - addPort: ref.watch(serverPortToggleProvider).ifNull(), - appendApiToUrl: false, - ); - if (url.isNotBlank) { - launchUrlInWeb( - context, - url, - ref.read(toastProvider(context)), - ); - } - }, - ) - ], - ), - ); - } -} diff --git a/lib/src/features/settings/presentation/server/widget/auth_type_tile.dart b/lib/src/features/settings/presentation/server/widget/auth_type_tile.dart deleted file mode 100644 index ec0ac0be..00000000 --- a/lib/src/features/settings/presentation/server/widget/auth_type_tile.dart +++ /dev/null @@ -1,43 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:go_router/go_router.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../../../../../constants/enum.dart'; -import '../../../../../global_providers/global_providers.dart'; - -import '../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../../widgets/radio_list_popup.dart'; - -class AuthTypeTile extends ConsumerWidget { - const AuthTypeTile({super.key}); - - @override - Widget build(BuildContext context, WidgetRef ref) { - final authType = ref.watch(authTypeKeyProvider); - - return ListTile( - leading: const Icon(Icons.security_rounded), - subtitle: authType != null ? Text(authType.toLocale(context)) : null, - title: Text(context.l10n!.authType), - onTap: () => showDialog( - context: context, - builder: (context) => RadioListPopup( - title: context.l10n!.authType, - optionList: AuthType.values, - getOptionTitle: (value) => value.toLocale(context), - value: authType ?? AuthType.none, - onChange: (enumValue) { - ref.read(authTypeKeyProvider.notifier).update(enumValue); - context.pop(); - }, - ), - ), - ); - } -} diff --git a/lib/src/features/settings/presentation/server/widget/credential_popup/credentials_popup.dart b/lib/src/features/settings/presentation/server/widget/credential_popup/credentials_popup.dart deleted file mode 100644 index 21a3263f..00000000 --- a/lib/src/features/settings/presentation/server/widget/credential_popup/credentials_popup.dart +++ /dev/null @@ -1,101 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'dart:convert'; - -import 'package:flutter/material.dart'; -import 'package:flutter_hooks/flutter_hooks.dart'; -import 'package:go_router/go_router.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; -import 'package:riverpod_annotation/riverpod_annotation.dart'; - -import '../../../../../../constants/app_sizes.dart'; -import '../../../../../../constants/db_keys.dart'; - -import '../../../../../../utils/extensions/custom_extensions.dart'; -import '../../../../../../utils/mixin/shared_preferences_client_mixin.dart'; -import '../../../../../../widgets/pop_button.dart'; - -part 'credentials_popup.g.dart'; - -@riverpod -class Credentials extends _$Credentials - with SharedPreferenceClientMixin { - @override - String? build() => initialize( - ref, - key: DBKeys.basicCredentials.name, - initial: DBKeys.basicCredentials.initial, - ); -} - -final formKey = GlobalKey(); - -class CredentialsPopup extends HookConsumerWidget { - const CredentialsPopup({super.key}); - - String _basicAuth({ - required String userName, - required String password, - }) => - 'Basic ${base64.encode( - utf8.encode('$userName:$password'), - )}'; - - @override - Widget build(BuildContext context, WidgetRef ref) { - final username = useTextEditingController(); - final password = useTextEditingController(); - return AlertDialog( - title: Text(context.l10n!.credentials), - content: Form( - key: formKey, - child: Column( - mainAxisSize: MainAxisSize.min, - children: [ - TextFormField( - controller: username, - validator: (value) => - value.isBlank ? (context.l10n!.errorUserName) : null, - decoration: InputDecoration( - hintText: context.l10n!.userName, - border: const OutlineInputBorder(), - ), - ), - KSizedBox.h4.size, - TextFormField( - controller: password, - validator: (value) => - value.isBlank ? (context.l10n!.errorPassword) : null, - obscureText: true, - decoration: InputDecoration( - hintText: context.l10n!.password, - border: const OutlineInputBorder(), - ), - ), - ], - ), - ), - actions: [ - const PopButton(), - ElevatedButton( - onPressed: () async { - if ((formKey.currentState?.validate()).ifNull()) { - ref.read(credentialsProvider.notifier).update( - _basicAuth( - userName: username.text, - password: password.text, - ), - ); - context.pop(); - } - }, - child: Text(context.l10n!.save), - ), - ], - ); - } -} diff --git a/lib/src/features/settings/presentation/server/widget/credential_popup/credentials_popup.g.dart b/lib/src/features/settings/presentation/server/widget/credential_popup/credentials_popup.g.dart deleted file mode 100644 index 8bbdfda1..00000000 --- a/lib/src/features/settings/presentation/server/widget/credential_popup/credentials_popup.g.dart +++ /dev/null @@ -1,25 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'credentials_popup.dart'; - -// ************************************************************************** -// RiverpodGenerator -// ************************************************************************** - -String _$credentialsHash() => r'e509b70ba4135d6ff261c22f96f600f70e1fb5e0'; - -/// See also [Credentials]. -@ProviderFor(Credentials) -final credentialsProvider = - AutoDisposeNotifierProvider.internal( - Credentials.new, - name: r'credentialsProvider', - debugGetCreateSourceHash: - const bool.fromEnvironment('dart.vm.product') ? null : _$credentialsHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef _$Credentials = AutoDisposeNotifier; -// ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member diff --git a/lib/src/features/settings/presentation/settings/settings_screen.dart b/lib/src/features/settings/presentation/settings/settings_screen.dart deleted file mode 100644 index 372b74b7..00000000 --- a/lib/src/features/settings/presentation/settings/settings_screen.dart +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; - -import '../../../../routes/router_config.dart'; -import '../../../../utils/extensions/custom_extensions.dart'; - -class SettingsScreen extends StatelessWidget { - const SettingsScreen({super.key}); - - @override - Widget build(BuildContext context) { - return Scaffold( - appBar: AppBar( - title: Text(context.l10n!.settings), - ), - body: ListView( - children: [ - ListTile( - title: Text(context.l10n!.general), - leading: const Icon(Icons.tune_rounded), - onTap: () => const GeneralSettingsRoute().push(context), - ), - ListTile( - title: Text(context.l10n!.appearance), - leading: const Icon(Icons.color_lens_rounded), - onTap: () => const AppearanceSettingsRoute().push(context), - ), - ListTile( - title: Text(context.l10n!.library), - leading: const Icon(Icons.collections_bookmark_rounded), - onTap: () => const LibrarySettingsRoute().push(context), - ), - ListTile( - title: Text(context.l10n!.reader), - leading: const Icon(Icons.chrome_reader_mode_rounded), - onTap: () => const ReaderSettingsRoute().push(context), - ), - ListTile( - title: Text(context.l10n!.browse), - leading: const Icon(Icons.explore_rounded), - onTap: () => const BrowseSettingsRoute().push(context), - ), - ListTile( - title: Text(context.l10n!.backup), - leading: const Icon(Icons.settings_backup_restore_rounded), - onTap: () => const BackupRoute().push(context), - ), - ListTile( - title: Text(context.l10n!.server), - leading: const Icon(Icons.computer_rounded), - onTap: () => const ServerSettingsRoute().push(context), - ), - ], - ), - ); - } -} diff --git a/lib/src/features/settings/widgets/server_port_tile/server_port_tile.dart b/lib/src/features/settings/widgets/server_port_tile/server_port_tile.dart deleted file mode 100644 index 42124021..00000000 --- a/lib/src/features/settings/widgets/server_port_tile/server_port_tile.dart +++ /dev/null @@ -1,118 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/foundation.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter/services.dart'; -import 'package:flutter_hooks/flutter_hooks.dart'; -import 'package:go_router/go_router.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; -import 'package:riverpod_annotation/riverpod_annotation.dart'; - -import '../../../../constants/db_keys.dart'; -import '../../../../utils/extensions/custom_extensions.dart'; -import '../../../../utils/mixin/shared_preferences_client_mixin.dart'; -import '../../../../widgets/pop_button.dart'; - -part 'server_port_tile.g.dart'; - -@riverpod -class ServerPort extends _$ServerPort with SharedPreferenceClientMixin { - @override - int? build() => initialize( - ref, - key: DBKeys.serverPort.name, - initial: DBKeys.serverPort.initial, - ); -} - -@riverpod -class ServerPortToggle extends _$ServerPortToggle - with SharedPreferenceClientMixin { - @override - bool? build() => initialize( - ref, - key: DBKeys.serverPortToggle.name, - initial: kIsWeb ? false : DBKeys.serverPortToggle.initial, - ); -} - -class ServerPortTile extends ConsumerWidget { - const ServerPortTile({super.key}); - - @override - Widget build(BuildContext context, WidgetRef ref) { - final serverPort = ref.watch(serverPortProvider); - final serverToggle = ref.watch(serverPortToggleProvider).ifNull(); - return ListTile( - leading: const Icon(Icons.dns_rounded), - title: Text(context.l10n!.serverPort), - subtitle: (serverToggle && serverPort != null) - ? (Text(serverPort.toString())) - : null, - trailing: Switch( - value: serverToggle, - onChanged: (value) { - ref.read(serverPortToggleProvider.notifier).update(value); - }, - ), - onTap: serverToggle - ? () => showDialog( - context: context, - builder: (context) => ServerPortField(initialPort: serverPort), - ) - : null, - ); - } -} - -class ServerPortField extends HookConsumerWidget { - const ServerPortField({ - this.initialPort, - super.key, - }); - final int? initialPort; - - void _update(int? port, WidgetRef ref) { - ref.read(serverPortProvider.notifier).update(port); - } - - @override - Widget build(BuildContext context, WidgetRef ref) { - final controller = useTextEditingController( - text: (initialPort ?? '').toString(), - ); - return AlertDialog( - title: Text(context.l10n!.serverPort), - content: TextField( - autofocus: true, - controller: controller, - onSubmitted: (value) { - _update(int.tryParse(controller.text), ref); - context.pop(); - }, - keyboardType: TextInputType.number, - maxLength: 5, - inputFormatters: [FilteringTextInputFormatter.digitsOnly], - decoration: InputDecoration( - counter: const SizedBox.shrink(), - border: const OutlineInputBorder(), - hintText: (context.l10n!.serverPortHintText), - ), - ), - actions: [ - const PopButton(), - ElevatedButton( - onPressed: () { - _update(int.tryParse(controller.text), ref); - context.pop(); - }, - child: Text(context.l10n!.save), - ), - ], - ); - } -} diff --git a/lib/src/features/settings/widgets/server_port_tile/server_port_tile.g.dart b/lib/src/features/settings/widgets/server_port_tile/server_port_tile.g.dart deleted file mode 100644 index e42ffcac..00000000 --- a/lib/src/features/settings/widgets/server_port_tile/server_port_tile.g.dart +++ /dev/null @@ -1,41 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'server_port_tile.dart'; - -// ************************************************************************** -// RiverpodGenerator -// ************************************************************************** - -String _$serverPortHash() => r'3cc6aeb1ff31120ea0f590de35389013914693bc'; - -/// See also [ServerPort]. -@ProviderFor(ServerPort) -final serverPortProvider = - AutoDisposeNotifierProvider.internal( - ServerPort.new, - name: r'serverPortProvider', - debugGetCreateSourceHash: - const bool.fromEnvironment('dart.vm.product') ? null : _$serverPortHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef _$ServerPort = AutoDisposeNotifier; -String _$serverPortToggleHash() => r'1cfe71a5d9ab5585525f5b1869a82c8e7ba41722'; - -/// See also [ServerPortToggle]. -@ProviderFor(ServerPortToggle) -final serverPortToggleProvider = - AutoDisposeNotifierProvider.internal( - ServerPortToggle.new, - name: r'serverPortToggleProvider', - debugGetCreateSourceHash: const bool.fromEnvironment('dart.vm.product') - ? null - : _$serverPortToggleHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef _$ServerPortToggle = AutoDisposeNotifier; -// ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member diff --git a/lib/src/features/settings/widgets/server_url_tile/server_search_button.dart b/lib/src/features/settings/widgets/server_url_tile/server_search_button.dart deleted file mode 100644 index 99b88a60..00000000 --- a/lib/src/features/settings/widgets/server_url_tile/server_search_button.dart +++ /dev/null @@ -1,89 +0,0 @@ -// Copyright (c) 2023 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'dart:io'; - -import 'package:flutter/material.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; -import 'package:network_info_plus/network_info_plus.dart'; - -import '../../../../constants/db_keys.dart'; -import '../../../../utils/extensions/custom_extensions.dart'; -import '../../../../utils/misc/toast/toast.dart'; -import '../../../../widgets/async_buttons/async_text_button.dart'; -import '../server_port_tile/server_port_tile.dart'; -import 'server_url_tile.dart'; - -class ServerSearchButton extends ConsumerWidget { - const ServerSearchButton({ - super.key, - this.text, - }); - final String? text; - void _update(String url, WidgetRef ref) { - final tempUrl = url.endsWith('/') ? url.substring(0, url.length - 1) : url; - ref.read(serverUrlProvider.notifier).update(tempUrl); - } - - Future getServerAddress(int? port) async { - final ip = await NetworkInfo().getWifiIP(); - if (ip.isBlank) return null; - - port ??= 4567; - String serverIp = ip!; - - if (await pingIp(serverIp, port)) return DBKeys.serverUrl.initial; - - final String subnet = ip.substring(0, ip.lastIndexOf('.')); - - for (var i = 0; i < 254; i++) { - serverIp = '$subnet.$i'; - if (await pingIp(serverIp, port)) return "http://$serverIp"; - } - return null; - } - - Future pingIp(String ip, int port) async { - bool isValidIp = false; - await Socket.connect(ip, port, timeout: const Duration(milliseconds: 50)) - .then( - (socket) async { - await InternetAddress(socket.address.address).reverse().then( - (value) => isValidIp = true, - onError: (_) => isValidIp = true, - ); - socket.destroy(); - }, - onError: (_) => null, - ); - return isValidIp; - } - - @override - Widget build(BuildContext context, WidgetRef ref) { - final port = ref.watch(serverPortProvider); - final addPort = ref.watch(serverPortToggleProvider).ifNull(); - if (!addPort) return const SizedBox.shrink(); - return AsyncTextButton( - icon: const Icon(Icons.search), - onPressed: port != null - ? () async { - final value = await getServerAddress(port); - if (value != null) { - _update(value, ref); - } else { - if (context.mounted) { - ref - .watch(toastProvider(context)) - .showError(context.l10n!.noServerFound); - } - } - } - : null, - child: Text(context.l10n!.findServer), - ); - } -} diff --git a/lib/src/features/settings/widgets/server_url_tile/server_url_tile.dart b/lib/src/features/settings/widgets/server_url_tile/server_url_tile.dart deleted file mode 100644 index a6c9ecf6..00000000 --- a/lib/src/features/settings/widgets/server_url_tile/server_url_tile.dart +++ /dev/null @@ -1,93 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/foundation.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter_hooks/flutter_hooks.dart'; -import 'package:go_router/go_router.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; -import 'package:riverpod_annotation/riverpod_annotation.dart'; - -import '../../../../constants/db_keys.dart'; - -import '../../../../utils/extensions/custom_extensions.dart'; -import '../../../../utils/mixin/shared_preferences_client_mixin.dart'; -import '../../../../widgets/pop_button.dart'; -import 'server_search_button.dart'; - -part 'server_url_tile.g.dart'; - -@riverpod -class ServerUrl extends _$ServerUrl with SharedPreferenceClientMixin { - @override - String? build() => initialize( - ref, - key: DBKeys.serverUrl.name, - initial: kIsWeb ? Uri.base.origin : DBKeys.serverUrl.initial, - ); -} - -class ServerUrlTile extends ConsumerWidget { - const ServerUrlTile({super.key}); - - @override - Widget build(BuildContext context, WidgetRef ref) { - final serverUrl = ref.watch(serverUrlProvider); - return ListTile( - leading: const Icon(Icons.computer_rounded), - title: Text(context.l10n!.serverUrl), - subtitle: (serverUrl.isNotBlank) ? Text(serverUrl!) : null, - trailing: !kIsWeb ? (const ServerSearchButton()) : null, - onTap: () => showDialog( - context: context, - builder: (context) => ServerUrlField(initialUrl: serverUrl), - ), - ); - } -} - -class ServerUrlField extends HookConsumerWidget { - const ServerUrlField({ - this.initialUrl, - super.key, - }); - final String? initialUrl; - - void _update(String url, WidgetRef ref) { - final tempUrl = url.endsWith('/') ? url.substring(0, url.length - 1) : url; - ref.read(serverUrlProvider.notifier).update(tempUrl); - } - - @override - Widget build(BuildContext context, WidgetRef ref) { - final controller = useTextEditingController(text: initialUrl); - return AlertDialog( - title: Text(context.l10n!.serverUrl), - content: TextField( - autofocus: true, - controller: controller, - onSubmitted: (value) { - _update(controller.text, ref); - context.pop(); - }, - decoration: InputDecoration( - border: const OutlineInputBorder(), - hintText: (context.l10n!.serverUrlHintText), - ), - ), - actions: [ - const PopButton(), - ElevatedButton( - onPressed: () { - _update(controller.text, ref); - context.pop(); - }, - child: Text(context.l10n!.save), - ), - ], - ); - } -} diff --git a/lib/src/features/settings/widgets/server_url_tile/server_url_tile.g.dart b/lib/src/features/settings/widgets/server_url_tile/server_url_tile.g.dart deleted file mode 100644 index 5b129bda..00000000 --- a/lib/src/features/settings/widgets/server_url_tile/server_url_tile.g.dart +++ /dev/null @@ -1,25 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'server_url_tile.dart'; - -// ************************************************************************** -// RiverpodGenerator -// ************************************************************************** - -String _$serverUrlHash() => r'8307ead7a1b89ef35ed2192ca4eff18050ca6163'; - -/// See also [ServerUrl]. -@ProviderFor(ServerUrl) -final serverUrlProvider = - AutoDisposeNotifierProvider.internal( - ServerUrl.new, - name: r'serverUrlProvider', - debugGetCreateSourceHash: - const bool.fromEnvironment('dart.vm.product') ? null : _$serverUrlHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef _$ServerUrl = AutoDisposeNotifier; -// ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member diff --git a/lib/src/features/settings/widgets/slider_setting_tile/slider_setting_tile.dart b/lib/src/features/settings/widgets/slider_setting_tile/slider_setting_tile.dart deleted file mode 100644 index 9fd192fc..00000000 --- a/lib/src/features/settings/widgets/slider_setting_tile/slider_setting_tile.dart +++ /dev/null @@ -1,57 +0,0 @@ -// Copyright (c) 2023 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; - -class SliderSettingTile extends StatelessWidget { - const SliderSettingTile({ - super.key, - required this.title, - required this.icon, - required this.value, - required this.defaultValue, - required this.onChanged, - required this.min, - required this.max, - required this.getSliderLabel, - }); - final String title; - final IconData icon; - final double value; - final ValueSetter onChanged; - final double min; - final double defaultValue; - final double max; - final String Function(double) getSliderLabel; - @override - Widget build(BuildContext context) { - final label = getSliderLabel(value); - return ListTile( - dense: false, - isThreeLine: true, - leading: Icon(icon), - title: Text(title), - trailing: IconButton( - onPressed: () => onChanged(defaultValue), - icon: const Icon(Icons.refresh), - ), - subtitle: Row( - children: [ - Expanded( - child: Slider( - label: label.toString(), - value: value, - min: min, - max: max, - onChanged: (value) => onChanged(value), - ), - ), - Text(label), - ], - ), - ); - } -} diff --git a/lib/src/features/settings/widgets/theme_mode_tile/theme_mode_tile.dart b/lib/src/features/settings/widgets/theme_mode_tile/theme_mode_tile.dart deleted file mode 100644 index 0ce085be..00000000 --- a/lib/src/features/settings/widgets/theme_mode_tile/theme_mode_tile.dart +++ /dev/null @@ -1,67 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:go_router/go_router.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; -import 'package:riverpod_annotation/riverpod_annotation.dart'; - -import '../../../../constants/db_keys.dart'; - -import '../../../../utils/extensions/custom_extensions.dart'; -import '../../../../utils/mixin/shared_preferences_client_mixin.dart'; -import '../../../../widgets/radio_list_popup.dart'; - -part 'theme_mode_tile.g.dart'; - -@riverpod -class ThemeModeKey extends _$ThemeModeKey - with SharedPreferenceEnumClientMixin { - @override - ThemeMode? build() => initialize( - ref, - initial: DBKeys.themeMode.initial, - key: DBKeys.themeMode.name, - enumList: ThemeMode.values, - ); -} - -extension ThemeModeExtension on ThemeMode { - String toLocale(BuildContext context) => switch (this) { - ThemeMode.system => context.l10n!.themeModeSystem, - ThemeMode.light => context.l10n!.themeModeLight, - ThemeMode.dark => context.l10n!.themeModeDark - }; -} - -class AppThemeTile extends ConsumerWidget { - const AppThemeTile({super.key}); - - @override - Widget build(BuildContext context, WidgetRef ref) { - final themeMode = ref.watch(themeModeKeyProvider); - return ListTile( - leading: Icon( - context.isDarkMode ? Icons.dark_mode_rounded : Icons.light_mode_rounded, - ), - subtitle: themeMode != null ? Text(themeMode.toLocale(context)) : null, - title: Text(context.l10n!.appTheme), - onTap: () => showDialog( - context: context, - builder: (context) => RadioListPopup( - title: context.l10n!.appTheme, - optionList: ThemeMode.values, - value: themeMode ?? ThemeMode.system, - getOptionTitle: (value) => value.toLocale(context), - onChange: (enumValue) async { - ref.read(themeModeKeyProvider.notifier).update(enumValue); - if (context.mounted) context.pop(); - }, - ), - ), - ); - } -} diff --git a/lib/src/features/settings/widgets/theme_mode_tile/theme_mode_tile.g.dart b/lib/src/features/settings/widgets/theme_mode_tile/theme_mode_tile.g.dart deleted file mode 100644 index 66732064..00000000 --- a/lib/src/features/settings/widgets/theme_mode_tile/theme_mode_tile.g.dart +++ /dev/null @@ -1,25 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'theme_mode_tile.dart'; - -// ************************************************************************** -// RiverpodGenerator -// ************************************************************************** - -String _$themeModeKeyHash() => r'eff7effc4dc1153dda663177ba80ae17bcc913ad'; - -/// See also [ThemeModeKey]. -@ProviderFor(ThemeModeKey) -final themeModeKeyProvider = - AutoDisposeNotifierProvider.internal( - ThemeModeKey.new, - name: r'themeModeKeyProvider', - debugGetCreateSourceHash: - const bool.fromEnvironment('dart.vm.product') ? null : _$themeModeKeyHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef _$ThemeModeKey = AutoDisposeNotifier; -// ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member diff --git a/lib/src/global_providers/global_providers.dart b/lib/src/global_providers/global_providers.dart deleted file mode 100644 index 4a398fb2..00000000 --- a/lib/src/global_providers/global_providers.dart +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'dart:io'; - -import 'package:dio_cache_interceptor_hive_store/dio_cache_interceptor_hive_store.dart'; -import 'package:flutter/material.dart'; -import 'package:queue/queue.dart'; -import 'package:riverpod_annotation/riverpod_annotation.dart'; -import 'package:shared_preferences/shared_preferences.dart'; - -import '../constants/db_keys.dart'; -import '../constants/enum.dart'; -import '../features/settings/presentation/server/widget/credential_popup/credentials_popup.dart'; -import '../features/settings/widgets/server_port_tile/server_port_tile.dart'; -import '../features/settings/widgets/server_url_tile/server_url_tile.dart'; -import '../utils/extensions/custom_extensions.dart'; -import '../utils/mixin/shared_preferences_client_mixin.dart'; -import '../utils/storage/dio/dio_client.dart'; -import '../utils/storage/dio/network_module.dart'; - -part 'global_providers.g.dart'; - -@riverpod -DioClient dioClientKey(DioClientKeyRef ref) => DioClient( - dio: ref.watch(networkModuleProvider).provideDio( - baseUrl: ref.watch(serverUrlProvider) ?? DBKeys.serverUrl.initial, - port: ref.watch(serverPortProvider), - addPort: ref.watch(serverPortToggleProvider).ifNull(), - authType: ref.watch(authTypeKeyProvider) ?? DBKeys.authType.initial, - credentials: ref.watch(credentialsProvider), - hiveCacheStore: ref.watch(hiveCacheStoreProvider), - ), - ); - -@riverpod -class AuthTypeKey extends _$AuthTypeKey - with SharedPreferenceEnumClientMixin { - @override - AuthType? build() => initialize( - ref, - initial: DBKeys.authType.initial, - key: DBKeys.authType.name, - enumList: AuthType.values, - ); -} - -@riverpod -class L10n extends _$L10n with SharedPreferenceClientMixin { - Map toJson(Locale locale) => { - if (locale.countryCode.isNotBlank) "countryCode": locale.countryCode!, - if (locale.languageCode.isNotBlank) "languageCode": locale.languageCode, - if (locale.scriptCode.isNotBlank) "scriptCode": locale.scriptCode!, - }; - Locale? fromJson(dynamic json) => - json is! Map || (json["languageCode"] == null) - ? null - : Locale.fromSubtags( - languageCode: json["languageCode"]!.toString(), - scriptCode: json["scriptCode"]?.toString(), - countryCode: json["countryCode"]?.toString(), - ); - @override - Locale? build() => initialize( - ref, - key: DBKeys.l10n.name, - initial: DBKeys.l10n.initial, - fromJson: fromJson, - toJson: toJson, - ); -} - -@riverpod -SharedPreferences sharedPreferences(ref) => throw UnimplementedError(); - -@riverpod -Directory? appDirectory(ref) => throw UnimplementedError(); - -@riverpod -HiveCacheStore hiveCacheStore(HiveCacheStoreRef ref) => - HiveCacheStore(ref.watch(appDirectoryProvider)?.path); - -@riverpod -Queue rateLimitQueue(ref) => Queue( - parallel: 3, - delay: const Duration(milliseconds: 500), - ); diff --git a/lib/src/global_providers/global_providers.g.dart b/lib/src/global_providers/global_providers.g.dart deleted file mode 100644 index 8628041b..00000000 --- a/lib/src/global_providers/global_providers.g.dart +++ /dev/null @@ -1,113 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'global_providers.dart'; - -// ************************************************************************** -// RiverpodGenerator -// ************************************************************************** - -String _$dioClientKeyHash() => r'3c0bdf6561be103898cbba24855ca355c5dfba6b'; - -/// See also [dioClientKey]. -@ProviderFor(dioClientKey) -final dioClientKeyProvider = AutoDisposeProvider.internal( - dioClientKey, - name: r'dioClientKeyProvider', - debugGetCreateSourceHash: - const bool.fromEnvironment('dart.vm.product') ? null : _$dioClientKeyHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef DioClientKeyRef = AutoDisposeProviderRef; -String _$sharedPreferencesHash() => r'dd034076f3a6cac11ba173b2ebd1bd0debcadd42'; - -/// See also [sharedPreferences]. -@ProviderFor(sharedPreferences) -final sharedPreferencesProvider = - AutoDisposeProvider.internal( - sharedPreferences, - name: r'sharedPreferencesProvider', - debugGetCreateSourceHash: const bool.fromEnvironment('dart.vm.product') - ? null - : _$sharedPreferencesHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef SharedPreferencesRef = AutoDisposeProviderRef; -String _$appDirectoryHash() => r'598612365ff87cbdf65761e923161467412ec463'; - -/// See also [appDirectory]. -@ProviderFor(appDirectory) -final appDirectoryProvider = AutoDisposeProvider.internal( - appDirectory, - name: r'appDirectoryProvider', - debugGetCreateSourceHash: - const bool.fromEnvironment('dart.vm.product') ? null : _$appDirectoryHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef AppDirectoryRef = AutoDisposeProviderRef; -String _$hiveCacheStoreHash() => r'9b2759c40cc610a05bf24953b306f6dec44cb2e6'; - -/// See also [hiveCacheStore]. -@ProviderFor(hiveCacheStore) -final hiveCacheStoreProvider = AutoDisposeProvider.internal( - hiveCacheStore, - name: r'hiveCacheStoreProvider', - debugGetCreateSourceHash: const bool.fromEnvironment('dart.vm.product') - ? null - : _$hiveCacheStoreHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef HiveCacheStoreRef = AutoDisposeProviderRef; -String _$rateLimitQueueHash() => r'87eb09e4f32c2b26762db986f09e7788a4fd52bb'; - -/// See also [rateLimitQueue]. -@ProviderFor(rateLimitQueue) -final rateLimitQueueProvider = AutoDisposeProvider.internal( - rateLimitQueue, - name: r'rateLimitQueueProvider', - debugGetCreateSourceHash: const bool.fromEnvironment('dart.vm.product') - ? null - : _$rateLimitQueueHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef RateLimitQueueRef = AutoDisposeProviderRef; -String _$authTypeKeyHash() => r'8264b20583c2d0e3c9da5073ff1c13fda7e7fc34'; - -/// See also [AuthTypeKey]. -@ProviderFor(AuthTypeKey) -final authTypeKeyProvider = - AutoDisposeNotifierProvider.internal( - AuthTypeKey.new, - name: r'authTypeKeyProvider', - debugGetCreateSourceHash: - const bool.fromEnvironment('dart.vm.product') ? null : _$authTypeKeyHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef _$AuthTypeKey = AutoDisposeNotifier; -String _$l10nHash() => r'6a874a9412c7619bba907eebafcb828e7de350cf'; - -/// See also [L10n]. -@ProviderFor(L10n) -final l10nProvider = AutoDisposeNotifierProvider.internal( - L10n.new, - name: r'l10nProvider', - debugGetCreateSourceHash: - const bool.fromEnvironment('dart.vm.product') ? null : _$l10nHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef _$L10n = AutoDisposeNotifier; -// ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member diff --git a/lib/src/l10n/app_ar.arb b/lib/src/l10n/app_ar.arb deleted file mode 100644 index 47babc1a..00000000 --- a/lib/src/l10n/app_ar.arb +++ /dev/null @@ -1,854 +0,0 @@ -{ - "about": "حول", - "@about": { - "description": "Screen title and Button text of About screen" - }, - "addCategory": "إضافة فئة", - "@addCategory": { - "description": "Popup title and Button text to add new category in Edit Category Screen" - }, - "addToLibrary": "إضافة إلى المكتبة", - "@addToLibrary": { - "description": "Button text to add Manga to Library in Manga Details Screen" - }, - "appLanguage": "لغة التطبيق", - "@appLanguage": { - "description": "Popup title and Button text to change App Language" - }, - "appTheme": "مظهر التطبيق", - "@appTheme": { - "description": "Popup title and Button text to change App Theme" - }, - "appTitle": "تاشيديسك سورايومي", - "@appTitle": { - "description": "Name of the app (Tachidesk Sorayomi in native script)" - }, - "authType": "نوع المصادقة", - "@authType": { - "description": "Popup title and Button text to change App Authentication" - }, - "authTypeBasic": "مصادقة أساسية", - "@authTypeBasic": { - "description": "Radio button text for the Basic Authentication type" - }, - "authTypeNone": "بلا", - "@authTypeNone": { - "description": "Radio button text for no Authentication" - }, - "backup": "النسخ الاحتياطي و الاستعادة", - "@backup": { - "description": "Screen title and Button text of Backup & Restore screen" - }, - "badges": "الشارات", - "@badges": { - "description": "Checkbox Group title to enable Badges on manga Cover in Library Screen" - }, - "bookmarked": "لديها إشارات مرجعية", - "@bookmarked": { - "description": "Checkbox text to filter bookmarked manga chapters in Manga Details screen" - }, - "browse": "تصفح", - "@browse": { - "description": "Screen title, Navigation Bar text and Button text of both Browse screen and Browse Settings Screen" - }, - "buildTime": "تاريخ بناء الخادم", - "@buildTime": { - "description": "Text title to show build time of Server in About Screen" - }, - "cacheCleared": "تم تنظيف الملفات المؤقتة", - "@cacheCleared": { - "description": "Toast Text to show after clearing cache" - }, - "categories": "الفئات", - "@categories": { - "description": "Button text of edit Categories screen in Library settings screen" - }, - "categoryUpdate": "تحديث الفئة", - "@categoryUpdate": { - "description": "Button text to update the mangas in the Category" - }, - "chapterNumber": "الفصل {number}", - "@chapterNumber": { - "description": "Text title for Chapter name in chapter list", - "placeholders": { - "number": { - "example": "12.5", - "type": "double" - } - } - }, - "chapterSortFetchedDate": "حسب الموقع", - "@chapterSortFetchedDate": { - "description": "Radio button text for sort by Fetched Date" - }, - "chapterSortSource": "حسب المصدر", - "@chapterSortSource": { - "description": "Radio button text for sort by Source" - }, - "checkForServerUpdates": "تحقق من وجود تحديثات الخادم", - "@checkForServerUpdates": { - "description": "Button text to check for Server updates" - }, - "checkForUpdates": "تحقق من وجود تحديثات", - "@checkForUpdates": { - "description": "Button text to check for App Updates" - }, - "clearCache": "تنظيف الملفات المؤقتة", - "@clearCache": { - "description": "Button text for clear cache in General Settings screen" - }, - "client": "الوكيل", - "@client": { - "description": "Text title for the name of the client in About screen" - }, - "clientVersion": "إصدار الوكيل", - "@clientVersion": { - "description": "Text title for the current version of the client in About screen" - }, - "close": "إغلاق", - "@close": { - "description": "Text for close button" - }, - "completed": "مكتملة", - "@completed": { - "description": "Checkbox text to filter Completed mangas in Library screen and Manga Grouping text in Update Summary screen" - }, - "copyMsg": "'{msg}'‮ تم نسخ!", - "@copyMsg": { - "description": "Toast text to show that the message has been copied", - "placeholders": { - "msg": { - "example": "Client : Tachidesk Sorayomi", - "type": "String" - } - } - }, - "createBackupDescription": "النسخ الاحتياطي لمكتبة Tachidesk", - "@createBackupDescription": { - "description": "Button text description to create backup" - }, - "createBackupTitle": "إنشاء نسخة احتياطية", - "@createBackupTitle": { - "description": "Button text to create backup" - }, - "current": "الحالي", - "@current": { - "description": "Text to show the currently reading chapter in Reader Screen" - }, - "credentials": "الشهادات", - "@credentials": { - "description": "Popup title and Button text to enter Authentication credentials" - }, - "delete": "حذف", - "@delete": { - "description": "Text for delete button" - }, - "deleteCategoryDescription": "سيؤدي إلى دمج جميع المانجا في هذه الفئة إلى الافتراضية!", - "@deleteCategoryDescription": { - "description": "Popup description when deleting Category" - }, - "deleteCategoryTitle": "هل أنت متأكد؟", - "@deleteCategoryTitle": { - "description": "Popup title when deleting Category" - }, - "discord": "Discord", - "@discord": { - "description": "Discord app title" - }, - "display": "العرض", - "@display": { - "description": "Text for Display tab in Library screen drawer" - }, - "displayModeList": "قائمة", - "@displayModeList": { - "description": "Radio button text for Manga Cover display mode - List" - }, - "edit": "تعديل", - "@edit": { - "description": "Popup button text to edit Category in Edit category screen" - }, - "editCategory": "تعديل الفئة", - "@editCategory": { - "description": "Screen title, Button text and of Downloads screen" - }, - "emptyCategory": "لا يمكن أن يكون اسم الفئة فارغًا", - "@emptyCategory": { - "description": "Description to show that category list is empty in Edit Category screen" - }, - "errorFilePick": "لم يتم اختيار الملف!", - "@errorFilePick": { - "description": "Error Description to show when user does not selected an file" - }, - "errorFilePickUnknownExtension": "الرجاء تحديد ملف بالامتداد {extensionName}", - "@errorFilePickUnknownExtension": { - "description": "Error Description to show when user selected unknown extension file" - }, - "errorExtension": "تعذر العثور على الإضافة المحددة", - "@errorExtension": { - "description": "Error Description to show when user selected unknown extension from list" - }, - "errorPassword": "كلمة السر فارغة", - "@errorPassword": { - "description": "Error Description to show that password cannot be empty" - }, - "downloaded": "منزلة", - "@downloaded": { - "description": "Text to show downloaded chapters status in Filters " - }, - "downloads": "التنزيلات", - "@downloads": { - "description": "Screen title and Navigation text of Downloads screen" - }, - "errorSomethingWentWrong": "هناك خطأ ما!", - "@errorSomethingWentWrong": { - "description": "Error Description to show that Something went wrong!" - }, - "errorUserName": "اسم المستخدم فارغ", - "@errorUserName": { - "description": "Error Description to show that UserName cannot be empty" - }, - "extensionInstalled": "تم تحميل الإضافة!", - "@extensionInstalled": { - "description": "Toast text to show that the Extension Installed successfully" - }, - "extensionListEmpty": "قائمة الإضافات فارغة", - "@extensionListEmpty": { - "description": "Description to show that Extension list is empty in Extension list tab of Browse screen" - }, - "appearance": "المظهر", - "@appearance": { - "description": "Screen title and Button text of Appearance screen" - }, - "cancel": "إلغاء", - "@cancel": { - "description": "Text for Cancel button in a Popup" - }, - "channel": "النوع", - "@channel": { - "description": "Text title to show Channel of the Server (Stable, preview) in About Screen" - }, - "chapterSortUploadDate": "حسب تاريخ الإضافة", - "@chapterSortUploadDate": { - "description": "Radio button text for sort by Upload Date" - }, - "defaultCategory": "الفئة الافتراضية عند إضافة مانجا جديدة إلى المكتبة", - "@defaultCategory": { - "description": "Checkbox description when creating a Category to add manga to the Category by Default" - }, - "displayModeDescriptiveList": "قائمة وصفية", - "@displayModeDescriptiveList": { - "description": "Radio button text for Manga Cover display mode - Descriptive List" - }, - "displayMode": "وضع العرض", - "@displayMode": { - "description": "Radio Group title to change manga Cover display in Library and Source Screens" - }, - "displayModeGrid": "شبكة مدمجة", - "@displayModeGrid": { - "description": "Radio button text for Manga Cover display mode - Grid" - }, - "errorLaunchURL": "فشل في الفتح!\nنسخ \"{url}\" الى الحافظة", - "@errorLaunchURL": { - "description": "Error Description to show when App failed to launch an URL and copied the URL to clipboard", - "placeholders": { - "url": { - "example": "http://sorayomi.suwayomi.org", - "type": "String" - } - } - }, - "failed": "فشل", - "@failed": { - "description": "Failed status Manga Group title in Update Summary Screen" - }, - "extensions": "الإضافات", - "@extensions": { - "description": "Extension list Tab title in Browse Screen" - }, - "filter": "فرز", - "@filter": { - "description": "title of filter Tab across the app" - }, - "finished": "النهاية", - "@finished": { - "description": "Text to show the Currently Finished reading chapter in Reader Screen" - }, - "globalSearch": "البحث العام", - "@globalSearch": { - "description": "Screen title of Global Search screen" - }, - "globalUpdate": "تحديث الكل", - "@globalUpdate": { - "description": "Button text of Global Manga Update" - }, - "help": "مساعدة", - "@help": { - "description": "Button text of help in about screen" - }, - "inLibrary": "في المكتبة", - "@inLibrary": { - "description": "Button and Chip text to show that the manga is in Library" - }, - "library": "المكتبة", - "@library": { - "description": "Screen title and Button text of Library and Library Settings screen" - }, - "installingExtension": "جاري تحميل الاضافة", - "@installingExtension": { - "description": "Toast text to show that the extension is installing" - }, - "languages": "اللغات", - "@languages": { - "description": "Popup title to filter extensions based on language" - }, - "general": "عام", - "@general": { - "description": "Screen title and Button text of General setting screen" - }, - "installing": "جار التحميل", - "@installing": { - "description": "Button text to show that the extension is installing" - }, - "install": "تحميل", - "@install": { - "description": "Button text to install the extension" - }, - "latest": "الأخير", - "@latest": { - "description": "Button text to take user to the latest tab of Source manga screen" - }, - "noUpdatesAvailable": "أنت تستخدم أحدث إصدار", - "@noUpdatesAvailable": { - "description": "Text to show that the user is using the latest version of the app" - }, - "noUpdatesFound": "لم يتم العثور على تحديثات", - "@noUpdatesFound": { - "description": "Toast Text to show that there are no Updates available" - }, - "nsfw": "إظهار إضافات ومصادر NSFW", - "@nsfw": { - "description": "Switch text to show/hide the nsfw extensions" - }, - "noResultFound": "لم يتم العثور على نتائج", - "@noResultFound": { - "description": "Text to show that no results found for the given search query" - }, - "noSourcesFound": "لم يتم العثور على مصادر", - "@noSourcesFound": { - "description": "Text to show that the Source list is empty" - }, - "findServer": "ابحث", - "@findServer": { - "description": "Button text of Find Server" - }, - "manga": "مانجا", - "@manga": { - "description": "Screen title and Button text of Manga details screen" - }, - "mangaStatusCompleted": "مكتملة", - "@mangaStatusCompleted": { - "description": "Text to show Manga Status Completed in Manga details screen" - }, - "mangaGridSize": "حجم شبكة المانجا", - "@mangaGridSize": { - "description": "Popup title and Button text to change Manga Grid size" - }, - "mangaMissingSources": "مصادر المانجا المفقودة", - "@mangaMissingSources": { - "description": "Group title to show the Manga Missing Sources when restoring Backup" - }, - "mangaSortAlphabetical": "أبجدي", - "@mangaSortAlphabetical": { - "description": "Radio button text for Manga sort Type - Alphabetical" - }, - "mangaSortDateAdded": "تاريخ الإضافة", - "@mangaSortDateAdded": { - "description": "Radio button text for Manga sort Type - Date Added" - }, - "mangaSortUnread": "غير مقروء", - "@mangaSortUnread": { - "description": "Radio button text for Manga sort Type - Unread" - }, - "mangaSortLastRead": "آخر قراءة", - "@mangaSortLastRead": { - "description": "Radio button text for Manga sort Type - Last Read" - }, - "mangaStatusCancelled": "ألغيت", - "@mangaStatusCancelled": { - "description": "Text to show Manga Status Cancelled in Manga details screen" - }, - "mangaStatusLicensed": "مرخصة", - "@mangaStatusLicensed": { - "description": "Text to show Manga Status Licensed in Manga details screen" - }, - "mangaStatusOnHiatus": "في فترة توقف", - "@mangaStatusOnHiatus": { - "description": "Text to show Manga Status On Hiatus in Manga details screen" - }, - "mangaStatusOngoing": "مستمرة", - "@mangaStatusOngoing": { - "description": "Text to show Manga Status Ongoing in Manga details screen" - }, - "mangaStatusPublishingFinished": "انتهى النشر", - "@mangaStatusPublishingFinished": { - "description": "Text to show Manga Status Publishing Finished in Manga details screen" - }, - "mangaStatusUnknown": "غير معروف", - "@mangaStatusUnknown": { - "description": "Text to show Manga Status Unknown in Manga details screen" - }, - "missingExtension": "إضافات مفقودة", - "@missingExtension": { - "description": "Group title to show the Missing Extensions when restoring Backup" - }, - "missingTrackers": "التتبعات مفقودة", - "@missingTrackers": { - "description": "Group title to show the Missing Trackers when restoring Backup" - }, - "more": "أكثر", - "@more": { - "description": "Screen title and Navigation text of More screen" - }, - "moveToBottom": "الانتقال إلى أسفل", - "@moveToBottom": { - "description": "Button text to move download/category to the bottom of list" - }, - "moveToTop": "الانتقال إلى الأعلى", - "@moveToTop": { - "description": "Button text to move download/category to the top of list" - }, - "newUpdateAvailable": "تحديث جديد متاح", - "@newUpdateAvailable": { - "description": "Popup title to show that the App/Server has and update" - }, - "noCategoriesFound": "ليس لديك أي فئات. \n(نصيحة: اضغط على زر علامة الزائد لإنشاء فئة لتنظيم مكتبتك)", - "@noCategoriesFound": { - "description": "Hint text to add new Category when category list is empty" - }, - "noCategoriesFoundAlt": "ليس لديك أي فئات.\nقم بإنشاء فئة في الإعدادات لتنظيم مكتبتك", - "@noCategoriesFoundAlt": { - "description": "Hint text to add new Category in Settings when category list is empty" - }, - "noCategoryMangaFound": "لم يتم العثور على مانجا في هذه الفئة. \n(نصيحة: تحقق من البحث والفلاتر!)", - "@noCategoryMangaFound": { - "description": "Hint text to check filter when manga list is empty in Category tab in Library" - }, - "noChaptersFound": "لا يوجد فصول", - "@noChaptersFound": { - "description": "Text to show that the Chapter list is empty in Manga details Screen" - }, - "noDownloads": "لا يوجد تنزيلات", - "@noDownloads": { - "description": "Text to show that there is no active downloads in Downloads Screen" - }, - "noMangaFound": "لم يتم العثور على مانغا", - "@noMangaFound": { - "description": "Text to show that the Manga list is empty" - }, - "noOfChapters": "{count} فصل", - "@noOfChapters": { - "description": "Title text to show the number of chapters in the Manga details screen", - "placeholders": { - "count": { - "example": "23", - "type": "int" - } - } - }, - "noServerFound": "لا يوجد خادم في شبكتك المحلية", - "@noServerFound": { - "description": "Text to show that no Server found in locale network" - }, - "nsfw18": "18+", - "@nsfw18": { - "description": "18+ tag Text to show in extensions list" - }, - "numSelected": "المحددة {num}", - "@numSelected": { - "description": "Title text to show the number of chapters selected in the Manga details screen and Updates screen", - "placeholders": { - "num": { - "example": "23", - "type": "int" - } - } - }, - "nsfwInfo": "هذا لا يمنع الإضافات غير الرسمية أو التي يحتمل أن يتم وضع علامة عليها بشكل غير صحيح من الظهور على محتوى NSFW (18+) داخل التطبيق", - "@nsfwInfo": { - "description": "Hint text to show that the nsfw switch cannot prevent incorrectly flagged extensions from surfacing" - }, - "readerNavigationLayoutInvert": "بالنقر", - "@readerNavigationLayoutInvert": { - "description": "Switch title to invert Tap to scroll in reader screen" - }, - "readerScrollAnimation": "مؤثرات الانتقال بين الصفحات", - "@readerScrollAnimation": { - "description": "Switch title to Disable scroll animation in reader screen" - }, - "readerMagnifierSize": "حجم التكبير", - "@readerMagnifierSize": { - "description": "Slider title text for Reader Magnifier Size" - }, - "reddit": "Reddit", - "@reddit": { - "description": "Reddit app title" - }, - "refresh": "تحديث", - "@refresh": { - "description": "Refresh button text" - }, - "reset": "إعادة ضبط", - "@reset": { - "description": "Button text of reset button in source filters" - }, - "restoring": "جاري استعادة النسخة الاحتياطية", - "@restoring": { - "description": "Toast Text to show that the backup is restoring" - }, - "resume": "استأنف", - "@resume": { - "description": "Button Text to resume Chapter reading/downloading" - }, - "retry": "أعد المحاولة", - "@retry": { - "description": "Retry Button Text" - }, - "restored": "تمت استعادة النسخة الاحتياطية!", - "@restored": { - "description": "Toast Text to show that the backup has been restored" - }, - "serverVersion": "إصدار السيرفر", - "@serverVersion": { - "description": "Text title for the current version of the Server in About screen" - }, - "sort": "ترتيب", - "@sort": { - "description": "title of sort Tab across the app" - }, - "source": "المصدر", - "@source": { - "description": "Screen title and Button text of source screen" - }, - "settings": "الإعدادات", - "@settings": { - "description": "Screen title and Button text of Settings screen" - }, - "updates": "التحديثات", - "@updates": { - "description": "Screen title and Button text of Updates screen" - }, - "updatesSummary": "ملخص التحديثات", - "@updatesSummary": { - "description": "Screen title and Button text of Updates Summary screen" - }, - "unread": "غير مقروء", - "@unread": { - "description": "Checkbox text to unread bookmarked manga/chapters across app" - }, - "update": "تحديث", - "@update": { - "description": "Button text to update the extension" - }, - "updateCompleted": "اكتمل التحديث", - "@updateCompleted": { - "description": "Button text to show that extension update is completed" - }, - "gitHub": "GitHub", - "@gitHub": { - "description": "GitHub app title" - }, - "nameCountDisplay": "{name}: {count}", - "@nameCountDisplay": { - "description": "Text pattern to display an name and count in a string", - "placeholders": { - "name": { - "example": "Downloaded", - "type": "String" - }, - "count": { - "example": "22", - "type": "int" - } - } - }, - "readerModeContinuousVertical": "عمودي مستمر", - "@readerModeContinuousVertical": { - "description": "Radio button text for Reader Mode Type - Continuous Vertical" - }, - "obsolete": "قديمة", - "@obsolete": { - "description": "Text to show that the extension has become Obsolete" - }, - "page": "الصفحة: {number}", - "@page": { - "description": "Text to show the last read Page number of the chapter in Manga details screen", - "placeholders": { - "number": { - "example": "23", - "type": "int" - } - } - }, - "password": "كلمة المرور", - "@password": { - "description": "Title text for password field" - }, - "pause": "إيقاف", - "@pause": { - "description": "Button text to pause downloads" - }, - "pending": "في الانتظار", - "@pending": { - "description": "Pending status Manga Group title in Update Summary Screen" - }, - "reader": "القارئ", - "@reader": { - "description": "Screen title and Button text of Reader screen" - }, - "readerMode": "وضع القراءة", - "@readerMode": { - "description": "Popup title and Button text of Reader Mode popup" - }, - "readerModeDefaultReader": "الافتراضي", - "@readerModeDefaultReader": { - "description": "Radio button text for Reader Mode Type - Default" - }, - "readerModeContinuousHorizontalLTR": "افقي مستمر (من اليسار لليمين)", - "@readerModeContinuousHorizontalLTR": { - "description": "Radio button text for Reader Mode Type - Continuous Horizontal (LTR)" - }, - "readerModeContinuousHorizontalRTL": "افقي مستمر (من اليمين لليسار)", - "@readerModeContinuousHorizontalRTL": { - "description": "Radio button text for Reader Mode Type - Continuous Horizontal (RTL)" - }, - "readerModeSingleHorizontalLTR": "من اليسار لليمين", - "@readerModeSingleHorizontalLTR": { - "description": "Radio button text for Reader Mode Type - Single Horizontal (LTR)" - }, - "readerModeSingleHorizontalRTL": "من اليمين لليسار", - "@readerModeSingleHorizontalRTL": { - "description": "Radio button text for Reader Mode Type - Single Horizontal (RTL)" - }, - "readerModeSingleVertical": "عموديا", - "@readerModeSingleVertical": { - "description": "Radio button text for Reader Mode Type - Single Vertical" - }, - "readerModeWebtoon": "ويبتون", - "@readerModeWebtoon": { - "description": "Radio button text for Reader Mode Type - Webtoon" - }, - "readerNavigationLayout": "نوع الانتقال", - "@readerNavigationLayout": { - "description": "Popup title and Button text of Reader Navigation Layout popup" - }, - "readerNavigationLayoutDisabled": "تعطيل", - "@readerNavigationLayoutDisabled": { - "description": "Radio button text for Reader Navigation Layout - Disabled" - }, - "readerNavigationLayoutEdge": "في الحافة", - "@readerNavigationLayoutEdge": { - "description": "Radio button text for Reader Navigation Layout - Edge" - }, - "readerNavigationLayoutKindlish": "وضع الكيندل", - "@readerNavigationLayoutKindlish": { - "description": "Radio button text for Reader Navigation Layout - Kindle-ish" - }, - "readerNavigationLayoutDefault": "الافتراضي", - "@readerNavigationLayoutDefault": { - "description": "Radio button text for Reader Navigation Layout - Default" - }, - "readerNavigationLayoutLShaped": "شكل حرف L", - "@readerNavigationLayoutLShaped": { - "description": "Radio button text for Reader Navigation Layout - L Shaped" - }, - "readerNavigationLayoutRightAndLeft": "يمينا و يسارا", - "@readerNavigationLayoutRightAndLeft": { - "description": "Radio button text for Reader Navigation Layout - Right And Left" - }, - "running": "جاري", - "@running": { - "description": "Running status Manga Group title in Update Summary Screen" - }, - "save": "حفظ", - "@save": { - "description": "Save Button Text" - }, - "search": "البحث", - "@search": { - "description": "Search field hint Text" - }, - "searchingForUpdates": "البحث عن التحديثات", - "@searchingForUpdates": { - "description": "Toast Text for searching for updates of the App/Server" - }, - "server": "سيرفر", - "@server": { - "description": "Text title for the server in About screen" - }, - "serverUrl": "عنوان السيرفر", - "@serverUrl": { - "description": "Popup title and Button text to update Server Url" - }, - "serverUrlHintText": "أدخل عنوان السيرفر", - "@serverUrlHintText": { - "description": "Text Filed hint text to update Server Url" - }, - "serverPort": "منفذ السيرفر", - "@serverPort": { - "description": "Popup title and Button text to update Server Port" - }, - "serverPortHintText": "أدخل منفذ السيرفر", - "@serverPortHintText": { - "description": "Text Filed hint text to update Server Port" - }, - "sourceTypeFilter": "فرز", - "@sourceTypeFilter": { - "description": "Tab text Filter for source screen type" - }, - "sourceTypeLatest": "الحديثة", - "@sourceTypeLatest": { - "description": "Tab text Latest for source screen type" - }, - "sourceTypePopular": "الشائعة", - "@sourceTypePopular": { - "description": "Tab text Popular for source screen type" - }, - "sources": "المصادر", - "@sources": { - "description": "title of Sources Tab in Browse Screen" - }, - "start": "ابدأ", - "@start": { - "description": "Button text start reading the manga" - }, - "themeModeDark": "داكن", - "@themeModeDark": { - "description": "Radio button text for App theme - Dark" - }, - "themeModeLight": "فاتح", - "@themeModeLight": { - "description": "Radio button text for App theme - Light" - }, - "themeModeSystem": "النظام", - "@themeModeSystem": { - "description": "Radio button text for App theme - System" - }, - "uninstall": "إلغاء التثبيت", - "@uninstall": { - "description": "Button text to Uninstall the extension" - }, - "uninstalling": "جاري إلغاء التثبيت", - "@uninstalling": { - "description": "Button text to show that the extension is uninstalling" - }, - "unknownManga": "مانجا غير معروفة", - "@unknownManga": { - "description": "Text to show unknown manga in Manga details screen" - }, - "unknownSource": "المصدر مجهول", - "@unknownSource": { - "description": "Text to show unknown Source in Manga details screen" - }, - "updating": "جاري التحديث", - "@updating": { - "description": "Button text to show that the extension is updating" - }, - "userName": "اسم المستخدم", - "@userName": { - "description": "Title text for User Name field" - }, - "webUI": "فتح في المتصفح", - "@webUI": { - "description": "Button text to open in web UI" - }, - "webView": "عرض الويب", - "@webView": { - "description": "Button text to open manga website" - }, - "whatsNew": "ما الجديد؟", - "@whatsNew": { - "description": "Button text to open whats new page of app in web" - }, - "restoreBackupDescription": "استعادة Tachidesk من النسخة الاحتياطية", - "@restoreBackupDescription": { - "description": "Button text description to create backup" - }, - "restoreBackupTitle": "استعادة النسخة الاحتياطية", - "@restoreBackupTitle": { - "description": "Button text to create backup" - }, - "readerPadding": "ملاءمة القارىء", - "@readerPadding": { - "description": "Slider title text for Reader Padding" - }, - "unknownAuthor": "مؤلف مجهول", - "@unknownAuthor": { - "description": "Text to show unknown author in Manga details screen" - }, - "versionAvailable": "الإصدار {version} متاح لـ {app}!!", - "@versionAvailable": { - "description": "Text to show that there is an update to App/Server", - "placeholders": { - "app": { - "example": "Server", - "type": "String" - }, - "version": { - "example": "v0.4.2", - "type": "String" - } - } - }, - "quickSearchCategoryManga": "اذهب إلى المانجا 'M' في الفئة 'C'", - "@quickSearchCategoryManga": { - "description": "Quick Open Hint text for searching Manga M in Category C with prefill '#C/M'" - }, - "quickSearchSourceManga": "ابحث عن المانجا 'M' في المصدر 'S'", - "@quickSearchSourceManga": { - "description": "Quick Open Hint text for searching Manga M in Source S with prefill '@S/M'" - }, - "quickSearchCategoryMangaChapter": "انتقل إلى اسم الفصل 'CN' من المانجا 'M' في الفئة 'C'", - "@quickSearchCategoryMangaChapter": { - "description": "Quick Open Hint text for searching Chapter name CN from Manga M in Source S with prefill '#C/M:CN'" - }, - "scanlators": "فرق الترجمة", - "@scanlators": { - "description": "Title text for Scanlators" - }, - "allScanlators": "كل فرق الترجمة", - "@allScanlators": { - "description": "Text for all Scanlators in manga description screen chapter filter" - }, - "quickSearchContext": "للبحث عن استعلام (النتائج مبنية على معلومات الشاشة)", - "@quickSearchContext": { - "description": "Quick Open Hint text for query X" - }, - "quickSearchSource": "اذهب إلى المصدر 'S'", - "@quickSearchSource": { - "description": "Quick Open Hint text for Source S with prefill '@S'" - }, - "quickSearchCategory": "اذهب إلى الفئة 'C'", - "@quickSearchCategory": { - "description": "Quick Open Hint text for Category C with prefill '#C'" - }, - "today": "اليوم", - "@today": { - "description": "Today Text to show the release date of manga" - }, - "daysAgo": "منذ {days} أيام", - "@daysAgo": { - "description": "Days ago text to show the release date of manga" - }, - "yesterday": "أمس", - "@yesterday": { - "description": "Yesterday Text to show the release date of manga" - }, - "readerSwipeChapterToggle": "اسحب للانتقال", - "@readerSwipeChapterToggle": { - "description": "Switch title to toggle `swipe to change chapter` in reader screen" - }, - "readerSwipeChapterToggleDescription": "اسحب لتغير الفصل في القارئ", - "@readerSwipeChapterToggleDescription": { - "description": "Switch tile description for, toggle `swipe to change chapter` in reader screen" - } -} diff --git a/lib/src/l10n/app_de.arb b/lib/src/l10n/app_de.arb deleted file mode 100644 index 757189b8..00000000 --- a/lib/src/l10n/app_de.arb +++ /dev/null @@ -1,834 +0,0 @@ -{ - "library": "Bibltiotek", - "@library": { - "description": "Screen title and Button text of Library and Library Settings screen" - }, - "chapterSortUploadDate": "Nach Hochladedatum", - "@chapterSortUploadDate": { - "description": "Radio button text for sort by Upload Date" - }, - "client": "Endgerät", - "@client": { - "description": "Text title for the name of the client in About screen" - }, - "clientVersion": "Endgerät Version", - "@clientVersion": { - "description": "Text title for the current version of the client in About screen" - }, - "close": "Schließen", - "@close": { - "description": "Text for close button" - }, - "completed": "Abgeschlossen", - "@completed": { - "description": "Checkbox text to filter Completed mangas in Library screen and Manga Grouping text in Update Summary screen" - }, - "credentials": "Anmeldedaten", - "@credentials": { - "description": "Popup title and Button text to enter Authentication credentials" - }, - "current": "Aktuell", - "@current": { - "description": "Text to show the currently reading chapter in Reader Screen" - }, - "copyMsg": "'{msg}' kopiert!", - "@copyMsg": { - "description": "Toast text to show that the message has been copied", - "placeholders": { - "msg": { - "example": "Client : Tachidesk Sorayomi", - "type": "String" - } - } - }, - "createBackupDescription": "Bibliothek als Tachidesk backup sichern", - "@createBackupDescription": { - "description": "Button text description to create backup" - }, - "createBackupTitle": "Sicherung erstellen", - "@createBackupTitle": { - "description": "Button text to create backup" - }, - "delete": "Löschen", - "@delete": { - "description": "Text for delete button" - }, - "cacheCleared": "Zwischenspeicher geleert", - "@cacheCleared": { - "description": "Toast Text to show after clearing cache" - }, - "clearCache": "Zwischenspeicher leeren", - "@clearCache": { - "description": "Button text for clear cache in General Settings screen" - }, - "about": "Über", - "@about": { - "description": "Screen title and Button text of About screen" - }, - "addCategory": "Kategorie hinzufügen", - "@addCategory": { - "description": "Popup title and Button text to add new category in Edit Category Screen" - }, - "chapterNumber": "Kapitel {number}", - "@chapterNumber": { - "description": "Text title for Chapter name in chapter list", - "placeholders": { - "number": { - "example": "12.5", - "type": "double" - } - } - }, - "chapterSortFetchedDate": "Nach Abrufdatum", - "@chapterSortFetchedDate": { - "description": "Radio button text for sort by Fetched Date" - }, - "chapterSortSource": "Nach Quelle", - "@chapterSortSource": { - "description": "Radio button text for sort by Source" - }, - "checkForUpdates": "Nach Aktualisierungen suchen", - "@checkForUpdates": { - "description": "Button text to check for App Updates" - }, - "checkForServerUpdates": "Nach Serveraktualisierungen suchen", - "@checkForServerUpdates": { - "description": "Button text to check for Server updates" - }, - "addToLibrary": "Zur Bibliothek hinzufügen", - "@addToLibrary": { - "description": "Button text to add Manga to Library in Manga Details Screen" - }, - "appLanguage": "App Sprache", - "@appLanguage": { - "description": "Popup title and Button text to change App Language" - }, - "appTheme": "App Design", - "@appTheme": { - "description": "Popup title and Button text to change App Theme" - }, - "appTitle": "Tachidesk Sorayomi", - "@appTitle": { - "description": "Name of the app (Tachidesk Sorayomi in native script)" - }, - "appearance": "Aussehen", - "@appearance": { - "description": "Screen title and Button text of Appearance screen" - }, - "authType": "Authentifizierungsart", - "@authType": { - "description": "Popup title and Button text to change App Authentication" - }, - "authTypeBasic": "Basic Auth", - "@authTypeBasic": { - "description": "Radio button text for the Basic Authentication type" - }, - "authTypeNone": "Keine", - "@authTypeNone": { - "description": "Radio button text for no Authentication" - }, - "backup": "Sichern und wiederherstellen", - "@backup": { - "description": "Screen title and Button text of Backup & Restore screen" - }, - "badges": "Indikatoren", - "@badges": { - "description": "Checkbox Group title to enable Badges on manga Cover in Library Screen" - }, - "bookmarked": "Hat Lesezeichen", - "@bookmarked": { - "description": "Checkbox text to filter bookmarked manga chapters in Manga Details screen" - }, - "browse": "Suchen", - "@browse": { - "description": "Screen title, Navigation Bar text and Button text of both Browse screen and Browse Settings Screen" - }, - "buildTime": "Build time", - "@buildTime": { - "description": "Text title to show build time of Server in About Screen" - }, - "cancel": "Abbrechen", - "@cancel": { - "description": "Text for Cancel button in a Popup" - }, - "categories": "Kategorien", - "@categories": { - "description": "Button text of edit Categories screen in Library settings screen" - }, - "categoryUpdate": "Kategorie aktualisierung", - "@categoryUpdate": { - "description": "Button text to update the mangas in the Category" - }, - "channel": "Kanal", - "@channel": { - "description": "Text title to show Channel of the Server (Stable, preview) in About Screen" - }, - "defaultCategory": "Standard Kategorie, wenn neue Manga zur Bibliothek hinzugefügt werden", - "@defaultCategory": { - "description": "Checkbox description when creating a Category to add manga to the Category by Default" - }, - "readerPadding": "", - "@readerPadding": { - "description": "Slider title text for Reader Padding" - }, - "refresh": "", - "@refresh": { - "description": "Refresh button text" - }, - "retry": "", - "@retry": { - "description": "Retry Button Text" - }, - "running": "", - "@running": { - "description": "Running status Manga Group title in Update Summary Screen" - }, - "save": "", - "@save": { - "description": "Save Button Text" - }, - "search": "", - "@search": { - "description": "Search field hint Text" - }, - "sourceTypeFilter": "", - "@sourceTypeFilter": { - "description": "Tab text Filter for source screen type" - }, - "sourceTypeLatest": "", - "@sourceTypeLatest": { - "description": "Tab text Latest for source screen type" - }, - "sourceTypePopular": "", - "@sourceTypePopular": { - "description": "Tab text Popular for source screen type" - }, - "sources": "", - "@sources": { - "description": "title of Sources Tab in Browse Screen" - }, - "start": "", - "@start": { - "description": "Button text start reading the manga" - }, - "themeModeDark": "", - "@themeModeDark": { - "description": "Radio button text for App theme - Dark" - }, - "themeModeLight": "", - "@themeModeLight": { - "description": "Radio button text for App theme - Light" - }, - "themeModeSystem": "", - "@themeModeSystem": { - "description": "Radio button text for App theme - System" - }, - "uninstall": "", - "@uninstall": { - "description": "Button text to Uninstall the extension" - }, - "uninstalling": "", - "@uninstalling": { - "description": "Button text to show that the extension is uninstalling" - }, - "unknownAuthor": "", - "@unknownAuthor": { - "description": "Text to show unknown author in Manga details screen" - }, - "unknownManga": "", - "@unknownManga": { - "description": "Text to show unknown manga in Manga details screen" - }, - "unknownSource": "", - "@unknownSource": { - "description": "Text to show unknown Source in Manga details screen" - }, - "updates": "", - "@updates": { - "description": "Screen title and Button text of Updates screen" - }, - "updatesSummary": "", - "@updatesSummary": { - "description": "Screen title and Button text of Updates Summary screen" - }, - "updating": "", - "@updating": { - "description": "Button text to show that the extension is updating" - }, - "userName": "", - "@userName": { - "description": "Title text for User Name field" - }, - "versionAvailable": "", - "@versionAvailable": { - "description": "Text to show that there is an update to App/Server", - "placeholders": { - "app": { - "example": "Server", - "type": "String" - }, - "version": { - "example": "v0.4.2", - "type": "String" - } - } - }, - "downloads": "", - "@downloads": { - "description": "Screen title and Navigation text of Downloads screen" - }, - "errorPassword": "", - "@errorPassword": { - "description": "Error Description to show that password cannot be empty" - }, - "general": "", - "@general": { - "description": "Screen title and Button text of General setting screen" - }, - "gitHub": "", - "@gitHub": { - "description": "GitHub app title" - }, - "globalSearch": "", - "@globalSearch": { - "description": "Screen title of Global Search screen" - }, - "latest": "", - "@latest": { - "description": "Button text to take user to the latest tab of Source manga screen" - }, - "noCategoriesFoundAlt": "", - "@noCategoriesFoundAlt": { - "description": "Hint text to add new Category in Settings when category list is empty" - }, - "noCategoryMangaFound": "", - "@noCategoryMangaFound": { - "description": "Hint text to check filter when manga list is empty in Category tab in Library" - }, - "noUpdatesFound": "", - "@noUpdatesFound": { - "description": "Toast Text to show that there are no Updates available" - }, - "nsfw": "", - "@nsfw": { - "description": "Switch text to show/hide the nsfw extensions" - }, - "mangaSortDateAdded": "", - "@mangaSortDateAdded": { - "description": "Radio button text for Manga sort Type - Date Added" - }, - "noChaptersFound": "", - "@noChaptersFound": { - "description": "Text to show that the Chapter list is empty in Manga details Screen" - }, - "noDownloads": "", - "@noDownloads": { - "description": "Text to show that there is no active downloads in Downloads Screen" - }, - "noMangaFound": "", - "@noMangaFound": { - "description": "Text to show that the Manga list is empty" - }, - "noOfChapters": "", - "@noOfChapters": { - "description": "Title text to show the number of chapters in the Manga details screen", - "placeholders": { - "count": { - "example": "23", - "type": "int" - } - } - }, - "noResultFound": "", - "@noResultFound": { - "description": "Text to show that no results found for the given search query" - }, - "readerNavigationLayoutKindlish": "", - "@readerNavigationLayoutKindlish": { - "description": "Radio button text for Reader Navigation Layout - Kindle-ish" - }, - "quickSearchCategoryMangaChapter": "", - "@quickSearchCategoryMangaChapter": { - "description": "Quick Open Hint text for searching Chapter name CN from Manga M in Source S with prefill '#C/M:CN'" - }, - "allScanlators": "", - "@allScanlators": { - "description": "Text for all Scanlators in manga description screen chapter filter" - }, - "noCategoriesFound": "", - "@noCategoriesFound": { - "description": "Hint text to add new Category when category list is empty" - }, - "errorFilePickUnknownExtension": "", - "@errorFilePickUnknownExtension": { - "description": "Error Description to show when user selected unknown extension file" - }, - "readerScrollAnimation": "", - "@readerScrollAnimation": { - "description": "Switch title to Disable scroll animation in reader screen" - }, - "mangaMissingSources": "", - "@mangaMissingSources": { - "description": "Group title to show the Manga Missing Sources when restoring Backup" - }, - "mangaSortUnread": "", - "@mangaSortUnread": { - "description": "Radio button text for Manga sort Type - Unread" - }, - "emptyCategory": "", - "@emptyCategory": { - "description": "Description to show that category list is empty in Edit Category screen" - }, - "readerModeSingleHorizontalLTR": "", - "@readerModeSingleHorizontalLTR": { - "description": "Radio button text for Reader Mode Type - Single Horizontal (LTR)" - }, - "readerModeContinuousHorizontalRTL": "", - "@readerModeContinuousHorizontalRTL": { - "description": "Radio button text for Reader Mode Type - Continuous Horizontal (RTL)" - }, - "deleteCategoryDescription": "", - "@deleteCategoryDescription": { - "description": "Popup description when deleting Category" - }, - "languages": "", - "@languages": { - "description": "Popup title to filter extensions based on language" - }, - "mangaGridSize": "", - "@mangaGridSize": { - "description": "Popup title and Button text to change Manga Grid size" - }, - "installing": "", - "@installing": { - "description": "Button text to show that the extension is installing" - }, - "quickSearchContext": "", - "@quickSearchContext": { - "description": "Quick Open Hint text for query X" - }, - "inLibrary": "", - "@inLibrary": { - "description": "Button and Chip text to show that the manga is in Library" - }, - "readerModeSingleVertical": "", - "@readerModeSingleVertical": { - "description": "Radio button text for Reader Mode Type - Single Vertical" - }, - "manga": "", - "@manga": { - "description": "Screen title and Button text of Manga details screen" - }, - "edit": "", - "@edit": { - "description": "Popup button text to edit Category in Edit category screen" - }, - "quickSearchSource": "", - "@quickSearchSource": { - "description": "Quick Open Hint text for Source S with prefill '@S'" - }, - "readerNavigationLayoutLShaped": "", - "@readerNavigationLayoutLShaped": { - "description": "Radio button text for Reader Navigation Layout - L Shaped" - }, - "readerModeContinuousHorizontalLTR": "", - "@readerModeContinuousHorizontalLTR": { - "description": "Radio button text for Reader Mode Type - Continuous Horizontal (LTR)" - }, - "downloaded": "", - "@downloaded": { - "description": "Text to show downloaded chapters status in Filters " - }, - "mangaSortAlphabetical": "", - "@mangaSortAlphabetical": { - "description": "Radio button text for Manga sort Type - Alphabetical" - }, - "install": "", - "@install": { - "description": "Button text to install the extension" - }, - "readerNavigationLayout": "", - "@readerNavigationLayout": { - "description": "Popup title and Button text of Reader Navigation Layout popup" - }, - "errorExtension": "", - "@errorExtension": { - "description": "Error Description to show when user selected unknown extension from list" - }, - "quickSearchCategory": "", - "@quickSearchCategory": { - "description": "Quick Open Hint text for Category C with prefill '#C'" - }, - "errorUserName": "", - "@errorUserName": { - "description": "Error Description to show that UserName cannot be empty" - }, - "extensionInstalled": "", - "@extensionInstalled": { - "description": "Toast text to show that the Extension Installed successfully" - }, - "finished": "", - "@finished": { - "description": "Text to show the Currently Finished reading chapter in Reader Screen" - }, - "readerModeSingleHorizontalRTL": "", - "@readerModeSingleHorizontalRTL": { - "description": "Radio button text for Reader Mode Type - Single Horizontal (RTL)" - }, - "readerNavigationLayoutEdge": "", - "@readerNavigationLayoutEdge": { - "description": "Radio button text for Reader Navigation Layout - Edge" - }, - "noUpdatesAvailable": "", - "@noUpdatesAvailable": { - "description": "Text to show that the user is using the latest version of the app" - }, - "quickSearchSourceManga": "", - "@quickSearchSourceManga": { - "description": "Quick Open Hint text for searching Manga M in Source S with prefill '@S/M'" - }, - "editCategory": "", - "@editCategory": { - "description": "Screen title, Button text and of Downloads screen" - }, - "noServerFound": "", - "@noServerFound": { - "description": "Text to show that no Server found in locale network" - }, - "readerNavigationLayoutInvert": "", - "@readerNavigationLayoutInvert": { - "description": "Switch title to invert Tap to scroll in reader screen" - }, - "nsfw18": "", - "@nsfw18": { - "description": "18+ tag Text to show in extensions list" - }, - "mangaStatusCompleted": "", - "@mangaStatusCompleted": { - "description": "Text to show Manga Status Completed in Manga details screen" - }, - "quickSearchCategoryManga": "", - "@quickSearchCategoryManga": { - "description": "Quick Open Hint text for searching Manga M in Category C with prefill '#C/M'" - }, - "deleteCategoryTitle": "", - "@deleteCategoryTitle": { - "description": "Popup title when deleting Category" - }, - "readerNavigationLayoutDisabled": "", - "@readerNavigationLayoutDisabled": { - "description": "Radio button text for Reader Navigation Layout - Disabled" - }, - "mangaSortLastRead": "", - "@mangaSortLastRead": { - "description": "Radio button text for Manga sort Type - Last Read" - }, - "mangaStatusCancelled": "", - "@mangaStatusCancelled": { - "description": "Text to show Manga Status Cancelled in Manga details screen" - }, - "noSourcesFound": "", - "@noSourcesFound": { - "description": "Text to show that the Source list is empty" - }, - "readerNavigationLayoutDefault": "", - "@readerNavigationLayoutDefault": { - "description": "Radio button text for Reader Navigation Layout - Default" - }, - "errorSomethingWentWrong": "", - "@errorSomethingWentWrong": { - "description": "Error Description to show that Something went wrong!" - }, - "scanlators": "", - "@scanlators": { - "description": "Title text for Scanlators" - }, - "errorFilePick": "", - "@errorFilePick": { - "description": "Error Description to show when user does not selected an file" - }, - "nameCountDisplay": "", - "@nameCountDisplay": { - "description": "Text pattern to display an name and count in a string", - "placeholders": { - "name": { - "example": "Downloaded", - "type": "String" - }, - "count": { - "example": "22", - "type": "int" - } - } - }, - "readerModeContinuousVertical": "", - "@readerModeContinuousVertical": { - "description": "Radio button text for Reader Mode Type - Continuous Vertical" - }, - "errorLaunchURL": "", - "@errorLaunchURL": { - "description": "Error Description to show when App failed to launch an URL and copied the URL to clipboard", - "placeholders": { - "url": { - "example": "http://sorayomi.suwayomi.org", - "type": "String" - } - } - }, - "globalUpdate": "", - "@globalUpdate": { - "description": "Button text of Global Manga Update" - }, - "installingExtension": "", - "@installingExtension": { - "description": "Toast text to show that the extension is installing" - }, - "readerModeWebtoon": "", - "@readerModeWebtoon": { - "description": "Radio button text for Reader Mode Type - Webtoon" - }, - "failed": "", - "@failed": { - "description": "Failed status Manga Group title in Update Summary Screen" - }, - "readerModeDefaultReader": "", - "@readerModeDefaultReader": { - "description": "Radio button text for Reader Mode Type - Default" - }, - "update": "", - "@update": { - "description": "Button text to update the extension" - }, - "resume": "", - "@resume": { - "description": "Button Text to resume Chapter reading/downloading" - }, - "findServer": "", - "@findServer": { - "description": "Button text of Find Server" - }, - "help": "", - "@help": { - "description": "Button text of help in about screen" - }, - "readerNavigationLayoutRightAndLeft": "", - "@readerNavigationLayoutRightAndLeft": { - "description": "Radio button text for Reader Navigation Layout - Right And Left" - }, - "readerMagnifierSize": "", - "@readerMagnifierSize": { - "description": "Slider title text for Reader Magnifier Size" - }, - "reset": "", - "@reset": { - "description": "Button text of reset button in source filters" - }, - "restoreBackupDescription": "", - "@restoreBackupDescription": { - "description": "Button text description to create backup" - }, - "restoreBackupTitle": "", - "@restoreBackupTitle": { - "description": "Button text to create backup" - }, - "restored": "", - "@restored": { - "description": "Toast Text to show that the backup has been restored" - }, - "restoring": "", - "@restoring": { - "description": "Toast Text to show that the backup is restoring" - }, - "serverPort": "", - "@serverPort": { - "description": "Popup title and Button text to update Server Port" - }, - "serverPortHintText": "", - "@serverPortHintText": { - "description": "Text Filed hint text to update Server Port" - }, - "source": "", - "@source": { - "description": "Screen title and Button text of source screen" - }, - "unread": "", - "@unread": { - "description": "Checkbox text to unread bookmarked manga/chapters across app" - }, - "updateCompleted": "", - "@updateCompleted": { - "description": "Button text to show that extension update is completed" - }, - "discord": "", - "@discord": { - "description": "Discord app title" - }, - "display": "", - "@display": { - "description": "Text for Display tab in Library screen drawer" - }, - "displayMode": "", - "@displayMode": { - "description": "Radio Group title to change manga Cover display in Library and Source Screens" - }, - "displayModeDescriptiveList": "", - "@displayModeDescriptiveList": { - "description": "Radio button text for Manga Cover display mode - Descriptive List" - }, - "displayModeGrid": "", - "@displayModeGrid": { - "description": "Radio button text for Manga Cover display mode - Grid" - }, - "displayModeList": "", - "@displayModeList": { - "description": "Radio button text for Manga Cover display mode - List" - }, - "extensionListEmpty": "", - "@extensionListEmpty": { - "description": "Description to show that Extension list is empty in Extension list tab of Browse screen" - }, - "extensions": "", - "@extensions": { - "description": "Extension list Tab title in Browse Screen" - }, - "filter": "", - "@filter": { - "description": "title of filter Tab across the app" - }, - "mangaStatusLicensed": "", - "@mangaStatusLicensed": { - "description": "Text to show Manga Status Licensed in Manga details screen" - }, - "mangaStatusOnHiatus": "", - "@mangaStatusOnHiatus": { - "description": "Text to show Manga Status On Hiatus in Manga details screen" - }, - "mangaStatusOngoing": "", - "@mangaStatusOngoing": { - "description": "Text to show Manga Status Ongoing in Manga details screen" - }, - "mangaStatusPublishingFinished": "", - "@mangaStatusPublishingFinished": { - "description": "Text to show Manga Status Publishing Finished in Manga details screen" - }, - "mangaStatusUnknown": "", - "@mangaStatusUnknown": { - "description": "Text to show Manga Status Unknown in Manga details screen" - }, - "missingExtension": "", - "@missingExtension": { - "description": "Group title to show the Missing Extensions when restoring Backup" - }, - "missingTrackers": "", - "@missingTrackers": { - "description": "Group title to show the Missing Trackers when restoring Backup" - }, - "more": "", - "@more": { - "description": "Screen title and Navigation text of More screen" - }, - "moveToBottom": "", - "@moveToBottom": { - "description": "Button text to move download/category to the bottom of list" - }, - "moveToTop": "", - "@moveToTop": { - "description": "Button text to move download/category to the top of list" - }, - "newUpdateAvailable": "", - "@newUpdateAvailable": { - "description": "Popup title to show that the App/Server has and update" - }, - "nsfwInfo": "", - "@nsfwInfo": { - "description": "Hint text to show that the nsfw switch cannot prevent incorrectly flagged extensions from surfacing" - }, - "numSelected": "", - "@numSelected": { - "description": "Title text to show the number of chapters selected in the Manga details screen and Updates screen", - "placeholders": { - "num": { - "example": "23", - "type": "int" - } - } - }, - "obsolete": "", - "@obsolete": { - "description": "Text to show that the extension has become Obsolete" - }, - "page": "", - "@page": { - "description": "Text to show the last read Page number of the chapter in Manga details screen", - "placeholders": { - "number": { - "example": "23", - "type": "int" - } - } - }, - "password": "", - "@password": { - "description": "Title text for password field" - }, - "pause": "", - "@pause": { - "description": "Button text to pause downloads" - }, - "pending": "", - "@pending": { - "description": "Pending status Manga Group title in Update Summary Screen" - }, - "reader": "", - "@reader": { - "description": "Screen title and Button text of Reader screen" - }, - "readerMode": "", - "@readerMode": { - "description": "Popup title and Button text of Reader Mode popup" - }, - "reddit": "", - "@reddit": { - "description": "Reddit app title" - }, - "serverUrlHintText": "", - "@serverUrlHintText": { - "description": "Text Filed hint text to update Server Url" - }, - "searchingForUpdates": "", - "@searchingForUpdates": { - "description": "Toast Text for searching for updates of the App/Server" - }, - "server": "", - "@server": { - "description": "Text title for the server in About screen" - }, - "serverUrl": "", - "@serverUrl": { - "description": "Popup title and Button text to update Server Url" - }, - "serverVersion": "", - "@serverVersion": { - "description": "Text title for the current version of the Server in About screen" - }, - "settings": "", - "@settings": { - "description": "Screen title and Button text of Settings screen" - }, - "sort": "", - "@sort": { - "description": "title of sort Tab across the app" - }, - "webUI": "", - "@webUI": { - "description": "Button text to open in web UI" - }, - "webView": "", - "@webView": { - "description": "Button text to open manga website" - }, - "whatsNew": "", - "@whatsNew": { - "description": "Button text to open whats new page of app in web" - } -} diff --git a/lib/src/l10n/app_en.arb b/lib/src/l10n/app_en.arb deleted file mode 100644 index 41263e96..00000000 --- a/lib/src/l10n/app_en.arb +++ /dev/null @@ -1,911 +0,0 @@ -{ - "@@locale": "en", - "@about": { - "description": "Screen title and Button text of About screen" - }, - "@addCategory": { - "description": "Popup title and Button text to add new category in Edit Category Screen" - }, - "@addToLibrary": { - "description": "Button text to add Manga to Library in Manga Details Screen" - }, - "@allScanlators": { - "description": "Text for all Scanlators in manga description screen chapter filter" - }, - "@appLanguage": { - "description": "Popup title and Button text to change App Language" - }, - "@appTheme": { - "description": "Popup title and Button text to change App Theme" - }, - "@appTitle": { - "description": "Name of the app (Tachidesk Sorayomi in native script)" - }, - "@appearance": { - "description": "Screen title and Button text of Appearance screen" - }, - "@authType": { - "description": "Popup title and Button text to change App Authentication" - }, - "@authTypeBasic": { - "description": "Radio button text for the Basic Authentication type" - }, - "@authTypeNone": { - "description": "Radio button text for no Authentication" - }, - "@backup": { - "description": "Screen title and Button text of Backup & Restore screen" - }, - "@badges": { - "description": "Checkbox Group title to enable Badges on manga Cover in Library Screen" - }, - "@bookmarked": { - "description": "Checkbox text to filter bookmarked manga chapters in Manga Details screen" - }, - "@browse": { - "description": "Screen title, Navigation Bar text and Button text of both Browse screen and Browse Settings Screen" - }, - "@buildTime": { - "description": "Text title to show build time of Server in About Screen" - }, - "@cacheCleared": { - "description": "Toast Text to show after clearing cache" - }, - "@cancel": { - "description": "Text for Cancel button in a Popup" - }, - "@categories": { - "description": "Button text of edit Categories screen in Library settings screen" - }, - "@categoryUpdate": { - "description": "Button text to update the mangas in the Category" - }, - "@channel": { - "description": "Text title to show Channel of the Server (Stable, preview) in About Screen" - }, - "@chapterNumber": { - "description": "Text title for Chapter name in chapter list", - "placeholders": { - "number": { - "example": "12.5", - "type": "double" - } - } - }, - "@chapterSortFetchedDate": { - "description": "Radio button text for sort by Fetched Date" - }, - "@chapterSortSource": { - "description": "Radio button text for sort by Source" - }, - "@chapterSortUploadDate": { - "description": "Radio button text for sort by Upload Date" - }, - "@checkForServerUpdates": { - "description": "Button text to check for Server updates" - }, - "@checkForUpdates": { - "description": "Button text to check for App Updates" - }, - "@clearCache": { - "description": "Button text for clear cache in General Settings screen" - }, - "@client": { - "description": "Text title for the name of the client in About screen" - }, - "@clientVersion": { - "description": "Text title for the current version of the client in About screen" - }, - "@close": { - "description": "Text for close button" - }, - "@completed": { - "description": "Checkbox text to filter Completed mangas in Library screen and Manga Grouping text in Update Summary screen" - }, - "@copyMsg": { - "description": "Toast text to show that the message has been copied", - "placeholders": { - "msg": { - "example": "Client : Tachidesk Sorayomi", - "type": "String" - } - } - }, - "@createBackupDescription": { - "description": "Button text description to create backup" - }, - "@createBackupTitle": { - "description": "Button text to create backup" - }, - "@credentials": { - "description": "Popup title and Button text to enter Authentication credentials" - }, - "@current": { - "description": "Text to show the currently reading chapter in Reader Screen" - }, - "@daysAgo": { - "description": "Days ago text to show the release date of manga" - }, - "@defaultCategory": { - "description": "Checkbox description when creating a Category to add manga to the Category by Default" - }, - "@delete": { - "description": "Text for delete button" - }, - "@deleteCategoryDescription": { - "description": "Popup description when deleting Category" - }, - "@deleteCategoryTitle": { - "description": "Popup title when deleting Category" - }, - "@discord": { - "description": "Discord app title" - }, - "@display": { - "description": "Text for Display tab in Library screen drawer" - }, - "@displayMode": { - "description": "Radio Group title to change manga Cover display in Library and Source Screens" - }, - "@displayModeDescriptiveList": { - "description": "Radio button text for Manga Cover display mode - Descriptive List" - }, - "@displayModeGrid": { - "description": "Radio button text for Manga Cover display mode - Grid" - }, - "@displayModeList": { - "description": "Radio button text for Manga Cover display mode - List" - }, - "@downloaded": { - "description": "Text to show downloaded chapters status in Filters " - }, - "@downloads": { - "description": "Screen title and Navigation text of Downloads screen" - }, - "@edit": { - "description": "Popup button text to edit Category in Edit category screen" - }, - "@editCategory": { - "description": "Screen title, Button text and of Downloads screen" - }, - "@emptyCategory": { - "description": "Description to show that category list is empty in Edit Category screen" - }, - "@errorExtension": { - "description": "Error Description to show when user selected unknown extension from list" - }, - "@errorFilePick": { - "description": "Error Description to show when user does not selected an file" - }, - "@errorFilePickUnknownExtension": { - "description": "Error Description to show when user selected unknown extension file" - }, - "@errorLaunchURL": { - "description": "Error Description to show when App failed to launch an URL and copied the URL to clipboard", - "placeholders": { - "url": { - "example": "http://sorayomi.suwayomi.org", - "type": "String" - } - } - }, - "@errorPassword": { - "description": "Error Description to show that password cannot be empty" - }, - "@errorSomethingWentWrong": { - "description": "Error Description to show that Something went wrong!" - }, - "@errorUserName": { - "description": "Error Description to show that UserName cannot be empty" - }, - "@extensionInstalled": { - "description": "Toast text to show that the Extension Installed successfully" - }, - "@extensionListEmpty": { - "description": "Description to show that Extension list is empty in Extension list tab of Browse screen" - }, - "@extensions": { - "description": "Extension list Tab title in Browse Screen" - }, - "@failed": { - "description": "Failed status Manga Group title in Update Summary Screen" - }, - "@filter": { - "description": "title of filter Tab across the app" - }, - "@findServer": { - "description": "Button text of Find Server" - }, - "@finished": { - "description": "Text to show the Currently Finished reading chapter in Reader Screen" - }, - "@general": { - "description": "Screen title and Button text of General setting screen" - }, - "@gitHub": { - "description": "GitHub app title" - }, - "@globalSearch": { - "description": "Screen title of Global Search screen" - }, - "@globalUpdate": { - "description": "Button text of Global Manga Update" - }, - "@help": { - "description": "Button text of help in about screen" - }, - "@inLibrary": { - "description": "Button and Chip text to show that the manga is in Library" - }, - "@install": { - "description": "Button text to install the extension" - }, - "@installing": { - "description": "Button text to show that the extension is installing" - }, - "@installingExtension": { - "description": "Toast text to show that the extension is installing" - }, - "@languages": { - "description": "Popup title to filter extensions based on language" - }, - "@latest": { - "description": "Button text to take user to the latest tab of Source manga screen" - }, - "@library": { - "description": "Screen title and Button text of Library and Library Settings screen" - }, - "@manga": { - "description": "Screen title and Button text of Manga details screen" - }, - "@mangaGridSize": { - "description": "Popup title and Button text to change Manga Grid size" - }, - "@mangaMissingSources": { - "description": "Group title to show the Manga Missing Sources when restoring Backup" - }, - "@mangaSortAlphabetical": { - "description": "Radio button text for Manga sort Type - Alphabetical" - }, - "@mangaSortDateAdded": { - "description": "Radio button text for Manga sort Type - Date Added" - }, - "@mangaSortUnread": { - "description": "Radio button text for Manga sort Type - Unread" - }, - "@mangaSortLastRead": { - "description": "Radio button text for Manga sort Type - Last Read" - }, - "@mangaStatusCancelled": { - "description": "Text to show Manga Status Cancelled in Manga details screen" - }, - "@mangaStatusCompleted": { - "description": "Text to show Manga Status Completed in Manga details screen" - }, - "@mangaStatusLicensed": { - "description": "Text to show Manga Status Licensed in Manga details screen" - }, - "@mangaStatusOnHiatus": { - "description": "Text to show Manga Status On Hiatus in Manga details screen" - }, - "@mangaStatusOngoing": { - "description": "Text to show Manga Status Ongoing in Manga details screen" - }, - "@mangaStatusPublishingFinished": { - "description": "Text to show Manga Status Publishing Finished in Manga details screen" - }, - "@mangaStatusUnknown": { - "description": "Text to show Manga Status Unknown in Manga details screen" - }, - "@missingExtension": { - "description": "Group title to show the Missing Extensions when restoring Backup" - }, - "@missingTrackers": { - "description": "Group title to show the Missing Trackers when restoring Backup" - }, - "@more": { - "description": "Screen title and Navigation text of More screen" - }, - "@moveToBottom": { - "description": "Button text to move download/category to the bottom of list" - }, - "@moveToTop": { - "description": "Button text to move download/category to the top of list" - }, - "@nameCountDisplay": { - "description": "Text pattern to display an name and count in a string", - "placeholders": { - "name": { - "example": "Downloaded", - "type": "String" - }, - "count": { - "example": "22", - "type": "int" - } - } - }, - "@nextChapter": { - "description": "Text for Next Chapter button in Manga Reader Screen" - }, - "@newUpdateAvailable": { - "description": "Popup title to show that the App/Server has and update" - }, - "@noCategoriesFound": { - "description": "Hint text to add new Category when category list is empty" - }, - "@noCategoriesFoundAlt": { - "description": "Hint text to add new Category in Settings when category list is empty" - }, - "@noCategoryMangaFound": { - "description": "Hint text to check filter when manga list is empty in Category tab in Library" - }, - "@noChaptersFound": { - "description": "Text to show that the Chapter list is empty in Manga details Screen" - }, - "@noDownloads": { - "description": "Text to show that there is no active downloads in Downloads Screen" - }, - "@noMangaFound": { - "description": "Text to show that the Manga list is empty" - }, - "@noOfChapters": { - "description": "Title text to show the number of chapters in the Manga details screen", - "placeholders": { - "count": { - "example": "23", - "type": "int" - } - } - }, - "@noResultFound": { - "description": "Text to show that no results found for the given search query" - }, - "@noServerFound": { - "description": "Text to show that no Server found in locale network" - }, - "@noSourcesFound": { - "description": "Text to show that the Source list is empty" - }, - "@noUpdatesAvailable": { - "description": "Text to show that the user is using the latest version of the app" - }, - "@noUpdatesFound": { - "description": "Toast Text to show that there are no Updates available" - }, - "@nsfw": { - "description": "Switch text to show/hide the nsfw extensions" - }, - "@nsfw18": { - "description": "18+ tag Text to show in extensions list" - }, - "@nsfwInfo": { - "description": "Hint text to show that the nsfw switch cannot prevent incorrectly flagged extensions from surfacing" - }, - "@numSelected": { - "description": "Title text to show the number of chapters selected in the Manga details screen and Updates screen", - "placeholders": { - "num": { - "example": "23", - "type": "int" - } - } - }, - "@obsolete": { - "description": "Text to show that the extension has become Obsolete" - }, - "@page": { - "description": "Text to show the last read Page number of the chapter in Manga details screen", - "placeholders": { - "number": { - "example": "23", - "type": "int" - } - } - }, - "@password": { - "description": "Title text for password field" - }, - "@pause": { - "description": "Button text to pause downloads" - }, - "@pending": { - "description": "Pending status Manga Group title in Update Summary Screen" - }, - "@previousChapter": { - "description": "Text for Previous Chapter button in Manga Reader Screen" - }, - "@quickSearchContext": { - "description": "Quick Open Hint text for query X" - }, - "@quickSearchSource": { - "description": "Quick Open Hint text for Source S with prefill '@S'" - }, - "@quickSearchSourceManga": { - "description": "Quick Open Hint text for searching Manga M in Source S with prefill '@S/M'" - }, - "@quickSearchCategory": { - "description": "Quick Open Hint text for Category C with prefill '#C'" - }, - "@quickSearchCategoryManga": { - "description": "Quick Open Hint text for searching Manga M in Category C with prefill '#C/M'" - }, - "@quickSearchCategoryMangaChapter": { - "description": "Quick Open Hint text for searching Chapter name CN from Manga M in Source S with prefill '#C/M:CN'" - }, - "@quickSearchShowAllCommandTip": { - "description": "Quick Open Tip text for showing all commands by entering '?'" - }, - "@reader": { - "description": "Screen title and Button text of Reader screen" - }, - "@readerMode": { - "description": "Popup title and Button text of Reader Mode popup" - }, - "@readerModeContinuousHorizontalLTR": { - "description": "Radio button text for Reader Mode Type - Continuous Horizontal (LTR)" - }, - "@readerModeContinuousHorizontalRTL": { - "description": "Radio button text for Reader Mode Type - Continuous Horizontal (RTL)" - }, - "@readerModeContinuousVertical": { - "description": "Radio button text for Reader Mode Type - Continuous Vertical" - }, - "@readerModeDefaultReader": { - "description": "Radio button text for Reader Mode Type - Default" - }, - "@readerModeSingleHorizontalLTR": { - "description": "Radio button text for Reader Mode Type - Single Horizontal (LTR)" - }, - "@readerModeSingleHorizontalRTL": { - "description": "Radio button text for Reader Mode Type - Single Horizontal (RTL)" - }, - "@readerModeSingleVertical": { - "description": "Radio button text for Reader Mode Type - Single Vertical" - }, - "@readerModeWebtoon": { - "description": "Radio button text for Reader Mode Type - Webtoon" - }, - "@readerNavigationLayout": { - "description": "Popup title and Button text of Reader Navigation Layout popup" - }, - "@readerNavigationLayoutDefault": { - "description": "Radio button text for Reader Navigation Layout - Default" - }, - "@readerNavigationLayoutDisabled": { - "description": "Radio button text for Reader Navigation Layout - Disabled" - }, - "@readerNavigationLayoutEdge": { - "description": "Radio button text for Reader Navigation Layout - Edge" - }, - "@readerNavigationLayoutInvert": { - "description": "Switch title to invert Tap to scroll in reader screen" - }, - "@readerScrollAnimation": { - "description": "Switch title to Disable scroll animation in reader screen" - }, - "@readerSwipeChapterToggle": { - "description": "Switch title to toggle `swipe to change chapter` in reader screen" - }, - "@readerSwipeChapterToggleDescription": { - "description": "Switch tile description for, toggle `swipe to change chapter` in reader screen" - }, - "@readerNavigationLayoutKindlish": { - "description": "Radio button text for Reader Navigation Layout - Kindle-ish" - }, - "@readerNavigationLayoutLShaped": { - "description": "Radio button text for Reader Navigation Layout - L Shaped" - }, - "@readerNavigationLayoutRightAndLeft": { - "description": "Radio button text for Reader Navigation Layout - Right And Left" - }, - "@readerMagnifierSize": { - "description": "Slider title text for Reader Magnifier Size" - }, - "@readerVolumeTap": { - "description": "Switch button text for Reader Page Navigation with Volume Tap" - }, - "@readerVolumeTapSubtitle": { - "description": "Switch button Subtitle text for Reader Page Navigation with Volume Tap" - }, - "@readerVolumeTapInvert": { - "description": "Switch button text to invert Volume Tap " - }, - "@readerPadding": { - "description": "Slider title text for Reader Padding" - }, - "@readerOverlay": { - "description": "Toggle tile text for Initial Reader Overlay" - }, - "@readerOverlay": { - "description": "Toggle subtile text for Initial Reader Overlay" - }, - "@reddit": { - "description": "Reddit app title" - }, - "@refresh": { - "description": "Refresh button text" - }, - "@reload": { - "description": "Reload button text" - }, - "@remove": { - "description": "Remove Button text" - }, - "@removeFromLibrary": { - "description": "Remove From Library Popup text" - }, - "@reset": { - "description": "Button text of reset button in source filters" - }, - "@restoreBackupDescription": { - "description": "Button text description to create backup" - }, - "@restoreBackupTitle": { - "description": "Button text to create backup" - }, - "@restored": { - "description": "Toast Text to show that the backup has been restored" - }, - "@restoring": { - "description": "Toast Text to show that the backup is restoring" - }, - "@resume": { - "description": "Button Text to resume Chapter reading/downloading" - }, - "@retry": { - "description": "Retry Button Text" - }, - "@running": { - "description": "Running status Manga Group title in Update Summary Screen" - }, - "@save": { - "description": "Save Button Text" - }, - "@scanlators": { - "description": "Title text for Scanlators" - }, - "@search": { - "description": "Search field hint Text" - }, - "@searchingForUpdates": { - "description": "Toast Text for searching for updates of the App/Server" - }, - "@selectUnread": { - "description": "Popup Text for selecting unread chapters" - }, - "@selectInBetween": { - "description": "Toast Text for selecting chapters in between first and last Chapters" - }, - "@selectNext10": { - "description": "Toast Text for selecting next 10 chapters" - }, - "@server": { - "description": "Text title for the server in About screen" - }, - "@serverUrl": { - "description": "Popup title and Button text to update Server Url" - }, - "@serverPort": { - "description": "Popup title and Button text to update Server Port" - }, - "@serverUrlHintText": { - "description": "Text Filed hint text to update Server Url" - }, - "@serverPortHintText": { - "description": "Text Filed hint text to update Server Port" - }, - "@serverVersion": { - "description": "Text title for the current version of the Server in About screen" - }, - "@settings": { - "description": "Screen title and Button text of Settings screen" - }, - "@sort": { - "description": "title of sort Tab across the app" - }, - "@source": { - "description": "Screen title and Button text of source screen" - }, - "@sourceTypeFilter": { - "description": "Tab text Filter for source screen type" - }, - "@sourceTypeLatest": { - "description": "Tab text Latest for source screen type" - }, - "@sourceTypePopular": { - "description": "Tab text Popular for source screen type" - }, - "@sources": { - "description": "title of Sources Tab in Browse Screen" - }, - "@start": { - "description": "Button text start reading the manga" - }, - "@today": { - "description": "Today Text to show the release date of manga" - }, - "@yesterday": { - "description": "Yesterday Text to show the release date of manga" - }, - "@themeModeDark": { - "description": "Radio button text for App theme - Dark" - }, - "@themeModeLight": { - "description": "Radio button text for App theme - Light" - }, - "@themeModeSystem": { - "description": "Radio button text for App theme - System" - }, - "@uninstall": { - "description": "Button text to Uninstall the extension" - }, - "@uninstalling": { - "description": "Button text to show that the extension is uninstalling" - }, - "@unknownAuthor": { - "description": "Text to show unknown author in Manga details screen" - }, - "@unknownManga": { - "description": "Text to show unknown manga in Manga details screen" - }, - "@unknownSource": { - "description": "Text to show unknown Source in Manga details screen" - }, - "@unread": { - "description": "Checkbox text to unread bookmarked manga/chapters across app" - }, - "@update": { - "description": "Button text to update the extension" - }, - "@updateCompleted": { - "description": "Button text to show that extension update is completed" - }, - "@updates": { - "description": "Screen title and Button text of Updates screen" - }, - "@updatesSummary": { - "description": "Screen title and Button text of Updates Summary screen" - }, - "@updating": { - "description": "Button text to show that the extension is updating" - }, - "@userName": { - "description": "Title text for User Name field" - }, - "@versionAvailable": { - "description": "Text to show that there is an update to App/Server", - "placeholders": { - "app": { - "example": "Server", - "type": "String" - }, - "version": { - "example": "v0.4.2", - "type": "String" - } - } - }, - "@webUI": { - "description": "Button text to open in web UI" - }, - "@webView": { - "description": "Button text to open manga website" - }, - "@whatsNew": { - "description": "Button text to open whats new page of app in web" - }, - "about": "About", - "addCategory": "Add Category", - "addToLibrary": "Add to Library", - "allScanlators": "All Scanlators", - "appLanguage": "App Language", - "appTheme": "App Theme", - "appTitle": "Tachidesk Sorayomi", - "appearance": "Appearance", - "authType": "Authentication Type", - "authTypeBasic": "Basic Auth", - "authTypeNone": "None", - "backup": "Backup & Restore", - "badges": "Badges", - "bookmarked": "Bookmarked", - "browse": "Browse", - "buildTime": "Build time", - "cacheCleared": "Cache Cleared", - "cancel": "Cancel", - "categories": "Categories", - "categoryUpdate": "Category Update", - "channel": "Channel", - "chapterNumber": "Chapter {number}", - "chapterSortFetchedDate": "By Fetched Date", - "chapterSortSource": "By Source", - "chapterSortUploadDate": "By Upload Date", - "checkForServerUpdates": "Check for Server updates", - "checkForUpdates": "Check for updates", - "clearCache": "Clear Cache", - "client": "Client", - "clientVersion": "Client version", - "close": "Close", - "completed": "Completed", - "copyMsg": "'{msg}' Copied!", - "createBackupDescription": "Backup library as a Tachidesk backup", - "createBackupTitle": "Create Backup", - "credentials": "Credentials", - "current": "Current", - "daysAgo": "{days} days ago", - "defaultCategory": "Default category when adding new manga to library", - "delete": "Delete", - "deleteCategoryDescription": "This will merge all Mangas in this Category to Default!", - "deleteCategoryTitle": "Are you sure?", - "discord": "Discord", - "display": "Display", - "displayMode": "Display Mode", - "displayModeDescriptiveList": "Descriptive List", - "displayModeGrid": "Grid", - "displayModeList": "List", - "downloaded": "Downloaded", - "downloads": "Downloads", - "edit": "Edit", - "editCategory": "Edit Category", - "emptyCategory": "Category name can't be Empty", - "errorExtension": "Can't find the selected extension", - "errorFilePick": "File not selected!", - "errorFilePickUnknownExtension": "Please select a file with {extensionName} extension", - "errorLaunchURL": "Failed to open!\nCopying \"{url}\" to clipboard", - "errorPassword": "Password can't be empty", - "errorSomethingWentWrong": "Something went wrong!", - "errorUserName": "UserName can't be empty", - "extensionInstalled": "Extension Installed!", - "extensionListEmpty": "Extension list is Empty", - "extensions": "Extensions", - "failed": "Failed", - "filter": "Filter", - "findServer" : "Find", - "finished": "Finished", - "general": "General", - "gitHub": "GitHub", - "globalSearch": "Global Search", - "globalUpdate": "Global Update", - "help": "Help", - "inLibrary": "In library", - "install": "Install", - "installing": "Installing", - "installingExtension": "Installing Extension", - "languages": "Languages", - "latest": "Latest", - "library": "Library", - "manga": "Manga", - "mangaGridSize": "Manga Grid Size", - "mangaMissingSources": "Manga Missing Sources", - "mangaSortAlphabetical": "Alphabetical", - "mangaSortDateAdded": "Date Added", - "mangaSortUnread": "Unread", - "mangaSortLastRead": "Last Read", - "mangaStatusCancelled": "Cancelled", - "mangaStatusCompleted": "Completed", - "mangaStatusLicensed": "Licensed", - "mangaStatusOnHiatus": "On Hiatus", - "mangaStatusOngoing": "Ongoing", - "mangaStatusPublishingFinished": "Publishing Finished", - "mangaStatusUnknown": "Unknown", - "missingExtension": "Missing Extensions", - "missingTrackers": "Missing Trackers", - "more": "More", - "moveToBottom": "Move to Bottom", - "moveToTop": "Move to top", - "nameCountDisplay": "{name}: {count}", - "newUpdateAvailable": "New update available", - "nextChapter": "Next: {chapterTitle}", - "noCategoriesFound": "You don't have any Categories. \n(Tip: Tap the Plus button to create one for organizing your library)", - "noCategoriesFoundAlt": "You don't have any Categories. \nCreate one in settings for organizing your library", - "noCategoryMangaFound": "No manga found in this Category. \n(Tip: Check your search & filters!)", - "noChaptersFound": "No Chapters found", - "noDownloads": "No Downloads", - "noMangaFound": "No Mangas Found", - "noOfChapters": "{count} Chapters", - "noResultFound": "No results found", - "noServerFound": "No Server found in your local network", - "noSourcesFound": "No sources found", - "noUpdatesAvailable": "You're using the latest version", - "noUpdatesFound": "No updates found", - "nsfw": "Show NSFW extensions and sources", - "nsfw18": "18+", - "nsfwInfo": "This does not prevent unofficial or potentially incorrectly flagged extensions from surfacing NSFW(18+) content within app", - "numSelected": "{num} Selected", - "obsolete": "Obsolete", - "page": "Page: {number}", - "password": "Password", - "pause": "Pause", - "pending": "Pending", - "previousChapter": "Previous: {chapterTitle}", - "quickSearchCategory": "Go to Category 'C'", - "quickSearchContext": "Search for query X (Results are based on screen context)", - "quickSearchSource": "Go to Source 'S'", - "quickSearchSourceManga": "Search for Manga 'M' in Source 'S'", - "quickSearchCategoryManga": "Go to Manga 'M' in Category 'C'", - "quickSearchCategoryMangaChapter": "Go to Chapter Name 'CN' from Manga 'M' in Category 'C'", - "quickSearchShowAllCommandTip": "Tip: Enter '?' to see all commands", - "reader": "Reader", - "readerMode": "Reading Mode", - "readerModeContinuousHorizontalLTR": "Continuous Horizontal (LTR)", - "readerModeContinuousHorizontalRTL": "Continuous Horizontal (RTL)", - "readerModeContinuousVertical": "Continuous Vertical", - "readerModeDefaultReader": "Default", - "readerModeSingleHorizontalLTR": "Single Horizontal (LTR)", - "readerModeSingleHorizontalRTL": "Single Horizontal (RTL)", - "readerModeSingleVertical": "Single Vertical", - "readerModeWebtoon": "Webtoon", - "readerNavigationLayout": "Navigation layout", - "readerNavigationLayoutDefault": "Default", - "readerNavigationLayoutDisabled": "Disabled", - "readerNavigationLayoutEdge": "Edge", - "readerNavigationLayoutInvert": "Invert tapping", - "readerScrollAnimation": "Scroll animation", - "readerSwipeChapterToggle": "Swipe toggle", - "readerSwipeChapterToggleDescription": "Swipe to change chapter in reader", - "readerNavigationLayoutKindlish": "Kindle-ish", - "readerNavigationLayoutLShaped": "L Shaped", - "readerNavigationLayoutRightAndLeft": "Right And Left", - "readerOverlay": "Reader initial overlay", - "readerOverlaySubtitle": "Shows title and quick settings when opening a chapter", - "readerPadding": "Reader Padding", - "readerMagnifierSize": "Magnifier Size", - "readerVolumeTap": "Volume Keys", - "readerVolumeTapSubtitle": "Navigate with Volume Keys", - "readerVolumeTapInvert": "Invert Volume Keys", - "reddit": "Reddit", - "refresh": "Refresh", - "reload": "Reload", - "remove": "Remove", - "removeFromLibrary": "Remove from Library?", - "reset": "Reset", - "restoreBackupDescription": "Restore Tachidesk from backup", - "restoreBackupTitle": "Restore Backup", - "restored": "Backup restored!", - "restoring": "Restoring backup", - "resume": "Resume", - "retry": "Retry", - "running": "Running", - "save": "Save", - "scanlators": "Scanlators", - "search": "Search", - "searchingForUpdates": "Searching for updates", - "selectNext10": "Select next 10", - "selectUnread": "Select Unread", - "selectInBetween": "Select in between", - "server": "Server", - "serverUrl": "Server URL", - "serverUrlHintText": "Server url", - "serverPort": "Server Port", - "serverPortHintText": "Server port", - "serverVersion": "Server version", - "settings": "Settings", - "sort": "Sort", - "source": "Source", - "sourceTypeFilter": "Filter", - "sourceTypeLatest": "Latest", - "sourceTypePopular": "Popular", - "sources": "Sources", - "start": "Start", - "themeModeDark": "Dark", - "themeModeLight": "Light", - "themeModeSystem": "System", - "today": "Today", - "yesterday" : "Yesterday", - "uninstall": "Uninstall", - "uninstalling": "Uninstalling", - "unknownAuthor": "Unknown Author", - "unknownManga": "Unknown Manga", - "unknownSource": "Unknown Source", - "unread": "Unread", - "update": "Update", - "updateCompleted": "Update Completed", - "updates": "Updates", - "updatesSummary": "Updates Summary", - "updating": "Updating", - "userName": "User Name", - "versionAvailable": "Version {version} available for {app}!!", - "webUI": "Open in WEB", - "webView": "Web View", - "whatsNew": "What's New?" -} diff --git a/lib/src/l10n/app_es.arb b/lib/src/l10n/app_es.arb deleted file mode 100644 index 497b940a..00000000 --- a/lib/src/l10n/app_es.arb +++ /dev/null @@ -1,509 +0,0 @@ -{ - "@@locale": "es", - "about": "Información", - "@about": {}, - "addCategory": "Añadir categoría", - "@addCategory": {}, - "addToLibrary": "Añadir a biblioteca", - "@addToLibrary": {}, - "appLanguage": "Idioma de la aplicación", - "@appLanguage": {}, - "appTheme": "Tema de la aplicación", - "@appTheme": {}, - "appTitle": "Tachidesk Sorayomi", - "@appTitle": {}, - "appearance": "Apariencia", - "@appearance": {}, - "authType": "Tipo de autenticación", - "@authType": {}, - "authTypeBasic": "Autenticación normal", - "@authTypeBasic": {}, - "authTypeNone": "Ninguna", - "@authTypeNone": {}, - "backup": "Copia de seguridad y restauracion", - "@backup": {}, - "badges": "Insignias", - "@badges": {}, - "bookmarked": "Favoritos", - "@bookmarked": {}, - "browse": "Explorar", - "@browse": {}, - "buildTime": "Fecha de creación", - "@buildTime": {}, - "cancel": "Cancelar", - "@cancel": {}, - "categories": "Categorías", - "@categories": {}, - "category": "Categoría", - "@category": {}, - "categoryUpdate": "Actualizar categoría", - "@categoryUpdate": {}, - "channel": "Canal", - "@channel": {}, - "chapterNumber": "Capitulo {number}", - "@chapterNumber": {}, - "chapterSortFetchedDate": "Por fecha de búsqueda", - "@chapterSortFetchedDate": {}, - "chapterSortSource": "Por fuente", - "@chapterSortSource": {}, - "checkForServerUpdates": "Buscar actualización del servidor", - "@checkForServerUpdates": {}, - "checkForUpdates": "Buscar actualizaciones", - "@checkForUpdates": {}, - "client": "Cliente", - "@client": {}, - "clientVersion": "Versión del cliente", - "@clientVersion": {}, - "close": "Cerrar", - "@close": {}, - "completed": "Completado", - "@completed": {}, - "copyMsg": "'{msg}' ¡Copiado!", - "@copyMsg": {}, - "create": "Crear", - "@create": {}, - "createBackupDescription": "Copia de seguridad de biblioteca como copia de seguridad de tachidesk", - "@createBackupDescription": {}, - "createBackupTitle": "Crear copia de seguridad", - "@createBackupTitle": {}, - "credentials": "Credenciales", - "@credentials": {}, - "current": "Actual", - "@current": {}, - "defaultCategory": "Categoría por defecto al añadir un nuevo manga a la biblioteca", - "@defaultCategory": {}, - "delete": "Eliminar", - "@delete": {}, - "deleteCategoryDescription": "¡Esto quitará todos los mangas de esta categoría y los añadirá en predeterminado!", - "@deleteCategoryDescription": {}, - "deleteCategoryTitle": "¿Estás seguro?", - "@deleteCategoryTitle": {}, - "discord": "Discord", - "@discord": {}, - "display": "Vista", - "@display": {}, - "displayMode": "Modo de visualización", - "@displayMode": {}, - "displayModeDescriptiveList": "Lista descriptiva", - "@displayModeDescriptiveList": {}, - "displayModeGrid": "Cuadricula", - "@displayModeGrid": {}, - "displayModeList": "Lista", - "@displayModeList": {}, - "downloaded": "Descargados", - "@downloaded": {}, - "downloads": "Descargas", - "@downloads": {}, - "edit": "Editar", - "@edit": {}, - "editCategory": "Editar categoría", - "@editCategory": {}, - "emptyCategory": "El nombre de la categoría no puede estar vacío", - "@emptyCategory": {}, - "errorExtension": "No se encontró la extensión seleccionada", - "@errorExtension": {}, - "errorFilePick": "Archivo no seleccionado!", - "@errorFilePick": {}, - "errorFilePickUnknownExtension": "Por favor, selecciona un archivo con la extensión {extensionName}", - "@errorFilePickUnknownExtension": {}, - "errorLaunchURL": "¡Error al abrir!\nCopiando \"{url}\" al portapapeles", - "@errorLaunchURL": {}, - "errorPassword": "La contraseña no puede estar en blanco", - "@errorPassword": {}, - "errorSomethingWentWrong": "¡Algo salió mal!", - "@errorSomethingWentWrong": {}, - "errorUserName": "Tu nombre no puede estar en blanco", - "@errorUserName": {}, - "extensionInstalled": "¡La extensión ha sido instalada!", - "@extensionInstalled": {}, - "extensionListEmpty": "La lista de extensiones está vacía", - "@extensionListEmpty": {}, - "extensions": "Extensiones", - "@extensions": {}, - "failed": "Fallido", - "@failed": {}, - "filter": "Filtro", - "@filter": {}, - "finished": "Finalizado", - "@finished": {}, - "general": "General", - "@general": {}, - "gitHub": "GitHub", - "@gitHub": {}, - "globalSearch": "Búsqueda global", - "@globalSearch": {}, - "globalUpdate": "Actualización global", - "@globalUpdate": {}, - "help": "Ayuda", - "@help": {}, - "inLibrary": "En biblioteca", - "@inLibrary": {}, - "install": "Instalar", - "@install": {}, - "installing": "Instalando", - "@installing": {}, - "installingExtension": "Instalando la extensión", - "@installingExtension": {}, - "languages": "Idioma", - "@languages": {}, - "latest": "Reciente", - "@latest": {}, - "library": "Biblioteca", - "@library": {}, - "manga": "Manga", - "@manga": {}, - "mangaMissingSources": "Fuentes del manga faltantes", - "@mangaMissingSources": {}, - "mangaSortAlphabetical": "Alfabético", - "@mangaSortAlphabetical": {}, - "mangaSortDateAdded": "Fecha añadida", - "@mangaSortDateAdded": {}, - "mangaSortUnread": "No leído", - "@mangaSortUnread": {}, - "mangaSortLastRead": "Última lectura", - "@mangaSortLastRead": {}, - "mangaStatusCancelled": "Cancelado", - "@mangaStatusCancelled": {}, - "mangaStatusCompleted": "Completado", - "@mangaStatusCompleted": {}, - "mangaStatusLicensed": "Con Licencia", - "@mangaStatusLicensed": {}, - "mangaStatusOnHiatus": "En receso", - "@mangaStatusOnHiatus": {}, - "mangaStatusOngoing": "En publicación", - "@mangaStatusOngoing": {}, - "mangaStatusPublishingFinished": "Serie terminada", - "@mangaStatusPublishingFinished": {}, - "mangaStatusUnknown": "Desconocido", - "@mangaStatusUnknown": {}, - "missingExtension": "Extensiones faltantes", - "@missingExtension": {}, - "missingTrackers": "Rastreadores faltantes", - "@missingTrackers": {}, - "more": "Mas", - "@more": {}, - "moveToBottom": "Mover al fondo", - "@moveToBottom": {}, - "moveToTop": "Mover al principio", - "@moveToTop": {}, - "nameCountDisplay": "{name}: {count}", - "@nameCountDisplay": {}, - "newUpdateAvailable": "Nueva actualización disponible", - "@newUpdateAvailable": {}, - "noCategoriesFound": "No tienes ninguna categoría.\n(Tip:Presiona el botón plus para crear uno y organizar tu biblioteca)", - "@noCategoriesFound": {}, - "noCategoriesFoundAlt": "No tienes ninguna categoría.\nCrea uno en ajustes para organizar tu biblioteca", - "@noCategoriesFoundAlt": {}, - "noCategoryMangaFound": "No hay ningún manga en esta categoría.\n(Tip: ¡Mira tus búsquedas y filtros!)", - "@noCategoryMangaFound": {}, - "noChaptersFound": "No se encontraron los capítulos", - "@noChaptersFound": {}, - "noDownloads": "No hay descargas", - "@noDownloads": {}, - "noMangaFound": "No se encontraron los mangas", - "@noMangaFound": {}, - "noOfChapters": "{count} capitulos", - "@noOfChapters": {}, - "noResultFound": "Sin resultados", - "@noResultFound": {}, - "noSourcesFound": "No se encontraron fuentes", - "@noSourcesFound": {}, - "noUpdatesAvailable": "Estas usando la última versión", - "@noUpdatesAvailable": {}, - "noUpdatesFound": "Sin actualizaciones", - "@noUpdatesFound": {}, - "nsfw": "Mostrar fuentes y extensiones NSFW", - "@nsfw": {}, - "nsfw18": "18+", - "@nsfw18": {}, - "nsfwInfo": "Esto no evita que extensiones no oficiales o posiblemente marcadas incorrectamente muestren contenido para adultos (18+) en la aplicación", - "@nsfwInfo": {}, - "numSelected": "{num} seleccionado", - "@numSelected": {}, - "obsolete": "Obsoleta", - "@obsolete": {}, - "page": "Página: {number}", - "@page": {}, - "password": "Contraseña", - "@password": {}, - "pause": "Pausar", - "@pause": {}, - "pending": "Pendiente", - "@pending": {}, - "reader": "Lector", - "@reader": {}, - "readerMode": "Modo de lectura", - "@readerMode": {}, - "readerModeContinuousHorizontalLTR": "Horizontal Continuo (IZQ-DER)", - "@readerModeContinuousHorizontalLTR": {}, - "readerModeContinuousHorizontalRTL": "Horizontal Continuo (DER-IZQ)", - "@readerModeContinuousHorizontalRTL": {}, - "readerModeContinuousVertical": "Vertical Continuo", - "@readerModeContinuousVertical": {}, - "readerModeDefaultReader": "Predeterminado", - "@readerModeDefaultReader": {}, - "readerModeSingleHorizontalLTR": "Horizontal Individual (IZQ-DER)", - "@readerModeSingleHorizontalLTR": {}, - "readerModeSingleHorizontalRTL": "Horizontal Individual (DER-IZQ)", - "@readerModeSingleHorizontalRTL": {}, - "readerModeSingleVertical": "Horizontal Individual", - "@readerModeSingleVertical": {}, - "readerModeWebtoon": "Webtoon", - "@readerModeWebtoon": {}, - "readerNavigationLayout": "Tipo de navegación", - "@readerNavigationLayout": {}, - "readerNavigationLayoutDefault": "Predeterminado", - "@readerNavigationLayoutDefault": {}, - "readerNavigationLayoutDisabled": "Deshabilitado", - "@readerNavigationLayoutDisabled": {}, - "readerNavigationLayoutEdge": "Borde", - "@readerNavigationLayoutEdge": {}, - "readerNavigationLayoutInvert": "Invertir el toque", - "@readerNavigationLayoutInvert": {}, - "readerNavigationLayoutKindlish": "Estilo Kindle", - "@readerNavigationLayoutKindlish": {}, - "readerNavigationLayoutLShaped": "En forma de L", - "@readerNavigationLayoutLShaped": {}, - "readerNavigationLayoutRightAndLeft": "Derecha e Izquierda", - "@readerNavigationLayoutRightAndLeft": {}, - "reddit": "Reddit", - "@reddit": {}, - "refresh": "Refrescar", - "@refresh": {}, - "reset": "Restablecer", - "@reset": {}, - "restoreBackupDescription": "Restaurar Tachidesk desde copia de seguridad", - "@restoreBackupDescription": {}, - "restoreBackupTitle": "Restaurar copia de seguridad", - "@restoreBackupTitle": {}, - "restored": "¡Copia de seguridad restaurada!", - "@restored": {}, - "restoring": "Restaurando la copia de seguridad", - "@restoring": {}, - "resume": "Reanudar", - "@resume": {}, - "retry": "Reintentar", - "@retry": {}, - "running": "Ejecutando", - "@running": {}, - "save": "Guardar", - "@save": {}, - "search": "Buscar", - "@search": {}, - "searchingForUpdates": "Buscando actualizaciones", - "@searchingForUpdates": {}, - "server": "Servidor", - "@server": {}, - "serverUrl": "Enlace del servidor", - "@serverUrl": {}, - "serverUrlHintText": "Dirección Url del servidor", - "@serverUrlHintText": {}, - "serverVersion": "Version del servidor", - "@serverVersion": {}, - "settings": "Ajustes", - "@settings": {}, - "sort": "Ordenar", - "@sort": {}, - "source": "Fuente", - "@source": {}, - "sourceTypeFilter": "Filtro", - "@sourceTypeFilter": {}, - "sourceTypeLatest": "Reciente", - "@sourceTypeLatest": {}, - "sourceTypePopular": "Popular", - "@sourceTypePopular": {}, - "sources": "Fuentes", - "@sources": {}, - "start": "Empezar", - "@start": {}, - "themeModeDark": "Oscuro", - "@themeModeDark": {}, - "themeModeLight": "Claro", - "@themeModeLight": {}, - "themeModeSystem": "Sistema", - "@themeModeSystem": {}, - "uninstall": "Desinstalar", - "@uninstall": {}, - "uninstalling": "Desinstalando", - "@uninstalling": {}, - "unknown": "Desconocido", - "@unknown": {}, - "unknownAuthor": "Autor desconocido", - "@unknownAuthor": {}, - "unknownManga": "Manga desconocido", - "@unknownManga": {}, - "unknownSource": "Fuente desconocida", - "@unknownSource": {}, - "unread": "Sin leer", - "@unread": {}, - "update": "Actualizar", - "@update": {}, - "updateCompleted": "Actualización completa", - "@updateCompleted": {}, - "updates": "Actualizaciones", - "@updates": {}, - "updatesSummary": "Resumen de actualizaciones", - "@updatesSummary": {}, - "updating": "Actualizando", - "@updating": {}, - "userName": "Nombre de usuario", - "@userName": {}, - "versionAvailable": "La versión {version} está disponible para {app}!!", - "@versionAvailable": {}, - "webUI": "Abrir en el navegador", - "@webUI": {}, - "webView": "WebView", - "@webView": {}, - "whatsNew": "¿Qué hay de nuevo?", - "@whatsNew": {}, - "readerPadding": "Anotaciones del lector", - "@readerPadding": { - "description": "Slider title text for Reader Padding" - }, - "mangaGridSize": "Tamaño de la cuadrícula del manga", - "@mangaGridSize": { - "description": "Popup title and Button text to change Manga Grid size" - }, - "cacheCleared": "Caché borrada", - "@cacheCleared": { - "description": "Toast Text to show after clearing cache" - }, - "chapterSortUploadDate": "Por fecha de subida", - "@chapterSortUploadDate": { - "description": "Radio button text for sort by Upload Date" - }, - "readerScrollAnimation": "Animación del desplazamiento", - "@readerScrollAnimation": { - "description": "Switch title to Disable scroll animation in reader screen" - }, - "readerMagnifierSize": "Tamaño de la lupa", - "@readerMagnifierSize": { - "description": "Slider title text for Reader Magnifier Size" - }, - "clearCache": "Borrar la caché", - "@clearCache": { - "description": "Button text for clear cache in General Settings screen" - }, - "findServer": "Encontrar", - "@findServer": { - "description": "Button text of Find Server" - }, - "serverPort": "Puerto del servidor", - "@serverPort": { - "description": "Popup title and Button text to update Server Port" - }, - "serverPortHintText": "Puerto del servidor", - "@serverPortHintText": { - "description": "Text Filed hint text to update Server Port" - }, - "noServerFound": "No se ha encontrado ningún servidor en tu red local", - "@noServerFound": { - "description": "Text to show that no Server found in locale network" - }, - "scanlators": "Scans", - "@scanlators": { - "description": "Title text for Scanlators" - }, - "quickSearchSource": "Ir a la fuente 'S'", - "@quickSearchSource": { - "description": "Quick Open Hint text for Source S with prefill '@S'" - }, - "allScanlators": "Todos los escáneres", - "@allScanlators": { - "description": "Text for all Scanlators in manga description screen chapter filter" - }, - "quickSearchCategoryManga": "Ir al manga 'M' en la categoría 'C'", - "@quickSearchCategoryManga": { - "description": "Quick Open Hint text for searching Manga M in Category C with prefill '#C/M'" - }, - "quickSearchCategoryMangaChapter": "Ir al capítulo \"CN\" del manga \"M\" en la categoría \"C\"", - "@quickSearchCategoryMangaChapter": { - "description": "Quick Open Hint text for searching Chapter name CN from Manga M in Source S with prefill '#C/M:CN'" - }, - "quickSearchCategory": "Ir a la categoría 'C'", - "@quickSearchCategory": { - "description": "Quick Open Hint text for Category C with prefill '#C'" - }, - "quickSearchContext": "Busca la consulta X (los resultados se basan en el contexto de la pantalla)", - "@quickSearchContext": { - "description": "Quick Open Hint text for query X" - }, - "quickSearchSourceManga": "Buscar el manga 'M' en la fuente 'S'", - "@quickSearchSourceManga": { - "description": "Quick Open Hint text for searching Manga M in Source S with prefill '@S/M'" - }, - "today": "Hoy", - "@today": { - "description": "Today Text to show the release date of manga" - }, - "daysAgo": "Hace {days} días", - "@daysAgo": { - "description": "Days ago text to show the release date of manga" - }, - "readerSwipeChapterToggle": "Deslizar el dedo", - "@readerSwipeChapterToggle": { - "description": "Switch title to toggle `swipe to change chapter` in reader screen" - }, - "yesterday": "Ayer", - "@yesterday": { - "description": "Yesterday Text to show the release date of manga" - }, - "readerSwipeChapterToggleDescription": "Deslizar para cambiar de capítulo en el lector", - "@readerSwipeChapterToggleDescription": { - "description": "Switch tile description for, toggle `swipe to change chapter` in reader screen" - }, - "readerOverlay": "Superposición inicial del lector", - "@readerOverlay": { - "description": "Toggle tile text for Initial Reader Overlay" - }, - "reload": "Recargar", - "@reload": { - "description": "Reload button text" - }, - "previousChapter": "Anterior: {chapterTitle}", - "@previousChapter": { - "description": "Text for Previous Chapter button in Manga Reader Screen" - }, - "nextChapter": "Siguiente: {chapterTitle}", - "@nextChapter": { - "description": "Text for Next Chapter button in Manga Reader Screen" - }, - "selectInBetween": "Seleccionar entre", - "@selectInBetween": { - "description": "Toast Text for selecting chapters in between first and last Chapters" - }, - "readerOverlaySubtitle": "Muestra el título y los ajustes rápidos al abrir un capítulo", - "@readerOverlaySubtitle": {}, - "quickSearchShowAllCommandTip": "Consejo: Introduzca '?' para ver todos los comandos", - "@quickSearchShowAllCommandTip": { - "description": "Quick Open Tip text for showing all commands by entering '?'" - }, - "selectNext10": "Seleccionar los 10 siguientes", - "@selectNext10": { - "description": "Toast Text for selecting next 10 chapters" - }, - "selectUnread": "Seleccionar los no leídos", - "@selectUnread": { - "description": "Popup Text for selecting unread chapters" - }, - "readerVolumeTapInvert": "Invertir los botones de volumen", - "@readerVolumeTapInvert": { - "description": "Switch button text to invert Volume Tap " - }, - "readerVolumeTap": "Botones de volumen", - "@readerVolumeTap": { - "description": "Switch button text for Reader Page Navigation with Volume Tap" - }, - "readerVolumeTapSubtitle": "Navegar con los botones de volumen", - "@readerVolumeTapSubtitle": { - "description": "Switch button Subtitle text for Reader Page Navigation with Volume Tap" - }, - "removeFromLibrary": "¿Quitar de la biblioteca?", - "@removeFromLibrary": { - "description": "Remove From Library Popup text" - }, - "remove": "Quitar", - "@remove": { - "description": "Remove Button text" - } -} diff --git a/lib/src/l10n/app_fr.arb b/lib/src/l10n/app_fr.arb deleted file mode 100644 index 4e7a9693..00000000 --- a/lib/src/l10n/app_fr.arb +++ /dev/null @@ -1,834 +0,0 @@ -{ - "bookmarked": "Marque-pages", - "@bookmarked": { - "description": "Checkbox text to filter bookmarked manga chapters in Manga Details screen" - }, - "cacheCleared": "Cache effacé", - "@cacheCleared": { - "description": "Toast Text to show after clearing cache" - }, - "finished": "Terminé", - "@finished": { - "description": "Text to show the Currently Finished reading chapter in Reader Screen" - }, - "languages": "Langues", - "@languages": { - "description": "Popup title to filter extensions based on language" - }, - "addCategory": "Ajouter une catégorie", - "@addCategory": { - "description": "Popup title and Button text to add new category in Edit Category Screen" - }, - "addToLibrary": "Ajouter à la bibliothèque", - "@addToLibrary": { - "description": "Button text to add Manga to Library in Manga Details Screen" - }, - "appTheme": "Thème de l'application", - "@appTheme": { - "description": "Popup title and Button text to change App Theme" - }, - "appTitle": "Tachidesk Sorayomi", - "@appTitle": { - "description": "Name of the app (Tachidesk Sorayomi in native script)" - }, - "browse": "Parcourir", - "@browse": { - "description": "Screen title, Navigation Bar text and Button text of both Browse screen and Browse Settings Screen" - }, - "cancel": "Annuler", - "@cancel": { - "description": "Text for Cancel button in a Popup" - }, - "categories": "Catégories", - "@categories": { - "description": "Button text of edit Categories screen in Library settings screen" - }, - "categoryUpdate": "Mise à jour de la catégorie", - "@categoryUpdate": { - "description": "Button text to update the mangas in the Category" - }, - "channel": "Canal", - "@channel": { - "description": "Text title to show Channel of the Server (Stable, preview) in About Screen" - }, - "chapterNumber": "Chapitre {number}", - "@chapterNumber": { - "description": "Text title for Chapter name in chapter list", - "placeholders": { - "number": { - "example": "12.5", - "type": "double" - } - } - }, - "chapterSortFetchedDate": "Par données récupérées", - "@chapterSortFetchedDate": { - "description": "Radio button text for sort by Fetched Date" - }, - "chapterSortSource": "Par source", - "@chapterSortSource": { - "description": "Radio button text for sort by Source" - }, - "chapterSortUploadDate": "Par date d'import", - "@chapterSortUploadDate": { - "description": "Radio button text for sort by Upload Date" - }, - "checkForServerUpdates": "Vérifier les mises à jour du serveur", - "@checkForServerUpdates": { - "description": "Button text to check for Server updates" - }, - "checkForUpdates": "Vérifier les mises à jour", - "@checkForUpdates": { - "description": "Button text to check for App Updates" - }, - "clearCache": "Effacer le cache", - "@clearCache": { - "description": "Button text for clear cache in General Settings screen" - }, - "client": "Client", - "@client": { - "description": "Text title for the name of the client in About screen" - }, - "clientVersion": "Version du client", - "@clientVersion": { - "description": "Text title for the current version of the client in About screen" - }, - "close": "Fermer", - "@close": { - "description": "Text for close button" - }, - "completed": "Terminé", - "@completed": { - "description": "Checkbox text to filter Completed mangas in Library screen and Manga Grouping text in Update Summary screen" - }, - "copyMsg": "« {msg} » copié !", - "@copyMsg": { - "description": "Toast text to show that the message has been copied", - "placeholders": { - "msg": { - "example": "Client : Tachidesk Sorayomi", - "type": "String" - } - } - }, - "createBackupDescription": "Sauvegarder la bibliothèque en tant que sauvegarde Tachidesk", - "@createBackupDescription": { - "description": "Button text description to create backup" - }, - "current": "En cours", - "@current": { - "description": "Text to show the currently reading chapter in Reader Screen" - }, - "delete": "Supprimer", - "@delete": { - "description": "Text for delete button" - }, - "deleteCategoryTitle": "Voulez-vous continuer ?", - "@deleteCategoryTitle": { - "description": "Popup title when deleting Category" - }, - "discord": "Discord", - "@discord": { - "description": "Discord app title" - }, - "display": "Affichage", - "@display": { - "description": "Text for Display tab in Library screen drawer" - }, - "downloaded": "Téléchargé", - "@downloaded": { - "description": "Text to show downloaded chapters status in Filters " - }, - "downloads": "Téléchargements", - "@downloads": { - "description": "Screen title and Navigation text of Downloads screen" - }, - "edit": "Modifier", - "@edit": { - "description": "Popup button text to edit Category in Edit category screen" - }, - "editCategory": "Modifier la catégorie", - "@editCategory": { - "description": "Screen title, Button text and of Downloads screen" - }, - "emptyCategory": "Le nom de la catégorie ne peut pas être vide", - "@emptyCategory": { - "description": "Description to show that category list is empty in Edit Category screen" - }, - "errorFilePick": "Aucun fichier sélectionné !", - "@errorFilePick": { - "description": "Error Description to show when user does not selected an file" - }, - "errorFilePickUnknownExtension": "Veuillez sélectionner un fichier avec l'extension {extensionName}", - "@errorFilePickUnknownExtension": { - "description": "Error Description to show when user selected unknown extension file" - }, - "errorLaunchURL": "Échec de l'ouverture !\nCopie de « {url} » dans le presse-papier", - "@errorLaunchURL": { - "description": "Error Description to show when App failed to launch an URL and copied the URL to clipboard", - "placeholders": { - "url": { - "example": "http://sorayomi.suwayomi.org", - "type": "String" - } - } - }, - "errorPassword": "Le mot de passe ne peut pas être vide", - "@errorPassword": { - "description": "Error Description to show that password cannot be empty" - }, - "errorSomethingWentWrong": "Une erreur s'est produite !", - "@errorSomethingWentWrong": { - "description": "Error Description to show that Something went wrong!" - }, - "errorUserName": "Le nom d'utilisateur ne peut pas être vide", - "@errorUserName": { - "description": "Error Description to show that UserName cannot be empty" - }, - "extensionInstalled": "Extension installée !", - "@extensionInstalled": { - "description": "Toast text to show that the Extension Installed successfully" - }, - "extensionListEmpty": "La liste des extensions est vide", - "@extensionListEmpty": { - "description": "Description to show that Extension list is empty in Extension list tab of Browse screen" - }, - "extensions": "Extensions", - "@extensions": { - "description": "Extension list Tab title in Browse Screen" - }, - "failed": "Échec", - "@failed": { - "description": "Failed status Manga Group title in Update Summary Screen" - }, - "filter": "Filtrer", - "@filter": { - "description": "title of filter Tab across the app" - }, - "general": "Général", - "@general": { - "description": "Screen title and Button text of General setting screen" - }, - "gitHub": "GitHub", - "@gitHub": { - "description": "GitHub app title" - }, - "globalSearch": "Recherche globale", - "@globalSearch": { - "description": "Screen title of Global Search screen" - }, - "deleteCategoryDescription": "Tous les mangas de cette catégorie seront ainsi ramenés à leur valeur par défaut !", - "@deleteCategoryDescription": { - "description": "Popup description when deleting Category" - }, - "globalUpdate": "Mise à jour globale", - "@globalUpdate": { - "description": "Button text of Global Manga Update" - }, - "help": "Aide", - "@help": { - "description": "Button text of help in about screen" - }, - "inLibrary": "Dans la bibliothèque", - "@inLibrary": { - "description": "Button and Chip text to show that the manga is in Library" - }, - "install": "Installer", - "@install": { - "description": "Button text to install the extension" - }, - "latest": "Le plus récent", - "@latest": { - "description": "Button text to take user to the latest tab of Source manga screen" - }, - "library": "Bibliothèque", - "@library": { - "description": "Screen title and Button text of Library and Library Settings screen" - }, - "manga": "Manga", - "@manga": { - "description": "Screen title and Button text of Manga details screen" - }, - "mangaSortUnread": "Non lu", - "@mangaSortUnread": { - "description": "Radio button text for Manga sort Type - Unread" - }, - "mangaSortLastRead": "Date de lecture", - "@mangaSortLastRead": { - "description": "Radio button text for Manga sort Type - Last Read" - }, - "mangaStatusLicensed": "Sous licence", - "@mangaStatusLicensed": { - "description": "Text to show Manga Status Licensed in Manga details screen" - }, - "mangaStatusOnHiatus": "En suspens", - "@mangaStatusOnHiatus": { - "description": "Text to show Manga Status On Hiatus in Manga details screen" - }, - "mangaStatusOngoing": "En cours", - "@mangaStatusOngoing": { - "description": "Text to show Manga Status Ongoing in Manga details screen" - }, - "mangaStatusPublishingFinished": "Publication terminée", - "@mangaStatusPublishingFinished": { - "description": "Text to show Manga Status Publishing Finished in Manga details screen" - }, - "mangaStatusUnknown": "Inconnu", - "@mangaStatusUnknown": { - "description": "Text to show Manga Status Unknown in Manga details screen" - }, - "missingExtension": "Extensions manquantes", - "@missingExtension": { - "description": "Group title to show the Missing Extensions when restoring Backup" - }, - "missingTrackers": "Pisteurs manquants", - "@missingTrackers": { - "description": "Group title to show the Missing Trackers when restoring Backup" - }, - "more": "Plus", - "@more": { - "description": "Screen title and Navigation text of More screen" - }, - "nameCountDisplay": "{name} : {count}", - "@nameCountDisplay": { - "description": "Text pattern to display an name and count in a string", - "placeholders": { - "name": { - "example": "Downloaded", - "type": "String" - }, - "count": { - "example": "22", - "type": "int" - } - } - }, - "newUpdateAvailable": "Nouvelle mise à jour disponible", - "@newUpdateAvailable": { - "description": "Popup title to show that the App/Server has and update" - }, - "noCategoriesFound": "Vous n'avez aucune catégorie. \n(Conseil : Appuyez sur le bouton Plus pour en créer une et organiser votre bibliothèque)", - "@noCategoriesFound": { - "description": "Hint text to add new Category when category list is empty" - }, - "noCategoriesFoundAlt": "Vous n'avez aucune catégorie. \nCréez-en une dans les paramètres pour organiser votre bibliothèque", - "@noCategoriesFoundAlt": { - "description": "Hint text to add new Category in Settings when category list is empty" - }, - "noCategoryMangaFound": "Aucun manga trouvé dans cette catégorie. \n(Conseil : Vérifiez votre recherche et vos filtres !)", - "@noCategoryMangaFound": { - "description": "Hint text to check filter when manga list is empty in Category tab in Library" - }, - "noChaptersFound": "Aucun chapitre trouvé", - "@noChaptersFound": { - "description": "Text to show that the Chapter list is empty in Manga details Screen" - }, - "noDownloads": "Aucun téléchargement", - "@noDownloads": { - "description": "Text to show that there is no active downloads in Downloads Screen" - }, - "noMangaFound": "Aucun manga trouvé", - "@noMangaFound": { - "description": "Text to show that the Manga list is empty" - }, - "noOfChapters": "{count} chapitres", - "@noOfChapters": { - "description": "Title text to show the number of chapters in the Manga details screen", - "placeholders": { - "count": { - "example": "23", - "type": "int" - } - } - }, - "noResultFound": "Aucun résultat trouvé", - "@noResultFound": { - "description": "Text to show that no results found for the given search query" - }, - "nsfw": "Afficher les extensions et les sources comportant du contenu explicite", - "@nsfw": { - "description": "Switch text to show/hide the nsfw extensions" - }, - "nsfw18": "18+", - "@nsfw18": { - "description": "18+ tag Text to show in extensions list" - }, - "nsfwInfo": "Cela n'empêche pas les extensions non officielles ou potentiellement signalées de manière incorrecte de faire apparaître du contenu explicite (18+) dans l'application", - "@nsfwInfo": { - "description": "Hint text to show that the nsfw switch cannot prevent incorrectly flagged extensions from surfacing" - }, - "readerModeContinuousHorizontalRTL": "Horizontal en continu (De droite à gauche)", - "@readerModeContinuousHorizontalRTL": { - "description": "Radio button text for Reader Mode Type - Continuous Horizontal (RTL)" - }, - "readerModeContinuousVertical": "Vertical en continu", - "@readerModeContinuousVertical": { - "description": "Radio button text for Reader Mode Type - Continuous Vertical" - }, - "readerModeDefaultReader": "Par défaut", - "@readerModeDefaultReader": { - "description": "Radio button text for Reader Mode Type - Default" - }, - "readerModeSingleHorizontalLTR": "Horizontal simple (De gauche à droite)", - "@readerModeSingleHorizontalLTR": { - "description": "Radio button text for Reader Mode Type - Single Horizontal (LTR)" - }, - "readerModeSingleHorizontalRTL": "Horizontal simple (De droite à gauche)", - "@readerModeSingleHorizontalRTL": { - "description": "Radio button text for Reader Mode Type - Single Horizontal (RTL)" - }, - "readerModeSingleVertical": "Vertical simple", - "@readerModeSingleVertical": { - "description": "Radio button text for Reader Mode Type - Single Vertical" - }, - "readerModeWebtoon": "Webtoon", - "@readerModeWebtoon": { - "description": "Radio button text for Reader Mode Type - Webtoon" - }, - "readerNavigationLayout": "Disposition de la navigation", - "@readerNavigationLayout": { - "description": "Popup title and Button text of Reader Navigation Layout popup" - }, - "readerNavigationLayoutDefault": "Par défaut", - "@readerNavigationLayoutDefault": { - "description": "Radio button text for Reader Navigation Layout - Default" - }, - "readerNavigationLayoutDisabled": "Désactivée", - "@readerNavigationLayoutDisabled": { - "description": "Radio button text for Reader Navigation Layout - Disabled" - }, - "readerScrollAnimation": "Animation de défilement", - "@readerScrollAnimation": { - "description": "Switch title to Disable scroll animation in reader screen" - }, - "readerNavigationLayoutKindlish": "Façon Kindle", - "@readerNavigationLayoutKindlish": { - "description": "Radio button text for Reader Navigation Layout - Kindle-ish" - }, - "readerNavigationLayoutLShaped": "En forme de L", - "@readerNavigationLayoutLShaped": { - "description": "Radio button text for Reader Navigation Layout - L Shaped" - }, - "readerNavigationLayoutRightAndLeft": "À droite et à gauche", - "@readerNavigationLayoutRightAndLeft": { - "description": "Radio button text for Reader Navigation Layout - Right And Left" - }, - "readerPadding": "Marges du lecteur", - "@readerPadding": { - "description": "Slider title text for Reader Padding" - }, - "readerMagnifierSize": "Taille de la loupe", - "@readerMagnifierSize": { - "description": "Slider title text for Reader Magnifier Size" - }, - "reddit": "Reddit", - "@reddit": { - "description": "Reddit app title" - }, - "refresh": "Actualiser", - "@refresh": { - "description": "Refresh button text" - }, - "reset": "Réinitialiser", - "@reset": { - "description": "Button text of reset button in source filters" - }, - "restoreBackupDescription": "Restaurer Tachidesk à partir d'une sauvegarde", - "@restoreBackupDescription": { - "description": "Button text description to create backup" - }, - "restoreBackupTitle": "Restaurer la sauvegarde", - "@restoreBackupTitle": { - "description": "Button text to create backup" - }, - "restored": "La sauvegarde a été restaurée !", - "@restored": { - "description": "Toast Text to show that the backup has been restored" - }, - "restoring": "Restauration de la sauvegarde", - "@restoring": { - "description": "Toast Text to show that the backup is restoring" - }, - "versionAvailable": "Version {version} disponible pour l'application {app} !", - "@versionAvailable": { - "description": "Text to show that there is an update to App/Server", - "placeholders": { - "app": { - "example": "Server", - "type": "String" - }, - "version": { - "example": "v0.4.2", - "type": "String" - } - } - }, - "webUI": "Ouvrir sur le Web", - "@webUI": { - "description": "Button text to open in web UI" - }, - "webView": "Vue Web", - "@webView": { - "description": "Button text to open manga website" - }, - "whatsNew": "Quoi de neuf ?", - "@whatsNew": { - "description": "Button text to open whats new page of app in web" - }, - "about": "À propos", - "@about": { - "description": "Screen title and Button text of About screen" - }, - "appLanguage": "Langue de l'application", - "@appLanguage": { - "description": "Popup title and Button text to change App Language" - }, - "createBackupTitle": "Créer une sauvegarde", - "@createBackupTitle": { - "description": "Button text to create backup" - }, - "credentials": "Identifiants", - "@credentials": { - "description": "Popup title and Button text to enter Authentication credentials" - }, - "defaultCategory": "Catégorie par défaut lors de l'ajout d'un nouveau manga à la bibliothèque", - "@defaultCategory": { - "description": "Checkbox description when creating a Category to add manga to the Category by Default" - }, - "displayMode": "Mode d'affichage", - "@displayMode": { - "description": "Radio Group title to change manga Cover display in Library and Source Screens" - }, - "authType": "Type d'authentification", - "@authType": { - "description": "Popup title and Button text to change App Authentication" - }, - "badges": "Badges", - "@badges": { - "description": "Checkbox Group title to enable Badges on manga Cover in Library Screen" - }, - "appearance": "Apparence", - "@appearance": { - "description": "Screen title and Button text of Appearance screen" - }, - "authTypeNone": "Aucune", - "@authTypeNone": { - "description": "Radio button text for no Authentication" - }, - "buildTime": "Temps d'exécution", - "@buildTime": { - "description": "Text title to show build time of Server in About Screen" - }, - "displayModeDescriptiveList": "Liste descriptive", - "@displayModeDescriptiveList": { - "description": "Radio button text for Manga Cover display mode - Descriptive List" - }, - "displayModeGrid": "Grille", - "@displayModeGrid": { - "description": "Radio button text for Manga Cover display mode - Grid" - }, - "displayModeList": "Liste", - "@displayModeList": { - "description": "Radio button text for Manga Cover display mode - List" - }, - "authTypeBasic": "Authentification simple", - "@authTypeBasic": { - "description": "Radio button text for the Basic Authentication type" - }, - "backup": "Sauvegarde et restauration", - "@backup": { - "description": "Screen title and Button text of Backup & Restore screen" - }, - "errorExtension": "Impossible de trouver l'extension sélectionnée", - "@errorExtension": { - "description": "Error Description to show when user selected unknown extension from list" - }, - "installing": "Installation", - "@installing": { - "description": "Button text to show that the extension is installing" - }, - "mangaStatusCompleted": "Terminé", - "@mangaStatusCompleted": { - "description": "Text to show Manga Status Completed in Manga details screen" - }, - "installingExtension": "Installation de l'extension", - "@installingExtension": { - "description": "Toast text to show that the extension is installing" - }, - "mangaGridSize": "Taille de la grille des mangas", - "@mangaGridSize": { - "description": "Popup title and Button text to change Manga Grid size" - }, - "mangaSortAlphabetical": "Ordre alphabétique", - "@mangaSortAlphabetical": { - "description": "Radio button text for Manga sort Type - Alphabetical" - }, - "mangaSortDateAdded": "Date d'ajout", - "@mangaSortDateAdded": { - "description": "Radio button text for Manga sort Type - Date Added" - }, - "mangaMissingSources": "Sources manquantes des mangas", - "@mangaMissingSources": { - "description": "Group title to show the Manga Missing Sources when restoring Backup" - }, - "mangaStatusCancelled": "Annulé", - "@mangaStatusCancelled": { - "description": "Text to show Manga Status Cancelled in Manga details screen" - }, - "moveToBottom": "Déplacer vers le bas", - "@moveToBottom": { - "description": "Button text to move download/category to the bottom of list" - }, - "moveToTop": "Déplacer vers le haut", - "@moveToTop": { - "description": "Button text to move download/category to the top of list" - }, - "password": "Mot de passe", - "@password": { - "description": "Title text for password field" - }, - "pending": "En attente", - "@pending": { - "description": "Pending status Manga Group title in Update Summary Screen" - }, - "noSourcesFound": "Aucune source trouvée", - "@noSourcesFound": { - "description": "Text to show that the Source list is empty" - }, - "noUpdatesFound": "Aucune mise à jour disponible", - "@noUpdatesFound": { - "description": "Toast Text to show that there are no Updates available" - }, - "pause": "Mettre en pause", - "@pause": { - "description": "Button text to pause downloads" - }, - "noUpdatesAvailable": "Vous utilisez la dernière version", - "@noUpdatesAvailable": { - "description": "Text to show that the user is using the latest version of the app" - }, - "numSelected": "{num} sélectionné", - "@numSelected": { - "description": "Title text to show the number of chapters selected in the Manga details screen and Updates screen", - "placeholders": { - "num": { - "example": "23", - "type": "int" - } - } - }, - "obsolete": "Obsolète", - "@obsolete": { - "description": "Text to show that the extension has become Obsolete" - }, - "page": "Page : {number}", - "@page": { - "description": "Text to show the last read Page number of the chapter in Manga details screen", - "placeholders": { - "number": { - "example": "23", - "type": "int" - } - } - }, - "readerMode": "Mode de lecture", - "@readerMode": { - "description": "Popup title and Button text of Reader Mode popup" - }, - "reader": "Lecteur", - "@reader": { - "description": "Screen title and Button text of Reader screen" - }, - "searchingForUpdates": "Recherche de mises à jour", - "@searchingForUpdates": { - "description": "Toast Text for searching for updates of the App/Server" - }, - "readerModeContinuousHorizontalLTR": "Horizontal en continu (De gauche à droite)", - "@readerModeContinuousHorizontalLTR": { - "description": "Radio button text for Reader Mode Type - Continuous Horizontal (LTR)" - }, - "settings": "Paramètres", - "@settings": { - "description": "Screen title and Button text of Settings screen" - }, - "updateCompleted": "Mise à jour terminée", - "@updateCompleted": { - "description": "Button text to show that extension update is completed" - }, - "resume": "Reprendre", - "@resume": { - "description": "Button Text to resume Chapter reading/downloading" - }, - "serverUrl": "URL du serveur", - "@serverUrl": { - "description": "Popup title and Button text to update Server Url" - }, - "retry": "Réessayer", - "@retry": { - "description": "Retry Button Text" - }, - "running": "En cours", - "@running": { - "description": "Running status Manga Group title in Update Summary Screen" - }, - "search": "Rechercher", - "@search": { - "description": "Search field hint Text" - }, - "server": "Serveur", - "@server": { - "description": "Text title for the server in About screen" - }, - "serverUrlHintText": "Saisissez l'URL du serveur", - "@serverUrlHintText": { - "description": "Text Filed hint text to update Server Url" - }, - "serverVersion": "Version du serveur", - "@serverVersion": { - "description": "Text title for the current version of the Server in About screen" - }, - "sourceTypeFilter": "Filtrer", - "@sourceTypeFilter": { - "description": "Tab text Filter for source screen type" - }, - "sourceTypeLatest": "Le plus récent", - "@sourceTypeLatest": { - "description": "Tab text Latest for source screen type" - }, - "start": "Commencer", - "@start": { - "description": "Button text start reading the manga" - }, - "unknownSource": "Source inconnue", - "@unknownSource": { - "description": "Text to show unknown Source in Manga details screen" - }, - "updates": "Mises à jour", - "@updates": { - "description": "Screen title and Button text of Updates screen" - }, - "updatesSummary": "Récapitulatif des mises à jour", - "@updatesSummary": { - "description": "Screen title and Button text of Updates Summary screen" - }, - "userName": "Nom d'utilisateur", - "@userName": { - "description": "Title text for User Name field" - }, - "save": "Enregistrer", - "@save": { - "description": "Save Button Text" - }, - "sort": "Trier", - "@sort": { - "description": "title of sort Tab across the app" - }, - "source": "Source", - "@source": { - "description": "Screen title and Button text of source screen" - }, - "sourceTypePopular": "Populaire", - "@sourceTypePopular": { - "description": "Tab text Popular for source screen type" - }, - "sources": "Sources", - "@sources": { - "description": "title of Sources Tab in Browse Screen" - }, - "uninstall": "Désinstaller", - "@uninstall": { - "description": "Button text to Uninstall the extension" - }, - "unknownAuthor": "Auteur inconnu", - "@unknownAuthor": { - "description": "Text to show unknown author in Manga details screen" - }, - "themeModeDark": "Sombre", - "@themeModeDark": { - "description": "Radio button text for App theme - Dark" - }, - "themeModeLight": "Clair", - "@themeModeLight": { - "description": "Radio button text for App theme - Light" - }, - "themeModeSystem": "Système", - "@themeModeSystem": { - "description": "Radio button text for App theme - System" - }, - "uninstalling": "Désinstallation", - "@uninstalling": { - "description": "Button text to show that the extension is uninstalling" - }, - "unknownManga": "Manga inconnu", - "@unknownManga": { - "description": "Text to show unknown manga in Manga details screen" - }, - "unread": "Non lu", - "@unread": { - "description": "Checkbox text to unread bookmarked manga/chapters across app" - }, - "updating": "Mise à jour en cours", - "@updating": { - "description": "Button text to show that the extension is updating" - }, - "update": "Mettre à jour", - "@update": { - "description": "Button text to update the extension" - }, - "quickSearchSource": "", - "@quickSearchSource": { - "description": "Quick Open Hint text for Source S with prefill '@S'" - }, - "quickSearchSourceManga": "", - "@quickSearchSourceManga": { - "description": "Quick Open Hint text for searching Manga M in Source S with prefill '@S/M'" - }, - "quickSearchCategoryMangaChapter": "", - "@quickSearchCategoryMangaChapter": { - "description": "Quick Open Hint text for searching Chapter name CN from Manga M in Source S with prefill '#C/M:CN'" - }, - "readerNavigationLayoutEdge": "", - "@readerNavigationLayoutEdge": { - "description": "Radio button text for Reader Navigation Layout - Edge" - }, - "readerNavigationLayoutInvert": "", - "@readerNavigationLayoutInvert": { - "description": "Switch title to invert Tap to scroll in reader screen" - }, - "serverPort": "", - "@serverPort": { - "description": "Popup title and Button text to update Server Port" - }, - "serverPortHintText": "", - "@serverPortHintText": { - "description": "Text Filed hint text to update Server Port" - }, - "noServerFound": "", - "@noServerFound": { - "description": "Text to show that no Server found in locale network" - }, - "findServer": "", - "@findServer": { - "description": "Button text of Find Server" - }, - "allScanlators": "", - "@allScanlators": { - "description": "Text for all Scanlators in manga description screen chapter filter" - }, - "quickSearchCategory": "", - "@quickSearchCategory": { - "description": "Quick Open Hint text for Category C with prefill '#C'" - }, - "quickSearchContext": "", - "@quickSearchContext": { - "description": "Quick Open Hint text for query X" - }, - "scanlators": "", - "@scanlators": { - "description": "Title text for Scanlators" - }, - "quickSearchCategoryManga": "", - "@quickSearchCategoryManga": { - "description": "Quick Open Hint text for searching Manga M in Category C with prefill '#C/M'" - } -} diff --git a/lib/src/l10n/app_ja.arb b/lib/src/l10n/app_ja.arb deleted file mode 100644 index 725bd4c2..00000000 --- a/lib/src/l10n/app_ja.arb +++ /dev/null @@ -1,14 +0,0 @@ -{ - "addCategory": "カテゴリーを追加", - "@addCategory": { - "description": "Popup title and Button text to add new category in Edit Category Screen" - }, - "addToLibrary": "ライブラリに追加", - "@addToLibrary": { - "description": "Button text to add Manga to Library in Manga Details Screen" - }, - "about": "このアプリについて", - "@about": { - "description": "Screen title and Button text of About screen" - } -} diff --git a/lib/src/l10n/app_ko.arb b/lib/src/l10n/app_ko.arb deleted file mode 100644 index f46f0a1c..00000000 --- a/lib/src/l10n/app_ko.arb +++ /dev/null @@ -1,142 +0,0 @@ -{ - "about": "정보", - "@about": { - "description": "Screen title and Button text of About screen" - }, - "appLanguage": "앱 언어", - "@appLanguage": { - "description": "Popup title and Button text to change App Language" - }, - "appTheme": "앱 테마", - "@appTheme": { - "description": "Popup title and Button text to change App Theme" - }, - "appTitle": "Tachidesk Sorayomi", - "@appTitle": { - "description": "Name of the app (Tachidesk Sorayomi in native script)" - }, - "appearance": "모양", - "@appearance": { - "description": "Screen title and Button text of Appearance screen" - }, - "authType": "인증 유형", - "@authType": { - "description": "Popup title and Button text to change App Authentication" - }, - "authTypeBasic": "기본 인증", - "@authTypeBasic": { - "description": "Radio button text for the Basic Authentication type" - }, - "channel": "버전", - "@channel": { - "description": "Text title to show Channel of the Server (Stable, preview) in About Screen" - }, - "chapterNumber": "챕터 {number}", - "@chapterNumber": { - "description": "Text title for Chapter name in chapter list", - "placeholders": { - "number": { - "example": "12.5", - "type": "double" - } - } - }, - "chapterSortFetchedDate": "회차 번호 기준", - "@chapterSortFetchedDate": { - "description": "Radio button text for sort by Fetched Date" - }, - "chapterSortSource": "소스 기준", - "@chapterSortSource": { - "description": "Radio button text for sort by Source" - }, - "checkForServerUpdates": "서버 업데이트 확인", - "@checkForServerUpdates": { - "description": "Button text to check for Server updates" - }, - "checkForUpdates": "업데이트 확인", - "@checkForUpdates": { - "description": "Button text to check for App Updates" - }, - "completed": "완료됨", - "@completed": { - "description": "Checkbox text to filter Completed mangas in Library screen and Manga Grouping text in Update Summary screen" - }, - "copyMsg": "'{msg}' 복사됨!", - "@copyMsg": { - "description": "Toast text to show that the message has been copied", - "placeholders": { - "msg": { - "example": "Client : Tachidesk Sorayomi", - "type": "String" - } - } - }, - "createBackupTitle": "백업 생성", - "@createBackupTitle": { - "description": "Button text to create backup" - }, - "credentials": "증명", - "@credentials": { - "description": "Popup title and Button text to enter Authentication credentials" - }, - "addCategory": "카테고리 추가", - "@addCategory": { - "description": "Popup title and Button text to add new category in Edit Category Screen" - }, - "authTypeNone": "없음", - "@authTypeNone": { - "description": "Radio button text for no Authentication" - }, - "bookmarked": "북마크 됨", - "@bookmarked": { - "description": "Checkbox text to filter bookmarked manga chapters in Manga Details screen" - }, - "addToLibrary": "라이브러리에 추가", - "@addToLibrary": { - "description": "Button text to add Manga to Library in Manga Details Screen" - }, - "backup": "백업 및 복원", - "@backup": { - "description": "Screen title and Button text of Backup & Restore screen" - }, - "buildTime": "만들어진 시간", - "@buildTime": { - "description": "Text title to show build time of Server in About Screen" - }, - "browse": "찾아보기", - "@browse": { - "description": "Screen title, Navigation Bar text and Button text of both Browse screen and Browse Settings Screen" - }, - "cancel": "취소", - "@cancel": { - "description": "Text for Cancel button in a Popup" - }, - "categoryUpdate": "카테고리 업데이트", - "@categoryUpdate": { - "description": "Button text to update the mangas in the Category" - }, - "cacheCleared": "캐시 정리", - "@cacheCleared": { - "description": "Toast Text to show after clearing cache" - }, - "categories": "카테고리", - "@categories": { - "description": "Button text of edit Categories screen in Library settings screen" - }, - "chapterSortUploadDate": "업로드 날짜 기준", - "@chapterSortUploadDate": { - "description": "Radio button text for sort by Upload Date" - }, - "close": "닫기", - "@close": { - "description": "Text for close button" - }, - "clearCache": "캐시 정리", - "@clearCache": { - "description": "Button text for clear cache in General Settings screen" - }, - "daysAgo": "{days} 일 지남", - "@daysAgo": { - "description": "Days ago text to show the release date of manga" - } -} diff --git a/lib/src/l10n/app_pt.arb b/lib/src/l10n/app_pt.arb deleted file mode 100644 index 5e74ca73..00000000 --- a/lib/src/l10n/app_pt.arb +++ /dev/null @@ -1,435 +0,0 @@ -{ - "@@locale": "pt", - "about": "Sobre", - "@about": {}, - "addCategory": "Adicionar Categoria", - "@addCategory": {}, - "addToLibrary": "Adicionar à biblioteca", - "@addToLibrary": {}, - "appLanguage": "Idioma da aplicação", - "@appLanguage": {}, - "appTheme": "Tema da Aplicação", - "@appTheme": {}, - "appTitle": "Tachidesk Sorayomi", - "@appTitle": {}, - "appearance": "Aparência", - "@appearance": {}, - "authType": "Tipo de autenticação", - "@authType": {}, - "authTypeBasic": "Autenticação Básica", - "@authTypeBasic": {}, - "authTypeNone": "Nenhum", - "@authTypeNone": {}, - "backup": "Cópia de segurança e restaurar", - "@backup": {}, - "badges": "Distintivos", - "@badges": {}, - "bookmarked": "Marcado", - "@bookmarked": {}, - "browse": "Procurar", - "@browse": {}, - "buildTime": "Tempo de compilação", - "@buildTime": {}, - "cancel": "Cancelar", - "@cancel": {}, - "categories": "Categorias", - "@categories": {}, - "category": "Categoria", - "@category": {}, - "categoryUpdate": "Atualização de categoria", - "@categoryUpdate": {}, - "channel": "Canal", - "@channel": {}, - "chapterNumber": "Capítulo {number}", - "@chapterNumber": {}, - "chapterSortFetchedDate": "Por dados recolhidos", - "@chapterSortFetchedDate": {}, - "chapterSortSource": "Por fonte", - "@chapterSortSource": {}, - "checkForServerUpdates": "Procurar atualizações do servidor", - "@checkForServerUpdates": {}, - "checkForUpdates": "Procurar atualizações", - "@checkForUpdates": {}, - "client": "Client", - "@client": {}, - "clientVersion": "Versão Client", - "@clientVersion": {}, - "close": "Fechar", - "@close": {}, - "completed": "Completo", - "@completed": {}, - "copyMsg": "'{msg}' Copiado para área de transferência!", - "@copyMsg": {}, - "create": "Criar", - "@create": {}, - "createBackupDescription": "Cópia da Biblioteca como cópia de segurança de Tachidesk", - "@createBackupDescription": {}, - "createBackupTitle": "Criar cópia de segurança", - "@createBackupTitle": {}, - "credentials": "Credenciais", - "@credentials": {}, - "current": "Atuais", - "@current": {}, - "defaultCategory": "Categoria predefinida quando um novo mangá é adicionado à biblioteca", - "@defaultCategory": {}, - "delete": "Remover", - "@delete": {}, - "deleteCategoryDescription": "Isto irá fundir todos os mangas desta categoria para predefinidos!", - "@deleteCategoryDescription": {}, - "deleteCategoryTitle": "Tem a certeza?", - "@deleteCategoryTitle": {}, - "discord": "Discord", - "@discord": {}, - "display": "Exibir", - "@display": {}, - "displayMode": "Modo de exibição", - "@displayMode": {}, - "displayModeDescriptiveList": "Lista descritiva", - "@displayModeDescriptiveList": {}, - "displayModeGrid": "Grelha", - "@displayModeGrid": {}, - "displayModeList": "Lista", - "@displayModeList": {}, - "downloaded": "Transferidos", - "@downloaded": {}, - "downloads": "Transferências", - "@downloads": {}, - "edit": "Editar", - "@edit": {}, - "editCategory": "Editar Categoria", - "@editCategory": {}, - "emptyCategory": "Nome da categoria não pode ficar em branco", - "@emptyCategory": {}, - "errorExtension": "Não foi possível encontrar a extensão selecionada", - "@errorExtension": {}, - "errorFilePick": "Arquivo não selecionado!", - "@errorFilePick": {}, - "errorFilePickUnknownExtension": "Por favor selecione um arquivo com {extensionName} extensão", - "@errorFilePickUnknownExtension": {}, - "errorLaunchURL": "Falha ao abrir!\nA Copiar \"{url}\" para a área de transferência", - "@errorLaunchURL": {}, - "errorPassword": "Senha não pode ficar em branco", - "@errorPassword": {}, - "errorSomethingWentWrong": "Algo correu mal!", - "@errorSomethingWentWrong": {}, - "errorUserName": "Nome de utilizador não pode ficar em branco", - "@errorUserName": {}, - "extensionInstalled": "Extensão instalada!", - "@extensionInstalled": {}, - "extensionListEmpty": "Lista de extensão está vazia", - "@extensionListEmpty": {}, - "extensions": "Extensões", - "@extensions": {}, - "failed": "Falha", - "@failed": {}, - "filter": "Filtro", - "@filter": {}, - "finished": "Concluído", - "@finished": {}, - "general": "Geral", - "@general": {}, - "gitHub": "GitHub", - "@gitHub": {}, - "globalSearch": "Procura global", - "@globalSearch": {}, - "globalUpdate": "Atualização global", - "@globalUpdate": {}, - "help": "Ajuda", - "@help": {}, - "inLibrary": "Na Biblioteca", - "@inLibrary": {}, - "install": "Instalar", - "@install": {}, - "installing": "A Instalar", - "@installing": {}, - "installingExtension": "Instalando extensão", - "@installingExtension": {}, - "languages": "Idiomas", - "@languages": {}, - "latest": "Mais recente", - "@latest": {}, - "library": "Biblioteca", - "@library": {}, - "manga": "Manga", - "@manga": {}, - "mangaMissingSources": "Fontes do manga em falta", - "@mangaMissingSources": {}, - "mangaSortAlphabetical": "Ordem alfabética", - "@mangaSortAlphabetical": {}, - "mangaSortDateAdded": "Data adicionada", - "@mangaSortDateAdded": {}, - "mangaSortUnread": "Não lido", - "@mangaSortUnread": {}, - "mangaSortLastRead": "Última leitura", - "@mangaSortLastRead": {}, - "mangaStatusCancelled": "Cancelado", - "@mangaStatusCancelled": {}, - "mangaStatusCompleted": "Completo", - "@mangaStatusCompleted": {}, - "mangaStatusLicensed": "Licenciado", - "@mangaStatusLicensed": {}, - "mangaStatusOnHiatus": "Em curso", - "@mangaStatusOnHiatus": {}, - "mangaStatusOngoing": "Em pausa", - "@mangaStatusOngoing": {}, - "mangaStatusPublishingFinished": "Publicação concluída", - "@mangaStatusPublishingFinished": {}, - "mangaStatusUnknown": "Desconhecido", - "@mangaStatusUnknown": {}, - "missingExtension": "Extensões em falta", - "@missingExtension": {}, - "missingTrackers": "Rasteadores em falta", - "@missingTrackers": {}, - "more": "Mais", - "@more": {}, - "moveToBottom": "Mover para baixo", - "@moveToBottom": {}, - "moveToTop": "Mover para cima", - "@moveToTop": {}, - "nameCountDisplay": "{name}: {count}", - "@nameCountDisplay": {}, - "newUpdateAvailable": "Nova atualização disponível", - "@newUpdateAvailable": {}, - "noCategoriesFound": "Não tem nenhuma categoria.\nToque no botão mais para criar uma categoria para organizar a sua biblioteca", - "@noCategoriesFound": {}, - "noCategoriesFoundAlt": "Não tem nenhuma categoria.\nCria uma nas definições para organizar a sua biblioteca", - "@noCategoriesFoundAlt": {}, - "noCategoryMangaFound": "Nenhum manga encontrado nesta categoria.\n(Dica: Verifique as suas pesquisas e filtros!)", - "@noCategoryMangaFound": {}, - "noChaptersFound": "Nenhum capítulo encontrado", - "@noChaptersFound": {}, - "noDownloads": "Nenhuma transferência", - "@noDownloads": {}, - "noMangaFound": "Nenhum manga encontrado", - "@noMangaFound": {}, - "noOfChapters": "{count} Capítulos", - "@noOfChapters": {}, - "noResultFound": "Nenhum resultado encontrado", - "@noResultFound": {}, - "noSourcesFound": "Nenhuma fonte encontrada", - "@noSourcesFound": {}, - "noUpdatesAvailable": "Está a usar a versão mais recente", - "@noUpdatesAvailable": {}, - "noUpdatesFound": "Nenhuma atualização encontrada", - "@noUpdatesFound": {}, - "nsfw": "Mostrar extensões e fontes NSFW", - "@nsfw": {}, - "nsfw18": "18+", - "@nsfw18": {}, - "nsfwInfo": "Isto não impede extensões não oficiais ou incorretamente marcadas de mostrarem conteúdo NSFW (18+) dentro da aplicação", - "@nsfwInfo": {}, - "numSelected": "{num} Selecionado", - "@numSelected": {}, - "obsolete": "Obsoleta", - "@obsolete": {}, - "page": "Página: {number}", - "@page": {}, - "password": "Senha", - "@password": {}, - "pause": "Pausa", - "@pause": {}, - "pending": "Pendente", - "@pending": {}, - "reader": "Leitor", - "@reader": {}, - "readerMode": "Modo de leitura", - "@readerMode": {}, - "readerModeContinuousHorizontalLTR": "Horizontal Contínuo (LTR)", - "@readerModeContinuousHorizontalLTR": {}, - "readerModeContinuousHorizontalRTL": "Horizontal Contínuo (RTL)", - "@readerModeContinuousHorizontalRTL": {}, - "readerModeContinuousVertical": "Vertical Contínuo", - "@readerModeContinuousVertical": {}, - "readerModeDefaultReader": "Predefinido", - "@readerModeDefaultReader": {}, - "readerModeSingleHorizontalLTR": "Horizontal único (LTR)", - "@readerModeSingleHorizontalLTR": {}, - "readerModeSingleHorizontalRTL": "Horizontal único (RTL)", - "@readerModeSingleHorizontalRTL": {}, - "readerModeSingleVertical": "Vertical único", - "@readerModeSingleVertical": {}, - "readerModeWebtoon": "Webtoon", - "@readerModeWebtoon": {}, - "readerNavigationLayout": "Disposição de Navegação", - "@readerNavigationLayout": {}, - "readerNavigationLayoutDefault": "Predefinido", - "@readerNavigationLayoutDefault": {}, - "readerNavigationLayoutDisabled": "Desativado", - "@readerNavigationLayoutDisabled": {}, - "readerNavigationLayoutEdge": "Borda", - "@readerNavigationLayoutEdge": {}, - "readerNavigationLayoutInvert": "Inverter toque", - "@readerNavigationLayoutInvert": {}, - "readerNavigationLayoutKindlish": "Formato Kindle-ish", - "@readerNavigationLayoutKindlish": {}, - "readerNavigationLayoutLShaped": "Formato L", - "@readerNavigationLayoutLShaped": {}, - "readerNavigationLayoutRightAndLeft": "Direita para Esquerda", - "@readerNavigationLayoutRightAndLeft": {}, - "reddit": "Reddit", - "@reddit": {}, - "refresh": "Recarregar", - "@refresh": {}, - "reset": "Reiniciar", - "@reset": {}, - "restoreBackupDescription": "Restaurar Tachidesk pela cópia de segurança", - "@restoreBackupDescription": {}, - "restoreBackupTitle": "Restaurar cópia de segurança", - "@restoreBackupTitle": {}, - "restored": "Cópia de segurança restaurada!", - "@restored": {}, - "restoring": "Restaurando backup", - "@restoring": {}, - "resume": "Continuar", - "@resume": {}, - "retry": "Tentar novamente", - "@retry": {}, - "running": "Em execução", - "@running": {}, - "save": "Guardar", - "@save": {}, - "search": "Procurar", - "@search": {}, - "searchingForUpdates": "Procurando por atualizações", - "@searchingForUpdates": {}, - "server": "Servidor", - "@server": {}, - "serverUrl": "URL do Server", - "@serverUrl": {}, - "serverUrlHintText": "URL do servidor", - "@serverUrlHintText": {}, - "serverVersion": "Versão do servidor", - "@serverVersion": {}, - "settings": "Definições", - "@settings": {}, - "sort": "Ordenar", - "@sort": {}, - "source": "Fonte", - "@source": {}, - "sourceTypeFilter": "Filtro", - "@sourceTypeFilter": {}, - "sourceTypeLatest": "Mais recentes", - "@sourceTypeLatest": {}, - "sourceTypePopular": "Popular", - "@sourceTypePopular": {}, - "sources": "Fontes", - "@sources": {}, - "start": "Inicio", - "@start": {}, - "themeModeDark": "Escuro", - "@themeModeDark": {}, - "themeModeLight": "Claro", - "@themeModeLight": {}, - "themeModeSystem": "Sistema", - "@themeModeSystem": {}, - "uninstall": "Desinstalar", - "@uninstall": {}, - "uninstalling": "A Desinstalar", - "@uninstalling": {}, - "unknown": "Desconhecido", - "@unknown": {}, - "unknownAuthor": "Autor Desconhecido", - "@unknownAuthor": {}, - "unknownManga": "Manga Desconhecido", - "@unknownManga": {}, - "unknownSource": "Fonte Desconhecida", - "@unknownSource": {}, - "unread": "Não lida", - "@unread": {}, - "update": "Atualização", - "@update": {}, - "updateCompleted": "Atualização Completa", - "@updateCompleted": {}, - "updates": "Atualizações", - "@updates": {}, - "updatesSummary": "Resumo de Atualizações", - "@updatesSummary": {}, - "updating": "Atualizando", - "@updating": {}, - "userName": "Nome de Utilizador", - "@userName": {}, - "versionAvailable": "Versão {version} disponivel para {app}!!", - "@versionAvailable": {}, - "webUI": "Abrir no WEB", - "@webUI": {}, - "webView": "WebView", - "@webView": {}, - "whatsNew": "O que há de Novo?", - "@whatsNew": {}, - "clearCache": "Limpar Cache", - "@clearCache": { - "description": "Button text for clear cache in General Settings screen" - }, - "cacheCleared": "Cache limpo", - "@cacheCleared": { - "description": "Toast Text to show after clearing cache" - }, - "serverPort": "Porta do servidor", - "@serverPort": { - "description": "Popup title and Button text to update Server Port" - }, - "serverPortHintText": "Porta do servidor", - "@serverPortHintText": { - "description": "Text Filed hint text to update Server Port" - }, - "findServer": "Procurar", - "@findServer": { - "description": "Button text of Find Server" - }, - "chapterSortUploadDate": "Por ordem de envio", - "@chapterSortUploadDate": { - "description": "Radio button text for sort by Upload Date" - }, - "readerScrollAnimation": "Animação de rolagem", - "@readerScrollAnimation": { - "description": "Switch title to Disable scroll animation in reader screen" - }, - "readerMagnifierSize": "Tamanho da Lupa", - "@readerMagnifierSize": { - "description": "Slider title text for Reader Magnifier Size" - }, - "quickSearchCategoryManga": "Pesquisa o Manga 'M' na categoria 'C'", - "@quickSearchCategoryManga": { - "description": "Quick Open Hint text for searching Manga M in Category C with prefill '#C/M'" - }, - "quickSearchCategory": "Vá para categoria 'C'", - "@quickSearchCategory": { - "description": "Quick Open Hint text for Category C with prefill '#C'" - }, - "quickSearchSource": "Pesquisa a fonte 'S'", - "@quickSearchSource": { - "description": "Quick Open Hint text for Source S with prefill '@S'" - }, - "quickSearchCategoryMangaChapter": "Pesquisa o capítulo 'CN' na manga 'M' na Categoria 'C'", - "@quickSearchCategoryMangaChapter": { - "description": "Quick Open Hint text for searching Chapter name CN from Manga M in Source S with prefill '#C/M:CN'" - }, - "noServerFound": "Servidor não encontrado em sua rede local", - "@noServerFound": { - "description": "Text to show that no Server found in locale network" - }, - "quickSearchContext": "Pesquisa padrão (Resultado baseado nas informações da tela)", - "@quickSearchContext": { - "description": "Quick Open Hint text for query X" - }, - "readerPadding": "Preenchimento do leitor", - "@readerPadding": { - "description": "Slider title text for Reader Padding" - }, - "quickSearchSourceManga": "Pesquisa o mangá 'M' na fonte 'S'", - "@quickSearchSourceManga": { - "description": "Quick Open Hint text for searching Manga M in Source S with prefill '@S/M'" - }, - "scanlators": "Scans", - "@scanlators": { - "description": "Title text for Scanlators" - }, - "allScanlators": "Todas as Scans", - "@allScanlators": { - "description": "Text for all Scanlators in manga description screen chapter filter" - }, - "mangaGridSize": "Tamanho da tela do mangá", - "@mangaGridSize": { - "description": "Popup title and Button text to change Manga Grid size" - } -} diff --git a/lib/src/l10n/app_pt_PT.arb b/lib/src/l10n/app_pt_PT.arb deleted file mode 100644 index 95e406a6..00000000 --- a/lib/src/l10n/app_pt_PT.arb +++ /dev/null @@ -1,439 +0,0 @@ -{ - "@@locale": "pt_PT", - "about": "Sobre", - "@about": {}, - "addCategory": "Adicionar Categoria", - "@addCategory": {}, - "addToLibrary": "Adicionar à biblioteca", - "@addToLibrary": {}, - "appLanguage": "Idioma da aplicação", - "@appLanguage": {}, - "appTheme": "Tema da Aplicação", - "@appTheme": {}, - "appTitle": "Tachidesk Sorayomi", - "@appTitle": {}, - "appearance": "Aparência", - "@appearance": {}, - "authType": "Tipo de autenticação", - "@authType": {}, - "authTypeBasic": "Autenticação Básica", - "@authTypeBasic": {}, - "authTypeNone": "Nenhum", - "@authTypeNone": {}, - "backup": "Cópia de segurança e restaurar", - "@backup": {}, - "badges": "Distintivos", - "@badges": {}, - "bookmarked": "Marcado", - "@bookmarked": {}, - "browse": "Procurar", - "@browse": {}, - "buildTime": "Tempo de compilação", - "@buildTime": {}, - "cancel": "Cancelar", - "@cancel": {}, - "categories": "Categorias", - "@categories": {}, - "category": "Categoria", - "@category": {}, - "categoryUpdate": "Atualização de categoria", - "@categoryUpdate": {}, - "channel": "Canal", - "@channel": {}, - "chapterNumber": "Capítulo {number}", - "@chapterNumber": {}, - "chapterSortFetchedDate": "Recolhidos por data", - "@chapterSortFetchedDate": {}, - "chapterSortSource": "Por fonte", - "@chapterSortSource": {}, - "checkForServerUpdates": "Procurar atualizações do servidor", - "@checkForServerUpdates": {}, - "checkForUpdates": "Procurar atualizações", - "@checkForUpdates": {}, - "client": "Client", - "@client": {}, - "clientVersion": "Versão Client", - "@clientVersion": {}, - "close": "Fechar", - "@close": {}, - "completed": "Completo", - "@completed": {}, - "copyMsg": "\"{msg}\" Copiado!", - "@copyMsg": {}, - "create": "Criar", - "@create": {}, - "createBackupDescription": "Cópia da Biblioteca como cópia de segurança de Tachidesk", - "@createBackupDescription": {}, - "createBackupTitle": "Criar cópia de segurança", - "@createBackupTitle": {}, - "credentials": "Credenciais", - "@credentials": {}, - "current": "Atuais", - "@current": {}, - "defaultCategory": "Categoria predefinida quando um novo mangá é adicionado à biblioteca", - "@defaultCategory": {}, - "delete": "Remover", - "@delete": {}, - "deleteCategoryDescription": "Isto irá fundir todos os mangas desta categoria para predefinidos!", - "@deleteCategoryDescription": {}, - "deleteCategoryTitle": "Tem a certeza?", - "@deleteCategoryTitle": {}, - "discord": "Discord", - "@discord": {}, - "display": "Exibir", - "@display": {}, - "displayMode": "Modo de exibição", - "@displayMode": {}, - "displayModeDescriptiveList": "Lista descritiva", - "@displayModeDescriptiveList": {}, - "displayModeGrid": "Grelha", - "@displayModeGrid": {}, - "displayModeList": "Lista", - "@displayModeList": {}, - "downloaded": "Transferidos", - "@downloaded": {}, - "downloads": "Transferências", - "@downloads": {}, - "edit": "Editar", - "@edit": {}, - "editCategory": "Editar Categoria", - "@editCategory": {}, - "emptyCategory": "Nome da categoria não pode ficar em branco", - "@emptyCategory": {}, - "errorExtension": "Não foi possível encontrar a extensão selecionada", - "@errorExtension": {}, - "errorFilePick": "Arquivo não selecionado!", - "@errorFilePick": {}, - "errorFilePickUnknownExtension": "Por favor selecione um arquivo com {extensionName} extensão", - "@errorFilePickUnknownExtension": {}, - "errorLaunchURL": "Falha ao abrir!\nA Copiar \"{url}\" para a área de transferência", - "@errorLaunchURL": {}, - "errorPassword": "Senha não pode ficar em branco", - "@errorPassword": {}, - "errorSomethingWentWrong": "Algo correu mal!", - "@errorSomethingWentWrong": {}, - "errorUserName": "Nome de utilizador não pode ficar em branco", - "@errorUserName": {}, - "extensionInstalled": "Extensão instalada!", - "@extensionInstalled": {}, - "extensionListEmpty": "Lista de extensão está vazia", - "@extensionListEmpty": {}, - "extensions": "Extensões", - "@extensions": {}, - "failed": "Falha", - "@failed": {}, - "filter": "Filtro", - "@filter": {}, - "finished": "Concluído", - "@finished": {}, - "general": "Geral", - "@general": {}, - "gitHub": "GitHub", - "@gitHub": {}, - "globalSearch": "Procura global", - "@globalSearch": {}, - "globalUpdate": "Atualização global", - "@globalUpdate": {}, - "help": "Ajuda", - "@help": {}, - "inLibrary": "Na Biblioteca", - "@inLibrary": {}, - "install": "Instalar", - "@install": {}, - "installing": "A Instalar", - "@installing": {}, - "installingExtension": "A instalar extensões", - "@installingExtension": {}, - "languages": "Idiomas", - "@languages": {}, - "latest": "Mais recente", - "@latest": {}, - "library": "Biblioteca", - "@library": {}, - "manga": "Manga", - "@manga": {}, - "mangaMissingSources": "Fontes do manga em falta", - "@mangaMissingSources": {}, - "mangaSortAlphabetical": "Ordem alfabética", - "@mangaSortAlphabetical": {}, - "mangaSortDateAdded": "Data adicionada", - "@mangaSortDateAdded": {}, - "mangaSortUnread": "Não lido", - "@mangaSortUnread": {}, - "mangaSortLastRead": "Última leitura", - "@mangaSortLastRead": {}, - "mangaStatusCancelled": "Cancelado", - "@mangaStatusCancelled": {}, - "mangaStatusCompleted": "Completo", - "@mangaStatusCompleted": {}, - "mangaStatusLicensed": "Licenciado", - "@mangaStatusLicensed": {}, - "mangaStatusOnHiatus": "Em curso", - "@mangaStatusOnHiatus": {}, - "mangaStatusOngoing": "Em pausa", - "@mangaStatusOngoing": {}, - "mangaStatusPublishingFinished": "Publicação concluída", - "@mangaStatusPublishingFinished": {}, - "mangaStatusUnknown": "Desconhecido", - "@mangaStatusUnknown": {}, - "missingExtension": "Extensões em falta", - "@missingExtension": {}, - "missingTrackers": "Rasteadores em falta", - "@missingTrackers": {}, - "more": "Mais", - "@more": {}, - "moveToBottom": "Mover para baixo", - "@moveToBottom": {}, - "moveToTop": "Mover para cima", - "@moveToTop": {}, - "nameCountDisplay": "{name}: {count}", - "@nameCountDisplay": {}, - "newUpdateAvailable": "Nova atualização disponível", - "@newUpdateAvailable": {}, - "noCategoriesFound": "Não tem nenhuma categoria.\n(Dica: Toque no botão mais para criar uma categoria para organizar a sua biblioteca)", - "@noCategoriesFound": {}, - "noCategoriesFoundAlt": "Não tem nenhuma categoria.\nCria uma nas definições para organizar a sua biblioteca", - "@noCategoriesFoundAlt": {}, - "noCategoryMangaFound": "Nenhum manga encontrado nesta categoria.\n(Dica: Verifique as suas pesquisas e filtros!)", - "@noCategoryMangaFound": {}, - "noChaptersFound": "Nenhum capítulo encontrado", - "@noChaptersFound": {}, - "noDownloads": "Nenhuma transferência", - "@noDownloads": {}, - "noMangaFound": "Nenhum manga encontrado", - "@noMangaFound": {}, - "noOfChapters": "{count} Capítulos", - "@noOfChapters": {}, - "noResultFound": "Nenhum resultado encontrado", - "@noResultFound": {}, - "noSourcesFound": "Nenhuma fonte encontrada", - "@noSourcesFound": {}, - "noUpdatesAvailable": "Está a usar a versão mais recente", - "@noUpdatesAvailable": {}, - "noUpdatesFound": "Nenhuma atualização encontrada", - "@noUpdatesFound": {}, - "nsfw": "Mostrar extensões e fontes NSFW", - "@nsfw": {}, - "nsfw18": "18+", - "@nsfw18": {}, - "nsfwInfo": "Isto não impede extensões não oficiais ou incorretamente marcadas de mostrarem conteúdo NSFW (18+) dentro da aplicação", - "@nsfwInfo": {}, - "numSelected": "{num} Selecionado", - "@numSelected": {}, - "obsolete": "Obsoleta", - "@obsolete": {}, - "page": "Página: {number}", - "@page": {}, - "password": "Senha", - "@password": {}, - "pause": "Pausa", - "@pause": {}, - "pending": "Pendente", - "@pending": {}, - "reader": "Leitor", - "@reader": {}, - "readerMode": "Modo de leitura", - "@readerMode": {}, - "readerModeContinuousHorizontalLTR": "Horizontal Contínuo (LTR)", - "@readerModeContinuousHorizontalLTR": {}, - "readerModeContinuousHorizontalRTL": "Horizontal Contínuo (RTL)", - "@readerModeContinuousHorizontalRTL": {}, - "readerModeContinuousVertical": "Vertical Contínuo", - "@readerModeContinuousVertical": {}, - "readerModeDefaultReader": "Predefinido", - "@readerModeDefaultReader": {}, - "readerModeSingleHorizontalLTR": "Horizontal único (LTR)", - "@readerModeSingleHorizontalLTR": {}, - "readerModeSingleHorizontalRTL": "Horizontal único (RTL)", - "@readerModeSingleHorizontalRTL": {}, - "readerModeSingleVertical": "Vertical único", - "@readerModeSingleVertical": {}, - "readerModeWebtoon": "Webtoon", - "@readerModeWebtoon": {}, - "readerNavigationLayout": "Disposição de Navegação", - "@readerNavigationLayout": {}, - "readerNavigationLayoutDefault": "Predefinido", - "@readerNavigationLayoutDefault": {}, - "readerNavigationLayoutDisabled": "Desativado", - "@readerNavigationLayoutDisabled": {}, - "readerNavigationLayoutEdge": "Borda", - "@readerNavigationLayoutEdge": {}, - "readerNavigationLayoutInvert": "Inverter toque", - "@readerNavigationLayoutInvert": {}, - "readerNavigationLayoutKindlish": "Kindle-ish", - "@readerNavigationLayoutKindlish": {}, - "readerNavigationLayoutLShaped": "Formato L", - "@readerNavigationLayoutLShaped": {}, - "readerNavigationLayoutRightAndLeft": "Direita para Esquerda", - "@readerNavigationLayoutRightAndLeft": {}, - "reddit": "Reddit", - "@reddit": {}, - "refresh": "Recarregar", - "@refresh": {}, - "reset": "Reiniciar", - "@reset": {}, - "restoreBackupDescription": "Restaurar Tachidesk pela cópia de segurança", - "@restoreBackupDescription": {}, - "restoreBackupTitle": "Restaurar cópia de segurança", - "@restoreBackupTitle": {}, - "restored": "Cópia de segurança restaurada!", - "@restored": {}, - "restoring": "A restaurar cópia de segurança", - "@restoring": {}, - "resume": "Continuar", - "@resume": {}, - "retry": "Tentar novamente", - "@retry": {}, - "running": "Em execução", - "@running": {}, - "save": "Guardar", - "@save": {}, - "search": "Procurar", - "@search": {}, - "searchingForUpdates": "À procura de atualizações", - "@searchingForUpdates": {}, - "server": "Servidor", - "@server": {}, - "serverUrl": "URL do Server", - "@serverUrl": {}, - "serverUrlHintText": "Url do server", - "@serverUrlHintText": {}, - "serverVersion": "Versão do servidor", - "@serverVersion": {}, - "settings": "Definições", - "@settings": {}, - "sort": "Ordenar", - "@sort": {}, - "source": "Fonte", - "@source": {}, - "sourceTypeFilter": "Filtro", - "@sourceTypeFilter": {}, - "sourceTypeLatest": "Mais recentes", - "@sourceTypeLatest": {}, - "sourceTypePopular": "Popular", - "@sourceTypePopular": {}, - "sources": "Fontes", - "@sources": {}, - "start": "Inicio", - "@start": {}, - "themeModeDark": "Escuro", - "@themeModeDark": {}, - "themeModeLight": "Claro", - "@themeModeLight": {}, - "themeModeSystem": "Sistema", - "@themeModeSystem": {}, - "uninstall": "Desinstalar", - "@uninstall": {}, - "uninstalling": "A Desinstalar", - "@uninstalling": {}, - "unknown": "Desconhecido", - "@unknown": {}, - "unknownAuthor": "Autor Desconhecido", - "@unknownAuthor": {}, - "unknownManga": "Manga Desconhecido", - "@unknownManga": {}, - "unknownSource": "Fonte Desconhecida", - "@unknownSource": {}, - "unread": "Não lida", - "@unread": {}, - "update": "Atualização", - "@update": {}, - "updateCompleted": "Atualização Completa", - "@updateCompleted": {}, - "updates": "Atualizações", - "@updates": {}, - "updatesSummary": "Resumo de Atualizações", - "@updatesSummary": {}, - "updating": "Atualizando", - "@updating": {}, - "userName": "Nome de Utilizador", - "@userName": {}, - "versionAvailable": "Versão {version} disponivel para {app}!!", - "@versionAvailable": {}, - "webUI": "Abrir no WEB", - "@webUI": {}, - "webView": "WebView", - "@webView": {}, - "whatsNew": "O que há de Novo?", - "@whatsNew": {}, - "mangaGridSize": "Tamanho do Manga na Grelha", - "@mangaGridSize": { - "description": "Popup title and Button text to change Manga Grid size" - }, - "serverPort": "", - "@serverPort": { - "description": "Popup title and Button text to update Server Port" - }, - "serverPortHintText": "", - "@serverPortHintText": { - "description": "Text Filed hint text to update Server Port" - }, - "allScanlators": "Todas Scans", - "@allScanlators": { - "description": "Text for all Scanlators in manga description screen chapter filter" - }, - "quickSearchSourceManga": "", - "@quickSearchSourceManga": { - "description": "Quick Open Hint text for searching Manga M in Source S with prefill '@S/M'" - }, - "readerScrollAnimation": "", - "@readerScrollAnimation": { - "description": "Switch title to Disable scroll animation in reader screen" - }, - "quickSearchContext": "", - "@quickSearchContext": { - "description": "Quick Open Hint text for query X" - }, - "quickSearchCategoryMangaChapter": "", - "@quickSearchCategoryMangaChapter": { - "description": "Quick Open Hint text for searching Chapter name CN from Manga M in Source S with prefill '#C/M:CN'" - }, - "quickSearchCategory": "Ir para a Categoria 'C'", - "@quickSearchCategory": { - "description": "Quick Open Hint text for Category C with prefill '#C'" - }, - "quickSearchCategoryManga": "", - "@quickSearchCategoryManga": { - "description": "Quick Open Hint text for searching Manga M in Category C with prefill '#C/M'" - }, - "scanlators": "", - "@scanlators": { - "description": "Title text for Scanlators" - }, - "quickSearchSource": "", - "@quickSearchSource": { - "description": "Quick Open Hint text for Source S with prefill '@S'" - }, - "chapterSortUploadDate": "Por Data de Upload", - "@chapterSortUploadDate": { - "description": "Radio button text for sort by Upload Date" - }, - "noServerFound": "Nenhum servidor encontrado em sua rede local, adicione manualmente", - "@noServerFound": { - "description": "Text to show that no Server found in locale network" - }, - "readerMagnifierSize": "", - "@readerMagnifierSize": { - "description": "Slider title text for Reader Magnifier Size" - }, - "cacheCleared": "Cache limpo", - "@cacheCleared": { - "description": "Toast Text to show after clearing cache" - }, - "clearCache": "Limpar cache", - "@clearCache": { - "description": "Button text for clear cache in General Settings screen" - }, - "findServer": "Procurar", - "@findServer": { - "description": "Button text of Find Server" - }, - "readerPadding": "Preenchimento do Leitor", - "@readerPadding": { - "description": "Slider title text for Reader Padding" - }, - "daysAgo": "{days} dias atrás", - "@daysAgo": { - "description": "Days ago text to show the release date of manga" - } -} diff --git a/lib/src/l10n/app_uk.arb b/lib/src/l10n/app_uk.arb deleted file mode 100644 index caaa23c5..00000000 --- a/lib/src/l10n/app_uk.arb +++ /dev/null @@ -1,854 +0,0 @@ -{ - "allScanlators": "Всі Сканлейтори", - "@allScanlators": { - "description": "Text for all Scanlators in manga description screen chapter filter" - }, - "appLanguage": "Мова застосунку", - "@appLanguage": { - "description": "Popup title and Button text to change App Language" - }, - "appTheme": "Тема застосунку", - "@appTheme": { - "description": "Popup title and Button text to change App Theme" - }, - "appTitle": "Tachidesk Sorayomi", - "@appTitle": { - "description": "Name of the app (Tachidesk Sorayomi in native script)" - }, - "appearance": "Зовнішній вигляд", - "@appearance": { - "description": "Screen title and Button text of Appearance screen" - }, - "authType": "Тип автентифікації", - "@authType": { - "description": "Popup title and Button text to change App Authentication" - }, - "authTypeBasic": "Основна авторизація", - "@authTypeBasic": { - "description": "Radio button text for the Basic Authentication type" - }, - "backup": "Резервне копіювання та відновлення", - "@backup": { - "description": "Screen title and Button text of Backup & Restore screen" - }, - "badges": "Значки", - "@badges": { - "description": "Checkbox Group title to enable Badges on manga Cover in Library Screen" - }, - "browse": "Перегляд", - "@browse": { - "description": "Screen title, Navigation Bar text and Button text of both Browse screen and Browse Settings Screen" - }, - "cancel": "Скасувати", - "@cancel": { - "description": "Text for Cancel button in a Popup" - }, - "categoryUpdate": "Оновлення категорії", - "@categoryUpdate": { - "description": "Button text to update the mangas in the Category" - }, - "channel": "Канал", - "@channel": { - "description": "Text title to show Channel of the Server (Stable, preview) in About Screen" - }, - "chapterSortUploadDate": "За датою завантаження", - "@chapterSortUploadDate": { - "description": "Radio button text for sort by Upload Date" - }, - "checkForUpdates": "Перевірити наявність оновлень", - "@checkForUpdates": { - "description": "Button text to check for App Updates" - }, - "clearCache": "Очистити кеш", - "@clearCache": { - "description": "Button text for clear cache in General Settings screen" - }, - "client": "Клієнт", - "@client": { - "description": "Text title for the name of the client in About screen" - }, - "close": "Закрити", - "@close": { - "description": "Text for close button" - }, - "copyMsg": "'{msg}' Скопійовано!", - "@copyMsg": { - "description": "Toast text to show that the message has been copied", - "placeholders": { - "msg": { - "example": "Client : Tachidesk Sorayomi", - "type": "String" - } - } - }, - "createBackupDescription": "Резервна копія бібліотеки як резервна копія Tachidesk", - "@createBackupDescription": { - "description": "Button text description to create backup" - }, - "credentials": "Облікові дані", - "@credentials": { - "description": "Popup title and Button text to enter Authentication credentials" - }, - "current": "Поточний", - "@current": { - "description": "Text to show the currently reading chapter in Reader Screen" - }, - "delete": "Видалити", - "@delete": { - "description": "Text for delete button" - }, - "deleteCategoryTitle": "Ви впевнені?", - "@deleteCategoryTitle": { - "description": "Popup title when deleting Category" - }, - "discord": "Discord", - "@discord": { - "description": "Discord app title" - }, - "display": "Відображення", - "@display": { - "description": "Text for Display tab in Library screen drawer" - }, - "displayMode": "Режим відображення", - "@displayMode": { - "description": "Radio Group title to change manga Cover display in Library and Source Screens" - }, - "displayModeDescriptiveList": "Описовий список", - "@displayModeDescriptiveList": { - "description": "Radio button text for Manga Cover display mode - Descriptive List" - }, - "displayModeList": "Список", - "@displayModeList": { - "description": "Radio button text for Manga Cover display mode - List" - }, - "edit": "Редагувати", - "@edit": { - "description": "Popup button text to edit Category in Edit category screen" - }, - "editCategory": "Редагувати категорію", - "@editCategory": { - "description": "Screen title, Button text and of Downloads screen" - }, - "errorFilePick": "Файл не вибрано!", - "@errorFilePick": { - "description": "Error Description to show when user does not selected an file" - }, - "errorPassword": "Пароль не може бути порожнім", - "@errorPassword": { - "description": "Error Description to show that password cannot be empty" - }, - "errorSomethingWentWrong": "Щось пішло не так!", - "@errorSomethingWentWrong": { - "description": "Error Description to show that Something went wrong!" - }, - "errorUserName": "Ім’я користувача не може бути порожнім", - "@errorUserName": { - "description": "Error Description to show that UserName cannot be empty" - }, - "extensionInstalled": "Розширення встановлено!", - "@extensionInstalled": { - "description": "Toast text to show that the Extension Installed successfully" - }, - "extensions": "Розширення", - "@extensions": { - "description": "Extension list Tab title in Browse Screen" - }, - "failed": "Не вдалося", - "@failed": { - "description": "Failed status Manga Group title in Update Summary Screen" - }, - "filter": "Фільтр", - "@filter": { - "description": "title of filter Tab across the app" - }, - "general": "Загальні", - "@general": { - "description": "Screen title and Button text of General setting screen" - }, - "gitHub": "GitHub", - "@gitHub": { - "description": "GitHub app title" - }, - "globalSearch": "Глобальний пошук", - "@globalSearch": { - "description": "Screen title of Global Search screen" - }, - "help": "Допомога", - "@help": { - "description": "Button text of help in about screen" - }, - "inLibrary": "У бібліотеці", - "@inLibrary": { - "description": "Button and Chip text to show that the manga is in Library" - }, - "installingExtension": "Встановлення розширення", - "@installingExtension": { - "description": "Toast text to show that the extension is installing" - }, - "latest": "Останні", - "@latest": { - "description": "Button text to take user to the latest tab of Source manga screen" - }, - "manga": "Манґа", - "@manga": { - "description": "Screen title and Button text of Manga details screen" - }, - "mangaGridSize": "Розмір сітки манґи", - "@mangaGridSize": { - "description": "Popup title and Button text to change Manga Grid size" - }, - "mangaMissingSources": "Відсутні джерела манґи", - "@mangaMissingSources": { - "description": "Group title to show the Manga Missing Sources when restoring Backup" - }, - "mangaSortDateAdded": "Дата додавання", - "@mangaSortDateAdded": { - "description": "Radio button text for Manga sort Type - Date Added" - }, - "mangaStatusCancelled": "Скасовано", - "@mangaStatusCancelled": { - "description": "Text to show Manga Status Cancelled in Manga details screen" - }, - "mangaStatusCompleted": "Завершено", - "@mangaStatusCompleted": { - "description": "Text to show Manga Status Completed in Manga details screen" - }, - "mangaStatusOnHiatus": "На перерві", - "@mangaStatusOnHiatus": { - "description": "Text to show Manga Status On Hiatus in Manga details screen" - }, - "mangaStatusPublishingFinished": "Публікацію завершено", - "@mangaStatusPublishingFinished": { - "description": "Text to show Manga Status Publishing Finished in Manga details screen" - }, - "mangaStatusUnknown": "Невідомо", - "@mangaStatusUnknown": { - "description": "Text to show Manga Status Unknown in Manga details screen" - }, - "more": "Більше", - "@more": { - "description": "Screen title and Navigation text of More screen" - }, - "moveToBottom": "Перемістити вниз", - "@moveToBottom": { - "description": "Button text to move download/category to the bottom of list" - }, - "moveToTop": "Перемістити вгору", - "@moveToTop": { - "description": "Button text to move download/category to the top of list" - }, - "nameCountDisplay": "{name}: {count}", - "@nameCountDisplay": { - "description": "Text pattern to display an name and count in a string", - "placeholders": { - "name": { - "example": "Downloaded", - "type": "String" - }, - "count": { - "example": "22", - "type": "int" - } - } - }, - "noChaptersFound": "Не знайдено жодного розділу", - "@noChaptersFound": { - "description": "Text to show that the Chapter list is empty in Manga details Screen" - }, - "noDownloads": "Немає завантажень", - "@noDownloads": { - "description": "Text to show that there is no active downloads in Downloads Screen" - }, - "noMangaFound": "Манґи не знайдено", - "@noMangaFound": { - "description": "Text to show that the Manga list is empty" - }, - "noResultFound": "Нічого не знайдено", - "@noResultFound": { - "description": "Text to show that no results found for the given search query" - }, - "noSourcesFound": "Джерел не знайдено", - "@noSourcesFound": { - "description": "Text to show that the Source list is empty" - }, - "noUpdatesAvailable": "Ви використовуєте останню версію", - "@noUpdatesAvailable": { - "description": "Text to show that the user is using the latest version of the app" - }, - "noUpdatesFound": "Оновлень не знайдено", - "@noUpdatesFound": { - "description": "Toast Text to show that there are no Updates available" - }, - "nsfw": "Показати NSFW розширення та джерела", - "@nsfw": { - "description": "Switch text to show/hide the nsfw extensions" - }, - "nsfw18": "18+", - "@nsfw18": { - "description": "18+ tag Text to show in extensions list" - }, - "nsfwInfo": "Це не запобігає появі неофіційних або потенційно неправильно позначених розширень, які можуть містити NSFW(18+) вміст в застосунку", - "@nsfwInfo": { - "description": "Hint text to show that the nsfw switch cannot prevent incorrectly flagged extensions from surfacing" - }, - "obsolete": "Застаріле", - "@obsolete": { - "description": "Text to show that the extension has become Obsolete" - }, - "page": "Сторінка: {number}", - "@page": { - "description": "Text to show the last read Page number of the chapter in Manga details screen", - "placeholders": { - "number": { - "example": "23", - "type": "int" - } - } - }, - "pause": "Пауза", - "@pause": { - "description": "Button text to pause downloads" - }, - "quickSearchCategoryManga": "Перейти до манґи \"M\" у категорію \"C\"", - "@quickSearchCategoryManga": { - "description": "Quick Open Hint text for searching Manga M in Category C with prefill '#C/M'" - }, - "quickSearchCategoryMangaChapter": "Перейти до назви розділу \"CN\" з манґи \"M\" в категорію \"C\"", - "@quickSearchCategoryMangaChapter": { - "description": "Quick Open Hint text for searching Chapter name CN from Manga M in Source S with prefill '#C/M:CN'" - }, - "reader": "Читач", - "@reader": { - "description": "Screen title and Button text of Reader screen" - }, - "readerMode": "Режим читання", - "@readerMode": { - "description": "Popup title and Button text of Reader Mode popup" - }, - "readerModeContinuousHorizontalLTR": "Горизонтальний безперервний (зліва направо)", - "@readerModeContinuousHorizontalLTR": { - "description": "Radio button text for Reader Mode Type - Continuous Horizontal (LTR)" - }, - "readerModeDefaultReader": "За замовчуванням", - "@readerModeDefaultReader": { - "description": "Radio button text for Reader Mode Type - Default" - }, - "readerModeContinuousVertical": "Вертикальний безперервний", - "@readerModeContinuousVertical": { - "description": "Radio button text for Reader Mode Type - Continuous Vertical" - }, - "readerModeSingleHorizontalRTL": "Одиночний горизонтальний (справо наліво)", - "@readerModeSingleHorizontalRTL": { - "description": "Radio button text for Reader Mode Type - Single Horizontal (RTL)" - }, - "readerModeSingleHorizontalLTR": "Одиночний горизонтальний (зліва направо)", - "@readerModeSingleHorizontalLTR": { - "description": "Radio button text for Reader Mode Type - Single Horizontal (LTR)" - }, - "readerModeSingleVertical": "Одиночний вертикальний", - "@readerModeSingleVertical": { - "description": "Radio button text for Reader Mode Type - Single Vertical" - }, - "readerModeWebtoon": "Webtoon", - "@readerModeWebtoon": { - "description": "Radio button text for Reader Mode Type - Webtoon" - }, - "readerNavigationLayout": "Макет навігації", - "@readerNavigationLayout": { - "description": "Popup title and Button text of Reader Navigation Layout popup" - }, - "readerNavigationLayoutDefault": "За замовчуванням", - "@readerNavigationLayoutDefault": { - "description": "Radio button text for Reader Navigation Layout - Default" - }, - "readerNavigationLayoutDisabled": "Вимкнено", - "@readerNavigationLayoutDisabled": { - "description": "Radio button text for Reader Navigation Layout - Disabled" - }, - "readerNavigationLayoutEdge": "Край", - "@readerNavigationLayoutEdge": { - "description": "Radio button text for Reader Navigation Layout - Edge" - }, - "readerScrollAnimation": "Анімація прокрутки", - "@readerScrollAnimation": { - "description": "Switch title to Disable scroll animation in reader screen" - }, - "readerNavigationLayoutKindlish": "Kindle-ish", - "@readerNavigationLayoutKindlish": { - "description": "Radio button text for Reader Navigation Layout - Kindle-ish" - }, - "readerNavigationLayoutLShaped": "Форма L", - "@readerNavigationLayoutLShaped": { - "description": "Radio button text for Reader Navigation Layout - L Shaped" - }, - "readerNavigationLayoutRightAndLeft": "Праворуч і ліворуч", - "@readerNavigationLayoutRightAndLeft": { - "description": "Radio button text for Reader Navigation Layout - Right And Left" - }, - "readerPadding": "Заповнення читача", - "@readerPadding": { - "description": "Slider title text for Reader Padding" - }, - "reddit": "Reddit", - "@reddit": { - "description": "Reddit app title" - }, - "refresh": "Оновити", - "@refresh": { - "description": "Refresh button text" - }, - "reset": "Скинути", - "@reset": { - "description": "Button text of reset button in source filters" - }, - "restoreBackupDescription": "Відновити Tachidesk з резервної копії", - "@restoreBackupDescription": { - "description": "Button text description to create backup" - }, - "restored": "Резервну копію відновлено!", - "@restored": { - "description": "Toast Text to show that the backup has been restored" - }, - "restoring": "Відновлення резервної копії", - "@restoring": { - "description": "Toast Text to show that the backup is restoring" - }, - "resume": "Відновити", - "@resume": { - "description": "Button Text to resume Chapter reading/downloading" - }, - "retry": "Повторити", - "@retry": { - "description": "Retry Button Text" - }, - "save": "Зберегти", - "@save": { - "description": "Save Button Text" - }, - "scanlators": "Перекладачі", - "@scanlators": { - "description": "Title text for Scanlators" - }, - "search": "Пошук", - "@search": { - "description": "Search field hint Text" - }, - "searchingForUpdates": "Пошук оновлень", - "@searchingForUpdates": { - "description": "Toast Text for searching for updates of the App/Server" - }, - "server": "Сервер", - "@server": { - "description": "Text title for the server in About screen" - }, - "serverPortHintText": "Порт сервера", - "@serverPortHintText": { - "description": "Text Filed hint text to update Server Port" - }, - "settings": "Налаштування", - "@settings": { - "description": "Screen title and Button text of Settings screen" - }, - "source": "Джерело", - "@source": { - "description": "Screen title and Button text of source screen" - }, - "sourceTypeFilter": "Фільтр", - "@sourceTypeFilter": { - "description": "Tab text Filter for source screen type" - }, - "sourceTypeLatest": "Останні", - "@sourceTypeLatest": { - "description": "Tab text Latest for source screen type" - }, - "sourceTypePopular": "Популярне", - "@sourceTypePopular": { - "description": "Tab text Popular for source screen type" - }, - "start": "Почати", - "@start": { - "description": "Button text start reading the manga" - }, - "themeModeDark": "Темна", - "@themeModeDark": { - "description": "Radio button text for App theme - Dark" - }, - "themeModeLight": "Світла", - "@themeModeLight": { - "description": "Radio button text for App theme - Light" - }, - "uninstalling": "Видалення", - "@uninstalling": { - "description": "Button text to show that the extension is uninstalling" - }, - "updatesSummary": "Підсумок оновлень", - "@updatesSummary": { - "description": "Screen title and Button text of Updates Summary screen" - }, - "updating": "Оновлення", - "@updating": { - "description": "Button text to show that the extension is updating" - }, - "webUI": "Відкрити у Веб", - "@webUI": { - "description": "Button text to open in web UI" - }, - "whatsNew": "Що нового?", - "@whatsNew": { - "description": "Button text to open whats new page of app in web" - }, - "about": "Про застосунок", - "@about": { - "description": "Screen title and Button text of About screen" - }, - "addCategory": "Додати категорію", - "@addCategory": { - "description": "Popup title and Button text to add new category in Edit Category Screen" - }, - "cacheCleared": "Кеш очищено", - "@cacheCleared": { - "description": "Toast Text to show after clearing cache" - }, - "categories": "Категорії", - "@categories": { - "description": "Button text of edit Categories screen in Library settings screen" - }, - "addToLibrary": "Додати до бібліотеки", - "@addToLibrary": { - "description": "Button text to add Manga to Library in Manga Details Screen" - }, - "authTypeNone": "Немає", - "@authTypeNone": { - "description": "Radio button text for no Authentication" - }, - "chapterNumber": "Розділ {number}", - "@chapterNumber": { - "description": "Text title for Chapter name in chapter list", - "placeholders": { - "number": { - "example": "12.5", - "type": "double" - } - } - }, - "bookmarked": "Додано в закладки", - "@bookmarked": { - "description": "Checkbox text to filter bookmarked manga chapters in Manga Details screen" - }, - "buildTime": "Час збірки", - "@buildTime": { - "description": "Text title to show build time of Server in About Screen" - }, - "chapterSortFetchedDate": "За датою отримання", - "@chapterSortFetchedDate": { - "description": "Radio button text for sort by Fetched Date" - }, - "chapterSortSource": "За джерелом", - "@chapterSortSource": { - "description": "Radio button text for sort by Source" - }, - "checkForServerUpdates": "Перевірити наявність оновлень сервера", - "@checkForServerUpdates": { - "description": "Button text to check for Server updates" - }, - "clientVersion": "Версія клієнту", - "@clientVersion": { - "description": "Text title for the current version of the client in About screen" - }, - "completed": "Завершено", - "@completed": { - "description": "Checkbox text to filter Completed mangas in Library screen and Manga Grouping text in Update Summary screen" - }, - "createBackupTitle": "Створити резервну копію", - "@createBackupTitle": { - "description": "Button text to create backup" - }, - "missingExtension": "Відсутні розширення", - "@missingExtension": { - "description": "Group title to show the Missing Extensions when restoring Backup" - }, - "defaultCategory": "Категорія за замовчуванням при додаванні нової манґи до бібліотеки", - "@defaultCategory": { - "description": "Checkbox description when creating a Category to add manga to the Category by Default" - }, - "deleteCategoryDescription": "Це об'єднає всі манґи в цій категорії за замовчуванням!", - "@deleteCategoryDescription": { - "description": "Popup description when deleting Category" - }, - "displayModeGrid": "Сітка", - "@displayModeGrid": { - "description": "Radio button text for Manga Cover display mode - Grid" - }, - "emptyCategory": "Назва категорії не може бути порожньою", - "@emptyCategory": { - "description": "Description to show that category list is empty in Edit Category screen" - }, - "downloaded": "Завантажено", - "@downloaded": { - "description": "Text to show downloaded chapters status in Filters " - }, - "errorExtension": "Не вдається знайти вибране розширення", - "@errorExtension": { - "description": "Error Description to show when user selected unknown extension from list" - }, - "downloads": "Зааантаження", - "@downloads": { - "description": "Screen title and Navigation text of Downloads screen" - }, - "errorFilePickUnknownExtension": "Будь ласка, виберіть файл з розширенням {extensionName}", - "@errorFilePickUnknownExtension": { - "description": "Error Description to show when user selected unknown extension file" - }, - "errorLaunchURL": "Не вдалося відкрити!\nКопіювання \"{url}\" в буфер обміну", - "@errorLaunchURL": { - "description": "Error Description to show when App failed to launch an URL and copied the URL to clipboard", - "placeholders": { - "url": { - "example": "http://sorayomi.suwayomi.org", - "type": "String" - } - } - }, - "extensionListEmpty": "Список розширень порожній", - "@extensionListEmpty": { - "description": "Description to show that Extension list is empty in Extension list tab of Browse screen" - }, - "install": "Встановити", - "@install": { - "description": "Button text to install the extension" - }, - "globalUpdate": "Глобальне оновлення", - "@globalUpdate": { - "description": "Button text of Global Manga Update" - }, - "findServer": "Знайти", - "@findServer": { - "description": "Button text of Find Server" - }, - "finished": "Завершено", - "@finished": { - "description": "Text to show the Currently Finished reading chapter in Reader Screen" - }, - "mangaStatusOngoing": "Виходить", - "@mangaStatusOngoing": { - "description": "Text to show Manga Status Ongoing in Manga details screen" - }, - "languages": "Мови", - "@languages": { - "description": "Popup title to filter extensions based on language" - }, - "installing": "Встановлення", - "@installing": { - "description": "Button text to show that the extension is installing" - }, - "library": "Бібліотека", - "@library": { - "description": "Screen title and Button text of Library and Library Settings screen" - }, - "mangaSortUnread": "Не прочитано", - "@mangaSortUnread": { - "description": "Radio button text for Manga sort Type - Unread" - }, - "mangaSortAlphabetical": "За алфавітом", - "@mangaSortAlphabetical": { - "description": "Radio button text for Manga sort Type - Alphabetical" - }, - "mangaSortLastRead": "Останнє прочитане", - "@mangaSortLastRead": { - "description": "Radio button text for Manga sort Type - Last Read" - }, - "missingTrackers": "Відсутні трекери", - "@missingTrackers": { - "description": "Group title to show the Missing Trackers when restoring Backup" - }, - "mangaStatusLicensed": "Ліцензовано", - "@mangaStatusLicensed": { - "description": "Text to show Manga Status Licensed in Manga details screen" - }, - "newUpdateAvailable": "Доступне нове оновлення", - "@newUpdateAvailable": { - "description": "Popup title to show that the App/Server has and update" - }, - "noCategoriesFound": "У вас немає жодної категорії. \n(Порада: натисніть кнопку \"Плюс\", щоб створити категорію для впорядкування бібліотеки)", - "@noCategoriesFound": { - "description": "Hint text to add new Category when category list is empty" - }, - "noCategoriesFoundAlt": "У вас немає категорій. \nСтворіть їх у налаштуваннях для організації бібліотеки", - "@noCategoriesFoundAlt": { - "description": "Hint text to add new Category in Settings when category list is empty" - }, - "numSelected": "{num} Вибрано", - "@numSelected": { - "description": "Title text to show the number of chapters selected in the Manga details screen and Updates screen", - "placeholders": { - "num": { - "example": "23", - "type": "int" - } - } - }, - "noCategoryMangaFound": "У цій категорії не знайдено жодної манґи. \n(Порада: перевірте пошук та фільтри!)", - "@noCategoryMangaFound": { - "description": "Hint text to check filter when manga list is empty in Category tab in Library" - }, - "noOfChapters": "{count} Розділів", - "@noOfChapters": { - "description": "Title text to show the number of chapters in the Manga details screen", - "placeholders": { - "count": { - "example": "23", - "type": "int" - } - } - }, - "noServerFound": "У вашій локальній мережі не знайдено сервер", - "@noServerFound": { - "description": "Text to show that no Server found in locale network" - }, - "password": "Пароль", - "@password": { - "description": "Title text for password field" - }, - "quickSearchSourceManga": "Пошук манґи \"M\" у джерелі \"S\"", - "@quickSearchSourceManga": { - "description": "Quick Open Hint text for searching Manga M in Source S with prefill '@S/M'" - }, - "restoreBackupTitle": "Відновити резервну копію", - "@restoreBackupTitle": { - "description": "Button text to create backup" - }, - "pending": "В очікуванні", - "@pending": { - "description": "Pending status Manga Group title in Update Summary Screen" - }, - "quickSearchContext": "Пошук за запитом X (результати базуються на контексті екрана)", - "@quickSearchContext": { - "description": "Quick Open Hint text for query X" - }, - "readerModeContinuousHorizontalRTL": "Горизонтальний безперервний (справа наліво)", - "@readerModeContinuousHorizontalRTL": { - "description": "Radio button text for Reader Mode Type - Continuous Horizontal (RTL)" - }, - "quickSearchCategory": "Перейти до категорії \"C\"", - "@quickSearchCategory": { - "description": "Quick Open Hint text for Category C with prefill '#C'" - }, - "quickSearchSource": "Перейти до джерела \"S\"", - "@quickSearchSource": { - "description": "Quick Open Hint text for Source S with prefill '@S'" - }, - "readerNavigationLayoutInvert": "Інвертувати дотик", - "@readerNavigationLayoutInvert": { - "description": "Switch title to invert Tap to scroll in reader screen" - }, - "readerMagnifierSize": "Розмір екранної лупи", - "@readerMagnifierSize": { - "description": "Slider title text for Reader Magnifier Size" - }, - "running": "Запущено", - "@running": { - "description": "Running status Manga Group title in Update Summary Screen" - }, - "sources": "Джерела", - "@sources": { - "description": "title of Sources Tab in Browse Screen" - }, - "update": "Oновити", - "@update": { - "description": "Button text to update the extension" - }, - "serverUrl": "URL сервера", - "@serverUrl": { - "description": "Popup title and Button text to update Server Url" - }, - "themeModeSystem": "Системна", - "@themeModeSystem": { - "description": "Radio button text for App theme - System" - }, - "unknownManga": "Невідома манґа", - "@unknownManga": { - "description": "Text to show unknown manga in Manga details screen" - }, - "webView": "Web View", - "@webView": { - "description": "Button text to open manga website" - }, - "serverUrlHintText": "URL-адреса сервера", - "@serverUrlHintText": { - "description": "Text Filed hint text to update Server Url" - }, - "serverPort": "Порт сервера", - "@serverPort": { - "description": "Popup title and Button text to update Server Port" - }, - "serverVersion": "Версія сервера", - "@serverVersion": { - "description": "Text title for the current version of the Server in About screen" - }, - "sort": "Сортувати", - "@sort": { - "description": "title of sort Tab across the app" - }, - "uninstall": "Видалити", - "@uninstall": { - "description": "Button text to Uninstall the extension" - }, - "unread": "Не прочитано", - "@unread": { - "description": "Checkbox text to unread bookmarked manga/chapters across app" - }, - "updates": "Оновлення", - "@updates": { - "description": "Screen title and Button text of Updates screen" - }, - "unknownAuthor": "Невідомий автор", - "@unknownAuthor": { - "description": "Text to show unknown author in Manga details screen" - }, - "updateCompleted": "Оновлення завершено", - "@updateCompleted": { - "description": "Button text to show that extension update is completed" - }, - "unknownSource": "Невідоме джерело", - "@unknownSource": { - "description": "Text to show unknown Source in Manga details screen" - }, - "userName": "Ім'я користувача", - "@userName": { - "description": "Title text for User Name field" - }, - "versionAvailable": "Версія {version} доступна для {app}!!!", - "@versionAvailable": { - "description": "Text to show that there is an update to App/Server", - "placeholders": { - "app": { - "example": "Server", - "type": "String" - }, - "version": { - "example": "v0.4.2", - "type": "String" - } - } - }, - "daysAgo": "{days} днів тому", - "@daysAgo": { - "description": "Days ago text to show the release date of manga" - }, - "yesterday": "Вчора", - "@yesterday": { - "description": "Yesterday Text to show the release date of manga" - }, - "today": "Сьогодні", - "@today": { - "description": "Today Text to show the release date of manga" - }, - "readerSwipeChapterToggle": "Проведіть пальцем, щоб перегорнути", - "@readerSwipeChapterToggle": { - "description": "Switch title to toggle `swipe to change chapter` in reader screen" - }, - "readerSwipeChapterToggleDescription": "Проведіть пальцем, щоб змінити розділ в читачу", - "@readerSwipeChapterToggleDescription": { - "description": "Switch tile description for, toggle `swipe to change chapter` in reader screen" - } -} diff --git a/lib/src/l10n/app_zh.arb b/lib/src/l10n/app_zh.arb deleted file mode 100644 index 0f504ac9..00000000 --- a/lib/src/l10n/app_zh.arb +++ /dev/null @@ -1,908 +0,0 @@ -{ - "start": "开始阅读", - "@start": { - "description": "Button text start reading the manga" - }, - "themeModeSystem": "跟随系统", - "@themeModeSystem": { - "description": "Radio button text for App theme - System" - }, - "unknownAuthor": "未知作者", - "@unknownAuthor": { - "description": "Text to show unknown author in Manga details screen" - }, - "updates": "更新", - "@updates": { - "description": "Screen title and Button text of Updates screen" - }, - "updating": "更新中", - "@updating": { - "description": "Button text to show that the extension is updating" - }, - "whatsNew": "更新了什么?", - "@whatsNew": { - "description": "Button text to open whats new page of app in web" - }, - "uninstalling": "正在卸载", - "@uninstalling": { - "description": "Button text to show that the extension is uninstalling" - }, - "versionAvailable": "{app} 有更新可用 {version} !", - "@versionAvailable": { - "description": "Text to show that there is an update to App/Server", - "placeholders": { - "app": { - "example": "Server", - "type": "String" - }, - "version": { - "example": "v0.4.2", - "type": "String" - } - } - }, - "webView": "Web View", - "@webView": { - "description": "Button text to open manga website" - }, - "authTypeBasic": "基本认证", - "@authTypeBasic": { - "description": "Radio button text for the Basic Authentication type" - }, - "restoring": "正在还原", - "@restoring": { - "description": "Toast Text to show that the backup is restoring" - }, - "chapterNumber": "第 {number} 章", - "@chapterNumber": { - "description": "Text title for Chapter name in chapter list", - "placeholders": { - "number": { - "example": "12.5", - "type": "double" - } - } - }, - "errorFilePickUnknownExtension": "请选择插件 {extensionName}", - "@errorFilePickUnknownExtension": { - "description": "Error Description to show when user selected unknown extension file" - }, - "finished": "阅读过", - "@finished": { - "description": "Text to show the Currently Finished reading chapter in Reader Screen" - }, - "copyMsg": "'{msg}'已复制!", - "@copyMsg": { - "description": "Toast text to show that the message has been copied", - "placeholders": { - "msg": { - "example": "Client : Tachidesk Sorayomi", - "type": "String" - } - } - }, - "appearance": "外观", - "@appearance": { - "description": "Screen title and Button text of Appearance screen" - }, - "authType": "验证方式", - "@authType": { - "description": "Popup title and Button text to change App Authentication" - }, - "extensions": "插件", - "@extensions": { - "description": "Extension list Tab title in Browse Screen" - }, - "about": "关于", - "@about": { - "description": "Screen title and Button text of About screen" - }, - "appLanguage": "应用语言", - "@appLanguage": { - "description": "Popup title and Button text to change App Language" - }, - "appTheme": "应用主题", - "@appTheme": { - "description": "Popup title and Button text to change App Theme" - }, - "appTitle": "Sorayomi", - "@appTitle": { - "description": "Name of the app (Tachidesk Sorayomi in native script)" - }, - "addToLibrary": "添加到书架", - "@addToLibrary": { - "description": "Button text to add Manga to Library in Manga Details Screen" - }, - "authTypeNone": "无", - "@authTypeNone": { - "description": "Radio button text for no Authentication" - }, - "browse": "浏览", - "@browse": { - "description": "Screen title, Navigation Bar text and Button text of both Browse screen and Browse Settings Screen" - }, - "buildTime": "构建时间", - "@buildTime": { - "description": "Text title to show build time of Server in About Screen" - }, - "bookmarked": "已添加书签", - "@bookmarked": { - "description": "Checkbox text to filter bookmarked manga chapters in Manga Details screen" - }, - "categories": "分类", - "@categories": { - "description": "Button text of edit Categories screen in Library settings screen" - }, - "categoryUpdate": "更新分类", - "@categoryUpdate": { - "description": "Button text to update the mangas in the Category" - }, - "channel": "通道", - "@channel": { - "description": "Text title to show Channel of the Server (Stable, preview) in About Screen" - }, - "chapterSortFetchedDate": "按添加日期", - "@chapterSortFetchedDate": { - "description": "Radio button text for sort by Fetched Date" - }, - "chapterSortSource": "按来源", - "@chapterSortSource": { - "description": "Radio button text for sort by Source" - }, - "checkForUpdates": "检查更新", - "@checkForUpdates": { - "description": "Button text to check for App Updates" - }, - "client": "客户端", - "@client": { - "description": "Text title for the name of the client in About screen" - }, - "close": "关闭", - "@close": { - "description": "Text for close button" - }, - "completed": "阅读过", - "@completed": { - "description": "Checkbox text to filter Completed mangas in Library screen and Manga Grouping text in Update Summary screen" - }, - "credentials": "认证", - "@credentials": { - "description": "Popup title and Button text to enter Authentication credentials" - }, - "defaultCategory": "默认添加到此库", - "@defaultCategory": { - "description": "Checkbox description when creating a Category to add manga to the Category by Default" - }, - "delete": "删除", - "@delete": { - "description": "Text for delete button" - }, - "createBackupDescription": "可用于还原当前书架数据", - "@createBackupDescription": { - "description": "Button text description to create backup" - }, - "deleteCategoryDescription": "此分类下的漫画将迁移至默认分类!", - "@deleteCategoryDescription": { - "description": "Popup description when deleting Category" - }, - "deleteCategoryTitle": "确定?", - "@deleteCategoryTitle": { - "description": "Popup title when deleting Category" - }, - "discord": "DIscord", - "@discord": { - "description": "Discord app title" - }, - "display": "显示", - "@display": { - "description": "Text for Display tab in Library screen drawer" - }, - "displayMode": "显示模式", - "@displayMode": { - "description": "Radio Group title to change manga Cover display in Library and Source Screens" - }, - "displayModeGrid": "网格", - "@displayModeGrid": { - "description": "Radio button text for Manga Cover display mode - Grid" - }, - "displayModeList": "简单列表", - "@displayModeList": { - "description": "Radio button text for Manga Cover display mode - List" - }, - "downloads": "下载", - "@downloads": { - "description": "Screen title and Navigation text of Downloads screen" - }, - "editCategory": "编辑分类", - "@editCategory": { - "description": "Screen title, Button text and of Downloads screen" - }, - "errorFilePick": "未选择任何文件!", - "@errorFilePick": { - "description": "Error Description to show when user does not selected an file" - }, - "errorExtension": "所选插件不存在", - "@errorExtension": { - "description": "Error Description to show when user selected unknown extension from list" - }, - "errorLaunchURL": "打开失败\n详细记录{url}已经复制到剪贴板", - "@errorLaunchURL": { - "description": "Error Description to show when App failed to launch an URL and copied the URL to clipboard", - "placeholders": { - "url": { - "example": "http://sorayomi.suwayomi.org", - "type": "String" - } - } - }, - "errorPassword": "密码不能为空", - "@errorPassword": { - "description": "Error Description to show that password cannot be empty" - }, - "errorUserName": "用户名不能为空", - "@errorUserName": { - "description": "Error Description to show that UserName cannot be empty" - }, - "extensionListEmpty": "插件列表为空", - "@extensionListEmpty": { - "description": "Description to show that Extension list is empty in Extension list tab of Browse screen" - }, - "extensionInstalled": "插件安装完成!", - "@extensionInstalled": { - "description": "Toast text to show that the Extension Installed successfully" - }, - "general": "通用", - "@general": { - "description": "Screen title and Button text of General setting screen" - }, - "gitHub": "GitHub", - "@gitHub": { - "description": "GitHub app title" - }, - "globalSearch": "全局搜索", - "@globalSearch": { - "description": "Screen title of Global Search screen" - }, - "globalUpdate": "全局更新", - "@globalUpdate": { - "description": "Button text of Global Manga Update" - }, - "inLibrary": "在书架中", - "@inLibrary": { - "description": "Button and Chip text to show that the manga is in Library" - }, - "installing": "安装中", - "@installing": { - "description": "Button text to show that the extension is installing" - }, - "installingExtension": "正在安装", - "@installingExtension": { - "description": "Toast text to show that the extension is installing" - }, - "languages": "语言", - "@languages": { - "description": "Popup title to filter extensions based on language" - }, - "library": "书架", - "@library": { - "description": "Screen title and Button text of Library and Library Settings screen" - }, - "manga": "漫画", - "@manga": { - "description": "Screen title and Button text of Manga details screen" - }, - "mangaSortAlphabetical": "名称", - "@mangaSortAlphabetical": { - "description": "Radio button text for Manga sort Type - Alphabetical" - }, - "mangaSortUnread": "未阅读", - "@mangaSortUnread": { - "description": "Radio button text for Manga sort Type - Unread" - }, - "mangaMissingSources": "来源未安装", - "@mangaMissingSources": { - "description": "Group title to show the Manga Missing Sources when restoring Backup" - }, - "mangaSortLastRead": "最近阅读", - "@mangaSortLastRead": { - "description": "Radio button text for Manga sort Type - Last Read" - }, - "mangaStatusCancelled": "已取消", - "@mangaStatusCancelled": { - "description": "Text to show Manga Status Cancelled in Manga details screen" - }, - "mangaStatusCompleted": "已完成", - "@mangaStatusCompleted": { - "description": "Text to show Manga Status Completed in Manga details screen" - }, - "mangaStatusLicensed": "已认证", - "@mangaStatusLicensed": { - "description": "Text to show Manga Status Licensed in Manga details screen" - }, - "mangaStatusOngoing": "连载中", - "@mangaStatusOngoing": { - "description": "Text to show Manga Status Ongoing in Manga details screen" - }, - "missingExtension": "插件缺失", - "@missingExtension": { - "description": "Group title to show the Missing Extensions when restoring Backup" - }, - "more": "更多", - "@more": { - "description": "Screen title and Navigation text of More screen" - }, - "nameCountDisplay": "{name}:{count}", - "@nameCountDisplay": { - "description": "Text pattern to display an name and count in a string", - "placeholders": { - "name": { - "example": "Downloaded", - "type": "String" - }, - "count": { - "example": "22", - "type": "int" - } - } - }, - "newUpdateAvailable": "有可用更新", - "@newUpdateAvailable": { - "description": "Popup title to show that the App/Server has and update" - }, - "noCategoryMangaFound": "未找到匹配项\n提示:检查搜索或更改筛选条件", - "@noCategoryMangaFound": { - "description": "Hint text to check filter when manga list is empty in Category tab in Library" - }, - "noChaptersFound": "未找到章节", - "@noChaptersFound": { - "description": "Text to show that the Chapter list is empty in Manga details Screen" - }, - "noDownloads": "没有下载中的任务", - "@noDownloads": { - "description": "Text to show that there is no active downloads in Downloads Screen" - }, - "noMangaFound": "未找到漫画", - "@noMangaFound": { - "description": "Text to show that the Manga list is empty" - }, - "noResultFound": "未找到结果", - "@noResultFound": { - "description": "Text to show that no results found for the given search query" - }, - "noSourcesFound": "结果为空", - "@noSourcesFound": { - "description": "Text to show that the Source list is empty" - }, - "noUpdatesAvailable": "正在使用最新版", - "@noUpdatesAvailable": { - "description": "Text to show that the user is using the latest version of the app" - }, - "nsfw": "在图源和插件中显示", - "@nsfw": { - "description": "Switch text to show/hide the nsfw extensions" - }, - "nsfw18": "18+", - "@nsfw18": { - "description": "18+ tag Text to show in extensions list" - }, - "nsfwInfo": "这并不能防止非官方或可能被错误标记的插件在应用中显示 NSFW(18+) 内容", - "@nsfwInfo": { - "description": "Hint text to show that the nsfw switch cannot prevent incorrectly flagged extensions from surfacing" - }, - "numSelected": "已选择 {num} 章", - "@numSelected": { - "description": "Title text to show the number of chapters selected in the Manga details screen and Updates screen", - "placeholders": { - "num": { - "example": "23", - "type": "int" - } - } - }, - "obsolete": "废弃", - "@obsolete": { - "description": "Text to show that the extension has become Obsolete" - }, - "pause": "暂停", - "@pause": { - "description": "Button text to pause downloads" - }, - "pending": "等待中", - "@pending": { - "description": "Pending status Manga Group title in Update Summary Screen" - }, - "reader": "阅读器", - "@reader": { - "description": "Screen title and Button text of Reader screen" - }, - "readerModeDefaultReader": "默认", - "@readerModeDefaultReader": { - "description": "Radio button text for Reader Mode Type - Default" - }, - "readerModeContinuousHorizontalLTR": "从左到右(不分页)", - "@readerModeContinuousHorizontalLTR": { - "description": "Radio button text for Reader Mode Type - Continuous Horizontal (LTR)" - }, - "readerModeContinuousVertical": "从上到下(不分页)", - "@readerModeContinuousVertical": { - "description": "Radio button text for Reader Mode Type - Continuous Vertical" - }, - "readerModeSingleHorizontalLTR": "从左到右(分页)", - "@readerModeSingleHorizontalLTR": { - "description": "Radio button text for Reader Mode Type - Single Horizontal (LTR)" - }, - "readerModeSingleHorizontalRTL": "从右到左(分页)", - "@readerModeSingleHorizontalRTL": { - "description": "Radio button text for Reader Mode Type - Single Horizontal (RTL)" - }, - "readerModeWebtoon": "条漫", - "@readerModeWebtoon": { - "description": "Radio button text for Reader Mode Type - Webtoon" - }, - "readerNavigationLayoutDefault": "默认布局", - "@readerNavigationLayoutDefault": { - "description": "Radio button text for Reader Navigation Layout - Default" - }, - "readerNavigationLayout": "点按布局", - "@readerNavigationLayout": { - "description": "Popup title and Button text of Reader Navigation Layout popup" - }, - "readerNavigationLayoutEdge": "边缘模式", - "@readerNavigationLayoutEdge": { - "description": "Radio button text for Reader Navigation Layout - Edge" - }, - "readerNavigationLayoutInvert": "反转点按区域", - "@readerNavigationLayoutInvert": { - "description": "Switch title to invert Tap to scroll in reader screen" - }, - "readerNavigationLayoutLShaped": "L 样式", - "@readerNavigationLayoutLShaped": { - "description": "Radio button text for Reader Navigation Layout - L Shaped" - }, - "readerNavigationLayoutRightAndLeft": "左右样式", - "@readerNavigationLayoutRightAndLeft": { - "description": "Radio button text for Reader Navigation Layout - Right And Left" - }, - "reddit": "Reddit", - "@reddit": { - "description": "Reddit app title" - }, - "update": "更新", - "@update": { - "description": "Button text to update the extension" - }, - "refresh": "刷新", - "@refresh": { - "description": "Refresh button text" - }, - "reset": "重置", - "@reset": { - "description": "Button text of reset button in source filters" - }, - "readerPadding": "填充", - "@readerPadding": { - "description": "Slider title text for Reader Padding" - }, - "restoreBackupTitle": "还原备份", - "@restoreBackupTitle": { - "description": "Button text to create backup" - }, - "restored": "完成备份恢复!", - "@restored": { - "description": "Toast Text to show that the backup has been restored" - }, - "resume": "继续", - "@resume": { - "description": "Button Text to resume Chapter reading/downloading" - }, - "retry": "重试", - "@retry": { - "description": "Retry Button Text" - }, - "running": "运行中", - "@running": { - "description": "Running status Manga Group title in Update Summary Screen" - }, - "save": "保存", - "@save": { - "description": "Save Button Text" - }, - "search": "搜索", - "@search": { - "description": "Search field hint Text" - }, - "searchingForUpdates": "搜索更新中", - "@searchingForUpdates": { - "description": "Toast Text for searching for updates of the App/Server" - }, - "server": "服务器", - "@server": { - "description": "Text title for the server in About screen" - }, - "serverUrl": "服务器地址", - "@serverUrl": { - "description": "Popup title and Button text to update Server Url" - }, - "sort": "排序", - "@sort": { - "description": "title of sort Tab across the app" - }, - "sourceTypeFilter": "筛选", - "@sourceTypeFilter": { - "description": "Tab text Filter for source screen type" - }, - "sourceTypePopular": "常用", - "@sourceTypePopular": { - "description": "Tab text Popular for source screen type" - }, - "sources": "图源", - "@sources": { - "description": "title of Sources Tab in Browse Screen" - }, - "themeModeDark": "深色模式", - "@themeModeDark": { - "description": "Radio button text for App theme - Dark" - }, - "themeModeLight": "浅色模式", - "@themeModeLight": { - "description": "Radio button text for App theme - Light" - }, - "uninstall": "卸载", - "@uninstall": { - "description": "Button text to Uninstall the extension" - }, - "unknownManga": "未知漫画", - "@unknownManga": { - "description": "Text to show unknown manga in Manga details screen" - }, - "unknownSource": "未知图源", - "@unknownSource": { - "description": "Text to show unknown Source in Manga details screen" - }, - "unread": "未阅读", - "@unread": { - "description": "Checkbox text to unread bookmarked manga/chapters across app" - }, - "updateCompleted": "更新完成", - "@updateCompleted": { - "description": "Button text to show that extension update is completed" - }, - "updatesSummary": "更新摘要", - "@updatesSummary": { - "description": "Screen title and Button text of Updates Summary screen" - }, - "userName": "用户名", - "@userName": { - "description": "Title text for User Name field" - }, - "webUI": "在浏览器中打开", - "@webUI": { - "description": "Button text to open in web UI" - }, - "addCategory": "添加分类", - "@addCategory": { - "description": "Popup title and Button text to add new category in Edit Category Screen" - }, - "help": "帮助", - "@help": { - "description": "Button text of help in about screen" - }, - "failed": "更新失败", - "@failed": { - "description": "Failed status Manga Group title in Update Summary Screen" - }, - "filter": "筛选", - "@filter": { - "description": "title of filter Tab across the app" - }, - "latest": "最新", - "@latest": { - "description": "Button text to take user to the latest tab of Source manga screen" - }, - "install": "安装", - "@install": { - "description": "Button text to install the extension" - }, - "mangaGridSize": "网格大小", - "@mangaGridSize": { - "description": "Popup title and Button text to change Manga Grid size" - }, - "cancel": "取消", - "@cancel": { - "description": "Text for Cancel button in a Popup" - }, - "backup": "备份和恢复", - "@backup": { - "description": "Screen title and Button text of Backup & Restore screen" - }, - "badges": "徽标", - "@badges": { - "description": "Checkbox Group title to enable Badges on manga Cover in Library Screen" - }, - "createBackupTitle": "创建备份", - "@createBackupTitle": { - "description": "Button text to create backup" - }, - "checkForServerUpdates": "检查服务端更新", - "@checkForServerUpdates": { - "description": "Button text to check for Server updates" - }, - "clientVersion": "客户端版本", - "@clientVersion": { - "description": "Text title for the current version of the client in About screen" - }, - "displayModeDescriptiveList": "详细列表", - "@displayModeDescriptiveList": { - "description": "Radio button text for Manga Cover display mode - Descriptive List" - }, - "downloaded": "已下载", - "@downloaded": { - "description": "Text to show downloaded chapters status in Filters " - }, - "current": "最近阅读", - "@current": { - "description": "Text to show the currently reading chapter in Reader Screen" - }, - "edit": "编辑", - "@edit": { - "description": "Popup button text to edit Category in Edit category screen" - }, - "emptyCategory": "分类名不能为空", - "@emptyCategory": { - "description": "Description to show that category list is empty in Edit Category screen" - }, - "errorSomethingWentWrong": "发生错误!", - "@errorSomethingWentWrong": { - "description": "Error Description to show that Something went wrong!" - }, - "mangaSortDateAdded": "添加日期", - "@mangaSortDateAdded": { - "description": "Radio button text for Manga sort Type - Date Added" - }, - "moveToBottom": "移至底部", - "@moveToBottom": { - "description": "Button text to move download/category to the bottom of list" - }, - "moveToTop": "移至顶部", - "@moveToTop": { - "description": "Button text to move download/category to the top of list" - }, - "noCategoriesFound": "尚无任何分类。\n(提示:轻触加号按钮创建一个分类来管理你的书架)", - "@noCategoriesFound": { - "description": "Hint text to add new Category when category list is empty" - }, - "noCategoriesFoundAlt": "尚无任何分类。\n提示:轻触加号按钮创建一个分类来管理你的书架", - "@noCategoriesFoundAlt": { - "description": "Hint text to add new Category in Settings when category list is empty" - }, - "noOfChapters": "共 {count} 章", - "@noOfChapters": { - "description": "Title text to show the number of chapters in the Manga details screen", - "placeholders": { - "count": { - "example": "23", - "type": "int" - } - } - }, - "noUpdatesFound": "最近没有更新", - "@noUpdatesFound": { - "description": "Toast Text to show that there are no Updates available" - }, - "page": "第 {number} 页", - "@page": { - "description": "Text to show the last read Page number of the chapter in Manga details screen", - "placeholders": { - "number": { - "example": "23", - "type": "int" - } - } - }, - "readerMode": "阅读模式", - "@readerMode": { - "description": "Popup title and Button text of Reader Mode popup" - }, - "password": "密码", - "@password": { - "description": "Title text for password field" - }, - "readerModeContinuousHorizontalRTL": "从右到左(不分页)", - "@readerModeContinuousHorizontalRTL": { - "description": "Radio button text for Reader Mode Type - Continuous Horizontal (RTL)" - }, - "readerModeSingleVertical": "从上到下(分页)", - "@readerModeSingleVertical": { - "description": "Radio button text for Reader Mode Type - Single Vertical" - }, - "serverUrlHintText": "服务器地址", - "@serverUrlHintText": { - "description": "Text Filed hint text to update Server Url" - }, - "readerNavigationLayoutDisabled": "关闭", - "@readerNavigationLayoutDisabled": { - "description": "Radio button text for Reader Navigation Layout - Disabled" - }, - "serverVersion": "服务器版本", - "@serverVersion": { - "description": "Text title for the current version of the Server in About screen" - }, - "restoreBackupDescription": "从备份文件中还原", - "@restoreBackupDescription": { - "description": "Button text description to create backup" - }, - "source": "图源", - "@source": { - "description": "Screen title and Button text of source screen" - }, - "settings": "设置", - "@settings": { - "description": "Screen title and Button text of Settings screen" - }, - "readerNavigationLayoutKindlish": "Kindle 模式", - "@readerNavigationLayoutKindlish": { - "description": "Radio button text for Reader Navigation Layout - Kindle-ish" - }, - "sourceTypeLatest": "最近更新", - "@sourceTypeLatest": { - "description": "Tab text Latest for source screen type" - }, - "mangaStatusOnHiatus": "断更", - "@mangaStatusOnHiatus": { - "description": "Text to show Manga Status On Hiatus in Manga details screen" - }, - "mangaStatusPublishingFinished": "完结", - "@mangaStatusPublishingFinished": { - "description": "Text to show Manga Status Publishing Finished in Manga details screen" - }, - "mangaStatusUnknown": "未知", - "@mangaStatusUnknown": { - "description": "Text to show Manga Status Unknown in Manga details screen" - }, - "missingTrackers": "跟踪器缺失", - "@missingTrackers": { - "description": "Group title to show the Missing Trackers when restoring Backup" - }, - "chapterSortUploadDate": "按上传日期", - "@chapterSortUploadDate": { - "description": "Radio button text for sort by Upload Date" - }, - "readerScrollAnimation": "滚动动画", - "@readerScrollAnimation": { - "description": "Switch title to Disable scroll animation in reader screen" - }, - "readerMagnifierSize": "放大大小", - "@readerMagnifierSize": { - "description": "Slider title text for Reader Magnifier Size" - }, - "clearCache": "清除缓存", - "@clearCache": { - "description": "Button text for clear cache in General Settings screen" - }, - "cacheCleared": "已清除缓存", - "@cacheCleared": { - "description": "Toast Text to show after clearing cache" - }, - "noServerFound": "在本地网络中找不到服务器", - "@noServerFound": { - "description": "Text to show that no Server found in locale network" - }, - "findServer": "查找", - "@findServer": { - "description": "Button text of Find Server" - }, - "serverPortHintText": "服务器端口", - "@serverPortHintText": { - "description": "Text Filed hint text to update Server Port" - }, - "serverPort": "服务器端口", - "@serverPort": { - "description": "Popup title and Button text to update Server Port" - }, - "allScanlators": "所有过滤器", - "@allScanlators": { - "description": "Text for all Scanlators in manga description screen chapter filter" - }, - "quickSearchSourceManga": "在 'S' 源中搜索漫画 'M'", - "@quickSearchSourceManga": { - "description": "Quick Open Hint text for searching Manga M in Source S with prefill '@S/M'" - }, - "quickSearchCategoryManga": "在类别 'C' 中搜索漫画 'M'", - "@quickSearchCategoryManga": { - "description": "Quick Open Hint text for searching Manga M in Category C with prefill '#C/M'" - }, - "quickSearchCategoryMangaChapter": "在类别 'C' 中搜索漫画 'M' 的章节 'CN'", - "@quickSearchCategoryMangaChapter": { - "description": "Quick Open Hint text for searching Chapter name CN from Manga M in Source S with prefill '#C/M:CN'" - }, - "quickSearchCategory": "搜索类别 'C'", - "@quickSearchCategory": { - "description": "Quick Open Hint text for Category C with prefill '#C'" - }, - "scanlators": "扫描", - "@scanlators": { - "description": "Title text for Scanlators" - }, - "quickSearchSource": "搜索源 'S'", - "@quickSearchSource": { - "description": "Quick Open Hint text for Source S with prefill '@S'" - }, - "quickSearchContext": "搜索查询 X", - "@quickSearchContext": { - "description": "Quick Open Hint text for query X" - }, - "daysAgo": "{days} 天前", - "@daysAgo": { - "description": "Days ago text to show the release date of manga" - }, - "today": "今天", - "@today": { - "description": "Today Text to show the release date of manga" - }, - "yesterday": "昨天", - "@yesterday": { - "description": "Yesterday Text to show the release date of manga" - }, - "readerSwipeChapterToggle": "滑动切换", - "@readerSwipeChapterToggle": { - "description": "Switch title to toggle `swipe to change chapter` in reader screen" - }, - "readerSwipeChapterToggleDescription": "滑动切换章节", - "@readerSwipeChapterToggleDescription": { - "description": "Switch tile description for, toggle `swipe to change chapter` in reader screen" - }, - "readerOverlay": "阅读器初始覆盖层", - "@readerOverlay": { - "description": "Toggle subtile text for Initial Reader Overlay" - }, - "selectInBetween": "选取区间", - "@selectInBetween": { - "description": "Toast Text for selecting chapters in between first and last Chapters" - }, - "readerOverlaySubtitle": "打开章节时显示标题和设置", - "@readerOverlaySubtitle": {}, - "quickSearchShowAllCommandTip": "提示:输入 '?' 查看所有指令", - "@quickSearchShowAllCommandTip": { - "description": "Quick Open Tip text for showing all commands by entering '?'" - }, - "reload": "刷新", - "@reload": { - "description": "Reload button text" - }, - "previousChapter": "上章:{chapterTitle}", - "@previousChapter": { - "description": "Text for Previous Chapter button in Manga Reader Screen" - }, - "nextChapter": "下章:{chapterTitle}", - "@nextChapter": { - "description": "Text for Next Chapter button in Manga Reader Screen" - }, - "selectNext10": "选取下 10 个", - "@selectNext10": { - "description": "Toast Text for selecting next 10 chapters" - }, - "selectUnread": "选取未读", - "@selectUnread": { - "description": "Popup Text for selecting unread chapters" - }, - "readerVolumeTapInvert": "反转音量键", - "@readerVolumeTapInvert": { - "description": "Switch button text to invert Volume Tap " - }, - "readerVolumeTap": "音量键", - "@readerVolumeTap": { - "description": "Switch button text for Reader Page Navigation with Volume Tap" - }, - "readerVolumeTapSubtitle": "使用音量键操作", - "@readerVolumeTapSubtitle": { - "description": "Switch button Subtitle text for Reader Page Navigation with Volume Tap" - }, - "removeFromLibrary": "从书架中删除?", - "@removeFromLibrary": { - "description": "Remove From Library Popup text" - }, - "remove": "删除", - "@remove": { - "description": "Remove Button text" - } -} diff --git a/lib/src/l10n/app_zh_Hans.arb b/lib/src/l10n/app_zh_Hans.arb deleted file mode 100644 index d7ff0003..00000000 --- a/lib/src/l10n/app_zh_Hans.arb +++ /dev/null @@ -1,854 +0,0 @@ -{ - "start": "开始阅读", - "@start": { - "description": "Button text start reading the manga" - }, - "themeModeSystem": "跟随系统", - "@themeModeSystem": { - "description": "Radio button text for App theme - System" - }, - "unknownAuthor": "未知作者", - "@unknownAuthor": { - "description": "Text to show unknown author in Manga details screen" - }, - "updates": "更新", - "@updates": { - "description": "Screen title and Button text of Updates screen" - }, - "updating": "更新中", - "@updating": { - "description": "Button text to show that the extension is updating" - }, - "whatsNew": "更新了什么?", - "@whatsNew": { - "description": "Button text to open whats new page of app in web" - }, - "uninstalling": "正在卸载", - "@uninstalling": { - "description": "Button text to show that the extension is uninstalling" - }, - "versionAvailable": "{app} 有更新可用 {version} !", - "@versionAvailable": { - "description": "Text to show that there is an update to App/Server", - "placeholders": { - "app": { - "example": "Server", - "type": "String" - }, - "version": { - "example": "v0.4.2", - "type": "String" - } - } - }, - "webView": "Web View", - "@webView": { - "description": "Button text to open manga website" - }, - "authTypeBasic": "基本认证", - "@authTypeBasic": { - "description": "Radio button text for the Basic Authentication type" - }, - "restoring": "正在还原", - "@restoring": { - "description": "Toast Text to show that the backup is restoring" - }, - "chapterNumber": "第 {number} 章", - "@chapterNumber": { - "description": "Text title for Chapter name in chapter list", - "placeholders": { - "number": { - "example": "12.5", - "type": "double" - } - } - }, - "errorFilePickUnknownExtension": "请选择插件 {extensionName}", - "@errorFilePickUnknownExtension": { - "description": "Error Description to show when user selected unknown extension file" - }, - "finished": "阅读过", - "@finished": { - "description": "Text to show the Currently Finished reading chapter in Reader Screen" - }, - "copyMsg": "'{msg}'已复制!", - "@copyMsg": { - "description": "Toast text to show that the message has been copied", - "placeholders": { - "msg": { - "example": "Client : Tachidesk Sorayomi", - "type": "String" - } - } - }, - "appearance": "外观", - "@appearance": { - "description": "Screen title and Button text of Appearance screen" - }, - "authType": "验证方式", - "@authType": { - "description": "Popup title and Button text to change App Authentication" - }, - "extensions": "插件", - "@extensions": { - "description": "Extension list Tab title in Browse Screen" - }, - "about": "关于", - "@about": { - "description": "Screen title and Button text of About screen" - }, - "appLanguage": "应用语言", - "@appLanguage": { - "description": "Popup title and Button text to change App Language" - }, - "appTheme": "应用主题", - "@appTheme": { - "description": "Popup title and Button text to change App Theme" - }, - "appTitle": "Sorayomi", - "@appTitle": { - "description": "Name of the app (Tachidesk Sorayomi in native script)" - }, - "addToLibrary": "添加到书架", - "@addToLibrary": { - "description": "Button text to add Manga to Library in Manga Details Screen" - }, - "authTypeNone": "无", - "@authTypeNone": { - "description": "Radio button text for no Authentication" - }, - "browse": "浏览", - "@browse": { - "description": "Screen title, Navigation Bar text and Button text of both Browse screen and Browse Settings Screen" - }, - "buildTime": "构建时间", - "@buildTime": { - "description": "Text title to show build time of Server in About Screen" - }, - "bookmarked": "已添加书签", - "@bookmarked": { - "description": "Checkbox text to filter bookmarked manga chapters in Manga Details screen" - }, - "categories": "分类", - "@categories": { - "description": "Button text of edit Categories screen in Library settings screen" - }, - "categoryUpdate": "更新分类", - "@categoryUpdate": { - "description": "Button text to update the mangas in the Category" - }, - "channel": "通道", - "@channel": { - "description": "Text title to show Channel of the Server (Stable, preview) in About Screen" - }, - "chapterSortFetchedDate": "按添加日期", - "@chapterSortFetchedDate": { - "description": "Radio button text for sort by Fetched Date" - }, - "chapterSortSource": "按来源", - "@chapterSortSource": { - "description": "Radio button text for sort by Source" - }, - "checkForUpdates": "检查更新", - "@checkForUpdates": { - "description": "Button text to check for App Updates" - }, - "client": "客户端", - "@client": { - "description": "Text title for the name of the client in About screen" - }, - "close": "关闭", - "@close": { - "description": "Text for close button" - }, - "completed": "阅读过", - "@completed": { - "description": "Checkbox text to filter Completed mangas in Library screen and Manga Grouping text in Update Summary screen" - }, - "credentials": "认证", - "@credentials": { - "description": "Popup title and Button text to enter Authentication credentials" - }, - "defaultCategory": "默认添加到此库", - "@defaultCategory": { - "description": "Checkbox description when creating a Category to add manga to the Category by Default" - }, - "delete": "删除", - "@delete": { - "description": "Text for delete button" - }, - "createBackupDescription": "可用于还原当前书架数据", - "@createBackupDescription": { - "description": "Button text description to create backup" - }, - "deleteCategoryDescription": "此分类下的漫画将迁移至默认分类!", - "@deleteCategoryDescription": { - "description": "Popup description when deleting Category" - }, - "deleteCategoryTitle": "确定?", - "@deleteCategoryTitle": { - "description": "Popup title when deleting Category" - }, - "discord": "DIscord", - "@discord": { - "description": "Discord app title" - }, - "display": "显示", - "@display": { - "description": "Text for Display tab in Library screen drawer" - }, - "displayMode": "显示模式", - "@displayMode": { - "description": "Radio Group title to change manga Cover display in Library and Source Screens" - }, - "displayModeGrid": "网格", - "@displayModeGrid": { - "description": "Radio button text for Manga Cover display mode - Grid" - }, - "displayModeList": "简单列表", - "@displayModeList": { - "description": "Radio button text for Manga Cover display mode - List" - }, - "downloads": "下载", - "@downloads": { - "description": "Screen title and Navigation text of Downloads screen" - }, - "editCategory": "编辑分类", - "@editCategory": { - "description": "Screen title, Button text and of Downloads screen" - }, - "errorFilePick": "未选择任何文件!", - "@errorFilePick": { - "description": "Error Description to show when user does not selected an file" - }, - "errorExtension": "所选插件不存在", - "@errorExtension": { - "description": "Error Description to show when user selected unknown extension from list" - }, - "errorLaunchURL": "打开失败\n详细记录{url}已经复制到剪贴板", - "@errorLaunchURL": { - "description": "Error Description to show when App failed to launch an URL and copied the URL to clipboard", - "placeholders": { - "url": { - "example": "http://sorayomi.suwayomi.org", - "type": "String" - } - } - }, - "errorPassword": "密码不能为空", - "@errorPassword": { - "description": "Error Description to show that password cannot be empty" - }, - "errorUserName": "用户名不能为空", - "@errorUserName": { - "description": "Error Description to show that UserName cannot be empty" - }, - "extensionListEmpty": "插件列表为空", - "@extensionListEmpty": { - "description": "Description to show that Extension list is empty in Extension list tab of Browse screen" - }, - "extensionInstalled": "插件安装完成!", - "@extensionInstalled": { - "description": "Toast text to show that the Extension Installed successfully" - }, - "general": "通用", - "@general": { - "description": "Screen title and Button text of General setting screen" - }, - "gitHub": "GitHub", - "@gitHub": { - "description": "GitHub app title" - }, - "globalSearch": "全局搜索", - "@globalSearch": { - "description": "Screen title of Global Search screen" - }, - "globalUpdate": "全局更新", - "@globalUpdate": { - "description": "Button text of Global Manga Update" - }, - "inLibrary": "在书架中", - "@inLibrary": { - "description": "Button and Chip text to show that the manga is in Library" - }, - "installing": "安装中", - "@installing": { - "description": "Button text to show that the extension is installing" - }, - "installingExtension": "正在安装", - "@installingExtension": { - "description": "Toast text to show that the extension is installing" - }, - "languages": "语言", - "@languages": { - "description": "Popup title to filter extensions based on language" - }, - "library": "书架", - "@library": { - "description": "Screen title and Button text of Library and Library Settings screen" - }, - "manga": "漫画", - "@manga": { - "description": "Screen title and Button text of Manga details screen" - }, - "mangaSortAlphabetical": "名称", - "@mangaSortAlphabetical": { - "description": "Radio button text for Manga sort Type - Alphabetical" - }, - "mangaSortUnread": "未阅读", - "@mangaSortUnread": { - "description": "Radio button text for Manga sort Type - Unread" - }, - "mangaMissingSources": "来源未安装", - "@mangaMissingSources": { - "description": "Group title to show the Manga Missing Sources when restoring Backup" - }, - "mangaSortLastRead": "最近阅读", - "@mangaSortLastRead": { - "description": "Radio button text for Manga sort Type - Last Read" - }, - "mangaStatusCancelled": "已取消", - "@mangaStatusCancelled": { - "description": "Text to show Manga Status Cancelled in Manga details screen" - }, - "mangaStatusCompleted": "已完成", - "@mangaStatusCompleted": { - "description": "Text to show Manga Status Completed in Manga details screen" - }, - "mangaStatusLicensed": "已认证", - "@mangaStatusLicensed": { - "description": "Text to show Manga Status Licensed in Manga details screen" - }, - "mangaStatusOngoing": "连载中", - "@mangaStatusOngoing": { - "description": "Text to show Manga Status Ongoing in Manga details screen" - }, - "missingExtension": "插件缺失", - "@missingExtension": { - "description": "Group title to show the Missing Extensions when restoring Backup" - }, - "more": "更多", - "@more": { - "description": "Screen title and Navigation text of More screen" - }, - "nameCountDisplay": "{name}:{count}", - "@nameCountDisplay": { - "description": "Text pattern to display an name and count in a string", - "placeholders": { - "name": { - "example": "Downloaded", - "type": "String" - }, - "count": { - "example": "22", - "type": "int" - } - } - }, - "newUpdateAvailable": "有可用更新", - "@newUpdateAvailable": { - "description": "Popup title to show that the App/Server has and update" - }, - "noCategoryMangaFound": "未找到匹配项\n提示:检查搜索或更改筛选条件", - "@noCategoryMangaFound": { - "description": "Hint text to check filter when manga list is empty in Category tab in Library" - }, - "noChaptersFound": "未找到章节", - "@noChaptersFound": { - "description": "Text to show that the Chapter list is empty in Manga details Screen" - }, - "noDownloads": "没有下载中的任务", - "@noDownloads": { - "description": "Text to show that there is no active downloads in Downloads Screen" - }, - "noMangaFound": "未找到漫画", - "@noMangaFound": { - "description": "Text to show that the Manga list is empty" - }, - "noResultFound": "未找到结果", - "@noResultFound": { - "description": "Text to show that no results found for the given search query" - }, - "noSourcesFound": "结果为空", - "@noSourcesFound": { - "description": "Text to show that the Source list is empty" - }, - "noUpdatesAvailable": "正在使用最新版", - "@noUpdatesAvailable": { - "description": "Text to show that the user is using the latest version of the app" - }, - "nsfw": "在图源和插件中显示", - "@nsfw": { - "description": "Switch text to show/hide the nsfw extensions" - }, - "nsfw18": "18+", - "@nsfw18": { - "description": "18+ tag Text to show in extensions list" - }, - "nsfwInfo": "这并不能防止非官方或可能被错误标记的插件在应用中显示 NSFW(18+) 内容", - "@nsfwInfo": { - "description": "Hint text to show that the nsfw switch cannot prevent incorrectly flagged extensions from surfacing" - }, - "numSelected": "已选择 {num} 章", - "@numSelected": { - "description": "Title text to show the number of chapters selected in the Manga details screen and Updates screen", - "placeholders": { - "num": { - "example": "23", - "type": "int" - } - } - }, - "obsolete": "废弃", - "@obsolete": { - "description": "Text to show that the extension has become Obsolete" - }, - "pause": "暂停", - "@pause": { - "description": "Button text to pause downloads" - }, - "pending": "等待中", - "@pending": { - "description": "Pending status Manga Group title in Update Summary Screen" - }, - "reader": "阅读器", - "@reader": { - "description": "Screen title and Button text of Reader screen" - }, - "readerModeDefaultReader": "默认", - "@readerModeDefaultReader": { - "description": "Radio button text for Reader Mode Type - Default" - }, - "readerModeContinuousHorizontalLTR": "从左到右(不分页)", - "@readerModeContinuousHorizontalLTR": { - "description": "Radio button text for Reader Mode Type - Continuous Horizontal (LTR)" - }, - "readerModeContinuousVertical": "从上到下(不分页)", - "@readerModeContinuousVertical": { - "description": "Radio button text for Reader Mode Type - Continuous Vertical" - }, - "readerModeSingleHorizontalLTR": "从左到右(分页)", - "@readerModeSingleHorizontalLTR": { - "description": "Radio button text for Reader Mode Type - Single Horizontal (LTR)" - }, - "readerModeSingleHorizontalRTL": "从右到左(分页)", - "@readerModeSingleHorizontalRTL": { - "description": "Radio button text for Reader Mode Type - Single Horizontal (RTL)" - }, - "readerModeWebtoon": "条漫", - "@readerModeWebtoon": { - "description": "Radio button text for Reader Mode Type - Webtoon" - }, - "readerNavigationLayoutDefault": "默认布局", - "@readerNavigationLayoutDefault": { - "description": "Radio button text for Reader Navigation Layout - Default" - }, - "readerNavigationLayout": "点按布局", - "@readerNavigationLayout": { - "description": "Popup title and Button text of Reader Navigation Layout popup" - }, - "readerNavigationLayoutEdge": "边缘模式", - "@readerNavigationLayoutEdge": { - "description": "Radio button text for Reader Navigation Layout - Edge" - }, - "readerNavigationLayoutInvert": "反转点按区域", - "@readerNavigationLayoutInvert": { - "description": "Switch title to invert Tap to scroll in reader screen" - }, - "readerNavigationLayoutLShaped": "L 样式", - "@readerNavigationLayoutLShaped": { - "description": "Radio button text for Reader Navigation Layout - L Shaped" - }, - "readerNavigationLayoutRightAndLeft": "左右样式", - "@readerNavigationLayoutRightAndLeft": { - "description": "Radio button text for Reader Navigation Layout - Right And Left" - }, - "reddit": "Reddit", - "@reddit": { - "description": "Reddit app title" - }, - "update": "更新", - "@update": { - "description": "Button text to update the extension" - }, - "refresh": "刷新", - "@refresh": { - "description": "Refresh button text" - }, - "reset": "重置", - "@reset": { - "description": "Button text of reset button in source filters" - }, - "readerPadding": "填充", - "@readerPadding": { - "description": "Slider title text for Reader Padding" - }, - "restoreBackupTitle": "还原备份", - "@restoreBackupTitle": { - "description": "Button text to create backup" - }, - "restored": "完成备份恢复!", - "@restored": { - "description": "Toast Text to show that the backup has been restored" - }, - "resume": "继续", - "@resume": { - "description": "Button Text to resume Chapter reading/downloading" - }, - "retry": "重试", - "@retry": { - "description": "Retry Button Text" - }, - "running": "运行中", - "@running": { - "description": "Running status Manga Group title in Update Summary Screen" - }, - "save": "保存", - "@save": { - "description": "Save Button Text" - }, - "search": "搜索", - "@search": { - "description": "Search field hint Text" - }, - "searchingForUpdates": "搜索更新中", - "@searchingForUpdates": { - "description": "Toast Text for searching for updates of the App/Server" - }, - "server": "服务器", - "@server": { - "description": "Text title for the server in About screen" - }, - "serverUrl": "服务器地址", - "@serverUrl": { - "description": "Popup title and Button text to update Server Url" - }, - "sort": "排序", - "@sort": { - "description": "title of sort Tab across the app" - }, - "sourceTypeFilter": "筛选", - "@sourceTypeFilter": { - "description": "Tab text Filter for source screen type" - }, - "sourceTypePopular": "常用", - "@sourceTypePopular": { - "description": "Tab text Popular for source screen type" - }, - "sources": "图源", - "@sources": { - "description": "title of Sources Tab in Browse Screen" - }, - "themeModeDark": "深色模式", - "@themeModeDark": { - "description": "Radio button text for App theme - Dark" - }, - "themeModeLight": "浅色模式", - "@themeModeLight": { - "description": "Radio button text for App theme - Light" - }, - "uninstall": "卸载", - "@uninstall": { - "description": "Button text to Uninstall the extension" - }, - "unknownManga": "未知漫画", - "@unknownManga": { - "description": "Text to show unknown manga in Manga details screen" - }, - "unknownSource": "未知图源", - "@unknownSource": { - "description": "Text to show unknown Source in Manga details screen" - }, - "unread": "未阅读", - "@unread": { - "description": "Checkbox text to unread bookmarked manga/chapters across app" - }, - "updateCompleted": "更新完成", - "@updateCompleted": { - "description": "Button text to show that extension update is completed" - }, - "updatesSummary": "更新摘要", - "@updatesSummary": { - "description": "Screen title and Button text of Updates Summary screen" - }, - "userName": "用户名", - "@userName": { - "description": "Title text for User Name field" - }, - "webUI": "在浏览器中打开", - "@webUI": { - "description": "Button text to open in web UI" - }, - "addCategory": "添加分类", - "@addCategory": { - "description": "Popup title and Button text to add new category in Edit Category Screen" - }, - "help": "帮助", - "@help": { - "description": "Button text of help in about screen" - }, - "failed": "更新失败", - "@failed": { - "description": "Failed status Manga Group title in Update Summary Screen" - }, - "filter": "筛选", - "@filter": { - "description": "title of filter Tab across the app" - }, - "latest": "最新", - "@latest": { - "description": "Button text to take user to the latest tab of Source manga screen" - }, - "install": "安装", - "@install": { - "description": "Button text to install the extension" - }, - "mangaGridSize": "网格大小", - "@mangaGridSize": { - "description": "Popup title and Button text to change Manga Grid size" - }, - "cancel": "取消", - "@cancel": { - "description": "Text for Cancel button in a Popup" - }, - "backup": "备份和恢复", - "@backup": { - "description": "Screen title and Button text of Backup & Restore screen" - }, - "badges": "徽标", - "@badges": { - "description": "Checkbox Group title to enable Badges on manga Cover in Library Screen" - }, - "createBackupTitle": "创建备份", - "@createBackupTitle": { - "description": "Button text to create backup" - }, - "checkForServerUpdates": "检查服务端更新", - "@checkForServerUpdates": { - "description": "Button text to check for Server updates" - }, - "clientVersion": "客户端版本", - "@clientVersion": { - "description": "Text title for the current version of the client in About screen" - }, - "displayModeDescriptiveList": "详细列表", - "@displayModeDescriptiveList": { - "description": "Radio button text for Manga Cover display mode - Descriptive List" - }, - "downloaded": "已下载", - "@downloaded": { - "description": "Text to show downloaded chapters status in Filters " - }, - "current": "最近阅读", - "@current": { - "description": "Text to show the currently reading chapter in Reader Screen" - }, - "edit": "编辑", - "@edit": { - "description": "Popup button text to edit Category in Edit category screen" - }, - "emptyCategory": "分类名不能为空", - "@emptyCategory": { - "description": "Description to show that category list is empty in Edit Category screen" - }, - "errorSomethingWentWrong": "发生错误!", - "@errorSomethingWentWrong": { - "description": "Error Description to show that Something went wrong!" - }, - "mangaSortDateAdded": "添加日期", - "@mangaSortDateAdded": { - "description": "Radio button text for Manga sort Type - Date Added" - }, - "moveToBottom": "移至底部", - "@moveToBottom": { - "description": "Button text to move download/category to the bottom of list" - }, - "moveToTop": "移至顶部", - "@moveToTop": { - "description": "Button text to move download/category to the top of list" - }, - "noCategoriesFound": "尚无任何分类。\n(提示:轻触加号按钮创建一个分类来管理你的书架)", - "@noCategoriesFound": { - "description": "Hint text to add new Category when category list is empty" - }, - "noCategoriesFoundAlt": "尚无任何分类。\n提示:轻触加号按钮创建一个分类来管理你的书架", - "@noCategoriesFoundAlt": { - "description": "Hint text to add new Category in Settings when category list is empty" - }, - "noOfChapters": "共 {count} 章", - "@noOfChapters": { - "description": "Title text to show the number of chapters in the Manga details screen", - "placeholders": { - "count": { - "example": "23", - "type": "int" - } - } - }, - "noUpdatesFound": "最近没有更新", - "@noUpdatesFound": { - "description": "Toast Text to show that there are no Updates available" - }, - "page": "第 {number} 页", - "@page": { - "description": "Text to show the last read Page number of the chapter in Manga details screen", - "placeholders": { - "number": { - "example": "23", - "type": "int" - } - } - }, - "readerMode": "阅读模式", - "@readerMode": { - "description": "Popup title and Button text of Reader Mode popup" - }, - "password": "密码", - "@password": { - "description": "Title text for password field" - }, - "readerModeContinuousHorizontalRTL": "从右到左(不分页)", - "@readerModeContinuousHorizontalRTL": { - "description": "Radio button text for Reader Mode Type - Continuous Horizontal (RTL)" - }, - "readerModeSingleVertical": "从上到下(分页)", - "@readerModeSingleVertical": { - "description": "Radio button text for Reader Mode Type - Single Vertical" - }, - "serverUrlHintText": "服务器地址", - "@serverUrlHintText": { - "description": "Text Filed hint text to update Server Url" - }, - "readerNavigationLayoutDisabled": "关闭", - "@readerNavigationLayoutDisabled": { - "description": "Radio button text for Reader Navigation Layout - Disabled" - }, - "serverVersion": "服务器版本", - "@serverVersion": { - "description": "Text title for the current version of the Server in About screen" - }, - "restoreBackupDescription": "从备份文件中还原", - "@restoreBackupDescription": { - "description": "Button text description to create backup" - }, - "source": "图源", - "@source": { - "description": "Screen title and Button text of source screen" - }, - "settings": "设置", - "@settings": { - "description": "Screen title and Button text of Settings screen" - }, - "readerNavigationLayoutKindlish": "Kindle 模式", - "@readerNavigationLayoutKindlish": { - "description": "Radio button text for Reader Navigation Layout - Kindle-ish" - }, - "sourceTypeLatest": "最近更新", - "@sourceTypeLatest": { - "description": "Tab text Latest for source screen type" - }, - "mangaStatusOnHiatus": "断更", - "@mangaStatusOnHiatus": { - "description": "Text to show Manga Status On Hiatus in Manga details screen" - }, - "mangaStatusPublishingFinished": "完结", - "@mangaStatusPublishingFinished": { - "description": "Text to show Manga Status Publishing Finished in Manga details screen" - }, - "mangaStatusUnknown": "未知", - "@mangaStatusUnknown": { - "description": "Text to show Manga Status Unknown in Manga details screen" - }, - "missingTrackers": "跟踪器缺失", - "@missingTrackers": { - "description": "Group title to show the Missing Trackers when restoring Backup" - }, - "chapterSortUploadDate": "按上传日期", - "@chapterSortUploadDate": { - "description": "Radio button text for sort by Upload Date" - }, - "readerScrollAnimation": "滚动动画", - "@readerScrollAnimation": { - "description": "Switch title to Disable scroll animation in reader screen" - }, - "readerMagnifierSize": "放大大小", - "@readerMagnifierSize": { - "description": "Slider title text for Reader Magnifier Size" - }, - "clearCache": "清除缓存", - "@clearCache": { - "description": "Button text for clear cache in General Settings screen" - }, - "cacheCleared": "已清除缓存", - "@cacheCleared": { - "description": "Toast Text to show after clearing cache" - }, - "noServerFound": "在本地网络中找不到服务器", - "@noServerFound": { - "description": "Text to show that no Server found in locale network" - }, - "findServer": "查找", - "@findServer": { - "description": "Button text of Find Server" - }, - "serverPortHintText": "服务器端口", - "@serverPortHintText": { - "description": "Text Filed hint text to update Server Port" - }, - "serverPort": "服务器端口", - "@serverPort": { - "description": "Popup title and Button text to update Server Port" - }, - "allScanlators": "所有过滤器", - "@allScanlators": { - "description": "Text for all Scanlators in manga description screen chapter filter" - }, - "quickSearchSourceManga": "在 'S' 源中搜索漫画 'M'", - "@quickSearchSourceManga": { - "description": "Quick Open Hint text for searching Manga M in Source S with prefill '@S/M'" - }, - "quickSearchCategoryManga": "在类别 'C' 中搜索漫画 'M'", - "@quickSearchCategoryManga": { - "description": "Quick Open Hint text for searching Manga M in Category C with prefill '#C/M'" - }, - "quickSearchCategoryMangaChapter": "在类别 'C' 中搜索漫画 'M' 的章节 'CN'", - "@quickSearchCategoryMangaChapter": { - "description": "Quick Open Hint text for searching Chapter name CN from Manga M in Source S with prefill '#C/M:CN'" - }, - "quickSearchCategory": "搜索类别 'C'", - "@quickSearchCategory": { - "description": "Quick Open Hint text for Category C with prefill '#C'" - }, - "scanlators": "扫描", - "@scanlators": { - "description": "Title text for Scanlators" - }, - "quickSearchSource": "搜索源 'S'", - "@quickSearchSource": { - "description": "Quick Open Hint text for Source S with prefill '@S'" - }, - "quickSearchContext": "搜索查询 X", - "@quickSearchContext": { - "description": "Quick Open Hint text for query X" - }, - "daysAgo": "{days} 天前", - "@daysAgo": { - "description": "Days ago text to show the release date of manga" - }, - "today": "今天", - "@today": { - "description": "Today Text to show the release date of manga" - }, - "yesterday": "昨天", - "@yesterday": { - "description": "Yesterday Text to show the release date of manga" - }, - "readerSwipeChapterToggle": "滑动切换", - "@readerSwipeChapterToggle": { - "description": "Switch title to toggle `swipe to change chapter` in reader screen" - }, - "readerSwipeChapterToggleDescription": "滑动切换章节", - "@readerSwipeChapterToggleDescription": { - "description": "Switch tile description for, toggle `swipe to change chapter` in reader screen" - } -} diff --git a/lib/src/l10n/app_zh_Hant.arb b/lib/src/l10n/app_zh_Hant.arb deleted file mode 100644 index c6212e28..00000000 --- a/lib/src/l10n/app_zh_Hant.arb +++ /dev/null @@ -1,900 +0,0 @@ -{ - "updates": "更新", - "@updates": { - "description": "Screen title and Button text of Updates screen" - }, - "languages": "語言", - "@languages": { - "description": "Popup title to filter extensions based on language" - }, - "readerNavigationLayoutInvert": "反轉手勢區域", - "@readerNavigationLayoutInvert": { - "description": "Switch title to invert Tap to scroll in reader screen" - }, - "readerModeDefaultReader": "預設", - "@readerModeDefaultReader": { - "description": "Radio button text for Reader Mode Type - Default" - }, - "chapterSortFetchedDate": "按新增日期", - "@chapterSortFetchedDate": { - "description": "Radio button text for sort by Fetched Date" - }, - "readerSwipeChapterToggleDescription": "滑動切換章節", - "@readerSwipeChapterToggleDescription": { - "description": "Switch tile description for, toggle `swipe to change chapter` in reader screen" - }, - "displayModeList": "列表", - "@displayModeList": { - "description": "Radio button text for Manga Cover display mode - List" - }, - "categories": "分類", - "@categories": { - "description": "Button text of edit Categories screen in Library settings screen" - }, - "close": "關閉", - "@close": { - "description": "Text for close button" - }, - "current": "最近閱讀", - "@current": { - "description": "Text to show the currently reading chapter in Reader Screen" - }, - "save": "儲存", - "@save": { - "description": "Save Button Text" - }, - "restoring": "正在還原", - "@restoring": { - "description": "Toast Text to show that the backup is restoring" - }, - "filter": "篩選", - "@filter": { - "description": "title of filter Tab across the app" - }, - "allScanlators": "所有過濾器", - "@allScanlators": { - "description": "Text for all Scanlators in manga description screen chapter filter" - }, - "reset": "重設", - "@reset": { - "description": "Button text of reset button in source filters" - }, - "appLanguage": "應用程式語言", - "@appLanguage": { - "description": "Popup title and Button text to change App Language" - }, - "scanlators": "掃瞄", - "@scanlators": { - "description": "Title text for Scanlators" - }, - "quickSearchCategoryMangaChapter": "在分類 'C' 中搜索漫畫 'M' 的章節名 'CN'", - "@quickSearchCategoryMangaChapter": { - "description": "Quick Open Hint text for searching Chapter name CN from Manga M in Source S with prefill '#C/M:CN'" - }, - "password": "密碼", - "@password": { - "description": "Title text for password field" - }, - "noChaptersFound": "未找到章節", - "@noChaptersFound": { - "description": "Text to show that the Chapter list is empty in Manga details Screen" - }, - "addCategory": "新增分類", - "@addCategory": { - "description": "Popup title and Button text to add new category in Edit Category Screen" - }, - "readerNavigationLayoutRightAndLeft": "左右", - "@readerNavigationLayoutRightAndLeft": { - "description": "Radio button text for Reader Navigation Layout - Right And Left" - }, - "quickSearchCategoryManga": "在分類 'C' 中搜尋漫畫 'M'", - "@quickSearchCategoryManga": { - "description": "Quick Open Hint text for searching Manga M in Category C with prefill '#C/M'" - }, - "clientVersion": "用戶端版本", - "@clientVersion": { - "description": "Text title for the current version of the client in About screen" - }, - "missingExtension": "插件缺失", - "@missingExtension": { - "description": "Group title to show the Missing Extensions when restoring Backup" - }, - "appTheme": "應用程式主題", - "@appTheme": { - "description": "Popup title and Button text to change App Theme" - }, - "mangaStatusCancelled": "已取消", - "@mangaStatusCancelled": { - "description": "Text to show Manga Status Cancelled in Manga details screen" - }, - "noDownloads": "無下載", - "@noDownloads": { - "description": "Text to show that there is no active downloads in Downloads Screen" - }, - "deleteCategoryDescription": "此分類下的漫畫將合併至預設分類!", - "@deleteCategoryDescription": { - "description": "Popup description when deleting Category" - }, - "displayModeGrid": "網格", - "@displayModeGrid": { - "description": "Radio button text for Manga Cover display mode - Grid" - }, - "gitHub": "GitHub", - "@gitHub": { - "description": "GitHub app title" - }, - "displayMode": "顯示模式", - "@displayMode": { - "description": "Radio Group title to change manga Cover display in Library and Source Screens" - }, - "inLibrary": "在書架中", - "@inLibrary": { - "description": "Button and Chip text to show that the manga is in Library" - }, - "createBackupDescription": "以 Tachidesk 備份檔備份書架", - "@createBackupDescription": { - "description": "Button text description to create backup" - }, - "unread": "未閱讀", - "@unread": { - "description": "Checkbox text to unread bookmarked manga/chapters across app" - }, - "server": "伺服器", - "@server": { - "description": "Text title for the server in About screen" - }, - "bookmarked": "已新增書籤", - "@bookmarked": { - "description": "Checkbox text to filter bookmarked manga chapters in Manga Details screen" - }, - "manga": "漫畫", - "@manga": { - "description": "Screen title and Button text of Manga details screen" - }, - "numSelected": "已選擇 {num} 章", - "@numSelected": { - "description": "Title text to show the number of chapters selected in the Manga details screen and Updates screen", - "placeholders": { - "num": { - "example": "23", - "type": "int" - } - } - }, - "discord": "Discord", - "@discord": { - "description": "Discord app title" - }, - "noUpdatesAvailable": "正在使用最新版本", - "@noUpdatesAvailable": { - "description": "Text to show that the user is using the latest version of the app" - }, - "searchingForUpdates": "搜尋更新中", - "@searchingForUpdates": { - "description": "Toast Text for searching for updates of the App/Server" - }, - "addToLibrary": "新增至書架", - "@addToLibrary": { - "description": "Button text to add Manga to Library in Manga Details Screen" - }, - "readerModeSingleHorizontalLTR": "分頁左至右", - "@readerModeSingleHorizontalLTR": { - "description": "Radio button text for Reader Mode Type - Single Horizontal (LTR)" - }, - "globalSearch": "全域搜尋", - "@globalSearch": { - "description": "Screen title of Global Search screen" - }, - "pause": "暫停", - "@pause": { - "description": "Button text to pause downloads" - }, - "readerSwipeChapterToggle": "滑動切換", - "@readerSwipeChapterToggle": { - "description": "Switch title to toggle `swipe to change chapter` in reader screen" - }, - "mangaSortAlphabetical": "名稱", - "@mangaSortAlphabetical": { - "description": "Radio button text for Manga sort Type - Alphabetical" - }, - "installing": "安裝中", - "@installing": { - "description": "Button text to show that the extension is installing" - }, - "sourceTypeLatest": "最新", - "@sourceTypeLatest": { - "description": "Tab text Latest for source screen type" - }, - "serverUrlHintText": "伺服器網址", - "@serverUrlHintText": { - "description": "Text Filed hint text to update Server Url" - }, - "findServer": "搜尋", - "@findServer": { - "description": "Button text of Find Server" - }, - "edit": "編輯", - "@edit": { - "description": "Popup button text to edit Category in Edit category screen" - }, - "readerNavigationLayoutDefault": "預設", - "@readerNavigationLayoutDefault": { - "description": "Radio button text for Reader Navigation Layout - Default" - }, - "defaultCategory": "預設新增至此分類", - "@defaultCategory": { - "description": "Checkbox description when creating a Category to add manga to the Category by Default" - }, - "update": "更新", - "@update": { - "description": "Button text to update the extension" - }, - "themeModeDark": "深色", - "@themeModeDark": { - "description": "Radio button text for App theme - Dark" - }, - "restoreBackupTitle": "還原備份", - "@restoreBackupTitle": { - "description": "Button text to create backup" - }, - "client": "用戶端", - "@client": { - "description": "Text title for the name of the client in About screen" - }, - "mangaStatusCompleted": "已完成", - "@mangaStatusCompleted": { - "description": "Text to show Manga Status Completed in Manga details screen" - }, - "versionAvailable": "{app} 有更新可用 {version}!", - "@versionAvailable": { - "description": "Text to show that there is an update to App/Server", - "placeholders": { - "app": { - "example": "Server", - "type": "String" - }, - "version": { - "example": "v0.4.2", - "type": "String" - } - } - }, - "errorFilePickUnknownExtension": "請選擇含 {extensionName} 的插件", - "@errorFilePickUnknownExtension": { - "description": "Error Description to show when user selected unknown extension file" - }, - "appearance": "外觀", - "@appearance": { - "description": "Screen title and Button text of Appearance screen" - }, - "serverVersion": "伺服器版本", - "@serverVersion": { - "description": "Text title for the current version of the Server in About screen" - }, - "installingExtension": "正在安裝", - "@installingExtension": { - "description": "Toast text to show that the extension is installing" - }, - "downloads": "下載", - "@downloads": { - "description": "Screen title and Navigation text of Downloads screen" - }, - "deleteCategoryTitle": "確定?", - "@deleteCategoryTitle": { - "description": "Popup title when deleting Category" - }, - "resume": "繼續", - "@resume": { - "description": "Button Text to resume Chapter reading/downloading" - }, - "display": "顯示", - "@display": { - "description": "Text for Display tab in Library screen drawer" - }, - "readerModeSingleVertical": "分頁上至下", - "@readerModeSingleVertical": { - "description": "Radio button text for Reader Mode Type - Single Vertical" - }, - "help": "幫助", - "@help": { - "description": "Button text of help in about screen" - }, - "serverPortHintText": "伺服器埠", - "@serverPortHintText": { - "description": "Text Filed hint text to update Server Port" - }, - "errorUserName": "用戶名不能為空", - "@errorUserName": { - "description": "Error Description to show that UserName cannot be empty" - }, - "userName": "用戶名", - "@userName": { - "description": "Title text for User Name field" - }, - "mangaStatusPublishingFinished": "完結", - "@mangaStatusPublishingFinished": { - "description": "Text to show Manga Status Publishing Finished in Manga details screen" - }, - "delete": "移除", - "@delete": { - "description": "Text for delete button" - }, - "readerNavigationLayoutLShaped": "L 形", - "@readerNavigationLayoutLShaped": { - "description": "Radio button text for Reader Navigation Layout - L Shaped" - }, - "start": "開始閱讀", - "@start": { - "description": "Button text start reading the manga" - }, - "serverPort": "伺服器埠", - "@serverPort": { - "description": "Popup title and Button text to update Server Port" - }, - "mangaSortDateAdded": "新增日期", - "@mangaSortDateAdded": { - "description": "Radio button text for Manga sort Type - Date Added" - }, - "globalUpdate": "全域更新", - "@globalUpdate": { - "description": "Button text of Global Manga Update" - }, - "noSourcesFound": "未找到來源", - "@noSourcesFound": { - "description": "Text to show that the Source list is empty" - }, - "page": "第 {number} 頁", - "@page": { - "description": "Text to show the last read Page number of the chapter in Manga details screen", - "placeholders": { - "number": { - "example": "23", - "type": "int" - } - } - }, - "readerNavigationLayoutDisabled": "停用", - "@readerNavigationLayoutDisabled": { - "description": "Radio button text for Reader Navigation Layout - Disabled" - }, - "authType": "驗證方式", - "@authType": { - "description": "Popup title and Button text to change App Authentication" - }, - "appTitle": "Tachidesk Sorayomi", - "@appTitle": { - "description": "Name of the app (Tachidesk Sorayomi in native script)" - }, - "credentials": "認證", - "@credentials": { - "description": "Popup title and Button text to enter Authentication credentials" - }, - "checkForServerUpdates": "檢查伺服器更新", - "@checkForServerUpdates": { - "description": "Button text to check for Server updates" - }, - "chapterNumber": "第 {number} 章", - "@chapterNumber": { - "description": "Text title for Chapter name in chapter list", - "placeholders": { - "number": { - "example": "12.5", - "type": "double" - } - } - }, - "retry": "重試", - "@retry": { - "description": "Retry Button Text" - }, - "mangaStatusOnHiatus": "斷更", - "@mangaStatusOnHiatus": { - "description": "Text to show Manga Status On Hiatus in Manga details screen" - }, - "themeModeSystem": "系統", - "@themeModeSystem": { - "description": "Radio button text for App theme - System" - }, - "moveToTop": "移至頂部", - "@moveToTop": { - "description": "Button text to move download/category to the top of list" - }, - "nameCountDisplay": "{name}:{count}", - "@nameCountDisplay": { - "description": "Text pattern to display an name and count in a string", - "placeholders": { - "name": { - "example": "Downloaded", - "type": "String" - }, - "count": { - "example": "22", - "type": "int" - } - } - }, - "mangaStatusUnknown": "未知", - "@mangaStatusUnknown": { - "description": "Text to show Manga Status Unknown in Manga details screen" - }, - "noUpdatesFound": "無可用更新", - "@noUpdatesFound": { - "description": "Toast Text to show that there are no Updates available" - }, - "quickSearchContext": "搜尋查詢 X (結果基於顯示中內容)", - "@quickSearchContext": { - "description": "Quick Open Hint text for query X" - }, - "uninstall": "解除安裝", - "@uninstall": { - "description": "Button text to Uninstall the extension" - }, - "readerNavigationLayoutKindlish": "Kindle 模式", - "@readerNavigationLayoutKindlish": { - "description": "Radio button text for Reader Navigation Layout - Kindle-ish" - }, - "readerPadding": "填充", - "@readerPadding": { - "description": "Slider title text for Reader Padding" - }, - "chapterSortSource": "按來源", - "@chapterSortSource": { - "description": "Radio button text for sort by Source" - }, - "updateCompleted": "更新已完成", - "@updateCompleted": { - "description": "Button text to show that extension update is completed" - }, - "themeModeLight": "亮色", - "@themeModeLight": { - "description": "Radio button text for App theme - Light" - }, - "copyMsg": "'{msg}' 已複製!", - "@copyMsg": { - "description": "Toast text to show that the message has been copied", - "placeholders": { - "msg": { - "example": "Client : Tachidesk Sorayomi", - "type": "String" - } - } - }, - "reddit": "Reddit", - "@reddit": { - "description": "Reddit app title" - }, - "obsolete": "廢棄", - "@obsolete": { - "description": "Text to show that the extension has become Obsolete" - }, - "library": "書架", - "@library": { - "description": "Screen title and Button text of Library and Library Settings screen" - }, - "backup": "備份和恢復", - "@backup": { - "description": "Screen title and Button text of Backup & Restore screen" - }, - "browse": "瀏覽", - "@browse": { - "description": "Screen title, Navigation Bar text and Button text of both Browse screen and Browse Settings Screen" - }, - "authTypeBasic": "基本驗證", - "@authTypeBasic": { - "description": "Radio button text for the Basic Authentication type" - }, - "readerMode": "閱讀模式", - "@readerMode": { - "description": "Popup title and Button text of Reader Mode popup" - }, - "readerModeWebtoon": "條漫", - "@readerModeWebtoon": { - "description": "Radio button text for Reader Mode Type - Webtoon" - }, - "downloaded": "已下載", - "@downloaded": { - "description": "Text to show downloaded chapters status in Filters " - }, - "about": "關於", - "@about": { - "description": "Screen title and Button text of About screen" - }, - "emptyCategory": "分類名不能為空", - "@emptyCategory": { - "description": "Description to show that category list is empty in Edit Category screen" - }, - "nsfw18": "18+", - "@nsfw18": { - "description": "18+ tag Text to show in extensions list" - }, - "readerMagnifierSize": "放大大小", - "@readerMagnifierSize": { - "description": "Slider title text for Reader Magnifier Size" - }, - "chapterSortUploadDate": "按上傳日期", - "@chapterSortUploadDate": { - "description": "Radio button text for sort by Upload Date" - }, - "extensions": "插件", - "@extensions": { - "description": "Extension list Tab title in Browse Screen" - }, - "quickSearchCategory": "搜尋分類 'C'", - "@quickSearchCategory": { - "description": "Quick Open Hint text for Category C with prefill '#C'" - }, - "whatsNew": "更新了什麼?", - "@whatsNew": { - "description": "Button text to open whats new page of app in web" - }, - "noMangaFound": "未找到漫畫", - "@noMangaFound": { - "description": "Text to show that the Manga list is empty" - }, - "unknownAuthor": "未知作者", - "@unknownAuthor": { - "description": "Text to show unknown author in Manga details screen" - }, - "more": "更多", - "@more": { - "description": "Screen title and Navigation text of More screen" - }, - "updating": "更新中", - "@updating": { - "description": "Button text to show that the extension is updating" - }, - "cacheCleared": "已清除快取", - "@cacheCleared": { - "description": "Toast Text to show after clearing cache" - }, - "channel": "通道", - "@channel": { - "description": "Text title to show Channel of the Server (Stable, preview) in About Screen" - }, - "sources": "來源", - "@sources": { - "description": "title of Sources Tab in Browse Screen" - }, - "mangaStatusOngoing": "連載中", - "@mangaStatusOngoing": { - "description": "Text to show Manga Status Ongoing in Manga details screen" - }, - "errorPassword": "密碼不能為空", - "@errorPassword": { - "description": "Error Description to show that password cannot be empty" - }, - "readerModeContinuousHorizontalRTL": "連續右至左", - "@readerModeContinuousHorizontalRTL": { - "description": "Radio button text for Reader Mode Type - Continuous Horizontal (RTL)" - }, - "restoreBackupDescription": "從 Tachidesk 備份中還原", - "@restoreBackupDescription": { - "description": "Button text description to create backup" - }, - "errorSomethingWentWrong": "發生錯誤!", - "@errorSomethingWentWrong": { - "description": "Error Description to show that Something went wrong!" - }, - "cancel": "取消", - "@cancel": { - "description": "Text for Cancel button in a Popup" - }, - "yesterday": "昨天", - "@yesterday": { - "description": "Yesterday Text to show the release date of manga" - }, - "daysAgo": "{days} 天前", - "@daysAgo": { - "description": "Days ago text to show the release date of manga" - }, - "extensionListEmpty": "插件列表為空", - "@extensionListEmpty": { - "description": "Description to show that Extension list is empty in Extension list tab of Browse screen" - }, - "webUI": "在瀏覽器中打開", - "@webUI": { - "description": "Button text to open in web UI" - }, - "unknownManga": "未知漫畫", - "@unknownManga": { - "description": "Text to show unknown manga in Manga details screen" - }, - "restored": "備份還原已完成!", - "@restored": { - "description": "Toast Text to show that the backup has been restored" - }, - "noOfChapters": "共 {count} 章", - "@noOfChapters": { - "description": "Title text to show the number of chapters in the Manga details screen", - "placeholders": { - "count": { - "example": "23", - "type": "int" - } - } - }, - "reader": "閱讀器", - "@reader": { - "description": "Screen title and Button text of Reader screen" - }, - "refresh": "重新整理", - "@refresh": { - "description": "Refresh button text" - }, - "nsfwInfo": "這不能防止非官方或可能被錯誤標記的插件在應用程式中顯示 NSFW(18+) 內容", - "@nsfwInfo": { - "description": "Hint text to show that the nsfw switch cannot prevent incorrectly flagged extensions from surfacing" - }, - "newUpdateAvailable": "有可用更新", - "@newUpdateAvailable": { - "description": "Popup title to show that the App/Server has and update" - }, - "general": "一般", - "@general": { - "description": "Screen title and Button text of General setting screen" - }, - "readerModeContinuousVertical": "連續上至下", - "@readerModeContinuousVertical": { - "description": "Radio button text for Reader Mode Type - Continuous Vertical" - }, - "serverUrl": "伺服器網址", - "@serverUrl": { - "description": "Popup title and Button text to update Server Url" - }, - "displayModeDescriptiveList": "詳細列表", - "@displayModeDescriptiveList": { - "description": "Radio button text for Manga Cover display mode - Descriptive List" - }, - "quickSearchSourceManga": "在來源 'S' 中搜尋漫畫 'M'", - "@quickSearchSourceManga": { - "description": "Quick Open Hint text for searching Manga M in Source S with prefill '@S/M'" - }, - "completed": "已閱", - "@completed": { - "description": "Checkbox text to filter Completed mangas in Library screen and Manga Grouping text in Update Summary screen" - }, - "quickSearchSource": "搜尋來源 'S'", - "@quickSearchSource": { - "description": "Quick Open Hint text for Source S with prefill '@S'" - }, - "editCategory": "編輯分類", - "@editCategory": { - "description": "Screen title, Button text and of Downloads screen" - }, - "missingTrackers": "跟踪器缺失", - "@missingTrackers": { - "description": "Group title to show the Missing Trackers when restoring Backup" - }, - "readerNavigationLayout": "手勢佈局", - "@readerNavigationLayout": { - "description": "Popup title and Button text of Reader Navigation Layout popup" - }, - "mangaSortUnread": "未閱讀", - "@mangaSortUnread": { - "description": "Radio button text for Manga sort Type - Unread" - }, - "clearCache": "清除快取", - "@clearCache": { - "description": "Button text for clear cache in General Settings screen" - }, - "search": "搜尋", - "@search": { - "description": "Search field hint Text" - }, - "readerModeContinuousHorizontalLTR": "連續左至右", - "@readerModeContinuousHorizontalLTR": { - "description": "Radio button text for Reader Mode Type - Continuous Horizontal (LTR)" - }, - "finished": "已閱", - "@finished": { - "description": "Text to show the Currently Finished reading chapter in Reader Screen" - }, - "sort": "排序", - "@sort": { - "description": "title of sort Tab across the app" - }, - "mangaMissingSources": "漫畫來源缺失", - "@mangaMissingSources": { - "description": "Group title to show the Manga Missing Sources when restoring Backup" - }, - "sourceTypePopular": "熱門", - "@sourceTypePopular": { - "description": "Tab text Popular for source screen type" - }, - "nsfw": "在插件和來源中顯示 NSFW 內容", - "@nsfw": { - "description": "Switch text to show/hide the nsfw extensions" - }, - "checkForUpdates": "檢查更新", - "@checkForUpdates": { - "description": "Button text to check for App Updates" - }, - "webView": "Web View", - "@webView": { - "description": "Button text to open manga website" - }, - "running": "運作中", - "@running": { - "description": "Running status Manga Group title in Update Summary Screen" - }, - "createBackupTitle": "建立備份", - "@createBackupTitle": { - "description": "Button text to create backup" - }, - "mangaStatusLicensed": "已認證", - "@mangaStatusLicensed": { - "description": "Text to show Manga Status Licensed in Manga details screen" - }, - "readerModeSingleHorizontalRTL": "分頁右至左", - "@readerModeSingleHorizontalRTL": { - "description": "Radio button text for Reader Mode Type - Single Horizontal (RTL)" - }, - "settings": "設定", - "@settings": { - "description": "Screen title and Button text of Settings screen" - }, - "readerNavigationLayoutEdge": "邊緣", - "@readerNavigationLayoutEdge": { - "description": "Radio button text for Reader Navigation Layout - Edge" - }, - "pending": "等待中", - "@pending": { - "description": "Pending status Manga Group title in Update Summary Screen" - }, - "errorExtension": "所選插件不存在", - "@errorExtension": { - "description": "Error Description to show when user selected unknown extension from list" - }, - "noCategoriesFoundAlt": "尚未有任何分類。\n在設定內建立一個以管理你的書架", - "@noCategoriesFoundAlt": { - "description": "Hint text to add new Category in Settings when category list is empty" - }, - "updatesSummary": "更新概要", - "@updatesSummary": { - "description": "Screen title and Button text of Updates Summary screen" - }, - "noServerFound": "未在局域網內找到伺服器", - "@noServerFound": { - "description": "Text to show that no Server found in locale network" - }, - "install": "安裝", - "@install": { - "description": "Button text to install the extension" - }, - "noResultFound": "未找到結果", - "@noResultFound": { - "description": "Text to show that no results found for the given search query" - }, - "moveToBottom": "移至底部", - "@moveToBottom": { - "description": "Button text to move download/category to the bottom of list" - }, - "mangaGridSize": "網格大小", - "@mangaGridSize": { - "description": "Popup title and Button text to change Manga Grid size" - }, - "categoryUpdate": "更新分類", - "@categoryUpdate": { - "description": "Button text to update the mangas in the Category" - }, - "source": "來源", - "@source": { - "description": "Screen title and Button text of source screen" - }, - "mangaSortLastRead": "最近閱讀", - "@mangaSortLastRead": { - "description": "Radio button text for Manga sort Type - Last Read" - }, - "extensionInstalled": "插件安裝完成!", - "@extensionInstalled": { - "description": "Toast text to show that the Extension Installed successfully" - }, - "authTypeNone": "無", - "@authTypeNone": { - "description": "Radio button text for no Authentication" - }, - "unknownSource": "未知來源", - "@unknownSource": { - "description": "Text to show unknown Source in Manga details screen" - }, - "errorFilePick": "未選取任何文件!", - "@errorFilePick": { - "description": "Error Description to show when user does not selected an file" - }, - "buildTime": "構建時間", - "@buildTime": { - "description": "Text title to show build time of Server in About Screen" - }, - "noCategoriesFound": "尚未有任何分類。\n(提示:輕觸加號按鍵建立一個分類以管理你的書架)", - "@noCategoriesFound": { - "description": "Hint text to add new Category when category list is empty" - }, - "readerScrollAnimation": "滑動動畫", - "@readerScrollAnimation": { - "description": "Switch title to Disable scroll animation in reader screen" - }, - "uninstalling": "正在解除安裝", - "@uninstalling": { - "description": "Button text to show that the extension is uninstalling" - }, - "noCategoryMangaFound": "未在此分類找到漫畫\n(提示:檢查你的搜尋及篩選器!)", - "@noCategoryMangaFound": { - "description": "Hint text to check filter when manga list is empty in Category tab in Library" - }, - "badges": "徽章", - "@badges": { - "description": "Checkbox Group title to enable Badges on manga Cover in Library Screen" - }, - "sourceTypeFilter": "篩選", - "@sourceTypeFilter": { - "description": "Tab text Filter for source screen type" - }, - "today": "今天", - "@today": { - "description": "Today Text to show the release date of manga" - }, - "latest": "最新", - "@latest": { - "description": "Button text to take user to the latest tab of Source manga screen" - }, - "failed": "更新失敗", - "@failed": { - "description": "Failed status Manga Group title in Update Summary Screen" - }, - "errorLaunchURL": "打開失敗\n已複製 \"{url}\" 至剪貼簿", - "@errorLaunchURL": { - "description": "Error Description to show when App failed to launch an URL and copied the URL to clipboard", - "placeholders": { - "url": { - "example": "http://sorayomi.suwayomi.org", - "type": "String" - } - } - }, - "readerOverlay": "閱讀器起始覆蓋層", - "@readerOverlay": { - "description": "Toggle tile text for Initial Reader Overlay" - }, - "reload": "重新整理", - "@reload": { - "description": "Reload button text" - }, - "previousChapter": "上章:{chapterTitle}", - "@previousChapter": { - "description": "Text for Previous Chapter button in Manga Reader Screen" - }, - "nextChapter": "下章:{chapterTitle}", - "@nextChapter": { - "description": "Text for Next Chapter button in Manga Reader Screen" - }, - "selectInBetween": "選取區間", - "@selectInBetween": { - "description": "Toast Text for selecting chapters in between first and last Chapters" - }, - "readerOverlaySubtitle": "打開章節時顯示標題和設定", - "@readerOverlaySubtitle": {}, - "quickSearchShowAllCommandTip": "提示:輸入 '?' 以查看所有指令", - "@quickSearchShowAllCommandTip": { - "description": "Quick Open Tip text for showing all commands by entering '?'" - }, - "selectNext10": "選取下 10 個", - "@selectNext10": { - "description": "Toast Text for selecting next 10 chapters" - }, - "selectUnread": "選取未讀", - "@selectUnread": { - "description": "Popup Text for selecting unread chapters" - }, - "readerVolumeTapInvert": "反轉音量按鈕", - "@readerVolumeTapInvert": { - "description": "Switch button text to invert Volume Tap " - }, - "readerVolumeTap": "音量按鈕", - "@readerVolumeTap": { - "description": "Switch button text for Reader Page Navigation with Volume Tap" - }, - "readerVolumeTapSubtitle": "使用音量按鈕操作", - "@readerVolumeTapSubtitle": { - "description": "Switch button Subtitle text for Reader Page Navigation with Volume Tap" - } -} diff --git a/lib/src/routes/router_config.dart b/lib/src/routes/router_config.dart deleted file mode 100644 index 55739eff..00000000 --- a/lib/src/routes/router_config.dart +++ /dev/null @@ -1,401 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:go_router/go_router.dart'; -import 'package:riverpod_annotation/riverpod_annotation.dart'; - -import '../constants/enum.dart'; -import '../features/about/presentation/about/about_screen.dart'; -import '../features/browse_center/domain/filter/filter_model.dart'; -import '../features/browse_center/presentation/browse/browse_screen.dart'; -import '../features/browse_center/presentation/global_search/global_search_screen.dart'; -import '../features/browse_center/presentation/source_manga_list/source_manga_list_screen.dart'; -import '../features/browse_center/presentation/source_preference/source_preference_screen.dart'; -import '../features/library/presentation/category/edit_category_screen.dart'; -import '../features/library/presentation/library/library_screen.dart'; -import '../features/manga_book/presentation/downloads/downloads_screen.dart'; -import '../features/manga_book/presentation/manga_details/manga_details_screen.dart'; -import '../features/manga_book/presentation/reader/reader_screen.dart'; -import '../features/manga_book/presentation/updates/updates_screen.dart'; -import '../features/manga_book/widgets/update_status_summary_sheet.dart'; -import '../features/quick_open/presentation/search_stack/search_stack_screen.dart'; -import '../features/settings/presentation/appearance/appearance_screen.dart'; -import '../features/settings/presentation/backup/backup_screen.dart'; -import '../features/settings/presentation/browse/browse_settings_screen.dart'; -import '../features/settings/presentation/general/general_screen.dart'; -import '../features/settings/presentation/library/library_settings_screen.dart'; -import '../features/settings/presentation/more/more_screen.dart'; -import '../features/settings/presentation/reader/reader_settings_screen.dart'; -import '../features/settings/presentation/server/server_screen.dart'; -import '../features/settings/presentation/settings/settings_screen.dart'; -import '../utils/extensions/custom_extensions.dart'; -import '../widgets/shell/shell_screen.dart'; - -part 'router_config.g.dart'; - -final GlobalKey _rootNavigatorKey = - GlobalKey(debugLabel: 'root'); - -final GlobalKey _quickOpenNavigatorKey = - GlobalKey(debugLabel: 'Quick Open'); - -final GlobalKey _shellNavigatorKey = - GlobalKey(debugLabel: 'shell'); - -abstract class Routes { - static const home = '/'; - static const library = '/library'; - static const librarySettings = 'library'; - static const updates = '/updates'; - static const browse = '/browse'; - static const downloads = '/downloads'; - static const more = '/more'; - static const about = '/about'; - static const appearanceSettings = 'appearance'; - static const generalSettings = 'general'; - static const backup = 'backup'; - static const settings = '/settings'; - static const browseSettings = 'browse'; - static const readerSettings = 'reader'; - static const reader = '/manga/:mangaId/chapter/:chapterIndex'; - static const serverSettings = 'server'; - static const editCategories = 'edit-categories'; - static const extensions = '/extensions'; - static const manga = '$mangaRoute:mangaId'; - static const mangaRoute = '/manga/'; - static const sourceManga = '/source/:sourceId/:sourceType'; - static const sourcePreference = '/source/:sourceId/preference'; - static const globalSearch = '/global-search'; - static const updateStatus = "/update-status"; -} - -@riverpod -GoRouter routerConfig(ref) { - return GoRouter( - routes: $appRoutes, - debugLogDiagnostics: true, - initialLocation: Routes.library, - navigatorKey: _rootNavigatorKey, - ); -} - -@TypedShellRoute( - routes: [ - TypedShellRoute( - routes: [ - TypedGoRoute(path: Routes.home), - TypedGoRoute(path: Routes.library), - TypedGoRoute(path: Routes.updates), - TypedGoRoute(path: Routes.browse), - TypedGoRoute(path: Routes.downloads), - TypedGoRoute(path: Routes.more), - ], - ), - TypedGoRoute(path: Routes.manga), - TypedGoRoute(path: Routes.updateStatus), - TypedGoRoute(path: Routes.globalSearch), - TypedGoRoute(path: Routes.sourcePreference), - TypedGoRoute(path: Routes.sourceManga), - TypedGoRoute(path: Routes.about), - TypedGoRoute(path: Routes.reader), - TypedGoRoute(path: Routes.settings, routes: [ - TypedGoRoute( - path: Routes.librarySettings, - routes: [ - TypedGoRoute(path: Routes.editCategories) - ], - ), - TypedGoRoute(path: Routes.serverSettings), - TypedGoRoute(path: Routes.readerSettings), - TypedGoRoute(path: Routes.appearanceSettings), - TypedGoRoute(path: Routes.generalSettings), - TypedGoRoute(path: Routes.browseSettings), - TypedGoRoute(path: Routes.backup), - ]) - ], -) -class QuickSearchRoute extends ShellRouteData { - const QuickSearchRoute(); - - static final $navigatorKey = _quickOpenNavigatorKey; - - @override - Widget builder(context, state, navigator) => - SearchStackScreen(child: navigator); -} - -// Shell Routes -class ShellRoute extends ShellRouteData { - const ShellRoute(); - - static final $navigatorKey = _shellNavigatorKey; - - @override - Widget builder(context, state, navigator) => ShellScreen(child: navigator); -} - -class HomeRoute extends GoRouteData { - const HomeRoute(); - @override - FutureOr redirect(context, state) => Routes.library; -} - -class LibraryRoute extends GoRouteData { - const LibraryRoute({this.initialCategoryOrder}); - final int? initialCategoryOrder; - @override - Page buildPage(BuildContext context, GoRouterState state) => - NoTransitionPage( - child: LibraryScreen(initialCategoryOrder: initialCategoryOrder), - ); -} - -class UpdatesRoute extends GoRouteData { - const UpdatesRoute(); - @override - Page buildPage(BuildContext context, GoRouterState state) => - const NoTransitionPage(child: UpdatesScreen()); -} - -class BrowseRoute extends GoRouteData { - const BrowseRoute(); - @override - Page buildPage(BuildContext context, GoRouterState state) => - const NoTransitionPage(child: BrowseScreen()); -} - -class DownloadsRoute extends GoRouteData { - const DownloadsRoute(); - @override - Page buildPage(BuildContext context, GoRouterState state) => - const NoTransitionPage(child: DownloadsScreen()); -} - -class MoreRoute extends GoRouteData { - const MoreRoute(); - @override - Page buildPage(BuildContext context, GoRouterState state) => - const NoTransitionPage(child: MoreScreen()); -} - -// -class MangaRoute extends GoRouteData { - const MangaRoute({required this.mangaId, this.categoryId}); - final int mangaId; - final int? categoryId; - - static final $parentNavigatorKey = _quickOpenNavigatorKey; - - @override - Widget build(BuildContext context, GoRouterState state) => - MangaDetailsScreen(mangaId: mangaId, categoryId: categoryId); -} - -class UpdateStatusRoute extends GoRouteData { - const UpdateStatusRoute(); - - static final $parentNavigatorKey = _quickOpenNavigatorKey; - - @override - Widget build(BuildContext context, GoRouterState state) => - const UpdateStatusSummaryDialog(); -} - -class GlobalSearchRoute extends GoRouteData { - const GlobalSearchRoute({this.query}); - final String? query; - - static final $parentNavigatorKey = _quickOpenNavigatorKey; - - @override - Widget build(BuildContext context, GoRouterState state) => - GlobalSearchScreen(key: ValueKey(query), initialQuery: query); -} - -class SourceMangaRoute extends GoRouteData { - const SourceMangaRoute({ - required this.sourceId, - required this.sourceType, - this.query, - this.$extra, - }); - final String sourceId; - final SourceType sourceType; - final String? query; - final List? $extra; - - static final $parentNavigatorKey = _quickOpenNavigatorKey; - - @override - Widget build(BuildContext context, GoRouterState state) => - SourceMangaListScreen( - key: ValueKey(sourceId), - sourceId: sourceId, - sourceType: sourceType, - initialQuery: query, - initialFilter: $extra, - ); -} - -class SourcePreferenceRoute extends GoRouteData { - final String sourceId; - const SourcePreferenceRoute({required this.sourceId}); - - static final $parentNavigatorKey = _quickOpenNavigatorKey; - - @override - Widget build(BuildContext context, GoRouterState state) { - return SourcePreferenceScreen(sourceId: sourceId); - } -} - -class AboutRoute extends GoRouteData { - const AboutRoute(); - - static final $parentNavigatorKey = _quickOpenNavigatorKey; - - @override - Widget build(BuildContext context, GoRouterState state) => - const AboutScreen(); -} - -class ReaderRoute extends GoRouteData { - const ReaderRoute({ - required this.mangaId, - required this.chapterIndex, - this.transVertical, - this.toPrev, - this.showReaderLayoutAnimation = false, - }); - final int mangaId; - final int chapterIndex; - final bool? transVertical; - final bool? toPrev; - final bool showReaderLayoutAnimation; - - static final $parentNavigatorKey = _quickOpenNavigatorKey; - - @override - Page buildPage(BuildContext context, GoRouterState state) { - return CustomTransitionPage( - key: state.pageKey, - child: ReaderScreen( - mangaId: mangaId, - chapterIndex: chapterIndex, - showReaderLayoutAnimation: showReaderLayoutAnimation, - ), - transitionsBuilder: (context, animation, secondaryAnimation, child) { - Offset offset = Offset.zero; - offset += Offset( - transVertical.ifNull() ? 0 : 1, - transVertical.ifNull() ? 1 : 0, - ); - if (toPrev.ifNull()) { - offset *= -1; - } - - return SlideTransition( - position: Tween( - begin: offset, - end: Offset.zero, - ).animate(animation), - child: child, - ); - }, - ); - } -} - -class SettingsRoute extends GoRouteData { - const SettingsRoute(); - - static final $parentNavigatorKey = _quickOpenNavigatorKey; - - @override - Widget build(BuildContext context, GoRouterState state) => - const SettingsScreen(); -} - -class LibrarySettingsRoute extends GoRouteData { - const LibrarySettingsRoute(); - - static final $parentNavigatorKey = _quickOpenNavigatorKey; - - @override - Widget build(BuildContext context, GoRouterState state) => - const LibrarySettingsScreen(); -} - -class EditCategoriesRoute extends GoRouteData { - const EditCategoriesRoute(); - - static final $parentNavigatorKey = _quickOpenNavigatorKey; - - @override - Widget build(BuildContext context, GoRouterState state) => - const EditCategoryScreen(); -} - -class ServerSettingsRoute extends GoRouteData { - const ServerSettingsRoute(); - - static final $parentNavigatorKey = _quickOpenNavigatorKey; - - @override - Widget build(BuildContext context, GoRouterState state) => - const ServerScreen(); -} - -class ReaderSettingsRoute extends GoRouteData { - const ReaderSettingsRoute(); - - static final $parentNavigatorKey = _quickOpenNavigatorKey; - - @override - Widget build(BuildContext context, GoRouterState state) => - const ReaderSettingsScreen(); -} - -class AppearanceSettingsRoute extends GoRouteData { - const AppearanceSettingsRoute(); - - static final $parentNavigatorKey = _quickOpenNavigatorKey; - - @override - Widget build(BuildContext context, GoRouterState state) => - const AppearanceScreen(); -} - -class GeneralSettingsRoute extends GoRouteData { - const GeneralSettingsRoute(); - - static final $parentNavigatorKey = _quickOpenNavigatorKey; - - @override - Widget build(BuildContext context, GoRouterState state) => - const GeneralScreen(); -} - -class BrowseSettingsRoute extends GoRouteData { - const BrowseSettingsRoute(); - - static final $parentNavigatorKey = _quickOpenNavigatorKey; - - @override - Widget build(BuildContext context, GoRouterState state) => - const BrowseSettingsScreen(); -} - -class BackupRoute extends GoRouteData { - const BackupRoute(); - - static final $parentNavigatorKey = _quickOpenNavigatorKey; - - @override - Widget build(BuildContext context, GoRouterState state) => - const BackupScreen(); -} diff --git a/lib/src/routes/router_config.g.dart b/lib/src/routes/router_config.g.dart deleted file mode 100644 index 419a6622..00000000 --- a/lib/src/routes/router_config.g.dart +++ /dev/null @@ -1,629 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'router_config.dart'; - -// ************************************************************************** -// GoRouterGenerator -// ************************************************************************** - -List get $appRoutes => [ - $quickSearchRoute, - ]; - -RouteBase get $quickSearchRoute => ShellRouteData.$route( - navigatorKey: QuickSearchRoute.$navigatorKey, - factory: $QuickSearchRouteExtension._fromState, - routes: [ - ShellRouteData.$route( - navigatorKey: ShellRoute.$navigatorKey, - factory: $ShellRouteExtension._fromState, - routes: [ - GoRouteData.$route( - path: '/', - factory: $HomeRouteExtension._fromState, - ), - GoRouteData.$route( - path: '/library', - factory: $LibraryRouteExtension._fromState, - ), - GoRouteData.$route( - path: '/updates', - factory: $UpdatesRouteExtension._fromState, - ), - GoRouteData.$route( - path: '/browse', - factory: $BrowseRouteExtension._fromState, - ), - GoRouteData.$route( - path: '/downloads', - factory: $DownloadsRouteExtension._fromState, - ), - GoRouteData.$route( - path: '/more', - factory: $MoreRouteExtension._fromState, - ), - ], - ), - GoRouteData.$route( - path: '/manga/:mangaId', - parentNavigatorKey: MangaRoute.$parentNavigatorKey, - factory: $MangaRouteExtension._fromState, - ), - GoRouteData.$route( - path: '/update-status', - parentNavigatorKey: UpdateStatusRoute.$parentNavigatorKey, - factory: $UpdateStatusRouteExtension._fromState, - ), - GoRouteData.$route( - path: '/global-search', - parentNavigatorKey: GlobalSearchRoute.$parentNavigatorKey, - factory: $GlobalSearchRouteExtension._fromState, - ), - GoRouteData.$route( - path: '/source/:sourceId/preference', - parentNavigatorKey: SourcePreferenceRoute.$parentNavigatorKey, - factory: $SourcePreferenceRouteExtension._fromState, - ), - GoRouteData.$route( - path: '/source/:sourceId/:sourceType', - parentNavigatorKey: SourceMangaRoute.$parentNavigatorKey, - factory: $SourceMangaRouteExtension._fromState, - ), - GoRouteData.$route( - path: '/about', - parentNavigatorKey: AboutRoute.$parentNavigatorKey, - factory: $AboutRouteExtension._fromState, - ), - GoRouteData.$route( - path: '/manga/:mangaId/chapter/:chapterIndex', - parentNavigatorKey: ReaderRoute.$parentNavigatorKey, - factory: $ReaderRouteExtension._fromState, - ), - GoRouteData.$route( - path: '/settings', - parentNavigatorKey: SettingsRoute.$parentNavigatorKey, - factory: $SettingsRouteExtension._fromState, - routes: [ - GoRouteData.$route( - path: 'library', - parentNavigatorKey: LibrarySettingsRoute.$parentNavigatorKey, - factory: $LibrarySettingsRouteExtension._fromState, - routes: [ - GoRouteData.$route( - path: 'edit-categories', - parentNavigatorKey: EditCategoriesRoute.$parentNavigatorKey, - factory: $EditCategoriesRouteExtension._fromState, - ), - ], - ), - GoRouteData.$route( - path: 'server', - parentNavigatorKey: ServerSettingsRoute.$parentNavigatorKey, - factory: $ServerSettingsRouteExtension._fromState, - ), - GoRouteData.$route( - path: 'reader', - parentNavigatorKey: ReaderSettingsRoute.$parentNavigatorKey, - factory: $ReaderSettingsRouteExtension._fromState, - ), - GoRouteData.$route( - path: 'appearance', - parentNavigatorKey: AppearanceSettingsRoute.$parentNavigatorKey, - factory: $AppearanceSettingsRouteExtension._fromState, - ), - GoRouteData.$route( - path: 'general', - parentNavigatorKey: GeneralSettingsRoute.$parentNavigatorKey, - factory: $GeneralSettingsRouteExtension._fromState, - ), - GoRouteData.$route( - path: 'browse', - parentNavigatorKey: BrowseSettingsRoute.$parentNavigatorKey, - factory: $BrowseSettingsRouteExtension._fromState, - ), - GoRouteData.$route( - path: 'backup', - parentNavigatorKey: BackupRoute.$parentNavigatorKey, - factory: $BackupRouteExtension._fromState, - ), - ], - ), - ], - ); - -extension $QuickSearchRouteExtension on QuickSearchRoute { - static QuickSearchRoute _fromState(GoRouterState state) => - const QuickSearchRoute(); -} - -extension $ShellRouteExtension on ShellRoute { - static ShellRoute _fromState(GoRouterState state) => const ShellRoute(); -} - -extension $HomeRouteExtension on HomeRoute { - static HomeRoute _fromState(GoRouterState state) => const HomeRoute(); - - String get location => GoRouteData.$location( - '/', - ); - - void go(BuildContext context) => context.go(location); - - Future push(BuildContext context) => context.push(location); - - void pushReplacement(BuildContext context) => - context.pushReplacement(location); - - void replace(BuildContext context) => context.replace(location); -} - -extension $LibraryRouteExtension on LibraryRoute { - static LibraryRoute _fromState(GoRouterState state) => LibraryRoute( - initialCategoryOrder: _$convertMapValue( - 'initial-category-order', state.uri.queryParameters, int.parse), - ); - - String get location => GoRouteData.$location( - '/library', - queryParams: { - if (initialCategoryOrder != null) - 'initial-category-order': initialCategoryOrder!.toString(), - }, - ); - - void go(BuildContext context) => context.go(location); - - Future push(BuildContext context) => context.push(location); - - void pushReplacement(BuildContext context) => - context.pushReplacement(location); - - void replace(BuildContext context) => context.replace(location); -} - -extension $UpdatesRouteExtension on UpdatesRoute { - static UpdatesRoute _fromState(GoRouterState state) => const UpdatesRoute(); - - String get location => GoRouteData.$location( - '/updates', - ); - - void go(BuildContext context) => context.go(location); - - Future push(BuildContext context) => context.push(location); - - void pushReplacement(BuildContext context) => - context.pushReplacement(location); - - void replace(BuildContext context) => context.replace(location); -} - -extension $BrowseRouteExtension on BrowseRoute { - static BrowseRoute _fromState(GoRouterState state) => const BrowseRoute(); - - String get location => GoRouteData.$location( - '/browse', - ); - - void go(BuildContext context) => context.go(location); - - Future push(BuildContext context) => context.push(location); - - void pushReplacement(BuildContext context) => - context.pushReplacement(location); - - void replace(BuildContext context) => context.replace(location); -} - -extension $DownloadsRouteExtension on DownloadsRoute { - static DownloadsRoute _fromState(GoRouterState state) => - const DownloadsRoute(); - - String get location => GoRouteData.$location( - '/downloads', - ); - - void go(BuildContext context) => context.go(location); - - Future push(BuildContext context) => context.push(location); - - void pushReplacement(BuildContext context) => - context.pushReplacement(location); - - void replace(BuildContext context) => context.replace(location); -} - -extension $MoreRouteExtension on MoreRoute { - static MoreRoute _fromState(GoRouterState state) => const MoreRoute(); - - String get location => GoRouteData.$location( - '/more', - ); - - void go(BuildContext context) => context.go(location); - - Future push(BuildContext context) => context.push(location); - - void pushReplacement(BuildContext context) => - context.pushReplacement(location); - - void replace(BuildContext context) => context.replace(location); -} - -extension $MangaRouteExtension on MangaRoute { - static MangaRoute _fromState(GoRouterState state) => MangaRoute( - mangaId: int.parse(state.pathParameters['mangaId']!), - categoryId: _$convertMapValue( - 'category-id', state.uri.queryParameters, int.parse), - ); - - String get location => GoRouteData.$location( - '/manga/${Uri.encodeComponent(mangaId.toString())}', - queryParams: { - if (categoryId != null) 'category-id': categoryId!.toString(), - }, - ); - - void go(BuildContext context) => context.go(location); - - Future push(BuildContext context) => context.push(location); - - void pushReplacement(BuildContext context) => - context.pushReplacement(location); - - void replace(BuildContext context) => context.replace(location); -} - -extension $UpdateStatusRouteExtension on UpdateStatusRoute { - static UpdateStatusRoute _fromState(GoRouterState state) => - const UpdateStatusRoute(); - - String get location => GoRouteData.$location( - '/update-status', - ); - - void go(BuildContext context) => context.go(location); - - Future push(BuildContext context) => context.push(location); - - void pushReplacement(BuildContext context) => - context.pushReplacement(location); - - void replace(BuildContext context) => context.replace(location); -} - -extension $GlobalSearchRouteExtension on GlobalSearchRoute { - static GlobalSearchRoute _fromState(GoRouterState state) => GlobalSearchRoute( - query: state.uri.queryParameters['query'], - ); - - String get location => GoRouteData.$location( - '/global-search', - queryParams: { - if (query != null) 'query': query, - }, - ); - - void go(BuildContext context) => context.go(location); - - Future push(BuildContext context) => context.push(location); - - void pushReplacement(BuildContext context) => - context.pushReplacement(location); - - void replace(BuildContext context) => context.replace(location); -} - -extension $SourcePreferenceRouteExtension on SourcePreferenceRoute { - static SourcePreferenceRoute _fromState(GoRouterState state) => - SourcePreferenceRoute( - sourceId: state.pathParameters['sourceId']!, - ); - - String get location => GoRouteData.$location( - '/source/${Uri.encodeComponent(sourceId)}/preference', - ); - - void go(BuildContext context) => context.go(location); - - Future push(BuildContext context) => context.push(location); - - void pushReplacement(BuildContext context) => - context.pushReplacement(location); - - void replace(BuildContext context) => context.replace(location); -} - -extension $SourceMangaRouteExtension on SourceMangaRoute { - static SourceMangaRoute _fromState(GoRouterState state) => SourceMangaRoute( - sourceId: state.pathParameters['sourceId']!, - sourceType: - _$SourceTypeEnumMap._$fromName(state.pathParameters['sourceType']!), - query: state.uri.queryParameters['query'], - $extra: state.extra as List?, - ); - - String get location => GoRouteData.$location( - '/source/${Uri.encodeComponent(sourceId)}/${Uri.encodeComponent(_$SourceTypeEnumMap[sourceType]!)}', - queryParams: { - if (query != null) 'query': query, - }, - ); - - void go(BuildContext context) => context.go(location, extra: $extra); - - Future push(BuildContext context) => - context.push(location, extra: $extra); - - void pushReplacement(BuildContext context) => - context.pushReplacement(location, extra: $extra); - - void replace(BuildContext context) => - context.replace(location, extra: $extra); -} - -const _$SourceTypeEnumMap = { - SourceType.latest: 'latest', - SourceType.popular: 'popular', - SourceType.filter: 'filter', -}; - -extension $AboutRouteExtension on AboutRoute { - static AboutRoute _fromState(GoRouterState state) => const AboutRoute(); - - String get location => GoRouteData.$location( - '/about', - ); - - void go(BuildContext context) => context.go(location); - - Future push(BuildContext context) => context.push(location); - - void pushReplacement(BuildContext context) => - context.pushReplacement(location); - - void replace(BuildContext context) => context.replace(location); -} - -extension $ReaderRouteExtension on ReaderRoute { - static ReaderRoute _fromState(GoRouterState state) => ReaderRoute( - mangaId: int.parse(state.pathParameters['mangaId']!), - chapterIndex: int.parse(state.pathParameters['chapterIndex']!), - transVertical: _$convertMapValue( - 'trans-vertical', state.uri.queryParameters, _$boolConverter), - toPrev: _$convertMapValue( - 'to-prev', state.uri.queryParameters, _$boolConverter), - showReaderLayoutAnimation: _$convertMapValue( - 'show-reader-layout-animation', - state.uri.queryParameters, - _$boolConverter) ?? - false, - ); - - String get location => GoRouteData.$location( - '/manga/${Uri.encodeComponent(mangaId.toString())}/chapter/${Uri.encodeComponent(chapterIndex.toString())}', - queryParams: { - if (transVertical != null) - 'trans-vertical': transVertical!.toString(), - if (toPrev != null) 'to-prev': toPrev!.toString(), - if (showReaderLayoutAnimation != false) - 'show-reader-layout-animation': - showReaderLayoutAnimation.toString(), - }, - ); - - void go(BuildContext context) => context.go(location); - - Future push(BuildContext context) => context.push(location); - - void pushReplacement(BuildContext context) => - context.pushReplacement(location); - - void replace(BuildContext context) => context.replace(location); -} - -extension $SettingsRouteExtension on SettingsRoute { - static SettingsRoute _fromState(GoRouterState state) => const SettingsRoute(); - - String get location => GoRouteData.$location( - '/settings', - ); - - void go(BuildContext context) => context.go(location); - - Future push(BuildContext context) => context.push(location); - - void pushReplacement(BuildContext context) => - context.pushReplacement(location); - - void replace(BuildContext context) => context.replace(location); -} - -extension $LibrarySettingsRouteExtension on LibrarySettingsRoute { - static LibrarySettingsRoute _fromState(GoRouterState state) => - const LibrarySettingsRoute(); - - String get location => GoRouteData.$location( - '/settings/library', - ); - - void go(BuildContext context) => context.go(location); - - Future push(BuildContext context) => context.push(location); - - void pushReplacement(BuildContext context) => - context.pushReplacement(location); - - void replace(BuildContext context) => context.replace(location); -} - -extension $EditCategoriesRouteExtension on EditCategoriesRoute { - static EditCategoriesRoute _fromState(GoRouterState state) => - const EditCategoriesRoute(); - - String get location => GoRouteData.$location( - '/settings/library/edit-categories', - ); - - void go(BuildContext context) => context.go(location); - - Future push(BuildContext context) => context.push(location); - - void pushReplacement(BuildContext context) => - context.pushReplacement(location); - - void replace(BuildContext context) => context.replace(location); -} - -extension $ServerSettingsRouteExtension on ServerSettingsRoute { - static ServerSettingsRoute _fromState(GoRouterState state) => - const ServerSettingsRoute(); - - String get location => GoRouteData.$location( - '/settings/server', - ); - - void go(BuildContext context) => context.go(location); - - Future push(BuildContext context) => context.push(location); - - void pushReplacement(BuildContext context) => - context.pushReplacement(location); - - void replace(BuildContext context) => context.replace(location); -} - -extension $ReaderSettingsRouteExtension on ReaderSettingsRoute { - static ReaderSettingsRoute _fromState(GoRouterState state) => - const ReaderSettingsRoute(); - - String get location => GoRouteData.$location( - '/settings/reader', - ); - - void go(BuildContext context) => context.go(location); - - Future push(BuildContext context) => context.push(location); - - void pushReplacement(BuildContext context) => - context.pushReplacement(location); - - void replace(BuildContext context) => context.replace(location); -} - -extension $AppearanceSettingsRouteExtension on AppearanceSettingsRoute { - static AppearanceSettingsRoute _fromState(GoRouterState state) => - const AppearanceSettingsRoute(); - - String get location => GoRouteData.$location( - '/settings/appearance', - ); - - void go(BuildContext context) => context.go(location); - - Future push(BuildContext context) => context.push(location); - - void pushReplacement(BuildContext context) => - context.pushReplacement(location); - - void replace(BuildContext context) => context.replace(location); -} - -extension $GeneralSettingsRouteExtension on GeneralSettingsRoute { - static GeneralSettingsRoute _fromState(GoRouterState state) => - const GeneralSettingsRoute(); - - String get location => GoRouteData.$location( - '/settings/general', - ); - - void go(BuildContext context) => context.go(location); - - Future push(BuildContext context) => context.push(location); - - void pushReplacement(BuildContext context) => - context.pushReplacement(location); - - void replace(BuildContext context) => context.replace(location); -} - -extension $BrowseSettingsRouteExtension on BrowseSettingsRoute { - static BrowseSettingsRoute _fromState(GoRouterState state) => - const BrowseSettingsRoute(); - - String get location => GoRouteData.$location( - '/settings/browse', - ); - - void go(BuildContext context) => context.go(location); - - Future push(BuildContext context) => context.push(location); - - void pushReplacement(BuildContext context) => - context.pushReplacement(location); - - void replace(BuildContext context) => context.replace(location); -} - -extension $BackupRouteExtension on BackupRoute { - static BackupRoute _fromState(GoRouterState state) => const BackupRoute(); - - String get location => GoRouteData.$location( - '/settings/backup', - ); - - void go(BuildContext context) => context.go(location); - - Future push(BuildContext context) => context.push(location); - - void pushReplacement(BuildContext context) => - context.pushReplacement(location); - - void replace(BuildContext context) => context.replace(location); -} - -T? _$convertMapValue( - String key, - Map map, - T Function(String) converter, -) { - final value = map[key]; - return value == null ? null : converter(value); -} - -extension on Map { - T _$fromName(String value) => - entries.singleWhere((element) => element.value == value).key; -} - -bool _$boolConverter(String value) { - switch (value) { - case 'true': - return true; - case 'false': - return false; - default: - throw UnsupportedError('Cannot convert "$value" into a bool.'); - } -} - -// ************************************************************************** -// RiverpodGenerator -// ************************************************************************** - -String _$routerConfigHash() => r'c9473ad31b2ecd6bf97eb8e0a2a4edf6683e5f6f'; - -/// See also [routerConfig]. -@ProviderFor(routerConfig) -final routerConfigProvider = AutoDisposeProvider.internal( - routerConfig, - name: r'routerConfigProvider', - debugGetCreateSourceHash: - const bool.fromEnvironment('dart.vm.product') ? null : _$routerConfigHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef RouterConfigRef = AutoDisposeProviderRef; -// ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member diff --git a/lib/src/sorayomi.dart b/lib/src/sorayomi.dart deleted file mode 100644 index 1cf5c391..00000000 --- a/lib/src/sorayomi.dart +++ /dev/null @@ -1,37 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:flutter_gen/gen_l10n/app_localizations.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import 'constants/app_themes/color_schemas/default_theme.dart'; -import 'features/settings/widgets/theme_mode_tile/theme_mode_tile.dart'; -import 'global_providers/global_providers.dart'; -import 'routes/router_config.dart'; -import 'utils/extensions/custom_extensions.dart'; - -class Sorayomi extends ConsumerWidget { - const Sorayomi({super.key}); - - @override - Widget build(BuildContext context, WidgetRef ref) { - final routes = ref.watch(routerConfigProvider); - final themeMode = ref.watch(themeModeKeyProvider); - final appLocale = ref.watch(l10nProvider); - return MaterialApp.router( - onGenerateTitle: (context) => context.l10n!.appTitle, - debugShowCheckedModeBanner: false, - theme: defaultTheme.light, - darkTheme: defaultTheme.dark, - themeMode: themeMode ?? ThemeMode.system, - localizationsDelegates: AppLocalizations.localizationsDelegates, - supportedLocales: AppLocalizations.supportedLocales, - locale: appLocale, - routerConfig: routes, - ); - } -} diff --git a/lib/src/utils/extensions/cache_manager_extensions.dart b/lib/src/utils/extensions/cache_manager_extensions.dart deleted file mode 100644 index df46839c..00000000 --- a/lib/src/utils/extensions/cache_manager_extensions.dart +++ /dev/null @@ -1,39 +0,0 @@ -// Copyright (c) 2023 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'dart:io'; - -import 'package:flutter_cache_manager/flutter_cache_manager.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../../constants/endpoints.dart'; -import '../../constants/enum.dart'; -import '../../features/settings/presentation/server/widget/credential_popup/credentials_popup.dart'; -import '../../features/settings/widgets/server_port_tile/server_port_tile.dart'; -import '../../features/settings/widgets/server_url_tile/server_url_tile.dart'; -import '../../global_providers/global_providers.dart'; -import 'custom_extensions.dart'; - -extension CacheManagerExtension on CacheManager { - Future getServerFile(WidgetRef ref, String url, - {bool appendApiToUrl = true}) async { - final authType = ref.read(authTypeKeyProvider); - final basicToken = ref.read(credentialsProvider); - final baseApi = "${Endpoints.baseApi( - baseUrl: ref.read(serverUrlProvider), - port: ref.read(serverPortProvider), - addPort: ref.read(serverPortToggleProvider).ifNull(), - appendApiToUrl: appendApiToUrl, - )}" - "$url"; - return await getSingleFile( - baseApi, - headers: authType == AuthType.basic && basicToken != null - ? {"Authorization": basicToken} - : null, - ); - } -} diff --git a/lib/src/utils/extensions/custom_extensions.dart b/lib/src/utils/extensions/custom_extensions.dart deleted file mode 100644 index 5cb7a22a..00000000 --- a/lib/src/utils/extensions/custom_extensions.dart +++ /dev/null @@ -1,28 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'dart:math'; - -import 'package:flutter/material.dart'; -import 'package:flutter_gen/gen_l10n/app_localizations.dart'; -import 'package:go_router/go_router.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; -import 'package:intl/intl.dart'; - -import '../../widgets/custom_circular_progress_indicator.dart'; -import '../../widgets/emoticons.dart'; -import '../misc/app_utils.dart'; -import '../misc/toast/toast.dart'; - -part 'custom_extensions/async_value_extensions.dart'; -part 'custom_extensions/bool_extensions.dart'; -part 'custom_extensions/context_extensions.dart'; -part 'custom_extensions/date_time_extensions.dart'; -part 'custom_extensions/double_extensions.dart'; -part 'custom_extensions/int_extensions.dart'; -part 'custom_extensions/iterable_extensions.dart'; -part 'custom_extensions/map_extensions.dart'; -part 'custom_extensions/string_extensions.dart'; diff --git a/lib/src/utils/extensions/custom_extensions/async_value_extensions.dart b/lib/src/utils/extensions/custom_extensions/async_value_extensions.dart deleted file mode 100644 index 83b34fae..00000000 --- a/lib/src/utils/extensions/custom_extensions/async_value_extensions.dart +++ /dev/null @@ -1,72 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -part of '../custom_extensions.dart'; - -extension AsyncValueExtensions on AsyncValue { - bool get isNotLoading => !isLoading; - - void _showToastOnError(Toast toast) { - if (!isRefreshing) { - whenOrNull( - error: (error, stackTrace) { - toast.close(); - toast.showError(error.toString()); - }, - ); - } - } - - void showToastOnError(Toast toast, {bool withMicrotask = false}) { - if (withMicrotask) { - Future.microtask(() => (this._showToastOnError(toast))); - } else { - this._showToastOnError(toast); - } - } - - T? valueOrToast(Toast toast, {bool withMicrotask = false}) => - (this..showToastOnError(toast, withMicrotask: withMicrotask)).valueOrNull; - - Widget showUiWhenData( - BuildContext context, - Widget Function(T data) data, { - VoidCallback? refresh, - Widget Function(Widget)? wrapper, - bool showGenericError = false, - bool addScaffoldWrapper = false, - }) { - if (addScaffoldWrapper) { - wrapper = (body) => Scaffold(appBar: AppBar(), body: body); - } - return when( - data: data, - skipError: true, - error: (error, trace) => AppUtils.wrapIf( - wrapper, - Emoticons( - text: showGenericError - ? context.l10n!.errorSomethingWentWrong - : error.toString(), - button: refresh != null - ? TextButton( - onPressed: refresh, - child: Text(context.l10n!.refresh), - ) - : null, - )), - loading: () => - AppUtils.wrapIf(wrapper, const CenterSorayomiShimmerIndicator()), - ); - } - - AsyncValue copyWithData(U Function(T) data) => when( - skipError: true, - data: (prev) => AsyncData(data(prev)), - error: (error, stackTrace) => AsyncError(error, stackTrace), - loading: () => AsyncLoading(), - ); -} diff --git a/lib/src/utils/extensions/custom_extensions/bool_extensions.dart b/lib/src/utils/extensions/custom_extensions/bool_extensions.dart deleted file mode 100644 index fb5b44ac..00000000 --- a/lib/src/utils/extensions/custom_extensions/bool_extensions.dart +++ /dev/null @@ -1,15 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -part of '../custom_extensions.dart'; - -extension BoolExtensions on bool? { - bool get isNull => this == null; - bool get isNotNull => !isNull; - bool ifNull([bool alternative = false]) => this ?? alternative; - int get toInt => this != null ? (this! ? 1 : 2) : 0; - int get toIntWithNegative => this != null ? (this! ? 1 : -1) : 0; -} diff --git a/lib/src/utils/extensions/custom_extensions/context_extensions.dart b/lib/src/utils/extensions/custom_extensions/context_extensions.dart deleted file mode 100644 index 8955f4f3..00000000 --- a/lib/src/utils/extensions/custom_extensions/context_extensions.dart +++ /dev/null @@ -1,230 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -part of '../custom_extensions.dart'; - -/// Helper class for device related operations. -/// -extension ContextExtensions on BuildContext { - String get location { - GoRouter router = GoRouter.of(this); - final RouteMatch lastMatch = - router.routerDelegate.currentConfiguration.last; - final RouteMatchList matchList = lastMatch is ImperativeRouteMatch - ? lastMatch.matches - : router.routerDelegate.currentConfiguration; - return matchList.uri.toString(); - } - - /// - /// hides the keyboard if its already open - /// - get hideKeyboard => FocusScope.of(this).unfocus(); - - /// - /// accepts a double [scale] and returns scaled sized based on the screen - /// orientation - /// - - double get horizontal => - (MediaQuery.of(this).orientation == Orientation.portrait - ? MediaQuery.of(this).size.width - : MediaQuery.of(this).size.height); - double horizontalScale({double scale = 1}) => scale * horizontal; - - /// - /// accepts a double [scale] and returns scaled sized based on the screen - /// orientation - /// - double verticalScale({double scale = 1}) => scale * vertical; - double get vertical => - (MediaQuery.of(this).orientation == Orientation.landscape - ? MediaQuery.of(this).size.width - : MediaQuery.of(this).size.height); - - /// The same of [MediaQuery.of(context).size] - Size get mediaQuerySize => MediaQuery.of(this).size; - - /// The same of [MediaQuery.of(context).size.height] - /// Note: updates when you resize your screen (like on a browser or - /// desktop window) - double get height => mediaQuerySize.height; - - /// The same of [MediaQuery.of(context).size.width] - /// Note: updates when you resize your screen (like on a browser or - /// desktop window) - double get width => mediaQuerySize.width; - - /// - /// accepts a double [scale] and returns scaled sized based on the screen - /// width - /// - - double widthScale({double scale = 1}) => scale * width; - - /// - /// accepts a double [scale] and returns scaled sized based on the screen - /// height - /// - double heightScale({double scale = 1}) => scale * height; - - /// Gives you the power to get a portion of the height. - /// Useful for responsive applications. - /// - /// [dividedBy] is for when you want to have a portion of the value you - /// would get like for example: if you want a value that represents a third - /// of the screen you can set it to 3, and you will get a third of the height - /// - /// [reducedBy] is a percentage value of how much of the height you want - /// if you for example want 46% of the height, then you reduce it by 56%. - double heightTransformer({double dividedBy = 1, double reducedBy = 0.0}) => - (mediaQuerySize.height - ((mediaQuerySize.height / 100) * reducedBy)) / - dividedBy; - - /// Gives you the power to get a portion of the width. - /// Useful for responsive applications. - /// - /// [dividedBy] is for when you want to have a portion of the value you - /// would get like for example: if you want a value that represents a third - /// of the screen you can set it to 3, and you will get a third of the width - /// - /// [reducedBy] is a percentage value of how much of the width you want - /// if you for example want 46% of the width, then you reduce it by 56%. - double widthTransformer({double dividedBy = 1, double reducedBy = 0.0}) => - (mediaQuerySize.width - ((mediaQuerySize.width / 100) * reducedBy)) / - dividedBy; - - /// Divide the height proportionally by the given value - double ratio({ - double dividedBy = 1, - double reducedByW = 0.0, - double reducedByH = 0.0, - }) => - heightTransformer(dividedBy: dividedBy, reducedBy: reducedByH) / - widthTransformer(dividedBy: dividedBy, reducedBy: reducedByW); - - /// similar to [MediaQuery.of(context).padding] - ThemeData get theme => Theme.of(this); - - /// Check if dark mode theme is enable - bool get isDarkMode => (theme.brightness == Brightness.dark); - - /// give access to context.iconTheme.color - Color? get iconColor => theme.iconTheme.color; - - /// similar to [MediaQuery.of(context).padding] - TextTheme get textTheme => Theme.of(this).textTheme; - - /// similar to [MediaQuery.of(context).padding] - EdgeInsets get mediaQueryPadding => MediaQuery.of(this).padding; - - /// similar to [MediaQuery.of(context).padding] - MediaQueryData get mediaQuery => MediaQuery.of(this); - - /// similar to [MediaQuery.of(context).viewPadding] - EdgeInsets get mediaQueryViewPadding => MediaQuery.of(this).viewPadding; - - /// similar to [MediaQuery.of(context).viewInsets] - EdgeInsets get mediaQueryViewInsets => MediaQuery.of(this).viewInsets; - - /// similar to [MediaQuery.of(context).orientation] - Orientation get orientation => MediaQuery.of(this).orientation; - - /// check if device is on landscape mode - bool get isLandscape => orientation == Orientation.landscape; - - /// check if device is on portrait mode - bool get isPortrait => orientation == Orientation.portrait; - - /// similar to [MediaQuery.of(this).devicePixelRatio] - double get devicePixelRatio => MediaQuery.of(this).devicePixelRatio; - - /// similar to [MediaQuery.of(this).textScaleFactor] - double get textScaleFactor => MediaQuery.of(this).textScaleFactor; - - /// get the shortestSide from screen - double get mediaQueryShortestSide => mediaQuerySize.shortestSide; - - /// True if width be larger than 800 - bool get showNavbar => (width > 800); - - /// True if the width is less than 600p - bool get isPhoneOrLess => width <= 600; - - /// True if the width is greater than 600p - bool get isPhoneOrWider => width >= 600; - - /// True if the shortestSide is greater than 600p - bool get isPhone => isPhoneOrWider; - - /// True if the width is less than 600p - bool get isSmallTabletOrLess => width <= 600; - - /// True if the width is greater than 600p - bool get isSmallTabletOrWider => width >= 600; - - /// True if the shortestSide is greater than 600p - bool get isSmallTablet => isSmallTabletOrWider; - - /// True if the width is less than 720p - bool get isLargeTabletOrLess => width <= 720; - - /// True if the width is greater than 720p - bool get isLargeTabletOrWider => width >= 720; - - /// True if the shortestSide is greater than 720p - bool get isLargeTablet => isLargeTabletOrWider; - - /// True if the current device is Tablet - bool get isTablet => isSmallTabletOrWider; - - /// True if the width is less than 1200p - bool get isDesktopOrLess => width <= 1200; - - /// True if the width is greater than 1200p - bool get isDesktopOrWider => width >= 1200; - - /// True if the width is greater than 1200p - bool get isDesktop => isDesktopOrWider; - - AppLocalizations? get l10n => AppLocalizations.of(this); - - Locale get currentLocale => Localizations.localeOf(this); - - ColorScheme get colorScheme => Theme.of(this).colorScheme; - - /// Returns a specific value according to the screen size - /// if the device width is greater than or equal to 1200 return - /// [desktop] value. if the device width is greater than or equal to 600 - /// and less than 1200 return [tablet] value. - /// if the device width is less than 300 return [watch] value. - /// in other cases return [mobile] value. - T responsiveValue({ - T? watch, - T? mobile, - T? tablet, - T? desktop, - }) { - assert( - watch != null || mobile != null || tablet != null || desktop != null); - - var deviceWidth = mediaQuerySize.width; - //big screen width can display less sizes - final strictValues = [ - if (deviceWidth >= 1200) desktop, //desktop is allowed - if (deviceWidth >= 600) tablet, //tablet is allowed - if (deviceWidth >= 300) mobile, //mobile is allowed - watch, //watch is allowed - ].whereType(); - final looseValues = [ - watch, - mobile, - tablet, - desktop, - ].whereType(); - return strictValues.firstOrNull ?? looseValues.first; - } -} diff --git a/lib/src/utils/extensions/custom_extensions/date_time_extensions.dart b/lib/src/utils/extensions/custom_extensions/date_time_extensions.dart deleted file mode 100644 index 30b50692..00000000 --- a/lib/src/utils/extensions/custom_extensions/date_time_extensions.dart +++ /dev/null @@ -1,117 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -part of '../custom_extensions.dart'; - -extension DateTimeExtensions on DateTime { - String get toDateString => DateFormat.yMMMd().format(this); - String get toMonthYearString => DateFormat.yMMM().format(this); - String get toDayMonthString => DateFormat.MMMd().format(this); - String get toDayString => DateFormat.E().format(this); - String get toMonthString => DateFormat.MMM().format(this); - DateTime copyWith({ - int? year, - int? month, - int? day, - int? hour, - int? minute, - int? second, - int? millisecond, - int? microsecond, - }) => - DateTime( - year ?? this.year, - month ?? this.month, - day ?? this.day, - hour ?? this.hour, - minute ?? this.minute, - second ?? this.second, - millisecond ?? this.millisecond, - microsecond ?? this.microsecond, - ); - -// ///////////////////////////////////////////////////////////////////////////// - - DateTime get startOfDay => DateTime(year, month, day); - - DateTime get endOfDay => copyWith( - hour: 23, - minute: 59, - second: 59, - millisecond: 999, - ); - - DateTimeRange get sameDayRange => DateTimeRange( - start: startOfDay, - end: endOfDay, - ); - - bool isSameDay(DateTime date) => - day == date.day && month == date.month && year == date.year; - -// ///////////////////////////////////////////////////////////////////////////// - - DateTime get firstDayOfWeek => subtract( - Duration(days: (weekday - 1)), - ).startOfDay; - - DateTime get lastDayOfWeek => add( - Duration(days: 7 - weekday), - ).endOfDay; - - DateTimeRange get sameWeekRange => DateTimeRange( - start: firstDayOfWeek, - end: lastDayOfWeek, - ); - -// ///////////////////////////////////////////////////////////////////////////// - - DateTime get firstDayOfMonth => DateTime(year, month); - - DateTime get lastDayOfMonth => DateTime(year, month + 1, 0).endOfDay; - - DateTimeRange get sameMonthRange => DateTimeRange( - start: firstDayOfMonth, - end: lastDayOfMonth, - ); - -// ///////////////////////////////////////////////////////////////////////////// - - DateTime get firstDayOfFinYear => DateTime( - month >= 4 ? year : year - 1, - 4, - ); - - DateTime get lastDayOfFinYear => DateTime( - month >= 4 ? year + 1 : year, - 3, - 31, - ).endOfDay; - - DateTimeRange get sameFinYearRange => DateTimeRange( - start: firstDayOfFinYear, - end: lastDayOfFinYear, - ); - -// ///////////////////////////////////////////////////////////////////////////// - - static DateTime max(DateTime a, DateTime b) => a.compareTo(b) > 0 ? a : b; - - String convertToDaysAgo(BuildContext context) { - Duration diff = DateTime.now().difference(this); - - if (diff.inDays < 1) { - return context.l10n!.today; - } else if (diff.inDays < 2) { - return context.l10n!.yesterday; - } else if (diff.inDays < 10) { - return context.l10n!.daysAgo(diff.inDays); - } else { - return DateFormat.yMMMd(context.currentLocale.toLanguageTag()) - .format(this); - } - } -} diff --git a/lib/src/utils/extensions/custom_extensions/double_extensions.dart b/lib/src/utils/extensions/custom_extensions/double_extensions.dart deleted file mode 100644 index ef7d2ac5..00000000 --- a/lib/src/utils/extensions/custom_extensions/double_extensions.dart +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -part of '../custom_extensions.dart'; - -extension DoubleExtensions on double? { - bool liesBetween({double lower = 0, double upper = 1}) => - this != null ? this! >= lower && this! <= upper : false; - bool get isZero => this != null ? this! == 0 : true; - bool get isNotZero => !isZero; -} diff --git a/lib/src/utils/extensions/custom_extensions/int_extensions.dart b/lib/src/utils/extensions/custom_extensions/int_extensions.dart deleted file mode 100644 index 8c36defc..00000000 --- a/lib/src/utils/extensions/custom_extensions/int_extensions.dart +++ /dev/null @@ -1,55 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. -part of '../custom_extensions.dart'; - -extension IntExtensions on int? { - bool get isNull => this == null; - bool get isZero => this != null ? this! == 0 : false; - bool liesBetween({int lower = 0, int upper = 1}) => - this != null ? this! >= lower && this! <= upper : false; - bool isGreaterThan(int i) => isNull ? false : this! > i; - bool isLessThan(int i) => isNull ? false : this! < i; - int getValueOnNullOrNegative([int i = 0]) => - isNull || this!.isNegative ? i : this!; - bool isNotEquals(List lst) => - isNull || lst.isBlank ? true : lst.every((e) => e != this); - - bool? get toBool => (this == null || this == 0) ? null : this == 1; - - String get toDateString { - if (isNull) return ""; - return DateFormat.yMMMd().format( - DateTime.fromMillisecondsSinceEpoch(this!), - ); - } - - String? padLeft([int width = 2, String padding = '0']) { - if (isNull) return null; - return toString().padLeft(width, padding); - } - - String get toDateStringFromSeconds { - if (isNull) return ""; - return DateTime.fromMillisecondsSinceEpoch(this! * 1000).toDateString; - } - - String toDaysAgoFromSeconds(BuildContext context) { - if (isNull) return ""; - return DateTime.fromMillisecondsSinceEpoch(this! * 1000) - .convertToDaysAgo(context); - } - - String toDaysAgo(context) { - if (isNull) return ""; - return DateTime.fromMillisecondsSinceEpoch(this!).convertToDaysAgo(context); - } - - bool isSameDayAs(int? anotherDate) { - if (isNull || anotherDate.isNull) return false; - return DateTime.fromMillisecondsSinceEpoch(this! * 1000) - .isSameDay(DateTime.fromMillisecondsSinceEpoch(anotherDate! * 1000)); - } -} diff --git a/lib/src/utils/extensions/custom_extensions/iterable_extensions.dart b/lib/src/utils/extensions/custom_extensions/iterable_extensions.dart deleted file mode 100644 index ff527ba6..00000000 --- a/lib/src/utils/extensions/custom_extensions/iterable_extensions.dart +++ /dev/null @@ -1,49 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -part of '../custom_extensions.dart'; - -extension IterableExtensions on Iterable? { - bool get isNull => this == null; - - bool get isBlank => isNull || this!.isEmpty; - - bool get isNotBlank => !isBlank; - - bool get isSingletonList => isNotBlank && this!.length == 1; - - T? get firstOrNull { - if (isNull) return null; - var iterator = this!.iterator; - if (iterator.moveNext()) return iterator.current; - return null; - } - - String get toPath => isNotBlank ? this!.join("/") : "/"; - - T? lastWhereOrNull(bool Function(T element) test, {T Function()? orElse}) { - if (isNull) return null; - try { - return this!.lastWhere(test, orElse: orElse); - } catch (e) { - return null; - } - } - - T? firstWhereOrNull(bool Function(T element) test, {T Function()? orElse}) { - if (isNull) return null; - try { - return this!.firstWhere(test, orElse: orElse); - } catch (e) { - return null; - } - } - - T? get getRandom => - isNull ? null : this!.elementAt(Random().nextInt(this!.length)); - - Iterable? get filterOutNulls => this?.where((element) => element != null); -} diff --git a/lib/src/utils/extensions/custom_extensions/map_extensions.dart b/lib/src/utils/extensions/custom_extensions/map_extensions.dart deleted file mode 100644 index 4884438e..00000000 --- a/lib/src/utils/extensions/custom_extensions/map_extensions.dart +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. -part of '../custom_extensions.dart'; - -extension MapExtensions on Map { - Map get filterOutNulls { - final Map filtered = {}; - forEach((K key, V value) { - if (value != null) filtered[key] = value; - }); - return filtered; - } - - Map toggleKey(K key, V value) { - if (containsKey(key)) { - return {...this}..remove(key); - } else { - return {...this, key: value}; - } - } -} - -extension NullableMapExtensions on Map? { - bool get isNull => this == null; - - bool get isBlank => isNull || this!.isEmpty; - - bool get isNotBlank => !isBlank; -} diff --git a/lib/src/utils/extensions/custom_extensions/string_extensions.dart b/lib/src/utils/extensions/custom_extensions/string_extensions.dart deleted file mode 100644 index c68a7c40..00000000 --- a/lib/src/utils/extensions/custom_extensions/string_extensions.dart +++ /dev/null @@ -1,103 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -part of '../custom_extensions.dart'; - -extension StringExtensions on String? { - bool get isNull => this == null; - - bool get isBlank => isNull || this!.isEmpty; - - bool get isNotBlank => !isBlank; - - bool get isInt => isNull ? false : int.tryParse(this!) != null; - - bool? get tryParseBool => isNull ? null : (this!).toLowerCase() == 'true'; - - double? get tryParseInt => isNull ? null : double.tryParse(this!); - - bool hasMatch(String pattern) => - (isNull) ? false : RegExp(pattern).hasMatch(this!); - - String? get capitalize { - if (isNull) return null; - if (this!.isEmpty) return this; - return this!.split(' ').map((e) => e.capitalizeFirst).join(' '); - } - - String? get capitalizeFirst { - if (isNull) return null; - if (this!.isEmpty) return this; - return this![0].toUpperCase() + this!.substring(1).toLowerCase(); - } - - /// Converts "dattatreya reddy" to "DR" - String? nameToLetters({int maxLength = 2}) { - if (isNull) return null; - return this! - .split(" ") - .take(maxLength) - .map((e) => e.isEmpty ? "" : e[0].toUpperCase()) - .join(); - } - - String get incrementZeroPaddedInt { - if (isNull) return "1"; - final valLen = this!.length; - final newVal = (int.tryParse(this!).getValueOnNullOrNegative()) + 1; - final noOfZeros = max(valLen - (newVal.toString()).length, 0); - return "0" * noOfZeros + newVal.toString(); - } - - /// Checks if this is phone number. - bool get isPhoneNumber { - if (isNull) return false; - if (this!.length != 10) return false; - return hasMatch(r'^[0-9]{10}$'); - } - - /// Checks if this is email. - bool get isEmail { - if (isNull) return false; - return this!.hasMatch( - r'^(([^<>[\]\\.,;:\s@\"]+(\.[^<>[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$'); - } - - bool query([String? query]) { - if (isNull) return false; - if (query.isBlank) return true; - return this!.toLowerCase().contains(query!.toLowerCase()); - } - - String? get toCamelCase { - if (isBlank) return null; - List separatedWords = - this!.split(RegExp(r'[!@#<>?":`~;[\]\\|=+)(*&^%-\s_]+')); - return separatedWords.fold( - "", - (value, word) => - value + word[0].toUpperCase() + word.substring(1).toLowerCase(), - ); - } - - String? get toStartCase { - if (isBlank) return null; - final separatedWords = - this!.split(RegExp(r'[!@#<>?":`~;[\]\\|=+)(*&^%-\s_]+')); - separatedWords[0] = separatedWords[0].capitalizeFirst!; - return separatedWords.reduce((value, e) => "$value ${e.capitalizeFirst!}"); - } - - String? get last10Digits { - if (isBlank) return null; - return this!.length > 10 ? this!.substring(this!.length - 10) : this; - } - - String? get toWebSocket { - if (isBlank) return null; - return this!.replaceFirst(RegExp('http', caseSensitive: false), 'ws'); - } -} diff --git a/lib/src/utils/freezed_converters/language_json_converter.dart b/lib/src/utils/freezed_converters/language_json_converter.dart deleted file mode 100644 index c3753d25..00000000 --- a/lib/src/utils/freezed_converters/language_json_converter.dart +++ /dev/null @@ -1,16 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import '../../constants/language_list.dart'; -import '../../features/browse_center/domain/language/language_model.dart'; - -class LanguageJsonConverter { - static Language? fromJson(String? langCode) => langCode != null - ? languageMap[langCode.toLowerCase()] ?? - Language(code: langCode.toLowerCase()) - : null; - static String? toJson(Language? lang) => lang?.code; -} diff --git a/lib/src/utils/hooks/paging_controller_hook.dart b/lib/src/utils/hooks/paging_controller_hook.dart deleted file mode 100644 index 34ad63bd..00000000 --- a/lib/src/utils/hooks/paging_controller_hook.dart +++ /dev/null @@ -1,58 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; - -import 'package:flutter_hooks/flutter_hooks.dart'; -import 'package:infinite_scroll_pagination/infinite_scroll_pagination.dart'; - -/// Creates [PagingController] that will be disposed automatically. -/// -/// See also: -/// - [PagingController] -PagingController - usePagingController( - {required PageKeyType firstPageKey, int? invisibleItemsThreshold}) { - return use>( - _PagingControllerHook( - firstPageKey: firstPageKey, - invisibleItemsThreshold: invisibleItemsThreshold, - ), - ); -} - -class _PagingControllerHook - extends Hook> { - const _PagingControllerHook( - {super.keys, required this.firstPageKey, this.invisibleItemsThreshold}); - - final PageKeyType firstPageKey; - final int? invisibleItemsThreshold; - - @override - HookState, - Hook>> - createState() => _PagingControllerHookState(); -} - -class _PagingControllerHookState extends HookState< - PagingController, - _PagingControllerHook> { - late final controller = PagingController( - firstPageKey: hook.firstPageKey, - invisibleItemsThreshold: hook.invisibleItemsThreshold, - ); - - @override - PagingController build(BuildContext context) => - controller; - - @override - void dispose() => controller.dispose(); - - @override - String get debugLabel => 'usePagingController'; -} diff --git a/lib/src/utils/launch_url_in_web.dart b/lib/src/utils/launch_url_in_web.dart deleted file mode 100644 index 8f2858f5..00000000 --- a/lib/src/utils/launch_url_in_web.dart +++ /dev/null @@ -1,24 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:flutter/services.dart'; -import 'package:url_launcher/url_launcher.dart'; - -import 'extensions/custom_extensions.dart'; -import 'misc/toast/toast.dart'; - -Future launchUrlInWeb(BuildContext context, String url, - [Toast? toast]) async { - if (!await launchUrl( - Uri.parse(url), - mode: LaunchMode.externalApplication, - webOnlyWindowName: "_blank", - )) { - await Clipboard.setData(ClipboardData(text: url)); - if (context.mounted) toast?.showError(context.l10n!.errorLaunchURL(url)); - } -} diff --git a/lib/src/utils/logger/provider_state_logger.dart b/lib/src/utils/logger/provider_state_logger.dart deleted file mode 100644 index 7dba6535..00000000 --- a/lib/src/utils/logger/provider_state_logger.dart +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/rendering.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -/// Useful to log state change in our application -/// Read the logs and you'll better understand what's going on under the hood -class ProviderStateLogger extends ProviderObserver { - const ProviderStateLogger(); - @override - void didUpdateProvider( - ProviderBase provider, - Object? previousValue, - Object? newValue, - ProviderContainer container, - ) { - debugPrint(''' -{ - provider: ${provider.name ?? provider.runtimeType}, - oldValue: $previousValue, - newValue: $newValue -} -'''); - super.didUpdateProvider(provider, previousValue, newValue, container); - } -} diff --git a/lib/src/utils/misc/app_utils.dart b/lib/src/utils/misc/app_utils.dart deleted file mode 100644 index 76649063..00000000 --- a/lib/src/utils/misc/app_utils.dart +++ /dev/null @@ -1,10 +0,0 @@ -import 'package:flutter/material.dart'; - -abstract class AppUtils { - static Widget wrapIf(Widget Function(Widget)? wrapper, Widget child) { - if (wrapper != null) { - return wrapper(child); - } - return child; - } -} diff --git a/lib/src/utils/misc/material_color_generator.dart b/lib/src/utils/misc/material_color_generator.dart deleted file mode 100644 index 708639ab..00000000 --- a/lib/src/utils/misc/material_color_generator.dart +++ /dev/null @@ -1,44 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'dart:math'; - -import 'package:flutter/material.dart'; - -abstract class MaterialColorGenerator { - MaterialColorGenerator._(); - static MaterialColor generate({required Color color}) => - MaterialColor(color.value, { - 50: _tintColor(color, 0.9), - 100: _tintColor(color, 0.8), - 200: _tintColor(color, 0.6), - 300: _tintColor(color, 0.4), - 400: _tintColor(color, 0.2), - 500: color, - 600: _shadeColor(color, 0.1), - 700: _shadeColor(color, 0.2), - 800: _shadeColor(color, 0.3), - 900: _shadeColor(color, 0.4), - }); - - static int _tintValue(int value, double factor) => - max(0, min((value + ((255 - value) * factor)).round(), 255)); - - static Color _tintColor(Color color, double factor) => Color.fromRGBO( - _tintValue(color.red, factor), - _tintValue(color.green, factor), - _tintValue(color.blue, factor), - 1); - - static int _shadeValue(int value, double factor) => - max(0, min(value - (value * factor).round(), 255)); - - static Color _shadeColor(Color color, double factor) => Color.fromRGBO( - _shadeValue(color.red, factor), - _shadeValue(color.green, factor), - _shadeValue(color.blue, factor), - 1); -} diff --git a/lib/src/utils/misc/toast/toast.dart b/lib/src/utils/misc/toast/toast.dart deleted file mode 100644 index d92e89ff..00000000 --- a/lib/src/utils/misc/toast/toast.dart +++ /dev/null @@ -1,92 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; - -import 'package:fluttertoast/fluttertoast.dart'; -import 'package:riverpod_annotation/riverpod_annotation.dart'; - -import '../../../constants/app_sizes.dart'; - -part 'toast.g.dart'; - -class Toast { - Toast(this._context) { - _fToast = FToast().init(_context); - } - final BuildContext _context; - late FToast _fToast; - - void instantShow(String msg) { - close(); - show(msg); - } - - void show(String msg, {bool withMicrotask = false}) { - if (withMicrotask) { - Future.microtask(() => _fToast.showToast( - child: ToastWidget(text: msg), - gravity: ToastGravity.BOTTOM, - )); - } else { - _fToast.showToast( - child: ToastWidget(text: msg), - gravity: ToastGravity.BOTTOM, - ); - } - } - - void showError(String error) => _fToast.showToast( - child: ToastWidget( - text: error, - backgroundColor: Colors.red.shade400, - ), - gravity: ToastGravity.TOP, - ); - - void close() => _fToast.removeCustomToast(); -} - -class ToastWidget extends StatelessWidget { - const ToastWidget({ - super.key, - required this.text, - this.icon, - this.backgroundColor, - this.textColor, - }); - final String text; - final Widget? icon; - final Color? backgroundColor; - final Color? textColor; - @override - Widget build(BuildContext context) { - Widget textWidget = Text( - text, - style: TextStyle(color: textColor ?? Colors.white), - textAlign: TextAlign.center, - ); - return Container( - padding: KEdgeInsets.h16v8.size, - decoration: BoxDecoration( - borderRadius: KBorderRadius.r16.radius, - color: backgroundColor ?? Colors.black54, - ), - child: icon != null - ? Row( - children: [ - icon!, - KSizedBox.w16.size, - textWidget, - ], - ) - : textWidget, - ); - } -} - -@riverpod -Toast toast(ToastRef ref, BuildContext context) => Toast(context); diff --git a/lib/src/utils/misc/toast/toast.g.dart b/lib/src/utils/misc/toast/toast.g.dart deleted file mode 100644 index 7cc4d9f1..00000000 --- a/lib/src/utils/misc/toast/toast.g.dart +++ /dev/null @@ -1,157 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'toast.dart'; - -// ************************************************************************** -// RiverpodGenerator -// ************************************************************************** - -String _$toastHash() => r'6bc9df511e9180eea4d509e57fdd4eed4c062779'; - -/// Copied from Dart SDK -class _SystemHash { - _SystemHash._(); - - static int combine(int hash, int value) { - // ignore: parameter_assignments - hash = 0x1fffffff & (hash + value); - // ignore: parameter_assignments - hash = 0x1fffffff & (hash + ((0x0007ffff & hash) << 10)); - return hash ^ (hash >> 6); - } - - static int finish(int hash) { - // ignore: parameter_assignments - hash = 0x1fffffff & (hash + ((0x03ffffff & hash) << 3)); - // ignore: parameter_assignments - hash = hash ^ (hash >> 11); - return 0x1fffffff & (hash + ((0x00003fff & hash) << 15)); - } -} - -/// See also [toast]. -@ProviderFor(toast) -const toastProvider = ToastFamily(); - -/// See also [toast]. -class ToastFamily extends Family { - /// See also [toast]. - const ToastFamily(); - - /// See also [toast]. - ToastProvider call( - BuildContext context, - ) { - return ToastProvider( - context, - ); - } - - @override - ToastProvider getProviderOverride( - covariant ToastProvider provider, - ) { - return call( - provider.context, - ); - } - - static const Iterable? _dependencies = null; - - @override - Iterable? get dependencies => _dependencies; - - static const Iterable? _allTransitiveDependencies = null; - - @override - Iterable? get allTransitiveDependencies => - _allTransitiveDependencies; - - @override - String? get name => r'toastProvider'; -} - -/// See also [toast]. -class ToastProvider extends AutoDisposeProvider { - /// See also [toast]. - ToastProvider( - BuildContext context, - ) : this._internal( - (ref) => toast( - ref as ToastRef, - context, - ), - from: toastProvider, - name: r'toastProvider', - debugGetCreateSourceHash: - const bool.fromEnvironment('dart.vm.product') - ? null - : _$toastHash, - dependencies: ToastFamily._dependencies, - allTransitiveDependencies: ToastFamily._allTransitiveDependencies, - context: context, - ); - - ToastProvider._internal( - super._createNotifier, { - required super.name, - required super.dependencies, - required super.allTransitiveDependencies, - required super.debugGetCreateSourceHash, - required super.from, - required this.context, - }) : super.internal(); - - final BuildContext context; - - @override - Override overrideWith( - Toast Function(ToastRef provider) create, - ) { - return ProviderOverride( - origin: this, - override: ToastProvider._internal( - (ref) => create(ref as ToastRef), - from: from, - name: null, - dependencies: null, - allTransitiveDependencies: null, - debugGetCreateSourceHash: null, - context: context, - ), - ); - } - - @override - AutoDisposeProviderElement createElement() { - return _ToastProviderElement(this); - } - - @override - bool operator ==(Object other) { - return other is ToastProvider && other.context == context; - } - - @override - int get hashCode { - var hash = _SystemHash.combine(0, runtimeType.hashCode); - hash = _SystemHash.combine(hash, context.hashCode); - - return _SystemHash.finish(hash); - } -} - -mixin ToastRef on AutoDisposeProviderRef { - /// The parameter `context` of this provider. - BuildContext get context; -} - -class _ToastProviderElement extends AutoDisposeProviderElement - with ToastRef { - _ToastProviderElement(super.provider); - - @override - BuildContext get context => (origin as ToastProvider).context; -} -// ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member diff --git a/lib/src/utils/mixin/shared_preferences_client_mixin.dart b/lib/src/utils/mixin/shared_preferences_client_mixin.dart deleted file mode 100644 index 5487b492..00000000 --- a/lib/src/utils/mixin/shared_preferences_client_mixin.dart +++ /dev/null @@ -1,138 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'dart:convert'; - -import 'package:riverpod_annotation/riverpod_annotation.dart'; -import 'package:shared_preferences/shared_preferences.dart'; - -import '../../global_providers/global_providers.dart'; -import '../extensions/custom_extensions.dart'; - -/// [SharedPreferenceClientMixin] is a mixin to add [_get] and [update] functions to -/// the provider. -/// -/// * Remember to use [ initialize ] function to assign [_key], [_client] -/// in [build] function of provider. -/// -/// * optionally provide [_initial] for giving initial value to the [_key]. -/// -/// * [T] should not be a Nullable Type. -mixin SharedPreferenceClientMixin { - late final String _key; - late final SharedPreferences _client; - late final T? _initial; - set state(T? newState); - T? get state; - late final dynamic Function(T)? _toJson; - late final T? Function(dynamic)? _fromJson; - - T? initialize( - AutoDisposeNotifierProviderRef ref, { - required key, - T? initial, - dynamic Function(T)? toJson, - T? Function(dynamic)? fromJson, - }) { - _client = ref.watch(sharedPreferencesProvider); - _key = key; - _initial = initial; - _toJson = toJson; - _fromJson = fromJson; - _persistenceRefreshLogic(ref); - return _get ?? _initial; - } - - void update(T? value) => state = value; - - void updateWithPreviousState(T? Function(T?) operation) => - state = operation(state); - - T? get _get { - final value = _client.get(_key); - if (_fromJson != null) { - return _fromJson!(jsonDecode(value.toString())); - } - if (value != null && value is List) { - // if value is List then the only possible type is List - // as SharedPreferences only saves List type. - // casting it to List and then to T? to - // avoid comparing List with T?. - return value.map((e) => e.toString()).toList() as T?; - } - return value is T? ? value : _initial; - } - - void _persistenceRefreshLogic(AutoDisposeNotifierProviderRef ref) => - ref.listenSelf((_, next) => _set(next)); - - Future _set(T? value) async { - if (value == null) return _client.remove(_key); - if (_toJson != null) { - _client.setString(_key, jsonEncode(_toJson!(value))); - } - if (value is bool) { - return await _client.setBool(_key, value); - } else if (value is double) { - return await _client.setDouble(_key, value); - } else if (value is int) { - return await _client.setInt(_key, value); - } else if (value is String) { - return await _client.setString(_key, value); - } else if (value is List) { - return await _client.setStringList(_key, value); - } - return false; - } -} - -/// [SharedPreferenceEnumClientMixin] is a mixin to add [get] and [update] functions to -/// the provider. -/// -/// * Remember to initialize [_key], [_client], [_enumList] in [build] function of provider -/// * optionally provide [_initial] for giving initial value to the [_key]. -mixin SharedPreferenceEnumClientMixin { - late String _key; - late SharedPreferences _client; - T? _initial; - late List _enumList; - set state(T? newState); - - T? initialize( - AutoDisposeNotifierProviderRef ref, { - required key, - required List enumList, - T? initial, - }) { - _client = ref.watch(sharedPreferencesProvider); - _key = key; - _initial = initial; - _enumList = enumList; - _persistenceRefreshLogic(ref); - return _get; - } - - void update(T? value) => state = value; - - T? _getEnumFromIndex(int? value) => - value.liesBetween(upper: _enumList.length - 1) - ? _enumList[value!] - : _initial; - - T? get _get => _getEnumFromIndex(_client.getInt(_key)); - - Future _set(int? value) { - if (value == null) return _client.remove(_key); - return _client.setInt(_key, value); - } - - void _persistenceRefreshLogic(AutoDisposeNotifierProviderRef ref) => - ref.listenSelf( - (_, next) => _set( - next == null ? null : _enumList.indexOf(next), - ), - ); -} diff --git a/lib/src/utils/mixin/state_provider_mixin.dart b/lib/src/utils/mixin/state_provider_mixin.dart deleted file mode 100644 index 34e6aaed..00000000 --- a/lib/src/utils/mixin/state_provider_mixin.dart +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright (c) 2023 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; - -mixin StateProviderMixin { - @protected - set state(State value); - - void update(State state) => this.state = state; -} diff --git a/lib/src/utils/storage/dio/dio_client.dart b/lib/src/utils/storage/dio/dio_client.dart deleted file mode 100644 index 538d4940..00000000 --- a/lib/src/utils/storage/dio/dio_client.dart +++ /dev/null @@ -1,216 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:dio/dio.dart'; -import 'package:flutter/foundation.dart'; - -import '../dio_error_util.dart'; - -typedef ResponseDecoderCallBack = DecoderType Function(dynamic); - -class DioClient { - final Dio dio; - DioClient({required this.dio}); - - /// Handy method to make http GET request - /// - ///{@template dioClient} - /// - [ReturnType] is the expected return type. - /// - [DecoderType] is the return Type of decoder - /// - /// for example: - /// 1. if [ReturnType] is User then [DecoderType] is User. - /// - /// 2. if [ReturnType] is List\ then [DecoderType] is User. - ///{@endtemplate} - /// - Future> get( - String url, { - Map? queryParameters, - ResponseDecoderCallBack? decoder, - Options? options, - CancelToken? cancelToken, - ProgressCallback? onReceiveProgress, - }) => - _handelDecoding( - sendRequest: () => dio.get( - url, - queryParameters: queryParameters, - options: options, - cancelToken: cancelToken, - onReceiveProgress: onReceiveProgress, - ), - decoder: decoder, - ); - - /// Handy method to make http POST request, - /// - /// {@macro dioClient} - Future> post( - String url, { - dynamic data, - Map? queryParameters, - ResponseDecoderCallBack? decoder, - Options? options, - CancelToken? cancelToken, - ProgressCallback? onSendProgress, - ProgressCallback? onReceiveProgress, - }) => - _handelDecoding( - sendRequest: () => dio.post( - url, - data: data, - queryParameters: queryParameters, - options: options, - cancelToken: cancelToken, - onSendProgress: onSendProgress, - onReceiveProgress: onReceiveProgress, - ), - decoder: decoder, - ); - - /// Handy method to make http PATCH request, - /// - /// {@macro dioClient} - Future> patch( - String url, { - dynamic data, - Map? queryParameters, - ResponseDecoderCallBack? decoder, - Options? options, - CancelToken? cancelToken, - ProgressCallback? onSendProgress, - ProgressCallback? onReceiveProgress, - }) => - _handelDecoding( - sendRequest: () => dio.patch( - url, - data: data, - queryParameters: queryParameters, - options: options, - cancelToken: cancelToken, - onSendProgress: onSendProgress, - onReceiveProgress: onReceiveProgress, - ), - decoder: decoder, - ); - - /// Handy method to make http PUT request, - /// - /// {@macro dioClient} - Future?> put( - String url, { - data, - Map? queryParameters, - ResponseDecoderCallBack? decoder, - Options? options, - CancelToken? cancelToken, - ProgressCallback? onSendProgress, - ProgressCallback? onReceiveProgress, - }) => - _handelDecoding( - sendRequest: () => dio.put( - url, - data: data, - queryParameters: queryParameters, - options: options, - cancelToken: cancelToken, - onSendProgress: onSendProgress, - onReceiveProgress: onReceiveProgress, - ), - decoder: decoder, - ); - - /// Handy method to make http DELETE request, - /// - /// {@macro dioClient} - Future> delete( - String url, { - data, - Map? queryParameters, - ResponseDecoderCallBack? decoder, - Options? options, - CancelToken? cancelToken, - }) => - _handelDecoding( - sendRequest: () => dio.delete( - url, - data: data, - queryParameters: queryParameters, - options: options, - cancelToken: cancelToken, - ), - decoder: decoder, - ); - - Future> _handelDecoding({ - required Future Function() sendRequest, - ResponseDecoderCallBack? decoder, - }) async { - try { - final Response response = await sendRequest(); - ReturnType? result; - - if (decoder != null) { - result = await _responseDecoder( - responseData: response.data, - decoder: decoder, - ); - } else if (response.data is ReturnType?) { - result = response.data; - } - - return response.copyWith(data: result); - } on DioException catch (e) { - if (kDebugMode) rethrow; - throw DioErrorUtil.handleError(e); - } catch (e) { - if (kDebugMode) rethrow; - throw "Unexpected error occurred"; - } - } - - Future _responseDecoder({ - required dynamic responseData, - required ResponseDecoderCallBack decoder, - }) async { - if (responseData is List) { - final result = await compute>( - (message) => [for (dynamic e in message) decoder(e)], - responseData, - ); - return result as ReturnType?; - } else { - return await compute, DecoderType>( - decoder, - responseData, - ) as ReturnType?; - } - } -} - -extension ResponseExtensions on Response { - Response copyWith({ - T? data, - Headers? headers, - RequestOptions? requestOptions, - bool? isRedirect, - int? statusCode, - String? statusMessage, - List? redirects, - Map? extra, - }) => - Response( - data: data ?? (this.data is T? ? this.data : null), - headers: headers ?? this.headers, - requestOptions: requestOptions ?? this.requestOptions, - isRedirect: isRedirect ?? this.isRedirect, - statusCode: statusCode ?? this.statusCode, - statusMessage: statusMessage ?? this.statusMessage, - redirects: redirects ?? this.redirects, - extra: extra ?? this.extra, - ); -} diff --git a/lib/src/utils/storage/dio/network_module.dart b/lib/src/utils/storage/dio/network_module.dart deleted file mode 100644 index 6c2d212e..00000000 --- a/lib/src/utils/storage/dio/network_module.dart +++ /dev/null @@ -1,94 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'dart:convert'; - -import 'package:dio/dio.dart'; -import 'package:dio_cache_interceptor/dio_cache_interceptor.dart'; -import 'package:dio_cache_interceptor_hive_store/dio_cache_interceptor_hive_store.dart'; -import 'package:flutter/foundation.dart'; -import 'package:riverpod_annotation/riverpod_annotation.dart'; - -import '../../../constants/endpoints.dart'; -import '../../../constants/enum.dart'; -import '../../extensions/custom_extensions.dart'; - -part 'network_module.g.dart'; - -// Must be top-level function -_parseAndDecode(String response) { - try { - return jsonDecode(response); - } catch (e) { - return response; - } -} - -parseJson(String text) => compute(_parseAndDecode, text); - -class DioNetworkModule { - Dio provideDio({ - required String baseUrl, - int? port, - bool addPort = true, - required AuthType authType, - HiveCacheStore? hiveCacheStore, - String? credentials, - }) { - final cacheOptions = CacheOptions( - store: hiveCacheStore, - policy: CachePolicy.refreshForceCache, - hitCacheOnErrorExcept: [401, 403], - priority: CachePriority.normal, - maxStale: const Duration(days: 14), - ); - final dio = Dio(); - (dio.transformer as BackgroundTransformer).jsonDecodeCallback = parseJson; - - dio - ..options.baseUrl = Endpoints.baseApi( - baseUrl: baseUrl, - port: port, - addPort: addPort, - ) - ..options.connectTimeout = Endpoints.connectionTimeout - ..options.receiveTimeout = Endpoints.receiveTimeout - ..options.contentType = Headers.jsonContentType - ..options.headers = {'Content-Type': 'application/json; charset=utf-8'} - ..interceptors.add(DioCacheInterceptor(options: cacheOptions)) - ..interceptors.add( - InterceptorsWrapper( - onRequest: (options, handler) { - if (authType == AuthType.basic) { - if (credentials.isNotBlank) { - options.headers.putIfAbsent( - "Authorization", - () => credentials, - ); - } else { - if (kDebugMode) { - debugPrint('credential is null'); - } - } - } - return handler.next(options); - }, - ), - ); - if (kDebugMode) { - dio.interceptors.add(LogInterceptor( - responseBody: true, - requestBody: true, - logPrint: (e) => debugPrint(e.toString()), - )); - } - - return dio; - } -} - -@riverpod -DioNetworkModule networkModule(ref) => DioNetworkModule(); diff --git a/lib/src/utils/storage/dio/network_module.g.dart b/lib/src/utils/storage/dio/network_module.g.dart deleted file mode 100644 index c3d8a442..00000000 --- a/lib/src/utils/storage/dio/network_module.g.dart +++ /dev/null @@ -1,25 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'network_module.dart'; - -// ************************************************************************** -// RiverpodGenerator -// ************************************************************************** - -String _$networkModuleHash() => r'684a8cf88504e7b453fe8b38d8725a49b83d1e98'; - -/// See also [networkModule]. -@ProviderFor(networkModule) -final networkModuleProvider = AutoDisposeProvider.internal( - networkModule, - name: r'networkModuleProvider', - debugGetCreateSourceHash: const bool.fromEnvironment('dart.vm.product') - ? null - : _$networkModuleHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef NetworkModuleRef = AutoDisposeProviderRef; -// ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member diff --git a/lib/src/utils/storage/dio_error_util.dart b/lib/src/utils/storage/dio_error_util.dart deleted file mode 100644 index 882b8fa5..00000000 --- a/lib/src/utils/storage/dio_error_util.dart +++ /dev/null @@ -1,34 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:dio/dio.dart'; - -class DioErrorUtil { - // general methods:------------------------------------------------------------ - /// Handles error for Dio Class - static String handleError(DioException? error) { - String errorDescription = ""; - if (error is DioException) { - errorDescription = switch (error.type) { - DioExceptionType.cancel => "Request cancelled", - DioExceptionType.connectionTimeout => "Connection timeout", - DioExceptionType.unknown => "Check your Internet Connection", - DioExceptionType.receiveTimeout => "Receive timeout", - DioExceptionType.badResponse => (error.response?.statusCode) != null - ? "Received invalid status code: ${error.response?.statusCode}" - : "Something went wrong!", - DioExceptionType.sendTimeout => "Send timeout", - DioExceptionType.badCertificate => - "Check your Internet Connection (Incorrect certificate )", - DioExceptionType.connectionError => - "Check your Internet Connection (Check server IP in settings)" - }; - } else { - errorDescription = "Unexpected error occurred"; - } - return errorDescription; - } -} diff --git a/lib/src/widgets/async_buttons/async_checkbox_list_tile.dart b/lib/src/widgets/async_buttons/async_checkbox_list_tile.dart deleted file mode 100644 index 5684a774..00000000 --- a/lib/src/widgets/async_buttons/async_checkbox_list_tile.dart +++ /dev/null @@ -1,41 +0,0 @@ -// Copyright (c) 2023 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:flutter_hooks/flutter_hooks.dart'; - -import '../../utils/extensions/custom_extensions.dart'; - -class AsyncCheckboxListTile extends HookWidget { - const AsyncCheckboxListTile({ - super.key, - required this.value, - this.onChanged, - required this.title, - }); - - final bool value; - final ValueChanged? onChanged; - final Widget title; - @override - Widget build(BuildContext context) { - final localValue = useState(value); - useEffect(() { - localValue.value = value; - return null; - }, [value]); - return CheckboxListTile( - value: localValue.value, - onChanged: onChanged != null - ? (val) { - localValue.value = (val.ifNull()); - onChanged!(val.ifNull()); - } - : null, - title: title, - ); - } -} diff --git a/lib/src/widgets/async_buttons/async_text_button.dart b/lib/src/widgets/async_buttons/async_text_button.dart deleted file mode 100644 index 4bddb8d3..00000000 --- a/lib/src/widgets/async_buttons/async_text_button.dart +++ /dev/null @@ -1,40 +0,0 @@ -// Copyright (c) 2023 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/foundation.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter_hooks/flutter_hooks.dart'; - -import '../custom_circular_progress_indicator.dart'; - -class AsyncTextButton extends HookWidget { - const AsyncTextButton({ - super.key, - required this.onPressed, - required this.child, - required this.icon, - }); - - final AsyncCallback? onPressed; - final Widget child; - final Widget icon; - - @override - Widget build(BuildContext context) { - final isLoading = useState(false); - return TextButton.icon( - onPressed: (!isLoading.value && onPressed != null) - ? () async { - isLoading.value = (true); - await onPressed!(); - isLoading.value = (false); - } - : null, - icon: isLoading.value ? const SizedBox.shrink() : icon, - label: isLoading.value ? const MiniCircularProgressIndicator() : child, - ); - } -} diff --git a/lib/src/widgets/async_buttons/async_text_button_icon.dart b/lib/src/widgets/async_buttons/async_text_button_icon.dart deleted file mode 100644 index bf7ec264..00000000 --- a/lib/src/widgets/async_buttons/async_text_button_icon.dart +++ /dev/null @@ -1,55 +0,0 @@ -// Copyright (c) 2023 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:flutter_hooks/flutter_hooks.dart'; - -class AsyncTextButtonIcon extends HookWidget { - const AsyncTextButtonIcon({ - super.key, - required this.isPrimary, - this.onPressed, - required this.primaryIcon, - required this.primaryLabel, - this.primaryStyle, - this.secondaryIcon, - this.secondaryLabel, - this.secondaryStyle, - }); - - final bool isPrimary; - final VoidCallback? onPressed; - final Widget primaryIcon; - final Widget primaryLabel; - final Widget? secondaryIcon; - final Widget? secondaryLabel; - final ButtonStyle? primaryStyle; - final ButtonStyle? secondaryStyle; - - @override - Widget build(BuildContext context) { - final isLocalPrimary = useState(isPrimary); - useEffect(() { - isLocalPrimary.value = isPrimary; - return null; - }, [isPrimary]); - return TextButton.icon( - style: isLocalPrimary.value ? primaryStyle : secondaryStyle, - onPressed: onPressed != null - ? () { - isLocalPrimary.value = (!isLocalPrimary.value); - onPressed!(); - } - : null, - icon: (secondaryIcon != null && !isLocalPrimary.value) - ? secondaryIcon! - : primaryIcon, - label: (secondaryLabel != null && !isLocalPrimary.value) - ? secondaryLabel! - : primaryLabel, - ); - } -} diff --git a/lib/src/widgets/custom_checkbox_list_tile.dart b/lib/src/widgets/custom_checkbox_list_tile.dart deleted file mode 100644 index abf7c26c..00000000 --- a/lib/src/widgets/custom_checkbox_list_tile.dart +++ /dev/null @@ -1,38 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; - -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../utils/extensions/custom_extensions.dart'; - -class CustomCheckboxListTile> - extends ConsumerWidget { - const CustomCheckboxListTile({ - super.key, - required this.title, - required this.provider, - required this.onChanged, - this.tristate = true, - }); - final String title; - final AutoDisposeNotifierProvider provider; - final ValueChanged onChanged; - final bool tristate; - @override - Widget build(BuildContext context, WidgetRef ref) { - final val = ref.watch(provider); - return CheckboxListTile( - controlAffinity: ListTileControlAffinity.leading, - activeColor: context.theme.indicatorColor, - value: tristate ? val : val.ifNull(true), - title: Text(title), - tristate: tristate, - onChanged: onChanged, - ); - } -} diff --git a/lib/src/widgets/custom_circular_progress_indicator.dart b/lib/src/widgets/custom_circular_progress_indicator.dart deleted file mode 100644 index 93b9c542..00000000 --- a/lib/src/widgets/custom_circular_progress_indicator.dart +++ /dev/null @@ -1,63 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:shimmer/shimmer.dart'; - -import '../constants/app_sizes.dart'; -import '../constants/gen/assets.gen.dart'; -import '../utils/extensions/custom_extensions.dart'; - -class CenterSorayomiShimmerIndicator extends StatelessWidget { - const CenterSorayomiShimmerIndicator({super.key, this.value}); - - final double? value; - @override - Widget build(BuildContext context) => Center( - child: SizedBox( - height: context.height * .35, - width: context.width * .35, - child: const SorayomiShimmerIndicator(), - ), - ); -} - -class SorayomiShimmerIndicator extends StatelessWidget { - const SorayomiShimmerIndicator({super.key}); - - @override - Widget build(BuildContext context) { - return Shimmer.fromColors( - baseColor: context.colorScheme.background, - highlightColor: context.theme.indicatorColor, - child: ImageIcon(AssetImage(Assets.icons.darkIcon.path)), - ); - } -} - -class MiniCircularProgressIndicator extends StatelessWidget { - const MiniCircularProgressIndicator({ - super.key, - this.color, - this.value, - this.padding, - }); - final Color? color; - final double? value; - final EdgeInsetsGeometry? padding; - @override - Widget build(BuildContext context) => Padding( - padding: padding ?? KEdgeInsets.a8.size, - child: SizedBox.square( - dimension: 16, - child: CircularProgressIndicator( - strokeWidth: 3, - color: color, - value: value, - ), - ), - ); -} diff --git a/lib/src/widgets/emoticons.dart b/lib/src/widgets/emoticons.dart deleted file mode 100644 index 8c592618..00000000 --- a/lib/src/widgets/emoticons.dart +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; - -import 'package:flutter_hooks/flutter_hooks.dart'; - -import '../constants/app_sizes.dart'; -import '../utils/extensions/custom_extensions.dart'; - -const errorFaces = [ - '(・o・;)', - 'Σ(ಠ_ಠ)', - 'ಥ_ಥ', - '(˘・_・˘)', - '(; ̄Д ̄)', - '(・Д・。', -]; - -class Emoticons extends HookWidget { - const Emoticons({ - super.key, - this.text, - this.button, - this.iconData, - }); - final String? text; - final IconData? iconData; - final Widget? button; - - @override - Widget build(BuildContext context) { - final errorFace = useMemoized(() => errorFaces.getRandom!); - return Padding( - padding: KEdgeInsets.a8.size, - child: Center( - child: Column( - mainAxisSize: MainAxisSize.min, - mainAxisAlignment: MainAxisAlignment.center, - children: [ - iconData != null - ? Icon(iconData, size: context.height * .2) - : Text( - errorFace, - textAlign: TextAlign.center, - style: context.textTheme.displayMedium, - ), - KSizedBox.h16.size, - if (text.isNotBlank) - Text( - text!, - textAlign: TextAlign.center, - style: context.textTheme.titleMedium, - overflow: TextOverflow.ellipsis, - maxLines: 3, - ), - if (button != null) button!, - ], - ), - ), - ); - } -} diff --git a/lib/src/widgets/manga_cover/grid/manga_cover_grid_tile.dart b/lib/src/widgets/manga_cover/grid/manga_cover_grid_tile.dart deleted file mode 100644 index b7dced7a..00000000 --- a/lib/src/widgets/manga_cover/grid/manga_cover_grid_tile.dart +++ /dev/null @@ -1,124 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; - -import '../../../constants/app_sizes.dart'; -import '../../../constants/gen/assets.gen.dart'; -import '../../../features/manga_book/domain/manga/manga_model.dart'; -import '../../../features/manga_book/presentation/manga_thumbnail_viewer/manga_thumbnail_viewer.dart'; -import '../../../utils/extensions/custom_extensions.dart'; -import '../../server_image.dart'; -import '../widgets/manga_badges.dart'; - -class MangaCoverGridTile extends StatelessWidget { - const MangaCoverGridTile({ - super.key, - required this.manga, - this.onPressed, - this.onLongPress, - this.showTitle = true, - this.showBadges = true, - this.showCountBadges = false, - this.showDarkOverlay = true, - }); - final Manga manga; - final VoidCallback? onPressed; - final VoidCallback? onLongPress; - final bool showCountBadges; - final bool showTitle; - final bool showBadges; - final bool showDarkOverlay; - @override - Widget build(BuildContext context) { - return InkResponse( - onTap: onPressed ?? - () => Navigator.push( - context, - PageRouteBuilder( - fullscreenDialog: true, - opaque: false, - pageBuilder: (context, _, __) => MangaThumbnailViewer( - imageUrl: manga.thumbnailUrl ?? "", - ), - transitionsBuilder: - (context, animation, secondaryAnimation, child) { - const begin = Offset(-1.0, 0.0); - const end = Offset.zero; - const curve = Curves.ease; - - final tween = Tween(begin: begin, end: end); - final curvedAnimation = CurvedAnimation( - parent: animation, - curve: curve, - ); - - return SlideTransition( - position: tween.animate(curvedAnimation), - child: child, - ); - }, - ), - ), - onLongPress: onLongPress, - child: Card( - clipBehavior: Clip.antiAlias, - shape: RoundedRectangleBorder(borderRadius: KBorderRadius.r12.radius), - child: GridTile( - header: showBadges - ? MangaBadgesRow(manga: manga, showCountBadges: showCountBadges) - : null, - footer: showTitle - ? ListTile( - contentPadding: const EdgeInsets.symmetric(horizontal: 8), - dense: true, - title: Text( - (manga.title ?? manga.author ?? ""), - overflow: TextOverflow.ellipsis, - maxLines: 2, - ), - ) - : null, - child: manga.thumbnailUrl.isNotBlank - ? Container( - foregroundDecoration: BoxDecoration( - border: Border.all( - width: 0, - color: context.theme.canvasColor, - ), - boxShadow: showDarkOverlay - ? [ - BoxShadow( - color: context.theme.canvasColor.withOpacity(.5), - ) - ] - : null, - gradient: showTitle - ? LinearGradient( - begin: Alignment.center, - end: Alignment.bottomCenter, - colors: [ - context.theme.canvasColor.withOpacity(0), - context.theme.canvasColor.withOpacity(0.4), - context.theme.canvasColor.withOpacity(0.9), - ], - ) - : null, - ), - child: ServerImage(imageUrl: manga.thumbnailUrl ?? ""), - ) - : SizedBox( - height: context.height * .3, - child: ImageIcon( - AssetImage(Assets.icons.darkIcon.path), - size: context.height * .2, - ), - ), - ), - ), - ); - } -} diff --git a/lib/src/widgets/manga_cover/list/manga_cover_descriptive_list_tile.dart b/lib/src/widgets/manga_cover/list/manga_cover_descriptive_list_tile.dart deleted file mode 100644 index 57d65aac..00000000 --- a/lib/src/widgets/manga_cover/list/manga_cover_descriptive_list_tile.dart +++ /dev/null @@ -1,142 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; - -import '../../../constants/app_sizes.dart'; -import '../../../features/manga_book/domain/manga/manga_model.dart'; - -import '../../../utils/extensions/custom_extensions.dart'; -import '../grid/manga_cover_grid_tile.dart'; -import '../widgets/manga_badges.dart'; -import '../widgets/manga_chips.dart'; - -class MangaCoverDescriptiveListTile extends StatelessWidget { - const MangaCoverDescriptiveListTile({ - super.key, - required this.manga, - this.onPressed, - this.onLongPress, - this.onTitleClicked, - this.showBadges = true, - this.showCountBadges = true, - }); - final Manga manga; - final bool showBadges; - final bool showCountBadges; - final VoidCallback? onPressed; - final VoidCallback? onLongPress; - final ValueChanged? onTitleClicked; - @override - Widget build(BuildContext context) { - final sourceName = - " • ${manga.source?.displayName ?? context.l10n!.unknownSource}"; - return InkWell( - onTap: onPressed, - onLongPress: onLongPress, - child: Padding( - padding: const EdgeInsets.all(8.0), - child: Row( - crossAxisAlignment: CrossAxisAlignment.center, - children: [ - SizedBox( - width: 120, - height: 160, - child: MangaCoverGridTile( - manga: manga, - showBadges: false, - showTitle: false, - showDarkOverlay: false, - ), - ), - Expanded( - flex: 3, - child: Padding( - padding: const EdgeInsets.all(8.0), - child: Column( - mainAxisSize: MainAxisSize.min, - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - InkWell( - onTap: onTitleClicked != null - ? () => onTitleClicked!(manga.title) - : null, - child: Text( - (manga.title ?? context.l10n!.unknownManga), - style: context.textTheme.titleLarge, - overflow: TextOverflow.ellipsis, - maxLines: 2, - semanticsLabel: manga.title, - ), - ), - Padding( - padding: const EdgeInsets.symmetric(vertical: 2.0), - child: Text( - manga.author ?? context.l10n!.unknownAuthor, - overflow: TextOverflow.ellipsis, - style: context.textTheme.bodySmall, - ), - ), - Wrap( - crossAxisAlignment: WrapCrossAlignment.center, - children: [ - if (manga.status != null) ...[ - Icon( - manga.status!.icon, - size: 16, - color: context.textTheme.bodySmall?.color, - ), - Text( - " ${manga.status!.toLocale(context)}", - style: context.textTheme.bodySmall, - ), - ], - if (manga.source?.displayName != null) - Text( - sourceName, - style: context.textTheme.bodySmall, - ), - ], - ), - // if (showLastReadChapter) ...[ - // Padding( - // padding: const EdgeInsets.fromLTRB(0, 20, 0, 0), - // child: Text( - // manga.lastChapterRead?.name ?? "", - // overflow: TextOverflow.ellipsis, - // style: context.textTheme.bodySmall, - // ), - // ), - // Padding( - // padding: const EdgeInsets.symmetric(vertical: 2.0), - // child: Text( - // manga.lastReadAt.toDaysAgoFromSeconds ?? "", - // overflow: TextOverflow.ellipsis, - // style: context.textTheme.bodySmall, - // ), - // ), - // ], - if (showBadges) - context.isTablet - ? MangaChipsRow( - manga: manga, - showCountBadges: showCountBadges, - ) - : MangaBadgesRow( - padding: KEdgeInsets.v8.size, - manga: manga, - showCountBadges: showCountBadges, - ), - ], - ), - ), - ), - ], - ), - ), - ); - } -} diff --git a/lib/src/widgets/manga_cover/list/manga_cover_list_tile.dart b/lib/src/widgets/manga_cover/list/manga_cover_list_tile.dart deleted file mode 100644 index e8f7f729..00000000 --- a/lib/src/widgets/manga_cover/list/manga_cover_list_tile.dart +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; - -import '../../../constants/app_sizes.dart'; -import '../../../features/manga_book/domain/manga/manga_model.dart'; -import '../../server_image.dart'; -import '../widgets/manga_badges.dart'; - -class MangaCoverListTile extends StatelessWidget { - const MangaCoverListTile({ - super.key, - required this.manga, - this.onPressed, - this.onLongPress, - this.showBadges = true, - this.showCountBadges = false, - }); - - final Manga manga; - final VoidCallback? onPressed; - final VoidCallback? onLongPress; - final bool showCountBadges; - final bool showBadges; - @override - Widget build(BuildContext context) { - return InkWell( - onTap: onPressed, - onLongPress: onLongPress, - child: Row( - children: [ - Padding( - padding: KEdgeInsets.a8.size, - child: ClipRRect( - borderRadius: KBorderRadius.r8.radius, - child: ServerImage( - imageUrl: manga.thumbnailUrl ?? "", - size: const Size(60, 80), - ), - ), - ), - Expanded( - child: Padding( - padding: KEdgeInsets.h8.size, - child: Text( - (manga.title ?? manga.author ?? ""), - overflow: TextOverflow.ellipsis, - maxLines: 3, - ), - ), - ), - if (showBadges) - MangaBadgesRow(manga: manga, showCountBadges: showCountBadges), - ], - ), - ); - } -} diff --git a/lib/src/widgets/manga_cover/providers/manga_cover_providers.dart b/lib/src/widgets/manga_cover/providers/manga_cover_providers.dart deleted file mode 100644 index 8fe6b12d..00000000 --- a/lib/src/widgets/manga_cover/providers/manga_cover_providers.dart +++ /dev/null @@ -1,44 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:riverpod_annotation/riverpod_annotation.dart'; - -import '../../../constants/db_keys.dart'; -import '../../../utils/mixin/shared_preferences_client_mixin.dart'; - -part 'manga_cover_providers.g.dart'; - -@riverpod -class DownloadedBadge extends _$DownloadedBadge - with SharedPreferenceClientMixin { - @override - bool? build() => initialize( - ref, - key: DBKeys.downloadedBadge.name, - initial: DBKeys.downloadedBadge.initial, - ); -} - -@riverpod -class UnreadBadge extends _$UnreadBadge with SharedPreferenceClientMixin { - @override - bool? build() => initialize( - ref, - key: DBKeys.unreadBadge.name, - initial: DBKeys.unreadBadge.initial, - ); -} - -// @riverpod -// class LanguageBadge extends _$LanguageBadge -// with SharedPreferenceClient { -// @override -// bool? build() => initialize( -// -// key: DBKeys.languageBadge.name, -// initial: DBKeys.languageBadge.initial, -// ); -// } diff --git a/lib/src/widgets/manga_cover/providers/manga_cover_providers.g.dart b/lib/src/widgets/manga_cover/providers/manga_cover_providers.g.dart deleted file mode 100644 index 8f11482c..00000000 --- a/lib/src/widgets/manga_cover/providers/manga_cover_providers.g.dart +++ /dev/null @@ -1,41 +0,0 @@ -// GENERATED CODE - DO NOT MODIFY BY HAND - -part of 'manga_cover_providers.dart'; - -// ************************************************************************** -// RiverpodGenerator -// ************************************************************************** - -String _$downloadedBadgeHash() => r'afa3d2e9bd56dcb3bcb89c5811f653ea2b1bb934'; - -/// See also [DownloadedBadge]. -@ProviderFor(DownloadedBadge) -final downloadedBadgeProvider = - AutoDisposeNotifierProvider.internal( - DownloadedBadge.new, - name: r'downloadedBadgeProvider', - debugGetCreateSourceHash: const bool.fromEnvironment('dart.vm.product') - ? null - : _$downloadedBadgeHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef _$DownloadedBadge = AutoDisposeNotifier; -String _$unreadBadgeHash() => r'cdb245781af0083f949d8584063609220b41c790'; - -/// See also [UnreadBadge]. -@ProviderFor(UnreadBadge) -final unreadBadgeProvider = - AutoDisposeNotifierProvider.internal( - UnreadBadge.new, - name: r'unreadBadgeProvider', - debugGetCreateSourceHash: - const bool.fromEnvironment('dart.vm.product') ? null : _$unreadBadgeHash, - dependencies: null, - allTransitiveDependencies: null, -); - -typedef _$UnreadBadge = AutoDisposeNotifier; -// ignore_for_file: type=lint -// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member diff --git a/lib/src/widgets/manga_cover/widgets/manga_badges.dart b/lib/src/widgets/manga_cover/widgets/manga_badges.dart deleted file mode 100644 index 256a2204..00000000 --- a/lib/src/widgets/manga_cover/widgets/manga_badges.dart +++ /dev/null @@ -1,111 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../../../constants/app_sizes.dart'; -import '../../../features/manga_book/domain/manga/manga_model.dart'; - -import '../../../utils/extensions/custom_extensions.dart'; -import '../providers/manga_cover_providers.dart'; - -class MangaBadgesRow extends ConsumerWidget { - const MangaBadgesRow({ - super.key, - required this.manga, - this.needSpacer = false, - this.showCountBadges = false, - this.padding, - }); - final Manga manga; - final bool needSpacer; - final bool showCountBadges; - final EdgeInsetsGeometry? padding; - @override - Widget build(BuildContext context, WidgetRef ref) { - final downloadedBadge = ref.watch(downloadedBadgeProvider).ifNull(true); - final unreadBadge = ref.watch(unreadBadgeProvider).ifNull(true); - // final languageBadge = ref.watch(languageBadgeProvider) .ifNull(); - return Padding( - padding: padding ?? KEdgeInsets.a8.size, - child: Row( - mainAxisSize: MainAxisSize.min, - children: [ - if (!showCountBadges && manga.inLibrary.ifNull()) - ClipRRect( - borderRadius: KBorderRadius.r8.radius, - child: MangaBadge( - icon: Icons.collections_bookmark_rounded, - color: context.theme.colorScheme.primary, - textColor: context.theme.colorScheme.onPrimary, - ), - ), - if (showCountBadges) ...[ - ClipRRect( - borderRadius: KBorderRadius.r8.radius, - child: Row( - mainAxisSize: MainAxisSize.min, - children: [ - if (manga.unreadCount.isGreaterThan(0) && unreadBadge) - MangaBadge( - text: "${manga.unreadCount.getValueOnNullOrNegative()}", - color: context.theme.colorScheme.primary, - textColor: context.theme.colorScheme.onPrimary, - ), - if (manga.downloadCount.isGreaterThan(0) && downloadedBadge) - MangaBadge( - text: "${manga.downloadCount.getValueOnNullOrNegative()}", - color: context.theme.colorScheme.tertiary, - textColor: context.theme.colorScheme.onTertiary, - ), - ], - ), - ), - if (needSpacer) const Spacer(), - // if ((manga.source?.lang?.code) != null && languageBadge) - // ClipRRect( - // borderRadius: KBorderRadius.r16.radius, - // child: Badge( - // text: manga.source!.lang!.code!, - // color: context.theme.colorScheme.tertiary, - // textColor: context.theme.colorScheme.onTertiary, - // ), - // ) - ], - ], - ), - ); - } -} - -class MangaBadge extends StatelessWidget { - const MangaBadge({ - super.key, - this.text, - this.icon, - required this.color, - required this.textColor, - }) : assert(text != null || icon != null); - final String? text; - final IconData? icon; - final Color color; - final Color textColor; - @override - Widget build(BuildContext context) { - return Card( - margin: EdgeInsets.zero, - color: color, - shape: const RoundedRectangleBorder(), - child: Padding( - padding: KEdgeInsets.a4.size, - child: text.isNotBlank - ? Text(text!, style: TextStyle(color: textColor)) - : Icon(icon, color: textColor, size: 16), - ), - ); - } -} diff --git a/lib/src/widgets/manga_cover/widgets/manga_chips.dart b/lib/src/widgets/manga_cover/widgets/manga_chips.dart deleted file mode 100644 index e7cc601d..00000000 --- a/lib/src/widgets/manga_cover/widgets/manga_chips.dart +++ /dev/null @@ -1,100 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../../../constants/app_sizes.dart'; -import '../../../features/manga_book/domain/manga/manga_model.dart'; - -import '../../../utils/extensions/custom_extensions.dart'; -import '../providers/manga_cover_providers.dart'; - -class MangaChipsRow extends ConsumerWidget { - const MangaChipsRow({ - super.key, - required this.manga, - this.showCountBadges = false, - }); - final Manga manga; - final bool showCountBadges; - @override - Widget build(BuildContext context, WidgetRef ref) { - final downloadedBadge = ref.watch(downloadedBadgeProvider).ifNull(true); - final unreadBadge = ref.watch(unreadBadgeProvider).ifNull(true); - // final languageBadge = ref.watch(languageBadgeProvider) .ifNull())); - return Padding( - padding: KEdgeInsets.v8.size, - child: Wrap( - children: [ - if (!showCountBadges && (manga.inLibrary.ifNull())) - MangaChip( - text: context.l10n!.inLibrary, - color: context.theme.colorScheme.primary, - textColor: context.theme.colorScheme.onPrimary, - ), - if (showCountBadges) ...[ - Row( - mainAxisSize: MainAxisSize.min, - children: [ - if (manga.unreadCount.isGreaterThan(0) && unreadBadge) - MangaChip( - text: context.l10n!.nameCountDisplay( - context.l10n!.unread, - manga.unreadCount.getValueOnNullOrNegative(), - ), - color: context.theme.colorScheme.primary, - textColor: context.theme.colorScheme.onPrimary, - ), - if (manga.downloadCount.isGreaterThan(0) && downloadedBadge) - MangaChip( - text: context.l10n!.nameCountDisplay( - context.l10n!.downloaded, - manga.downloadCount.getValueOnNullOrNegative(), - ), - color: context.theme.colorScheme.tertiary, - textColor: context.theme.colorScheme.onTertiary, - ), - ], - ), - // if ((manga.source?.lang?.code) != null && languageBadge) - // ClipRRect( - // borderRadius: KBorderRadius.r16.radius, - // child: Badge( - // text: manga.source!.lang!.code!, - // color: context.theme.colorScheme.tertiary, - // textColor: context.theme.colorScheme.onTertiary, - // ), - // ) - ], - ], - ), - ); - } -} - -class MangaChip extends StatelessWidget { - const MangaChip({ - super.key, - required this.text, - required this.color, - required this.textColor, - }); - final String text; - final Color color; - final Color textColor; - @override - Widget build(BuildContext context) { - return Padding( - padding: KEdgeInsets.ol4.size, - child: Chip( - label: Text(text), - labelStyle: TextStyle(color: textColor), - backgroundColor: color, - ), - ); - } -} diff --git a/lib/src/widgets/multi_select_popup.dart b/lib/src/widgets/multi_select_popup.dart deleted file mode 100644 index ff88be4d..00000000 --- a/lib/src/widgets/multi_select_popup.dart +++ /dev/null @@ -1,138 +0,0 @@ -// Copyright (c) 2023 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:flutter_hooks/flutter_hooks.dart'; - -import '../constants/app_sizes.dart'; -import '../utils/extensions/custom_extensions.dart'; -import 'pop_button.dart'; - -class MultiSelectPopup extends HookWidget { - const MultiSelectPopup({ - super.key, - required this.title, - required this.optionList, - required this.values, - required this.onChange, - this.getOptionTitle, - this.getOptionSubtitle, - }); - - final String title; - final List optionList; - final List values; - final ValueChanged> onChange; - final String Function(T)? getOptionTitle; - final String Function(T)? getOptionSubtitle; - - Map getSelectedValuesFromOptions() { - return { - for (var item in optionList) item: values.contains(item), - }; - } - - @override - Widget build(BuildContext context) { - final selectedValues = - useState>(getSelectedValuesFromOptions()); - useEffect(() { - selectedValues.value = (getSelectedValuesFromOptions()); - return null; - }, [values, optionList]); - return AlertDialog( - contentPadding: KEdgeInsets.v8.size, - title: Text(title), - content: CheckboxSelectList( - values: selectedValues.value, - onChange: (value) { - final multiSelectMap = selectedValues.value; - multiSelectMap[value.key] = value.value; - selectedValues.value = multiSelectMap; - }, - getTitle: getOptionTitle, - getSubtitle: getOptionSubtitle, - ), - actions: [ - const PopButton(), - ElevatedButton( - onPressed: () { - final multiSelectMap = selectedValues.value; - final selected = multiSelectMap.keys - .where((key) => multiSelectMap[key].ifNull()) - .toList(); - onChange(selected); - }, - child: Text(context.l10n!.save), - ) - ], - ); - } -} - -class CheckboxSelectList extends StatefulWidget { - const CheckboxSelectList({ - super.key, - required this.values, - required this.onChange, - this.getTitle, - this.getSubtitle, - }); - - final Map values; - final ValueChanged> onChange; - final String Function(T)? getTitle; - final String Function(T)? getSubtitle; - - @override - State> createState() => _CheckboxSelectListState(); -} - -class _CheckboxSelectListState extends State> { - Widget getCheckboxListTile( - BuildContext context, - MapEntry value, - ValueChanged onChange, - ) { - return CheckboxListTile( - key: Key(value.key.hashCode.toString()), - activeColor: context.theme.indicatorColor, - title: Text( - widget.getTitle?.call(value.key) ?? value.toString(), - ), - subtitle: widget.getSubtitle != null - ? Text(widget.getSubtitle!(value.key)) - : null, - value: value.value, - onChanged: (value) { - onChange(value.ifNull()); - }, - ); - } - - @override - Widget build(BuildContext context) { - return ConstrainedBox( - constraints: BoxConstraints(maxHeight: context.height * .7), - child: SingleChildScrollView( - child: Column( - mainAxisSize: MainAxisSize.min, - children: widget.values.entries - .map((e) => getCheckboxListTile( - context, - e, - (value) { - setState(() { - widget.onChange(MapEntry(e.key, value)); - }); - }, - )) - .toList(), - ), - ), - ); - } -} diff --git a/lib/src/widgets/pop_button.dart b/lib/src/widgets/pop_button.dart deleted file mode 100644 index eea34d55..00000000 --- a/lib/src/widgets/pop_button.dart +++ /dev/null @@ -1,21 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; - -import '../utils/extensions/custom_extensions.dart'; - -class PopButton extends StatelessWidget { - const PopButton({super.key, this.popText}); - final String? popText; - @override - Widget build(BuildContext context) { - return TextButton( - onPressed: () => Navigator.pop(context), - child: Text(popText ?? context.l10n!.cancel), - ); - } -} diff --git a/lib/src/widgets/radio_list_popup.dart b/lib/src/widgets/radio_list_popup.dart deleted file mode 100644 index 82e8a572..00000000 --- a/lib/src/widgets/radio_list_popup.dart +++ /dev/null @@ -1,94 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; - -import '../constants/app_sizes.dart'; -import '../utils/extensions/custom_extensions.dart'; -import 'pop_button.dart'; - -class RadioListPopup extends StatelessWidget { - const RadioListPopup({ - super.key, - required this.title, - required this.optionList, - required this.value, - required this.onChange, - this.getOptionTitle, - this.getOptionSubtitle, - }); - - final String title; - final List optionList; - final T value; - final ValueChanged onChange; - final String Function(T)? getOptionTitle; - final String Function(T)? getOptionSubtitle; - - @override - Widget build(BuildContext context) { - return AlertDialog( - contentPadding: KEdgeInsets.v8.size, - title: Text(title), - content: RadioList( - optionList: optionList, - value: value, - onChange: onChange, - getTitle: getOptionTitle, - getSubtitle: getOptionSubtitle, - ), - actions: const [PopButton()], - ); - } -} - -class RadioList extends StatelessWidget { - const RadioList({ - super.key, - required this.optionList, - required this.value, - required this.onChange, - this.getTitle, - this.getSubtitle, - }); - - final List optionList; - final T value; - final ValueChanged onChange; - final String Function(T)? getTitle; - final String Function(T)? getSubtitle; - - Widget getRadioListTile(BuildContext context, T option) { - return RadioListTile( - activeColor: context.theme.indicatorColor, - title: Text( - getTitle?.call(option) ?? option.toString(), - ), - subtitle: getSubtitle != null ? (Text(getSubtitle!(option))) : null, - value: option, - groupValue: value, - onChanged: (value) { - if (value != null) { - onChange(value); - } - }, - ); - } - - @override - Widget build(BuildContext context) { - return ConstrainedBox( - constraints: BoxConstraints(maxHeight: context.height * .7), - child: SingleChildScrollView( - child: Column( - mainAxisSize: MainAxisSize.min, - children: - optionList.map((e) => getRadioListTile(context, e)).toList(), - ), - ), - ); - } -} diff --git a/lib/src/widgets/search_field.dart b/lib/src/widgets/search_field.dart deleted file mode 100644 index 4630118f..00000000 --- a/lib/src/widgets/search_field.dart +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:flutter_hooks/flutter_hooks.dart'; - -import '../constants/app_sizes.dart'; - -import '../utils/extensions/custom_extensions.dart'; - -class SearchField extends HookWidget { - const SearchField({ - super.key, - this.onChanged, - this.onClose, - this.initialText, - this.onSubmitted, - this.hintText, - this.autofocus = true, - }); - final String? hintText; - final String? initialText; - final ValueChanged? onChanged; - final ValueChanged? onSubmitted; - final VoidCallback? onClose; - final bool autofocus; - - @override - Widget build(BuildContext context) { - final controller = useTextEditingController(text: initialText); - - final closeIcon = onClose != null - ? IconButton( - onPressed: () { - onClose?.call(); - onChanged?.call(null); - onSubmitted?.call(null); - }, - icon: const Icon(Icons.close_rounded), - ) - : null; - - return SizedBox( - width: context.isLargeTablet ? context.widthScale(scale: .3) : null, - child: Padding( - padding: KEdgeInsets.h16v8.size, - child: TextField( - onChanged: onChanged, - autofocus: autofocus, - controller: controller, - onSubmitted: onSubmitted, - decoration: InputDecoration( - isDense: true, - border: const OutlineInputBorder(), - labelText: hintText ?? context.l10n!.search, - suffixIcon: closeIcon, - ), - ), - ), - ); - } -} diff --git a/lib/src/widgets/server_image.dart b/lib/src/widgets/server_image.dart deleted file mode 100644 index bfe94498..00000000 --- a/lib/src/widgets/server_image.dart +++ /dev/null @@ -1,171 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:cached_network_image/cached_network_image.dart'; -import 'package:cached_network_image_platform_interface/cached_network_image_platform_interface.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter_cache_manager/flutter_cache_manager.dart'; -import 'package:flutter_hooks/flutter_hooks.dart'; -import 'package:hooks_riverpod/hooks_riverpod.dart'; - -import '../constants/app_sizes.dart'; -import '../constants/endpoints.dart'; -import '../constants/enum.dart'; -import '../features/settings/presentation/server/widget/credential_popup/credentials_popup.dart'; -import '../features/settings/widgets/server_port_tile/server_port_tile.dart'; -import '../features/settings/widgets/server_url_tile/server_url_tile.dart'; -import '../global_providers/global_providers.dart'; -import '../utils/extensions/custom_extensions.dart'; -import '../utils/misc/app_utils.dart'; -import 'custom_circular_progress_indicator.dart'; - -class ServerImage extends HookConsumerWidget { - const ServerImage({ - super.key, - required this.imageUrl, - this.size, - this.fit, - this.appendApiToUrl = false, - this.progressIndicatorBuilder, - this.wrapper, - this.showReloadButton = false, - }); - - final String imageUrl; - final Size? size; - final BoxFit? fit; - final bool appendApiToUrl; - final Widget Function(BuildContext, String, DownloadProgress)? - progressIndicatorBuilder; - final Widget Function(Widget child)? wrapper; - final bool showReloadButton; - - @override - Widget build(BuildContext context, WidgetRef ref) { - final key = useState(UniqueKey()); - // Providers - final authType = ref.watch(authTypeKeyProvider); - final basicToken = ref.watch(credentialsProvider); - - final baseApi = "${Endpoints.baseApi( - baseUrl: ref.watch(serverUrlProvider), - port: ref.watch(serverPortProvider), - addPort: ref.watch(serverPortToggleProvider).ifNull(), - appendApiToUrl: appendApiToUrl, - )}" - "$imageUrl"; - - final Map? httpHeaders = - (authType == AuthType.basic && basicToken != null) - ? ({"Authorization": basicToken}) - : null; - - final ImageRenderMethodForWeb renderMethod; - if (authType == AuthType.basic && basicToken != null) { - renderMethod = ImageRenderMethodForWeb.HttpGet; - } else { - renderMethod = ImageRenderMethodForWeb.HtmlImage; - } - - finalProgressIndicatorBuilder( - BuildContext context, String url, DownloadProgress progress) => - AppUtils.wrapIf( - wrapper, - progressIndicatorBuilder?.call(context, url, progress) ?? - const CenterSorayomiShimmerIndicator(), - ); - - Widget errorWidget(BuildContext context, String error, stackTrace) { - if (showReloadButton) { - return AppUtils.wrapIf( - wrapper, - Padding( - padding: KEdgeInsets.a8.size, - child: Center( - child: Column( - mainAxisSize: MainAxisSize.min, - mainAxisAlignment: MainAxisAlignment.center, - children: [ - const Icon( - Icons.broken_image_rounded, - color: Colors.grey, - ), - KSizedBox.h32.size, - TextButton( - onPressed: () { - key.value = (UniqueKey()); - }, - child: Text(context.l10n!.reload), - ), - ], - ), - ), - ), - ); - } else { - return AppUtils.wrapIf( - wrapper, - const Icon( - Icons.broken_image_rounded, - color: Colors.grey, - ), - ); - } - } - - return CachedNetworkImage( - key: key.value, - imageUrl: baseApi, - height: size?.height, - cacheManager: DefaultCacheManager(), - httpHeaders: httpHeaders, - width: size?.width, - fit: fit ?? BoxFit.cover, - imageRenderMethodForWeb: renderMethod, - progressIndicatorBuilder: finalProgressIndicatorBuilder, - errorWidget: errorWidget, - ); - } -} - -class ServerImageWithCpi extends StatelessWidget { - const ServerImageWithCpi({ - super.key, - required this.url, - required this.outerSize, - required this.innerSize, - required this.isLoading, - }); - final bool isLoading; - final Size outerSize; - final Size innerSize; - final String url; - @override - Widget build(BuildContext context) { - if (isLoading) { - return SizedBox.fromSize( - size: outerSize, - child: Stack( - alignment: AlignmentDirectional.center, - children: [ - const Padding( - padding: EdgeInsets.all(4.0), - child: CircularProgressIndicator(strokeWidth: 2), - ), - ServerImage( - imageUrl: url, - size: innerSize, - progressIndicatorBuilder: (context, url, progress) => - const CenterSorayomiShimmerIndicator(), - ) - ], - ), - ); - } else { - return ServerImage(imageUrl: url, size: outerSize); - } - } -} diff --git a/lib/src/widgets/shell/big_screen_navigation_bar.dart b/lib/src/widgets/shell/big_screen_navigation_bar.dart deleted file mode 100644 index 51db62b5..00000000 --- a/lib/src/widgets/shell/big_screen_navigation_bar.dart +++ /dev/null @@ -1,70 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; - -import '../../constants/gen/assets.gen.dart'; -import '../../constants/navigation_bar_data.dart'; -import '../../routes/router_config.dart'; -import '../../utils/extensions/custom_extensions.dart'; - -class BigScreenNavigationBar extends StatelessWidget { - const BigScreenNavigationBar({super.key, required this.selectedScreen}); - - final String selectedScreen; - - NavigationRailDestination getNavigationRailDestination( - BuildContext context, NavigationBarData data) { - return NavigationRailDestination( - icon: Icon(data.icon), - label: Text(data.label(context)), - selectedIcon: Icon(data.activeIcon), - ); - } - - @override - Widget build(BuildContext context) { - final Widget leadingIcon; - if (context.isDesktop) { - leadingIcon = TextButton.icon( - onPressed: () => const AboutRoute().push(context), - icon: ImageIcon( - AssetImage(Assets.icons.darkIcon.path), - size: 48, - ), - label: Text(context.l10n!.appTitle), - style: TextButton.styleFrom( - foregroundColor: context.textTheme.bodyLarge?.color, - ), - ); - } else { - leadingIcon = IconButton( - onPressed: () => const AboutRoute().push(context), - icon: ImageIcon( - AssetImage(Assets.icons.darkIcon.path), - size: 48, - ), - ); - } - - return NavigationRail( - useIndicator: true, - elevation: 5, - extended: context.isDesktop, - labelType: context.isDesktop - ? NavigationRailLabelType.none - : NavigationRailLabelType.all, - leading: leadingIcon, - destinations: NavigationBarData.navList - .map( - (e) => getNavigationRailDestination(context, e)) - .toList(), - selectedIndex: NavigationBarData.indexWherePathOrZero(selectedScreen), - onDestinationSelected: (value) => - NavigationBarData.navList[value].go(context), - ); - } -} diff --git a/lib/src/widgets/shell/shell_screen.dart b/lib/src/widgets/shell/shell_screen.dart deleted file mode 100644 index f3d4e66f..00000000 --- a/lib/src/widgets/shell/shell_screen.dart +++ /dev/null @@ -1,85 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:flutter_hooks/flutter_hooks.dart'; - -import 'package:hooks_riverpod/hooks_riverpod.dart'; -import 'package:pub_semver/pub_semver.dart'; - -import '../../features/about/data/about_repository.dart'; -import '../../features/about/presentation/about/controllers/about_controller.dart'; -import '../../features/about/presentation/about/widget/app_update_dialog.dart'; - -import '../../utils/extensions/custom_extensions.dart'; -import '../../utils/misc/toast/toast.dart'; -import 'big_screen_navigation_bar.dart'; -import 'small_screen_navigation_bar.dart'; - -class ShellScreen extends HookConsumerWidget { - const ShellScreen({ - super.key, - required this.child, - }); - final Widget child; - - Future checkForUpdate({ - required String? title, - required BuildContext context, - required Future> Function() updateCallback, - required Toast toast, - }) async { - final AsyncValue versionResult = await updateCallback(); - toast.close(); - if (context.mounted) { - versionResult.whenOrNull( - data: (version) { - if (version != null) { - appUpdateDialog( - title: title ?? context.l10n!.appTitle, - newRelease: "v${version.canonicalizedVersion}", - context: context, - toast: toast, - ); - } - }, - ); - } - return; - } - - @override - Widget build(BuildContext context, WidgetRef ref) { - useEffect(() { - Future.microtask( - () => checkForUpdate( - title: ref.read(packageInfoProvider).appName, - context: context, - updateCallback: ref.read(aboutRepositoryProvider).checkUpdate, - toast: ref.read(toastProvider(context)), - ), - ); - return; - }, []); - if (context.isTablet) { - return Scaffold( - body: Row( - children: [ - BigScreenNavigationBar(selectedScreen: context.location), - Expanded(child: child), - ], - ), - ); - } else { - return Scaffold( - body: child, - floatingActionButtonLocation: FloatingActionButtonLocation.centerFloat, - bottomNavigationBar: - SmallScreenNavigationBar(selectedScreen: context.location), - ); - } - } -} diff --git a/lib/src/widgets/shell/small_screen_navigation_bar.dart b/lib/src/widgets/shell/small_screen_navigation_bar.dart deleted file mode 100644 index e98a967b..00000000 --- a/lib/src/widgets/shell/small_screen_navigation_bar.dart +++ /dev/null @@ -1,46 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; - -import '../../constants/navigation_bar_data.dart'; - -class SmallScreenNavigationBar extends StatelessWidget { - const SmallScreenNavigationBar({super.key, required this.selectedScreen}); - - final String selectedScreen; - - NavigationDestination getNavigationDestination( - BuildContext context, NavigationBarData data) { - return NavigationDestination( - icon: Icon(data.icon), - label: data.label(context), - selectedIcon: Icon(data.activeIcon), - tooltip: data.label(context), - ); - } - - @override - Widget build(BuildContext context) { - return NavigationBarTheme( - data: NavigationBarThemeData( - labelTextStyle: MaterialStateProperty.all( - const TextStyle(overflow: TextOverflow.ellipsis), - ), - ), - child: NavigationBar( - selectedIndex: NavigationBarData.indexWherePathOrZero(selectedScreen), - onDestinationSelected: (value) => - NavigationBarData.navList[value].go(context), - destinations: NavigationBarData.navList - .map( - (e) => getNavigationDestination(context, e), - ) - .toList(), - ), - ); - } -} diff --git a/lib/src/widgets/sort_list_tile.dart b/lib/src/widgets/sort_list_tile.dart deleted file mode 100644 index 307566d9..00000000 --- a/lib/src/widgets/sort_list_tile.dart +++ /dev/null @@ -1,41 +0,0 @@ -// Copyright (c) 2022 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; - -import '../utils/extensions/custom_extensions.dart'; - -class SortListTile extends StatelessWidget { - const SortListTile({ - super.key, - required this.ascending, - required this.selected, - required this.onChanged, - required this.onSelected, - this.title, - this.subtitle, - }); - final bool ascending; - final bool selected; - final ValueChanged onChanged; - final VoidCallback onSelected; - final Widget? title; - final Widget? subtitle; - @override - Widget build(BuildContext context) { - IconData icon = - ascending ? Icons.arrow_upward_rounded : Icons.arrow_downward_rounded; - - return ListTile( - leading: selected - ? Icon(icon, color: context.theme.indicatorColor) - : SizedBox(width: context.theme.iconTheme.size), - title: title, - subtitle: subtitle, - onTap: () => selected ? onChanged(!ascending) : onSelected(), - ); - } -} diff --git a/lib/src/widgets/text_field_popup.dart b/lib/src/widgets/text_field_popup.dart deleted file mode 100644 index dce5cdec..00000000 --- a/lib/src/widgets/text_field_popup.dart +++ /dev/null @@ -1,74 +0,0 @@ -// Copyright (c) 2023 Contributors to the Suwayomi project -// -// This Source Code Form is subject to the terms of the Mozilla Public -// License, v. 2.0. If a copy of the MPL was not distributed with this -// file, You can obtain one at http://mozilla.org/MPL/2.0/. - -import 'package:flutter/material.dart'; -import 'package:flutter_hooks/flutter_hooks.dart'; -import 'package:go_router/go_router.dart'; - -import '../constants/app_sizes.dart'; -import '../utils/extensions/custom_extensions.dart'; -import 'pop_button.dart'; - -class TextFieldPopup extends HookWidget { - const TextFieldPopup({ - super.key, - required this.title, - required this.onChange, - this.subtitle, - this.initialValue, - }); - - final String title; - final String? subtitle; - final String? initialValue; - final ValueChanged onChange; - - @override - Widget build(BuildContext context) { - final textEditingController = useTextEditingController(text: initialValue); - return AlertDialog( - contentPadding: KEdgeInsets.a16.size, - title: Text(title), - content: Padding( - padding: KEdgeInsets.h8.size, - child: Column( - mainAxisSize: MainAxisSize.min, - children: [ - if (subtitle.isNotBlank) - Padding( - padding: KEdgeInsets.v4.size, - child: Text(subtitle!), - ), - Padding( - padding: KEdgeInsets.v16.size, - child: TextField( - autofocus: true, - onSubmitted: (value) { - onChange(value); - context.pop(); - }, - controller: textEditingController, - decoration: InputDecoration( - border: const OutlineInputBorder(), - hintText: title, - ), - ), - ), - ], - ), - ), - actions: [ - const PopButton(), - ElevatedButton( - onPressed: () { - onChange(textEditingController.text); - }, - child: Text(context.l10n!.save), - ) - ], - ); - } -} diff --git a/linux/.gitignore b/linux/.gitignore deleted file mode 100644 index d3896c98..00000000 --- a/linux/.gitignore +++ /dev/null @@ -1 +0,0 @@ -flutter/ephemeral diff --git a/linux/CMakeLists.txt b/linux/CMakeLists.txt deleted file mode 100644 index a8267ef2..00000000 --- a/linux/CMakeLists.txt +++ /dev/null @@ -1,138 +0,0 @@ -# Project-level configuration. -cmake_minimum_required(VERSION 3.10) -project(runner LANGUAGES CXX) - -# The name of the executable created for the application. Change this to change -# the on-disk name of your application. -set(BINARY_NAME "tachidesk_sorayomi") -# The unique GTK application identifier for this application. See: -# https://wiki.gnome.org/HowDoI/ChooseApplicationID -set(APPLICATION_ID "com.suwayomi.tachidesk_sorayomi") - -# Explicitly opt in to modern CMake behaviors to avoid warnings with recent -# versions of CMake. -cmake_policy(SET CMP0063 NEW) - -# Load bundled libraries from the lib/ directory relative to the binary. -set(CMAKE_INSTALL_RPATH "$ORIGIN/lib") - -# Root filesystem for cross-building. -if(FLUTTER_TARGET_PLATFORM_SYSROOT) - set(CMAKE_SYSROOT ${FLUTTER_TARGET_PLATFORM_SYSROOT}) - set(CMAKE_FIND_ROOT_PATH ${CMAKE_SYSROOT}) - set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER) - set(CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY) - set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY) - set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY) -endif() - -# Define build configuration options. -if(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES) - set(CMAKE_BUILD_TYPE "Debug" CACHE - STRING "Flutter build mode" FORCE) - set_property(CACHE CMAKE_BUILD_TYPE PROPERTY STRINGS - "Debug" "Profile" "Release") -endif() - -# Compilation settings that should be applied to most targets. -# -# Be cautious about adding new options here, as plugins use this function by -# default. In most cases, you should add new options to specific targets instead -# of modifying this function. -function(APPLY_STANDARD_SETTINGS TARGET) - target_compile_features(${TARGET} PUBLIC cxx_std_14) - target_compile_options(${TARGET} PRIVATE -Wall -Werror) - target_compile_options(${TARGET} PRIVATE "$<$>:-O3>") - target_compile_definitions(${TARGET} PRIVATE "$<$>:NDEBUG>") -endfunction() - -# Flutter library and tool build rules. -set(FLUTTER_MANAGED_DIR "${CMAKE_CURRENT_SOURCE_DIR}/flutter") -add_subdirectory(${FLUTTER_MANAGED_DIR}) - -# System-level dependencies. -find_package(PkgConfig REQUIRED) -pkg_check_modules(GTK REQUIRED IMPORTED_TARGET gtk+-3.0) - -add_definitions(-DAPPLICATION_ID="${APPLICATION_ID}") - -# Define the application target. To change its name, change BINARY_NAME above, -# not the value here, or `flutter run` will no longer work. -# -# Any new source files that you add to the application should be added here. -add_executable(${BINARY_NAME} - "main.cc" - "my_application.cc" - "${FLUTTER_MANAGED_DIR}/generated_plugin_registrant.cc" -) - -# Apply the standard set of build settings. This can be removed for applications -# that need different build settings. -apply_standard_settings(${BINARY_NAME}) - -# Add dependency libraries. Add any application-specific dependencies here. -target_link_libraries(${BINARY_NAME} PRIVATE flutter) -target_link_libraries(${BINARY_NAME} PRIVATE PkgConfig::GTK) - -# Run the Flutter tool portions of the build. This must not be removed. -add_dependencies(${BINARY_NAME} flutter_assemble) - -# Only the install-generated bundle's copy of the executable will launch -# correctly, since the resources must in the right relative locations. To avoid -# people trying to run the unbundled copy, put it in a subdirectory instead of -# the default top-level location. -set_target_properties(${BINARY_NAME} - PROPERTIES - RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/intermediates_do_not_run" -) - -# Generated plugin build rules, which manage building the plugins and adding -# them to the application. -include(flutter/generated_plugins.cmake) - - -# === Installation === -# By default, "installing" just makes a relocatable bundle in the build -# directory. -set(BUILD_BUNDLE_DIR "${PROJECT_BINARY_DIR}/bundle") -if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT) - set(CMAKE_INSTALL_PREFIX "${BUILD_BUNDLE_DIR}" CACHE PATH "..." FORCE) -endif() - -# Start with a clean build bundle directory every time. -install(CODE " - file(REMOVE_RECURSE \"${BUILD_BUNDLE_DIR}/\") - " COMPONENT Runtime) - -set(INSTALL_BUNDLE_DATA_DIR "${CMAKE_INSTALL_PREFIX}/data") -set(INSTALL_BUNDLE_LIB_DIR "${CMAKE_INSTALL_PREFIX}/lib") - -install(TARGETS ${BINARY_NAME} RUNTIME DESTINATION "${CMAKE_INSTALL_PREFIX}" - COMPONENT Runtime) - -install(FILES "${FLUTTER_ICU_DATA_FILE}" DESTINATION "${INSTALL_BUNDLE_DATA_DIR}" - COMPONENT Runtime) - -install(FILES "${FLUTTER_LIBRARY}" DESTINATION "${INSTALL_BUNDLE_LIB_DIR}" - COMPONENT Runtime) - -foreach(bundled_library ${PLUGIN_BUNDLED_LIBRARIES}) - install(FILES "${bundled_library}" - DESTINATION "${INSTALL_BUNDLE_LIB_DIR}" - COMPONENT Runtime) -endforeach(bundled_library) - -# Fully re-copy the assets directory on each build to avoid having stale files -# from a previous install. -set(FLUTTER_ASSET_DIR_NAME "flutter_assets") -install(CODE " - file(REMOVE_RECURSE \"${INSTALL_BUNDLE_DATA_DIR}/${FLUTTER_ASSET_DIR_NAME}\") - " COMPONENT Runtime) -install(DIRECTORY "${PROJECT_BUILD_DIR}/${FLUTTER_ASSET_DIR_NAME}" - DESTINATION "${INSTALL_BUNDLE_DATA_DIR}" COMPONENT Runtime) - -# Install the AOT library on non-Debug builds only. -if(NOT CMAKE_BUILD_TYPE MATCHES "Debug") - install(FILES "${AOT_LIBRARY}" DESTINATION "${INSTALL_BUNDLE_LIB_DIR}" - COMPONENT Runtime) -endif() diff --git a/linux/flutter/CMakeLists.txt b/linux/flutter/CMakeLists.txt deleted file mode 100644 index d5bd0164..00000000 --- a/linux/flutter/CMakeLists.txt +++ /dev/null @@ -1,88 +0,0 @@ -# This file controls Flutter-level build steps. It should not be edited. -cmake_minimum_required(VERSION 3.10) - -set(EPHEMERAL_DIR "${CMAKE_CURRENT_SOURCE_DIR}/ephemeral") - -# Configuration provided via flutter tool. -include(${EPHEMERAL_DIR}/generated_config.cmake) - -# TODO: Move the rest of this into files in ephemeral. See -# https://github.com/flutter/flutter/issues/57146. - -# Serves the same purpose as list(TRANSFORM ... PREPEND ...), -# which isn't available in 3.10. -function(list_prepend LIST_NAME PREFIX) - set(NEW_LIST "") - foreach(element ${${LIST_NAME}}) - list(APPEND NEW_LIST "${PREFIX}${element}") - endforeach(element) - set(${LIST_NAME} "${NEW_LIST}" PARENT_SCOPE) -endfunction() - -# === Flutter Library === -# System-level dependencies. -find_package(PkgConfig REQUIRED) -pkg_check_modules(GTK REQUIRED IMPORTED_TARGET gtk+-3.0) -pkg_check_modules(GLIB REQUIRED IMPORTED_TARGET glib-2.0) -pkg_check_modules(GIO REQUIRED IMPORTED_TARGET gio-2.0) - -set(FLUTTER_LIBRARY "${EPHEMERAL_DIR}/libflutter_linux_gtk.so") - -# Published to parent scope for install step. -set(FLUTTER_LIBRARY ${FLUTTER_LIBRARY} PARENT_SCOPE) -set(FLUTTER_ICU_DATA_FILE "${EPHEMERAL_DIR}/icudtl.dat" PARENT_SCOPE) -set(PROJECT_BUILD_DIR "${PROJECT_DIR}/build/" PARENT_SCOPE) -set(AOT_LIBRARY "${PROJECT_DIR}/build/lib/libapp.so" PARENT_SCOPE) - -list(APPEND FLUTTER_LIBRARY_HEADERS - "fl_basic_message_channel.h" - "fl_binary_codec.h" - "fl_binary_messenger.h" - "fl_dart_project.h" - "fl_engine.h" - "fl_json_message_codec.h" - "fl_json_method_codec.h" - "fl_message_codec.h" - "fl_method_call.h" - "fl_method_channel.h" - "fl_method_codec.h" - "fl_method_response.h" - "fl_plugin_registrar.h" - "fl_plugin_registry.h" - "fl_standard_message_codec.h" - "fl_standard_method_codec.h" - "fl_string_codec.h" - "fl_value.h" - "fl_view.h" - "flutter_linux.h" -) -list_prepend(FLUTTER_LIBRARY_HEADERS "${EPHEMERAL_DIR}/flutter_linux/") -add_library(flutter INTERFACE) -target_include_directories(flutter INTERFACE - "${EPHEMERAL_DIR}" -) -target_link_libraries(flutter INTERFACE "${FLUTTER_LIBRARY}") -target_link_libraries(flutter INTERFACE - PkgConfig::GTK - PkgConfig::GLIB - PkgConfig::GIO -) -add_dependencies(flutter flutter_assemble) - -# === Flutter tool backend === -# _phony_ is a non-existent file to force this command to run every time, -# since currently there's no way to get a full input/output list from the -# flutter tool. -add_custom_command( - OUTPUT ${FLUTTER_LIBRARY} ${FLUTTER_LIBRARY_HEADERS} - ${CMAKE_CURRENT_BINARY_DIR}/_phony_ - COMMAND ${CMAKE_COMMAND} -E env - ${FLUTTER_TOOL_ENVIRONMENT} - "${FLUTTER_ROOT}/packages/flutter_tools/bin/tool_backend.sh" - ${FLUTTER_TARGET_PLATFORM} ${CMAKE_BUILD_TYPE} - VERBATIM -) -add_custom_target(flutter_assemble DEPENDS - "${FLUTTER_LIBRARY}" - ${FLUTTER_LIBRARY_HEADERS} -) diff --git a/linux/flutter/generated_plugin_registrant.cc b/linux/flutter/generated_plugin_registrant.cc deleted file mode 100644 index f6f23bfe..00000000 --- a/linux/flutter/generated_plugin_registrant.cc +++ /dev/null @@ -1,15 +0,0 @@ -// -// Generated file. Do not edit. -// - -// clang-format off - -#include "generated_plugin_registrant.h" - -#include - -void fl_register_plugins(FlPluginRegistry* registry) { - 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/linux/flutter/generated_plugin_registrant.h b/linux/flutter/generated_plugin_registrant.h deleted file mode 100644 index e0f0a47b..00000000 --- a/linux/flutter/generated_plugin_registrant.h +++ /dev/null @@ -1,15 +0,0 @@ -// -// Generated file. Do not edit. -// - -// clang-format off - -#ifndef GENERATED_PLUGIN_REGISTRANT_ -#define GENERATED_PLUGIN_REGISTRANT_ - -#include - -// Registers Flutter plugins. -void fl_register_plugins(FlPluginRegistry* registry); - -#endif // GENERATED_PLUGIN_REGISTRANT_ diff --git a/linux/flutter/generated_plugins.cmake b/linux/flutter/generated_plugins.cmake deleted file mode 100644 index f16b4c34..00000000 --- a/linux/flutter/generated_plugins.cmake +++ /dev/null @@ -1,24 +0,0 @@ -# -# Generated file, do not edit. -# - -list(APPEND FLUTTER_PLUGIN_LIST - url_launcher_linux -) - -list(APPEND FLUTTER_FFI_PLUGIN_LIST -) - -set(PLUGIN_BUNDLED_LIBRARIES) - -foreach(plugin ${FLUTTER_PLUGIN_LIST}) - add_subdirectory(flutter/ephemeral/.plugin_symlinks/${plugin}/linux plugins/${plugin}) - target_link_libraries(${BINARY_NAME} PRIVATE ${plugin}_plugin) - list(APPEND PLUGIN_BUNDLED_LIBRARIES $) - list(APPEND PLUGIN_BUNDLED_LIBRARIES ${${plugin}_bundled_libraries}) -endforeach(plugin) - -foreach(ffi_plugin ${FLUTTER_FFI_PLUGIN_LIST}) - add_subdirectory(flutter/ephemeral/.plugin_symlinks/${ffi_plugin}/linux plugins/${ffi_plugin}) - list(APPEND PLUGIN_BUNDLED_LIBRARIES ${${ffi_plugin}_bundled_libraries}) -endforeach(ffi_plugin) diff --git a/linux/main.cc b/linux/main.cc deleted file mode 100644 index e7c5c543..00000000 --- a/linux/main.cc +++ /dev/null @@ -1,6 +0,0 @@ -#include "my_application.h" - -int main(int argc, char** argv) { - g_autoptr(MyApplication) app = my_application_new(); - return g_application_run(G_APPLICATION(app), argc, argv); -} diff --git a/linux/my_application.cc b/linux/my_application.cc deleted file mode 100644 index aec1c5ae..00000000 --- a/linux/my_application.cc +++ /dev/null @@ -1,104 +0,0 @@ -#include "my_application.h" - -#include -#ifdef GDK_WINDOWING_X11 -#include -#endif - -#include "flutter/generated_plugin_registrant.h" - -struct _MyApplication { - GtkApplication parent_instance; - char** dart_entrypoint_arguments; -}; - -G_DEFINE_TYPE(MyApplication, my_application, GTK_TYPE_APPLICATION) - -// Implements GApplication::activate. -static void my_application_activate(GApplication* application) { - MyApplication* self = MY_APPLICATION(application); - GtkWindow* window = - GTK_WINDOW(gtk_application_window_new(GTK_APPLICATION(application))); - - // Use a header bar when running in GNOME as this is the common style used - // by applications and is the setup most users will be using (e.g. Ubuntu - // desktop). - // If running on X and not using GNOME then just use a traditional title bar - // in case the window manager does more exotic layout, e.g. tiling. - // If running on Wayland assume the header bar will work (may need changing - // if future cases occur). - gboolean use_header_bar = TRUE; -#ifdef GDK_WINDOWING_X11 - GdkScreen* screen = gtk_window_get_screen(window); - if (GDK_IS_X11_SCREEN(screen)) { - const gchar* wm_name = gdk_x11_screen_get_window_manager_name(screen); - if (g_strcmp0(wm_name, "GNOME Shell") != 0) { - use_header_bar = FALSE; - } - } -#endif - if (use_header_bar) { - GtkHeaderBar* header_bar = GTK_HEADER_BAR(gtk_header_bar_new()); - gtk_widget_show(GTK_WIDGET(header_bar)); - gtk_header_bar_set_title(header_bar, "Tachidesk Sorayomi"); - gtk_header_bar_set_show_close_button(header_bar, TRUE); - gtk_window_set_titlebar(window, GTK_WIDGET(header_bar)); - } else { - gtk_window_set_title(window, "Tachidesk Sorayomi"); - } - - gtk_window_set_default_size(window, 1280, 720); - gtk_widget_show(GTK_WIDGET(window)); - - g_autoptr(FlDartProject) project = fl_dart_project_new(); - fl_dart_project_set_dart_entrypoint_arguments(project, self->dart_entrypoint_arguments); - - FlView* view = fl_view_new(project); - gtk_widget_show(GTK_WIDGET(view)); - gtk_container_add(GTK_CONTAINER(window), GTK_WIDGET(view)); - - fl_register_plugins(FL_PLUGIN_REGISTRY(view)); - - gtk_widget_grab_focus(GTK_WIDGET(view)); -} - -// Implements GApplication::local_command_line. -static gboolean my_application_local_command_line(GApplication* application, gchar*** arguments, int* exit_status) { - MyApplication* self = MY_APPLICATION(application); - // Strip out the first argument as it is the binary name. - self->dart_entrypoint_arguments = g_strdupv(*arguments + 1); - - g_autoptr(GError) error = nullptr; - if (!g_application_register(application, nullptr, &error)) { - g_warning("Failed to register: %s", error->message); - *exit_status = 1; - return TRUE; - } - - g_application_activate(application); - *exit_status = 0; - - return TRUE; -} - -// Implements GObject::dispose. -static void my_application_dispose(GObject* object) { - MyApplication* self = MY_APPLICATION(object); - g_clear_pointer(&self->dart_entrypoint_arguments, g_strfreev); - G_OBJECT_CLASS(my_application_parent_class)->dispose(object); -} - -static void my_application_class_init(MyApplicationClass* klass) { - G_APPLICATION_CLASS(klass)->activate = my_application_activate; - G_APPLICATION_CLASS(klass)->local_command_line = my_application_local_command_line; - G_OBJECT_CLASS(klass)->dispose = my_application_dispose; -} - -static void my_application_init(MyApplication* self) {} - -MyApplication* my_application_new() { - return MY_APPLICATION(g_object_new(my_application_get_type(), - "application-id", APPLICATION_ID, - "flags", G_APPLICATION_NON_UNIQUE, - nullptr)); -} diff --git a/linux/my_application.h b/linux/my_application.h deleted file mode 100644 index 72271d5e..00000000 --- a/linux/my_application.h +++ /dev/null @@ -1,18 +0,0 @@ -#ifndef FLUTTER_MY_APPLICATION_H_ -#define FLUTTER_MY_APPLICATION_H_ - -#include - -G_DECLARE_FINAL_TYPE(MyApplication, my_application, MY, APPLICATION, - GtkApplication) - -/** - * my_application_new: - * - * Creates a new Flutter-based application. - * - * Returns: a new #MyApplication. - */ -MyApplication* my_application_new(); - -#endif // FLUTTER_MY_APPLICATION_H_ diff --git a/macos/.gitignore b/macos/.gitignore deleted file mode 100644 index 746adbb6..00000000 --- a/macos/.gitignore +++ /dev/null @@ -1,7 +0,0 @@ -# Flutter-related -**/Flutter/ephemeral/ -**/Pods/ - -# Xcode-related -**/dgph -**/xcuserdata/ diff --git a/macos/Flutter/Flutter-Debug.xcconfig b/macos/Flutter/Flutter-Debug.xcconfig deleted file mode 100644 index 4b81f9b2..00000000 --- a/macos/Flutter/Flutter-Debug.xcconfig +++ /dev/null @@ -1,2 +0,0 @@ -#include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig" -#include "ephemeral/Flutter-Generated.xcconfig" diff --git a/macos/Flutter/Flutter-Release.xcconfig b/macos/Flutter/Flutter-Release.xcconfig deleted file mode 100644 index 5caa9d15..00000000 --- a/macos/Flutter/Flutter-Release.xcconfig +++ /dev/null @@ -1,2 +0,0 @@ -#include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig" -#include "ephemeral/Flutter-Generated.xcconfig" diff --git a/macos/Flutter/GeneratedPluginRegistrant.swift b/macos/Flutter/GeneratedPluginRegistrant.swift deleted file mode 100644 index 916bd8c6..00000000 --- a/macos/Flutter/GeneratedPluginRegistrant.swift +++ /dev/null @@ -1,22 +0,0 @@ -// -// Generated file. Do not edit. -// - -import FlutterMacOS -import Foundation - -import network_info_plus -import package_info_plus -import path_provider_foundation -import shared_preferences_foundation -import sqflite -import url_launcher_macos - -func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) { - NetworkInfoPlusPlugin.register(with: registry.registrar(forPlugin: "NetworkInfoPlusPlugin")) - FPPPackageInfoPlusPlugin.register(with: registry.registrar(forPlugin: "FPPPackageInfoPlusPlugin")) - PathProviderPlugin.register(with: registry.registrar(forPlugin: "PathProviderPlugin")) - SharedPreferencesPlugin.register(with: registry.registrar(forPlugin: "SharedPreferencesPlugin")) - SqflitePlugin.register(with: registry.registrar(forPlugin: "SqflitePlugin")) - UrlLauncherPlugin.register(with: registry.registrar(forPlugin: "UrlLauncherPlugin")) -} diff --git a/macos/Podfile b/macos/Podfile deleted file mode 100644 index 04ed3562..00000000 --- a/macos/Podfile +++ /dev/null @@ -1,43 +0,0 @@ -platform :osx, '10.15' - -# 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! - use_modular_headers! - - flutter_install_all_macos_pods File.dirname(File.realpath(__FILE__)) -end - -post_install do |installer| - installer.pods_project.targets.each do |target| - flutter_additional_macos_build_settings(target) - target.build_configurations.each do |config| - config.build_settings['MACOSX_DEPLOYMENT_TARGET'] = '10.15' - end - end -end diff --git a/macos/Podfile.lock b/macos/Podfile.lock deleted file mode 100644 index 82b4bbcf..00000000 --- a/macos/Podfile.lock +++ /dev/null @@ -1,63 +0,0 @@ -PODS: - - FlutterMacOS (1.0.0) - - FMDB (2.7.5): - - FMDB/standard (= 2.7.5) - - FMDB/standard (2.7.5) - - network_info_plus (0.0.1): - - FlutterMacOS - - package_info_plus (0.0.1): - - FlutterMacOS - - path_provider_foundation (0.0.1): - - Flutter - - FlutterMacOS - - shared_preferences_foundation (0.0.1): - - Flutter - - FlutterMacOS - - sqflite (0.0.2): - - FlutterMacOS - - FMDB (>= 2.7.5) - - url_launcher_macos (0.0.1): - - FlutterMacOS - -DEPENDENCIES: - - FlutterMacOS (from `Flutter/ephemeral`) - - network_info_plus (from `Flutter/ephemeral/.symlinks/plugins/network_info_plus/macos`) - - package_info_plus (from `Flutter/ephemeral/.symlinks/plugins/package_info_plus/macos`) - - path_provider_foundation (from `Flutter/ephemeral/.symlinks/plugins/path_provider_foundation/darwin`) - - shared_preferences_foundation (from `Flutter/ephemeral/.symlinks/plugins/shared_preferences_foundation/darwin`) - - sqflite (from `Flutter/ephemeral/.symlinks/plugins/sqflite/macos`) - - url_launcher_macos (from `Flutter/ephemeral/.symlinks/plugins/url_launcher_macos/macos`) - -SPEC REPOS: - trunk: - - FMDB - -EXTERNAL SOURCES: - FlutterMacOS: - :path: Flutter/ephemeral - network_info_plus: - :path: Flutter/ephemeral/.symlinks/plugins/network_info_plus/macos - package_info_plus: - :path: Flutter/ephemeral/.symlinks/plugins/package_info_plus/macos - path_provider_foundation: - :path: Flutter/ephemeral/.symlinks/plugins/path_provider_foundation/darwin - shared_preferences_foundation: - :path: Flutter/ephemeral/.symlinks/plugins/shared_preferences_foundation/darwin - sqflite: - :path: Flutter/ephemeral/.symlinks/plugins/sqflite/macos - url_launcher_macos: - :path: Flutter/ephemeral/.symlinks/plugins/url_launcher_macos/macos - -SPEC CHECKSUMS: - FlutterMacOS: 8f6f14fa908a6fb3fba0cd85dbd81ec4b251fb24 - FMDB: 2ce00b547f966261cd18927a3ddb07cb6f3db82a - network_info_plus: f4fbc7877ab7b3294500d9441dfa53cd54972d05 - package_info_plus: 02d7a575e80f194102bef286361c6c326e4c29ce - path_provider_foundation: 29f094ae23ebbca9d3d0cec13889cd9060c0e943 - shared_preferences_foundation: 5b919d13b803cadd15ed2dc053125c68730e5126 - sqflite: a5789cceda41d54d23f31d6de539d65bb14100ea - url_launcher_macos: d2691c7dd33ed713bf3544850a623080ec693d95 - -PODFILE CHECKSUM: dac0ddf03d136db544afc27b87cc6c08492e67b9 - -COCOAPODS: 1.12.1 diff --git a/macos/Runner.xcodeproj/project.pbxproj b/macos/Runner.xcodeproj/project.pbxproj deleted file mode 100644 index c6d22fcc..00000000 --- a/macos/Runner.xcodeproj/project.pbxproj +++ /dev/null @@ -1,632 +0,0 @@ -// !$*UTF8*$! -{ - archiveVersion = 1; - classes = { - }; - objectVersion = 54; - objects = { - -/* Begin PBXAggregateTarget section */ - 33CC111A2044C6BA0003C045 /* Flutter Assemble */ = { - isa = PBXAggregateTarget; - buildConfigurationList = 33CC111B2044C6BA0003C045 /* Build configuration list for PBXAggregateTarget "Flutter Assemble" */; - buildPhases = ( - 33CC111E2044C6BF0003C045 /* ShellScript */, - ); - dependencies = ( - ); - name = "Flutter Assemble"; - productName = FLX; - }; -/* End PBXAggregateTarget section */ - -/* Begin PBXBuildFile section */ - 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 */; }; - 4688A129176B4CAD9077EE5B /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F69CE2E65DD82F72C58A2E1D /* Pods_Runner.framework */; }; -/* End PBXBuildFile section */ - -/* Begin PBXContainerItemProxy section */ - 33CC111F2044C79F0003C045 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 33CC10E52044A3C60003C045 /* Project object */; - proxyType = 1; - remoteGlobalIDString = 33CC111A2044C6BA0003C045; - remoteInfo = FLX; - }; -/* End PBXContainerItemProxy section */ - -/* Begin PBXCopyFilesBuildPhase section */ - 33CC110E2044A8840003C045 /* Bundle Framework */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = ""; - dstSubfolderSpec = 10; - files = ( - ); - name = "Bundle Framework"; - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXCopyFilesBuildPhase section */ - -/* Begin PBXFileReference section */ - 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 /* Tachidesk Sorayomi.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "Tachidesk Sorayomi.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 = ""; }; - 33CC10F72044A3C60003C045 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = Info.plist; path = Runner/Info.plist; sourceTree = ""; }; - 33CC11122044BFA00003C045 /* MainFlutterWindow.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MainFlutterWindow.swift; sourceTree = ""; }; - 33CEB47222A05771004F2AC0 /* Flutter-Debug.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = "Flutter-Debug.xcconfig"; sourceTree = ""; }; - 33CEB47422A05771004F2AC0 /* Flutter-Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = "Flutter-Release.xcconfig"; sourceTree = ""; }; - 33CEB47722A0578A004F2AC0 /* Flutter-Generated.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = "Flutter-Generated.xcconfig"; path = "ephemeral/Flutter-Generated.xcconfig"; sourceTree = ""; }; - 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 = ""; }; - 35303A7776566002C2574CCD /* 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 = ""; }; - 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Release.xcconfig; sourceTree = ""; }; - 80717BAC3F5560B924C7C3E7 /* 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 = ""; }; - 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = Debug.xcconfig; sourceTree = ""; }; - C4C0864A133190F7D69BEF45 /* 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 = ""; }; - F69CE2E65DD82F72C58A2E1D /* Pods_Runner.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Runner.framework; sourceTree = BUILT_PRODUCTS_DIR; }; -/* End PBXFileReference section */ - -/* Begin PBXFrameworksBuildPhase section */ - 33CC10EA2044A3C60003C045 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 4688A129176B4CAD9077EE5B /* Pods_Runner.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXFrameworksBuildPhase section */ - -/* Begin PBXGroup section */ - 33BA886A226E78AF003329D5 /* Configs */ = { - isa = PBXGroup; - children = ( - 33E5194F232828860026EE4D /* AppInfo.xcconfig */, - 9740EEB21CF90195004384FC /* Debug.xcconfig */, - 7AFA3C8E1D35360C0083082E /* Release.xcconfig */, - 333000ED22D3DE5D00554162 /* Warnings.xcconfig */, - ); - path = Configs; - sourceTree = ""; - }; - 33CC10E42044A3C60003C045 = { - isa = PBXGroup; - children = ( - 33FAB671232836740065AC1E /* Runner */, - 33CEB47122A05771004F2AC0 /* Flutter */, - 33CC10EE2044A3C60003C045 /* Products */, - D73912EC22F37F3D000D13A0 /* Frameworks */, - 3617EF421E9461F56BE412D6 /* Pods */, - ); - sourceTree = ""; - }; - 33CC10EE2044A3C60003C045 /* Products */ = { - isa = PBXGroup; - children = ( - 33CC10ED2044A3C60003C045 /* Tachidesk Sorayomi.app */, - ); - name = Products; - sourceTree = ""; - }; - 33CC11242044D66E0003C045 /* Resources */ = { - isa = PBXGroup; - children = ( - 33CC10F22044A3C60003C045 /* Assets.xcassets */, - 33CC10F42044A3C60003C045 /* MainMenu.xib */, - 33CC10F72044A3C60003C045 /* Info.plist */, - ); - name = Resources; - path = ..; - sourceTree = ""; - }; - 33CEB47122A05771004F2AC0 /* Flutter */ = { - isa = PBXGroup; - children = ( - 335BBD1A22A9A15E00E9071D /* GeneratedPluginRegistrant.swift */, - 33CEB47222A05771004F2AC0 /* Flutter-Debug.xcconfig */, - 33CEB47422A05771004F2AC0 /* Flutter-Release.xcconfig */, - 33CEB47722A0578A004F2AC0 /* Flutter-Generated.xcconfig */, - ); - path = Flutter; - sourceTree = ""; - }; - 33FAB671232836740065AC1E /* Runner */ = { - isa = PBXGroup; - children = ( - 33CC10F02044A3C60003C045 /* AppDelegate.swift */, - 33CC11122044BFA00003C045 /* MainFlutterWindow.swift */, - 33E51913231747F40026EE4D /* DebugProfile.entitlements */, - 33E51914231749380026EE4D /* Release.entitlements */, - 33CC11242044D66E0003C045 /* Resources */, - 33BA886A226E78AF003329D5 /* Configs */, - ); - path = Runner; - sourceTree = ""; - }; - 3617EF421E9461F56BE412D6 /* Pods */ = { - isa = PBXGroup; - children = ( - 35303A7776566002C2574CCD /* Pods-Runner.debug.xcconfig */, - 80717BAC3F5560B924C7C3E7 /* Pods-Runner.release.xcconfig */, - C4C0864A133190F7D69BEF45 /* Pods-Runner.profile.xcconfig */, - ); - path = Pods; - sourceTree = ""; - }; - D73912EC22F37F3D000D13A0 /* Frameworks */ = { - isa = PBXGroup; - children = ( - F69CE2E65DD82F72C58A2E1D /* Pods_Runner.framework */, - ); - name = Frameworks; - sourceTree = ""; - }; -/* End PBXGroup section */ - -/* Begin PBXNativeTarget section */ - 33CC10EC2044A3C60003C045 /* Runner */ = { - isa = PBXNativeTarget; - buildConfigurationList = 33CC10FB2044A3C60003C045 /* Build configuration list for PBXNativeTarget "Runner" */; - buildPhases = ( - B2ABE0F0CD9BC8013F160CAD /* [CP] Check Pods Manifest.lock */, - 33CC10E92044A3C60003C045 /* Sources */, - 33CC10EA2044A3C60003C045 /* Frameworks */, - 33CC10EB2044A3C60003C045 /* Resources */, - 33CC110E2044A8840003C045 /* Bundle Framework */, - 3399D490228B24CF009A79C7 /* ShellScript */, - 35B95B845CB74EE50AE76911 /* [CP] Embed Pods Frameworks */, - ); - buildRules = ( - ); - dependencies = ( - 33CC11202044C79F0003C045 /* PBXTargetDependency */, - ); - name = Runner; - productName = Runner; - productReference = 33CC10ED2044A3C60003C045 /* Tachidesk Sorayomi.app */; - productType = "com.apple.product-type.application"; - }; -/* End PBXNativeTarget section */ - -/* Begin PBXProject section */ - 33CC10E52044A3C60003C045 /* Project object */ = { - isa = PBXProject; - attributes = { - LastSwiftUpdateCheck = 0920; - LastUpgradeCheck = 1430; - ORGANIZATIONNAME = ""; - TargetAttributes = { - 33CC10EC2044A3C60003C045 = { - CreatedOnToolsVersion = 9.2; - LastSwiftMigration = 1100; - ProvisioningStyle = Automatic; - SystemCapabilities = { - com.apple.Sandbox = { - enabled = 1; - }; - }; - }; - 33CC111A2044C6BA0003C045 = { - CreatedOnToolsVersion = 9.2; - ProvisioningStyle = Manual; - }; - }; - }; - buildConfigurationList = 33CC10E82044A3C60003C045 /* Build configuration list for PBXProject "Runner" */; - compatibilityVersion = "Xcode 9.3"; - developmentRegion = en; - hasScannedForEncodings = 0; - knownRegions = ( - en, - Base, - ); - mainGroup = 33CC10E42044A3C60003C045; - productRefGroup = 33CC10EE2044A3C60003C045 /* Products */; - projectDirPath = ""; - projectRoot = ""; - targets = ( - 33CC10EC2044A3C60003C045 /* Runner */, - 33CC111A2044C6BA0003C045 /* Flutter Assemble */, - ); - }; -/* End PBXProject section */ - -/* Begin PBXResourcesBuildPhase section */ - 33CC10EB2044A3C60003C045 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 33CC10F32044A3C60003C045 /* Assets.xcassets in Resources */, - 33CC10F62044A3C60003C045 /* MainMenu.xib in Resources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXResourcesBuildPhase section */ - -/* Begin PBXShellScriptBuildPhase section */ - 3399D490228B24CF009A79C7 /* ShellScript */ = { - isa = PBXShellScriptBuildPhase; - alwaysOutOfDate = 1; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - inputPaths = ( - ); - outputFileListPaths = ( - ); - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "echo \"$PRODUCT_NAME.app\" > \"$PROJECT_DIR\"/Flutter/ephemeral/.app_filename && \"$FLUTTER_ROOT\"/packages/flutter_tools/bin/macos_assemble.sh embed\n"; - }; - 33CC111E2044C6BF0003C045 /* ShellScript */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - Flutter/ephemeral/FlutterInputs.xcfilelist, - ); - inputPaths = ( - Flutter/ephemeral/tripwire, - ); - outputFileListPaths = ( - Flutter/ephemeral/FlutterOutputs.xcfilelist, - ); - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "\"$FLUTTER_ROOT\"/packages/flutter_tools/bin/macos_assemble.sh && touch Flutter/ephemeral/tripwire"; - }; - 35B95B845CB74EE50AE76911 /* [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; - }; - B2ABE0F0CD9BC8013F160CAD /* [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; - }; -/* End PBXShellScriptBuildPhase section */ - -/* Begin PBXSourcesBuildPhase section */ - 33CC10E92044A3C60003C045 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 33CC11132044BFA00003C045 /* MainFlutterWindow.swift in Sources */, - 33CC10F12044A3C60003C045 /* AppDelegate.swift in Sources */, - 335BBD1B22A9A15E00E9071D /* GeneratedPluginRegistrant.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXSourcesBuildPhase section */ - -/* Begin PBXTargetDependency section */ - 33CC11202044C79F0003C045 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 33CC111A2044C6BA0003C045 /* Flutter Assemble */; - targetProxy = 33CC111F2044C79F0003C045 /* PBXContainerItemProxy */; - }; -/* End PBXTargetDependency section */ - -/* Begin PBXVariantGroup section */ - 33CC10F42044A3C60003C045 /* MainMenu.xib */ = { - isa = PBXVariantGroup; - children = ( - 33CC10F52044A3C60003C045 /* Base */, - ); - name = MainMenu.xib; - path = Runner; - sourceTree = ""; - }; -/* End PBXVariantGroup section */ - -/* Begin XCBuildConfiguration section */ - 338D0CE9231458BD00FA5F75 /* Profile */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CODE_SIGN_IDENTITY = "-"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.15; - MTL_ENABLE_DEBUG_INFO = NO; - SDKROOT = macosx; - SWIFT_COMPILATION_MODE = wholemodule; - SWIFT_OPTIMIZATION_LEVEL = "-O"; - }; - name = Profile; - }; - 338D0CEA231458BD00FA5F75 /* Profile */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 33E5194F232828860026EE4D /* AppInfo.xcconfig */; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CLANG_ENABLE_MODULES = YES; - CODE_SIGN_ENTITLEMENTS = Runner/DebugProfile.entitlements; - CODE_SIGN_STYLE = Automatic; - COMBINE_HIDPI_IMAGES = YES; - INFOPLIST_FILE = Runner/Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/../Frameworks", - ); - PROVISIONING_PROFILE_SPECIFIER = ""; - SWIFT_VERSION = 5.0; - }; - name = Profile; - }; - 338D0CEB231458BD00FA5F75 /* Profile */ = { - isa = XCBuildConfiguration; - buildSettings = { - CODE_SIGN_STYLE = Manual; - PRODUCT_NAME = "$(TARGET_NAME)"; - }; - name = Profile; - }; - 33CC10F92044A3C60003C045 /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 9740EEB21CF90195004384FC /* Debug.xcconfig */; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CODE_SIGN_IDENTITY = "-"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = dwarf; - ENABLE_STRICT_OBJC_MSGSEND = YES; - ENABLE_TESTABILITY = YES; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_DYNAMIC_NO_PIC = NO; - GCC_NO_COMMON_BLOCKS = YES; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.15; - MTL_ENABLE_DEBUG_INFO = YES; - ONLY_ACTIVE_ARCH = YES; - SDKROOT = macosx; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - }; - name = Debug; - }; - 33CC10FA2044A3C60003C045 /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CODE_SIGN_IDENTITY = "-"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.15; - MTL_ENABLE_DEBUG_INFO = NO; - SDKROOT = macosx; - SWIFT_COMPILATION_MODE = wholemodule; - SWIFT_OPTIMIZATION_LEVEL = "-O"; - }; - name = Release; - }; - 33CC10FC2044A3C60003C045 /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 33E5194F232828860026EE4D /* AppInfo.xcconfig */; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CLANG_ENABLE_MODULES = YES; - CODE_SIGN_ENTITLEMENTS = Runner/DebugProfile.entitlements; - CODE_SIGN_STYLE = Automatic; - COMBINE_HIDPI_IMAGES = YES; - INFOPLIST_FILE = Runner/Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/../Frameworks", - ); - PROVISIONING_PROFILE_SPECIFIER = ""; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 5.0; - }; - name = Debug; - }; - 33CC10FD2044A3C60003C045 /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 33E5194F232828860026EE4D /* AppInfo.xcconfig */; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CLANG_ENABLE_MODULES = YES; - CODE_SIGN_ENTITLEMENTS = Runner/Release.entitlements; - CODE_SIGN_STYLE = Automatic; - COMBINE_HIDPI_IMAGES = YES; - INFOPLIST_FILE = Runner/Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/../Frameworks", - ); - PROVISIONING_PROFILE_SPECIFIER = ""; - SWIFT_VERSION = 5.0; - }; - name = Release; - }; - 33CC111C2044C6BA0003C045 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - CODE_SIGN_STYLE = Manual; - PRODUCT_NAME = "$(TARGET_NAME)"; - }; - name = Debug; - }; - 33CC111D2044C6BA0003C045 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - CODE_SIGN_STYLE = Automatic; - PRODUCT_NAME = "$(TARGET_NAME)"; - }; - name = Release; - }; -/* End XCBuildConfiguration section */ - -/* Begin XCConfigurationList section */ - 33CC10E82044A3C60003C045 /* Build configuration list for PBXProject "Runner" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 33CC10F92044A3C60003C045 /* Debug */, - 33CC10FA2044A3C60003C045 /* Release */, - 338D0CE9231458BD00FA5F75 /* Profile */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 33CC10FB2044A3C60003C045 /* Build configuration list for PBXNativeTarget "Runner" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 33CC10FC2044A3C60003C045 /* Debug */, - 33CC10FD2044A3C60003C045 /* Release */, - 338D0CEA231458BD00FA5F75 /* Profile */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 33CC111B2044C6BA0003C045 /* Build configuration list for PBXAggregateTarget "Flutter Assemble" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 33CC111C2044C6BA0003C045 /* Debug */, - 33CC111D2044C6BA0003C045 /* Release */, - 338D0CEB231458BD00FA5F75 /* Profile */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; -/* End XCConfigurationList section */ - }; - rootObject = 33CC10E52044A3C60003C045 /* Project object */; -} diff --git a/macos/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/macos/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist deleted file mode 100644 index 18d98100..00000000 --- a/macos/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +++ /dev/null @@ -1,8 +0,0 @@ - - - - - IDEDidComputeMac32BitWarning - - - diff --git a/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme b/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme deleted file mode 100644 index 50eff254..00000000 --- a/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme +++ /dev/null @@ -1,87 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/macos/Runner.xcworkspace/contents.xcworkspacedata b/macos/Runner.xcworkspace/contents.xcworkspacedata deleted file mode 100644 index 21a3cc14..00000000 --- a/macos/Runner.xcworkspace/contents.xcworkspacedata +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - diff --git a/macos/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/macos/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist deleted file mode 100644 index 18d98100..00000000 --- a/macos/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +++ /dev/null @@ -1,8 +0,0 @@ - - - - - IDEDidComputeMac32BitWarning - - - diff --git a/macos/Runner/AppDelegate.swift b/macos/Runner/AppDelegate.swift deleted file mode 100644 index d53ef643..00000000 --- a/macos/Runner/AppDelegate.swift +++ /dev/null @@ -1,9 +0,0 @@ -import Cocoa -import FlutterMacOS - -@NSApplicationMain -class AppDelegate: FlutterAppDelegate { - override func applicationShouldTerminateAfterLastWindowClosed(_ sender: NSApplication) -> Bool { - return true - } -} diff --git a/macos/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json b/macos/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json deleted file mode 100644 index 96d3fee1..00000000 --- a/macos/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json +++ /dev/null @@ -1,68 +0,0 @@ -{ - "info": { - "version": 1, - "author": "xcode" - }, - "images": [ - { - "size": "16x16", - "idiom": "mac", - "filename": "app_icon_16.png", - "scale": "1x" - }, - { - "size": "16x16", - "idiom": "mac", - "filename": "app_icon_32.png", - "scale": "2x" - }, - { - "size": "32x32", - "idiom": "mac", - "filename": "app_icon_32.png", - "scale": "1x" - }, - { - "size": "32x32", - "idiom": "mac", - "filename": "app_icon_64.png", - "scale": "2x" - }, - { - "size": "128x128", - "idiom": "mac", - "filename": "app_icon_128.png", - "scale": "1x" - }, - { - "size": "128x128", - "idiom": "mac", - "filename": "app_icon_256.png", - "scale": "2x" - }, - { - "size": "256x256", - "idiom": "mac", - "filename": "app_icon_256.png", - "scale": "1x" - }, - { - "size": "256x256", - "idiom": "mac", - "filename": "app_icon_512.png", - "scale": "2x" - }, - { - "size": "512x512", - "idiom": "mac", - "filename": "app_icon_512.png", - "scale": "1x" - }, - { - "size": "512x512", - "idiom": "mac", - "filename": "app_icon_1024.png", - "scale": "2x" - } - ] -} \ No newline at end of file diff --git a/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_1024.png b/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_1024.png deleted file mode 100644 index 480d6d5b..00000000 Binary files a/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_1024.png and /dev/null differ diff --git a/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_128.png b/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_128.png deleted file mode 100644 index 7aabadea..00000000 Binary files a/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_128.png and /dev/null differ diff --git a/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_16.png b/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_16.png deleted file mode 100644 index fdd65968..00000000 Binary files a/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_16.png and /dev/null differ diff --git a/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_256.png b/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_256.png deleted file mode 100644 index 34983cb6..00000000 Binary files a/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_256.png and /dev/null differ diff --git a/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_32.png b/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_32.png deleted file mode 100644 index f6c802f1..00000000 Binary files a/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_32.png and /dev/null differ diff --git a/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_512.png b/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_512.png deleted file mode 100644 index eb3cd34c..00000000 Binary files a/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_512.png and /dev/null differ diff --git a/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_64.png b/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_64.png deleted file mode 100644 index 6e5a0d70..00000000 Binary files a/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_64.png and /dev/null differ diff --git a/macos/Runner/Base.lproj/MainMenu.xib b/macos/Runner/Base.lproj/MainMenu.xib deleted file mode 100644 index 80e867a4..00000000 --- a/macos/Runner/Base.lproj/MainMenu.xib +++ /dev/null @@ -1,343 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/macos/Runner/Configs/AppInfo.xcconfig b/macos/Runner/Configs/AppInfo.xcconfig deleted file mode 100644 index 5a2fde6d..00000000 --- a/macos/Runner/Configs/AppInfo.xcconfig +++ /dev/null @@ -1,14 +0,0 @@ -// Application-level settings for the Runner target. -// -// This may be replaced with something auto-generated from metadata (e.g., pubspec.yaml) in the -// future. If not, the values below would default to using the project name when this becomes a -// 'flutter create' template. - -// The application's name. By default this is also the title of the Flutter window. -PRODUCT_NAME = Tachidesk Sorayomi - -// The application's bundle identifier -PRODUCT_BUNDLE_IDENTIFIER = com.suwayomi.tachideskSorayomi - -// The copyright displayed in application information -PRODUCT_COPYRIGHT = Copyright © 2022 com.suwayomi. All rights reserved. diff --git a/macos/Runner/Configs/Debug.xcconfig b/macos/Runner/Configs/Debug.xcconfig deleted file mode 100644 index 36b0fd94..00000000 --- a/macos/Runner/Configs/Debug.xcconfig +++ /dev/null @@ -1,2 +0,0 @@ -#include "../../Flutter/Flutter-Debug.xcconfig" -#include "Warnings.xcconfig" diff --git a/macos/Runner/Configs/Release.xcconfig b/macos/Runner/Configs/Release.xcconfig deleted file mode 100644 index dff4f495..00000000 --- a/macos/Runner/Configs/Release.xcconfig +++ /dev/null @@ -1,2 +0,0 @@ -#include "../../Flutter/Flutter-Release.xcconfig" -#include "Warnings.xcconfig" diff --git a/macos/Runner/Configs/Warnings.xcconfig b/macos/Runner/Configs/Warnings.xcconfig deleted file mode 100644 index 42bcbf47..00000000 --- a/macos/Runner/Configs/Warnings.xcconfig +++ /dev/null @@ -1,13 +0,0 @@ -WARNING_CFLAGS = -Wall -Wconditional-uninitialized -Wnullable-to-nonnull-conversion -Wmissing-method-return-type -Woverlength-strings -GCC_WARN_UNDECLARED_SELECTOR = YES -CLANG_UNDEFINED_BEHAVIOR_SANITIZER_NULLABILITY = YES -CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE -CLANG_WARN__DUPLICATE_METHOD_MATCH = YES -CLANG_WARN_PRAGMA_PACK = YES -CLANG_WARN_STRICT_PROTOTYPES = YES -CLANG_WARN_COMMA = YES -GCC_WARN_STRICT_SELECTOR_MATCH = YES -CLANG_WARN_OBJC_REPEATED_USE_OF_WEAK = YES -CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES -GCC_WARN_SHADOW = YES -CLANG_WARN_UNREACHABLE_CODE = YES diff --git a/macos/Runner/DebugProfile.entitlements b/macos/Runner/DebugProfile.entitlements deleted file mode 100644 index 08c3ab17..00000000 --- a/macos/Runner/DebugProfile.entitlements +++ /dev/null @@ -1,14 +0,0 @@ - - - - - com.apple.security.app-sandbox - - com.apple.security.cs.allow-jit - - com.apple.security.network.server - - com.apple.security.network.client - - - diff --git a/macos/Runner/Info.plist b/macos/Runner/Info.plist deleted file mode 100644 index 6b641fa9..00000000 --- a/macos/Runner/Info.plist +++ /dev/null @@ -1,46 +0,0 @@ - - - - - CFBundleDevelopmentRegion - $(DEVELOPMENT_LANGUAGE) - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIconFile - - CFBundleIdentifier - $(PRODUCT_BUNDLE_IDENTIFIER) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - $(PRODUCT_NAME) - CFBundlePackageType - APPL - CFBundleShortVersionString - $(FLUTTER_BUILD_NAME) - CFBundleVersion - $(FLUTTER_BUILD_NUMBER) - LSMinimumSystemVersion - $(MACOSX_DEPLOYMENT_TARGET) - NSHumanReadableCopyright - $(PRODUCT_COPYRIGHT) - NSMainNibFile - MainMenu - NSPrincipalClass - NSApplication - CFBundleLocalizations - - ar - de - en - es - fr - pt - uk - ko - pt-pt - zh - zh-hans - - - diff --git a/macos/Runner/MainFlutterWindow.swift b/macos/Runner/MainFlutterWindow.swift deleted file mode 100644 index 2722837e..00000000 --- a/macos/Runner/MainFlutterWindow.swift +++ /dev/null @@ -1,15 +0,0 @@ -import Cocoa -import FlutterMacOS - -class MainFlutterWindow: NSWindow { - override func awakeFromNib() { - let flutterViewController = FlutterViewController.init() - let windowFrame = self.frame - self.contentViewController = flutterViewController - self.setFrame(windowFrame, display: true) - - RegisterGeneratedPlugins(registry: flutterViewController) - - super.awakeFromNib() - } -} diff --git a/macos/Runner/Release.entitlements b/macos/Runner/Release.entitlements deleted file mode 100644 index ee95ab7e..00000000 --- a/macos/Runner/Release.entitlements +++ /dev/null @@ -1,10 +0,0 @@ - - - - - com.apple.security.app-sandbox - - com.apple.security.network.client - - - diff --git a/main.dart.js b/main.dart.js new file mode 100644 index 00000000..4e3ab2be --- /dev/null +++ b/main.dart.js @@ -0,0 +1,144305 @@ +(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;s2)return B.bx +return B.d0}else if(B.c.n(s.toLowerCase(),"iphone")||B.c.n(s.toLowerCase(),"ipad")||B.c.n(s.toLowerCase(),"ipod"))return B.bx +else if(B.c.n(r,"Android"))return B.ky +else if(B.c.c8(s,"Linux"))return B.o2 +else if(B.c.c8(s,"Win"))return B.Fr +else return B.aaT}, +bTg(){var s=$.fI() +return B.oD.n(0,s)}, +bTi(){var s=$.fI() +return s===B.bx&&B.c.n(self.window.navigator.userAgent,"OS 15_")}, +Hb(){var s,r=A.VU(1,1) +if(A.pR(r,"webgl2",null)!=null){s=$.fI() +if(s===B.bx)return 1 +return 2}if(A.pR(r,"webgl",null)!=null)return 1 +return-1}, +bw6(){return self.Intl.v8BreakIterator!=null&&self.Intl.Segmenter!=null}, +aP(){return $.cM.cB()}, +bW1(a){return a===B.jb?$.cM.cB().FilterMode.Nearest:$.cM.cB().FilterMode.Linear}, +bK4(a){var s=a.encodeToBytes() +return s==null?null:s}, +bK6(a,b){return a.setColorInt(b)}, +bxw(a){var s,r,q,p=new Float32Array(16) +for(s=0;s<4;++s)for(r=s*4,q=0;q<4;++q)p[q*4+s]=a[r+q] +return p}, +bm2(a){var s,r,q,p=new Float32Array(9) +for(s=a.length,r=0;r<9;++r){q=B.vn[r] +if(q>>16&255)/255 +s[1]=(b.gk(b)>>>8&255)/255 +s[2]=(b.gk(b)&255)/255 +s[3]=(b.gk(b)>>>24&255)/255 +return s}, +iN(a){var s=new Float32Array(4) +s[0]=a.a +s[1]=a.b +s[2]=a.c +s[3]=a.d +return s}, +bSC(a){return new A.I(a[0],a[1],a[2],a[3])}, +W8(a){var s=new Float32Array(12) +s[0]=a.a +s[1]=a.b +s[2]=a.c +s[3]=a.d +s[4]=a.e +s[5]=a.f +s[6]=a.r +s[7]=a.w +s[8]=a.x +s[9]=a.y +s[10]=a.z +s[11]=a.Q +return s}, +bW_(a){var s,r=a.length,q=new Uint32Array(r) +for(s=0;s"))}, +bQX(a,b){return b+a}, +aq8(){var s=0,r=A.y(t.e),q,p,o +var $async$aq8=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:s=3 +return A.t(A.bdv(A.bOb()),$async$aq8) +case 3:p=t.e +s=4 +return A.t(A.ly(self.window.CanvasKitInit(p.a({locateFile:A.cA(A.bON())})),p),$async$aq8) +case 4:o=b +if(A.brZ(o.ParagraphBuilder)&&!A.bw6())throw A.c(A.cR("The CanvasKit variant you are using only works on Chromium browsers. Please use a different CanvasKit variant, or use a Chromium browser.")) +q=o +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$aq8,r)}, +bdv(a){var s=0,r=A.y(t.H),q,p,o,n +var $async$bdv=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:p=a.$ti,o=new A.bZ(a,a.gt(a),p.h("bZ")),p=p.h("ax.E") +case 3:if(!o.u()){s=4 +break}n=o.d +s=5 +return A.t(A.bOG(n==null?p.a(n):n),$async$bdv) +case 5:if(c){s=1 +break}s=3 +break +case 4:throw A.c(A.cR("Failed to download any of the following CanvasKit URLs: "+a.j(0))) +case 1:return A.w(q,r)}}) +return A.x($async$bdv,r)}, +bOG(a){var s,r,q,p,o,n=$.e3 +n=(n==null?$.e3=A.jA(self.window.flutterConfiguration):n).b +n=n==null?null:A.biY(n) +s=A.c4(self.document,"script") +if(n!=null)s.nonce=n +s.src=A.bRw(a) +n=new A.a8($.a9,t.tq) +r=new A.aD(n,t.VY) +q=A.b4("loadCallback") +p=A.b4("errorCallback") +o=t.e +q.sdX(o.a(A.cA(new A.bdu(s,r)))) +p.sdX(o.a(A.cA(new A.bdt(s,r)))) +A.dU(s,"load",q.aF(),null) +A.dU(s,"error",p.aF(),null) +self.document.head.appendChild(s) +return n}, +aHt(a){var s="ColorFilter",r=new A.a2U(a),q=new A.iD(s,t.gA) +q.pj(r,a.QV(),s,t.e) +r.b!==$&&A.cl() +r.b=q +return r}, +bOk(){var s,r=new Float32Array(20) +for(s=0;s<4;++s)r[B.Wi[s]]=1 +return $.bPm=r}, +bRv(a,b){var s +if((a.gk(a)>>>24&255)/255===0)return $.cM.cB().ColorFilter.MakeMatrix($.bAs()) +s=$.cM.cB().ColorFilter.MakeBlend(A.bld($.bh2(),a),$.bmK()[b.a]) +if(s==null)throw A.c(A.bU("Invalid parameters for blend mode ColorFilter",null)) +return s}, +bDH(a){return new A.Ix(a)}, +bRo(a){switch(0){case 0:return new A.Iv(a.a,a.b)}}, +bqO(a){var s=null +return new A.mY(B.a9M,s,s,s,a,s)}, +bFx(){var s=t.qN +return new A.a0v(A.a([],s),A.a([],s))}, +bRO(a,b){var s,r,q,p,o +if(a.length===0||b.length===0)return null +s=new A.beS(a,b) +r=new A.beR(a,b) +q=B.b.eX(a,B.b.gN(b)) +p=B.b.xk(a,B.b.ga1(b)) +o=q!==-1 +if(o&&p!==-1)if(q<=a.length-p)return s.$1(q) +else return r.$1(p) +else if(o)return s.$1(q) +else if(p!==-1)return r.$1(p) +else return null}, +brA(a,b,c){var s=new globalThis.window.flutterCanvasKit.Font(c),r=A.a([0],t.t) +s.getGlyphBounds(r,null,null) +return new A.yo(b,a,c)}, +bVo(a,b,c){var s="encoded image bytes" +if($.bmT()&&b==null&&c==null)return A.Yc(a,s) +else return A.bos(a,s,c,b)}, +tL(a){return new A.a1U(a)}, +bgn(a,b){var s=0,r=A.y(t.hP),q,p +var $async$bgn=A.u(function(c,d){if(c===1)return A.v(d,r) +while(true)switch(s){case 0:s=3 +return A.t(A.aqa(a,b),$async$bgn) +case 3:p=d +if($.bmT()){q=A.Yc(p,a) +s=1 +break}else{q=A.bos(p,a,null,null) +s=1 +break}case 1:return A.w(q,r)}}) +return A.x($async$bgn,r)}, +aqa(a,b){return A.bSk(a,b)}, +bSk(a,b){var s=0,r=A.y(t.E),q,p=2,o,n,m,l,k,j +var $async$aqa=A.u(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:p=4 +s=7 +return A.t(A.A0(a),$async$aqa) +case 7:n=d +m=n.gaFK() +if(!n.gLy()){l=A.tL(u.O+a+"\nServer response code: "+J.bht(n)) +throw A.c(l)}s=m!=null?8:10 +break +case 8:l=A.bge(n.gBi(),m,b) +q=l +s=1 +break +s=9 +break +case 10:s=11 +return A.t(A.aFf(n),$async$aqa) +case 11:l=d +q=l +s=1 +break +case 9:p=2 +s=6 +break +case 4:p=3 +j=o +if(A.ai(j) instanceof A.Kj)throw A.c(A.tL(u.O+a+"\nTrying to load an image from another domain? Find answers at:\nhttps://flutter.dev/docs/development/platform-integration/web-images")) +else throw j +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.w(q,r) +case 2:return A.v(o,r)}}) +return A.x($async$aqa,r)}, +bge(a,b,c){return A.bUw(a,b,c)}, +bUw(a,b,c){var s=0,r=A.y(t.E),q,p,o +var $async$bge=A.u(function(d,e){if(d===1)return A.v(e,r) +while(true)switch(s){case 0:p={} +o=t.E.a(new globalThis.Uint8Array(b)) +p.a=p.b=0 +s=3 +return A.t(a.aa(0,new A.bgf(p,c,b,o),t.e),$async$bge) +case 3:q=o +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$bge,r)}, +avR(a,b){var s=new A.AP($,b),r=A.bDZ(a,s,"SkImage",t.XY,t.e) +s.b!==$&&A.cl() +s.b=r +s.ZC() +return s}, +bos(a,b,c,d){var s,r,q,p,o,n,m,l,k=new A.Yb(b,a,d,c),j=$.cM.cB().MakeAnimatedImageFromEncoded(a) +if(j==null)A.q(A.tL("Failed to decode image data.\nImage source: "+b)) +s=d==null +if(!s||c!=null)if(j.getFrameCount()>1)$.h0().$1("targetWidth and targetHeight for multi-frame images not supported") +else{r=j.makeImageAtCurrentFrame() +if(!s&&d<=0)d=null +if(c!=null&&c<=0)c=null +s=d==null +if(s&&c!=null)d=B.e.bi(c*(r.width()/r.height())) +else if(c==null&&!s)c=B.f.js(d,r.width()/r.height()) +q=new A.ta() +p=q.E6(B.hW) +o=A.Yi() +s=A.avR(r,null) +n=r.width() +m=r.height() +d.toString +c.toString +p.t9(s,new A.I(0,0,0+n,0+m),new A.I(0,0,d,c),o) +m=o.b +m===$&&A.b() +m.m() +m=q.EH().aOr(d,c).b +m===$&&A.b() +m=m.a +m===$&&A.b() +m=m.a +m.toString +l=A.bK4(m) +if(l==null)A.q(A.tL("Failed to re-size image")) +j=$.cM.cB().MakeAnimatedImageFromEncoded(l) +if(j==null)A.q(A.tL("Failed to decode re-sized image data.\nImage source: "+b))}k.d=B.e.an(j.getFrameCount()) +k.e=B.e.an(j.getRepetitionCount()) +s=new A.iD("Codec",t.gA) +s.pj(k,j,"Codec",t.e) +k.a!==$&&A.cl() +k.a=s +return k}, +bDG(a,b,c){return new A.Iw(a,b,c,new A.Hu(new A.atZ()))}, +Yc(a,b){var s=0,r=A.y(t.Lh),q,p,o +var $async$Yc=A.u(function(c,d){if(c===1)return A.v(d,r) +while(true)switch(s){case 0:o=A.bRK(a) +if(o==null)throw A.c(A.tL("Failed to detect image file format using the file header.\nFile header was "+(!B.L.gai(a)?"["+A.bQW(B.L.d2(a,0,Math.min(10,a.length)))+"]":"empty")+".\nImage source: "+b)) +p=A.bDG(o,a,b) +s=3 +return A.t(p.yJ(),$async$Yc) +case 3:q=p +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$Yc,r)}, +bDZ(a,b,c,d,e){var s=new A.YH(A.aY(d),d.h("@<0>").S(e).h("YH<1,2>")),r=new A.iD(c,e.h("iD<0>")) +r.pj(s,a,c,e) +s.a!==$&&A.cl() +s.a=r +return s}, +Yi(){var s,r=new globalThis.window.flutterCanvasKit.Paint(),q=new A.AQ(r,B.eQ,B.bl,B.dW,B.l6,B.jb) +r.setAntiAlias(!0) +r.setColorInt(4278190080) +s=new A.iD("Paint",t.gA) +s.pj(q,r,"Paint",t.e) +q.b!==$&&A.cl() +q.b=s +return q}, +bhT(a,b){var s=new A.Iy(b),r=new A.iD("Path",t.gA) +r.pj(s,a,"Path",t.e) +s.a!==$&&A.cl() +s.a=r +return s}, +oV(){var s,r,q,p=$.bsj +if(p==null){p=$.e3 +p=(p==null?$.e3=A.jA(self.window.flutterConfiguration):p).b +if(p==null)p=null +else{p=p.canvasKitMaximumSurfaces +if(p==null)p=null +p=p==null?null:B.e.an(p)}if(p==null)p=8 +s=A.c4(self.document,"flt-canvas-container") +r=t.y1 +q=A.a([],r) +r=A.a([],r) +r=$.bsj=new A.a9H(new A.oU(s),Math.max(p,1),q,r) +p=r}return p}, +bDI(a,b){var s,r,q,p=null +t.S3.a(a) +s=t.e.a({}) +r=A.bl6(a.a,a.b) +s.fontFamilies=r +r=a.c +if(r!=null)s.fontSize=r +r=a.d +if(r!=null)s.heightMultiplier=r +q=a.x +q=b==null?p:b.c +switch(q){case null:case void 0:break +case B.W:A.bs0(s,!0) +break +case B.p4:A.bs0(s,!1) +break}r=a.f +if(r!=null||!1)s.fontStyle=A.bm1(r,a.r) +r=a.w +if(r!=null)s.forceStrutHeight=r +s.strutEnabled=!0 +return s}, +bhV(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1){return new A.IA(b,c,d,e,f,m,k,a0,g,h,j,q,a1,o,p,r,a,n,s,i,l)}, +bm1(a,b){var s=t.e.a({}) +if(a!=null)s.weight=$.bB3()[a.a] +return s}, +bl6(a,b){var s=A.a([],t.s) +if(a!=null)s.push(a) +if(b!=null&&!B.b.a9a(b,new A.bdS(a)))B.b.I(s,b) +B.b.I(s,$.as().gF1().gUV().at) +return s}, +bJM(a,b){var s=b.length +if(s<=B.J8.b)return a.c +if(s<=B.J9.b)return a.b +if(s<=B.Ja.b)return a.a +return null}, +bwy(a,b){var s,r=new A.a0d(t.e.a($.bAu().i(0,b).segment(a)[self.Symbol.iterator]()),t.yN),q=A.a([],t.t) +for(;r.u();){s=r.b +s===$&&A.b() +q.push(B.e.an(s.index))}q.push(a.length) +return new Uint32Array(A.jk(q))}, +bSv(a){var s,r,q,p,o=A.bw5(a,a,$.bBo()),n=o.length,m=new Uint32Array((n+1)*2) +m[0]=0 +m[1]=0 +for(s=0;s>>16&255)/255 +s[1]=(a.gk(a)>>>8&255)/255 +s[2]=(a.gk(a)&255)/255 +s[3]=(a.gk(a)>>>24&255)/255 +return s}, +bov(){return self.window.navigator.clipboard!=null?new A.aw5():new A.aAP()}, +brc(){var s=$.dv() +return s===B.cP||self.window.navigator.clipboard==null?new A.aAQ():new A.aw6()}, +bwb(){var s=$.e3 +return s==null?$.e3=A.jA(self.window.flutterConfiguration):s}, +jA(a){var s=new A.aBY() +if(a!=null){s.a=!0 +s.b=a}return s}, +biY(a){var s=a.nonce +return s==null?null:s}, +bpa(a){var s=a.innerHeight +return s==null?null:s}, +bpb(a,b){return a.matchMedia(b)}, +bir(a,b){return a.getComputedStyle(b)}, +bF4(a){return new A.ayi(a)}, +bF9(a){return a.userAgent}, +bF8(a){var s=a.languages +if(s==null)s=null +else{s=J.co(s,new A.ayk(),t.N) +s=A.aa(s,!0,A.k(s).h("ax.E"))}return s}, +c4(a,b){return a.createElement(b)}, +dU(a,b,c,d){if(c!=null)if(d==null)a.addEventListener(b,c) +else a.addEventListener(b,c,d)}, +hS(a,b,c,d){if(c!=null)if(d==null)a.removeEventListener(b,c) +else a.removeEventListener(b,c,d)}, +jw(a){var s=a.timeStamp +return s==null?null:s}, +bp3(a,b){a.textContent=b +return b}, +ayl(a,b){return a.cloneNode(b)}, +bRp(a){return A.c4(self.document,a)}, +bF6(a){return a.tagName}, +boW(a,b,c){var s=A.b0(c) +if(s==null)s=t.K.a(s) +return a.setAttribute(b,s)}, +bF5(a){var s +for(;a.firstChild!=null;){s=a.firstChild +s.toString +a.removeChild(s)}}, +bF1(a,b){return A.Q(a,"width",b)}, +bEX(a,b){return A.Q(a,"height",b)}, +boR(a,b){return A.Q(a,"position",b)}, +bF_(a,b){return A.Q(a,"top",b)}, +bEY(a,b){return A.Q(a,"left",b)}, +bF0(a,b){return A.Q(a,"visibility",b)}, +bEZ(a,b){return A.Q(a,"overflow",b)}, +Q(a,b,c){a.setProperty(b,c,"")}, +bio(a){var s=a.src +return s==null?null:s}, +boX(a,b){a.src=b +return b}, +bwi(a){var s=A.c4(self.document,"style") +if(a!=null)s.nonce=a +return s}, +VU(a,b){var s +$.bwn=$.bwn+1 +s=A.c4(self.window.document,"canvas") +if(b!=null)A.Bl(s,b) +if(a!=null)A.Bk(s,a) +return s}, +Bl(a,b){a.width=b +return b}, +Bk(a,b){a.height=b +return b}, +pR(a,b,c){var s +if(c==null)return a.getContext(b) +else{s=A.b0(c) +if(s==null)s=t.K.a(s) +return a.getContext(b,s)}}, +bF3(a){var s=A.pR(a,"2d",null) +s.toString +return t.e.a(s)}, +bF2(a,b){var s +if(b===1){s=A.pR(a,"webgl",null) +s.toString +return t.e.a(s)}s=A.pR(a,"webgl2",null) +s.toString +return t.e.a(s)}, +ayg(a,b){var s=b +a.fillStyle=s +return s}, +boU(a,b){a.lineWidth=b +return b}, +ayh(a,b){var s=b +a.strokeStyle=s +return s}, +ayf(a,b){if(b==null)a.fill() +else a.fill(b)}, +boS(a,b,c,d){a.fillText(b,c,d)}, +boT(a,b,c,d,e,f,g){return A.ca(a,"setTransform",[b,c,d,e,f,g])}, +boV(a,b,c,d,e,f,g){return A.ca(a,"transform",[b,c,d,e,f,g])}, +aye(a,b){if(b==null)a.clip() +else a.clip(b)}, +bik(a,b){a.filter=b +return b}, +bim(a,b){a.shadowOffsetX=b +return b}, +bin(a,b){a.shadowOffsetY=b +return b}, +bil(a,b){a.shadowColor=b +return b}, +A0(a){return A.bT0(a)}, +bT0(a){var s=0,r=A.y(t.Lk),q,p=2,o,n,m,l,k +var $async$A0=A.u(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:p=4 +s=7 +return A.t(A.ly(self.window.fetch(a),t.e),$async$A0) +case 7:n=c +q=new A.a1R(a,n) +s=1 +break +p=2 +s=6 +break +case 4:p=3 +k=o +m=A.ai(k) +throw A.c(new A.Kj(a,m)) +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.w(q,r) +case 2:return A.v(o,r)}}) +return A.x($async$A0,r)}, +bfx(a){var s=0,r=A.y(t.pI),q +var $async$bfx=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:s=3 +return A.t(A.A0(a),$async$bfx) +case 3:q=c.gBi().wz() +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$bfx,r)}, +aFf(a){var s=0,r=A.y(t.E),q,p +var $async$aFf=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:p=A +s=3 +return A.t(a.gBi().wz(),$async$aFf) +case 3:q=p.dF(c,0,null) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$aFf,r)}, +bFb(a){var s=a.width +return s==null?null:s}, +bRq(a,b,c){var s,r +if(c==null)return new globalThis.FontFace(a,b) +else{s=globalThis.FontFace +r=A.b0(c) +if(r==null)r=t.K.a(r) +return new s(a,b,r)}}, +bp7(a){var s=a.height +return s==null?null:s}, +bp0(a,b){var s=b==null?null:b +a.value=s +return s}, +wy(a){var s=a.code +return s==null?null:s}, +oa(a){var s=a.key +return s==null?null:s}, +bp1(a){var s=a.state +if(s==null)s=null +else{s=A.blw(s) +s.toString}return s}, +bF7(a){return a.matches}, +bp2(a){var s=a.matches +return s==null?null:s}, +mK(a){var s=a.buttons +return s==null?null:s}, +bp4(a){var s=a.pointerId +return s==null?null:s}, +biq(a){var s=a.pointerType +return s==null?null:s}, +bp5(a){var s=a.tiltX +return s==null?null:s}, +bp6(a){var s=a.tiltY +return s==null?null:s}, +bp8(a){var s=a.wheelDeltaX +return s==null?null:s}, +bp9(a){var s=a.wheelDeltaY +return s==null?null:s}, +bFc(a){var s=a.identifier +return s==null?null:s}, +ayj(a,b){a.type=b +return b}, +bp_(a,b){var s=b==null?null:b +a.value=s +return s}, +boY(a){var s=a.value +return s==null?null:s}, +bip(a){var s=a.disabled +return s==null?null:s}, +boZ(a,b){a.disabled=b +return b}, +bFa(a,b,c){var s=A.b0(c) +if(s==null)s=t.K.a(s) +return a.getContext(b,s)}, +o9(a,b,c){return a.insertRule(b,c)}, +eG(a,b,c){var s=t.e.a(A.cA(c)) +a.addEventListener(b,s) +return new A.a0e(b,a,s)}, +bRr(a){return new globalThis.ResizeObserver(A.cA(new A.beM(a)))}, +bRw(a){if(self.window.trustedTypes!=null)return $.bBl().createScriptURL(a) +return a}, +bwj(a){var s,r +if(self.Intl.Segmenter==null)throw A.c(A.cL("Intl.Segmenter() is not supported.")) +s=globalThis.Intl.Segmenter +r=t.N +r=A.b0(A.ap(["granularity",a],r,r)) +if(r==null)r=t.K.a(r) +return new s([],r)}, +bwm(){var s,r +if(self.Intl.v8BreakIterator==null)throw A.c(A.cL("v8BreakIterator is not supported.")) +s=globalThis.Intl.v8BreakIterator +r=A.b0(B.a6M) +if(r==null)r=t.K.a(r) +return new s([],r)}, +bG6(a){switch(a){case"DeviceOrientation.portraitUp":return"portrait-primary" +case"DeviceOrientation.portraitDown":return"portrait-secondary" +case"DeviceOrientation.landscapeLeft":return"landscape-primary" +case"DeviceOrientation.landscapeRight":return"landscape-secondary" +default:return null}}, +bSt(){var s=$.hm +s.toString +return s}, +aqk(a,b){var s +if(b.l(0,B.i))return a +s=new A.ds(new Float32Array(16)) +s.cd(a) +s.bj(0,b.a,b.b) +return s}, +bwq(a,b,c){var s=a.aOq() +if(c!=null)A.blX(s,A.aqk(c,b).a) +return s}, +blV(){var s=0,r=A.y(t.z) +var $async$blV=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:if(!$.bl3){$.bl3=!0 +self.window.requestAnimationFrame(A.cA(new A.bgk()))}return A.w(null,r)}}) +return A.x($async$blV,r)}, +bG8(a,b){var s=t.S,r=A.d3(null,t.H),q=A.a(["Roboto"],t.s),p=B.b.pg(b,new A.aCf()),o=B.b.pg(b,new A.aCg()),n=B.b.pg(b,new A.aCh()),m=B.b.pg(b,new A.aCi()),l=B.b.pg(b,new A.aCj()),k=B.b.pg(b,new A.aCk()) +s=new A.aCe(a,A.aY(s),A.aY(s),A.bG9(b),p,o,n,m,l,k,r,q,A.aY(s)) +q=t.Te +s.b=new A.a0S(s,A.aY(q),A.F(t.N,q)) +return s}, +bG9(a){var s,r,q,p=t.Te,o=A.F(p,t.eT) +for(s=a.length,r=0;r>>16&255)/255,0,0,0,0,(o>>>8&255)/255,0,0,0,0,(p&255)/255,0,0,0,1,0],t.up),"recolor") +s.vI("recolor",k,1,0,0,0,6,l) +q=s.aP() +break +case 15:r=A.bex(B.q_) +r.toString +q=A.buP(a,r,!0) +break +case 26:case 18:case 19:case 25:case 27:case 28:case 24:case 14:case 16:case 17:case 20:case 21:case 22:case 23:r=A.bex(b) +r.toString +q=A.buP(a,r,!1) +break +case 1:case 2:case 6:case 8:case 4:case 0:case 3:throw A.c(A.cL("Blend mode not supported in HTML renderer: "+b.j(0))) +default:q=null}return q}, +kB(){var s,r=A.ayl($.bn3(),!1),q=self.document.createElementNS("http://www.w3.org/2000/svg","filter"),p=$.bsl+1 +$.bsl=p +p="_fcf"+p +q.id=p +s=q.filterUnits +s.toString +A.aQt(s,2) +s=q.x.baseVal +s.toString +A.aQv(s,"0%") +s=q.y.baseVal +s.toString +A.aQv(s,"0%") +s=q.width.baseVal +s.toString +A.aQv(s,"100%") +s=q.height.baseVal +s.toString +A.aQv(s,"100%") +return new A.aWK(p,r,q)}, +bVM(a){var s=A.kB() +s.H3(a,"comp") +return s.aP()}, +buP(a,b,c){var s="flood",r="SourceGraphic",q=A.kB(),p=A.f8(a.gk(a)) +q.ya(p,"1",s) +p=b.b +if(c)q.H2(r,s,p) +else q.H2(s,r,p) +return q.aP()}, +VQ(a,b){var s,r,q,p,o=a.a,n=a.c,m=Math.min(o,n),l=a.b,k=a.d,j=Math.min(l,k) +n-=o +s=Math.abs(n) +k-=l +r=Math.abs(k) +q=b.b +p=b.c +if(p==null)p=0 +if(q===B.aj&&p>0){q=p/2 +m-=q +j-=q +s=Math.max(0,s-p) +r=Math.max(0,r-p)}if(m!==o||j!==l||s!==n||r!==k)return new A.I(m,j,m+s,j+r) +return a}, +VR(a,b,c,d){var s,r,q,p,o,n,m,l,k,j=A.c4(self.document,c),i=b.b===B.aj,h=b.c +if(h==null)h=0 +if(d.Fl(0)){s=a.a +r=a.b +q="translate("+A.h(s)+"px, "+A.h(r)+"px)"}else{s=new Float32Array(16) +p=new A.ds(s) +p.cd(d) +r=a.a +o=a.b +p.bj(0,r,o) +q=A.nQ(s) +s=r +r=o}n=j.style +A.Q(n,"position","absolute") +A.Q(n,"transform-origin","0 0 0") +A.Q(n,"transform",q) +m=A.f8(b.r) +o=b.x +if(o!=null){l=o.b +o=$.dv() +if(o===B.ah&&!i){A.Q(n,"box-shadow","0px 0px "+A.h(l*2)+"px "+m) +o=b.r +m=A.f8(((B.e.bi((1-Math.min(Math.sqrt(l)/6.283185307179586,1))*(o>>>24&255))&255)<<24|o&16777215)>>>0)}else A.Q(n,"filter","blur("+A.h(l)+"px)")}A.Q(n,"width",A.h(a.c-s)+"px") +A.Q(n,"height",A.h(a.d-r)+"px") +if(i)A.Q(n,"border",A.rz(h)+" solid "+m) +else{A.Q(n,"background-color",m) +k=A.bPa(b.w,a) +A.Q(n,"background-image",k!==""?"url('"+k+"'":"")}return j}, +bPa(a,b){if(a!=null)if(a instanceof A.BY)return A.bs(a.TW(b,1,!0)) +return""}, +bw2(a,b){var s,r,q=b.e,p=b.r +if(q===p){s=b.z +if(q===s){r=b.x +s=q===r&&q===b.f&&p===b.w&&s===b.Q&&r===b.y}else s=!1}else s=!1 +if(s){A.Q(a,"border-radius",A.rz(b.z)) +return}A.Q(a,"border-top-left-radius",A.rz(q)+" "+A.rz(b.f)) +A.Q(a,"border-top-right-radius",A.rz(p)+" "+A.rz(b.w)) +A.Q(a,"border-bottom-left-radius",A.rz(b.z)+" "+A.rz(b.Q)) +A.Q(a,"border-bottom-right-radius",A.rz(b.x)+" "+A.rz(b.y))}, +rz(a){return B.e.az(a===0?1:a,3)+"px"}, +bhZ(a,b,c){var s,r,q,p,o,n,m +if(0===b){c.push(new A.l(a.c,a.d)) +c.push(new A.l(a.e,a.f)) +return}s=new A.aef() +a.a_z(s) +r=s.a +r.toString +q=s.b +q.toString +p=a.b +o=a.f +if(A.hd(p,a.d,o)){n=r.f +if(!A.hd(p,n,o))m=r.f=q.b=Math.abs(n-p)0){s=b[7] +b[9]=s +b[5]=s +if(o===2){s=b[13] +b[15]=s +b[11]=s}}return o}, +bOg(b0,b1,b2){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.length +if(0===a9)for(s=0;s<8;++s)b2[s]=b1[s] +else{r=b0[0] +for(q=a9-1,p=0,s=0;s0))return 0 +s=1 +r=0}q=h-i +p=g-h +o=f-g +do{n=(r+s)/2 +m=i+q*n +l=h+p*n +k=m+(l-m)*n +j=k+(l+(g+o*n-l)*n-k)*n +if(j===0)return n +if(j<0)s=n +else r=n}while(Math.abs(r-s)>0.0000152587890625) +return(s+r)/2}, +bws(a,b,c,d,e){return(((d+3*(b-c)-a)*e+3*(c-b-b+a))*e+3*(b-a))*e+a}, +bjS(){var s=new A.uP(A.bjs(),B.d1) +s.a3D() +return s}, +bNR(a,b,c){var s +if(0===c)s=0===b||360===b +else s=!1 +if(s)return new A.l(a.c,a.gbH().b) +return null}, +bdh(a,b,c,d){var s=a+b +if(s<=c)return d +return Math.min(c/s,d)}, +bre(a,b){var s=new A.aLp(a,!0,a.w) +if(a.Q)a.Pu() +if(!a.as)s.z=a.w +return s}, +bjs(){var s=new Float32Array(16) +s=new A.D7(s,new Uint8Array(8)) +s.e=s.c=8 +s.CW=172 +return s}, +bIn(a,b,c){var s,r,q=a.d,p=a.c,o=new Float32Array(p*2),n=a.f,m=q*2 +for(s=0;s0?1:0 +return s}, +aql(a,b){var s +if(a<0){a=-a +b=-b}if(b===0||a===0||a>=b)return null +s=a/b +if(isNaN(s))return null +if(s===0)return null +return s}, +bTj(a){var s,r,q=a.e,p=a.r +if(q+p!==a.c-a.a)return!1 +s=a.f +r=a.w +if(s+r!==a.d-a.b)return!1 +if(q!==a.z||p!==a.x||s!==a.Q||r!==a.y)return!1 +return!0}, +bs_(a,b,c,d,e,f){return new A.aTo(e-2*c+a,f-2*d+b,2*(c-a),2*(d-b),a,b)}, +aLs(a,b,c,d,e,f){if(d===f)return A.hd(c,a,e)&&a!==e +else return a===c&&b===d}, +bIo(a){var s,r,q,p,o=a[0],n=a[1],m=a[2],l=a[3],k=a[4],j=a[5],i=n-l,h=A.aql(i,i-l+j) +if(h!=null){s=o+h*(m-o) +r=n+h*(l-n) +q=m+h*(k-m) +p=l+h*(j-l) +a[2]=s +a[3]=r +a[4]=s+h*(q-s) +a[5]=r+h*(p-r) +a[6]=q +a[7]=p +a[8]=k +a[9]=j +return 1}a[3]=Math.abs(i)=q}, +bVQ(a,b,c,d){var s,r,q,p,o=a[1],n=a[3] +if(!A.hd(o,c,n))return +s=a[0] +r=a[2] +if(!A.hd(s,b,r))return +q=r-s +p=n-o +if(!(Math.abs((b-s)*p-q*(c-o))<0.000244140625))return +d.push(new A.l(q,p))}, +bVR(a,b,c,d){var s,r,q,p,o,n,m,l,k,j,i=a[1],h=a[3],g=a[5] +if(!A.hd(i,c,h)&&!A.hd(h,c,g))return +s=a[0] +r=a[2] +q=a[4] +if(!A.hd(s,b,r)&&!A.hd(r,b,q))return +p=new A.qI() +o=p.v3(i-2*h+g,2*(h-i),i-c) +for(n=q-2*r+s,m=2*(r-s),l=0;l30)B.b.jO($.rD,0).d.m()}else a.d.m()}}, +aLw(a,b){if(a<=0)return b*0.1 +else return Math.min(Math.max(b*0.5,a*10),b)}, +bOn(a7,a8,a9){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 +if(a7!=null){s=a7.a +s=s[15]===1&&s[0]===1&&s[1]===0&&s[2]===0&&s[3]===0&&s[4]===0&&s[5]===1&&s[6]===0&&s[7]===0&&s[8]===0&&s[9]===0&&s[10]===1&&s[11]===0}else s=!0 +if(s)return 1 +r=a7.a +s=r[12] +q=r[15] +p=s*q +o=r[13] +n=o*q +m=r[3] +l=m*a8 +k=r[7] +j=k*a9 +i=1/(l+j+q) +h=r[0] +g=h*a8 +f=r[4] +e=f*a9 +d=(g+e+s)*i +c=r[1] +b=c*a8 +a=r[5] +a0=a*a9 +a1=(b+a0+o)*i +a2=Math.min(p,d) +a3=Math.max(p,d) +a4=Math.min(n,a1) +a5=Math.max(n,a1) +i=1/(m*0+j+q) +d=(h*0+e+s)*i +a1=(c*0+a0+o)*i +p=Math.min(a2,d) +a3=Math.max(a3,d) +n=Math.min(a4,a1) +a5=Math.max(a5,a1) +i=1/(l+k*0+q) +d=(g+f*0+s)*i +a1=(b+a*0+o)*i +p=Math.min(p,d) +a3=Math.max(a3,d) +n=Math.min(n,a1) +a6=Math.min((a3-p)/a8,(Math.max(a5,a1)-n)/a9) +if(a6<1e-9||a6===1)return 1 +if(a6>1){a6=Math.min(4,B.e.eU(a6/2)*2) +s=a8*a9 +if(s*a6*a6>4194304&&a6>2)a6=3355443.2/s}else a6=Math.max(2/B.e.eA(2/a6),0.0001) +return a6}, +Hc(a){var s,r=a.a,q=r.x,p=q!=null?0+q.b*2:0 +r=r.c +s=r==null +if((s?0:r)!==0)p+=(s?0:r)*0.70710678118 +return p}, +bVN(a,b,c,d){var s,r,q,p="comp",o="destalpha",n="image",m="SourceGraphic" +switch(b.a){case 1:s=A.kB() +s.vJ(d,a,p,c) +r=s.aP() +break +case 5:case 9:s=A.kB() +s.H3(B.vM,o) +s.vJ(d,a,n,c) +s.vI(n,o,1,0,0,0,6,p) +r=s.aP() +break +case 7:s=A.kB() +s.vJ(d,a,n,c) +s.Ch(n,m,3,p) +r=s.aP() +break +case 11:s=A.kB() +s.vJ(d,a,n,c) +s.Ch(n,m,5,p) +r=s.aP() +break +case 12:s=A.kB() +s.vJ(d,a,n,c) +s.vI(n,m,0,1,1,0,6,p) +r=s.aP() +break +case 13:s=A.kB() +s.vJ(d,a,n,c) +s.vI(n,m,1,0,0,0,6,p) +r=s.aP() +break +case 15:q=A.bex(B.q_) +q.toString +r=A.buQ(a,q,c,d,!0) +break +case 26:case 18:case 19:case 25:case 27:case 28:case 24:case 14:case 16:case 17:case 20:case 21:case 22:case 23:q=A.bex(b) +q.toString +r=A.buQ(a,q,c,d,!1) +break +case 2:case 10:case 6:case 8:case 4:case 0:case 3:throw A.c(A.a7("Invalid svg filter request for blend-mode "+b.j(0))) +default:r=null}return r}, +buQ(a,b,c,d,e){var s,r="image",q="SourceGraphic",p=A.kB() +p.vJ(d,a,r,c) +s=b.b +if(e)p.H2(q,r,s) +else p.H2(r,q,s) +return p.aP()}, +bIc(a2,a3){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1 +if(a3==null)a3=B.Wh +s=a2.length +r=B.b.ed(a2,new A.aKF()) +q=!J.i(a3[0],0) +p=!J.i(B.b.ga1(a3),1) +o=q?s+1:s +if(p)++o +n=o*4 +m=new Float32Array(n) +l=new Float32Array(n) +n=o-1 +k=B.f.cY(n,4) +j=new Float32Array(4*(k+1)) +if(q){i=a2[0] +m[0]=(i.gk(i)>>>16&255)/255 +m[1]=(i.gk(i)>>>8&255)/255 +m[2]=(i.gk(i)&255)/255 +m[3]=(i.gk(i)>>>24&255)/255 +j[0]=0 +h=4 +g=1}else{h=0 +g=0}for(k=a2.length,f=0;f>>16&255)/255 +h=e+1 +m[e]=(d.gk(i)>>>8&255)/255 +e=h+1 +m[h]=(d.gk(i)&255)/255 +h=e+1 +m[e]=(d.gk(i)>>>24&255)/255}for(k=a3.length,f=0;f>>16&255)/255 +h=e+1 +m[e]=(i.gk(i)>>>8&255)/255 +m[h]=(i.gk(i)&255)/255 +m[h+1]=(i.gk(i)>>>24&255)/255 +j[g]=1}b=4*n +for(a=0;a>>2 +l[a]=(m[a+4]-m[a])/(j[g+1]-j[g])}l[b]=0 +l[b+1]=0 +l[b+2]=0 +l[b+3]=0 +for(a=0;a1)B.b.fz(p,new A.beI()) +for(p=$.bfZ,o=p.length,r=0;r=s)return!1 +if(a[n]!==o.charCodeAt(p))continue $label0$0}return!0}return!1}, +bxp(a){$.vA.push(a)}, +bfB(a){return A.bT6(a)}, +bT6(a){var s=0,r=A.y(t.H),q,p,o,n +var $async$bfB=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:n={} +if($.VL!==B.rC){s=1 +break}$.VL=B.R_ +p=$.e3 +if(p==null)p=$.e3=A.jA(self.window.flutterConfiguration) +if(a!=null)p.b=a +A.bUH("ext.flutter.disassemble",new A.bfD()) +n.a=!1 +$.bxs=new A.bfE(n) +n=$.e3 +n=(n==null?$.e3=A.jA(self.window.flutterConfiguration):n).b +if(n==null)n=null +else{n=n.assetBase +if(n==null)n=null}o=new A.arL(n) +A.bQ8(o) +s=3 +return A.t(A.q8(A.a([new A.bfF().$0(),A.apU()],t.mo),t.H),$async$bfB) +case 3:$.VL=B.rD +case 1:return A.w(q,r)}}) +return A.x($async$bfB,r)}, +blF(){var s=0,r=A.y(t.H),q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a +var $async$blF=A.u(function(a0,a1){if(a0===1)return A.v(a1,r) +while(true)switch(s){case 0:if($.VL!==B.rD){s=1 +break}$.VL=B.R0 +p=$.fI() +if($.bjz==null)$.bjz=A.bJ5(p===B.d0) +if($.bji==null)$.bji=new A.aJo() +if($.hm==null){o=$.e3 +o=(o==null?$.e3=A.jA(self.window.flutterConfiguration):o).b +o=o==null?null:o.hostElement +n=A.bFy(o) +m=new A.a15(n) +l=$.eg() +l.e=A.bEJ(o) +o=$.as() +k=t.N +n.aal(0,A.ap(["flt-renderer",o.gact()+" (auto-selected)","flt-build-mode","release","spellcheck","false"],k,k)) +j=m.f=A.c4(self.document,"flutter-view") +i=m.r=A.c4(self.document,"flt-glass-pane") +n.a70(j) +j.appendChild(i) +if(i.attachShadow==null)A.q(A.a7("ShadowDOM is not supported in this browser.")) +n=A.b0(A.ap(["mode","open","delegatesFocus",!1],k,t.z)) +if(n==null)n=t.K.a(n) +n=m.w=i.attachShadow(n) +i=$.e3 +k=(i==null?$.e3=A.jA(self.window.flutterConfiguration):i).b +h=A.bwi(k==null?null:A.biY(k)) +h.id="flt-internals-stylesheet" +n.appendChild(h) +A.bw1(h,"","normal normal 14px sans-serif") +k=$.e3 +k=(k==null?$.e3=A.jA(self.window.flutterConfiguration):k).b +k=k==null?null:A.biY(k) +g=A.c4(self.document,"flt-text-editing-host") +f=A.bwi(k) +f.id="flt-text-editing-stylesheet" +j.appendChild(f) +A.bw1(f,"flutter-view","normal normal 14px sans-serif") +j.appendChild(g) +m.x=g +j=A.c4(self.document,"flt-scene-host") +A.Q(j.style,"pointer-events","none") +m.b=j +o.acA(0,m) +e=A.c4(self.document,"flt-semantics-host") +o=e.style +A.Q(o,"position","absolute") +A.Q(o,"transform-origin","0 0 0") +m.d=e +m.ado() +o=$.hx +d=(o==null?$.hx=A.pX():o).w.a.abT() +c=A.c4(self.document,"flt-announcement-host") +b=A.bnP(B.lN) +a=A.bnP(B.lO) +c.append(b) +c.append(a) +m.y=new A.ara(b,a) +n.append(d) +o=m.b +o.toString +n.append(o) +n.append(c) +m.f.appendChild(e) +o=$.e3 +if((o==null?$.e3=A.jA(self.window.flutterConfiguration):o).gaGN())A.Q(m.b.style,"opacity","0.3") +o=$.aGr +if(o==null)o=$.aGr=A.bH5() +n=m.f +o=o.gCP() +if($.brg==null){o=new A.a6s(n,new A.aLM(A.F(t.S,t.iT)),o) +n=$.dv() +if(n===B.ah)p=p===B.bx +else p=!1 +if(p)$.bza().aPi() +o.e=o.aoF() +$.brg=o}p=l.e +p.gabB(p).B0(m.gawc()) +$.hm=m}$.VL=B.R1 +case 1:return A.w(q,r)}}) +return A.x($async$blF,r)}, +bQ8(a){if(a===$.vy)return +$.vy=a}, +apU(){var s=0,r=A.y(t.H),q,p,o +var $async$apU=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:p=$.as() +p.gF1().ab(0) +s=$.vy!=null?2:3 +break +case 2:p=p.gF1() +q=$.vy +q.toString +o=p +s=5 +return A.t(A.aq9(q),$async$apU) +case 5:s=4 +return A.t(o.ts(b),$async$apU) +case 4:case 3:return A.w(null,r)}}) +return A.x($async$apU,r)}, +bGP(a,b){var s,r=A.a([],b.h("G>")) +a.af(0,new A.aG5(r,b)) +B.b.fz(r,new A.aG6(b)) +s=new A.aG8(b).$1(r) +s.toString +new A.aG7(b).$1(s) +return new A.a2a(s,b.h("a2a<0>"))}, +brt(a,b){var s=A.a([a],t.jl) +s.push(b) +return A.ca(a,"call",s)}, +bwE(a,b){return new globalThis.Promise(A.cA(new A.bfq(a,b)))}, +bl1(a){var s=B.e.an(a) +return A.dC(B.e.an((a-s)*1000),s,0)}, +bO4(a,b){var s={} +s.a=null +return new A.bd7(s,a,b)}, +bH5(){var s=new A.a2n(A.F(t.N,t.e)) +s.alB() +return s}, +bH7(a){switch(a.a){case 0:case 4:return new A.KV(A.bm4("M,2\u201ew\u2211wa2\u03a9q\u2021qb2\u02dbx\u2248xc3 c\xd4j\u2206jd2\xfee\xb4ef2\xfeu\xa8ug2\xfe\xff\u02c6ih3 h\xce\xff\u2202di3 i\xc7c\xe7cj2\xd3h\u02d9hk2\u02c7\xff\u2020tl5 l@l\xfe\xff|l\u02dcnm1~mn3 n\u0131\xff\u222bbo2\xaer\u2030rp2\xacl\xd2lq2\xc6a\xe6ar3 r\u03c0p\u220fps3 s\xd8o\xf8ot2\xa5y\xc1yu3 u\xa9g\u02ddgv2\u02dak\uf8ffkw2\xc2z\xc5zx2\u0152q\u0153qy5 y\xcff\u0192f\u02c7z\u03a9zz5 z\xa5y\u2021y\u2039\xff\u203aw.2\u221av\u25cav;4\xb5m\xcds\xd3m\xdfs/2\xb8z\u03a9z")) +case 3:return new A.KV(A.bm4(';b1{bc1&cf1[fg1]gm2y')) +case 1:case 2:case 5:return new A.KV(A.bm4("8a2@q\u03a9qk1&kq3@q\xc6a\xe6aw2xy2\xa5\xff\u2190\xffz51)s.push(new A.d6(B.b.gN(o),null,B.b.ga1(o))) +else s.push(new A.d6(p,null,null))}return s}, +bPi(a,b){var s=a.oE(b),r=A.aq7(A.bs(s.b)) +switch(s.a){case"setDevicePixelRatio":$.eg().x=r +$.bL().f.$0() +return!0}return!1}, +rG(a,b){if(a==null)return +if(b===$.a9)a.$0() +else b.Gf(a)}, +VZ(a,b,c){if(a==null)return +if(b===$.a9)a.$1(c) +else b.xL(a,c)}, +bTc(a,b,c,d){if(b===$.a9)a.$2(c,d) +else b.Gf(new A.bfH(a,c,d))}, +bSo(){var s,r,q,p=self.document.documentElement +p.toString +if("computedStyleMap" in p){s=p.computedStyleMap() +if(s!=null){r=s.get("font-size") +q=r!=null?r.value:null}else q=null}else q=null +if(q==null)q=A.bx9(A.bir(self.window,p).getPropertyValue("font-size")) +return(q==null?16:q)/16}, +bIr(a,b,c,d,e,f,g,h){return new A.a6n(a,!1,f,e,h,d,c,g)}, +bRg(a){switch(a){case 0:return 1 +case 1:return 4 +case 2:return 2 +default:return B.f.yb(1,a)}}, +zw(a){var s=B.e.an(a) +return A.dC(B.e.an((a-s)*1000),s,0)}, +blt(a,b){var s,r,q,p,o=$.hx +if((o==null?$.hx=A.pX():o).x&&a.offsetX===0&&a.offsetY===0)return A.bOm(a,b) +o=$.hm.x +o===$&&A.b() +s=a.target +s.toString +if(o.contains(s)){o=$.aqR() +r=o.goj().w +if(r!=null){a.target.toString +o.goj().c.toString +q=new A.ds(r.c).FT(a.offsetX,a.offsetY,0) +return new A.l(q.a,q.b)}}if(!J.i(a.target,b)){p=b.getBoundingClientRect() +return new A.l(a.clientX-p.x,a.clientY-p.y)}return new A.l(a.offsetX,a.offsetY)}, +bOm(a,b){var s,r,q=a.clientX,p=a.clientY +for(s=b;s.offsetParent!=null;s=r){q-=s.offsetLeft-s.scrollLeft +p-=s.offsetTop-s.scrollTop +r=s.offsetParent +r.toString}return new A.l(q,p)}, +bgD(a,b){var s=b.$0() +return s}, +bSx(){if($.bL().ay==null)return +$.bll=A.VO()}, +bSw(){if($.bL().ay==null)return +$.bkW=A.VO()}, +bwz(){if($.bL().ay==null)return +$.bkV=A.VO()}, +bwB(){if($.bL().ay==null)return +$.ble=A.VO()}, +bwA(){var s,r,q=$.bL() +if(q.ay==null)return +s=$.bvx=A.VO() +$.bl4.push(new A.tC(A.a([$.bll,$.bkW,$.bkV,$.ble,s,s,0,0,0,0,1],t.t))) +$.bvx=$.ble=$.bkV=$.bkW=$.bll=-1 +if(s-$.bAo()>1e5){$.bP0=s +r=$.bl4 +A.VZ(q.ay,q.ch,r) +$.bl4=A.a([],t.no)}}, +VO(){return B.e.an(self.window.performance.now()*1000)}, +bJ5(a){var s=new A.aN9(A.F(t.N,t.qe),a) +s.alH(a) +return s}, +bPW(a){}, +blB(a,b){return a[b]}, +bx9(a){var s=self.window.parseFloat(a) +if(s==null||isNaN(s))return null +return s}, +bU4(a){var s,r,q +if("computedStyleMap" in a){s=a.computedStyleMap() +if(s!=null){r=s.get("font-size") +q=r!=null?r.value:null}else q=null}else q=null +return q==null?A.bx9(A.bir(self.window,a).getPropertyValue("font-size")):q}, +bW7(a,b){var s,r=self.document.createElement("CANVAS") +if(r==null)return null +try{A.Bl(r,a) +A.Bk(r,b)}catch(s){return null}return r}, +br2(){var s,r=$.br1 +if(r==null){r=$.dv() +s=$.br1=r!==B.ah&&"OffscreenCanvas" in self.window +r=s}return r}, +bnP(a){var s=a===B.lO?"assertive":"polite",r=A.c4(self.document,"flt-announcement-"+s),q=r.style +A.Q(q,"position","fixed") +A.Q(q,"overflow","hidden") +A.Q(q,"transform","translate(-99999px, -99999px)") +A.Q(q,"width","1px") +A.Q(q,"height","1px") +q=A.b0(s) +if(q==null)q=t.K.a(q) +r.setAttribute("aria-live",q) +return r}, +bOe(a){var s=a.a +if((s&256)!==0)return B.anv +else if((s&65536)!==0)return B.anw +else return B.anu}, +bGF(a){var s=new A.aFP(A.c4(self.document,"input"),new A.Wv(a.k1),B.J5,a) +s.alA(a) +return s}, +bFA(a){return new A.aAc(a)}, +aS7(a){var s=a.style +s.removeProperty("transform-origin") +s.removeProperty("transform") +s=$.fI() +if(s!==B.bx)s=s===B.d0 +else s=!0 +if(s){s=a.style +A.Q(s,"top","0px") +A.Q(s,"left","0px")}else{s=a.style +s.removeProperty("top") +s.removeProperty("left")}}, +pX(){var s=t.S,r=t.UF,q=A.a([],t.Qo),p=A.a([],t.qj),o=$.fI() +o=B.oD.n(0,o)?new A.axn():new A.aJb() +o=new A.aAy(B.JO,A.F(s,r),A.F(s,r),q,p,new A.aAC(),new A.aS3(o),B.f5,A.a([],t.sQ)) +o.alu() +return o}, +bwW(a){var s,r,q,p,o,n,m,l,k=a.length,j=t.t,i=A.a([],j),h=A.a([0],j) +for(s=0,r=0;r=h.length)h.push(r) +else h[o]=r +if(o>s)s=o}m=A.aT(s,0,!1,t.S) +l=h[s] +for(r=s-1;r>=0;--r){m[r]=l +l=i[l]}return m}, +bJR(a){var s,r=$.NA +if(r!=null)s=r.a===a +else s=!1 +if(s){r.toString +return r}return $.NA=new A.aSe(a,A.a([],t.Up),$,$,$,null)}, +bkb(){var s=new Uint8Array(0),r=new DataView(new ArrayBuffer(8)) +return new A.b_0(new A.aas(s,0),r,A.dF(r.buffer,0,null))}, +bwa(a){if(a===0)return B.i +return new A.l(200*a/600,400*a/600)}, +bRb(a,b){var s,r,q,p,o,n +if(b===0)return a +s=a.c +r=a.a +q=a.d +p=a.b +o=b*((800+(s-r)*0.5)/600) +n=b*((800+(q-p)*0.5)/600) +return new A.I(r-o,p-n,s+o,q+n).dw(A.bwa(b)).dZ(20)}, +bRd(a,b){if(b===0)return null +return new A.aWH(Math.min(b*((800+(a.c-a.a)*0.5)/600),b*((800+(a.d-a.b)*0.5)/600)),A.bwa(b))}, +bwk(){var s=self.document.createElementNS("http://www.w3.org/2000/svg","svg"),r=A.b0("1.1") +if(r==null)r=t.K.a(r) +s.setAttribute("version",r) +return s}, +aQv(a,b){a.valueAsString=b +return b}, +aQt(a,b){a.baseVal=b +return b}, +uz(a,b){a.baseVal=b +return b}, +aQu(a,b){a.baseVal=b +return b}, +bj0(a,b,c,d,e,f,g,h){return new A.mT($,$,$,$,$,$,$,$,0,c,d,e,f,g,h,a,b)}, +bqp(a,b,c,d,e,f){var s=new A.aH8(d,f,a,b,e,c) +s.Dt() +return s}, +bwr(){var s=$.be3 +if(s==null){s=t.jQ +s=$.be3=new A.r3(A.blk(u.K,937,B.uX,s),B.cb,A.F(t.S,s),t.MX)}return s}, +bHi(a){if(self.Intl.v8BreakIterator!=null)return new A.aZL(A.bwm(),a) +return new A.aBa(a)}, +bw5(a,b,c){var s,r,q,p,o,n,m,l,k=A.a([],t._f) +c.adoptText(b) +c.first() +for(s=a.length,r=0;c.next()!==-1;r=q){q=B.e.an(c.current()) +for(p=r,o=0,n=0;p0){k.push(new A.u_(B.ef,o,n,r,p)) +r=p +o=0 +n=0}}if(o>0)l=B.dA +else l=q===s?B.dB:B.ef +k.push(new A.u_(l,o,n,r,q))}if(k.length===0||B.b.ga1(k).c===B.dA)k.push(new A.u_(B.dB,0,0,s,s)) +return k}, +bOl(a1){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a={},a0=A.a([],t._f) +a.a=a.b=null +s=A.VY(a1,0) +r=A.bwr().AA(s) +a.c=a.d=a.e=a.f=0 +q=new A.bdg(a,a1,a0) +q.$2(B.U,2) +p=++a.f +for(o=a1.length,n=t.jQ,m=t.S,l=t.MX,k=B.cb,j=0;p<=o;p=++a.f){a.b=a.a +a.a=r +if(s!=null&&s>65535){q.$2(B.U,-1) +p=++a.f}s=A.VY(a1,p) +p=$.be3 +r=(p==null?$.be3=new A.r3(A.blk(u.K,937,B.uX,n),B.cb,A.F(m,n),l):p).AA(s) +i=a.a +j=i===B.jo?j+1:0 +if(i===B.ho||i===B.jm){q.$2(B.dA,5) +continue}if(i===B.jq){if(r===B.ho)q.$2(B.U,5) +else q.$2(B.dA,5) +continue}if(r===B.ho||r===B.jm||r===B.jq){q.$2(B.U,6) +continue}p=a.f +if(p>=o)break +if(r===B.f7||r===B.na){q.$2(B.U,7) +continue}if(i===B.f7){q.$2(B.ef,18) +continue}if(i===B.na){q.$2(B.ef,8) +continue}if(i===B.nb){q.$2(B.U,8) +continue}h=i!==B.n5 +if(h&&!0)k=i==null?B.cb:i +if(r===B.n5||r===B.nb){if(k!==B.f7){if(k===B.jo)--j +q.$2(B.U,9) +r=k +continue}r=B.cb}if(!h||!1){a.a=k +h=k}else h=i +if(r===B.nd||h===B.nd){q.$2(B.U,11) +continue}if(h===B.n8){q.$2(B.U,12) +continue}g=h!==B.f7 +if(!(!g||h===B.jj||h===B.hn)&&r===B.n8){q.$2(B.U,12) +continue}if(g)g=r===B.n7||r===B.hm||r===B.u3||r===B.jk||r===B.n6 +else g=!1 +if(g){q.$2(B.U,13) +continue}if(h===B.hl){q.$2(B.U,14) +continue}g=h===B.ng +if(g&&r===B.hl){q.$2(B.U,15) +continue}f=h!==B.n7 +if((!f||h===B.hm)&&r===B.n9){q.$2(B.U,16) +continue}if(h===B.nc&&r===B.nc){q.$2(B.U,17) +continue}if(g||r===B.ng){q.$2(B.U,19) +continue}if(h===B.nf||r===B.nf){q.$2(B.ef,20) +continue}if(r===B.jj||r===B.hn||r===B.n9||h===B.u1){q.$2(B.U,21) +continue}if(a.b===B.ca)g=h===B.hn||h===B.jj +else g=!1 +if(g){q.$2(B.U,21) +continue}g=h===B.n6 +if(g&&r===B.ca){q.$2(B.U,21) +continue}if(r===B.u2){q.$2(B.U,22) +continue}e=h!==B.cb +if(!((!e||h===B.ca)&&r===B.dC))if(h===B.dC)d=r===B.cb||r===B.ca +else d=!1 +else d=!0 +if(d){q.$2(B.U,23) +continue}d=h===B.jr +if(d)c=r===B.ne||r===B.jn||r===B.jp +else c=!1 +if(c){q.$2(B.U,23) +continue}if((h===B.ne||h===B.jn||h===B.jp)&&r===B.eg){q.$2(B.U,23) +continue}c=!d +if(!c||h===B.eg)b=r===B.cb||r===B.ca +else b=!1 +if(b){q.$2(B.U,24) +continue}if(!e||h===B.ca)b=r===B.jr||r===B.eg +else b=!1 +if(b){q.$2(B.U,24) +continue}if(!f||h===B.hm||h===B.dC)f=r===B.eg||r===B.jr +else f=!1 +if(f){q.$2(B.U,25) +continue}f=h!==B.eg +if((!f||d)&&r===B.hl){q.$2(B.U,25) +continue}if((!f||!c||h===B.hn||h===B.jk||h===B.dC||g)&&r===B.dC){q.$2(B.U,25) +continue}g=h===B.jl +if(g)f=r===B.jl||r===B.hp||r===B.hr||r===B.hs +else f=!1 +if(f){q.$2(B.U,26) +continue}f=h!==B.hp +if(!f||h===B.hr)c=r===B.hp||r===B.hq +else c=!1 +if(c){q.$2(B.U,26) +continue}c=h!==B.hq +if((!c||h===B.hs)&&r===B.hq){q.$2(B.U,26) +continue}if((g||!f||!c||h===B.hr||h===B.hs)&&r===B.eg){q.$2(B.U,27) +continue}if(d)g=r===B.jl||r===B.hp||r===B.hq||r===B.hr||r===B.hs +else g=!1 +if(g){q.$2(B.U,27) +continue}if(!e||h===B.ca)g=r===B.cb||r===B.ca +else g=!1 +if(g){q.$2(B.U,28) +continue}if(h===B.jk)g=r===B.cb||r===B.ca +else g=!1 +if(g){q.$2(B.U,29) +continue}if(!e||h===B.ca||h===B.dC)if(r===B.hl){g=a1.charCodeAt(p) +if(g!==9001)if(!(g>=12296&&g<=12317))g=g>=65047&&g<=65378 +else g=!0 +else g=!0 +g=!g}else g=!1 +else g=!1 +if(g){q.$2(B.U,30) +continue}if(h===B.hm){p=a1.charCodeAt(p-1) +if(p!==9001)if(!(p>=12296&&p<=12317))p=p>=65047&&p<=65378 +else p=!0 +else p=!0 +if(!p)p=r===B.cb||r===B.ca||r===B.dC +else p=!1}else p=!1 +if(p){q.$2(B.U,30) +continue}if(r===B.jo){if((j&1)===1)q.$2(B.U,30) +else q.$2(B.ef,30) +continue}if(h===B.jn&&r===B.jp){q.$2(B.U,30) +continue}q.$2(B.ef,31)}q.$2(B.dB,3) +return a0}, +vG(a,b,c,d,e){var s,r,q,p +if(c===d)return 0 +s=a.font +if(c===$.bvp&&d===$.bvo&&b===$.bvq&&s===$.bvn)r=$.bvr +else{q=c===0&&d===b.length?b:B.c.U(b,c,d) +p=A.bFb(a.measureText(q)) +p.toString +r=p}$.bvp=c +$.bvo=d +$.bvq=b +$.bvn=s +$.bvr=r +if(e==null)e=0 +return B.e.bi((e!==0?r+e*(d-c):r)*100)/100}, +bps(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,a0,a1,a2){var s=g==null,r=s?"":g +return new A.JE(b,c,d,e,f,m,k,a1,!s,r,h,i,l,j,p,a2,o,q,a,n,a0)}, +bww(a){if(a==null)return null +return A.bwv(a.a)}, +bwv(a){switch(a){case 0:return"100" +case 1:return"200" +case 2:return"300" +case 3:return"normal" +case 4:return"500" +case 5:return"600" +case 6:return"bold" +case 7:return"800" +case 8:return"900"}return""}, +bQ9(a){var s,r,q,p,o=a.length +if(o===0)return"" +for(s=0,r="";s=48&&q<=57))s=q>=1632&&q<=1641 +else s=!0 +if(s)return B.j +r=$.bmQ().AA(q) +if(r!=null)return r +return null}, +bl7(a,b){var s=A.VY(a,b) +s.toString +if(s>=48&&s<=57)return B.jd +if(s>=1632&&s<=1641)return B.td +switch($.bmQ().AA(s)){case B.j:return B.tc +case B.ab:return B.td +case null:case void 0:return B.mX}}, +VY(a,b){var s,r +if(b<0||b>=a.length)return null +s=a.charCodeAt(b) +if((s&63488)===55296&&b>>6&31)+1<<16|(r&63)<<10|a.charCodeAt(b+1)&1023}return s}, +bLh(a,b,c){return new A.r3(a,b,A.F(t.S,c),c.h("r3<0>"))}, +bLi(a,b,c,d,e){return new A.r3(A.blk(a,b,c,e),d,A.F(t.S,e),e.h("r3<0>"))}, +blk(a,b,c,d){var s,r,q,p,o,n=A.a([],d.h("G>")),m=a.length +for(s=d.h("eB<0>"),r=0;r=0&&q<=r))break +q+=s +if(A.bLD(b,q))break}return A.vB(q,0,r)}, +bLD(a,b){var s,r,q,p,o,n,m,l,k,j=null +if(b<=0||b>=a.length)return!0 +s=b-1 +if((a.charCodeAt(s)&63488)===55296)return!1 +r=$.Wn().Lh(0,a,b) +q=$.Wn().Lh(0,a,s) +if(q===B.lg&&r===B.lh)return!1 +if(A.hK(q,B.po,B.lg,B.lh,j,j))return!0 +if(A.hK(r,B.po,B.lg,B.lh,j,j))return!0 +if(q===B.pn&&r===B.pn)return!1 +if(A.hK(r,B.im,B.io,B.il,j,j))return!1 +for(p=0;A.hK(q,B.im,B.io,B.il,j,j);){++p +s=b-p-1 +if(s<0)return!0 +o=$.Wn() +n=A.VY(a,s) +q=n==null?o.b:o.AA(n)}if(A.hK(q,B.cM,B.bH,j,j,j)&&A.hK(r,B.cM,B.bH,j,j,j))return!1 +m=0 +do{++m +l=$.Wn().Lh(0,a,b+m)}while(A.hK(l,B.im,B.io,B.il,j,j)) +do{++p +k=$.Wn().Lh(0,a,b-p-1)}while(A.hK(k,B.im,B.io,B.il,j,j)) +if(A.hK(q,B.cM,B.bH,j,j,j)&&A.hK(r,B.pl,B.ik,B.fO,j,j)&&A.hK(l,B.cM,B.bH,j,j,j))return!1 +if(A.hK(k,B.cM,B.bH,j,j,j)&&A.hK(q,B.pl,B.ik,B.fO,j,j)&&A.hK(r,B.cM,B.bH,j,j,j))return!1 +s=q===B.bH +if(s&&r===B.fO)return!1 +if(s&&r===B.pk&&l===B.bH)return!1 +if(k===B.bH&&q===B.pk&&r===B.bH)return!1 +s=q===B.dl +if(s&&r===B.dl)return!1 +if(A.hK(q,B.cM,B.bH,j,j,j)&&r===B.dl)return!1 +if(s&&A.hK(r,B.cM,B.bH,j,j,j))return!1 +if(k===B.dl&&A.hK(q,B.pm,B.ik,B.fO,j,j)&&r===B.dl)return!1 +if(s&&A.hK(r,B.pm,B.ik,B.fO,j,j)&&l===B.dl)return!1 +if(q===B.ip&&r===B.ip)return!1 +if(A.hK(q,B.cM,B.bH,B.dl,B.ip,B.lf)&&r===B.lf)return!1 +if(q===B.lf&&A.hK(r,B.cM,B.bH,B.dl,B.ip,j))return!1 +return!0}, +hK(a,b,c,d,e,f){if(a===b)return!0 +if(a===c)return!0 +if(d!=null&&a===d)return!0 +if(e!=null&&a===e)return!0 +if(f!=null&&a===f)return!0 +return!1}, +bFC(a){switch(a){case"TextInputAction.continueAction":case"TextInputAction.next":return B.NV +case"TextInputAction.previous":return B.O1 +case"TextInputAction.done":return B.Nv +case"TextInputAction.go":return B.NG +case"TextInputAction.newline":return B.NC +case"TextInputAction.search":return B.Od +case"TextInputAction.send":return B.Oe +case"TextInputAction.emergencyCall":case"TextInputAction.join":case"TextInputAction.none":case"TextInputAction.route":case"TextInputAction.unspecified":default:return B.NW}}, +bpq(a,b){switch(a){case"TextInputType.number":return b?B.Nq:B.NX +case"TextInputType.phone":return B.O0 +case"TextInputType.emailAddress":return B.Nz +case"TextInputType.url":return B.Ow +case"TextInputType.multiline":return B.NU +case"TextInputType.none":return B.qp +case"TextInputType.text":default:return B.Os}}, +bKD(a){var s +if(a==="TextCapitalization.words")s=B.Kz +else if(a==="TextCapitalization.characters")s=B.KB +else s=a==="TextCapitalization.sentences"?B.KA:B.p1 +return new A.Oy(s)}, +bOI(a){}, +aq0(a,b,c,d){var s,r="transparent",q="none",p=a.style +A.Q(p,"white-space","pre-wrap") +A.Q(p,"align-content","center") +A.Q(p,"padding","0") +A.Q(p,"opacity","1") +A.Q(p,"color",r) +A.Q(p,"background-color",r) +A.Q(p,"background",r) +A.Q(p,"outline",q) +A.Q(p,"border",q) +A.Q(p,"resize",q) +A.Q(p,"text-shadow",r) +A.Q(p,"transform-origin","0 0 0") +if(b){A.Q(p,"top","-9999px") +A.Q(p,"left","-9999px")}if(d){A.Q(p,"width","0") +A.Q(p,"height","0")}if(c)A.Q(p,"pointer-events",q) +s=$.dv() +if(s!==B.dr)s=s===B.ah +else s=!0 +if(s)a.classList.add("transparentTextEditing") +A.Q(p,"caret-color",r)}, +bFB(a6,a7){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=null +if(a6==null)return a5 +s=t.N +r=t.e +q=A.F(s,r) +p=A.F(s,t.M1) +o=A.c4(self.document,"form") +n=$.aqR().goj() instanceof A.a7W +o.noValidate=!0 +o.method="post" +o.action="#" +A.dU(o,"submit",r.a(A.cA(new A.aAg())),a5) +A.aq0(o,!1,n,!0) +m=J.Cf(0,s) +l=A.bhL(a6,B.Ky) +if(a7!=null)for(s=t.a,r=J.iP(a7,s),k=A.k(r),r=new A.bZ(r,r.gt(r),k.h("bZ")),j=l.b,k=k.h("ac.E"),i=!n,h=a5,g=!1;r.u();){f=r.d +if(f==null)f=k.a(f) +e=J.ak(f) +d=s.a(e.i(f,"autofill")) +c=A.bs(e.i(f,"textCapitalization")) +if(c==="TextCapitalization.words")c=B.Kz +else if(c==="TextCapitalization.characters")c=B.KB +else c=c==="TextCapitalization.sentences"?B.KA:B.p1 +b=A.bhL(d,new A.Oy(c)) +c=b.b +m.push(c) +if(c!==j){a=A.bpq(A.bs(J.b3(s.a(e.i(f,"inputType")),"name")),!1).TV() +b.a.jA(a) +b.jA(a) +A.aq0(a,!1,n,i) +p.p(0,c,b) +q.p(0,c,a) +o.append(a) +if(g){h=a +g=!1}}else g=!0}else{m.push(l.b) +h=a5}B.b.oh(m) +for(s=m.length,a0=0,r="";a00?r+"*":r)+a1}a2=r.charCodeAt(0)==0?r:r +a3=$.VX.i(0,a2) +if(a3!=null)a3.remove() +a4=A.c4(self.document,"input") +A.aq0(a4,!0,!1,!0) +a4.className="submitBtn" +A.ayj(a4,"submit") +o.append(a4) +return new A.aAd(o,q,p,h==null?a4:h,a2)}, +bhL(a,b){var s,r=J.ak(a),q=A.bs(r.i(a,"uniqueIdentifier")),p=t.kc.a(r.i(a,"hints")),o=p==null||J.ce(p)?null:A.bs(J.jo(p)),n=A.bpk(t.a.a(r.i(a,"editingValue"))) +if(o!=null){s=$.byf().a.i(0,o) +if(s==null)s=o}else s=null +return new A.Xf(n,q,s,A.ae(r.i(a,"hintText")))}, +blf(a,b,c){var s=c.a,r=c.b,q=Math.min(s,r) +r=Math.max(s,r) +return B.c.U(a,0,q)+b+B.c.cv(a,r)}, +bKF(a1,a2,a3){var s,r,q,p,o,n,m,l,k,j,i,h=a3.a,g=a3.b,f=a3.c,e=a3.d,d=a3.e,c=a3.f,b=a3.r,a=a3.w,a0=new A.EI(h,g,f,e,d,c,b,a) +d=a2==null +c=d?null:a2.b +s=c==(d?null:a2.c) +c=g.length +r=c===0 +q=r&&e!==-1 +r=!r +p=r&&!s +if(q){o=h.length-a1.a.length +f=a1.b +if(f!==(d?null:a2.b)){f=e-o +a0.c=f}else{a0.c=f +e=f+o +a0.d=e}}else if(p){f=a2.b +a0.c=f}n=b!=null&&b!==a +if(r&&s&&n){b.toString +f=a0.c=b}if(!(f===-1&&f===e)){m=A.blf(h,g,new A.d8(f,e)) +f=a1.a +f.toString +if(m!==f){l=B.c.n(g,".") +for(e=A.bF(A.aqh(g),!0,!1,!1).rT(0,f),e=new A.r8(e.a,e.b,e.c),d=t.Qz,b=h.length;e.u();){k=e.d +a=(k==null?d.a(k):k).b +r=a.index +if(!(r>=0&&r+a[0].length<=b)){j=r+c-1 +i=A.blf(h,g,new A.d8(r,j))}else{j=l?r+a[0].length-1:r+a[0].length +i=A.blf(h,g,new A.d8(r,j))}if(i===f){a0.c=r +a0.d=j +break}}}}a0.e=a1.b +a0.f=a1.c +return a0}, +azV(a,b,c,d,e){var s,r=a==null?0:a +r=Math.max(0,r) +s=d==null?0:d +return new A.Bw(e,r,Math.max(0,s),b,c)}, +bpk(a){var s=J.ak(a),r=A.ae(s.i(a,"text")),q=B.e.an(A.nM(s.i(a,"selectionBase"))),p=B.e.an(A.nM(s.i(a,"selectionExtent"))),o=A.bj_(a,"composingBase"),n=A.bj_(a,"composingExtent") +s=o==null?-1:o +return A.azV(q,s,n==null?-1:n,p,r)}, +bpj(a){var s,r,q,p=null,o=globalThis.HTMLInputElement +if(o!=null&&a instanceof o){s=A.boY(a) +r=a.selectionStart +if(r==null)r=p +r=r==null?p:B.e.an(r) +q=a.selectionEnd +if(q==null)q=p +return A.azV(r,-1,-1,q==null?p:B.e.an(q),s)}else{o=globalThis.HTMLTextAreaElement +if(o!=null&&a instanceof o){s=a.value +if(s==null)s=p +r=a.selectionStart +if(r==null)r=p +r=r==null?p:B.e.an(r) +q=a.selectionEnd +if(q==null)q=p +return A.azV(r,-1,-1,q==null?p:B.e.an(q),s)}else throw A.c(A.a7("Initialized with unsupported input type"))}}, +bqc(a){var s,r,q,p,o,n="inputType",m="autofill",l=J.ak(a),k=t.a,j=A.bs(J.b3(k.a(l.i(a,n)),"name")),i=A.cG(J.b3(k.a(l.i(a,n)),"decimal")) +j=A.bpq(j,i===!0) +i=A.ae(l.i(a,"inputAction")) +if(i==null)i="TextInputAction.done" +s=A.cG(l.i(a,"obscureText")) +r=A.cG(l.i(a,"readOnly")) +q=A.cG(l.i(a,"autocorrect")) +p=A.bKD(A.bs(l.i(a,"textCapitalization"))) +k=l.ao(a,m)?A.bhL(k.a(l.i(a,m)),B.Ky):null +o=A.bFB(t.nA.a(l.i(a,m)),t.kc.a(l.i(a,"fields"))) +l=A.cG(l.i(a,"enableDeltaModel")) +return new A.aFV(j,i,r===!0,s===!0,q!==!1,l===!0,k,o,p)}, +bGq(a){return new A.a1u(a,A.a([],t.Up),$,$,$,null)}, +bVd(){$.VX.af(0,new A.bgi())}, +bR3(){var s,r,q +for(s=$.VX.gbw($.VX),r=A.k(s),r=r.h("@<1>").S(r.z[1]),s=new A.c2(J.ao(s.a),s.b,r.h("c2<1,2>")),r=r.z[1];s.u();){q=s.a +if(q==null)q=r.a(q) +q.remove()}$.VX.ab(0)}, +bFn(a){var s=J.ak(a),r=A.hz(J.co(t.j.a(s.i(a,"transform")),new A.azj(),t.z),!0,t.i) +return new A.azi(A.nM(s.i(a,"width")),A.nM(s.i(a,"height")),new Float32Array(A.jk(r)))}, +bSD(a,b){var s,r={},q=new A.a8($.a9,b.h("a8<0>")) +r.a=!0 +s=a.$1(new A.bfr(r,new A.rt(q,b.h("rt<0>")),b)) +r.a=!1 +if(s!=null)throw A.c(A.cR(s)) +return q}, +blX(a,b){var s=a.style +A.Q(s,"transform-origin","0 0 0") +A.Q(s,"transform",A.nQ(b))}, +nQ(a){var s=A.bgE(a) +if(s===B.KU)return"matrix("+A.h(a[0])+","+A.h(a[1])+","+A.h(a[4])+","+A.h(a[5])+","+A.h(a[12])+","+A.h(a[13])+")" +else if(s===B.lc)return A.bSs(a) +else return"none"}, +bgE(a){if(!(a[15]===1&&a[14]===0&&a[11]===0&&a[10]===1&&a[9]===0&&a[8]===0&&a[7]===0&&a[6]===0&&a[3]===0&&a[2]===0))return B.lc +if(a[0]===1&&a[1]===0&&a[4]===0&&a[5]===1&&a[12]===0&&a[13]===0)return B.KT +else return B.KU}, +bSs(a){var s=a[0] +if(s===1&&a[1]===0&&a[2]===0&&a[3]===0&&a[4]===0&&a[5]===1&&a[6]===0&&a[7]===0&&a[8]===0&&a[9]===0&&a[10]===1&&a[11]===0&&a[14]===0&&a[15]===1)return"translate3d("+A.h(a[12])+"px, "+A.h(a[13])+"px, 0px)" +else return"matrix3d("+A.h(s)+","+A.h(a[1])+","+A.h(a[2])+","+A.h(a[3])+","+A.h(a[4])+","+A.h(a[5])+","+A.h(a[6])+","+A.h(a[7])+","+A.h(a[8])+","+A.h(a[9])+","+A.h(a[10])+","+A.h(a[11])+","+A.h(a[12])+","+A.h(a[13])+","+A.h(a[14])+","+A.h(a[15])+")"}, +bgF(a,b){var s=$.bBi() +s[0]=b.a +s[1]=b.b +s[2]=b.c +s[3]=b.d +A.bm3(a,s) +return new A.I(s[0],s[1],s[2],s[3])}, +bm3(a1,a2){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0=$.bmP() +a0[0]=a2[0] +a0[4]=a2[1] +a0[8]=0 +a0[12]=1 +a0[1]=a2[2] +a0[5]=a2[1] +a0[9]=0 +a0[13]=1 +a0[2]=a2[0] +a0[6]=a2[3] +a0[10]=0 +a0[14]=1 +a0[3]=a2[2] +a0[7]=a2[3] +a0[11]=0 +a0[15]=1 +s=$.bBh().a +r=s[0] +q=s[4] +p=s[8] +o=s[12] +n=s[1] +m=s[5] +l=s[9] +k=s[13] +j=s[2] +i=s[6] +h=s[10] +g=s[14] +f=s[3] +e=s[7] +d=s[11] +c=s[15] +b=a1.a +s[0]=r*b[0]+q*b[4]+p*b[8]+o*b[12] +s[4]=r*b[1]+q*b[5]+p*b[9]+o*b[13] +s[8]=r*b[2]+q*b[6]+p*b[10]+o*b[14] +s[12]=r*b[3]+q*b[7]+p*b[11]+o*b[15] +s[1]=n*b[0]+m*b[4]+l*b[8]+k*b[12] +s[5]=n*b[1]+m*b[5]+l*b[9]+k*b[13] +s[9]=n*b[2]+m*b[6]+l*b[10]+k*b[14] +s[13]=n*b[3]+m*b[7]+l*b[11]+k*b[15] +s[2]=j*b[0]+i*b[4]+h*b[8]+g*b[12] +s[6]=j*b[1]+i*b[5]+h*b[9]+g*b[13] +s[10]=j*b[2]+i*b[6]+h*b[10]+g*b[14] +s[14]=j*b[3]+i*b[7]+h*b[11]+g*b[15] +s[3]=f*b[0]+e*b[4]+d*b[8]+c*b[12] +s[7]=f*b[1]+e*b[5]+d*b[9]+c*b[13] +s[11]=f*b[2]+e*b[6]+d*b[10]+c*b[14] +s[15]=f*b[3]+e*b[7]+d*b[11]+c*b[15] +a=b[15] +if(a===0)a=1 +a2[0]=Math.min(Math.min(Math.min(a0[0],a0[1]),a0[2]),a0[3])/a +a2[1]=Math.min(Math.min(Math.min(a0[4],a0[5]),a0[6]),a0[7])/a +a2[2]=Math.max(Math.max(Math.max(a0[0],a0[1]),a0[2]),a0[3])/a +a2[3]=Math.max(Math.max(Math.max(a0[4],a0[5]),a0[6]),a0[7])/a}, +bxn(a,b){return a.a<=b.a&&a.b<=b.b&&a.c>=b.c&&a.d>=b.d}, +f8(a){var s,r +if(a===4278190080)return"#000000" +if((a&4278190080)>>>0===4278190080){s=B.f.o0(a&16777215,16) +switch(s.length){case 1:return"#00000"+s +case 2:return"#0000"+s +case 3:return"#000"+s +case 4:return"#00"+s +case 5:return"#0"+s +default:return"#"+s}}else{r=""+"rgba("+B.f.j(a>>>16&255)+","+B.f.j(a>>>8&255)+","+B.f.j(a&255)+","+B.e.j((a>>>24&255)/255)+")" +return r.charCodeAt(0)==0?r:r}}, +bR6(a,b,c,d){var s=""+a,r=""+b,q=""+c +if(d===255)return"rgb("+s+","+r+","+q+")" +else return"rgba("+s+","+r+","+q+","+B.e.az(d/255,2)+")"}, +bvb(){if(A.bTi())return"BlinkMacSystemFont" +var s=$.fI() +if(s!==B.bx)s=s===B.d0 +else s=!0 +if(s)return"-apple-system, BlinkMacSystemFont" +return"Arial"}, +beC(a){var s +if(B.add.n(0,a))return a +s=$.fI() +if(s!==B.bx)s=s===B.d0 +else s=!0 +if(s)if(a===".SF Pro Text"||a===".SF Pro Display"||a===".SF UI Text"||a===".SF UI Display")return A.bvb() +return'"'+A.h(a)+'", '+A.bvb()+", sans-serif"}, +vB(a,b,c){if(ac)return c +else return a}, +vF(a,b){var s +if(a==null)return b==null +if(b==null||a.length!==b.length)return!1 +for(s=0;s")).cq(0," ")}, +hn(a,b,c){A.Q(a.style,b,c)}, +bxu(a){var s=self.document.querySelector("#flutterweb-theme") +if(a!=null){if(s==null){s=A.c4(self.document,"meta") +s.id="flutterweb-theme" +s.name="theme-color" +self.document.head.append(s)}s.content=A.f8(a.a)}else if(s!=null)s.remove()}, +VW(a,b,c,d,e,f,g,h,i){var s=$.bv6 +if(s==null?$.bv6=a.ellipse!=null:s)A.ca(a,"ellipse",[b,c,d,e,f,g,h,i]) +else{a.save() +a.translate(b,c) +a.rotate(f) +a.scale(d,e) +A.ca(a,"arc",[0,0,1,g,h,i]) +a.restore()}}, +blR(a){var s +for(;a.lastChild!=null;){s=a.lastChild +if(s.parentNode!=null)s.parentNode.removeChild(s)}}, +bj4(a,b,c){var s=b.h("@<0>").S(c),r=new A.zD(s.h("zD<+key,value(1,2)>")) +r.a=r +r.b=r +return new A.a2R(a,new A.wz(r,s.h("wz<+key,value(1,2)>")),A.F(b,s.h("bpc<+key,value(1,2)>")),s.h("a2R<1,2>"))}, +h8(){var s=new Float32Array(16) +s[15]=1 +s[0]=1 +s[5]=1 +s[10]=1 +return new A.ds(s)}, +bHO(a){return new A.ds(a)}, +bHR(a){var s=new A.ds(new Float32Array(16)) +if(s.k0(a)===0)return null +return s}, +aqj(a){var s=new Float32Array(16) +s[15]=a[15] +s[14]=a[14] +s[13]=a[13] +s[12]=a[12] +s[11]=a[11] +s[10]=a[10] +s[9]=a[9] +s[8]=a[8] +s[7]=a[7] +s[6]=a[6] +s[5]=a[5] +s[4]=a[4] +s[3]=a[3] +s[2]=a[2] +s[1]=a[1] +s[0]=a[0] +return s}, +bEj(a){var s=new A.a_F(a,new A.ls(null,null,t.Qh)) +s.alr(a) +return s}, +bEJ(a){var s,r +if(a!=null)return A.bEj(a) +else{s=new A.a1i(new A.ls(null,null,t.pA)) +r=self.window.visualViewport +if(r==null)r=self.window +s.a=A.eG(r,"resize",s.gaxH()) +return s}}, +bEk(a){var s=t.e.a(A.cA(new A.aej())) +A.bF5(a) +return new A.ax2(a,!0,s)}, +bFy(a){if(a!=null)return A.bEk(a) +else return A.bGj()}, +bGj(){return new A.aCR(!0,t.e.a(A.cA(new A.aej())))}, +bFD(a,b){var s=new A.a0F(a,b,A.d3(null,t.H),B.ij) +s.als(a,b) +return s}, +Hu:function Hu(a){var _=this +_.a=a +_.d=_.c=_.b=null}, +arv:function arv(a,b){this.a=a +this.b=b}, +arA:function arA(a){this.a=a}, +arz:function arz(a){this.a=a}, +arB:function arB(a){this.a=a}, +ary:function ary(a,b){this.a=a +this.b=b}, +arx:function arx(a){this.a=a}, +arw:function arw(a){this.a=a}, +Ic:function Ic(a,b){this.a=a +this.b=b}, +qs:function qs(a,b){this.a=a +this.b=b}, +auG:function auG(a,b,c,d,e){var _=this +_.e=_.d=null +_.f=a +_.r=b +_.z=_.y=_.x=_.w=null +_.Q=0 +_.as=c +_.a=d +_.b=null +_.c=e}, +aww:function aww(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.w=_.r=null +_.x=1 +_.Q=_.z=_.y=null +_.as=!1}, +al0:function al0(){}, +kU:function kU(a){this.a=a}, +avQ:function avQ(a,b,c){this.a=a +this.b=b +this.c=c}, +bdb:function bdb(){}, +bdu:function bdu(a,b){this.a=a +this.b=b}, +bdt:function bdt(a,b){this.a=a +this.b=b}, +auC:function auC(a){this.a=a}, +a2U:function a2U(a){this.a=a +this.b=$}, +Yd:function Yd(){}, +Iv:function Iv(a,b){this.a=a +this.b=b}, +Ix:function Ix(a){this.a=a}, +AO:function AO(a,b){this.a=a +this.b=b}, +a1O:function a1O(a,b,c,d,e,f,g,h,i){var _=this +_.b=a +_.c=b +_.d=c +_.e=d +_.f=e +_.r=f +_.w=g +_.x=h +_.Q=i}, +aF1:function aF1(){}, +aF2:function aF2(a){this.a=a}, +aEZ:function aEZ(){}, +aF_:function aF_(a){this.a=a}, +aF0:function aF0(a){this.a=a}, +ud:function ud(a,b){this.a=a +this.b=b}, +xN:function xN(a,b){this.a=a +this.b=b}, +mY:function mY(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +Lz:function Lz(a){this.a=a}, +a0v:function a0v(a,b){this.a=a +this.b=b}, +p3:function p3(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +beS:function beS(a,b){this.a=a +this.b=b}, +beR:function beR(a,b){this.a=a +this.b=b}, +a8H:function a8H(a,b,c,d,e){var _=this +_.a=a +_.b=$ +_.c=b +_.d=c +_.e=d +_.f=e +_.w=_.r=null}, +aTq:function aTq(){}, +aTr:function aTr(){}, +aTs:function aTs(a){this.a=a}, +aTt:function aTt(a){this.a=a}, +aTu:function aTu(){}, +yo:function yo(a,b,c){this.a=a +this.b=b +this.c=c}, +uX:function uX(a,b,c){this.a=a +this.b=b +this.c=c}, +wX:function wX(a,b,c){this.a=a +this.b=b +this.c=c}, +aTp:function aTp(a){this.a=a}, +a1U:function a1U(a){this.a=a}, +bgf:function bgf(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +AP:function AP(a,b){var _=this +_.a=$ +_.b=a +_.c=b +_.d=!1}, +Yf:function Yf(){}, +Q7:function Q7(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.d=$}, +Q8:function Q8(a,b){this.a=a +this.b=b +this.c=$}, +Yb:function Yb(a,b,c,d){var _=this +_.a=$ +_.b=a +_.c=b +_.d=0 +_.e=-1 +_.f=c +_.r=d +_.w=!1}, +Iw:function Iw(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.e=_.d=$ +_.f=!1 +_.r=0 +_.w=null +_.x=d}, +j0:function j0(){}, +aM2:function aM2(a){this.c=a}, +aLi:function aLi(a,b){this.a=a +this.b=b}, +B2:function B2(){}, +a7K:function a7K(a,b){this.c=a +this.a=null +this.b=b}, +Xl:function Xl(a,b,c,d){var _=this +_.f=a +_.r=b +_.c=c +_.a=null +_.b=d}, +Yo:function Yo(a,b,c,d){var _=this +_.f=a +_.r=b +_.c=c +_.a=null +_.b=d}, +Yr:function Yr(a,b,c,d){var _=this +_.f=a +_.r=b +_.c=c +_.a=null +_.b=d}, +Yq:function Yq(a,b,c,d){var _=this +_.f=a +_.r=b +_.c=c +_.a=null +_.b=d}, +a5F:function a5F(a,b,c,d){var _=this +_.f=a +_.r=b +_.c=c +_.a=null +_.b=d}, +OY:function OY(a,b,c){var _=this +_.f=a +_.c=b +_.a=null +_.b=c}, +a5D:function a5D(a,b,c){var _=this +_.f=a +_.c=b +_.a=null +_.b=c}, +a8s:function a8s(a,b,c,d,e,f){var _=this +_.f=a +_.r=b +_.w=c +_.x=d +_.c=e +_.a=null +_.b=f}, +a6j:function a6j(a,b,c){var _=this +_.c=a +_.d=b +_.a=null +_.b=c}, +a2x:function a2x(a){this.a=a}, +aGH:function aGH(a){this.a=a +this.b=$}, +aGI:function aGI(a,b){this.a=a +this.b=b}, +aCF:function aCF(a,b,c){this.a=a +this.b=b +this.c=c}, +aCM:function aCM(a,b,c){this.a=a +this.b=b +this.c=c}, +aCN:function aCN(a,b,c){this.a=a +this.b=b +this.c=c}, +awn:function awn(){}, +avS:function avS(a,b){this.a=a +this.b=b +this.c=$}, +Yh:function Yh(a){this.a=a}, +bdE:function bdE(){}, +aK4:function aK4(){}, +iD:function iD(a,b){this.a=null +this.b=a +this.$ti=b}, +YH:function YH(a,b){var _=this +_.a=$ +_.b=1 +_.c=a +_.$ti=b}, +AQ:function AQ(a,b,c,d,e,f){var _=this +_.a=a +_.b=$ +_.c=null +_.d=b +_.e=c +_.f=0 +_.r=d +_.w=e +_.x=!0 +_.y=4278190080 +_.z=!1 +_.ax=_.at=_.as=_.Q=null +_.ay=f +_.CW=_.ch=null}, +Iy:function Iy(a){this.a=$ +this.b=a}, +Yl:function Yl(a){var _=this +_.a=$ +_.b=a +_.c=!1 +_.d=null}, +ta:function ta(){this.c=this.b=this.a=null}, +aN6:function aN6(a,b){this.a=a +this.b=b}, +AE:function AE(a,b){this.a=a +this.b=b}, +XT:function XT(){var _=this +_.a=null +_.b=$ +_.c=null +_.d=$}, +auD:function auD(a){this.a=a}, +a8y:function a8y(){}, +Ye:function Ye(a,b,c,d,e,f){var _=this +_.b=a +_.c=b +_.d=c +_.e=d +_.f=e +_.r=f +_.a=$}, +Oi:function Oi(a,b){this.a=a +this.b=b}, +oU:function oU(a){var _=this +_.a=null +_.b=!0 +_.c=!1 +_.w=_.r=_.f=_.e=_.d=null +_.x=a +_.y=null +_.at=_.as=_.Q=_.z=-1 +_.ax=!1 +_.ch=_.ay=null +_.CW=-1}, +aWI:function aWI(a){this.a=a}, +Ym:function Ym(a,b){this.a=a +this.b=b +this.c=!1}, +a9H:function a9H(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=$ +_.d=c +_.e=d}, +Yk:function Yk(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +IA:function IA(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1){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 +_.CW=r +_.cx=s +_.cy=a0 +_.db=a1 +_.dy=_.dx=$}, +avU:function avU(a){this.a=a}, +Iz:function Iz(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}, +Yj:function Yj(a){var _=this +_.a=$ +_.b=-1/0 +_.c=a +_.d=0 +_.e=!1 +_.z=_.y=_.x=_.w=_.r=_.f=0 +_.Q=$ +_.as=!1}, +Yg:function Yg(a){this.a=a}, +avT:function avT(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=0 +_.d=c +_.e=d}, +bdS:function bdS(a){this.a=a}, +Ky:function Ky(a,b){this.a=a +this.b=b}, +XS:function XS(a){this.a=a}, +Yt:function Yt(a,b){this.a=a +this.b=b}, +awb:function awb(a,b){this.a=a +this.b=b}, +awc:function awc(a,b){this.a=a +this.b=b}, +aw9:function aw9(a){this.a=a}, +awa:function awa(a,b){this.a=a +this.b=b}, +aw8:function aw8(a){this.a=a}, +aw5:function aw5(){}, +aw6:function aw6(){}, +aAP:function aAP(){}, +aAQ:function aAQ(){}, +awk:function awk(a,b){this.a=a +this.b=b}, +aAi:function aAi(a,b){this.a=a +this.b=b}, +aBY:function aBY(){this.a=!1 +this.b=null}, +ayi:function ayi(a){this.a=a}, +ayk:function ayk(){}, +a1R:function a1R(a,b){this.a=a +this.b=b}, +aFe:function aFe(a){this.a=a}, +a1Q:function a1Q(a,b){this.a=a +this.b=b}, +Kj:function Kj(a,b){this.a=a +this.b=b}, +a0e:function a0e(a,b,c){this.a=a +this.b=b +this.c=c}, +Jk:function Jk(a,b){this.a=a +this.b=b}, +beM:function beM(a){this.a=a}, +bej:function bej(){}, +afk:function afk(a,b){this.a=a +this.b=-1 +this.$ti=b}, +hL:function hL(a,b){this.a=a +this.$ti=b}, +afp:function afp(a,b){this.a=a +this.b=-1 +this.$ti=b}, +re:function re(a,b){this.a=a +this.$ti=b}, +a0d:function a0d(a,b){this.a=a +this.b=$ +this.$ti=b}, +a15:function a15(a){var _=this +_.a=a +_.e=_.d=_.c=_.b=null +_.y=_.x=_.w=_.r=_.f=$}, +aC2:function aC2(a){this.a=a}, +aC3:function aC3(a){this.a=a}, +aAh:function aAh(){}, +a7Y:function a7Y(a,b){this.a=a +this.b=b}, +yA:function yA(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +al_:function al_(a,b){this.a=a +this.b=b}, +aQz:function aQz(){}, +bgk:function bgk(){}, +bgj:function bgj(){}, +aCe:function aCe(a,b,c,d,e,f,g,h,i,j,k,l,m){var _=this +_.a=a +_.b=$ +_.c=b +_.d=c +_.f=d +_.r=e +_.w=f +_.x=g +_.y=h +_.z=i +_.Q=j +_.as=k +_.at=l +_.ax=m +_.ay=!1}, +aCf:function aCf(){}, +aCg:function aCg(){}, +aCh:function aCh(){}, +aCi:function aCi(){}, +aCj:function aCj(){}, +aCk:function aCk(){}, +aCm:function aCm(){}, +aCl:function aCl(a){this.a=a}, +aCn:function aCn(a){this.a=a}, +aCo:function aCo(a){this.a=a}, +a0S:function a0S(a,b,c){var _=this +_.a=a +_.c=b +_.d=c +_.f=null}, +aBd:function aBd(a,b,c){this.a=a +this.b=b +this.c=c}, +BM:function BM(a,b){this.a=a +this.b=b}, +wY:function wY(a,b){this.a=a +this.b=b}, +K0:function K0(a){this.a=a}, +bfe:function bfe(a){this.a=a}, +bff:function bff(a){this.a=a}, +bfg:function bfg(){}, +bfd:function bfd(){}, +hX:function hX(){}, +a1d:function a1d(a){this.a=a}, +JZ:function JZ(a){this.a=a}, +K_:function K_(a){this.a=a}, +HR:function HR(){}, +kh:function kh(a,b){this.a=a +this.$ti=b}, +YI:function YI(a){this.b=this.a=null +this.$ti=a}, +Fy:function Fy(a,b,c){this.a=a +this.b=b +this.$ti=c}, +M9:function M9(a,b,c,d){var _=this +_.CW=a +_.dx=_.db=_.cy=_.cx=null +_.dy=$ +_.fr=null +_.x=b +_.a=c +_.b=-1 +_.c=d +_.w=_.r=_.f=_.e=_.d=null}, +pE:function pE(a,b,c,d,e,f,g,h,i){var _=this +_.a=a +_.b=null +_.c=b +_.d=c +_.e=null +_.f=d +_.r=e +_.w=f +_.x=0 +_.y=g +_.Q=_.z=null +_.ax=_.at=_.as=!1 +_.ay=h +_.ch=i}, +ea:function ea(a){this.b=a}, +aWC:function aWC(a){this.a=a}, +Qx:function Qx(){}, +Mb:function Mb(a,b,c,d,e,f){var _=this +_.CW=a +_.cx=b +_.l5$=c +_.x=d +_.a=e +_.b=-1 +_.c=f +_.w=_.r=_.f=_.e=_.d=null}, +a6d:function a6d(a,b,c,d,e,f){var _=this +_.CW=a +_.cx=b +_.l5$=c +_.x=d +_.a=e +_.b=-1 +_.c=f +_.w=_.r=_.f=_.e=_.d=null}, +Ma:function Ma(a,b,c,d,e){var _=this +_.CW=a +_.cx=b +_.cy=null +_.x=c +_.a=d +_.b=-1 +_.c=e +_.w=_.r=_.f=_.e=_.d=null}, +aWK:function aWK(a,b,c){this.a=a +this.b=b +this.c=c}, +aWJ:function aWJ(a,b){this.a=a +this.b=b}, +ayd:function ayd(a,b,c,d){var _=this +_.a=a +_.a9l$=b +_.EY$=c +_.th$=d}, +Mc:function Mc(a,b,c,d,e){var _=this +_.CW=a +_.cx=b +_.cy=null +_.x=c +_.a=d +_.b=-1 +_.c=e +_.w=_.r=_.f=_.e=_.d=null}, +Md:function Md(a,b,c,d,e){var _=this +_.CW=a +_.cx=b +_.cy=null +_.x=c +_.a=d +_.b=-1 +_.c=e +_.w=_.r=_.f=_.e=_.d=null}, +Ex:function Ex(a){this.a=a +this.b=!1}, +a9I:function a9I(){var _=this +_.e=_.d=_.c=_.b=_.a=null +_.f=!0 +_.r=4278190080 +_.z=_.y=_.x=_.w=null}, +kd:function kd(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +aMM:function aMM(){var _=this +_.d=_.c=_.b=_.a=0}, +awp:function awp(){var _=this +_.d=_.c=_.b=_.a=0}, +aef:function aef(){this.b=this.a=null}, +awS:function awS(){var _=this +_.d=_.c=_.b=_.a=0}, +uP:function uP(a,b){var _=this +_.a=a +_.b=b +_.c=0 +_.e=_.d=-1}, +aLp:function aLp(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.d=!1 +_.e=0 +_.f=-1 +_.Q=_.z=_.y=_.x=_.w=_.r=0}, +D7:function D7(a,b){var _=this +_.b=_.a=null +_.e=_.d=_.c=0 +_.f=a +_.r=b +_.x=_.w=0 +_.y=null +_.z=0 +_.as=_.Q=!0 +_.ch=_.ay=_.ax=_.at=!1 +_.CW=-1 +_.cx=0}, +uh:function uh(a){var _=this +_.a=a +_.b=-1 +_.e=_.d=_.c=0}, +qI:function qI(){this.b=this.a=null}, +aTo:function aTo(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +aLr:function aLr(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.e=_.d=0 +_.f=d}, +uf:function uf(a,b){this.a=a +this.b=b}, +a6g:function a6g(a,b,c,d,e,f,g){var _=this +_.ch=null +_.CW=a +_.cx=b +_.cy=c +_.db=d +_.dy=1 +_.fr=!1 +_.fx=e +_.id=_.go=_.fy=null +_.a=f +_.b=-1 +_.c=g +_.w=_.r=_.f=_.e=_.d=null}, +aLv:function aLv(a){this.a=a}, +aOy:function aOy(a,b,c){var _=this +_.a=a +_.b=null +_.c=b +_.d=c +_.f=_.e=!1 +_.r=1}, +f6:function f6(){}, +Jr:function Jr(){}, +M2:function M2(){}, +a64:function a64(){}, +a68:function a68(a,b){this.a=a +this.b=b}, +a66:function a66(a,b){this.a=a +this.b=b}, +a65:function a65(a){this.a=a}, +a67:function a67(a){this.a=a}, +a5T:function a5T(a,b){var _=this +_.f=a +_.r=b +_.a=!1 +_.c=_.b=-1/0 +_.e=_.d=1/0}, +a5S:function a5S(a){var _=this +_.f=a +_.a=!1 +_.c=_.b=-1/0 +_.e=_.d=1/0}, +a5R:function a5R(a){var _=this +_.f=a +_.a=!1 +_.c=_.b=-1/0 +_.e=_.d=1/0}, +a5X:function a5X(a,b,c){var _=this +_.f=a +_.r=b +_.w=c +_.a=!1 +_.c=_.b=-1/0 +_.e=_.d=1/0}, +a5Z:function a5Z(a){var _=this +_.f=a +_.a=!1 +_.c=_.b=-1/0 +_.e=_.d=1/0}, +a62:function a62(a,b){var _=this +_.f=a +_.r=b +_.a=!1 +_.c=_.b=-1/0 +_.e=_.d=1/0}, +a61:function a61(a,b){var _=this +_.f=a +_.r=b +_.a=!1 +_.c=_.b=-1/0 +_.e=_.d=1/0}, +a5V:function a5V(a,b,c){var _=this +_.f=a +_.r=b +_.w=c +_.x=null +_.a=!1 +_.c=_.b=-1/0 +_.e=_.d=1/0}, +a5Y:function a5Y(a,b){var _=this +_.f=a +_.r=b +_.a=!1 +_.c=_.b=-1/0 +_.e=_.d=1/0}, +a5U:function a5U(a,b,c){var _=this +_.f=a +_.r=b +_.w=c +_.a=!1 +_.c=_.b=-1/0 +_.e=_.d=1/0}, +a60:function a60(a,b){var _=this +_.f=a +_.r=b +_.a=!1 +_.c=_.b=-1/0 +_.e=_.d=1/0}, +a63:function a63(a,b,c,d){var _=this +_.f=a +_.r=b +_.w=c +_.x=d +_.a=!1 +_.c=_.b=-1/0 +_.e=_.d=1/0}, +a5W:function a5W(a,b,c,d){var _=this +_.f=a +_.r=b +_.w=c +_.x=d +_.a=!1 +_.c=_.b=-1/0 +_.e=_.d=1/0}, +a6_:function a6_(a,b){var _=this +_.f=a +_.r=b +_.a=!1 +_.c=_.b=-1/0 +_.e=_.d=1/0}, +b7J:function b7J(a,b,c,d){var _=this +_.a=a +_.b=!1 +_.d=_.c=17976931348623157e292 +_.f=_.e=-17976931348623157e292 +_.r=b +_.w=c +_.x=!0 +_.y=d +_.z=!1 +_.ax=_.at=_.as=_.Q=0}, +aPB:function aPB(){var _=this +_.d=_.c=_.b=_.a=!1}, +bcF:function bcF(){}, +aEW:function aEW(){this.b=this.a=$}, +aEX:function aEX(){}, +aEY:function aEY(a,b){this.a=a +this.b=b}, +Ey:function Ey(a){this.a=a}, +Me:function Me(a,b,c){var _=this +_.CW=null +_.x=a +_.a=b +_.b=-1 +_.c=c +_.w=_.r=_.f=_.e=_.d=null}, +aWD:function aWD(a){this.a=a}, +aWF:function aWF(a){this.a=a}, +aWG:function aWG(a){this.a=a}, +Mf:function Mf(a,b,c,d,e,f,g){var _=this +_.CW=null +_.cx=a +_.cy=b +_.db=c +_.dy=null +_.fr=d +_.x=e +_.a=f +_.b=-1 +_.c=g +_.w=_.r=_.f=_.e=_.d=null}, +aKE:function aKE(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +aKF:function aKF(){}, +aSJ:function aSJ(){this.a=null +this.b=!1}, +aAl:function aAl(){}, +BY:function BY(a,b,c,d,e,f){var _=this +_.b=a +_.c=b +_.d=c +_.e=d +_.f=e +_.r=f}, +aE1:function aE1(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +pW:function pW(){}, +PQ:function PQ(a,b,c){this.a=a +this.b=b +this.c=c}, +RR:function RR(a,b){this.a=a +this.b=b}, +a0B:function a0B(){}, +Lu:function Lu(a,b){this.b=a +this.c=b +this.a=null}, +aID:function aID(){}, +a8r:function a8r(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.e=null +_.w=_.r=_.f=0 +_.y=d +_.z=e +_.Q=null +_.as=f}, +ND:function ND(a,b){this.b=a +this.c=b +this.d=1}, +yP:function yP(a,b,c){this.a=a +this.b=b +this.c=c}, +beI:function beI(){}, +y_:function y_(a,b){this.a=a +this.b=b}, +fo:function fo(){}, +a6f:function a6f(){}, +hb:function hb(){}, +aLu:function aLu(){}, +vn:function vn(a,b,c){this.a=a +this.b=b +this.c=c}, +aM3:function aM3(){this.b=0}, +Mg:function Mg(a,b,c,d){var _=this +_.CW=a +_.cy=_.cx=null +_.x=b +_.a=c +_.b=-1 +_.c=d +_.w=_.r=_.f=_.e=_.d=null}, +Kh:function Kh(a,b){this.a=a +this.b=b}, +aEQ:function aEQ(a,b,c){this.a=a +this.b=b +this.c=c}, +aER:function aER(a,b){this.a=a +this.b=b}, +aEO:function aEO(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aEP:function aEP(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +a1M:function a1M(a,b){this.a=a +this.b=b}, +NL:function NL(a){this.a=a}, +a1N:function a1N(a,b,c){var _=this +_.a=a +_.c=_.b=!1 +_.d=b +_.e=c}, +XN:function XN(){}, +atZ:function atZ(){}, +au_:function au_(a){this.a=a}, +Hx:function Hx(a,b){this.a=a +this.b=b}, +qg:function qg(a,b){this.a=a +this.b=b}, +wp:function wp(a,b){this.a=a +this.b=b}, +bfD:function bfD(){}, +bfE:function bfE(a){this.a=a}, +bfC:function bfC(a){this.a=a}, +bfF:function bfF(){}, +a2a:function a2a(a,b){this.a=a +this.$ti=b}, +aG5:function aG5(a,b){this.a=a +this.b=b}, +aG6:function aG6(a){this.a=a}, +aG8:function aG8(a){this.a=a}, +aG7:function aG7(a){this.a=a}, +ol:function ol(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.f=_.e=null +_.$ti=e}, +bfq:function bfq(a,b){this.a=a +this.b=b}, +bfo:function bfo(a,b){this.a=a +this.b=b}, +bfp:function bfp(a){this.a=a}, +bdV:function bdV(){}, +bdW:function bdW(){}, +bdX:function bdX(){}, +bdY:function bdY(){}, +bdZ:function bdZ(){}, +be_:function be_(){}, +be0:function be0(){}, +be1:function be1(){}, +bd7:function bd7(a,b,c){this.a=a +this.b=b +this.c=c}, +a2n:function a2n(a){this.a=$ +this.b=a}, +aGo:function aGo(a){this.a=a}, +aGp:function aGp(a){this.a=a}, +aGq:function aGq(a){this.a=a}, +aGs:function aGs(a){this.a=a}, +oh:function oh(a){this.a=a}, +aGt:function aGt(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=null +_.e=!1 +_.f=d +_.r=e}, +aGz:function aGz(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aGA:function aGA(a){this.a=a}, +aGB:function aGB(a,b,c){this.a=a +this.b=b +this.c=c}, +aGC:function aGC(a,b){this.a=a +this.b=b}, +aGv:function aGv(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +aGw:function aGw(a,b,c){this.a=a +this.b=b +this.c=c}, +aGx:function aGx(a,b){this.a=a +this.b=b}, +aGy:function aGy(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aGu:function aGu(a,b,c){this.a=a +this.b=b +this.c=c}, +aGD:function aGD(a,b){this.a=a +this.b=b}, +aJo:function aJo(){}, +atL:function atL(){}, +Ly:function Ly(a){var _=this +_.d=a +_.a=_.e=$ +_.c=_.b=!1}, +aJH:function aJH(){}, +NK:function NK(a,b){var _=this +_.d=a +_.e=b +_.f=null +_.a=$ +_.c=_.b=!1}, +aT9:function aT9(){}, +aTa:function aTa(){}, +al:function al(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.d=$}, +pN:function pN(a,b){this.a=a +this.b=b}, +aK3:function aK3(a){this.a=a}, +a0D:function a0D(){this.a=null +this.b=$ +this.c=!1}, +a0C:function a0C(a){this.a=!1 +this.b=a}, +a1E:function a1E(a,b){this.a=a +this.b=b +this.c=$}, +a0E:function a0E(a,b,c,d,e){var _=this +_.a=a +_.d=b +_.e=c +_.id=_.go=_.fy=_.fx=_.fr=_.dy=_.cy=_.ch=_.ay=_.ax=_.at=_.as=_.Q=_.z=_.y=_.x=_.w=_.r=_.f=null +_.k1=d +_.p4=_.p3=_.p2=_.k4=_.k3=_.k2=null +_.R8=e +_.ry=null}, +aAw:function aAw(a,b,c){this.a=a +this.b=b +this.c=c}, +aAv:function aAv(a,b){this.a=a +this.b=b}, +aAr:function aAr(a,b){this.a=a +this.b=b}, +aAs:function aAs(a,b){this.a=a +this.b=b}, +aAt:function aAt(){}, +aAu:function aAu(a,b){this.a=a +this.b=b}, +aAq:function aAq(a){this.a=a}, +aAp:function aAp(a){this.a=a}, +aAo:function aAo(a){this.a=a}, +aAx:function aAx(a,b){this.a=a +this.b=b}, +bfH:function bfH(a,b,c){this.a=a +this.b=b +this.c=c}, +aaV:function aaV(){}, +a6n:function a6n(a,b,c,d,e,f,g,h){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=h}, +aLH:function aLH(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aLI:function aLI(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +aLJ:function aLJ(a,b){this.b=a +this.c=b}, +aQx:function aQx(){}, +aQy:function aQy(){}, +a6s:function a6s(a,b,c){var _=this +_.a=a +_.c=b +_.d=c +_.e=$}, +aLU:function aLU(){}, +RJ:function RJ(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +b0B:function b0B(){}, +b0C:function b0C(a){this.a=a}, +anV:function anV(){}, +pl:function pl(a,b){this.a=a +this.b=b}, +zy:function zy(){this.a=0}, +b7M:function b7M(a,b,c,d,e,f){var _=this +_.w=a +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f +_.f=null +_.r=!1}, +b7O:function b7O(){}, +b7N:function b7N(a,b,c){this.a=a +this.b=b +this.c=c}, +b7P:function b7P(a){this.a=a}, +b7Q:function b7Q(a){this.a=a}, +b7R:function b7R(a){this.a=a}, +b7S:function b7S(a){this.a=a}, +b7T:function b7T(a){this.a=a}, +b7U:function b7U(a){this.a=a}, +bcc:function bcc(a,b,c,d,e,f){var _=this +_.w=a +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f +_.f=null +_.r=!1}, +bcd:function bcd(a,b,c){this.a=a +this.b=b +this.c=c}, +bce:function bce(a){this.a=a}, +bcf:function bcf(a){this.a=a}, +bcg:function bcg(a){this.a=a}, +bch:function bch(a){this.a=a}, +b6M:function b6M(a,b,c,d,e,f){var _=this +_.w=a +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f +_.f=null +_.r=!1}, +b6N:function b6N(a,b,c){this.a=a +this.b=b +this.c=c}, +b6O:function b6O(a){this.a=a}, +b6P:function b6P(a){this.a=a}, +b6Q:function b6Q(a){this.a=a}, +b6R:function b6R(a){this.a=a}, +b6S:function b6S(a){this.a=a}, +Gs:function Gs(a,b){this.a=null +this.b=a +this.c=b}, +aLM:function aLM(a){this.a=a +this.b=0}, +aLN:function aLN(a,b){this.a=a +this.b=b}, +bjw:function bjw(){}, +aN9:function aN9(a,b){var _=this +_.a=a +_.c=_.b=null +_.d=0 +_.e=b}, +aNa:function aNa(a){this.a=a}, +aNb:function aNb(a){this.a=a}, +aNc:function aNc(a){this.a=a}, +aNe:function aNe(a,b,c){this.a=a +this.b=b +this.c=c}, +aNf:function aNf(a){this.a=a}, +a1p:function a1p(a){this.a=a}, +a1o:function a1o(a){var _=this +_.a=a +_.fx=_.fr=_.dy=_.CW=_.ch=_.ay=_.ax=_.w=_.r=_.f=_.e=_.d=_.c=null}, +aKP:function aKP(a,b){var _=this +_.b=_.a=null +_.c=a +_.d=b}, +HQ:function HQ(a,b){this.a=a +this.b=b}, +ara:function ara(a,b){this.a=a +this.b=b}, +arb:function arb(a){this.a=a}, +Q4:function Q4(a,b){this.a=a +this.b=b}, +avP:function avP(a,b,c){var _=this +_.e=a +_.a=b +_.b=c +_.c=null}, +a07:function a07(a,b){this.a=a +this.b=b +this.c=null}, +a7S:function a7S(a,b){var _=this +_.d=null +_.a=a +_.b=b +_.c=!1}, +aQm:function aQm(a){this.a=a}, +a1a:function a1a(a,b,c){var _=this +_.d=a +_.a=b +_.b=c +_.c=!1}, +Wv:function Wv(a){this.a=a +this.b=null}, +ard:function ard(a){this.a=a}, +are:function are(a){this.a=a}, +arc:function arc(a,b,c){this.a=a +this.b=b +this.c=c}, +aFG:function aFG(a,b){var _=this +_.e=null +_.a=a +_.b=b +_.c=null}, +aFP:function aFP(a,b,c,d){var _=this +_.e=a +_.f=b +_.r=1 +_.w=null +_.x=!1 +_.a=c +_.b=d +_.c=null}, +aFQ:function aFQ(a,b){this.a=a +this.b=b}, +aFR:function aFR(a){this.a=a}, +a2r:function a2r(a,b){this.a=a +this.b=b +this.c=!1}, +a2N:function a2N(a,b){var _=this +_.d=null +_.a=a +_.b=b +_.c=!1}, +aRn:function aRn(a,b,c){var _=this +_.e=null +_.f=a +_.r=null +_.w=0 +_.a=b +_.b=c +_.c=null}, +aRu:function aRu(a){this.a=a}, +aRv:function aRv(a){this.a=a}, +aRw:function aRw(a){this.a=a}, +BA:function BA(a){this.a=a}, +aAc:function aAc(a){this.a=a}, +a8k:function a8k(a){this.a=a}, +a8i:function a8i(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9){var _=this +_.a=a +_.b=b +_.c=c +_.f=d +_.r=e +_.w=f +_.x=g +_.y=h +_.z=i +_.Q=j +_.as=k +_.at=l +_.ax=m +_.ay=n +_.ch=o +_.CW=p +_.cx=q +_.cy=r +_.db=s +_.dx=a0 +_.dy=a1 +_.fr=a2 +_.fx=a3 +_.fy=a4 +_.go=a5 +_.id=a6 +_.k1=a7 +_.k2=a8 +_.k4=a9}, +oI:function oI(a,b){this.a=a +this.b=b}, +yy:function yy(a,b){this.a=a +this.b=b}, +a6v:function a6v(){}, +aDi:function aDi(a,b){this.a=a +this.b=b +this.c=null}, +qM:function qM(){}, +yL:function yL(a,b,c){var _=this +_.a=0 +_.fy=_.fx=_.fr=_.dy=_.dx=_.db=_.cy=_.cx=_.CW=_.ch=_.ay=_.ax=_.at=_.as=_.Q=_.z=_.y=_.x=_.w=_.r=_.f=_.e=_.d=_.c=_.b=null +_.go=-1 +_.id=a +_.k1=b +_.k2=c +_.k3=-1 +_.p2=_.p1=_.ok=_.k4=null +_.p4=_.p3=0}, +aS8:function aS8(a){this.a=a}, +arf:function arf(a,b){this.a=a +this.b=b}, +x_:function x_(a,b){this.a=a +this.b=b}, +NB:function NB(a,b){this.a=a +this.b=b}, +aAy:function aAy(a,b,c,d,e,f,g,h,i){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=null +_.r=f +_.w=g +_.x=!1 +_.z=h +_.Q=null +_.as=i}, +aAz:function aAz(a){this.a=a}, +aAA:function aAA(a,b){this.a=a +this.b=b}, +aAC:function aAC(){}, +aAB:function aAB(a){this.a=a}, +JB:function JB(a,b){this.a=a +this.b=b}, +aS3:function aS3(a){this.a=a}, +aS_:function aS_(){}, +axn:function axn(){this.a=null}, +axo:function axo(a){this.a=a}, +aJb:function aJb(){var _=this +_.b=_.a=null +_.c=0 +_.d=!1}, +aJd:function aJd(a){this.a=a}, +aJc:function aJc(a){this.a=a}, +au4:function au4(a,b){this.a=a +this.b=b +this.c=null}, +a9W:function a9W(a,b){var _=this +_.d=null +_.a=a +_.b=b +_.c=!1}, +aX6:function aX6(a){this.a=a}, +aSe:function aSe(a,b,c,d,e,f){var _=this +_.cx=_.CW=_.ch=null +_.a=a +_.b=!1 +_.c=null +_.d=$ +_.y=_.x=_.w=_.r=_.f=_.e=null +_.z=b +_.Q=!1 +_.a$=c +_.b$=d +_.c$=e +_.d$=f}, +aXd:function aXd(a,b){var _=this +_.f=_.e=null +_.a=a +_.b=b +_.c=null}, +aXg:function aXg(a){this.a=a}, +aXh:function aXh(a){this.a=a}, +aXi:function aXi(a,b){this.a=a +this.b=b}, +aXj:function aXj(a){this.a=a}, +aXk:function aXk(a){this.a=a}, +aXl:function aXl(a){this.a=a}, +ps:function ps(){}, +agZ:function agZ(){}, +aas:function aas(a,b){this.a=a +this.b=b}, +lP:function lP(a,b){this.a=a +this.b=b}, +aGb:function aGb(){}, +aGd:function aGd(){}, +aVR:function aVR(){}, +aVT:function aVT(a,b){this.a=a +this.b=b}, +aVV:function aVV(){}, +b_0:function b_0(a,b,c){var _=this +_.a=!1 +_.b=a +_.c=b +_.d=c}, +a6N:function a6N(a){this.a=a +this.b=0}, +aWH:function aWH(a,b){this.a=a +this.b=b}, +XU:function XU(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=!1 +_.f=null +_.w=_.r=$ +_.x=null +_.y=!1}, +auF:function auF(){}, +xY:function xY(a,b,c){this.a=a +this.b=b +this.c=c}, +Da:function Da(a,b,c,d,e,f,g){var _=this +_.f=a +_.r=b +_.w=c +_.a=d +_.b=e +_.c=f +_.d=g}, +Ev:function Ev(){}, +Y7:function Y7(a,b){this.b=a +this.c=b +this.a=null}, +a7M:function a7M(a){this.b=a +this.a=null}, +auE:function auE(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=0 +_.r=f +_.w=!0}, +aES:function aES(){}, +aET:function aET(a,b,c){this.a=a +this.b=b +this.c=c}, +aEU:function aEU(a){this.a=a}, +aEV:function aEV(a){this.a=a}, +aXp:function aXp(){}, +aXo:function aXo(){}, +aGL:function aGL(a,b){this.b=a +this.a=b}, +b1Z:function b1Z(){}, +mT:function mT(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q){var _=this +_.L8$=a +_.At$=b +_.k8$=c +_.qI$=d +_.uR$=e +_.uS$=f +_.uT$=g +_.iw$=h +_.ix$=i +_.c=j +_.d=k +_.e=l +_.f=m +_.r=n +_.w=o +_.a=p +_.b=q}, +b4g:function b4g(){}, +b4h:function b4h(){}, +b4f:function b4f(){}, +a0u:function a0u(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q){var _=this +_.L8$=a +_.At$=b +_.k8$=c +_.qI$=d +_.uR$=e +_.uS$=f +_.uT$=g +_.iw$=h +_.ix$=i +_.c=j +_.d=k +_.e=l +_.f=m +_.r=n +_.w=o +_.a=p +_.b=q}, +uS:function uS(a,b,c){var _=this +_.a=a +_.b=-1 +_.c=0 +_.d=null +_.f=_.e=0 +_.w=_.r=-1 +_.x=!1 +_.y=b +_.z=c +_.as=_.Q=$}, +aH8:function aH8(a,b,c,d,e,f){var _=this +_.a=a +_.b=null +_.c=b +_.d=c +_.e=d +_.f=e +_.r=f +_.z=_.y=_.x=_.w=0 +_.Q=-1 +_.ax=_.at=_.as=0}, +a9s:function a9s(a){this.a=a +this.c=this.b=null}, +u0:function u0(a,b){this.a=a +this.b=b}, +aBa:function aBa(a){this.a=a}, +aZL:function aZL(a,b){this.b=a +this.a=b}, +u_:function u_(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.a=d +_.b=e}, +bdg:function bdg(a,b,c){this.a=a +this.b=b +this.c=c}, +a7U:function a7U(a){this.a=a}, +aXO:function aXO(a){this.a=a}, +od:function od(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}, +oE:function oE(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}, +JC:function JC(a,b,c,d,e,f,g,h,i,j,k){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=h +_.x=i +_.z=j +_.Q=k}, +JE:function JE(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1){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 +_.CW=r +_.cx=s +_.cy=a0 +_.db=a1 +_.dx=null +_.dy=$}, +JD:function JD(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}, +aLn:function aLn(){}, +OD:function OD(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=$}, +aX9:function aX9(a){this.a=a +this.b=null}, +aa3:function aa3(a,b,c){var _=this +_.a=a +_.b=b +_.d=_.c=$ +_.e=c +_.r=_.f=$}, +BO:function BO(a,b){this.a=a +this.b=b}, +vX:function vX(a,b,c,d){var _=this +_.c=a +_.d=b +_.a=c +_.b=d}, +Q9:function Q9(a,b){this.a=a +this.b=b}, +eB:function eB(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.$ti=d}, +r3:function r3(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.$ti=d}, +ag5:function ag5(a,b,c){this.c=a +this.a=b +this.b=c}, +atH:function atH(a){this.a=a}, +Yy:function Yy(){}, +aAm:function aAm(){}, +aKz:function aKz(){}, +aAD:function aAD(){}, +aym:function aym(){}, +aDP:function aDP(){}, +aKx:function aKx(){}, +aM4:function aM4(){}, +aRz:function aRz(){}, +aSg:function aSg(){}, +aAn:function aAn(){}, +aKB:function aKB(){}, +aXF:function aXF(){}, +aKN:function aKN(){}, +axd:function axd(){}, +aLx:function aLx(){}, +aA5:function aA5(){}, +aZD:function aZD(){}, +a5h:function a5h(){}, +EG:function EG(a,b){this.a=a +this.b=b}, +Oy:function Oy(a){this.a=a}, +aAd:function aAd(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +aAg:function aAg(){}, +aAe:function aAe(a,b){this.a=a +this.b=b}, +aAf:function aAf(a,b,c){this.a=a +this.b=b +this.c=c}, +Xf:function Xf(a,b,c,d){var _=this +_.a=a +_.b=b +_.d=c +_.e=d}, +EI:function EI(a,b,c,d,e,f,g,h){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=h}, +Bw:function Bw(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +aFV:function aFV(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}, +a1u:function a1u(a,b,c,d,e,f){var _=this +_.a=a +_.b=!1 +_.c=null +_.d=$ +_.y=_.x=_.w=_.r=_.f=_.e=null +_.z=b +_.Q=!1 +_.a$=c +_.b$=d +_.c$=e +_.d$=f}, +a7W:function a7W(a,b,c,d,e,f){var _=this +_.a=a +_.b=!1 +_.c=null +_.d=$ +_.y=_.x=_.w=_.r=_.f=_.e=null +_.z=b +_.Q=!1 +_.a$=c +_.b$=d +_.c$=e +_.d$=f}, +aQw:function aQw(a){this.a=a}, +Ja:function Ja(){}, +axi:function axi(a){this.a=a}, +axj:function axj(){}, +axk:function axk(){}, +axl:function axl(){}, +aFk:function aFk(a,b,c,d,e,f){var _=this +_.ok=null +_.p1=!0 +_.a=a +_.b=!1 +_.c=null +_.d=$ +_.y=_.x=_.w=_.r=_.f=_.e=null +_.z=b +_.Q=!1 +_.a$=c +_.b$=d +_.c$=e +_.d$=f}, +aFn:function aFn(a){this.a=a}, +aFo:function aFo(a,b){this.a=a +this.b=b}, +aFl:function aFl(a){this.a=a}, +aFm:function aFm(a){this.a=a}, +arq:function arq(a,b,c,d,e,f){var _=this +_.a=a +_.b=!1 +_.c=null +_.d=$ +_.y=_.x=_.w=_.r=_.f=_.e=null +_.z=b +_.Q=!1 +_.a$=c +_.b$=d +_.c$=e +_.d$=f}, +arr:function arr(a){this.a=a}, +aBO:function aBO(a,b,c,d,e,f){var _=this +_.a=a +_.b=!1 +_.c=null +_.d=$ +_.y=_.x=_.w=_.r=_.f=_.e=null +_.z=b +_.Q=!1 +_.a$=c +_.b$=d +_.c$=e +_.d$=f}, +aBQ:function aBQ(a){this.a=a}, +aBR:function aBR(a){this.a=a}, +aBP:function aBP(a){this.a=a}, +aXs:function aXs(){}, +aXz:function aXz(a,b){this.a=a +this.b=b}, +aXG:function aXG(){}, +aXB:function aXB(a){this.a=a}, +aXE:function aXE(){}, +aXA:function aXA(a){this.a=a}, +aXD:function aXD(a){this.a=a}, +aXq:function aXq(){}, +aXw:function aXw(){}, +aXC:function aXC(){}, +aXy:function aXy(){}, +aXx:function aXx(){}, +aXv:function aXv(a){this.a=a}, +bgi:function bgi(){}, +aXa:function aXa(a){this.a=a}, +aXb:function aXb(a){this.a=a}, +aFh:function aFh(){var _=this +_.a=$ +_.b=null +_.c=!1 +_.d=null +_.f=$}, +aFj:function aFj(a){this.a=a}, +aFi:function aFi(a){this.a=a}, +azU:function azU(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +azi:function azi(a,b,c){this.a=a +this.b=b +this.c=c}, +azj:function azj(){}, +bfr:function bfr(a,b,c){this.a=a +this.b=b +this.c=c}, +OZ:function OZ(a,b){this.a=a +this.b=b}, +beB:function beB(){}, +a2R:function a2R(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.$ti=d}, +ds:function ds(a){this.a=a}, +aBe:function aBe(a){this.a=a +this.c=this.b=0}, +a_F:function a_F(a,b){this.a=a +this.b=$ +this.c=b}, +ax1:function ax1(a){this.a=a}, +ax0:function ax0(){}, +axs:function axs(){}, +a1i:function a1i(a){this.a=$ +this.b=a}, +ax2:function ax2(a,b,c){var _=this +_.d=a +_.a=null +_.Q$=b +_.as$=c}, +ax3:function ax3(a){this.a=a}, +aA6:function aA6(){}, +b23:function b23(){}, +aej:function aej(){}, +aCR:function aCR(a,b){this.a=null +this.Q$=a +this.as$=b}, +aCS:function aCS(a){this.a=a}, +a0A:function a0A(){}, +aAj:function aAj(a){this.a=a}, +aAk:function aAk(a,b){this.a=a +this.b=b}, +a0F:function a0F(a,b,c,d){var _=this +_.x=null +_.a=a +_.b=b +_.c=null +_.d=c +_.e=$ +_.f=d +_.r=null}, +aaW:function aaW(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +af6:function af6(){}, +afj:function afj(){}, +afO:function afO(){}, +ahi:function ahi(){}, +ahj:function ahj(){}, +ahk:function ahk(){}, +aj_:function aj_(){}, +aj0:function aj0(){}, +aoI:function aoI(){}, +aoR:function aoR(){}, +biX:function biX(a){this.a=a}, +biP(a,b){return new A.Ki(a,b)}, +bMx(a){var s,r,q,p=a.length +if(p===0)return!1 +for(s=0;s32)if(r<127){q=a[s] +q=A.aqi('"(),/:;<=>?@[]{}',q,0)}else q=!0 +else q=!0 +if(q)return!1}return!0}, +Ki:function Ki(a,b){this.a=a +this.b=b}, +b4D:function b4D(){}, +b4M:function b4M(a){this.a=a}, +b4E:function b4E(a,b){this.a=a +this.b=b}, +b4L:function b4L(a,b,c){this.a=a +this.b=b +this.c=c}, +b4K:function b4K(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +b4F:function b4F(a,b,c){this.a=a +this.b=b +this.c=c}, +b4G:function b4G(a,b,c){this.a=a +this.b=b +this.c=c}, +b4H:function b4H(a,b,c,d,e,f,g,h,i,j,k){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=h +_.x=i +_.y=j +_.z=k}, +b4I:function b4I(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +b4J:function b4J(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +b22:function b22(){var _=this +_.a=_.e=_.d="" +_.b=null}, +bRu(){return $}, +bDv(a,b,c){return new A.Ik(a,b.h("@<0>").S(c).h("Ik<1,2>"))}, +dx(a,b,c){if(b.h("an<0>").b(a))return new A.QM(a,b.h("@<0>").S(c).h("QM<1,2>")) +return new A.w7(a,b.h("@<0>").S(c).h("w7<1,2>"))}, +qk(a){return new A.l7("Field '"+a+"' has not been initialized.")}, +i0(a){return new A.l7("Local '"+a+"' has not been initialized.")}, +ql(a){return new A.l7("Local '"+a+"' has already been initialized.")}, +bDQ(a){return new A.hQ(a)}, +bfw(a){var s,r=a^48 +if(r<=9)return r +s=a|32 +if(97<=s&&s<=102)return s-87 +return-1}, +bU5(a,b){var s=A.bfw(a.charCodeAt(b)),r=A.bfw(a.charCodeAt(b+1)) +return s*16+r-(r&256)}, +a0(a,b){a=a+b&536870911 +a=a+((a&524287)<<10)&536870911 +return a^a>>>6}, +hJ(a){a=a+((a&67108863)<<3)&536870911 +a^=a>>>11 +return a+((a&16383)<<15)&536870911}, +bso(a,b,c){return A.hJ(A.a0(A.a0(c,a),b))}, +bKx(a,b,c,d,e){return A.hJ(A.a0(A.a0(A.a0(A.a0(e,a),b),c),d))}, +fj(a,b,c){return a}, +blH(a){var s,r +for(s=$.A3.length,r=0;rc)A.q(A.cK(b,0,c,"start",null))}return new A.jW(a,b,c,d.h("jW<0>"))}, +mV(a,b,c,d){if(t.Ee.b(a))return new A.pV(a,b,c.h("@<0>").S(d).h("pV<1,2>")) +return new A.en(a,b,c.h("@<0>").S(d).h("en<1,2>"))}, +aX_(a,b,c){var s="takeCount" +A.bf(b,s) +A.fA(b,s) +if(t.Ee.b(a))return new A.Jy(a,b,c.h("Jy<0>")) +return new A.z6(a,b,c.h("z6<0>"))}, +bjK(a,b,c){var s="count" +if(t.Ee.b(a)){A.bf(b,s) +A.fA(b,s) +return new A.Bx(a,b,c.h("Bx<0>"))}A.bf(b,s) +A.fA(b,s) +return new A.qR(a,b,c.h("qR<0>"))}, +bpD(a,b,c){if(c.h("an<0>").b(b))return new A.Jx(a,b,c.h("Jx<0>")) +return new A.q5(a,b,c.h("q5<0>"))}, +cf(){return new A.iA("No element")}, +mQ(){return new A.iA("Too many elements")}, +bqg(){return new A.iA("Too few elements")}, +bsb(a,b){A.a91(a,0,J.aZ(a)-1,b)}, +a91(a,b,c,d){if(c-b<=32)A.a93(a,b,c,d) +else A.a92(a,b,c,d)}, +a93(a,b,c,d){var s,r,q,p,o +for(s=b+1,r=J.ak(a);s<=c;++s){q=r.i(a,s) +p=s +while(!0){if(!(p>b&&d.$2(r.i(a,p-1),q)>0))break +o=p-1 +r.p(a,p,r.i(a,o)) +p=o}r.p(a,p,q)}}, +a92(a3,a4,a5,a6){var s,r,q,p,o,n,m,l,k,j,i=B.f.cY(a5-a4+1,6),h=a4+i,g=a5-i,f=B.f.cY(a4+a5,2),e=f-i,d=f+i,c=J.ak(a3),b=c.i(a3,h),a=c.i(a3,e),a0=c.i(a3,f),a1=c.i(a3,d),a2=c.i(a3,g) +if(a6.$2(b,a)>0){s=a +a=b +b=s}if(a6.$2(a1,a2)>0){s=a2 +a2=a1 +a1=s}if(a6.$2(b,a0)>0){s=a0 +a0=b +b=s}if(a6.$2(a,a0)>0){s=a0 +a0=a +a=s}if(a6.$2(b,a1)>0){s=a1 +a1=b +b=s}if(a6.$2(a0,a1)>0){s=a1 +a1=a0 +a0=s}if(a6.$2(a,a2)>0){s=a2 +a2=a +a=s}if(a6.$2(a,a0)>0){s=a0 +a0=a +a=s}if(a6.$2(a1,a2)>0){s=a2 +a2=a1 +a1=s}c.p(a3,h,b) +c.p(a3,f,a0) +c.p(a3,g,a2) +c.p(a3,e,c.i(a3,a4)) +c.p(a3,d,c.i(a3,a5)) +r=a4+1 +q=a5-1 +if(J.i(a6.$2(a,a1),0)){for(p=r;p<=q;++p){o=c.i(a3,p) +n=a6.$2(o,a) +if(n===0)continue +if(n<0){if(p!==r){c.p(a3,p,c.i(a3,r)) +c.p(a3,r,o)}++r}else for(;!0;){n=a6.$2(c.i(a3,q),a) +if(n>0){--q +continue}else{m=q-1 +if(n<0){c.p(a3,p,c.i(a3,r)) +l=r+1 +c.p(a3,r,c.i(a3,q)) +c.p(a3,q,o) +q=m +r=l +break}else{c.p(a3,p,c.i(a3,q)) +c.p(a3,q,o) +q=m +break}}}}k=!0}else{for(p=r;p<=q;++p){o=c.i(a3,p) +if(a6.$2(o,a)<0){if(p!==r){c.p(a3,p,c.i(a3,r)) +c.p(a3,r,o)}++r}else if(a6.$2(o,a1)>0)for(;!0;)if(a6.$2(c.i(a3,q),a1)>0){--q +if(qg){for(;J.i(a6.$2(c.i(a3,r),a),0);)++r +for(;J.i(a6.$2(c.i(a3,q),a1),0);)--q +for(p=r;p<=q;++p){o=c.i(a3,p) +if(a6.$2(o,a)===0){if(p!==r){c.p(a3,p,c.i(a3,r)) +c.p(a3,r,o)}++r}else if(a6.$2(o,a1)===0)for(;!0;)if(a6.$2(c.i(a3,q),a1)===0){--q +if(q")),!0,b),l=m.length,k=0 +while(!0){if(!(k").S(c).h("a2<1,2>")) +n.$keys=m +return n}return new A.wd(A.aHb(a,b,c),b.h("@<0>").S(c).h("wd<1,2>"))}, +awq(){throw A.c(A.a7("Cannot modify unmodifiable Map"))}, +bi0(){throw A.c(A.a7("Cannot modify constant Set"))}, +bxy(a){var s=v.mangledGlobalNames[a] +if(s!=null)return s +return"minified:"+a}, +bwR(a,b){var s +if(b!=null){s=b.x +if(s!=null)return s}return t.dC.b(a)}, +h(a){var s +if(typeof a=="string")return a +if(typeof a=="number"){if(a!==0)return""+a}else if(!0===a)return"true" +else if(!1===a)return"false" +else if(a==null)return"null" +s=J.cI(a) +return s}, +D(a,b,c,d,e,f){return new A.KA(a,c,d,e,f)}, +c1x(a,b,c,d,e,f){return new A.KA(a,c,d,e,f)}, +cU(a){var s,r=$.bro +if(r==null)r=$.bro=Symbol("identityHashCode") +s=a[r] +if(s==null){s=Math.random()*0x3fffffff|0 +a[r]=s}return s}, +lW(a,b){var s,r,q,p,o,n=null,m=/^\s*[+-]?((0x[a-f0-9]+)|(\d+)|([a-z0-9]+))\s*$/i.exec(a) +if(m==null)return n +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.c(A.cK(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)}, +brq(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.c.dI(a) +if(r==="NaN"||r==="+NaN"||r==="-NaN")return s +return null}return s}, +aMa(a){return A.bIN(a)}, +bIN(a){var s,r,q,p +if(a instanceof A.B)return A.kL(A.ch(a),null) +s=J.iM(a) +if(s===B.Vi||s===B.VF||t.ZJ.b(a)){r=B.tX(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.kL(A.ch(a),null)}, +brr(a){if(a==null||typeof a=="number"||A.jl(a))return J.cI(a) +if(typeof a=="string")return JSON.stringify(a) +if(a instanceof A.te)return a.j(0) +if(a instanceof A.rn)return a.a5f(!0) +return"Instance of '"+A.aMa(a)+"'"}, +bIQ(){return Date.now()}, +bIR(){var s,r +if($.aMb!==0)return +$.aMb=1000 +if(typeof window=="undefined")return +s=window +if(s==null)return +if(!!s.dartUseDateNowForTicks)return +r=s.performance +if(r==null)return +if(typeof r.now!="function")return +$.aMb=1e6 +$.Mp=new A.aM9(r)}, +bIP(){if(!!self.location)return self.location.href +return null}, +brn(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.bIS(a)}return A.brn(a)}, +bIT(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.c(A.cK(a,0,1114111,null,null))}, +aMc(a,b,c,d,e,f,g,h){var s,r=b-1 +if(0<=a&&a<100){a+=400 +r-=4800}s=h?Date.UTC(a,r,c,d,e,f,g):new Date(a,r,c,d,e,f,g).valueOf() +if(isNaN(s)||s<-864e13||s>864e13)return null +return s}, +j9(a){if(a.date===void 0)a.date=new Date(a.a) +return a.date}, +Dl(a){return a.b?A.j9(a).getUTCFullYear()+0:A.j9(a).getFullYear()+0}, +ku(a){return a.b?A.j9(a).getUTCMonth()+1:A.j9(a).getMonth()+1}, +yc(a){return a.b?A.j9(a).getUTCDate()+0:A.j9(a).getDate()+0}, +qG(a){return a.b?A.j9(a).getUTCHours()+0:A.j9(a).getHours()+0}, +aM7(a){return a.b?A.j9(a).getUTCMinutes()+0:A.j9(a).getMinutes()+0}, +aM8(a){return a.b?A.j9(a).getUTCSeconds()+0:A.j9(a).getSeconds()+0}, +brp(a){return a.b?A.j9(a).getUTCMilliseconds()+0:A.j9(a).getMilliseconds()+0}, +a6w(a){return B.f.aH((a.b?A.j9(a).getUTCDay()+0:A.j9(a).getDay()+0)+6,7)+1}, +up(a,b,c){var s,r,q={} +q.a=0 +s=[] +r=[] +q.a=b.length +B.b.I(s,b) +q.b="" +if(c!=null&&c.a!==0)c.af(0,new A.aM6(q,r,s)) +return J.bCq(a,new A.KA(B.aeO,0,s,r,0))}, +bIO(a,b,c){var s,r,q +if(Array.isArray(b))s=c==null||c.a===0 +else s=!1 +if(s){r=b.length +if(r===0){if(!!a.$0)return a.$0()}else if(r===1){if(!!a.$1)return a.$1(b[0])}else if(r===2){if(!!a.$2)return a.$2(b[0],b[1])}else if(r===3){if(!!a.$3)return a.$3(b[0],b[1],b[2])}else if(r===4){if(!!a.$4)return a.$4(b[0],b[1],b[2],b[3])}else if(r===5)if(!!a.$5)return a.$5(b[0],b[1],b[2],b[3],b[4]) +q=a[""+"$"+r] +if(q!=null)return q.apply(a,b)}return A.bIM(a,b,c)}, +bIM(a,b,c){var s,r,q,p,o,n,m,l,k,j,i,h,g=Array.isArray(b)?b:A.aa(b,!0,t.z),f=g.length,e=a.$R +if(fn)return A.up(a,g,null) +if(fe)return A.up(a,g,c) +if(g===b)g=A.aa(g,!0,t.z) +l=Object.keys(q) +if(c==null)for(r=l.length,k=0;k=s)return A.f4(b,s,a,null,r) +return A.aN4(b,r)}, +bRM(a,b,c){if(a<0||a>c)return A.cK(a,0,c,"start",null) +if(b!=null)if(bc)return A.cK(b,a,c,"end",null) +return new A.kQ(!0,b,"end",null)}, +pv(a){return new A.kQ(!0,a,null,null)}, +kM(a){return a}, +c(a){return A.bwL(new Error(),a)}, +bwL(a,b){var s +if(b==null)b=new A.r0() +a.dartException=b +s=A.bW3 +if("defineProperty" in Object){Object.defineProperty(a,"message",{get:s}) +a.name=""}else a.toString=s +return a}, +bW3(){return J.cI(this.dartException)}, +q(a){throw A.c(a)}, +bgC(a,b){throw A.bwL(b,a)}, +Z(a){throw A.c(A.cB(a))}, +r1(a){var s,r,q,p,o,n +a=A.aqh(a.replace(String({}),"$receiver$")) +s=a.match(/\\\$[a-zA-Z]+\\\$/g) +if(s==null)s=A.a([],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.aYW(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)}, +aYX(a){return function($expr$){var $argumentsExpr$="$arguments$" +try{$expr$.$method$($argumentsExpr$)}catch(s){return s.message}}(a)}, +bsN(a){return function($expr$){try{$expr$.$method$}catch(s){return s.message}}(a)}, +biZ(a,b){var s=b==null,r=s?null:b.method +return new A.a2f(a,r,s?null:b.receiver)}, +ai(a){if(a==null)return new A.a5y(a) +if(a instanceof A.JH)return A.vH(a,a.a) +if(typeof a!=="object")return a +if("dartException" in a)return A.vH(a,a.dartException) +return A.bQq(a)}, +vH(a,b){if(t.Lt.b(b))if(b.$thrownJsError==null)b.$thrownJsError=a +return b}, +bQq(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=null +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.dz(r,16)&8191)===10)switch(q){case 438:return A.vH(a,A.biZ(A.h(s)+" (Error "+q+")",e)) +case 445:case 5007:p=A.h(s) +return A.vH(a,new A.LP(p+" (Error "+q+")",e))}}if(a instanceof TypeError){o=$.bzp() +n=$.bzq() +m=$.bzr() +l=$.bzs() +k=$.bzv() +j=$.bzw() +i=$.bzu() +$.bzt() +h=$.bzy() +g=$.bzx() +f=o.qY(s) +if(f!=null)return A.vH(a,A.biZ(s,f)) +else{f=n.qY(s) +if(f!=null){f.method="call" +return A.vH(a,A.biZ(s,f))}else{f=m.qY(s) +if(f==null){f=l.qY(s) +if(f==null){f=k.qY(s) +if(f==null){f=j.qY(s) +if(f==null){f=i.qY(s) +if(f==null){f=l.qY(s) +if(f==null){f=h.qY(s) +if(f==null){f=g.qY(s) +p=f!=null}else p=!0}else p=!0}else p=!0}else p=!0}else p=!0}else p=!0}else p=!0 +if(p)return A.vH(a,new A.LP(s,f==null?e:f.method))}}return A.vH(a,new A.aaA(typeof s=="string"?s:""))}if(a instanceof RangeError){if(typeof s=="string"&&s.indexOf("call stack")!==-1)return new A.O7() +s=function(b){try{return String(b)}catch(d){}return null}(a) +return A.vH(a,new A.kQ(!1,e,e,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.O7() +return a}, +aH(a){var s +if(a instanceof A.JH)return a.b +if(a==null)return new A.Ty(a) +s=a.$cachedTrace +if(s!=null)return s +return a.$cachedTrace=new A.Ty(a)}, +rL(a){if(a==null)return J.T(a) +if(typeof a=="object")return A.cU(a) +return J.T(a)}, +bRf(a){if(typeof a=="number")return B.e.gv(a) +if(a instanceof A.U5)return A.cU(a) +if(a instanceof A.rn)return a.gv(a) +if(a instanceof A.qV)return a.gv(a) +return A.rL(a)}, +bwu(a,b){var s,r,q,p=a.length +for(s=0;s")) +s.c=a.e +return s}, +c1D(a,b,c){Object.defineProperty(a,b,{value:c,enumerable:false,writable:true,configurable:true})}, +bTy(a){var s,r,q,p,o,n=$.bwI.$1(a),m=$.beT[n] +if(m!=null){Object.defineProperty(a,v.dispatchPropertyName,{value:m,enumerable:false,writable:true,configurable:true}) +return m.i}s=$.bfG[n] +if(s!=null)return s +r=v.interceptorsByTag[n] +if(r==null){q=$.bvZ.$2(a,n) +if(q!=null){m=$.beT[q] +if(m!=null){Object.defineProperty(a,v.dispatchPropertyName,{value:m,enumerable:false,writable:true,configurable:true}) +return m.i}s=$.bfG[q] +if(s!=null)return s +r=v.interceptorsByTag[q] +n=q}}if(r==null)return null +s=r.prototype +p=n[0] +if(p==="!"){m=A.bfR(s) +$.beT[n]=m +Object.defineProperty(a,v.dispatchPropertyName,{value:m,enumerable:false,writable:true,configurable:true}) +return m.i}if(p==="~"){$.bfG[n]=s +return s}if(p==="-"){o=A.bfR(s) +Object.defineProperty(Object.getPrototypeOf(a),v.dispatchPropertyName,{value:o,enumerable:false,writable:true,configurable:true}) +return o.i}if(p==="+")return A.bxa(a,s) +if(p==="*")throw A.c(A.cL(n)) +if(v.leafTags[n]===true){o=A.bfR(s) +Object.defineProperty(Object.getPrototypeOf(a),v.dispatchPropertyName,{value:o,enumerable:false,writable:true,configurable:true}) +return o.i}else return A.bxa(a,s)}, +bxa(a,b){var s=Object.getPrototypeOf(a) +Object.defineProperty(s,v.dispatchPropertyName,{value:J.blJ(b,s,null,null),enumerable:false,writable:true,configurable:true}) +return b}, +bfR(a){return J.blJ(a,!1,null,!!a.$icy)}, +bTA(a,b,c){var s=b.prototype +if(v.leafTags[a]===true)return A.bfR(s) +else return J.blJ(s,c,null,null)}, +bT4(){if(!0===$.blE)return +$.blE=!0 +A.bT5()}, +bT5(){var s,r,q,p,o,n,m,l +$.beT=Object.create(null) +$.bfG=Object.create(null) +A.bT3() +s=v.interceptorsByTag +r=Object.getOwnPropertyNames(s) +if(typeof window!="undefined"){window +q=function(){} +for(p=0;p=0 +else if(b instanceof A.mR){s=B.c.cv(a,c) +return b.b.test(s)}else{s=J.aqS(b,B.c.cv(a,c)) +return!s.gai(s)}}, +blz(a){if(a.indexOf("$",0)>=0)return a.replace(/\$/g,"$$$$") +return a}, +bVJ(a,b,c,d){var s=b.Q0(a,d) +if(s==null)return a +return A.bm_(a,s.b.index,s.gcf(s),c)}, +aqh(a){if(/[[\]{}()*+?.\\^$|]/.test(a))return a.replace(/[[\]{}()*+?.\\^$|]/g,"\\$&") +return a}, +eC(a,b,c){var s +if(typeof b=="string")return A.bVH(a,b,c) +if(b instanceof A.mR){s=b.ga2E() +s.lastIndex=0 +return a.replace(s,A.blz(c))}return A.bVG(a,b,c)}, +bVG(a,b,c){var s,r,q,p +for(s=J.aqS(b,a),s=s.gaj(s),r=0,q="";s.u();){p=s.gH(s) +q=q+a.substring(r,p.gc0(p))+c +r=p.gcf(p)}s=q+a.substring(r) +return s.charCodeAt(0)==0?s:s}, +bVH(a,b,c){var s,r,q +if(b===""){if(a==="")return c +s=a.length +r=""+c +for(q=0;q=0)return a.split(b).join(c) +return a.replace(new RegExp(A.aqh(b),"g"),A.blz(c))}, +bvP(a){return a}, +blZ(a,b,c,d){var s,r,q,p,o,n,m +for(s=b.rT(0,a),s=new A.r8(s.a,s.b,s.c),r=t.Qz,q=0,p="";s.u();){o=s.d +if(o==null)o=r.a(o) +n=o.b +m=n.index +p=p+A.h(A.bvP(B.c.U(a,q,m)))+A.h(c.$1(o)) +q=m+n[0].length}s=p+A.h(A.bvP(B.c.cv(a,q))) +return s.charCodeAt(0)==0?s:s}, +bVK(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.bm_(a,s,s+b.length,c)}if(b instanceof A.mR)return d===0?a.replace(b.b,A.blz(c)):A.bVJ(a,b,c,d) +r=J.bBZ(b,a,d) +q=r.gaj(r) +if(!q.u())return a +p=q.gH(q) +return B.c.iG(a,p.gc0(p),p.gcf(p),c)}, +bVI(a,b,c,d){var s,r,q=b.E_(0,a,d),p=new A.r8(q.a,q.b,q.c) +if(!p.u())return a +s=p.d +if(s==null)s=t.Qz.a(s) +r=A.h(c.$1(s)) +return B.c.iG(a,s.b.index,s.gcf(s),r)}, +bm_(a,b,c,d){return a.substring(0,b)+d+a.substring(c)}, +nH:function nH(a,b){this.a=a +this.b=b}, +Gw:function Gw(a,b){this.a=a +this.b=b}, +Sv:function Sv(a,b){this.a=a +this.b=b}, +ak0:function ak0(a,b){this.a=a +this.b=b}, +ak1:function ak1(a,b){this.a=a +this.b=b}, +ak2:function ak2(a,b){this.a=a +this.b=b}, +ak3:function ak3(a,b,c){this.a=a +this.b=b +this.c=c}, +ak4:function ak4(a,b,c){this.a=a +this.b=b +this.c=c}, +Sw:function Sw(a,b,c){this.a=a +this.b=b +this.c=c}, +Sx:function Sx(a){this.a=a}, +wd:function wd(a,b){this.a=a +this.$ti=b}, +B0:function B0(){}, +awr:function awr(a,b,c){this.a=a +this.b=b +this.c=c}, +a2:function a2(a,b,c){this.a=a +this.b=b +this.$ti=c}, +zH:function zH(a,b){this.a=a +this.$ti=b}, +vd:function vd(a,b,c){var _=this +_.a=a +_.b=b +_.c=0 +_.d=null +_.$ti=c}, +dm:function dm(a,b){this.a=a +this.$ti=b}, +II:function II(){}, +ke:function ke(a,b,c){this.a=a +this.b=b +this.$ti=c}, +h6:function h6(a,b){this.a=a +this.$ti=b}, +a26:function a26(){}, +cs:function cs(a,b){this.a=a +this.$ti=b}, +KA:function KA(a,b,c,d,e){var _=this +_.a=a +_.c=b +_.d=c +_.e=d +_.f=e}, +aM9:function aM9(a){this.a=a}, +aM6:function aM6(a,b,c){this.a=a +this.b=b +this.c=c}, +aYW:function aYW(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +LP:function LP(a,b){this.a=a +this.b=b}, +a2f:function a2f(a,b,c){this.a=a +this.b=b +this.c=c}, +aaA:function aaA(a){this.a=a}, +a5y:function a5y(a){this.a=a}, +JH:function JH(a,b){this.a=a +this.b=b}, +Ty:function Ty(a){this.a=a +this.b=null}, +te:function te(){}, +Yw:function Yw(){}, +Yx:function Yx(){}, +a9X:function a9X(){}, +a9y:function a9y(){}, +Aw:function Aw(a,b){this.a=a +this.b=b}, +aeV:function aeV(a){this.a=a}, +a7V:function a7V(a){this.a=a}, +b9x:function b9x(){}, +j_:function j_(a){var _=this +_.a=0 +_.f=_.e=_.d=_.c=_.b=null +_.r=0 +_.$ti=a}, +aGi:function aGi(a){this.a=a}, +aGh:function aGh(a,b){this.a=a +this.b=b}, +aGg:function aGg(a){this.a=a}, +aHa:function aHa(a,b){var _=this +_.a=a +_.b=b +_.d=_.c=null}, +c9:function c9(a,b){this.a=a +this.$ti=b}, +Cv:function Cv(a,b,c){var _=this +_.a=a +_.b=b +_.d=_.c=null +_.$ti=c}, +KD:function KD(a){var _=this +_.a=0 +_.f=_.e=_.d=_.c=_.b=null +_.r=0 +_.$ti=a}, +xk:function xk(a){var _=this +_.a=0 +_.f=_.e=_.d=_.c=_.b=null +_.r=0 +_.$ti=a}, +bfy:function bfy(a){this.a=a}, +bfz:function bfz(a){this.a=a}, +bfA:function bfA(a){this.a=a}, +rn:function rn(){}, +ajY:function ajY(){}, +ajZ:function ajZ(){}, +ak_:function ak_(){}, +mR:function mR(a,b){var _=this +_.a=a +_.b=b +_.d=_.c=null}, +Gd:function Gd(a){this.b=a}, +ad2:function ad2(a,b,c){this.a=a +this.b=b +this.c=c}, +r8:function r8(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.d=null}, +Et:function Et(a,b){this.a=a +this.c=b}, +amc:function amc(a,b,c){this.a=a +this.b=b +this.c=c}, +baZ:function baZ(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.d=null}, +bVY(a){A.bgC(new A.l7("Field '"+a+u.W),new Error())}, +b(){A.bgC(new A.l7("Field '' has not been initialized."),new Error())}, +cl(){A.bgC(new A.l7("Field '' has already been initialized."),new Error())}, +am(){A.bgC(new A.l7("Field '' has been assigned during initialization."),new Error())}, +b4(a){var s=new A.b1v(a) +return s.b=s}, +dr(a,b){var s=new A.b5a(a,b) +return s.b=s}, +b1v:function b1v(a){this.a=a +this.b=null}, +b5a:function b5a(a,b){this.a=a +this.b=null +this.c=b}, +VJ(a,b,c){}, +jk(a){var s,r,q +if(t.RP.b(a))return a +s=J.ak(a) +r=A.aT(s.gt(a),null,!1,t.z) +for(q=0;q>>0!==a||a>=c)throw A.c(A.Hg(b,a))}, +vz(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.c(A.bRM(a,b,c)) +if(b==null)return c +return b}, +xO:function xO(){}, +h9:function h9(){}, +LA:function LA(){}, +CR:function CR(){}, +ub:function ub(){}, +lc:function lc(){}, +LB:function LB(){}, +a5j:function a5j(){}, +a5k:function a5k(){}, +LC:function LC(){}, +a5l:function a5l(){}, +a5m:function a5m(){}, +LD:function LD(){}, +LE:function LE(){}, +xP:function xP(){}, +S_:function S_(){}, +S0:function S0(){}, +S1:function S1(){}, +S2:function S2(){}, +brL(a,b){var s=b.c +return s==null?b.c=A.bkP(a,b.y,!0):s}, +bjE(a,b){var s=b.c +return s==null?b.c=A.Ua(a,"U",[b.y]):s}, +brM(a){var s=a.x +if(s===6||s===7||s===8)return A.brM(a.y) +return s===12||s===13}, +bJx(a){return a.at}, +bU3(a,b){var s,r=b.length +for(s=0;s") +for(r=1;r=0)p+=" "+r[q];++q}return p+"})"}, +bvd(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=", " +if(a5!=null){s=a5.length +if(a4==null){a4=A.a([],t.s) +r=null}else r=a4.length +q=a4.length +for(p=s;p>0;--p)a4.push("T"+(q+p)) +for(o=t.X,n=t.ub,m="<",l="",p=0;p0){a0+=a1+"[" +for(a1="",p=0;p0){a0+=a1+"{" +for(a1="",p=0;p "+a}, +kL(a,b){var s,r,q,p,o,n,m=a.x +if(m===5)return"erased" +if(m===2)return"dynamic" +if(m===3)return"void" +if(m===1)return"Never" +if(m===4)return"any" +if(m===6){s=A.kL(a.y,b) +return s}if(m===7){r=a.y +s=A.kL(r,b) +q=r.x +return(q===12||q===13?"("+s+")":s)+"?"}if(m===8)return"FutureOr<"+A.kL(a.y,b)+">" +if(m===9){p=A.bQo(a.y) +o=a.z +return o.length>0?p+("<"+A.bvD(o,b)+">"):p}if(m===11)return A.bQ4(a,b) +if(m===12)return A.bvd(a,b,null) +if(m===13)return A.bvd(a.y,b,a.z) +if(m===14){n=a.y +return b[b.length-1-n]}return"?"}, +bQo(a){var s=v.mangledGlobalNames[a] +if(s!=null)return s +return"minified:"+a}, +bNx(a,b){var s=a.tR[b] +for(;typeof s=="string";)s=a.tR[s] +return s}, +bNw(a,b){var s,r,q,p,o,n=a.eT,m=n[b] +if(m==null)return A.anH(a,b,!1) +else if(typeof m=="number"){s=m +r=A.Ub(a,5,"#") +q=A.bcy(s) +for(p=0;p0)p+="<"+A.U9(c)+">" +s=a.eC.get(p) +if(s!=null)return s +r=new A.m0(null,null) +r.x=9 +r.y=b +r.z=c +if(c.length>0)r.c=c[0] +r.at=p +q=A.rv(a,r) +a.eC.set(p,q) +return q}, +bkN(a,b,c){var s,r,q,p,o,n +if(b.x===10){s=b.y +r=b.z.concat(c)}else{r=c +s=b}q=s.at+(";<"+A.U9(r)+">") +p=a.eC.get(q) +if(p!=null)return p +o=new A.m0(null,null) +o.x=10 +o.y=s +o.z=r +o.at=q +n=A.rv(a,o) +a.eC.set(q,n) +return n}, +bNt(a,b,c){var s,r,q="+"+(b+"("+A.U9(c)+")"),p=a.eC.get(q) +if(p!=null)return p +s=new A.m0(null,null) +s.x=11 +s.y=b +s.z=c +s.at=q +r=A.rv(a,s) +a.eC.set(q,r) +return r}, +bup(a,b,c){var s,r,q,p,o,n=b.at,m=c.a,l=m.length,k=c.b,j=k.length,i=c.c,h=i.length,g="("+A.U9(m) +if(j>0){s=l>0?",":"" +g+=s+"["+A.U9(k)+"]"}if(h>0){s=l>0?",":"" +g+=s+"{"+A.bNn(i)+"}"}r=n+(g+")") +q=a.eC.get(r) +if(q!=null)return q +p=new A.m0(null,null) +p.x=12 +p.y=b +p.z=c +p.at=r +o=A.rv(a,p) +a.eC.set(r,o) +return o}, +bkO(a,b,c,d){var s,r=b.at+("<"+A.U9(c)+">"),q=a.eC.get(r) +if(q!=null)return q +s=A.bNp(a,b,c,r,d) +a.eC.set(r,s) +return s}, +bNp(a,b,c,d,e){var s,r,q,p,o,n,m,l +if(e){s=c.length +r=A.bcy(s) +for(q=0,p=0;p0){n=A.rE(a,b,r,0) +m=A.VP(a,c,r,0) +return A.bkO(a,n,m,c!==m)}}l=new A.m0(null,null) +l.x=13 +l.y=b +l.z=c +l.at=d +return A.rv(a,l)}, +btV(a,b,c,d){return{u:a,e:b,r:c,s:[],p:0,n:d}}, +btX(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.bMX(r+1,q,l,k) +else if((((q|32)>>>0)-97&65535)<26||q===95||q===36||q===124)r=A.btW(a,r,l,k,!1) +else if(q===46)r=A.btW(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.vm(a.u,a.e,k.pop())) +break +case 94:k.push(A.bNs(a.u,k.pop())) +break +case 35:k.push(A.Ub(a.u,5,"#")) +break +case 64:k.push(A.Ub(a.u,2,"@")) +break +case 126:k.push(A.Ub(a.u,3,"~")) +break +case 60:k.push(a.p) +a.p=k.length +break +case 62:A.bMZ(a,k) +break +case 38:A.bMY(a,k) +break +case 42:p=a.u +k.push(A.bur(p,A.vm(p,a.e,k.pop()),a.n)) +break +case 63:p=a.u +k.push(A.bkP(p,A.vm(p,a.e,k.pop()),a.n)) +break +case 47:p=a.u +k.push(A.buq(p,A.vm(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.bMW(a,k) +break +case 91:k.push(a.p) +a.p=k.length +break +case 93:o=k.splice(a.p) +A.btY(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.bN0(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.vm(a.u,a.e,m)}, +bMX(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}, +btW(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.x===10)o=o.y +n=A.bNx(s,o.y)[p] +if(n==null)A.q('No "'+p+'" in "'+A.bJx(o)+'"') +d.push(A.Uc(s,o,n))}else d.push(p) +return m}, +bMZ(a,b){var s,r=a.u,q=A.btU(a,b),p=b.pop() +if(typeof p=="string")b.push(A.Ua(r,p,q)) +else{s=A.vm(r,a.e,p) +switch(s.x){case 12:b.push(A.bkO(r,s,q,a.n)) +break +default:b.push(A.bkN(r,s,q)) +break}}}, +bMW(a,b){var s,r,q,p,o,n=null,m=a.u,l=b.pop() +if(typeof l=="number")switch(l){case-1:s=b.pop() +r=n +break +case-2:r=b.pop() +s=n +break +default:b.push(l) +r=n +s=r +break}else{b.push(l) +r=n +s=r}q=A.btU(a,b) +l=b.pop() +switch(l){case-3:l=b.pop() +if(s==null)s=m.sEA +if(r==null)r=m.sEA +p=A.vm(m,a.e,l) +o=new A.agm() +o.a=q +o.b=s +o.c=r +b.push(A.bup(m,p,o)) +return +case-4:b.push(A.bNt(m,b.pop(),q)) +return +default:throw A.c(A.mz("Unexpected state under `()`: "+A.h(l)))}}, +bMY(a,b){var s=b.pop() +if(0===s){b.push(A.Ub(a.u,1,"0&")) +return}if(1===s){b.push(A.Ub(a.u,4,"1&")) +return}throw A.c(A.mz("Unexpected extended operation "+A.h(s)))}, +btU(a,b){var s=b.splice(a.p) +A.btY(a.u,a.e,s) +a.p=b.pop() +return s}, +vm(a,b,c){if(typeof c=="string")return A.Ua(a,c,a.sEA) +else if(typeof c=="number"){b.toString +return A.bN_(a,b,c)}else return c}, +btY(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}, +m0:function m0(a,b){var _=this +_.a=a +_.b=b +_.w=_.r=_.c=null +_.x=0 +_.at=_.as=_.Q=_.z=_.y=null}, +agm:function agm(){this.c=this.b=this.a=null}, +U5:function U5(a){this.a=a}, +afP:function afP(){}, +U6:function U6(a){this.a=a}, +bSX(a,b){var s,r +if(B.c.c8(a,"Digit"))return a.charCodeAt(5) +s=b.charCodeAt(0) +if(b.length<=1)r=!(s>=32&&s<=127) +else r=!0 +if(r){r=B.nT.i(0,a) +return r==null?null:r.charCodeAt(0)}if(!(s>=$.bAH()&&s<=$.bAI()))r=s>=$.bAR()&&s<=$.bAS() +else r=!0 +if(r)return b.toLowerCase().charCodeAt(0) +return null}, +bNi(a){var s=B.nT.gdW(B.nT) +return new A.bb0(a,A.bqD(s.ig(s,new A.bb1(),t.q9),t.S,t.N))}, +bQn(a){var s,r,q,p,o=a.ac9(),n=A.F(t.N,t.S) +for(s=a.a,r=0;r=2)return null +return a.toLowerCase().charCodeAt(0)}, +bb0:function bb0(a,b){this.a=a +this.b=b +this.c=0}, +bb1:function bb1(){}, +KV:function KV(a){this.a=a}, +cY:function cY(a,b){this.a=a +this.b=b}, +fs:function fs(a,b){this.a=a +this.b=b}, +bLZ(){var s,r,q={} +if(self.scheduleImmediate!=null)return A.bQI() +if(self.MutationObserver!=null&&self.document!=null){s=self.document.createElement("div") +r=self.document.createElement("span") +q.a=null +new self.MutationObserver(A.rF(new A.b0k(q),1)).observe(s,{childList:true}) +return new A.b0j(q,s,r)}else if(self.setImmediate!=null)return A.bQJ() +return A.bQK()}, +bM_(a){self.scheduleImmediate(A.rF(new A.b0l(a),0))}, +bM0(a){self.setImmediate(A.rF(new A.b0m(a),0))}, +bM1(a){A.bk0(B.F,a)}, +bk0(a,b){var s=B.f.cY(a.a,1000) +return A.bNj(s<0?0:s,b)}, +bsE(a,b){var s=B.f.cY(a.a,1000) +return A.bNk(s<0?0:s,b)}, +bNj(a,b){var s=new A.U_(!0) +s.alX(a,b) +return s}, +bNk(a,b){var s=new A.U_(!1) +s.alY(a,b) +return s}, +y(a){return new A.PA(new A.a8($.a9,a.h("a8<0>")),a.h("PA<0>"))}, +x(a,b){a.$2(0,null) +b.b=!0 +return b.a}, +t(a,b){A.buO(a,b)}, +w(a,b){b.cM(0,a)}, +v(a,b){b.f6(A.ai(a),A.aH(a))}, +buO(a,b){var s,r,q=new A.bd4(b),p=new A.bd5(b) +if(a instanceof A.a8)a.a58(q,p,t.z) +else{s=t.z +if(t.L0.b(a))a.fe(q,p,s) +else{r=new A.a8($.a9,t.LR) +r.a=8 +r.c=a +r.a58(q,p,s)}}}, +u(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 $.a9.G6(new A.bem(s))}, +hN(a,b,c){var s,r,q,p +if(b===0){s=c.c +if(s!=null)s.w1(null) +else{s=c.a +s===$&&A.b() +s.ad(0)}return}else if(b===1){s=c.c +if(s!=null)s.it(A.ai(a),A.aH(a)) +else{s=A.ai(a) +r=A.aH(a) +q=c.a +q===$&&A.b() +q.dO(s,r) +c.a.ad(0)}return}if(a instanceof A.RB){if(c.c!=null){b.$2(2,null) +return}s=a.b +if(s===0){s=a.a +r=c.a +r===$&&A.b() +r.G(0,s) +A.h_(new A.bd2(c,b)) +return}else if(s===1){p=a.a +s=c.a +s===$&&A.b() +s.aEe(0,p,!1).b9(new A.bd3(c,b),t.P) +return}}A.buO(a,b)}, +bli(a){var s=a.a +s===$&&A.b() +return new A.d_(s,A.k(s).h("d_<1>"))}, +bM2(a,b){var s=new A.adm(b.h("adm<0>")) +s.alP(a,b) +return s}, +blc(a,b){return A.bM2(a,b)}, +bMG(a){return new A.RB(a,1)}, +bkv(a){return new A.RB(a,0)}, +bua(a,b,c){return 0}, +arP(a,b){var s=A.fj(a,"error",t.K) +return new A.X7(s,b==null?A.nY(a):b)}, +nY(a){var s +if(t.Lt.b(a)){s=a.gjU() +if(s!=null)return s}return B.pK}, +BP(a,b){var s=new A.a8($.a9,b.h("a8<0>")) +A.d2(B.F,new A.aD7(s,a)) +return s}, +tD(a,b){var s=new A.a8($.a9,b.h("a8<0>")) +A.h_(new A.aD6(s,a)) +return s}, +d3(a,b){var s=a==null?b.a(a):a,r=new A.a8($.a9,b.h("a8<0>")) +r.lR(s) +return r}, +oi(a,b,c){var s +A.fj(a,"error",t.K) +$.a9!==B.b7 +if(b==null)b=A.nY(a) +s=new A.a8($.a9,c.h("a8<0>")) +s.yx(a,b) +return s}, +BQ(a,b,c){var s,r +if(b==null)s=!c.b(null) +else s=!1 +if(s)throw A.c(A.eR(null,"computation","The type parameter is not nullable")) +r=new A.a8($.a9,c.h("a8<0>")) +A.d2(a,new A.aD5(b,r,c)) +return r}, +q8(a,b){var s,r,q,p,o,n,m,l,k,j,i={},h=null,g=!1,f=new A.a8($.a9,b.h("a8>")) +i.a=null +i.b=0 +s=A.b4("error") +r=A.b4("stackTrace") +q=new A.aDd(i,h,g,f,s,r) +try{for(l=J.ao(a),k=t.P;l.u();){p=l.gH(l) +o=i.b +p.fe(new A.aDc(i,o,f,h,g,s,r,b),q,k);++i.b}l=i.b +if(l===0){l=f +l.w1(A.a([],b.h("G<0>"))) +return l}i.a=A.aT(l,null,!1,b.h("0?"))}catch(j){n=A.ai(j) +m=A.aH(j) +if(i.b===0||g)return A.oi(n,m,b.h("e<0>")) +else{s.b=n +r.b=m}}return f}, +bGm(a,b){var s,r,q,p=new A.rt(new A.a8($.a9,b.h("a8<0>")),b.h("rt<0>")),o=new A.aD9(p,b),n=new A.aD8(p) +for(s=a.length,r=t.H,q=0;q")),b))}, +bGl(a){return!0}, +bGn(a){var s=$.a9,r=new A.a8(s,t.b),q=A.b4("nextIteration") +q.b=s.Tl(new A.aDa(a,r,q),t.y) +q.aF().$1(!0) +return r}, +bGk(a,b,c,d){var s,r,q=new A.aCU(d,null,b,c) +if(a instanceof A.a8){s=$.a9 +r=new A.a8(s,c.h("a8<0>")) +if(s!==B.b7)q=s.G6(q) +a.yw(new A.mm(r,2,null,q,a.$ti.h("@<1>").S(c).h("mm<1,2>"))) +return r}return a.fe(new A.aCT(c),q,c)}, +K7(a,b){if(b.h("a8<0>").b(a))a.a|=1 +else a.fe(A.bw3(),A.bw3(),t.H)}, +bpL(a,b){}, +bDV(a){return new A.aD(new A.a8($.a9,a.h("a8<0>")),a.h("aD<0>"))}, +apS(a,b,c){if(c==null)c=A.nY(b) +a.it(b,c)}, +bMu(a,b,c){var s=new A.a8(b,c.h("a8<0>")) +s.a=8 +s.c=a +return s}, +bkq(a,b){var s,r +for(;s=a.a,(s&4)!==0;)a=a.c +if((s&24)!==0){r=b.IY() +b.HO(a) +A.FX(b,r)}else{r=b.c +b.a4d(a) +a.RE(r)}}, +bMv(a,b){var s,r,q={},p=q.a=a +for(;s=p.a,(s&4)!==0;){p=p.c +q.a=p}if((s&24)===0){r=b.c +b.a4d(p) +q.a.RE(r) +return}if((s&16)===0&&b.c==null){b.HO(p) +return}b.a^=2 +A.nO(null,null,b.b,new A.b4n(q,b))}, +FX(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g,f={},e=f.a=a +for(s=t.L0;!0;){r={} +q=e.a +p=(q&16)===0 +o=!p +if(b==null){if(o&&(q&1)===0){e=e.c +A.lx(e.a,e.b)}return}r.a=b +n=b.a +for(e=b;n!=null;e=n,n=m){e.a=null +A.FX(f.a,e) +r.a=n +m=n.a}q=f.a +l=q.c +r.b=o +r.c=l +if(p){k=e.c +k=(k&1)!==0||(k&15)===8}else k=!0 +if(k){j=e.b.b +if(o){q=q.b===j +q=!(q||q)}else q=!1 +if(q){A.lx(l.a,l.b) +return}i=$.a9 +if(i!==j)$.a9=j +else i=null +e=e.c +if((e&15)===8)new A.b4u(r,f,o).$0() +else if(p){if((e&1)!==0)new A.b4t(r,l).$0()}else if((e&2)!==0)new A.b4s(f,r).$0() +if(i!=null)$.a9=i +e=r.c +if(s.b(e)){q=r.a.$ti +q=q.h("U<2>").b(e)||!q.z[1].b(e)}else q=!1 +if(q){h=r.a.b +if(e instanceof A.a8)if((e.a&24)!==0){g=h.c +h.c=null +b=h.J2(g) +h.a=e.a&30|h.a&1 +h.c=e.c +f.a=e +continue}else A.bkq(e,h) +else h.Pc(e) +return}}h=r.a.b +g=h.c +h.c=null +b=h.J2(g) +e=r.b +q=r.c +if(!e){h.a=8 +h.c=q}else{h.a=h.a&1|16 +h.c=q}f.a=h +e=h}}, +bvy(a,b){if(t.Hg.b(a))return b.G6(a) +if(t.C_.b(a))return a +throw A.c(A.eR(a,"onError",u.l))}, +bPP(){var s,r +for(s=$.Hd;s!=null;s=$.Hd){$.VN=null +r=s.b +$.Hd=r +if(r==null)$.VM=null +s.a.$0()}}, +bQc(){$.blb=!0 +try{A.bPP()}finally{$.VN=null +$.blb=!1 +if($.Hd!=null)$.bmo().$1(A.bw4())}}, +bvL(a){var s=new A.adl(a),r=$.VM +if(r==null){$.Hd=$.VM=s +if(!$.blb)$.bmo().$1(A.bw4())}else $.VM=r.b=s}, +bQ7(a){var s,r,q,p=$.Hd +if(p==null){A.bvL(a) +$.VN=$.VM +return}s=new A.adl(a) +r=$.VN +if(r==null){s.b=p +$.Hd=$.VN=s}else{q=r.b +s.b=q +$.VN=r.b=s +if(q==null)$.VM=s}}, +h_(a){var s,r=null,q=$.a9 +if(B.b7===q){A.nO(r,r,B.b7,a) +return}s=!1 +if(s){A.nO(r,r,q,a) +return}A.nO(r,r,q,q.Tk(a))}, +bjR(a,b){var s=null,r=b.h("mg<0>"),q=new A.mg(s,s,s,s,r) +q.on(0,a) +q.CK() +return new A.d_(q,r.h("d_<1>"))}, +bKn(a,b,c){var s,r,q=null +A.fj(a,"error",t.K) +s=c.h("mg<0>") +r=new A.mg(q,q,q,q,s) +r.jV(a,b==null?A.nY(a):b) +r.CK() +return new A.d_(r,s.h("d_<1>"))}, +bKo(a,b){var s=null,r=b.h("pp<0>"),q=new A.pp(s,s,s,s,r) +a.fe(new A.aWb(q,b),new A.aWc(q),t.P) +return new A.d_(q,r.h("d_<1>"))}, +bsg(a,b){return new A.zL(!1,new A.aWe(a,b),b.h("zL<0>"))}, +bYQ(a,b){return new A.nK(A.fj(a,"stream",t.K),b.h("nK<0>"))}, +ln(a,b,c,d,e){return d?new A.pp(b,null,c,a,e.h("pp<0>")):new A.mg(b,null,c,a,e.h("mg<0>"))}, +aq_(a){var s,r,q +if(a==null)return +try{a.$0()}catch(q){s=A.ai(q) +r=A.aH(q) +A.lx(s,r)}}, +bMf(a,b,c,d,e,f){var s=$.a9,r=e?1:0,q=A.adI(s,b),p=A.adJ(s,c),o=d==null?A.beu():d +return new A.v8(a,q,p,o,s,r,f.h("v8<0>"))}, +bLX(a){return new A.b_T(a)}, +adI(a,b){return b==null?A.bQL():b}, +adJ(a,b){if(b==null)b=A.bQM() +if(t.hK.b(b))return a.G6(b) +if(t.mX.b(b))return b +throw A.c(A.bU(u.y,null))}, +bPY(a){}, +bQ_(a,b){A.lx(a,b)}, +bPZ(){}, +bkp(a,b){var s=new A.FG($.a9,a,b.h("FG<0>")) +s.a3L() +return s}, +bvE(a,b,c){var s,r,q,p,o,n +try{b.$1(a.$0())}catch(n){s=A.ai(n) +r=A.aH(n) +q=null +if(q==null)c.$2(s,r) +else{p=J.bCa(q) +o=q.gjU() +c.$2(p,o)}}}, +bOa(a,b,c,d){var s=a.aQ(0),r=$.rO() +if(s!==r)s.fv(new A.bd9(b,c,d)) +else b.it(c,d)}, +buT(a,b){return new A.bd8(a,b)}, +buU(a,b,c){var s=a.aQ(0),r=$.rO() +if(s!==r)s.fv(new A.bda(b,c)) +else b.os(c)}, +bu9(a,b,c){return new A.TD(new A.baX(a,null,null,c,b),b.h("@<0>").S(c).h("TD<1,2>"))}, +d2(a,b){var s=$.a9 +if(s===B.b7)return A.bk0(a,b) +return A.bk0(a,s.Tk(b))}, +bsD(a,b){var s=$.a9 +if(s===B.b7)return A.bsE(a,b) +return A.bsE(a,s.Tl(b,t.qe))}, +lx(a,b){A.bQ7(new A.bec(a,b))}, +bvA(a,b,c,d){var s,r=$.a9 +if(r===c)return d.$0() +$.a9=c +s=r +try{r=d.$0() +return r}finally{$.a9=s}}, +bvC(a,b,c,d,e){var s,r=$.a9 +if(r===c)return d.$1(e) +$.a9=c +s=r +try{r=d.$1(e) +return r}finally{$.a9=s}}, +bvB(a,b,c,d,e,f){var s,r=$.a9 +if(r===c)return d.$2(e,f) +$.a9=c +s=r +try{r=d.$2(e,f) +return r}finally{$.a9=s}}, +nO(a,b,c,d){if(B.b7!==c)d=c.Tk(d) +A.bvL(d)}, +b0k:function b0k(a){this.a=a}, +b0j:function b0j(a,b,c){this.a=a +this.b=b +this.c=c}, +b0l:function b0l(a){this.a=a}, +b0m:function b0m(a){this.a=a}, +U_:function U_(a){this.a=a +this.b=null +this.c=0}, +bc8:function bc8(a,b){this.a=a +this.b=b}, +bc7:function bc7(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +PA:function PA(a,b){this.a=a +this.b=!1 +this.$ti=b}, +bd4:function bd4(a){this.a=a}, +bd5:function bd5(a){this.a=a}, +bem:function bem(a){this.a=a}, +bd2:function bd2(a,b){this.a=a +this.b=b}, +bd3:function bd3(a,b){this.a=a +this.b=b}, +adm:function adm(a){var _=this +_.a=$ +_.b=!1 +_.c=null +_.$ti=a}, +b0o:function b0o(a){this.a=a}, +b0p:function b0p(a){this.a=a}, +b0r:function b0r(a){this.a=a}, +b0s:function b0s(a,b){this.a=a +this.b=b}, +b0q:function b0q(a,b){this.a=a +this.b=b}, +b0n:function b0n(a){this.a=a}, +RB:function RB(a,b){this.a=a +this.b=b}, +po:function po(a,b){var _=this +_.a=a +_.e=_.d=_.c=_.b=null +_.$ti=b}, +k4:function k4(a,b){this.a=a +this.$ti=b}, +X7:function X7(a,b){this.a=a +this.b=b}, +iG:function iG(a,b){this.a=a +this.$ti=b}, +zx:function zx(a,b,c,d,e,f,g){var _=this +_.ay=0 +_.CW=_.ch=null +_.w=a +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f +_.r=_.f=null +_.$ti=g}, +mi:function mi(){}, +nL:function nL(a,b,c){var _=this +_.a=a +_.b=b +_.c=0 +_.r=_.f=_.e=_.d=null +_.$ti=c}, +bbj:function bbj(a,b){this.a=a +this.b=b}, +bbl:function bbl(a,b,c){this.a=a +this.b=b +this.c=c}, +bbk:function bbk(a){this.a=a}, +ls:function ls(a,b,c){var _=this +_.a=a +_.b=b +_.c=0 +_.r=_.f=_.e=_.d=null +_.$ti=c}, +Fr:function Fr(a,b,c){var _=this +_.ax=null +_.a=a +_.b=b +_.c=0 +_.r=_.f=_.e=_.d=null +_.$ti=c}, +aD7:function aD7(a,b){this.a=a +this.b=b}, +aD6:function aD6(a,b){this.a=a +this.b=b}, +aD5:function aD5(a,b,c){this.a=a +this.b=b +this.c=c}, +aDd:function aDd(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +aDc:function aDc(a,b,c,d,e,f,g,h){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=h}, +aD9:function aD9(a,b){this.a=a +this.b=b}, +aD8:function aD8(a){this.a=a}, +aDb:function aDb(a,b){this.a=a +this.b=b}, +aDa:function aDa(a,b,c){this.a=a +this.b=b +this.c=c}, +aCU:function aCU(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aCT:function aCT(a){this.a=a}, +zA:function zA(){}, +aD:function aD(a,b){this.a=a +this.$ti=b}, +rt:function rt(a,b){this.a=a +this.$ti=b}, +mm:function mm(a,b,c,d,e){var _=this +_.a=null +_.b=a +_.c=b +_.d=c +_.e=d +_.$ti=e}, +a8:function a8(a,b){var _=this +_.a=0 +_.b=a +_.c=null +_.$ti=b}, +b4k:function b4k(a,b){this.a=a +this.b=b}, +b4r:function b4r(a,b){this.a=a +this.b=b}, +b4o:function b4o(a){this.a=a}, +b4p:function b4p(a){this.a=a}, +b4q:function b4q(a,b,c){this.a=a +this.b=b +this.c=c}, +b4n:function b4n(a,b){this.a=a +this.b=b}, +b4m:function b4m(a,b){this.a=a +this.b=b}, +b4l:function b4l(a,b,c){this.a=a +this.b=b +this.c=c}, +b4u:function b4u(a,b,c){this.a=a +this.b=b +this.c=c}, +b4v:function b4v(a){this.a=a}, +b4t:function b4t(a,b){this.a=a +this.b=b}, +b4s:function b4s(a,b){this.a=a +this.b=b}, +adl:function adl(a){this.a=a +this.b=null}, +bA:function bA(){}, +aWb:function aWb(a,b){this.a=a +this.b=b}, +aWc:function aWc(a){this.a=a}, +aWe:function aWe(a,b){this.a=a +this.b=b}, +aWf:function aWf(a,b,c){this.a=a +this.b=b +this.c=c}, +aWd:function aWd(a,b,c){this.a=a +this.b=b +this.c=c}, +aWh:function aWh(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aWi:function aWi(a,b){this.a=a +this.b=b}, +aWg:function aWg(a,b,c,d,e,f,g,h){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=h}, +aWv:function aWv(a){this.a=a}, +aWr:function aWr(a){this.a=a}, +aWs:function aWs(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aWp:function aWp(a,b){this.a=a +this.b=b}, +aWq:function aWq(){}, +aWt:function aWt(a,b){this.a=a +this.b=b}, +aWu:function aWu(a,b){this.a=a +this.b=b}, +aWw:function aWw(a,b){this.a=a +this.b=b}, +aWx:function aWx(a,b){this.a=a +this.b=b}, +aWn:function aWn(a){this.a=a}, +aWo:function aWo(a,b,c){this.a=a +this.b=b +this.c=c}, +aWl:function aWl(a,b){this.a=a +this.b=b}, +aWm:function aWm(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aWj:function aWj(a,b){this.a=a +this.b=b}, +aWk:function aWk(a,b,c){this.a=a +this.b=b +this.c=c}, +z0:function z0(){}, +a9B:function a9B(){}, +vt:function vt(){}, +baW:function baW(a){this.a=a}, +baV:function baV(a){this.a=a}, +amn:function amn(){}, +PB:function PB(){}, +mg:function mg(a,b,c,d,e){var _=this +_.a=null +_.b=0 +_.c=null +_.d=a +_.e=b +_.f=c +_.r=d +_.$ti=e}, +pp:function pp(a,b,c,d,e){var _=this +_.a=null +_.b=0 +_.c=null +_.d=a +_.e=b +_.f=c +_.r=d +_.$ti=e}, +d_:function d_(a,b){this.a=a +this.$ti=b}, +v8:function v8(a,b,c,d,e,f,g){var _=this +_.w=a +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f +_.r=_.f=null +_.$ti=g}, +zV:function zV(a,b){this.a=a +this.$ti=b}, +ad1:function ad1(){}, +b_T:function b_T(a){this.a=a}, +b_S:function b_S(a){this.a=a}, +TC:function TC(a,b,c,d){var _=this +_.c=a +_.a=b +_.b=c +_.$ti=d}, +hl:function hl(){}, +b0T:function b0T(a,b,c){this.a=a +this.b=b +this.c=c}, +b0S:function b0S(a){this.a=a}, +GS:function GS(){}, +af9:function af9(){}, +iI:function iI(a,b){this.b=a +this.a=null +this.$ti=b}, +zC:function zC(a,b){this.b=a +this.c=b +this.a=null}, +b2I:function b2I(){}, +pj:function pj(a){var _=this +_.a=0 +_.c=_.b=null +_.$ti=a}, +b7K:function b7K(a,b){this.a=a +this.b=b}, +FG:function FG(a,b,c){var _=this +_.a=a +_.b=0 +_.c=b +_.$ti=c}, +Fq:function Fq(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.f=_.e=null +_.$ti=e}, +v5:function v5(a,b){this.a=a +this.$ti=b}, +nK:function nK(a,b){var _=this +_.a=null +_.b=a +_.c=!1 +_.$ti=b}, +QQ:function QQ(a){this.$ti=a}, +zL:function zL(a,b,c){this.a=a +this.b=b +this.$ti=c}, +b6U:function b6U(a,b){this.a=a +this.b=b}, +RY:function RY(a,b,c,d,e){var _=this +_.a=null +_.b=0 +_.c=null +_.d=a +_.e=b +_.f=c +_.r=d +_.$ti=e}, +bd9:function bd9(a,b,c){this.a=a +this.b=b +this.c=c}, +bd8:function bd8(a,b){this.a=a +this.b=b}, +bda:function bda(a,b){this.a=a +this.b=b}, +R4:function R4(){}, +FV:function FV(a,b,c,d,e,f,g){var _=this +_.w=a +_.x=null +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f +_.r=_.f=null +_.$ti=g}, +nF:function nF(a,b,c){this.b=a +this.a=b +this.$ti=c}, +QS:function QS(a,b){this.a=a +this.$ti=b}, +GK:function GK(a,b,c,d,e,f){var _=this +_.w=$ +_.x=null +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.r=_.f=null +_.$ti=f}, +TE:function TE(){}, +PU:function PU(a,b,c){this.a=a +this.b=b +this.$ti=c}, +G_:function G_(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.$ti=e}, +TD:function TD(a,b){this.a=a +this.$ti=b}, +baX:function baX(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +bcN:function bcN(){}, +bec:function bec(a,b){this.a=a +this.b=b}, +akT:function akT(){}, +b9B:function b9B(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +b9C:function b9C(a,b){this.a=a +this.b=b}, +b9D:function b9D(a,b,c){this.a=a +this.b=b +this.c=c}, +cx(a,b,c,d,e){if(c==null)if(b==null){if(a==null)return new A.rh(d.h("@<0>").S(e).h("rh<1,2>")) +b=A.blr()}else{if(A.bwg()===b&&A.bwf()===a)return new A.vc(d.h("@<0>").S(e).h("vc<1,2>")) +if(a==null)a=A.blq()}else{if(b==null)b=A.blr() +if(a==null)a=A.blq()}return A.bMg(a,b,c,d,e)}, +bkr(a,b){var s=a[b] +return s===a?null:s}, +bkt(a,b,c){if(c==null)a[b]=a +else a[b]=c}, +bks(){var s=Object.create(null) +A.bkt(s,"",s) +delete s[""] +return s}, +bMg(a,b,c,d,e){var s=c!=null?c:new A.b2t(d) +return new A.Qu(a,b,s,d.h("@<0>").S(e).h("Qu<1,2>"))}, +l9(a,b,c,d){if(b==null){if(a==null)return new A.j_(c.h("@<0>").S(d).h("j_<1,2>")) +b=A.blr()}else{if(A.bwg()===b&&A.bwf()===a)return new A.KD(c.h("@<0>").S(d).h("KD<1,2>")) +if(a==null)a=A.blq()}return A.bMM(a,b,null,c,d)}, +ap(a,b,c){return A.bwu(a,new A.j_(b.h("@<0>").S(c).h("j_<1,2>")))}, +F(a,b){return new A.j_(a.h("@<0>").S(b).h("j_<1,2>"))}, +bMM(a,b,c,d,e){return new A.RH(a,b,new A.b62(d),d.h("@<0>").S(e).h("RH<1,2>"))}, +dN(a){return new A.ph(a.h("ph<0>"))}, +bku(){var s=Object.create(null) +s[""]=s +delete s[""] +return s}, +lN(a){return new A.kI(a.h("kI<0>"))}, +aY(a){return new A.kI(a.h("kI<0>"))}, +em(a,b){return A.bSm(a,new A.kI(b.h("kI<0>")))}, +bkx(){var s=Object.create(null) +s[""]=s +delete s[""] +return s}, +ee(a,b,c){var s=new A.mp(a,b,c.h("mp<0>")) +s.c=a.e +return s}, +bOz(a,b){return J.i(a,b)}, +bOA(a){return J.T(a)}, +bGt(a,b,c){var s=A.cx(null,null,null,b,c) +a.af(0,new A.aEb(s,b,c)) +return s}, +biN(a,b){var s,r,q=A.dN(b) +for(s=a.length,r=0;r"))}, +bHn(a,b){var s=t.b8 +return J.Ab(s.a(a),s.a(b))}, +aIq(a){var s,r={} +if(A.blH(a))return"{...}" +s=new A.cV("") +try{$.A3.push(a) +s.a+="{" +r.a=!0 +J.f9(a,new A.aIr(r,s)) +s.a+="}"}finally{$.A3.pop()}r=s.a +return r.charCodeAt(0)==0?r:r}, +bHB(a,b,c,d){var s,r,q +for(s=b.length,r=0;r"))}, +bHo(a){if(a==null||a<8)return 8 +else if((a&a-1)>>>0!==0)return A.bqs(a) +return a}, +bqs(a){var s +a=(a<<1>>>0)-1 +for(;!0;a=s){s=(a&a-1)>>>0 +if(s===0)return a}}, +bOH(a,b){return J.Ab(a,b)}, +bv4(a){if(a.h("m(0,0)").b(A.bwd()))return A.bwd() +return A.bR5()}, +bjP(a,b){var s=A.bv4(a) +return new A.O4(s,new A.aVK(a),a.h("@<0>").S(b).h("O4<1,2>"))}, +a9u(a,b,c){var s=a==null?A.bv4(c):a,r=b==null?new A.aVN(c):b +return new A.Em(s,r,c.h("Em<0>"))}, +rh:function rh(a){var _=this +_.a=0 +_.e=_.d=_.c=_.b=null +_.$ti=a}, +b4C:function b4C(a){this.a=a}, +b4B:function b4B(a){this.a=a}, +vc:function vc(a){var _=this +_.a=0 +_.e=_.d=_.c=_.b=null +_.$ti=a}, +Qu:function Qu(a,b,c,d){var _=this +_.f=a +_.r=b +_.w=c +_.a=0 +_.e=_.d=_.c=_.b=null +_.$ti=d}, +b2t:function b2t(a){this.a=a}, +ri:function ri(a,b){this.a=a +this.$ti=b}, +G0:function G0(a,b,c){var _=this +_.a=a +_.b=b +_.c=0 +_.d=null +_.$ti=c}, +RH:function RH(a,b,c,d){var _=this +_.w=a +_.x=b +_.y=c +_.a=0 +_.f=_.e=_.d=_.c=_.b=null +_.r=0 +_.$ti=d}, +b62:function b62(a){this.a=a}, +ph:function ph(a){var _=this +_.a=0 +_.e=_.d=_.c=_.b=null +_.$ti=a}, +mo:function mo(a,b,c){var _=this +_.a=a +_.b=b +_.c=0 +_.d=null +_.$ti=c}, +kI:function kI(a){var _=this +_.a=0 +_.f=_.e=_.d=_.c=_.b=null +_.r=0 +_.$ti=a}, +b63:function b63(a){this.a=a +this.c=this.b=null}, +mp:function mp(a,b,c){var _=this +_.a=a +_.b=b +_.d=_.c=null +_.$ti=c}, +zj:function zj(a,b){this.a=a +this.$ti=b}, +aEb:function aEb(a,b,c){this.a=a +this.b=b +this.c=c}, +aHc:function aHc(a,b,c){this.a=a +this.b=b +this.c=c}, +jF:function jF(a){var _=this +_.b=_.a=0 +_.c=null +_.$ti=a}, +G9:function G9(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=null +_.d=c +_.e=!1 +_.$ti=d}, +j1:function j1(){}, +ac:function ac(){}, +bg:function bg(){}, +aIo:function aIo(a){this.a=a}, +aIp:function aIp(a){this.a=a}, +aIr:function aIr(a,b){this.a=a +this.b=b}, +RL:function RL(a,b){this.a=a +this.$ti=b}, +ahZ:function ahZ(a,b,c){var _=this +_.a=a +_.b=b +_.c=null +_.$ti=c}, +H2:function H2(){}, +xH:function xH(){}, +md:function md(a,b){this.a=a +this.$ti=b}, +Qz:function Qz(){}, +rf:function rf(a,b,c){var _=this +_.c=a +_.d=b +_.b=_.a=null +_.$ti=c}, +zD:function zD(a){this.b=this.a=null +this.$ti=a}, +wz:function wz(a,b){this.a=a +this.b=0 +this.$ti=b}, +afr:function afr(a,b,c){var _=this +_.a=a +_.b=b +_.c=null +_.$ti=c}, +KQ:function KQ(a,b){var _=this +_.a=a +_.d=_.c=_.b=0 +_.$ti=b}, +ahD:function ahD(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=null +_.$ti=e}, +m4:function m4(){}, +GH:function GH(){}, +am6:function am6(){}, +k3:function k3(a,b){var _=this +_.a=a +_.c=_.b=null +_.$ti=b}, +jh:function jh(a,b,c){var _=this +_.d=a +_.a=b +_.c=_.b=null +_.$ti=c}, +am5:function am5(){}, +O4:function O4(a,b,c){var _=this +_.d=null +_.e=a +_.f=b +_.c=_.b=_.a=0 +_.$ti=c}, +aVK:function aVK(a){this.a=a}, +aVJ:function aVJ(a){this.a=a}, +pm:function pm(){}, +rq:function rq(a,b){this.a=a +this.$ti=b}, +zU:function zU(a,b){this.a=a +this.$ti=b}, +Tt:function Tt(a,b){this.a=a +this.$ti=b}, +rr:function rr(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=null +_.d=c +_.$ti=d}, +Tx:function Tx(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=null +_.d=c +_.$ti=d}, +zT:function zT(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=null +_.d=c +_.$ti=d}, +Em:function Em(a,b,c){var _=this +_.d=null +_.e=a +_.f=b +_.c=_.b=_.a=0 +_.$ti=c}, +aVN:function aVN(a){this.a=a}, +aVM:function aVM(a,b){this.a=a +this.b=b}, +aVL:function aVL(a,b){this.a=a +this.b=b}, +Tu:function Tu(){}, +Tv:function Tv(){}, +Tw:function Tw(){}, +Ud:function Ud(){}, +apY(a,b){var s,r,q,p=null +try{p=JSON.parse(a)}catch(r){s=A.ai(r) +q=A.cJ(String(s),null,null) +throw A.c(q)}if(b==null)return A.bdk(p) +else return A.bOq(p,b)}, +bOq(a,b){return b.$2(null,new A.bdl(b).$1(a))}, +bdk(a){var s +if(a==null)return null +if(typeof a!="object")return a +if(Object.getPrototypeOf(a)!==Array.prototype)return new A.RD(a,Object.create(null)) +for(s=0;s=0)return null +return r}return null}, +bLu(a,b,c,d){var s=a?$.bzC():$.bzB() +if(s==null)return null +if(0===c&&d===b.length)return A.bsY(s,b) +return A.bsY(s,b.subarray(c,A.dZ(c,d,b.length,null,null)))}, +bsY(a,b){var s,r +try{s=a.decode(b) +return s}catch(r){}return null}, +bo1(a,b,c,d,e,f){if(B.f.aH(f,4)!==0)throw A.c(A.cJ("Invalid base64 padding, padded length must be multiple of four, is "+f,a,c)) +if(d+e!==f)throw A.c(A.cJ("Invalid base64 padding, '=' not at the end",a,b)) +if(e>2)throw A.c(A.cJ("Invalid base64 padding, more than two '=' characters",a,b))}, +bM4(a,b,c,d,e,f,g,h){var s,r,q,p,o,n,m=h>>>2,l=3-(h&3) +for(s=J.ak(b),r=c,q=0;r>>0 +m=(m<<8|p)&16777215;--l +if(l===0){o=g+1 +f[g]=a.charCodeAt(m>>>18&63) +g=o+1 +f[o]=a.charCodeAt(m>>>12&63) +o=g+1 +f[g]=a.charCodeAt(m>>>6&63) +g=o+1 +f[o]=a.charCodeAt(m&63) +m=0 +l=3}}if(q>=0&&q<=255){if(e&&l<3){o=g+1 +n=o+1 +if(3-l===1){f[g]=a.charCodeAt(m>>>2&63) +f[o]=a.charCodeAt(m<<4&63) +f[n]=61 +f[n+1]=61}else{f[g]=a.charCodeAt(m>>>10&63) +f[o]=a.charCodeAt(m>>>4&63) +f[n]=a.charCodeAt(m<<2&63) +f[n+1]=61}return 0}return(m<<2|3-l)>>>0}for(r=c;r255)break;++r}throw A.c(A.eR(b,"Not a byte value at index "+r+": 0x"+J.bCL(s.i(b,r),16),null))}, +bFz(a){return $.byv().i(0,a.toLowerCase())}, +bqk(a,b,c){return new A.Ci(a,b)}, +bwT(a,b){return B.at.wX(a,b)}, +bwS(a,b){return B.at.uK(0,a,b)}, +bH1(a){return null}, +bOC(a){return a.b7()}, +bMH(a,b){var s=b==null?A.blu():b +return new A.b5P(a,[],s)}, +b5Q(a,b,c){var s,r=new A.cV("") +A.bkw(a,r,b,c) +s=r.a +return s.charCodeAt(0)==0?s:s}, +bkw(a,b,c,d){var s=A.bMH(b,c) +s.vx(a)}, +bMI(a,b,c){var s=new Uint8Array(b),r=a==null?A.blu():a +return new A.ah9(b,c,s,[],r)}, +bMJ(a,b,c,d,e){var s,r,q +if(b!=null){s=new Uint8Array(d) +r=c==null?A.blu():c +q=new A.b5T(b,0,d,e,s,[],r)}else q=A.bMI(c,d,e) +q.vx(a) +s=q.f +if(s>0)q.d.$3(q.e,0,s) +q.e=new Uint8Array(0) +q.f=0}, +bMK(a,b,c){var s,r,q +for(s=J.ak(a),r=b,q=0;r>>0 +if(q>=0&&q<=255)return +A.bML(a,b,c)}, +bML(a,b,c){var s,r,q +for(s=J.ak(a),r=b;r255)throw A.c(A.cJ("Source contains non-Latin-1 characters.",a,r))}}, +buI(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""}}, +bNJ(a,b,c){var s,r,q,p=c-b,o=new Uint8Array(p) +for(s=J.ak(a),r=0;r>>0!==0?255:q}return o}, +bdl:function bdl(a){this.a=a}, +RD:function RD(a,b){this.a=a +this.b=b +this.c=null}, +b5M:function b5M(a){this.a=a}, +b5L:function b5L(a){this.a=a}, +ah7:function ah7(a){this.a=a}, +RC:function RC(a,b,c){this.b=a +this.c=b +this.a=c}, +aZI:function aZI(){}, +aZH:function aZH(){}, +X_:function X_(){}, +anF:function anF(){}, +X1:function X1(a){this.a=a}, +anG:function anG(a,b){this.a=a +this.b=b}, +anE:function anE(){}, +X0:function X0(a,b){this.a=a +this.b=b}, +b3c:function b3c(a){this.a=a}, +baC:function baC(a){this.a=a}, +Xp:function Xp(){}, +Xq:function Xq(){}, +PM:function PM(a){this.a=0 +this.b=a}, +b0R:function b0R(a){this.c=null +this.a=0 +this.b=a}, +b0A:function b0A(){}, +b0f:function b0f(a,b){this.a=a +this.b=b}, +bcv:function bcv(a,b){this.a=a +this.b=b}, +Ig:function Ig(){}, +PX:function PX(a){this.a=a}, +PY:function PY(a,b){this.a=a +this.b=b +this.c=0}, +Y9:function Y9(){}, +alD:function alD(a,b,c){this.a=a +this.b=b +this.$ti=c}, +mH:function mH(){}, +cr:function cr(){}, +R5:function R5(a,b,c){this.a=a +this.b=b +this.$ti=c}, +mM:function mM(){}, +Ci:function Ci(a,b){this.a=a +this.b=b}, +a2h:function a2h(a,b){this.a=a +this.b=b}, +a2g:function a2g(){}, +a2j:function a2j(a){this.b=a}, +b5K:function b5K(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.d=!1}, +ah8:function ah8(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=!1}, +a2i:function a2i(a){this.a=a}, +b5R:function b5R(){}, +b5S:function b5S(a,b){this.a=a +this.b=b}, +b5N:function b5N(){}, +b5O:function b5O(a,b){this.a=a +this.b=b}, +b5P:function b5P(a,b,c){this.c=a +this.a=b +this.b=c}, +ah9:function ah9(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=0 +_.a=d +_.b=e}, +b5T:function b5T(a,b,c,d,e,f,g){var _=this +_.x=a +_.ch$=b +_.c=c +_.d=d +_.e=e +_.f=0 +_.a=f +_.b=g}, +a2s:function a2s(){}, +a2u:function a2u(a){this.a=a}, +a2t:function a2t(a,b){this.a=a +this.b=b}, +ahg:function ahg(a){this.a=a}, +b5U:function b5U(a){this.a=a}, +oT:function oT(){}, +b1X:function b1X(a,b){this.a=a +this.b=b}, +bb_:function bb_(a,b){this.a=a +this.b=b}, +GU:function GU(){}, +zW:function zW(a){this.a=a}, +bcx:function bcx(a,b,c){this.a=a +this.b=b +this.c=c}, +bcw:function bcw(a,b,c){this.a=a +this.b=b +this.c=c}, +aaL:function aaL(){}, +aaM:function aaM(){}, +anN:function anN(a){this.b=this.a=0 +this.c=a}, +Um:function Um(a,b){var _=this +_.d=a +_.b=_.a=0 +_.c=b}, +P2:function P2(a){this.a=a}, +Ul:function Ul(a){this.a=a +this.b=16 +this.c=0}, +aoz:function aoz(){}, +apN:function apN(){}, +bM8(a,b){var s,r,q=$.rP(),p=a.length,o=4-p%4 +if(o===4)o=0 +for(s=0,r=0;r=16)return null +r=r*16+o}n=h-1 +i[h]=r +for(;s=16)return null +r=r*16+o}m=n-1 +i[n]=r}if(j===1&&i[0]===0)return $.rP() +l=A.mh(j,i) +return new A.iF(l===0?!1:c,i,l)}, +bMb(a,b){var s,r,q,p,o +if(a==="")return null +s=$.bzI().l7(a) +if(s==null)return null +r=s.b +q=r[1]==="-" +p=r[4] +o=r[3] +if(p!=null)return A.bM8(p,q) +if(o!=null)return A.bM9(o,2,q) +return null}, +mh(a,b){while(!0){if(!(a>0&&b[a-1]===0))break;--a}return a}, +bkj(a,b,c,d){var s,r=new Uint16Array(d),q=c-b +for(s=0;s=0;--s)d[s+c]=a[s] +for(s=c-1;s>=0;--s)d[s]=0 +return b+c}, +bM7(a,b,c,d){var s,r,q,p=B.f.cY(c,16),o=B.f.aH(c,16),n=16-o,m=B.f.yb(1,n)-1 +for(s=b-1,r=0;s>=0;--s){q=a[s] +d[s+p+1]=(B.f.Jg(q,n)|r)>>>0 +r=B.f.yb((q&m)>>>0,o)}d[p]=r}, +btx(a,b,c,d){var s,r,q,p=B.f.cY(c,16) +if(B.f.aH(c,16)===0)return A.bkk(a,b,p,d) +s=b+p+1 +A.bM7(a,b,c,d) +for(r=p;--r,r>=0;)d[r]=0 +q=s-1 +return d[q]===0?q:s}, +bMa(a,b,c,d){var s,r,q=B.f.cY(c,16),p=B.f.aH(c,16),o=16-p,n=B.f.yb(1,p)-1,m=B.f.Jg(a[q],p),l=b-q-1 +for(s=0;s>>0,o)|m)>>>0 +m=B.f.Jg(r,p)}d[l]=m}, +b0F(a,b,c,d){var s,r=b-d +if(r===0)for(s=b-1;s>=0;--s){r=a[s]-c[s] +if(r!==0)return r}return r}, +bM5(a,b,c,d,e){var s,r +for(s=0,r=0;r>>16}for(r=d;r>>16}e[b]=s}, +adz(a,b,c,d,e){var s,r +for(s=0,r=0;r=0;e=p,c=r){r=c+1 +q=a*b[c]+d[e]+s +p=e+1 +d[e]=q&65535 +s=B.f.cY(q,65536)}for(;s!==0;e=p){o=d[e]+s +p=e+1 +d[e]=o&65535 +s=B.f.cY(o,65536)}}, +bM6(a,b,c){var s,r=b[c] +if(r===a)return 65535 +s=B.f.js((r<<16|b[c-1])>>>0,a) +if(s>65535)return 65535 +return s}, +bT2(a){return A.rL(a)}, +bpK(a,b){return A.bIO(a,b,null)}, +a0N(a,b){return new A.BD(new WeakMap(),a,b.h("BD<0>"))}, +pZ(a){if(A.jl(a)||typeof a=="number"||typeof a=="string"||a instanceof A.rn)A.bix(a)}, +bix(a){throw A.c(A.eR(a,"object","Expandos are not allowed on strings, numbers, bools, records or null"))}, +ef(a,b,c){var s=A.lW(a,c) +if(s!=null)return s +if(b!=null)return b.$1(a) +throw A.c(A.cJ(a,null,null))}, +aq7(a){var s=A.brq(a) +if(s!=null)return s +throw A.c(A.cJ("Invalid double",a,null))}, +bFL(a,b){a=A.c(a) +a.stack=b.j(0) +throw a +throw A.c("unreachable")}, +mJ(a,b){var s=new A.dl(a,b) +s.Hv(a,b) +return s}, +aT(a,b,c,d){var s,r=c?J.Cf(a,d):J.a2e(a,d) +if(a!==0&&b!=null)for(s=0;s")) +for(s=J.ao(a);s.u();)r.push(s.gH(s)) +if(b)return r +return J.aGa(r)}, +aa(a,b,c){var s +if(b)return A.bqw(a,c) +s=J.aGa(A.bqw(a,c)) +return s}, +bqw(a,b){var s,r +if(Array.isArray(a))return A.a(a.slice(0),b.h("G<0>")) +s=A.a([],b.h("G<0>")) +for(r=J.ao(a);r.u();)s.push(r.gH(r)) +return s}, +bHq(a,b,c){var s,r=J.Cf(a,c) +for(s=0;s0||c=1000)return""+a +if(s>=100)return r+"0"+s +if(s>=10)return r+"00"+s +return r+"000"+s}, +bEw(a){if(a>=100)return""+a +if(a>=10)return"0"+a +return"00"+a}, +a_L(a){if(a>=10)return""+a +return"0"+a}, +dC(a,b,c){return new A.bk(a+1000*b+1e6*c)}, +bFE(a,b){var s,r +for(s=0;s<3;++s){r=a[s] +if(r.b===b)return r}throw A.c(A.eR(b,"name","No enum value with that name"))}, +wF(a){if(typeof a=="number"||A.jl(a)||a==null)return J.cI(a) +if(typeof a=="string")return JSON.stringify(a) +return A.brr(a)}, +biv(a,b){A.fj(a,"error",t.K) +A.fj(b,"stackTrace",t.Km) +A.bFL(a,b)}, +mz(a){return new A.vS(a)}, +bU(a,b){return new A.kQ(!1,null,b,a)}, +eR(a,b,c){return new A.kQ(!0,a,b,c)}, +bf(a,b){return a}, +c6(a){var s=null +return new A.Dt(s,s,!1,s,s,a)}, +aN4(a,b){return new A.Dt(null,null,!0,a,b,"Value not in range")}, +cK(a,b,c,d,e){return new A.Dt(b,c,!0,a,d,"Invalid value")}, +aN5(a,b,c,d){if(ac)throw A.c(A.cK(a,b,c,d,null)) +return a}, +bJ3(a,b,c,d){return A.biS(a,d==null?b.gt(b):d,b,null,c)}, +dZ(a,b,c,d,e){if(0>a||a>c)throw A.c(A.cK(a,0,c,d==null?"start":d,null)) +if(b!=null){if(a>b||b>c)throw A.c(A.cK(b,a,c,e==null?"end":e,null)) +return b}return c}, +fA(a,b){if(a<0)throw A.c(A.cK(a,0,null,b,null)) +return a}, +a21(a,b,c,d,e){var s=e==null?b.gt(b):e +return new A.Kp(s,!0,a,c,"Index out of range")}, +f4(a,b,c,d,e){return new A.Kp(b,!0,a,e,"Index out of range")}, +biS(a,b,c,d,e){if(0>a||a>=b)throw A.c(A.f4(a,b,c,d,e==null?"index":e)) +return a}, +a7(a){return new A.aaC(a)}, +cL(a){return new A.F2(a)}, +R(a){return new A.iA(a)}, +cB(a){return new A.Yz(a)}, +cR(a){return new A.FP(a)}, +cJ(a,b,c){return new A.l3(a,b,c)}, +bGY(a,b,c){if(a<=0)return new A.jy(c.h("jy<0>")) +return new A.R6(a,b,c.h("R6<0>"))}, +bqh(a,b,c){var s,r +if(A.blH(a)){if(b==="("&&c===")")return"(...)" +return b+"..."+c}s=A.a([],t.s) +$.A3.push(a) +try{A.bPE(a,s)}finally{$.A3.pop()}r=A.a9C(b,s,", ")+c +return r.charCodeAt(0)==0?r:r}, +Ce(a,b,c){var s,r +if(A.blH(a))return b+"..."+c +s=new A.cV(b) +$.A3.push(a) +try{r=s +r.a=A.a9C(r.a,a,", ")}finally{$.A3.pop()}s.a+=c +r=s.a +return r.charCodeAt(0)==0?r:r}, +bPE(a,b){var s,r,q,p,o,n,m,l=J.ao(a),k=0,j=0 +while(!0){if(!(k<80||j<3))break +if(!l.u())return +s=A.h(l.gH(l)) +b.push(s) +k+=s.length+2;++j}if(!l.u()){if(j<=5)return +r=b.pop() +q=b.pop()}else{p=l.gH(l);++j +if(!l.u()){if(j<=4){b.push(A.h(p)) +return}r=A.h(p) +q=b.pop() +k+=r.length+2}else{o=l.gH(l);++j +for(;l.u();p=o,o=n){n=l.gH(l);++j +if(j>100){while(!0){if(!(k>75&&j>3))break +k-=b.pop().length+2;--j}b.push("...") +return}}q=A.h(p) +r=A.h(o) +k+=r.length+q.length+4}}if(j>b.length+2){k+=5 +m="..."}else m=null +while(!0){if(!(k>80&&b.length>3))break +k-=b.pop().length+2 +if(m==null){k+=5 +m="..."}}if(m!=null)b.push(m) +b.push(q) +b.push(r)}, +bjb(a,b,c,d,e){return new A.pJ(a,b.h("@<0>").S(c).S(d).S(e).h("pJ<1,2,3,4>"))}, +bqD(a,b,c){var s=A.F(b,c) +s.a6w(s,a) +return s}, +X(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,a0,a1){var s +if(B.a===c)return A.bso(J.T(a),J.T(b),$.ho()) +if(B.a===d){s=J.T(a) +b=J.T(b) +c=J.T(c) +return A.hJ(A.a0(A.a0(A.a0($.ho(),s),b),c))}if(B.a===e)return A.bKx(J.T(a),J.T(b),J.T(c),J.T(d),$.ho()) +if(B.a===f){s=J.T(a) +b=J.T(b) +c=J.T(c) +d=J.T(d) +e=J.T(e) +return A.hJ(A.a0(A.a0(A.a0(A.a0(A.a0($.ho(),s),b),c),d),e))}if(B.a===g){s=J.T(a) +b=J.T(b) +c=J.T(c) +d=J.T(d) +e=J.T(e) +f=J.T(f) +return A.hJ(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0($.ho(),s),b),c),d),e),f))}if(B.a===h){s=J.T(a) +b=J.T(b) +c=J.T(c) +d=J.T(d) +e=J.T(e) +f=J.T(f) +g=J.T(g) +return A.hJ(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0($.ho(),s),b),c),d),e),f),g))}if(B.a===i){s=J.T(a) +b=J.T(b) +c=J.T(c) +d=J.T(d) +e=J.T(e) +f=J.T(f) +g=J.T(g) +h=J.T(h) +return A.hJ(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0($.ho(),s),b),c),d),e),f),g),h))}if(B.a===j){s=J.T(a) +b=J.T(b) +c=J.T(c) +d=J.T(d) +e=J.T(e) +f=J.T(f) +g=J.T(g) +h=J.T(h) +i=J.T(i) +return A.hJ(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0($.ho(),s),b),c),d),e),f),g),h),i))}if(B.a===k){s=J.T(a) +b=J.T(b) +c=J.T(c) +d=J.T(d) +e=J.T(e) +f=J.T(f) +g=J.T(g) +h=J.T(h) +i=J.T(i) +j=J.T(j) +return A.hJ(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0($.ho(),s),b),c),d),e),f),g),h),i),j))}if(B.a===l){s=J.T(a) +b=J.T(b) +c=J.T(c) +d=J.T(d) +e=J.T(e) +f=J.T(f) +g=J.T(g) +h=J.T(h) +i=J.T(i) +j=J.T(j) +k=J.T(k) +return A.hJ(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0($.ho(),s),b),c),d),e),f),g),h),i),j),k))}if(B.a===m){s=J.T(a) +b=J.T(b) +c=J.T(c) +d=J.T(d) +e=J.T(e) +f=J.T(f) +g=J.T(g) +h=J.T(h) +i=J.T(i) +j=J.T(j) +k=J.T(k) +l=J.T(l) +return A.hJ(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0($.ho(),s),b),c),d),e),f),g),h),i),j),k),l))}if(B.a===n){s=J.T(a) +b=J.T(b) +c=J.T(c) +d=J.T(d) +e=J.T(e) +f=J.T(f) +g=J.T(g) +h=J.T(h) +i=J.T(i) +j=J.T(j) +k=J.T(k) +l=J.T(l) +m=J.T(m) +return A.hJ(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0($.ho(),s),b),c),d),e),f),g),h),i),j),k),l),m))}if(B.a===o){s=J.T(a) +b=J.T(b) +c=J.T(c) +d=J.T(d) +e=J.T(e) +f=J.T(f) +g=J.T(g) +h=J.T(h) +i=J.T(i) +j=J.T(j) +k=J.T(k) +l=J.T(l) +m=J.T(m) +n=J.T(n) +return A.hJ(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0($.ho(),s),b),c),d),e),f),g),h),i),j),k),l),m),n))}if(B.a===p){s=J.T(a) +b=J.T(b) +c=J.T(c) +d=J.T(d) +e=J.T(e) +f=J.T(f) +g=J.T(g) +h=J.T(h) +i=J.T(i) +j=J.T(j) +k=J.T(k) +l=J.T(l) +m=J.T(m) +n=J.T(n) +o=J.T(o) +return A.hJ(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0($.ho(),s),b),c),d),e),f),g),h),i),j),k),l),m),n),o))}if(B.a===q){s=J.T(a) +b=J.T(b) +c=J.T(c) +d=J.T(d) +e=J.T(e) +f=J.T(f) +g=J.T(g) +h=J.T(h) +i=J.T(i) +j=J.T(j) +k=J.T(k) +l=J.T(l) +m=J.T(m) +n=J.T(n) +o=J.T(o) +p=J.T(p) +return A.hJ(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0($.ho(),s),b),c),d),e),f),g),h),i),j),k),l),m),n),o),p))}if(B.a===r){s=J.T(a) +b=J.T(b) +c=J.T(c) +d=J.T(d) +e=J.T(e) +f=J.T(f) +g=J.T(g) +h=J.T(h) +i=J.T(i) +j=J.T(j) +k=J.T(k) +l=J.T(l) +m=J.T(m) +n=J.T(n) +o=J.T(o) +p=J.T(p) +q=J.T(q) +return A.hJ(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0($.ho(),s),b),c),d),e),f),g),h),i),j),k),l),m),n),o),p),q))}if(B.a===a0){s=J.T(a) +b=J.T(b) +c=J.T(c) +d=J.T(d) +e=J.T(e) +f=J.T(f) +g=J.T(g) +h=J.T(h) +i=J.T(i) +j=J.T(j) +k=J.T(k) +l=J.T(l) +m=J.T(m) +n=J.T(n) +o=J.T(o) +p=J.T(p) +q=J.T(q) +r=J.T(r) +return A.hJ(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0($.ho(),s),b),c),d),e),f),g),h),i),j),k),l),m),n),o),p),q),r))}if(B.a===a1){s=J.T(a) +b=J.T(b) +c=J.T(c) +d=J.T(d) +e=J.T(e) +f=J.T(f) +g=J.T(g) +h=J.T(h) +i=J.T(i) +j=J.T(j) +k=J.T(k) +l=J.T(l) +m=J.T(m) +n=J.T(n) +o=J.T(o) +p=J.T(p) +q=J.T(q) +r=J.T(r) +a0=J.T(a0) +return A.hJ(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0($.ho(),s),b),c),d),e),f),g),h),i),j),k),l),m),n),o),p),q),r),a0))}s=J.T(a) +b=J.T(b) +c=J.T(c) +d=J.T(d) +e=J.T(e) +f=J.T(f) +g=J.T(g) +h=J.T(h) +i=J.T(i) +j=J.T(j) +k=J.T(k) +l=J.T(l) +m=J.T(m) +n=J.T(n) +o=J.T(o) +p=J.T(p) +q=J.T(q) +r=J.T(r) +a0=J.T(a0) +a1=J.T(a1) +return A.hJ(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0(A.a0($.ho(),s),b),c),d),e),f),g),h),i),j),k),l),m),n),o),p),q),r),a0),a1))}, +dt(a){var s,r=$.ho() +for(s=J.ao(a);s.u();)r=A.a0(r,J.T(s.gH(s))) +return A.hJ(r)}, +bIe(a){var s,r,q,p,o +for(s=a.gaj(a),r=0,q=0;s.u();){p=J.T(s.gH(s)) +o=((p^B.f.dz(p,16))>>>0)*2146121005>>>0 +o=((o^o>>>15)>>>0)*2221713035>>>0 +r=r+((o^o>>>16)>>>0)&1073741823;++q}return A.bso(r,q,0)}, +rM(a){A.bxk(A.h(a))}, +aSz(a,b,c,d){return new A.pL(a,b,c.h("@<0>").S(d).h("pL<1,2>"))}, +bsf(){$.Wd() +return new A.Ep()}, +bOi(a,b){return 65536+((a&1023)<<10)+(b&1023)}, +bsS(a){var s,r=null,q=new A.cV(""),p=A.a([-1],t.t) +A.bLo(r,r,r,q,p) +p.push(q.a.length) +q.a+="," +A.bLm(B.hx,B.c4.l2(a),q) +s=q.a +return new A.aaH(s.charCodeAt(0)==0?s:s,p,r).ghm()}, +dH(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 +a5=a3.length +s=a4+5 +if(a5>=s){r=((a3.charCodeAt(a4+4)^58)*3|a3.charCodeAt(a4)^100|a3.charCodeAt(a4+1)^97|a3.charCodeAt(a4+2)^116|a3.charCodeAt(a4+3)^97)>>>0 +if(r===0)return A.bsR(a4>0||a5=14)q[7]=a5 +o=q[1] +if(o>=a4)if(A.bvK(a3,a4,o,20,q)===20)q[7]=o +n=q[2]+1 +m=q[3] +l=q[4] +k=q[5] +j=q[6] +if(jo+3){h=a2 +i=!1}else{p=m>a4 +if(p&&m+1===l){h=a2 +i=!1}else{if(!B.c.eG(a3,"\\",l))if(n>a4)g=B.c.eG(a3,"\\",n-1)||B.c.eG(a3,"\\",n-2) +else g=!1 +else g=!0 +if(g){h=a2 +i=!1}else{if(!(kl+2&&B.c.eG(a3,"/..",k-3) +else g=!0 +if(g){h=a2 +i=!1}else{if(o===a4+4)if(B.c.eG(a3,"file",a4)){if(n<=a4){if(!B.c.eG(a3,"/",l)){f="file:///" +r=3}else{f="file://" +r=2}a3=f+B.c.U(a3,l,a5) +o-=a4 +s=r-a4 +k+=s +j+=s +a5=a3.length +a4=0 +n=7 +m=7 +l=7}else if(l===k)if(a4===0&&!0){a3=B.c.iG(a3,l,k,"/");++k;++j;++a5}else{a3=B.c.U(a3,a4,l)+"/"+B.c.U(a3,k,a5) +o-=a4 +n-=a4 +m-=a4 +l-=a4 +s=1-a4 +k+=s +j+=s +a5=a3.length +a4=0}h="file"}else if(B.c.eG(a3,"http",a4)){if(p&&m+3===l&&B.c.eG(a3,"80",m+1))if(a4===0&&!0){a3=B.c.iG(a3,m,l,"") +l-=3 +k-=3 +j-=3 +a5-=3}else{a3=B.c.U(a3,a4,m)+B.c.U(a3,l,a5) +o-=a4 +n-=a4 +m-=a4 +s=3+a4 +l-=s +k-=s +j-=s +a5=a3.length +a4=0}h="http"}else h=a2 +else if(o===s&&B.c.eG(a3,"https",a4)){if(p&&m+4===l&&B.c.eG(a3,"443",m+1))if(a4===0&&!0){a3=B.c.iG(a3,m,l,"") +l-=4 +k-=4 +j-=4 +a5-=3}else{a3=B.c.U(a3,a4,m)+B.c.U(a3,l,a5) +o-=a4 +n-=a4 +m-=a4 +s=4+a4 +l-=s +k-=s +j-=s +a5=a3.length +a4=0}h="https"}else h=a2 +i=!0}}}}else h=a2 +if(i){if(a4>0||a5a4)h=A.buA(a3,a4,o) +else{if(o===a4)A.H4(a3,a4,"Invalid empty scheme") +h=""}if(n>a4){e=o+3 +d=e9)j.$2("invalid character",s)}else{if(q===3)j.$2(l,s) +o=A.ef(B.c.U(a,r,s),m,m) +if(o>255)j.$2(k,r) +n=q+1 +i[q]=o +r=s+1 +q=n}}if(q!==3)j.$2(l,c) +o=A.ef(B.c.U(a,r,c),m,m) +if(o>255)j.$2(k,r) +i[q]=o +return i}, +bsW(a,b,a0){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=null,d=new A.aZA(a),c=new A.aZB(d,a) +if(a.length<2)d.$2("address is too short",e) +s=A.a([],t.t) +for(r=b,q=r,p=!1,o=!1;r>>0) +s.push((k[2]<<8|k[3])>>>0)}if(p){if(s.length>7)d.$2("an address with a wildcard must have less than 7 parts",e)}else if(s.length!==8)d.$2("an address without a wildcard must contain exactly 8 parts",e) +j=new Uint8Array(16) +for(l=s.length,i=9-l,r=0,h=0;ro)A.q(A.cK(0,0,p.gt(q),null,null)) +if(A.aqi(q,"/",0)){s=A.a7("Illegal path character "+A.h(q)) +throw A.c(s)}}}, +Ui(a,b,c){var s,r,q,p,o,n=null +for(s=A.fE(a,c,n,A.ab(a).c),r=s.$ti,s=new A.bZ(s,s.gt(s),r.h("bZ")),r=r.h("ax.E");s.u();){q=s.d +if(q==null)q=r.a(q) +p=A.bF('["*/:<>?\\\\|]',!0,!1,!1) +o=q.length +if(A.aqi(q,p,0))if(b)throw A.c(A.bU("Illegal character in path",n)) +else throw A.c(A.a7("Illegal character in path: "+q))}}, +buu(a,b){var s,r="Illegal drive letter " +if(!(65<=a&&a<=90))s=97<=a&&a<=122 +else s=!0 +if(s)return +if(b)throw A.c(A.bU(r+A.a9F(a),null)) +else throw A.c(A.a7(r+A.a9F(a)))}, +bNF(a,b){var s=null,r=A.a(a.split("/"),t.s) +if(B.c.c8(a,"/"))return A.f7(s,s,s,r,s,"file") +else return A.f7(s,s,s,r,s,s)}, +bNG(a,b){var s,r,q,p,o="\\",n=null,m="file" +if(B.c.c8(a,"\\\\?\\"))if(B.c.eG(a,"UNC\\",4))a=B.c.iG(a,0,7,o) +else{a=B.c.cv(a,4) +if(a.length<3||a.charCodeAt(1)!==58||a.charCodeAt(2)!==92)throw A.c(A.eR(a,"path","Windows paths with \\\\?\\ prefix must be absolute"))}else a=A.eC(a,"/",o) +s=a.length +if(s>1&&a.charCodeAt(1)===58){A.buu(a.charCodeAt(0),!0) +if(s===2||a.charCodeAt(2)!==92)throw A.c(A.eR(a,"path","Windows paths with drive letter must be absolute")) +r=A.a(a.split(o),t.s) +A.Ui(r,!0,1) +return A.f7(n,n,n,r,n,m)}if(B.c.c8(a,o))if(B.c.eG(a,o,1)){q=B.c.h0(a,o,2) +s=q<0 +p=s?B.c.cv(a,2):B.c.U(a,2,q) +r=A.a((s?"":B.c.cv(a,q+1)).split(o),t.s) +A.Ui(r,!0,0) +return A.f7(n,p,n,r,n,m)}else{r=A.a(a.split(o),t.s) +A.Ui(r,!0,0) +return A.f7(n,n,n,r,n,m)}else{r=A.a(a.split(o),t.s) +A.Ui(r,!0,0) +return A.f7(n,n,n,r,n,n)}}, +bNC(a){var s +if(a.length===0)return B.F_ +s=A.buG(a) +s.adj(s,A.bwe()) +return A.bi_(s,t.N,t.yp)}, +bkR(a,b){if(a!=null&&a===A.buv(b))return null +return a}, +buz(a,b,c,d){var s,r,q,p,o,n +if(a==null)return null +if(b===c)return"" +if(a.charCodeAt(b)===91){s=c-1 +if(a.charCodeAt(s)!==93)A.H4(a,b,"Missing end `]` to match `[` in host") +r=b+1 +q=A.bNB(a,r,s) +if(q=b&&q=b&&s>>4]&1<<(p&15))!==0){if(q&&65<=p&&90>=p){if(i==null)i=new A.cV("") +if(r>>4]&1<<(o&15))!==0){if(p&&65<=o&&90>=o){if(q==null)q=new A.cV("") +if(r>>4]&1<<(o&15))!==0)A.H4(a,s,"Invalid character") +else{if((o&64512)===55296&&s+1>>4]&1<<(q&15))!==0))A.H4(a,s,"Illegal scheme character") +if(65<=q&&q<=90)r=!0}a=B.c.U(a,b,c) +return A.bNz(r?a.toLowerCase():a)}, +bNz(a){if(a==="http")return"http" +if(a==="file")return"file" +if(a==="https")return"https" +if(a==="package")return"package" +return a}, +buB(a,b,c){if(a==null)return"" +return A.Uj(a,b,c,B.a_H,!1,!1)}, +bcp(a,b,c,d,e,f){var s,r=e==="file",q=r||f +if(a==null){if(d==null)return r?"/":"" +s=new A.ad(d,new A.bcq(),A.ab(d).h("ad<1,f>")).cq(0,"/")}else if(d!=null)throw A.c(A.bU("Both path and pathSegments specified",null)) +else s=A.Uj(a,b,c,B.xb,!0,!0) +if(s.length===0){if(r)return"/"}else if(q&&!B.c.c8(s,"/"))s="/"+s +return A.buE(s,e,f)}, +buE(a,b,c){var s=b.length===0 +if(s&&!c&&!B.c.c8(a,"/")&&!B.c.c8(a,"\\"))return A.bkT(a,!s||c) +return A.rw(a)}, +bcr(a,b,c,d){var s,r={} +if(a!=null){if(d!=null)throw A.c(A.bU("Both query and queryParameters specified",null)) +return A.Uj(a,b,c,B.hx,!0,!1)}if(d==null)return null +s=new A.cV("") +r.a="" +d.af(0,new A.bcs(new A.bct(r,s))) +r=s.a +return r.charCodeAt(0)==0?r:r}, +buy(a,b,c){if(a==null)return null +return A.Uj(a,b,c,B.hx,!0,!1)}, +bkS(a,b,c){var s,r,q,p,o,n=b+2 +if(n>=a.length)return"%" +s=a.charCodeAt(b+1) +r=a.charCodeAt(n) +q=A.bfw(s) +p=A.bfw(r) +if(q<0||p<0)return"%" +o=q*16+p +if(o<127&&(B.fd[B.f.dz(o,4)]&1<<(o&15))!==0)return A.ep(c&&65<=o&&90>=o?(o|32)>>>0:o) +if(s>=97||r>=97)return B.c.U(a,b,b+3).toUpperCase() +return null}, +bkQ(a){var s,r,q,p,o,n="0123456789ABCDEF" +if(a<128){s=new Uint8Array(3) +s[0]=37 +s[1]=n.charCodeAt(a>>>4) +s[2]=n.charCodeAt(a&15)}else{if(a>2047)if(a>65535){r=240 +q=4}else{r=224 +q=3}else{r=192 +q=2}s=new Uint8Array(3*q) +for(p=0;--q,q>=0;r=128){o=B.f.Jg(a,6*q)&63|r +s[p]=37 +s[p+1]=n.charCodeAt(o>>>4) +s[p+2]=n.charCodeAt(o&15) +p+=3}}return A.ja(s,0,null)}, +Uj(a,b,c,d,e,f){var s=A.buD(a,b,c,d,e,f) +return s==null?B.c.U(a,b,c):s}, +buD(a,b,c,d,e,f){var s,r,q,p,o,n,m,l,k,j,i=null +for(s=!e,r=b,q=r,p=i;r>>4]&1<<(o&15))!==0)++r +else{if(o===37){n=A.bkS(a,r,!1) +if(n==null){r+=3 +continue}if("%"===n){n="%25" +m=1}else m=3}else if(o===92&&f){n="/" +m=1}else if(s&&o<=93&&(B.xi[o>>>4]&1<<(o&15))!==0){A.H4(a,r,"Invalid character") +m=i +n=m}else{if((o&64512)===55296){l=r+1 +if(l=2&&A.bux(a.charCodeAt(0)))for(s=1;s127||(B.wc[r>>>4]&1<<(r&15))===0)break}return a}, +bNI(a,b){if(a.VA("package")&&a.c==null)return A.bvN(b,0,b.length) +return-1}, +buH(a){var s,r,q,p=a.gBh(),o=p.length +if(o>0&&J.aZ(p[0])===2&&J.bhr(p[0],1)===58){A.buu(J.bhr(p[0],0),!1) +A.Ui(p,!1,1) +s=!0}else{A.Ui(p,!1,0) +s=!1}r=a.gLx()&&!s?""+"\\":"" +if(a.gF4()){q=a.gpJ(a) +if(q.length!==0)r=r+"\\"+q+"\\"}r=A.a9C(r,p,"\\") +o=s&&o===1?r+"\\":r +return o.charCodeAt(0)==0?o:o}, +bND(){return A.a([],t.s)}, +buG(a){var s,r,q,p,o,n=A.F(t.N,t.yp),m=new A.bcu(a,B.O,n) +for(s=a.length,r=0,q=0,p=-1;r127)throw A.c(A.bU("Illegal percent encoding in URI",null)) +if(r===37){if(o+3>q)throw A.c(A.bU("Truncated URI",null)) +p.push(A.bNE(a,o+1)) +o+=2}else if(e&&r===43)p.push(32) +else p.push(r)}}return d.hu(0,p)}, +bux(a){var s=a|32 +return 97<=s&&s<=122}, +bLo(a,b,c,d,e){var s,r +if(!0)d.a=d.a +else{s=A.bLn("") +if(s<0)throw A.c(A.eR("","mimeType","Invalid MIME type")) +r=d.a+=A.k6(B.zW,B.c.U("",0,s),B.O,!1) +d.a=r+"/" +d.a+=A.k6(B.zW,B.c.cv("",s+1),B.O,!1)}}, +bLn(a){var s,r,q +for(s=a.length,r=-1,q=0;qb)throw A.c(A.cJ(k,a,r)) +for(;p!==44;){j.push(r);++r +for(o=-1;r=0)j.push(o) +else{n=B.b.ga1(j) +if(p!==44||r!==n+7||!B.c.eG(a,"base64",n+1))throw A.c(A.cJ("Expecting '='",a,r)) +break}}j.push(r) +m=r+1 +if((j.length&1)===1)a=B.qg.aLF(0,a,m,s) +else{l=A.buD(a,m,s,B.hx,!0,!1) +if(l!=null)a=B.c.iG(a,m,s,l)}return new A.aaH(a,j,c)}, +bLm(a,b,c){var s,r,q,p,o="0123456789ABCDEF" +for(s=J.ak(b),r=0,q=0;q>>0!==0)for(q=0;q255)throw A.c(A.eR(p,"non-byte value",null))}}, +bOs(){var s,r,q,p,o,n="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-._~!$&'()*+,;=",m=".",l=":",k="/",j="\\",i="?",h="#",g="/\\",f=J.om(22,t.E) +for(s=0;s<22;++s)f[s]=new Uint8Array(96) +r=new A.bdo(f) +q=new A.bdp() +p=new A.bdq() +o=r.$2(0,225) +q.$3(o,n,1) +q.$3(o,m,14) +q.$3(o,l,34) +q.$3(o,k,3) +q.$3(o,j,227) +q.$3(o,i,172) +q.$3(o,h,205) +o=r.$2(14,225) +q.$3(o,n,1) +q.$3(o,m,15) +q.$3(o,l,34) +q.$3(o,g,234) +q.$3(o,i,172) +q.$3(o,h,205) +o=r.$2(15,225) +q.$3(o,n,1) +q.$3(o,"%",225) +q.$3(o,l,34) +q.$3(o,k,9) +q.$3(o,j,233) +q.$3(o,i,172) +q.$3(o,h,205) +o=r.$2(1,225) +q.$3(o,n,1) +q.$3(o,l,34) +q.$3(o,k,10) +q.$3(o,j,234) +q.$3(o,i,172) +q.$3(o,h,205) +o=r.$2(2,235) +q.$3(o,n,139) +q.$3(o,k,131) +q.$3(o,j,131) +q.$3(o,m,146) +q.$3(o,i,172) +q.$3(o,h,205) +o=r.$2(3,235) +q.$3(o,n,11) +q.$3(o,k,68) +q.$3(o,j,68) +q.$3(o,m,18) +q.$3(o,i,172) +q.$3(o,h,205) +o=r.$2(4,229) +q.$3(o,n,5) +p.$3(o,"AZ",229) +q.$3(o,l,102) +q.$3(o,"@",68) +q.$3(o,"[",232) +q.$3(o,k,138) +q.$3(o,j,138) +q.$3(o,i,172) +q.$3(o,h,205) +o=r.$2(5,229) +q.$3(o,n,5) +p.$3(o,"AZ",229) +q.$3(o,l,102) +q.$3(o,"@",68) +q.$3(o,k,138) +q.$3(o,j,138) +q.$3(o,i,172) +q.$3(o,h,205) +o=r.$2(6,231) +p.$3(o,"19",7) +q.$3(o,"@",68) +q.$3(o,k,138) +q.$3(o,j,138) +q.$3(o,i,172) +q.$3(o,h,205) +o=r.$2(7,231) +p.$3(o,"09",7) +q.$3(o,"@",68) +q.$3(o,k,138) +q.$3(o,j,138) +q.$3(o,i,172) +q.$3(o,h,205) +q.$3(r.$2(8,8),"]",5) +o=r.$2(9,235) +q.$3(o,n,11) +q.$3(o,m,16) +q.$3(o,g,234) +q.$3(o,i,172) +q.$3(o,h,205) +o=r.$2(16,235) +q.$3(o,n,11) +q.$3(o,m,17) +q.$3(o,g,234) +q.$3(o,i,172) +q.$3(o,h,205) +o=r.$2(17,235) +q.$3(o,n,11) +q.$3(o,k,9) +q.$3(o,j,233) +q.$3(o,i,172) +q.$3(o,h,205) +o=r.$2(10,235) +q.$3(o,n,11) +q.$3(o,m,18) +q.$3(o,k,10) +q.$3(o,j,234) +q.$3(o,i,172) +q.$3(o,h,205) +o=r.$2(18,235) +q.$3(o,n,11) +q.$3(o,m,19) +q.$3(o,g,234) +q.$3(o,i,172) +q.$3(o,h,205) +o=r.$2(19,235) +q.$3(o,n,11) +q.$3(o,g,234) +q.$3(o,i,172) +q.$3(o,h,205) +o=r.$2(11,235) +q.$3(o,n,11) +q.$3(o,k,10) +q.$3(o,j,234) +q.$3(o,i,172) +q.$3(o,h,205) +o=r.$2(12,236) +q.$3(o,n,12) +q.$3(o,i,12) +q.$3(o,h,205) +o=r.$2(13,237) +q.$3(o,n,13) +q.$3(o,i,13) +p.$3(r.$2(20,245),"az",21) +o=r.$2(21,245) +p.$3(o,"az",21) +p.$3(o,"09",21) +q.$3(o,"+-.",21) +return f}, +bvK(a,b,c,d,e){var s,r,q,p,o=$.bB0() +for(s=b;s95?31:q] +d=p&31 +e[p>>>5]=s}return d}, +bu8(a){if(a.b===7&&B.c.c8(a.a,"package")&&a.c<=0)return A.bvN(a.a,a.e,a.f) +return-1}, +bQl(a,b){return A.i3(b,t.N)}, +bvN(a,b,c){var s,r,q +for(s=b,r=0;s")) +return t.lU.a(s.gaI(s))}, +Jz(a){var s,r,q="element tag unavailable" +try{s=a.tagName +s.toString +q=s}catch(r){}return q}, +bMl(a,b){return document.createElement(a)}, +bGK(a){var s,r=document.createElement("input"),q=t.R_.a(r) +try{q.type=a}catch(s){}return q}, +bLB(a,b){var s=new WebSocket(a) +s.toString +return s}, +je(a,b,c,d,e){var s=c==null?null:A.bvY(new A.b3e(c),t.I3) +s=new A.FO(a,b,s,!1,e.h("FO<0>")) +s.Ss() +return s}, +btQ(a){var s=document.createElement("a") +s.toString +s=new A.b9S(s,window.location) +s=new A.G2(s) +s.alR(a) +return s}, +bMD(a,b,c,d){return!0}, +bME(a,b,c,d){var s,r,q,p=d.a,o=p.a +o.href=c +s=o.hostname +p=p.b +if(s==p.hostname){r=o.port +q=p.port +q.toString +if(r===q){r=o.protocol +p=p.protocol +p.toString +p=r===p}else p=!1}else p=!1 +if(!p)if(s==="")if(o.port===""){p=o.protocol +p=p===":"||p===""}else p=!1 +else p=!1 +else p=!0 +return p}, +buk(){var s=t.N,r=A.op(B.vg,s),q=A.a(["TEMPLATE"],t.s) +s=new A.amD(r,A.lN(s),A.lN(s),A.lN(s),null) +s.alW(null,new A.ad(B.vg,new A.bbA(),t.a4),q,null) +return s}, +bv_(a){if(t.VF.b(a))return a +return new A.nz([],[]).t1(a,!0)}, +bMh(a){var s=window +s.toString +if(a===s)return a +else return new A.aeW(a)}, +bvY(a,b){var s=$.a9 +if(s===B.b7)return a +return s.Tl(a,b)}, +bxm(a){return document.querySelector(a)}, +ba:function ba(){}, +Ww:function Ww(){}, +WD:function WD(){}, +WZ:function WZ(){}, +Au:function Au(){}, +t1:function t1(){}, +vY:function vY(){}, +o1:function o1(){}, +td:function td(){}, +YJ:function YJ(){}, +dB:function dB(){}, +wi:function wi(){}, +awR:function awR(){}, +js:function js(){}, +mI:function mI(){}, +YK:function YK(){}, +YL:function YL(){}, +a_H:function a_H(){}, +pQ:function pQ(){}, +a0c:function a0c(){}, +Jl:function Jl(){}, +Jm:function Jm(){}, +Jn:function Jn(){}, +a0f:function a0f(){}, +ae4:function ae4(a,b){this.a=a +this.b=b}, +cv:function cv(){}, +azW:function azW(){}, +aX:function aX(){}, +aJ:function aJ(){}, +hV:function hV(){}, +BG:function BG(){}, +JK:function JK(){}, +a0W:function a0W(){}, +a1c:function a1c(){}, +a1e:function a1e(){}, +jB:function jB(){}, +a1F:function a1F(){}, +x3:function x3(){}, +tI:function tI(){}, +x4:function x4(){}, +C4:function C4(){}, +xe:function xe(){}, +KP:function KP(){}, +a2Q:function a2Q(){}, +a51:function a51(){}, +u9:function u9(){}, +CO:function CO(){}, +a54:function a54(){}, +aJ7:function aJ7(a){this.a=a}, +aJ8:function aJ8(a){this.a=a}, +a55:function a55(){}, +aJ9:function aJ9(a){this.a=a}, +aJa:function aJa(a){this.a=a}, +jI:function jI(){}, +a56:function a56(){}, +iH:function iH(a){this.a=a}, +br:function br(){}, +LM:function LM(){}, +a5v:function a5v(){}, +jK:function jK(){}, +a6q:function a6q(){}, +lg:function lg(){}, +a7T:function a7T(){}, +aQq:function aQq(a){this.a=a}, +aQr:function aQr(a){this.a=a}, +Nf:function Nf(){}, +a8a:function a8a(){}, +E8:function E8(){}, +jP:function jP(){}, +a94:function a94(){}, +jS:function jS(){}, +a9t:function a9t(){}, +jT:function jT(){}, +Oa:function Oa(){}, +aW4:function aW4(a){this.a=a}, +aW5:function aW5(a){this.a=a}, +aW6:function aW6(a){this.a=a}, +iB:function iB(){}, +Oo:function Oo(){}, +a9Q:function a9Q(){}, +a9R:function a9R(){}, +EE:function EE(){}, +jY:function jY(){}, +iC:function iC(){}, +aac:function aac(){}, +aad:function aad(){}, +aag:function aag(){}, +jZ:function jZ(){}, +aal:function aal(){}, +aam:function aam(){}, +aaJ:function aaJ(){}, +aaS:function aaS(){}, +Fa:function Fa(){}, +v0:function v0(){}, +p5:function p5(){}, +Ft:function Ft(){}, +aeC:function aeC(){}, +Qy:function Qy(){}, +agn:function agn(){}, +RZ:function RZ(){}, +am4:function am4(){}, +amg:function amg(){}, +adn:function adn(){}, +b0t:function b0t(a){this.a=a}, +QN:function QN(a){this.a=a}, +biw:function biw(a,b){this.a=a +this.$ti=b}, +jd:function jd(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.$ti=d}, +QO:function QO(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.$ti=d}, +FO:function FO(a,b,c,d,e){var _=this +_.a=0 +_.b=a +_.c=b +_.d=c +_.e=d +_.$ti=e}, +b3e:function b3e(a){this.a=a}, +b3f:function b3f(a){this.a=a}, +G2:function G2(a){this.a=a}, +bD:function bD(){}, +LN:function LN(a){this.a=a}, +aKD:function aKD(a){this.a=a}, +aKC:function aKC(a,b,c){this.a=a +this.b=b +this.c=c}, +Tn:function Tn(){}, +baD:function baD(){}, +baE:function baE(){}, +amD:function amD(a,b,c,d,e){var _=this +_.e=a +_.a=b +_.b=c +_.c=d +_.d=e}, +bbA:function bbA(){}, +amh:function amh(){}, +BI:function BI(a,b,c){var _=this +_.a=a +_.b=b +_.c=-1 +_.d=null +_.$ti=c}, +aeW:function aeW(a){this.a=a}, +b9S:function b9S(a,b){this.a=a +this.b=b}, +anO:function anO(a){this.a=a +this.b=0}, +bcz:function bcz(a){this.a=a}, +aeD:function aeD(){}, +afl:function afl(){}, +afm:function afm(){}, +afn:function afn(){}, +afo:function afo(){}, +afX:function afX(){}, +afY:function afY(){}, +agE:function agE(){}, +agF:function agF(){}, +aid:function aid(){}, +aie:function aie(){}, +aif:function aif(){}, +aig:function aig(){}, +aiz:function aiz(){}, +aiA:function aiA(){}, +aj3:function aj3(){}, +aj4:function aj4(){}, +akZ:function akZ(){}, +Tr:function Tr(){}, +Ts:function Ts(){}, +am2:function am2(){}, +am3:function am3(){}, +ama:function ama(){}, +an_:function an_(){}, +an0:function an0(){}, +TX:function TX(){}, +TY:function TY(){}, +anc:function anc(){}, +and:function and(){}, +aof:function aof(){}, +aog:function aog(){}, +aot:function aot(){}, +aou:function aou(){}, +aoK:function aoK(){}, +aoL:function aoL(){}, +apm:function apm(){}, +apn:function apn(){}, +app:function app(){}, +apq:function apq(){}, +buZ(a){var s,r,q +if(a==null)return a +if(typeof a=="string"||typeof a=="number"||A.jl(a))return a +if(A.bwQ(a))return A.ms(a) +s=Array.isArray(a) +s.toString +if(s){r=[] +q=0 +while(!0){s=a.length +s.toString +if(!(q")),r=new A.rt(s,b.h("rt<0>")),q=t.I3 +A.je(a,"success",new A.bdf(a,r),!1,q) +A.je(a,"error",r.gKs(),!1,q) +return s}, +bId(a,b,c){var s=A.ln(null,null,null,!0,c),r=t.I3 +A.je(a,"error",s.gww(),!1,r) +A.je(a,"success",new A.aKO(a,s,!0),!1,r) +return new A.d_(s,A.k(s).h("d_<1>"))}, +J0:function J0(){}, +o6:function o6(){}, +wo:function wo(){}, +Kn:function Kn(){}, +bdf:function bdf(a,b){this.a=a +this.b=b}, +Ck:function Ck(){}, +LQ:function LQ(){}, +aKO:function aKO(a,b,c){this.a=a +this.b=b +this.c=c}, +v_:function v_(){}, +bMp(a,b){throw A.c(A.a7("File._exists"))}, +bMq(a,b){throw A.c(A.a7("File._lengthFromPath"))}, +btR(){throw A.c(A.a7("_Namespace"))}, +bMP(){throw A.c(A.a7("_Namespace"))}, +bN4(a){throw A.c(A.a7("RandomAccessFile"))}, +bN1(){throw A.c(A.a7("Platform._operatingSystem"))}, +bIU(a,b){throw A.c(A.a7("Process.run"))}, +VI(a,b,c){var s +if(t.Dn.b(a)&&!J.i(J.b3(a,0),0)){s=J.ak(a) +switch(s.i(a,0)){case 1:throw A.c(A.bU(b+": "+c,null)) +case 2:throw A.c(A.bFW(new A.qr(A.bs(s.i(a,2)),A.fY(s.i(a,1))),b,c)) +case 3:throw A.c(A.bpu("File closed",c,null)) +default:throw A.c(A.mz("Unknown error"))}}}, +bpv(a){var s +A.bGB() +A.bf(a,"path") +s=A.bFV(B.cv.cN(a)) +return new A.QV(a,s)}, +bpu(a,b,c){return new A.iV(a,b,c)}, +bFW(a,b,c){if($.bgT())switch(a.b){case 5:case 16:case 19:case 24:case 32:case 33:case 65:case 108:return new A.M6(b,c,a) +case 80:case 183:return new A.M7(b,c,a) +case 2:case 3:case 15:case 18:case 53:case 67:case 161:case 206:return new A.M8(b,c,a) +default:return new A.iV(b,c,a)}else switch(a.b){case 1:case 13:return new A.M6(b,c,a) +case 17:return new A.M7(b,c,a) +case 2:return new A.M8(b,c,a) +default:return new A.iV(b,c,a)}}, +bMr(){return A.bMP()}, +btJ(a,b){b[0]=A.bMr()}, +bN3(a,b){return new A.zP(b,A.bN4(a))}, +bFV(a){var s,r,q=a.length +if(q!==0)s=!B.L.gai(a)&&!J.i(B.L.ga1(a),0) +else s=!0 +if(s){r=new Uint8Array(q+1) +B.L.di(r,0,q,a) +return r}else return a}, +bGB(){$.bAw() +return null}, +bN2(){return A.bN1()}, +qr:function qr(a,b){this.a=a +this.b=b}, +wN:function wN(a){this.a=a}, +iV:function iV(a,b,c){this.a=a +this.b=b +this.c=c}, +M6:function M6(a,b,c){this.a=a +this.b=b +this.c=c}, +M7:function M7(a,b,c){this.a=a +this.b=b +this.c=c}, +M8:function M8(a,b,c){this.a=a +this.b=b +this.c=c}, +ag_:function ag_(a,b,c,d){var _=this +_.a=$ +_.b=a +_.c=null +_.d=b +_.e=c +_.f=d +_.r=!1 +_.w=!0 +_.y=_.x=!1}, +b3C:function b3C(a){this.a=a}, +b3v:function b3v(a){this.a=a}, +b3w:function b3w(a){this.a=a}, +b3x:function b3x(a){this.a=a}, +b3A:function b3A(a){this.a=a}, +b3y:function b3y(a,b){this.a=a +this.b=b}, +b3z:function b3z(a){this.a=a}, +b3B:function b3B(a){this.a=a}, +QV:function QV(a,b){this.a=a +this.b=b}, +b3E:function b3E(a){this.a=a}, +b3D:function b3D(a){this.a=a}, +b3K:function b3K(){}, +b3L:function b3L(a,b,c){this.a=a +this.b=b +this.c=c}, +b3M:function b3M(a,b,c){this.a=a +this.b=b +this.c=c}, +b3H:function b3H(){}, +b3I:function b3I(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +b3J:function b3J(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +b3G:function b3G(a,b){this.a=a +this.b=b}, +b3F:function b3F(a,b,c){this.a=a +this.b=b +this.c=c}, +zP:function zP(a,b){var _=this +_.a=a +_.b=!1 +_.c=$ +_.d=b +_.e=!1}, +b8r:function b8r(a){this.a=a}, +b8u:function b8u(a){this.a=a}, +b8t:function b8t(a,b,c){this.a=a +this.b=b +this.c=c}, +b8v:function b8v(a){this.a=a}, +b8s:function b8s(a){this.a=a}, +JL:function JL(a){this.a=a}, +kg:function kg(){}, +a9L:function a9L(){}, +bO6(a,b,c,d){var s,r +if(b){s=[c] +B.b.I(s,d) +d=s}r=t.z +return A.bkZ(A.bpK(a,A.hz(J.co(d,A.bTl(),r),!0,r)))}, +bH0(a,b,c){var s=null +if(a<0||a>c)throw A.c(A.cK(a,0,c,s,s)) +if(bc)throw A.c(A.cK(b,a,c,s,s))}, +bl0(a,b,c){var s +try{if(Object.isExtensible(a)&&!Object.prototype.hasOwnProperty.call(a,b)){Object.defineProperty(a,b,{value:c}) +return!0}}catch(s){}return!1}, +bvg(a,b){if(Object.prototype.hasOwnProperty.call(a,b))return a[b] +return null}, +bkZ(a){if(a==null||typeof a=="string"||typeof a=="number"||A.jl(a))return a +if(a instanceof A.qj)return a.a +if(A.bwO(a))return a +if(t.e2.b(a))return a +if(a instanceof A.dl)return A.j9(a) +if(t._8.b(a))return A.bvf(a,"$dart_jsFunction",new A.bdm()) +return A.bvf(a,"_$dart_jsObject",new A.bdn($.bmz()))}, +bvf(a,b,c){var s=A.bvg(a,b) +if(s==null){s=c.$1(a) +A.bl0(a,b,s)}return s}, +bkY(a){if(a==null||typeof a=="string"||typeof a=="number"||typeof a=="boolean")return a +else if(a instanceof Object&&A.bwO(a))return a +else if(a instanceof Object&&t.e2.b(a))return a +else if(a instanceof Date)return A.mJ(a.getTime(),!1) +else if(a.constructor===$.bmz())return a.o +else return A.bvW(a)}, +bvW(a){if(typeof a=="function")return A.bl5(a,$.aqs(),new A.ben()) +if(a instanceof Array)return A.bl5(a,$.bmv(),new A.beo()) +return A.bl5(a,$.bmv(),new A.bep())}, +bl5(a,b,c){var s=A.bvg(a,b) +if(s==null||!(a instanceof Object)){s=c.$1(a) +A.bl0(a,b,s)}return s}, +bdm:function bdm(){}, +bdn:function bdn(a){this.a=a}, +ben:function ben(){}, +beo:function beo(){}, +bep:function bep(){}, +qj:function qj(a){this.a=a}, +KC:function KC(a){this.a=a}, +xj:function xj(a,b){this.a=a +this.$ti=b}, +G7:function G7(){}, +bOp(a){var s,r=a.$dart_jsFunction +if(r!=null)return r +s=function(b,c){return function(){return b(c,Array.prototype.slice.apply(arguments))}}(A.bO7,a) +s[$.aqs()]=a +a.$dart_jsFunction=s +return s}, +bO7(a,b){return A.bpK(a,b)}, +cA(a){if(typeof a=="function")return a +else return A.bOp(a)}, +bvv(a){return a==null||A.jl(a)||typeof a=="number"||typeof a=="string"||t.pT.b(a)||t.E.b(a)||t.Po.b(a)||t.JZ.b(a)||t.w7.b(a)||t.XO.b(a)||t.rd.b(a)||t.s4.b(a)||t.OE.b(a)||t.pI.b(a)||t.V4.b(a)}, +b0(a){if(A.bvv(a))return a +return new A.bfI(new A.vc(t.Fy)).$1(a)}, +bwJ(){return globalThis}, +a_(a,b){return a[b]}, +VK(a,b){return a[b]}, +ca(a,b,c){return a[b].apply(a,c)}, +bO8(a,b){return a[b]()}, +buS(a,b,c){return a[b](c)}, +bO9(a,b,c,d){return a[b](c,d)}, +buR(a){return new a()}, +bO5(a,b){return new a(b)}, +ly(a,b){var s=new A.a8($.a9,b.h("a8<0>")),r=new A.aD(s,b.h("aD<0>")) +a.then(A.rF(new A.bga(r),1),A.rF(new A.bgb(r),1)) +return s}, +bvu(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}, +blw(a){if(A.bvu(a))return a +return new A.beP(new A.vc(t.Fy)).$1(a)}, +bfI:function bfI(a){this.a=a}, +bga:function bga(a){this.a=a}, +bgb:function bgb(a){this.a=a}, +beP:function beP(a){this.a=a}, +a5x:function a5x(a){this.a=a}, +bx1(a,b){return Math.max(a,b)}, +W0(a){return Math.log(a)}, +bUp(a,b){return Math.pow(a,b)}, +bJ2(a){var s +if(a==null)s=B.fZ +else{s=new A.b8q() +s.alU(a)}return s}, +brv(){return $.byY()}, +b5H:function b5H(){}, +b8q:function b8q(){this.b=this.a=0}, +b5I:function b5I(a){this.a=a}, +l8:function l8(){}, +a2C:function a2C(){}, +ld:function ld(){}, +a5A:function a5A(){}, +a6r:function a6r(){}, +DS:function DS(){}, +a9D:function a9D(){}, +bh:function bh(){}, +lp:function lp(){}, +aao:function aao(){}, +ahm:function ahm(){}, +ahn:function ahn(){}, +aiJ:function aiJ(){}, +aiK:function aiK(){}, +amd:function amd(){}, +ame:function ame(){}, +ani:function ani(){}, +anj:function anj(){}, +bDp(a,b){return A.ks(a,b,null)}, +bsP(a,b,c){var s=a.BYTES_PER_ELEMENT +c=A.dZ(b,c,B.f.js(a.byteLength,s),null,null) +return A.dF(a.buffer,a.byteOffset+b*s,(c-b)*s)}, +a0z:function a0z(){}, +lT(a,b,c){if(b==null)if(a==null)return null +else return a.au(0,1-c) +else if(a==null)return b.au(0,c) +else return new A.l(A.pu(a.a,b.a,c),A.pu(a.b,b.b,c))}, +aTn(a,b,c){if(b==null)if(a==null)return null +else return a.au(0,1-c) +else if(a==null)return b.au(0,c) +else return new A.V(A.pu(a.a,b.a,c),A.pu(a.b,b.b,c))}, +oL(a,b){var s=a.a,r=b*2/2,q=a.b +return new A.I(s-r,q-r,s+r,q+r)}, +bjB(a,b,c){var s=a.a,r=c/2,q=a.b,p=b/2 +return new A.I(s-r,q-p,s+r,q+p)}, +ym(a,b){var s=a.a,r=b.a,q=a.b,p=b.b +return new A.I(Math.min(s,r),Math.min(q,p),Math.max(s,r),Math.max(q,p))}, +bry(a,b,c){var s,r,q,p,o +if(b==null)if(a==null)return null +else{s=1-c +return new A.I(a.a*s,a.b*s,a.c*s,a.d*s)}else{r=b.a +q=b.b +p=b.c +o=b.d +if(a==null)return new A.I(r*c,q*c,p*c,o*c) +else return new A.I(A.pu(a.a,r,c),A.pu(a.b,q,c),A.pu(a.c,p,c),A.pu(a.d,o,c))}}, +Mz(a,b,c){var s,r,q +if(b==null)if(a==null)return null +else{s=1-c +return new A.bq(a.a*s,a.b*s)}else{r=b.a +q=b.b +if(a==null)return new A.bq(r*c,q*c) +else return new A.bq(A.pu(a.a,r,c),A.pu(a.b,q,c))}}, +bIZ(a,b,c,d,e,f){return new A.lY(a,b,c,d,e,f,e,f,e,f,e,f,e===f)}, +lh(a,b){var s=b.a,r=b.b +return new A.lY(a.a,a.b,a.c,a.d,s,r,s,r,s,r,s,r,s===r)}, +Mx(a,b,c,d,e,f,g,h){var s=g.a,r=g.b,q=h.a,p=h.b,o=e.a,n=e.b,m=f.a,l=f.b +return new A.lY(a,b,c,d,s,r,q,p,m,l,o,n,s===r&&s===q&&s===p&&s===o&&s===n&&s===m&&s===l)}, +a6J(a,b,c,d,e){var s=d.a,r=d.b,q=e.a,p=e.b,o=b.a,n=b.b,m=c.a,l=c.b,k=s===r&&s===q&&s===p&&s===o&&s===n&&s===m&&s===l +return new A.lY(a.a,a.b,a.c,a.d,s,r,q,p,m,l,o,n,k)}, +bH3(a){switch(a.a){case 1:return"up" +case 0:return"down" +case 2:return"repeat"}}, +ag(a,b,c){var s +if(a!=b){s=a==null?null:isNaN(a) +if(s===!0){s=b==null?null:isNaN(b) +s=s===!0}else s=!1}else s=!0 +if(s)return a==null?null:a +if(a==null)a=0 +if(b==null)b=0 +return a*(1-c)+b*c}, +pu(a,b,c){return a*(1-c)+b*c}, +be2(a,b,c){return a*(1-c)+b*c}, +aq3(a,b,c){if(ac)return c +if(isNaN(a))return c +return a}, +bvG(a,b){return A.K(A.vB(B.e.bi((a.gk(a)>>>24&255)*b),0,255),a.gk(a)>>>16&255,a.gk(a)>>>8&255,a.gk(a)&255)}, +K(a,b,c,d){return new A.M(((a&255)<<24|(b&255)<<16|(c&255)<<8|d&255)>>>0)}, +bDR(a,b,c,d){return new A.M(((B.e.cY(d*255,1)&255)<<24|(a&255)<<16|(b&255)<<8|c&255)>>>0)}, +bhX(a){if(a<=0.03928)return a/12.92 +return Math.pow((a+0.055)/1.055,2.4)}, +W(a,b,c){if(b==null)if(a==null)return null +else return A.bvG(a,1-c) +else if(a==null)return A.bvG(b,c) +else return A.K(A.vB(B.e.an(A.be2(a.gk(a)>>>24&255,b.gk(b)>>>24&255,c)),0,255),A.vB(B.e.an(A.be2(a.gk(a)>>>16&255,b.gk(b)>>>16&255,c)),0,255),A.vB(B.e.an(A.be2(a.gk(a)>>>8&255,b.gk(b)>>>8&255,c)),0,255),A.vB(B.e.an(A.be2(a.gk(a)&255,b.gk(b)&255,c)),0,255))}, +tg(a,b){var s,r,q,p=a.gk(a)>>>24&255 +if(p===0)return b +s=255-p +r=b.gk(b)>>>24&255 +if(r===255)return A.K(255,B.f.cY(p*(a.gk(a)>>>16&255)+s*(b.gk(b)>>>16&255),255),B.f.cY(p*(a.gk(a)>>>8&255)+s*(b.gk(b)>>>8&255),255),B.f.cY(p*(a.gk(a)&255)+s*(b.gk(b)&255),255)) +else{r=B.f.cY(r*s,255) +q=p+r +return A.K(q,B.f.js((a.gk(a)>>>16&255)*p+(b.gk(b)>>>16&255)*r,q),B.f.js((a.gk(a)>>>8&255)*p+(b.gk(b)>>>8&255)*r,q),B.f.js((a.gk(a)&255)*p+(b.gk(b)&255)*r,q))}}, +bIl(){return $.as().bn()}, +biM(a,b,c,d,e,f){return $.as().a8f(0,a,b,c,d,e,null)}, +bGE(a,b){return $.as().a8g(a,b)}, +aqd(a,b){return A.bT8(a,b)}, +bT8(a,b){var s=0,r=A.y(t.hP),q,p=2,o,n=[],m,l,k,j,i,h,g,f +var $async$aqd=A.u(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:s=b==null?3:5 +break +case 3:h=$.as() +g=a.a +g.toString +q=h.Fg(g) +s=1 +break +s=4 +break +case 5:h=$.as() +g=a.a +g.toString +s=6 +return A.t(h.Fg(g),$async$aqd) +case 6:m=d +p=7 +s=10 +return A.t(m.pa(),$async$aqd) +case 10:l=d +try{g=J.bhs(l) +k=g.gf3(g) +g=J.bhs(l) +j=g.gdm(g) +i=b.$2(k,j) +g=a.a +g.toString +f=i.a +f=h.qP(g,!1,i.b,f) +q=f +n=[1] +s=8 +break}finally{J.bhs(l).m()}n.push(9) +s=8 +break +case 7:n=[2] +case 8:p=2 +m.m() +s=n.pop() +break +case 9:case 4:case 1:return A.w(q,r) +case 2:return A.v(o,r)}}) +return A.x($async$aqd,r)}, +bJZ(a){return a>0?a*0.57735+0.5:0}, +bK_(a,b,c){var s,r,q=A.W(a.a,b.a,c) +q.toString +s=A.lT(a.b,b.b,c) +s.toString +r=A.pu(a.c,b.c,c) +return new A.uE(q,s,r)}, +bK0(a,b,c){var s,r,q,p=a==null +if(p&&b==null)return null +if(p)a=A.a([],t.b5) +if(b==null)b=A.a([],t.b5) +s=A.a([],t.b5) +r=Math.min(a.length,b.length) +for(q=0;q=0;q=d,b=p)s=s+q+B.c.U(a,b,p) +s=s+e+B.c.cv(a,c) +return s.charCodeAt(0)==0?s:s}, +bPo(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.blG(a,c,d,r)&&A.blG(a,c,d,r+p))return r +c=r+1}return-1}return A.bP3(a,b,c,d)}, +bP3(a,b,c,d){var s,r,q,p=new A.mF(a,d,c,0) +for(s=b.length;r=p.li(),r>=0;){q=r+s +if(q>d)break +if(B.c.eG(a,b,r)&&A.blG(a,c,d,q))return r}return-1}, +fe:function fe(a){this.a=a}, +Es:function Es(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.d=null}, +bfN(a,b,c,d){if(d===208)return A.bwY(a,b,c) +if(d===224){if(A.bwX(a,b,c)>=0)return 145 +return 64}throw A.c(A.R("Unexpected state: "+B.f.o0(d,16)))}, +bwY(a,b,c){var s,r,q,p,o +for(s=c,r=0;q=s-2,q>=b;s=q){p=a.charCodeAt(s-1) +if((p&64512)!==56320)break +o=a.charCodeAt(q) +if((o&64512)!==55296)break +if(A.px(o,p)!==6)break +r^=1}if(r===0)return 193 +else return 144}, +bwX(a,b,c){var s,r,q,p,o +for(s=c;s>b;){--s +r=a.charCodeAt(s) +if((r&64512)!==56320)q=A.A1(r) +else{if(s>b){--s +p=a.charCodeAt(s) +o=(p&64512)===55296}else{p=0 +o=!1}if(o)q=A.px(p,r) +else break}if(q===7)return s +if(q!==4)break}return-1}, +blG(a,b,c,d){var s,r,q,p,o,n,m,l,k,j=u.q +if(b=c)return!0 +n=a.charCodeAt(o) +if((n&64512)!==56320)return!0 +p=A.px(s,n)}else return(q&64512)!==55296 +if((q&64512)!==56320){m=A.A1(q) +d=r}else{d-=2 +if(b<=d){l=a.charCodeAt(d) +if((l&64512)!==55296)return!0 +m=A.px(l,q)}else return!0}k=j.charCodeAt(j.charCodeAt(p|176)&240|m) +return((k>=208?A.bfN(a,b,d,k):k)&1)===0}return b!==c}, +bUq(a,b,c,d){var s,r,q,p,o,n +if(d===b||d===c)return d +s=a.charCodeAt(d) +if((s&63488)!==55296){r=A.A1(s) +q=d}else if((s&64512)===55296){p=d+1 +if(pb){o=s-1 +n=a.charCodeAt(o) +if((n&64512)===55296){q=A.px(n,r) +s=o}else q=2}else q=2 +if(q===6)m=A.bwY(a,b,s)!==144?160:48 +else{l=q===1 +if(l||q===4)if(A.bwX(a,b,s)>=0)m=l?144:128 +else m=48 +else m=u.S.charCodeAt(q|176)}return new A.mF(a,a.length,d,m).li()}, +mF:function mF(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +Ar:function Ar(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +awf:function awf(){}, +cN:function cN(){}, +auv:function auv(a){this.a=a}, +auw:function auw(a){this.a=a}, +aux:function aux(a,b){this.a=a +this.b=b}, +auy:function auy(a){this.a=a}, +auz:function auz(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +auA:function auA(a,b,c){this.a=a +this.b=b +this.c=c}, +auB:function auB(a){this.a=a}, +a_T:function a_T(a){this.$ti=a}, +xh:function xh(a,b){this.a=a +this.$ti=b}, +xw:function xw(a,b){this.a=a +this.$ti=b}, +H3:function H3(){}, +E6:function E6(a,b){this.a=a +this.$ti=b}, +Gc:function Gc(a,b,c){this.a=a +this.b=b +this.c=c}, +xG:function xG(a,b,c){this.a=a +this.b=b +this.$ti=c}, +a_R:function a_R(){}, +a1D:function a1D(a,b,c){var _=this +_.a=a +_.b=b +_.d=_.c=0 +_.$ti=c}, +bPk(a){var s,r,q,p,o="0123456789abcdef",n=a.length,m=new Uint8Array(n*2) +for(s=0,r=0;s>>4&15) +r=p+1 +m[p]=o.charCodeAt(q&15)}return A.ja(m,0,null)}, +ww:function ww(a){this.a=a}, +axr:function axr(){this.a=null}, +a1C:function a1C(){}, +aEc:function aEc(){}, +alq:function alq(){}, +baw:function baw(a,b,c,d,e){var _=this +_.w=a +_.x=b +_.a=c +_.c=d +_.d=0 +_.e=e +_.f=!1}, +yv:function yv(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.f=e +_.r=f}, +atM:function atM(a){this.a=a}, +atO:function atO(a){this.a=a}, +atP:function atP(a,b,c){this.a=a +this.b=b +this.c=c}, +atN:function atN(){}, +atQ:function atQ(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +atR:function atR(a){this.a=a}, +atS:function atS(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +atT:function atT(a,b,c){this.a=a +this.b=b +this.c=c}, +atU:function atU(a,b,c){this.a=a +this.b=b +this.c=c}, +atV:function atV(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +atW:function atW(a){this.a=a}, +atX:function atX(a){this.a=a}, +atY:function atY(a,b){this.a=a +this.b=b}, +hP:function hP(a){this.a=a +this.c=this.b=null}, +axz:function axz(a,b,c,d,e){var _=this +_.L9$=a +_.aHK$=b +_.a9h$=c +_.a9i$=d +_.aPN$=e}, +afe:function afe(){}, +bMk(a){switch(a.a){case 0:return"connection timeout" +case 1:return"send timeout" +case 2:return"receive timeout" +case 3:return"bad certificate" +case 4:return"bad response" +case 5:return"request cancelled" +case 6:return"connection error" +case 7:return"unknown"}}, +Bg(a,b,c,d,e,f){var s +if(e===B.pK){s=c.ay +if(s==null)s=A.jU()}else{s=e==null?c.ay:e +if(s==null)s=A.jU()}return new A.hv(c,d,f,a,s,b)}, +boI(a,b){return A.Bg(null,"The request took longer than "+b.j(0)+" to receive data. It was aborted.",a,null,null,B.Rf)}, +bEL(a,b){return A.Bg(null,"The connection errored: "+a,b,null,null,B.Rh)}, +to:function to(a,b){this.a=a +this.b=b}, +hv:function hv(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +bif(a,b,c){var s=A.a([],c.h("G>")) +if(a!=null)s.push(a.a.a.b9(new A.axQ(),c)) +s.push(b) +return A.bGm(s,c)}, +a08(a,b){b=A.bIg() +b.a=a +return b}, +bie(a,b){if(a instanceof A.hv)return a +return A.Bg(a,null,b,null,null,B.Ri)}, +boJ(a,b,c){var s,r,q=null +if(!(a instanceof A.fB))return A.a7G(c.a(a),q,q,!1,B.xS,b,q,q,c) +else if(!c.h("fB<0>").b(a)){s=c.h("0?").a(a.a) +r=s instanceof A.yv?A.bpV(s.f):a.e +return A.a7G(s,a.w,r,a.f,a.r,a.b,a.c,a.d,c)}return a}, +axA:function axA(){}, +axK:function axK(a){this.a=a}, +axM:function axM(a,b){this.a=a +this.b=b}, +axL:function axL(a,b){this.a=a +this.b=b}, +axN:function axN(a){this.a=a}, +axP:function axP(a,b){this.a=a +this.b=b}, +axO:function axO(a,b){this.a=a +this.b=b}, +axH:function axH(a){this.a=a}, +axI:function axI(a,b){this.a=a +this.b=b}, +axJ:function axJ(a,b){this.a=a +this.b=b}, +axD:function axD(a){this.a=a}, +axE:function axE(a,b,c){this.a=a +this.b=b +this.c=c}, +axB:function axB(a){this.a=a}, +axC:function axC(a){this.a=a}, +axF:function axF(a,b){this.a=a +this.b=b}, +axG:function axG(a,b){this.a=a +this.b=b}, +axQ:function axQ(){}, +Cc:function Cc(a,b){this.a=a +this.b=b}, +fn:function fn(a,b,c){this.a=a +this.b=b +this.$ti=c}, +b0D:function b0D(){}, +yu:function yu(a){this.a=a}, +yw:function yw(a){this.a=a}, +wE:function wE(a){this.a=a}, +km:function km(){}, +ah2:function ah2(){}, +a29:function a29(a,b,c,d){var _=this +_.a=a +_.aPO$=b +_.aPP$=c +_.aPQ$=d}, +a28:function a28(a){this.a=a}, +ah3:function ah3(){}, +BN(a){var s=new A.K3(A.bF("\\r\\n|\\r|\\n",!0,!1,!1),A.a([],t.Iq),A.a([],t.cS)) +s.alv(a,B.js,!1) +return s}, +K3:function K3(a,b,c){var _=this +_.a=$ +_.b=a +_.c=b +_.d=c +_.e=!1}, +aCs:function aCs(a){this.a=a}, +aCt:function aCt(a){this.a=a}, +aCx:function aCx(a){this.a=a}, +aCz:function aCz(a){this.a=a}, +aCy:function aCy(a){this.a=a}, +aCv:function aCv(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aCu:function aCu(a){this.a=a}, +aCw:function aCw(a,b,c){this.a=a +this.b=b +this.c=c}, +bpV(a){var s=t.yp +return new A.Kf(A.VS(a.tu(a,new A.aEh(),t.N,s),s))}, +Kf:function Kf(a){this.a=a}, +aEh:function aEh(){}, +aEi:function aEi(){}, +aEj:function aEj(a){this.a=a}, +Ko:function Ko(){}, +bI0(a,b){var s=A.VS(null,t.yp),r=A.bje("application","octet-stream",null) +return new A.ua(a.length,b,s,r,new A.aK2(a))}, +ua:function ua(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=!1}, +aK2:function aK2(a){this.a=a}, +bIg(){return new A.aKT()}, +brJ(a,b,c,d,e,f,g,h,i,j,k,l,m,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,b0){var s=k==null?"GET":k,r=i==null?B.js:i,q=f==null?A.F(t.N,t.z):f,p=j==null?5:j,o=b0==null?A.bx6():b0,n=a7==null?B.fC:a7 +r=new A.ll(e,a0,b,l,m,$,$,null,s,a8,a4,n,o,a3!==!1,q,g!==!1,p,a1!==!1,a5,a6,r) +r.Zz(d,f,g,h,i,j,k,a1,a3,a4,a5,a6,a7,a8,b0) +r.ay=a9==null?A.jU():a9 +r.ER$=a2==null?A.F(t.N,t.z):a2 +r.uU$=a==null?"":a +r.sTG(c) +return r}, +bOD(a){return a>=200&&a<300}, +DJ:function DJ(a,b){this.a=a +this.b=b}, +a2K:function a2K(a,b){this.a=a +this.b=b}, +a5H:function a5H(){}, +asT:function asT(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){var _=this +_.uU$=a +_.ER$=b +_.ES$=c +_.a=d +_.b=$ +_.c=e +_.d=f +_.e=null +_.f=g +_.r=h +_.w=i +_.x=j +_.y=k +_.z=l +_.Q=m +_.as=n +_.at=o +_.ax=p}, +aKT:function aKT(){this.a=null}, +ll:function ll(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1){var _=this +_.ay=null +_.ch=a +_.CW=b +_.cx=c +_.cy=d +_.db=e +_.uU$=f +_.ER$=g +_.ES$=h +_.a=i +_.b=$ +_.c=j +_.d=k +_.e=null +_.f=l +_.r=m +_.w=n +_.x=o +_.y=p +_.z=q +_.Q=r +_.as=s +_.at=a0 +_.ax=a1}, +b9w:function b9w(){}, +adw:function adw(){}, +akJ:function akJ(){}, +bQA(a,b,c){if(t.NP.b(a))return a +return A.bQm(a,b,c,t.Cm).qx(a)}, +bQm(a,b,c,d){return A.bu9(new A.bei(c,d),d,t.E)}, +bei:function bei(a,b){this.a=a +this.b=b}, +a7G(a,b,c,d,e,f,g,h,i){var s=c==null?new A.Kf(A.VS(null,t.yp)):c,r=b==null?A.F(t.N,t.z):b +return new A.fB(a,f,g,h,s,d,e,r,i.h("fB<0>"))}, +fB:function fB(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}, +bLd(a,b){return A.bly(a,new A.aYP(),!0,!1,b)}, +bLe(a,b){return A.bly(a,new A.aYQ(),!0,!0,b)}, +bsL(a){var s,r,q +if(a==null)return!1 +s=A.bqK(a) +r=s.b +q=s.a+"/"+r +return q==="application/json"||q==="text/json"||B.c.hM(r,"+json")}, +aYO:function aYO(){}, +aYP:function aYP(){}, +aYQ:function aYQ(){}, +bOx(a){if(a.length<51200)return B.at.uK(0,a,null) +return A.bRe().$2$2(A.bRi(),a,t.N,t.z)}, +asE:function asE(a){this.a=a}, +aWM:function aWM(){}, +aWN:function aWN(a,b,c){this.a=a +this.b=b +this.c=c}, +aWO:function aWO(a,b){this.a=a +this.b=b}, +aWQ:function aWQ(a){this.a=a}, +aWP:function aWP(a){this.a=a}, +aWR:function aWR(a){this.a=a}, +bWf(a,b){var s=new A.a8($.a9,t.LR) +a.h2(b.gjx(b),new A.bgJ(new A.aD(s,t.zh)),b.gww()) +return s}, +bly(a,b,c,d,e){var s,r,q,p,o={},n=new A.cV("") +o.a=!0 +s=!d +r=!s||!c?"[":"%5B" +q=!s||!c?"]":"%5D" +p=c?A.bRl():new A.beX() +new A.beZ(o,e,d,new A.beY(d,p),r,q,p,b,n).$2(a,"") +o=n.a +return o.charCodeAt(0)==0?o:o}, +bPg(a,b){switch(a.a){case 0:return"," +case 1:return b?"%20":" " +case 2:return"\\t" +case 3:return"|" +default:return""}}, +VS(a,b){var s=A.l9(new A.beD(),new A.beE(),t.N,b) +if(a!=null&&a.a!==0)s.I(0,a) +return s}, +bgJ:function bgJ(a){this.a=a}, +beX:function beX(){}, +beY:function beY(a,b){this.a=a +this.b=b}, +beZ:function beZ(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}, +bf_:function bf_(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +beD:function beD(){}, +beE:function beE(){}, +Je:function Je(a,b){this.a=a +this.b=b}, +bhP(a){var s,r,q,p,o,n,m,l,k,j=new A.au9() +if(a==null)a=A.a([],t.s) +s=t.N +r=A.F(s,s) +q=A.a([],t.s) +for(s=J.ao(a);s.u();){p=s.gH(s) +if(p.length!==0){o=A.bsi(p) +j.$3(o,r,q) +p=o.b +while(!0){n=o.d=B.c.qX(",",p,o.c) +o.e=o.c +m=n!=null +if(m)o.e=o.c=n.gcf(n) +if(!m)break +j.$3(o,r,q)}o.a9c()}}s=r.i(0,"max-age") +s=A.lW(s==null?"":s,null) +if(s==null)s=-1 +p=r.i(0,"max-stale") +p=A.lW(p==null?"":p,null) +if(p==null)p=-1 +n=r.i(0,"min-fresh") +n=A.lW(n==null?"":n,null) +if(n==null)n=-1 +l=r.ao(0,"must-revalidate") +k=r.i(0,"public") +if(k==null)k=r.i(0,"private") +return new A.t5(s,k,r.ao(0,"no-cache"),r.ao(0,"no-store"),p,n,l,q)}, +t5:function t5(a,b,c,d,e,f,g,h){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=h}, +au9:function au9(){}, +auf(a){var s +$.byg() +s=a.ghm().j(0) +return new A.aZK(null).ae8("6ba7b811-9dad-11d1-80b4-00c04fd430c8",s,null)}, +AD:function AD(a,b){this.a=a +this.b=b}, +aue:function aue(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.d=c +_.e=d +_.f=e}, +w5:function w5(a,b){this.a=a +this.b=b}, +bhQ(a,a0,a1){var s=0,r=A.y(t.JS),q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b +var $async$bhQ=A.u(function(a3,a4){if(a3===1)return A.v(a4,r) +while(true)switch(s){case 0:e=a1.e.a +d=e.i(0,B.c.dI("date").toLowerCase()) +c=d==null?null:J.Ac(d,",") +b=null +if(c!=null)try{b=A.biO(c)}catch(a2){}d=e.i(0,B.c.dI("expires").toLowerCase()) +p=d==null?null:J.Ac(d,",") +o=null +if(p!=null)try{o=A.biO(p)}catch(a2){m=new A.dl(0,!0) +m.Hv(0,!0) +o=m}d=A.bhP(e.i(0,B.c.dI("cache-control").toLowerCase())) +l=b +k=e.i(0,B.c.dI("etag").toLowerCase()) +k=k==null?null:J.Ac(k,",") +j=o +i=B.at.wX(e,null) +i=B.O.gfY().cN(i) +e=e.i(0,B.c.dI("last-modified").toLowerCase()) +e=e==null?null:J.Ac(e,",") +h=new A.dl(Date.now(),!1).N6().G(0,a0.d) +g=a1.b +f=g.x +f===$&&A.b() +q=new A.pH(d,null,l,k,j,i,a,e,h,a0.e,f.i(0,"@requestSentDate@"),new A.dl(Date.now(),!1).N6(),g.ghm().j(0)) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$bhQ,r)}, +pH:function pH(a,b,c,d,e,f,g,h,i,j,k,l,m){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}, +aug:function aug(a){this.a=a}, +w6:function w6(a,b){this.a=a +this.b=b}, +XR:function XR(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aui:function aui(){}, +biO(a){var s,r,q,p,o,n,m,l,k,j,i,h=" ",g={} +g.a=0 +g.b=null +s=new A.aF9(g,a) +r=new A.aFb(g,a) +q=new A.aFc(g,a) +p=new A.aFd(g,a,2,0,1).$0() +if(p===2){o=r.$1(h) +s=g.a +if(a.charCodeAt(s)===32)g.a=s+1 +n=q.$1(h) +m=q.$1(":") +l=q.$1(":") +k=q.$1(h) +j=q.$1("")}else{s.$1(h) +i=p===0 +n=q.$1(i?h:"-") +o=r.$1(i?h:"-") +j=q.$1(h) +m=q.$1(":") +l=q.$1(":") +k=q.$1(h) +s.$1("GMT")}new A.aFa(g,a).$0() +g=A.aMc(j,o+1,n,m,l,k,0,!0) +if(!A.iK(g))A.q(A.pv(g)) +return new A.dl(g,!0)}, +aF9:function aF9(a,b){this.a=a +this.b=b}, +aFd:function aFd(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +aFb:function aFb(a,b){this.a=a +this.b=b}, +aFc:function aFc(a,b){this.a=a +this.b=b}, +aFa:function aFa(a,b){this.a=a +this.b=b}, +qd:function qd(){this.c=null}, +Q0:function Q0(){}, +PZ:function PZ(){}, +Q_:function Q_(){}, +awg:function awg(){}, +b8J:function b8J(){}, +Lo:function Lo(a,b){this.a=a +this.b=b}, +aIP:function aIP(a){this.a=a}, +aIQ:function aIQ(a){this.a=a}, +aIR:function aIR(a){this.a=a}, +aIS:function aIS(a,b){this.a=a +this.b=b}, +ai8:function ai8(){}, +bMo(a,b,c){var s,r,q,p,o={},n=A.b4("node") +o.a=null +try{n.b=a.gazw()}catch(r){q=A.ai(r) +if(t.VI.b(q)){s=q +o.a=s}else throw r}p=A.tD(new A.b3o(o,a,n,b),t.jL) +return new A.afZ(new A.aD(new A.a8($.a9,t.b),t.gR),p,c)}, +Lp:function Lp(a,b){this.a=a +this.b=b}, +aJ_:function aJ_(a){this.a=a}, +aJ0:function aJ0(a){this.a=a}, +aIZ:function aIZ(a){this.a=a}, +afZ:function afZ(a,b,c){var _=this +_.a=a +_.b=b +_.c=null +_.d=!1 +_.e=c}, +b3o:function b3o(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +b3q:function b3q(a){this.a=a}, +b3s:function b3s(a){this.a=a}, +b3r:function b3r(a){this.a=a}, +b3t:function b3t(a){this.a=a}, +b3u:function b3u(a){this.a=a}, +b3p:function b3p(a){this.a=a}, +aIT:function aIT(a,b){this.d=a +this.f=b}, +bOB(a,b){}, +b6z:function b6z(a,b,c,d){var _=this +_.b=_.a=null +_.c=a +_.d=b +_.e=c +_.f=d}, +b6B:function b6B(a,b,c){this.a=a +this.b=b +this.c=c}, +b6A:function b6A(a,b,c){this.a=a +this.b=b +this.c=c}, +Lq:function Lq(){}, +aIU:function aIU(a){this.a=a}, +aIX:function aIX(a){this.a=a}, +aIY:function aIY(a){this.a=a}, +aIV:function aIV(a){this.a=a}, +aIW:function aIW(a){this.a=a}, +boL(a){var s,r=new A.hw(A.F(t.N,t._A),a) +if(a==null){r.gVz() +s=!0}else s=!1 +if(s)A.q(B.t3) +r.OF(a) +return r}, +hB:function hB(){}, +Dz:function Dz(){}, +hw:function hw(a,b){var _=this +_.r=a +_.d=_.c=_.b=$ +_.a=b}, +a7L:function a7L(a,b,c){var _=this +_.as=a +_.r=b +_.d=_.c=_.b=$ +_.a=c}, +l0:function l0(a,b){var _=this +_.r=a +_.d=_.c=_.b=$ +_.a=b}, +q3:function q3(a){this.a=a}, +aBy:function aBy(){}, +b85:function b85(){}, +bR2(a,b){var s=a.giH(a) +if(s!==B.ea)throw A.c(A.bfX(A.bs(b.$0())))}, +blo(a,b,c){if(a!==b)switch(a){case B.ea:throw A.c(A.bfX(A.bs(c.$0()))) +case B.f2:throw A.c(A.bwM(A.bs(c.$0()))) +case B.ja:throw A.c(A.bTb(A.bs(c.$0()))) +default:throw A.c(A.mz(null))}}, +bTh(a){return a.length===0}, +bgg(a,b,c,d){var s=A.aY(t.C5),r=a +while(!0){r.giH(r) +if(!!1)break +if(!s.G(0,r))throw A.c(A.bvc(A.bs(b.$0()),"Too many levels of symbolic links",A.bFH())) +r=r.aPz(new A.bgh(d))}return r}, +bgh:function bgh(a){this.a=a}, +blM(a){var s="No such file or directory" +return new A.iV(s,a,new A.qr(s,A.bFI()))}, +bfX(a){var s="Not a directory" +return new A.iV(s,a,new A.qr(s,A.bFJ()))}, +bwM(a){var s="Is a directory" +return new A.iV(s,a,new A.qr(s,A.bFG()))}, +bTb(a){var s="Invalid argument" +return new A.iV(s,a,new A.qr(s,A.bFF()))}, +bvc(a,b,c){return new A.iV(b,a,new A.qr(b,c))}, +ay9:function ay9(){}, +bFF(){return A.JF(new A.aAE())}, +bFG(){return A.JF(new A.aAF())}, +bFH(){return A.JF(new A.aAG())}, +bFI(){return A.JF(new A.aAH())}, +bFJ(){return A.JF(new A.aAI())}, +bFK(){return A.JF(new A.aAJ())}, +JF(a){return a.$1(B.OH)}, +aAE:function aAE(){}, +aAF:function aAF(){}, +aAG:function aAG(){}, +aAH:function aAH(){}, +aAI:function aAI(){}, +aAJ:function aAJ(){}, +ahB:function ahB(){}, +aBx:function aBx(){}, +bFS(a,b){switch(a.a){case 0:return"" +case 4:return"audio/*" +case 2:return"image/*" +case 3:return"video/*" +case 1:return"video/*|image/*" +case 5:return B.b.oM(b,"",new A.aBp())}}, +aBo:function aBo(){this.a=$}, +aBs:function aBs(a,b,c,d,e,f,g,h){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=h}, +aBt:function aBt(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aBu:function aBu(a,b,c){this.a=a +this.b=b +this.c=c}, +aBv:function aBv(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aBq:function aBq(a,b){this.a=a +this.b=b}, +aBr:function aBr(a,b){this.a=a +this.b=b}, +aBp:function aBp(){}, +bFT(){var s,r +if($.byV()||$.byW()){s=$.Wb() +r=new A.aBh() +$.A4().p(0,r,s) +return r}else if($.bmg()){s=$.Wb() +r=new A.aBi() +$.A4().p(0,r,s) +return r}else if($.bgT())return A.bSl() +else if($.bmh()){s=$.Wb() +r=new A.aBj() +$.A4().p(0,r,s) +return r}else throw A.c(A.cL('The current platform "'+A.h($.A5())+'" is not supported by this plugin.'))}, +a0V:function a0V(a,b){this.a=a +this.b=b}, +aBg:function aBg(){}, +aBh:function aBh(){}, +aBj:function aBj(){}, +aBl:function aBl(){}, +aBm:function aBm(){}, +aBn:function aBn(){}, +aBk:function aBk(){}, +tx:function tx(a){this.a=a}, +aBi:function aBi(){}, +aGj:function aGj(){}, +aGk:function aGk(){}, +aGl:function aGl(){}, +aMK:function aMK(){}, +aML:function aML(){}, +lf:function lf(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +bwt(a,b,c){var s=A.ab(a),r=s.h("en<1,U>") +return A.q8(A.aa(new A.en(new A.be(a,new A.bfh(),s.h("be<1>")),new A.bfi(!1,!1),r),!0,r.h("z.E")),t.hD)}, +beN(a,b,c){var s=0,r=A.y(t.hD),q,p,o +var $async$beN=A.u(function(d,e){if(d===1)return A.v(e,r) +while(true)switch(s){case 0:p=a.a +o=A.oF(p,$.Hm().a).gTh() +q=new A.lf(p,o,b,c,a.L2()?a.aKQ():0,null) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$beN,r)}, +W3(a,b){var s=0,r=A.y(t.v) +var $async$W3=A.u(function(c,d){if(c===1)return A.v(d,r) +while(true)switch(s){case 0:s=2 +return A.t(A.bIU(a,b),$async$W3) +case 2:return A.w(null,r)}}) +return A.x($async$W3,r)}, +Hh(a){var s=0,r=A.y(t.N),q,p +var $async$Hh=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:s=3 +return A.t(A.W3("which",A.a([a],t.s)),$async$Hh) +case 3:p=c +if(p==null)throw A.c(A.cR("Couldn't find the executable "+a+" in the path.")) +q=p +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$Hh,r)}, +bfh:function bfh(){}, +bfi:function bfi(a,b){this.a=a +this.b=b}, +nV:function nV(a,b){this.a=a +this.b=b}, +bQ:function bQ(){}, +bw(a,b,c,d,e,f,g,h){var s=new A.my(d,f,b,a,c,e,B.aI,B.Q,new A.bb(A.a([],t.x8),t.jc),new A.bb(A.a([],t.qj),t.fy)) +s.r=h.zQ(s.gOX()) +s.Is(g==null?d:g) +return s}, +bhH(a,b,c){var s=new A.my(-1/0,1/0,a,B.Lv,null,null,B.aI,B.Q,new A.bb(A.a([],t.x8),t.jc),new A.bb(A.a([],t.qj),t.fy)) +s.r=c.zQ(s.gOX()) +s.Is(b) +return s}, +Fo:function Fo(a,b){this.a=a +this.b=b}, +WH:function WH(a,b){this.a=a +this.b=b}, +my:function my(a,b,c,d,e,f,g,h,i,j){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.w=_.r=null +_.x=$ +_.y=null +_.z=g +_.Q=$ +_.as=h +_.eo$=i +_.dB$=j}, +b5G:function b5G(a,b,c,d,e){var _=this +_.b=a +_.c=b +_.d=c +_.e=d +_.a=e}, +b9v:function b9v(a,b,c,d,e,f,g){var _=this +_.b=a +_.c=b +_.d=c +_.e=d +_.f=e +_.r=f +_.a=g}, +ade:function ade(){}, +adf:function adf(){}, +adg:function adg(){}, +lX(a){var s=new A.Mt(new A.bb(A.a([],t.x8),t.jc),new A.bb(A.a([],t.qj),t.fy),0) +s.c=a +if(a==null){s.a=B.Q +s.b=0}return s}, +c_(a,b,c){var s=new A.wm(b,a,c) +s.JD(b.gaL(b)) +b.f4(s.gJC()) +return s}, +bk2(a,b,c){var s,r,q=new A.zf(a,b,c,new A.bb(A.a([],t.x8),t.jc),new A.bb(A.a([],t.qj),t.fy)) +if(J.i(a.gk(a),b.gk(b))){q.a=b +q.b=null +s=b}else{if(a.gk(a)>b.gk(b))q.c=B.aoW +else q.c=B.aoV +s=a}s.f4(q.gz9()) +s=q.gSJ() +q.a.P(0,s) +r=q.b +if(r!=null)r.P(0,s) +return q}, +bnV(a,b,c){return new A.HI(a,b,new A.bb(A.a([],t.x8),t.jc),new A.bb(A.a([],t.qj),t.fy),0,c.h("HI<0>"))}, +ad3:function ad3(){}, +ad4:function ad4(){}, +Hv:function Hv(a){this.$ti=a}, +rW:function rW(){}, +Mt:function Mt(a,b,c){var _=this +_.c=_.b=_.a=null +_.eo$=a +_.dB$=b +_.uX$=c}, +jL:function jL(a,b,c){this.a=a +this.eo$=b +this.uX$=c}, +wm:function wm(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.d=null}, +anh:function anh(a,b){this.a=a +this.b=b}, +zf:function zf(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=null +_.d=c +_.f=_.e=null +_.eo$=d +_.dB$=e}, +B_:function B_(){}, +HI:function HI(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.d=_.c=null +_.eo$=c +_.dB$=d +_.uX$=e +_.$ti=f}, +Qa:function Qa(){}, +Qb:function Qb(){}, +Qc:function Qc(){}, +aeU:function aeU(){}, +ajF:function ajF(){}, +ajG:function ajG(){}, +ajH:function ajH(){}, +akO:function akO(){}, +akP:function akP(){}, +ane:function ane(){}, +anf:function anf(){}, +ang:function ang(){}, +M5:function M5(){}, +ju:function ju(){}, +RG:function RG(){}, +Na:function Na(a){this.a=a}, +dO:function dO(a,b,c){this.a=a +this.b=b +this.c=c}, +ON:function ON(a){this.a=a}, +f3:function f3(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +OM:function OM(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +jz:function jz(a){this.a=a}, +af_:function af_(){}, +HH:function HH(){}, +HG:function HG(){}, +vR:function vR(){}, +rV:function rV(){}, +hh(a,b,c){return new A.aO(a,b,c.h("aO<0>"))}, +bDT(a,b){return new A.dk(a,b)}, +iT(a){return new A.eE(a)}, +aA:function aA(){}, +aw:function aw(a,b,c){this.a=a +this.b=b +this.$ti=c}, +dq:function dq(a,b,c){this.a=a +this.b=b +this.$ti=c}, +aO:function aO(a,b,c){this.a=a +this.b=b +this.$ti=c}, +N7:function N7(a,b,c,d){var _=this +_.c=a +_.a=b +_.b=c +_.$ti=d}, +dk:function dk(a,b){this.a=a +this.b=b}, +a8F:function a8F(a,b){this.a=a +this.b=b}, +ur:function ur(a,b){this.a=a +this.b=b}, +tR:function tR(a,b){this.a=a +this.b=b}, +pO:function pO(a,b,c){this.a=a +this.b=b +this.$ti=c}, +eE:function eE(a){this.a=a}, +UU:function UU(){}, +aYV(a,b){var s=new A.P_(A.a([],b.h("G>")),A.a([],t.mz),b.h("P_<0>")) +s.alO(a,b) +return s}, +bsM(a,b,c){return new A.hi(a,b,c.h("hi<0>"))}, +P_:function P_(a,b,c){this.a=a +this.b=b +this.$ti=c}, +hi:function hi(a,b,c){this.a=a +this.b=b +this.$ti=c}, +ah4:function ah4(a,b){this.a=a +this.b=b}, +bE0(a,b){return new A.IL(a,b)}, +IL:function IL(a,b){this.c=a +this.a=b}, +aeF:function aeF(a,b,c){var _=this +_.d=$ +_.f9$=a +_.c4$=b +_.a=null +_.b=c +_.c=null}, +aeE:function aeE(a,b,c,d,e,f){var _=this +_.b=a +_.c=b +_.d=c +_.e=d +_.f=e +_.a=f}, +V1:function V1(){}, +YM(a,b,c,d,e,f,g,h,i){return new A.IM(c,h,d,e,g,f,i,b,a,null)}, +IM:function IM(a,b,c,d,e,f,g,h,i,j){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.x=g +_.y=h +_.z=i +_.a=j}, +Qh:function Qh(a,b,c,d){var _=this +_.d=a +_.f=_.e=$ +_.r=!1 +_.f9$=b +_.c4$=c +_.a=null +_.b=d +_.c=null}, +b26:function b26(a,b){this.a=a +this.b=b}, +V2:function V2(){}, +IN:function IN(a,b,c,d,e,f,g,h,i,j,k){var _=this +_.c=a +_.d=b +_.e=c +_.r=d +_.w=e +_.x=f +_.y=g +_.z=h +_.Q=i +_.as=j +_.a=k}, +Qi:function Qi(a,b,c,d,e,f,g){var _=this +_.d=a +_.e=null +_.f=!1 +_.x6$=b +_.UN$=c +_.Ld$=d +_.dL$=e +_.b_$=f +_.a=null +_.b=g +_.c=null}, +ae0:function ae0(a){var _=this +_.f=_.e=_.d=_.c=_.b=_.a=_.ch=_.ay=_.ax=_.at=_.as=null +_.ak$=0 +_.ah$=a +_.aT$=_.bG$=0 +_.bK$=!1}, +V3:function V3(){}, +aoh:function aoh(){}, +wk(a,b){if(a==null)return null +return a instanceof A.ek?a.eN(b):a}, +ek:function ek(a,b,c,d,e,f,g,h,i,j,k,l){var _=this +_.b=a +_.c=b +_.d=c +_.e=d +_.f=e +_.r=f +_.w=g +_.x=h +_.y=i +_.z=j +_.Q=k +_.a=l}, +awU:function awU(a){this.a=a}, +aeI:function aeI(){}, +aeH:function aeH(){}, +awT:function awT(){}, +aoi:function aoi(){}, +YN:function YN(a,b,c){this.c=a +this.d=b +this.a=c}, +bE2(a,b){return new A.wj(a,b,null)}, +wj:function wj(a,b,c){this.c=a +this.f=b +this.a=c}, +Qj:function Qj(a){var _=this +_.d=!1 +_.a=null +_.b=a +_.c=null}, +b27:function b27(a){this.a=a}, +b28:function b28(a){this.a=a}, +bow(a,b,c,d,e,f,g,h){return new A.YP(g,b,h,c,e,a,d,f)}, +YP:function YP(a,b,c,d,e,f,g,h){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=h}, +aeJ:function aeJ(){}, +aeK:function aeK(){}, +a_S:function a_S(){}, +J_:function J_(a,b,c){this.d=a +this.w=b +this.a=c}, +Qn:function Qn(a,b,c,d){var _=this +_.d=a +_.e=0 +_.r=_.f=$ +_.f9$=b +_.c4$=c +_.a=null +_.b=d +_.c=null}, +b2k:function b2k(a){this.a=a}, +b2j:function b2j(){}, +b2i:function b2i(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +a_x:function a_x(a,b,c){this.r=a +this.w=b +this.a=c}, +V6:function V6(){}, +btK(a,b,c,d){return new A.ag8(b,d,c,a,c,null)}, +bvX(a,b,c,d,e){var s,r,q,p,o,n=null +if(e){s=a.a7I() +r=s<0.179?B.am:B.aB +switch(r.a){case 0:q=B.Ks +break +case 1:q=B.Kt +break +default:q=n}p=A.bnW(d,new A.oX(n,n,n,n,q.e,q.f,q.r,q.w),t.lu)}else p=d +o=A.tl(p,new A.dJ(a,n,b,n,n,n,B.aE),B.da) +if((a.gk(a)>>>24&255)===255)return o +return A.tb(A.asA(o,$.as().Ep(10,10,B.cK)),B.E)}, +bMT(a,b,c,d,e){var s,r,q=null +if(d instanceof A.jJ){if(!d.gAH()){s=d.hP$ +s=s!=null&&s.length!==0}else s=!0 +s=s&&d.gpI()}else s=!1 +r=s?A.YM(B.X,B.bh,B.ajv,q,B.j_,44,new A.b73(d),B.a4,0.4):q +if(r==null)return q +return new A.ir(new A.b8(new A.eH(16,0,0,0),A.mP(r,B.Uj),q),b)}, +bMQ(a,b,c,d){var s +if(c!=null){if(!c.gAH()){s=c.hP$ +s=s!=null&&s.length!==0}else s=!0 +if(s)s=c instanceof A.jJ&&c.gpI() +else s=!0}else s=!0 +if(s)return null +return new A.ir(B.ant,b)}, +bMR(a,b,c,d,e){var s +if(d!=null){if(!d.gAH()){s=d.hP$ +s=s!=null&&s.length!==0}else s=!0 +if(s)s=d instanceof A.jJ&&d.gpI() +else s=!0}else s=!0 +if(s)return null +return new A.ir(new A.PL(c,d,null),b)}, +bMU(a,b,c,d,e,f){var s=f +return new A.ir(s,c)}, +bMV(a,b,c){return null}, +bMS(a,b,c,d,e){return null}, +btS(a,b,c){var s,r=b.gBp() +r=r.gq(r) +s=c.gBp() +return new A.aiu(a,c,b,new A.aO(r.b,s.gq(s).b,t.Y),new A.dk(b.d,c.d),new A.XE(b.w,c.w),null)}, +bPH(a,b){var s=a.c,r=a.a,q=a.d,p=a.b,o=b.c,n=b.a,m=b.d,l=b.b +o=Math.max(s-r,o-n) +m=Math.max(q-p,m-l) +return new A.ur(new A.I(r,p,r+o,p+m),new A.I(n,l,n+o,l+m))}, +bPV(a,b,c){return new A.F9(c,!1,!0,!0,!0,!1,!1,null)}, +bPU(a,b,c,d,e){var s,r,q=t.rA,p=q.a(d.gc7()),o=q.a(e.gc7()) +q=t.yW +s=q.a(p.e) +r=q.a(o.e) +switch(c.a){case 0:return A.btS(b,s,r) +case 1:return A.btS(b,r,s)}}, +Re:function Re(a){this.a=a}, +ag8:function ag8(a,b,c,d,e,f){var _=this +_.e=a +_.f=b +_.r=c +_.w=d +_.c=e +_.a=f}, +IW:function IW(a){this.a=a}, +aeL:function aeL(a){var _=this +_.d=$ +_.a=null +_.b=a +_.c=null}, +b2d:function b2d(a,b,c){this.a=a +this.b=b +this.c=c}, +aj1:function aj1(a,b,c){this.c=a +this.d=b +this.a=c}, +b72:function b72(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +b71:function b71(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +b73:function b73(a){this.a=a}, +a_y:function a_y(a,b,c){this.f=a +this.r=b +this.a=c}, +awW:function awW(a,b){this.a=a +this.b=b}, +ads:function ads(a){this.a=a}, +PL:function PL(a,b,c){this.c=a +this.d=b +this.a=c}, +U4:function U4(a,b,c,d,e,f,g,h,i,j){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.x=g +_.y=h +_.z=i +_.a=j}, +aiu:function aiu(a,b,c,d,e,f,g){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.a=g}, +b74:function b74(a){this.a=a}, +b6V:function b6V(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}, +IX:function IX(a,b,c){this.c=a +this.d=b +this.a=c}, +Qk:function Qk(a){this.a=null +this.b=a +this.c=null}, +B6:function B6(a,b,c,d,e,f,g,h,i,j,k){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.z=g +_.Q=h +_.as=i +_.a=j +_.$ti=k}, +FB:function FB(a,b,c,d,e,f,g,h){var _=this +_.d=a +_.e=!1 +_.x6$=b +_.UN$=c +_.Ld$=d +_.dL$=e +_.b_$=f +_.a=null +_.b=g +_.c=null +_.$ti=h}, +ajL:function ajL(a){var _=this +_.at=_.as=null +_.ax=!1 +_.f=_.e=_.d=_.c=_.b=_.a=null +_.ak$=0 +_.ah$=a +_.aT$=_.bG$=0 +_.bK$=!1}, +H7:function H7(){}, +V4:function V4(){}, +bEb(a){var s +if(a.gVv())return!1 +s=a.hP$ +if(s!=null&&s.length!==0)return!1 +if(a.k1.length!==0)return!1 +if(a.gpI())return!1 +s=a.go +if(s.gaL(s)!==B.a5)return!1 +s=a.id +if(s.gaL(s)!==B.Q)return!1 +if(a.a.cx.a)return!1 +return!0}, +boz(a,b,c,d,e,f){var s,r,q,p,o,n,m=null,l=a.a.cx.a +if(a.gpI()){s=A.c_(B.eY,c,new A.jz(B.eY)) +r=$.bAx() +q=t.m +q.a(s) +l=l?d:A.c_(B.eY,d,B.ry) +p=$.bmG() +return new A.YO(new A.aw(s,r,r.$ti.h("aw")),new A.aw(q.a(l),p,p.$ti.h("aw")),e,m)}else{s=l?c:A.c_(B.KQ,c,new A.jz(B.KQ)) +r=$.bAQ() +q=t.m +q.a(s) +p=l?d:A.c_(B.eY,d,B.ry) +o=$.bmG() +q.a(p) +l=l?c:A.c_(B.eY,c,m) +n=$.bzL() +return new A.a_z(new A.aw(s,r,r.$ti.h("aw")),new A.aw(p,o,o.$ti.h("aw")),new A.aw(q.a(l),n,A.k(n).h("aw")),new A.Fz(e,new A.awX(a),new A.awY(a,f),m,f.h("Fz<0>")),m)}}, +b29(a,b,c){var s,r,q,p,o,n,m +if(a==b)return a +if(a==null){s=b.a +if(s==null)s=b +else{r=A.ab(s).h("ad<1,M>") +r=new A.nC(A.aa(new A.ad(s,new A.b2a(c),r),!0,r.h("ax.E"))) +s=r}return s}if(b==null){s=a.a +if(s==null)s=a +else{r=A.ab(s).h("ad<1,M>") +r=new A.nC(A.aa(new A.ad(s,new A.b2b(c),r),!0,r.h("ax.E"))) +s=r}return s}s=A.a([],t.t_) +for(r=b.a,q=a.a,p=q==null,o=0;o"))) +return new A.q4(r)}, +BL(a){return new A.q4(a)}, +bG3(a){return a}, +biG(a,b){if(a.r&&!0)return +if($.biF===0||!1)A.bRB(J.cI(a.a),100,a.b) +else A.blQ().$1("Another exception was thrown: "+a.gagm().j(0)) +$.biF=$.biF+1}, +bG4(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=A.ap(["dart:async-patch",0,"dart:async",0,"package:stack_trace",0,"class _AssertionError",0,"class _FakeAsync",0,"class _FrameCallbackEntry",0,"class _Timer",0,"class _RawReceivePortImpl",0],t.N,t.S),d=A.bKj(J.Ac(a,"\n")) +for(s=0,r=0;q=d.length,r0)q.push(h.a)}B.b.oh(q) +if(s===1)j.push("(elided one frame from "+B.b.gaI(q)+")") +else if(s>1){l=q.length +if(l>1)q[l-1]="and "+B.b.ga1(q) +l="(elided "+s +if(q.length>2)j.push(l+" frames from "+B.b.cq(q,", ")+")") +else j.push(l+" frames from "+B.b.cq(q," ")+")")}return j}, +dV(a){var s=$.jm() +if(s!=null)s.$1(a)}, +bRB(a,b,c){var s,r +A.blQ().$1(a) +s=A.a(B.c.X3(J.cI(c==null?A.jU():A.bG3(c))).split("\n"),t.s) +r=s.length +s=J.bnL(r!==0?new A.yT(s,new A.beQ(),t.Ws):s,b) +A.blQ().$1(B.b.cq(A.bG4(s),"\n"))}, +bMs(a,b,c){return new A.aga(c,a,!0,!0,null,b)}, +va:function va(){}, +BB:function BB(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){var _=this +_.f=a +_.r=b +_.w=c +_.y=d +_.z=e +_.Q=f +_.as=g +_.at=h +_.ax=!0 +_.ay=null +_.ch=i +_.CW=j +_.a=k +_.b=l +_.c=m +_.d=n +_.e=o}, +a0J:function a0J(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){var _=this +_.f=a +_.r=b +_.w=c +_.y=d +_.z=e +_.Q=f +_.as=g +_.at=h +_.ax=!0 +_.ay=null +_.ch=i +_.CW=j +_.a=k +_.b=l +_.c=m +_.d=n +_.e=o}, +a0H:function a0H(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){var _=this +_.f=a +_.r=b +_.w=c +_.y=d +_.z=e +_.Q=f +_.as=g +_.at=h +_.ax=!0 +_.ay=null +_.ch=i +_.CW=j +_.a=k +_.b=l +_.c=m +_.d=n +_.e=o}, +cc:function cc(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.f=e +_.r=f}, +aBZ:function aBZ(a){this.a=a}, +q4:function q4(a){this.a=a}, +aC_:function aC_(){}, +aC0:function aC0(){}, +aC1:function aC1(){}, +beQ:function beQ(){}, +aga:function aga(a,b,c,d,e,f){var _=this +_.f=a +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f}, +agc:function agc(){}, +agb:function agb(){}, +XB:function XB(){}, +atr:function atr(a,b){this.a=a +this.b=b}, +ed(a,b){return new A.ec(a,$.b5(),b.h("ec<0>"))}, +au:function au(){}, +P3:function P3(){}, +im:function im(a){var _=this +_.ak$=0 +_.ah$=a +_.aT$=_.bG$=0 +_.bK$=!1}, +avA:function avA(a){this.a=a}, +vg:function vg(a){this.a=a}, +ec:function ec(a,b,c){var _=this +_.a=a +_.ak$=0 +_.ah$=b +_.aT$=_.bG$=0 +_.bK$=!1 +_.$ti=c}, +bEF(a,b,c){var s=null +return A.kY("",s,b,B.bk,a,!1,s,s,B.aS,s,!1,!1,!0,c,s,t.H)}, +kY(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){var s +if(h==null)s=k?"MISSING":null +else s=h +return new A.hu(e,!1,c,s,g,o,k,b,d,i,a,m,l,j,n,p.h("hu<0>"))}, +bid(a,b,c){return new A.a04(c,a,!0,!0,null,b)}, +bt(a){return B.c.eM(B.f.o0(J.T(a)&1048575,16),5,"0")}, +bEE(a,b,c,d,e,f,g){return new A.a05(b,d,"",g,a,c,!0,!0,null,f)}, +Jc:function Jc(a,b){this.a=a +this.b=b}, +o8:function o8(a,b){this.a=a +this.b=b}, +b7g:function b7g(){}, +fO:function fO(){}, +hu:function hu(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){var _=this +_.f=a +_.r=b +_.w=c +_.y=d +_.z=e +_.Q=f +_.as=g +_.at=h +_.ax=!0 +_.ay=null +_.ch=i +_.CW=j +_.a=k +_.b=l +_.c=m +_.d=n +_.e=o +_.$ti=p}, +wv:function wv(){}, +a04:function a04(a,b,c,d,e,f){var _=this +_.f=a +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f}, +aI:function aI(){}, +a03:function a03(){}, +o7:function o7(){}, +a05:function a05(a,b,c,d,e,f,g,h,i,j){var _=this +_.f=a +_.r=b +_.x=c +_.y=d +_.z=e +_.a=f +_.b=g +_.c=h +_.d=i +_.e=j}, +afc:function afc(){}, +bLj(){return new A.kF()}, +iq:function iq(){}, +jG:function jG(){}, +kF:function kF(){}, +bP:function bP(a,b){this.a=a +this.$ti=b}, +bkM:function bkM(a){this.$ti=a}, +lM:function lM(){}, +KN:function KN(){}, +LR(a){return new A.bb(A.a([],a.h("G<0>")),a.h("bb<0>"))}, +bb:function bb(a,b){var _=this +_.a=a +_.b=!1 +_.c=$ +_.$ti=b}, +BZ:function BZ(a,b){this.a=a +this.$ti=b}, +bPN(a){return A.aT(a,null,!1,t.X)}, +D8:function D8(a,b){this.a=a +this.$ti=b}, +bcj:function bcj(){}, +agl:function agl(a){this.a=a}, +v7:function v7(a,b){this.a=a +this.b=b}, +Rb:function Rb(a,b){this.a=a +this.b=b}, +fV:function fV(a,b){this.a=a +this.b=b}, +b_2(a){var s=new DataView(new ArrayBuffer(8)),r=A.dF(s.buffer,0,null) +return new A.b_1(new Uint8Array(a),s,r)}, +b_1:function b_1(a,b,c){var _=this +_.a=a +_.b=0 +_.c=!1 +_.d=b +_.e=c}, +ME:function ME(a){this.a=a +this.b=0}, +bKj(a){var s=t.ZK +return A.aa(new A.es(new A.en(new A.be(A.a(B.c.dI(a).split("\n"),t.s),new A.aVP(),t.gD),A.bVD(),t.C9),s),!0,s.h("z.E"))}, +bKi(a){var s,r,q="",p=$.bzm().l7(a) +if(p==null)return null +s=A.a(p.b[1].split("."),t.s) +r=s.length>1?B.b.gN(s):q +return new A.ni(a,-1,q,q,q,-1,-1,r,s.length>1?A.fE(s,1,null,t.N).cq(0,"."):B.b.gaI(s))}, +bKk(a){var s,r,q,p,o,n,m,l,k,j,i=null,h="" +if(a==="")return B.aei +else if(a==="...")return B.aeh +if(!B.c.c8(a,"#"))return A.bKi(a) +s=A.bF("^#(\\d+) +(.+) \\((.+?):?(\\d+){0,1}:?(\\d+){0,1}\\)$",!0,!1,!1).l7(a).b +r=s[2] +r.toString +q=A.eC(r,".","") +if(B.c.c8(q,"new")){p=q.split(" ").length>1?q.split(" ")[1]:h +if(B.c.n(p,".")){o=p.split(".") +p=o[0] +q=o[1]}else q=""}else if(B.c.n(q,".")){o=q.split(".") +p=o[0] +q=o[1]}else p="" +r=s[3] +r.toString +n=A.dH(r,0,i) +m=n.gdN(n) +if(n.gfg()==="dart"||n.gfg()==="package"){l=n.gBh()[0] +m=B.c.vt(n.gdN(n),A.h(n.gBh()[0])+"/","")}else l=h +r=s[1] +r.toString +r=A.ef(r,i,i) +k=n.gfg() +j=s[4] +if(j==null)j=-1 +else{j=j +j.toString +j=A.ef(j,i,i)}s=s[5] +if(s==null)s=-1 +else{s=s +s.toString +s=A.ef(s,i,i)}return new A.ni(a,r,k,l,m,j,s,p,q)}, +ni:function ni(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}, +aVP:function aVP(){}, +ct:function ct(a,b){this.a=a +this.$ti=b}, +aWS:function aWS(a){this.a=a}, +a1l:function a1l(a,b){this.a=a +this.b=b}, +eS:function eS(){}, +BS:function BS(a,b,c){this.a=a +this.b=b +this.c=c}, +FY:function FY(a){var _=this +_.a=a +_.b=!0 +_.d=_.c=!1 +_.e=null}, +b4w:function b4w(a){this.a=a}, +aDj:function aDj(a){this.a=a}, +aDl:function aDl(a,b){this.a=a +this.b=b}, +aDk:function aDk(a,b,c){this.a=a +this.b=b +this.c=c}, +bG2(a,b,c,d,e,f,g){return new A.JV(c,g,f,a,e,!1)}, +b9y:function b9y(a,b,c,d,e,f,g,h){var _=this +_.a=a +_.b=!1 +_.c=b +_.d=c +_.e=d +_.f=e +_.r=f +_.w=g +_.x=h +_.y=null}, +BT:function BT(){}, +aDo:function aDo(a){this.a=a}, +aDp:function aDp(a,b){this.a=a +this.b=b}, +JV:function JV(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.f=e +_.r=f}, +bvS(a,b){switch(b.a){case 1:case 4:return a +case 0:case 2:case 3:return a===0?1:a +case 5:return a===0?1:a}}, +bIx(a,b){var s=A.ab(a) +return new A.es(new A.en(new A.be(a,new A.aLO(),s.h("be<1>")),new A.aLP(b),s.h("en<1,c3?>")),t.FI)}, +aLO:function aLO(){}, +aLP:function aLP(a){this.a=a}, +pT:function pT(a){this.a=a}, +ob:function ob(a,b,c){this.a=a +this.b=b +this.d=c}, +oc:function oc(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +jx:function jx(a,b){this.a=a +this.b=b}, +Mk(a,b){var s,r +if(a==null)return b +s=new A.d4(new Float64Array(3)) +s.h6(b.a,b.b,0) +r=a.ME(s).a +return new A.l(r[0],r[1])}, +y2(a,b,c,d){if(a==null)return c +if(b==null)b=A.Mk(a,d) +return b.a2(0,A.Mk(a,d.a2(0,c)))}, +bjt(a){var s,r,q=new Float64Array(4),p=new A.nn(q) +p.H6(0,0,1,0) +s=new Float64Array(16) +r=new A.bS(s) +r.cd(a) +s[11]=q[3] +s[10]=q[2] +s[9]=q[1] +s[8]=q[0] +r.NX(2,p) +return r}, +bIu(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){return new A.y1(o,d,n,0,e,a,h,B.i,0,!1,!1,0,j,i,b,c,0,0,0,l,k,g,m,0,!1,null,null)}, +bIE(a,b,c,d,e,f,g,h,i,j,k,l){return new A.y6(l,c,k,0,d,a,f,B.i,0,!1,!1,0,h,g,0,b,0,0,0,j,i,0,0,0,!1,null,null)}, +bIz(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1){return new A.qC(a1,f,a0,0,g,c,j,b,a,!1,!1,0,l,k,d,e,q,m,p,o,n,i,s,0,r,null,null)}, +bIw(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3){return new A.uj(a3,g,a2,k,h,c,l,b,a,f,!1,0,n,m,d,e,s,o,r,q,p,j,a1,0,a0,null,null)}, +bIy(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3){return new A.uk(a3,g,a2,k,h,c,l,b,a,f,!1,0,n,m,d,e,s,o,r,q,p,j,a1,0,a0,null,null)}, +bIv(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0){return new A.qB(a0,d,s,h,e,b,i,B.i,a,!0,!1,j,l,k,0,c,q,m,p,o,n,g,r,0,!1,null,null)}, +bIA(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3){return new A.y3(a3,e,a2,j,f,c,k,b,a,!0,!1,l,n,m,0,d,s,o,r,q,p,h,a1,i,a0,null,null)}, +bII(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1){return new A.qE(a1,e,a0,i,f,b,j,B.i,a,!1,!1,k,m,l,c,d,r,n,q,p,o,h,s,0,!1,null,null)}, +bIG(a,b,c,d,e,f,g){return new A.y8(e,g,b,f,0,c,a,d,B.i,0,!1,!1,1,1,1,0,0,0,0,0,0,0,0,0,0,!1,null,null)}, +bIH(a,b,c,d,e,f){return new A.y9(f,b,e,0,c,a,d,B.i,0,!1,!1,1,1,1,0,0,0,0,0,0,0,0,0,0,!1,null,null)}, +bIF(a,b,c,d,e,f,g){return new A.y7(e,g,b,f,0,c,a,d,B.i,0,!1,!1,1,1,1,0,0,0,0,0,0,0,0,0,0,!1,null,null)}, +bIC(a,b,c,d,e,f,g){return new A.qD(g,b,f,c,B.bF,a,d,B.i,0,!1,!1,1,1,1,0,0,0,0,0,0,0,0,0,0,e,null,null)}, +bID(a,b,c,d,e,f,g,h,i,j,k){return new A.y5(c,d,h,g,k,b,j,e,B.bF,a,f,B.i,0,!1,!1,1,1,1,0,0,0,0,0,0,0,0,0,0,i,null,null)}, +bIB(a,b,c,d,e,f,g){return new A.y4(g,b,f,c,B.bF,a,d,B.i,0,!1,!1,1,1,1,0,0,0,0,0,0,0,0,0,0,e,null,null)}, +brh(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0){return new A.qz(a0,e,s,i,f,b,j,B.i,a,!1,!1,0,l,k,c,d,q,m,p,o,n,h,r,0,!1,null,null)}, +vC(a,b){var s +switch(a.a){case 1:return 1 +case 2:case 3:case 5:case 0:case 4:s=b==null?null:b.a +return s==null?18:s}}, +beK(a,b){var s +switch(a.a){case 1:return 2 +case 2:case 3:case 5:case 0:case 4:if(b==null)s=null +else{s=b.a +s=s!=null?s*2:null}return s==null?36:s}}, +bRc(a){switch(a.a){case 1:return 1 +case 2:case 3:case 5:case 0:case 4:return 18}}, +c3:function c3(){}, +fW:function fW(){}, +acX:function acX(){}, +ano:function ano(){}, +aek:function aek(){}, +y1:function y1(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5,a6,a7){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 +_.CW=r +_.cx=s +_.cy=a0 +_.db=a1 +_.dx=a2 +_.dy=a3 +_.fr=a4 +_.fx=a5 +_.fy=a6 +_.go=a7}, +ank:function ank(a,b){var _=this +_.c=a +_.d=b +_.b=_.a=$}, +aeu:function aeu(){}, +y6:function y6(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5,a6,a7){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 +_.CW=r +_.cx=s +_.cy=a0 +_.db=a1 +_.dx=a2 +_.dy=a3 +_.fr=a4 +_.fx=a5 +_.fy=a6 +_.go=a7}, +anv:function anv(a,b){var _=this +_.c=a +_.d=b +_.b=_.a=$}, +aep:function aep(){}, +qC:function qC(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5,a6,a7){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 +_.CW=r +_.cx=s +_.cy=a0 +_.db=a1 +_.dx=a2 +_.dy=a3 +_.fr=a4 +_.fx=a5 +_.fy=a6 +_.go=a7}, +anq:function anq(a,b){var _=this +_.c=a +_.d=b +_.b=_.a=$}, +aen:function aen(){}, +uj:function uj(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5,a6,a7){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 +_.CW=r +_.cx=s +_.cy=a0 +_.db=a1 +_.dx=a2 +_.dy=a3 +_.fr=a4 +_.fx=a5 +_.fy=a6 +_.go=a7}, +ann:function ann(a,b){var _=this +_.c=a +_.d=b +_.b=_.a=$}, +aeo:function aeo(){}, +uk:function uk(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5,a6,a7){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 +_.CW=r +_.cx=s +_.cy=a0 +_.db=a1 +_.dx=a2 +_.dy=a3 +_.fr=a4 +_.fx=a5 +_.fy=a6 +_.go=a7}, +anp:function anp(a,b){var _=this +_.c=a +_.d=b +_.b=_.a=$}, +aem:function aem(){}, +qB:function qB(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5,a6,a7){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 +_.CW=r +_.cx=s +_.cy=a0 +_.db=a1 +_.dx=a2 +_.dy=a3 +_.fr=a4 +_.fx=a5 +_.fy=a6 +_.go=a7}, +anm:function anm(a,b){var _=this +_.c=a +_.d=b +_.b=_.a=$}, +aeq:function aeq(){}, +y3:function y3(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5,a6,a7){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 +_.CW=r +_.cx=s +_.cy=a0 +_.db=a1 +_.dx=a2 +_.dy=a3 +_.fr=a4 +_.fx=a5 +_.fy=a6 +_.go=a7}, +anr:function anr(a,b){var _=this +_.c=a +_.d=b +_.b=_.a=$}, +aey:function aey(){}, +qE:function qE(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5,a6,a7){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 +_.CW=r +_.cx=s +_.cy=a0 +_.db=a1 +_.dx=a2 +_.dy=a3 +_.fr=a4 +_.fx=a5 +_.fy=a6 +_.go=a7}, +anz:function anz(a,b){var _=this +_.c=a +_.d=b +_.b=_.a=$}, +j8:function j8(){}, +aew:function aew(){}, +y8:function y8(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5,a6,a7,a8){var _=this +_.B=a +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f +_.f=g +_.r=h +_.w=i +_.x=j +_.y=k +_.z=l +_.Q=m +_.as=n +_.at=o +_.ax=p +_.ay=q +_.ch=r +_.CW=s +_.cx=a0 +_.cy=a1 +_.db=a2 +_.dx=a3 +_.dy=a4 +_.fr=a5 +_.fx=a6 +_.fy=a7 +_.go=a8}, +anx:function anx(a,b){var _=this +_.c=a +_.d=b +_.b=_.a=$}, +aex:function aex(){}, +y9:function y9(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5,a6,a7){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 +_.CW=r +_.cx=s +_.cy=a0 +_.db=a1 +_.dx=a2 +_.dy=a3 +_.fr=a4 +_.fx=a5 +_.fy=a6 +_.go=a7}, +any:function any(a,b){var _=this +_.c=a +_.d=b +_.b=_.a=$}, +aev:function aev(){}, +y7:function y7(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5,a6,a7,a8){var _=this +_.B=a +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f +_.f=g +_.r=h +_.w=i +_.x=j +_.y=k +_.z=l +_.Q=m +_.as=n +_.at=o +_.ax=p +_.ay=q +_.ch=r +_.CW=s +_.cx=a0 +_.cy=a1 +_.db=a2 +_.dx=a3 +_.dy=a4 +_.fr=a5 +_.fx=a6 +_.fy=a7 +_.go=a8}, +anw:function anw(a,b){var _=this +_.c=a +_.d=b +_.b=_.a=$}, +aes:function aes(){}, +qD:function qD(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5,a6,a7){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 +_.CW=r +_.cx=s +_.cy=a0 +_.db=a1 +_.dx=a2 +_.dy=a3 +_.fr=a4 +_.fx=a5 +_.fy=a6 +_.go=a7}, +ant:function ant(a,b){var _=this +_.c=a +_.d=b +_.b=_.a=$}, +aet:function aet(){}, +y5:function y5(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,b0,b1){var _=this +_.id=a +_.k1=b +_.k2=c +_.k3=d +_.a=e +_.b=f +_.c=g +_.d=h +_.e=i +_.f=j +_.r=k +_.w=l +_.x=m +_.y=n +_.z=o +_.Q=p +_.as=q +_.at=r +_.ax=s +_.ay=a0 +_.ch=a1 +_.CW=a2 +_.cx=a3 +_.cy=a4 +_.db=a5 +_.dx=a6 +_.dy=a7 +_.fr=a8 +_.fx=a9 +_.fy=b0 +_.go=b1}, +anu:function anu(a,b){var _=this +_.d=_.c=$ +_.e=a +_.f=b +_.b=_.a=$}, +aer:function aer(){}, +y4:function y4(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5,a6,a7){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 +_.CW=r +_.cx=s +_.cy=a0 +_.db=a1 +_.dx=a2 +_.dy=a3 +_.fr=a4 +_.fx=a5 +_.fy=a6 +_.go=a7}, +ans:function ans(a,b){var _=this +_.c=a +_.d=b +_.b=_.a=$}, +ael:function ael(){}, +qz:function qz(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5,a6,a7){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 +_.CW=r +_.cx=s +_.cy=a0 +_.db=a1 +_.dx=a2 +_.dy=a3 +_.fr=a4 +_.fx=a5 +_.fy=a6 +_.go=a7}, +anl:function anl(a,b){var _=this +_.c=a +_.d=b +_.b=_.a=$}, +aj5:function aj5(){}, +aj6:function aj6(){}, +aj7:function aj7(){}, +aj8:function aj8(){}, +aj9:function aj9(){}, +aja:function aja(){}, +ajb:function ajb(){}, +ajc:function ajc(){}, +ajd:function ajd(){}, +aje:function aje(){}, +ajf:function ajf(){}, +ajg:function ajg(){}, +ajh:function ajh(){}, +aji:function aji(){}, +ajj:function ajj(){}, +ajk:function ajk(){}, +ajl:function ajl(){}, +ajm:function ajm(){}, +ajn:function ajn(){}, +ajo:function ajo(){}, +ajp:function ajp(){}, +ajq:function ajq(){}, +ajr:function ajr(){}, +ajs:function ajs(){}, +ajt:function ajt(){}, +aju:function aju(){}, +ajv:function ajv(){}, +ajw:function ajw(){}, +ajx:function ajx(){}, +ajy:function ajy(){}, +ajz:function ajz(){}, +apw:function apw(){}, +apx:function apx(){}, +apy:function apy(){}, +apz:function apz(){}, +apA:function apA(){}, +apB:function apB(){}, +apC:function apC(){}, +apD:function apD(){}, +apE:function apE(){}, +apF:function apF(){}, +apG:function apG(){}, +apH:function apH(){}, +apI:function apI(){}, +apJ:function apJ(){}, +apK:function apK(){}, +apL:function apL(){}, +apM:function apM(){}, +bpF(a,b){var s=t.S,r=A.dN(s) +return new A.mN(B.pu,A.F(s,t.SP),r,a,b,A.Hj(),A.F(s,t.Au))}, +bpG(a,b,c){var s=(c-a)/(b-a) +return!isNaN(s)?A.S(s,0,1):s}, +zF:function zF(a,b){this.a=a +this.b=b}, +wZ:function wZ(a){this.a=a}, +mN:function mN(a,b,c,d,e,f,g){var _=this +_.ch=_.ay=_.ax=_.at=null +_.dx=_.db=$ +_.dy=a +_.f=b +_.r=c +_.w=null +_.a=d +_.b=null +_.c=e +_.d=f +_.e=g}, +aCr:function aCr(a,b){this.a=a +this.b=b}, +aCp:function aCp(a){this.a=a}, +aCq:function aCq(a){this.a=a}, +a02:function a02(a){this.a=a}, +aEL(){var s=A.a([],t.om),r=new A.bS(new Float64Array(16)) +r.fQ() +return new A.qc(s,A.a([r],t.Ji),A.a([],t.cR))}, +l4:function l4(a,b){this.a=a +this.b=null +this.$ti=b}, +H1:function H1(){}, +RS:function RS(a){this.a=a}, +Gm:function Gm(a){this.a=a}, +qc:function qc(a,b,c){this.a=a +this.b=b +this.c=c}, +aHi(a,b,c){var s=b==null?B.bu:b,r=t.S,q=A.dN(r),p=A.bwV() +return new A.kp(s,null,B.dy,A.F(r,t.SP),q,a,c,p,A.F(r,t.Au))}, +bHs(a){return a===1||a===2||a===4}, +CB:function CB(a,b){this.a=a +this.b=b}, +KY:function KY(a,b,c){this.a=a +this.b=b +this.c=c}, +CA:function CA(a,b){this.b=a +this.c=b}, +kp:function kp(a,b,c,d,e,f,g,h,i){var _=this +_.k2=!1 +_.bO=_.bQ=_.cb=_.bU=_.aV=_.cO=_.c5=_.y2=_.y1=_.xr=_.x2=_.x1=_.to=_.ry=_.rx=_.RG=_.R8=_.p4=_.p3=_.p2=_.p1=_.ok=_.k4=_.k3=null +_.at=a +_.ay=b +_.ch=c +_.cx=_.CW=null +_.cy=!1 +_.db=null +_.f=d +_.r=e +_.w=null +_.a=f +_.b=null +_.c=g +_.d=h +_.e=i}, +aHl:function aHl(a,b){this.a=a +this.b=b}, +aHk:function aHk(a,b){this.a=a +this.b=b}, +aHj:function aHj(a,b){this.a=a +this.b=b}, +rx:function rx(a,b,c){this.a=a +this.b=b +this.c=c}, +bkz:function bkz(a,b){this.a=a +this.b=b}, +aLV:function aLV(a){this.a=a +this.b=$}, +aLW:function aLW(){}, +a2A:function a2A(a,b,c){this.a=a +this.b=b +this.c=c}, +bFg(a){return new A.k_(a.gdS(a),A.aT(20,null,!1,t.av))}, +bFh(a){return a===1}, +bk6(a,b){var s=t.S,r=A.dN(s),q=A.blL() +return new A.no(B.C,A.blK(),B.eI,A.F(s,t.GY),A.aY(s),A.F(s,t.SP),r,a,b,q,A.F(s,t.Au))}, +a1L(a,b){var s=t.S,r=A.dN(s),q=A.blL() +return new A.mO(B.C,A.blK(),B.eI,A.F(s,t.GY),A.aY(s),A.F(s,t.SP),r,a,b,q,A.F(s,t.Au))}, +brb(a,b){var s=t.S,r=A.dN(s),q=A.blL() +return new A.n1(B.C,A.blK(),B.eI,A.F(s,t.GY),A.aY(s),A.F(s,t.SP),r,a,b,q,A.F(s,t.Au))}, +QA:function QA(a,b){this.a=a +this.b=b}, +Jq:function Jq(){}, +ayQ:function ayQ(a,b){this.a=a +this.b=b}, +ayV:function ayV(a,b){this.a=a +this.b=b}, +ayW:function ayW(a,b){this.a=a +this.b=b}, +ayR:function ayR(){}, +ayS:function ayS(a,b){this.a=a +this.b=b}, +ayT:function ayT(a){this.a=a}, +ayU:function ayU(a,b){this.a=a +this.b=b}, +no:function no(a,b,c,d,e,f,g,h,i,j,k){var _=this +_.at=a +_.dx=_.db=_.cy=_.cx=_.CW=_.ch=_.ay=_.ax=null +_.dy=!1 +_.fr=b +_.fx=c +_.go=_.fy=$ +_.k2=_.k1=_.id=null +_.k3=$ +_.k4=!1 +_.ok=d +_.p1=e +_.f=f +_.r=g +_.w=null +_.a=h +_.b=null +_.c=i +_.d=j +_.e=k}, +mO:function mO(a,b,c,d,e,f,g,h,i,j,k){var _=this +_.at=a +_.dx=_.db=_.cy=_.cx=_.CW=_.ch=_.ay=_.ax=null +_.dy=!1 +_.fr=b +_.fx=c +_.go=_.fy=$ +_.k2=_.k1=_.id=null +_.k3=$ +_.k4=!1 +_.ok=d +_.p1=e +_.f=f +_.r=g +_.w=null +_.a=h +_.b=null +_.c=i +_.d=j +_.e=k}, +n1:function n1(a,b,c,d,e,f,g,h,i,j,k){var _=this +_.at=a +_.dx=_.db=_.cy=_.cx=_.CW=_.ch=_.ay=_.ax=null +_.dy=!1 +_.fr=b +_.fx=c +_.go=_.fy=$ +_.k2=_.k1=_.id=null +_.k3=$ +_.k4=!1 +_.ok=d +_.p1=e +_.f=f +_.r=g +_.w=null +_.a=h +_.b=null +_.c=i +_.d=j +_.e=k}, +bFd(a){return a===1}, +aeA:function aeA(){this.a=!1}, +GX:function GX(a,b,c,d,e){var _=this +_.b=a +_.c=b +_.d=c +_.e=d +_.f=e +_.r=!1}, +mL:function mL(a,b,c,d,e){var _=this +_.y=_.x=_.w=_.r=_.f=null +_.z=a +_.a=b +_.b=null +_.c=c +_.d=d +_.e=e}, +aLQ:function aLQ(a,b){this.a=a +this.b=b}, +aLS:function aLS(){}, +aLR:function aLR(a,b,c){this.a=a +this.b=b +this.c=c}, +aLT:function aLT(){this.b=this.a=null}, +bGp(a){return!0}, +a0l:function a0l(a,b){this.a=a +this.b=b}, +eK:function eK(){}, +LT:function LT(){}, +K8:function K8(a,b){this.a=a +this.b=b}, +Di:function Di(){}, +aM5:function aM5(a,b){this.a=a +this.b=b}, +j6:function j6(a,b){this.a=a +this.b=b}, +ago:function ago(){}, +bJz(a,b,c,d,e,f,g,h){return new A.Nd(b,a,d,g,c,h,f,e)}, +GE:function GE(a,b){this.a=a +this.b=b}, +zN:function zN(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +Nc:function Nc(a,b,c){this.a=a +this.b=b +this.c=c}, +Nd:function Nd(a,b,c,d,e,f,g,h){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=h}, +DR:function DR(a,b,c){this.a=a +this.b=b +this.c=c}, +ahy:function ahy(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +nb:function nb(a,b,c,d,e,f,g,h,i,j,k,l,m){var _=this +_.at=a +_.ch=_.ay=_.ax=null +_.CW=b +_.cx=null +_.cy=!1 +_.db=c +_.dx=$ +_.dy=null +_.k2=_.k1=_.id=_.go=_.fy=_.fx=_.fr=$ +_.k4=_.k3=null +_.ok=d +_.p1=e +_.p2=f +_.p3=null +_.p4=$ +_.R8=g +_.RG=1 +_.rx=0 +_.f=h +_.r=i +_.w=null +_.a=j +_.b=null +_.c=k +_.d=l +_.e=m}, +aQX:function aQX(){}, +aQY:function aQY(){}, +aQZ:function aQZ(a,b){this.a=a +this.b=b}, +aR_:function aR_(a){this.a=a}, +aQV:function aQV(a){this.a=a}, +aQW:function aQW(a){this.a=a}, +aR0:function aR0(){}, +aR1:function aR1(){}, +a9T(a,b){var s=t.S,r=A.dN(s) +return new A.kC(B.b_,18,B.dy,A.F(s,t.SP),r,a,b,A.Hj(),A.F(s,t.Au))}, +ED:function ED(a,b){this.a=a +this.c=b}, +uQ:function uQ(){}, +Xw:function Xw(){}, +kC:function kC(a,b,c,d,e,f,g,h,i){var _=this +_.aG=_.ar=_.av=_.Y=_.Z=_.B=_.bO=_.bQ=_.cb=_.bU=_.aV=null +_.k3=_.k2=!1 +_.ok=_.k4=null +_.at=a +_.ay=b +_.ch=c +_.cx=_.CW=null +_.cy=!1 +_.db=null +_.f=d +_.r=e +_.w=null +_.a=f +_.b=null +_.c=g +_.d=h +_.e=i}, +aX0:function aX0(a,b){this.a=a +this.b=b}, +aX1:function aX1(a,b){this.a=a +this.b=b}, +aX2:function aX2(a,b){this.a=a +this.b=b}, +aX3:function aX3(a,b){this.a=a +this.b=b}, +aX4:function aX4(a){this.a=a}, +aed:function aed(a,b){this.a=a +this.b=b}, +zz:function zz(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.d=!1 +_.f=_.e=null}, +aDm:function aDm(a){this.a=a}, +aDn:function aDn(a,b){this.a=a +this.b=b}, +bGC(a){var s=t.av +return new A.x5(A.aT(20,null,!1,s),a,A.aT(20,null,!1,s))}, +kG:function kG(a){this.a=a}, +zo:function zo(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +Sk:function Sk(a,b){this.a=a +this.b=b}, +k_:function k_(a,b){this.a=a +this.b=b +this.c=0}, +x5:function x5(a,b,c){var _=this +_.d=a +_.a=b +_.b=c +_.c=0}, +CC:function CC(a,b,c){var _=this +_.d=a +_.a=b +_.b=c +_.c=0}, +acY:function acY(){}, +b_P:function b_P(a,b){this.a=a +this.b=b}, +zu:function zu(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +Xj:function Xj(a){this.a=a}, +asx:function asx(){}, +asy:function asy(){}, +asz:function asz(){}, +Xh:function Xh(a,b,c,d){var _=this +_.c=a +_.d=b +_.f=c +_.a=d}, +Yv:function Yv(a){this.a=a}, +awh:function awh(){}, +awi:function awi(){}, +awj:function awj(){}, +Yu:function Yu(a,b,c,d){var _=this +_.c=a +_.d=b +_.f=c +_.a=d}, +a0q:function a0q(a){this.a=a}, +ayY:function ayY(){}, +ayZ:function ayZ(){}, +az_:function az_(){}, +a0p:function a0p(a,b,c,d){var _=this +_.c=a +_.d=b +_.f=c +_.a=d}, +a0y:function a0y(a){this.a=a}, +aA8:function aA8(){}, +aA9:function aA9(){}, +aAa:function aAa(){}, +a0x:function a0x(a,b,c,d){var _=this +_.c=a +_.d=b +_.f=c +_.a=d}, +bCQ(a,b,c){var s,r,q,p,o=null,n=a==null +if(n&&b==null)return o +s=c<0.5 +if(s)r=n?o:a.a +else r=b==null?o:b.a +if(s)q=n?o:a.b +else q=b==null?o:b.b +if(s)p=n?o:a.c +else p=b==null?o:b.c +if(s)n=n?o:a.d +else n=b==null?o:b.d +return new A.Ae(r,q,p,n)}, +Ae:function Ae(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +ad_:function ad_(){}, +bhD(a){return new A.Wz(a.gaFM(),a.gaFL(),null)}, +bhE(a,b){var s=b.c +if(s!=null)return s +switch(A.r(a).r.a){case 2:case 4:return A.boB(a,b) +case 0:case 1:case 3:case 5:s=A.A(a,B.ax,t.D) +s.toString +switch(b.b.a){case 0:return s.gW() +case 1:return s.gV() +case 2:return s.gX() +case 3:return s.gO() +case 4:return s.gaO().toUpperCase() +case 5:return s.gbx() +case 6:return""}break}}, +bCS(a,b){var s,r,q,p,o,n,m,l=null +switch(A.r(a).r.a){case 2:return new A.ad(b,new A.arn(),A.ab(b).h("ad<1,d>")) +case 1:case 0:s=A.a([],t.p) +for(r=0;q=b.length,r")) +case 4:return new A.ad(b,new A.arp(a),A.ab(b).h("ad<1,d>"))}}, +Wz:function Wz(a,b,c){this.c=a +this.e=b +this.a=c}, +arn:function arn(){}, +aro:function aro(a){this.a=a}, +arp:function arp(a){this.a=a}, +bqE(){return new A.lJ(new A.aIu(),A.F(t.K,t.Qu))}, +hg:function hg(a,b){this.a=a +this.b=b}, +CI:function CI(a,b,c,d,e,f,g,h,i,j){var _=this +_.ay=a +_.cx=b +_.cy=c +_.db=d +_.fr=e +_.id=f +_.k1=g +_.k4=h +_.p4=i +_.a=j}, +aIu:function aIu(){}, +aIy:function aIy(){}, +RM:function RM(a){var _=this +_.d=$ +_.a=null +_.b=a +_.c=null}, +b6b:function b6b(){}, +eh(a,b,c,d,e,f,g){var s=c==null?null:c.d.b +return new A.HM(f,g,a,c,e,b,d,new A.So(null,s,1/0,56+(s==null?0:s)),null)}, +bCZ(a,b){var s,r +if(b instanceof A.So&&!0){s=A.r(a).RG.Q +if(s==null)s=56 +r=b.f +return s+(r==null?0:r)}return b.b}, +bc9:function bc9(a){this.b=a}, +So:function So(a,b,c,d){var _=this +_.e=a +_.f=b +_.a=c +_.b=d}, +HM:function HM(a,b,c,d,e,f,g,h,i){var _=this +_.c=a +_.e=b +_.f=c +_.w=d +_.x=e +_.ax=f +_.cy=g +_.fx=h +_.a=i}, +aru:function aru(a,b){this.a=a +this.b=b}, +Pz:function Pz(a){var _=this +_.d=null +_.e=!1 +_.a=null +_.b=a +_.c=null}, +b0e:function b0e(){}, +adj:function adj(a,b){this.c=a +this.a=b}, +aka:function aka(a,b,c,d){var _=this +_.C=null +_.a0=a +_.aw=b +_.E$=c +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=d +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +b0c:function b0c(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){var _=this +_.ay=a +_.CW=_.ch=$ +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f +_.f=g +_.r=h +_.w=i +_.x=j +_.y=k +_.z=l +_.Q=m +_.as=n +_.at=o +_.ax=p}, +b0d:function b0d(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){var _=this +_.ay=a +_.cx=_.CW=_.ch=$ +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f +_.f=g +_.r=h +_.w=i +_.x=j +_.y=k +_.z=l +_.Q=m +_.as=n +_.at=o +_.ax=p}, +bCX(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){return new A.Aj(b==null?null:b,e,d,g,h,j,i,f,a,c,l,n,o,m,k)}, +bCY(a,b,c){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e +if(a===b&&!0)return a +s=A.W(a.a,b.a,c) +r=A.W(a.b,b.b,c) +q=A.ag(a.c,b.c,c) +p=A.ag(a.d,b.d,c) +o=A.W(a.e,b.e,c) +n=A.W(a.f,b.f,c) +m=A.fd(a.r,b.r,c) +l=A.qf(a.w,b.w,c) +k=A.qf(a.x,b.x,c) +j=c<0.5 +if(j)i=a.y +else i=b.y +h=A.ag(a.z,b.z,c) +g=A.ag(a.Q,b.Q,c) +f=A.c1(a.as,b.as,c) +e=A.c1(a.at,b.at,c) +if(j)j=a.ax +else j=b.ax +return A.bCX(k,s,i,q,r,l,p,o,m,n,j,h,e,g,f)}, +Aj:function Aj(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){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}, +adi:function adi(){}, +bPO(a,b){var s,r,q,p,o=A.b4("maxValue") +for(s=null,r=0;r<4;++r){q=a[r] +p=b.$1(q) +if(s==null||p>s){o.b=q +s=p}}return o.aF()}, +Lj:function Lj(a,b){var _=this +_.c=!0 +_.r=_.f=_.e=_.d=null +_.a=a +_.b=b}, +aIw:function aIw(a,b){this.a=a +this.b=b}, +Fx:function Fx(a,b){this.a=a +this.b=b}, +rd:function rd(a,b){this.a=a +this.b=b}, +CL:function CL(a,b){var _=this +_.e=!0 +_.r=_.f=$ +_.a=a +_.b=b}, +aIx:function aIx(a,b){this.a=a +this.b=b}, +bDb(a,b,c){var s,r,q,p,o,n,m +if(a===b&&!0)return a +s=A.W(a.a,b.a,c) +r=A.W(a.b,b.b,c) +q=A.ag(a.c,b.c,c) +p=A.ag(a.d,b.d,c) +o=A.c1(a.e,b.e,c) +n=A.fx(a.f,b.f,c) +m=A.Ag(a.r,b.r,c) +return new A.HW(s,r,q,p,o,n,m,A.lT(a.w,b.w,c))}, +HW:function HW(a,b,c,d,e,f,g,h){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=h}, +adv:function adv(){}, +La:function La(a,b,c,d,e,f,g,h){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=h}, +ai_:function ai_(){}, +bDf(a,b,c){var s,r,q,p,o,n +if(a===b&&!0)return a +s=A.W(a.a,b.a,c) +r=A.ag(a.b,b.b,c) +if(c<0.5)q=a.c +else q=b.c +p=A.ag(a.d,b.d,c) +o=A.W(a.e,b.e,c) +n=A.W(a.f,b.f,c) +return new A.I5(s,r,q,p,o,n,A.fx(a.r,b.r,c))}, +I5:function I5(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +adD:function adD(){}, +bDg(a,b,c){var s,r,q,p,o,n,m,l,k,j,i,h,g,f +if(a===b&&!0)return a +s=A.W(a.a,b.a,c) +r=A.ag(a.b,b.b,c) +q=A.qf(a.c,b.c,c) +p=A.qf(a.d,b.d,c) +o=A.W(a.e,b.e,c) +n=A.W(a.f,b.f,c) +m=A.c1(a.r,b.r,c) +l=A.c1(a.w,b.w,c) +k=c<0.5 +if(k)j=a.x +else j=b.x +if(k)i=a.y +else i=b.y +if(k)h=a.z +else h=b.z +if(k)g=a.Q +else g=b.Q +if(k)f=a.as +else f=b.as +if(k)k=a.at +else k=b.at +return new A.I6(s,r,q,p,o,n,m,l,j,i,h,g,f,k)}, +I6:function I6(a,b,c,d,e,f,g,h,i,j,k,l,m,n){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}, +adE:function adE(){}, +bo5(a,b,c,d,e,f,g,h,i,j,k,l){return new A.I7(a,h,c,g,l,j,i,b,f,k,d,e,null)}, +blY(a,b,c,d,e){var s,r,q,p,o,n,m,l,k,j,i=null,h=A.j5(c,!1),g=A.A(c,B.ax,t.D) +g.toString +s=h.c +s.toString +s=A.Kr(c,s) +r=g.gaN() +g=g.Y_(g.gb0()) +q=A.r(c) +p=A.ed(B.a4,t.U6) +o=A.a([],t.Zt) +n=$.a9 +m=A.lX(B.bN) +l=A.a([],t.wi) +k=A.ed(i,t.v) +j=$.a9 +return h.Bk(new A.Lt(a,s,!1,i,i,d,b,i,q.x2.e,!0,!0,i,i,i,!1,g,p,r,i,i,o,new A.bo(i,e.h("bo>")),new A.bo(i,t.C),new A.oD(),i,0,new A.aD(new A.a8(n,e.h("a8<0?>")),e.h("aD<0?>")),m,l,B.fD,k,new A.aD(new A.a8(j,e.h("a8<0?>")),e.h("aD<0?>")),e.h("Lt<0>")),e)}, +bkl(a){var s=null +return new A.b0J(a,s,s,1,s,s,s,1,B.aci,s,s,s,s,B.qb)}, +I7:function I7(a,b,c,d,e,f,g,h,i,j,k,l,m){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.y=f +_.z=g +_.Q=h +_.at=i +_.ax=j +_.ay=k +_.ch=l +_.a=m}, +PT:function PT(a,b,c){var _=this +_.d=a +_.e=b +_.a=null +_.b=c +_.c=null}, +b0O:function b0O(a){this.a=a}, +b0M:function b0M(a){this.a=a}, +b0N:function b0N(a,b){this.a=a +this.b=b}, +afw:function afw(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.a=f}, +b2P:function b2P(a){this.a=a}, +b2Q:function b2Q(a){this.a=a}, +adF:function adF(a,b,c,d,e){var _=this +_.e=a +_.f=b +_.r=c +_.c=d +_.a=e}, +Sz:function Sz(a,b,c,d,e,f){var _=this +_.C=a +_.a0=b +_.aw=c +_.cu=d +_.E$=e +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=f +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +zK:function zK(a,b,c,d,e,f,g,h,i,j,k){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.x=g +_.y=h +_.z=i +_.a=j +_.$ti=k}, +Gh:function Gh(a,b,c){var _=this +_.d=a +_.a=null +_.b=b +_.c=null +_.$ti=c}, +b6F:function b6F(a,b){this.a=a +this.b=b}, +b6E:function b6E(a,b){this.a=a +this.b=b}, +b6D:function b6D(a){this.a=a}, +Lt:function Lt(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,b0,b1,b2,b3){var _=this +_.dH=a +_.E=b +_.al=c +_.cg=d +_.cI=e +_.ez=f +_.C=g +_.a0=h +_.aw=i +_.cu=j +_.fG=k +_.fa=l +_.hQ=m +_.fH=n +_.j7=o +_.iA=p +_.hc=q +_.dR=r +_.iB=null +_.fr=s +_.fx=a0 +_.fy=!1 +_.id=_.go=null +_.k1=a1 +_.k2=a2 +_.k3=a3 +_.k4=a4 +_.ok=$ +_.p1=null +_.p2=$ +_.hP$=a5 +_.mO$=a6 +_.y=a7 +_.z=null +_.Q=!1 +_.at=_.as=null +_.ax=a8 +_.ay=!0 +_.CW=_.ch=null +_.e=a9 +_.a=null +_.b=b0 +_.c=b1 +_.d=b2 +_.$ti=b3}, +aJg:function aJg(a){this.a=a}, +b0P:function b0P(a,b){this.a=a +this.b=b}, +PS:function PS(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +b0K:function b0K(a){this.a=a}, +b0L:function b0L(a){this.a=a}, +b0J:function b0J(a,b,c,d,e,f,g,h,i,j,k,l,m,n){var _=this +_.at=a +_.ax=$ +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f +_.f=g +_.r=h +_.w=i +_.x=j +_.y=k +_.z=l +_.Q=m +_.as=n}, +bDh(a,b,c){var s,r,q,p,o,n,m,l,k,j,i,h +if(a===b)return a +s=A.W(a.a,b.a,c) +r=A.W(a.b,b.b,c) +q=A.ag(a.c,b.c,c) +p=A.W(a.d,b.d,c) +o=A.W(a.e,b.e,c) +n=A.W(a.f,b.f,c) +m=A.ag(a.r,b.r,c) +l=A.fd(a.w,b.w,c) +k=c<0.5 +if(k)j=a.x +else j=b.x +i=A.W(a.y,b.y,c) +h=A.aTn(a.z,b.z,c) +if(k)k=a.Q +else k=b.Q +return new A.w0(s,r,q,p,o,n,m,l,j,i,h,k,A.w2(a.as,b.as,c))}, +w0:function w0(a,b,c,d,e,f,g,h,i,j,k,l,m){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}, +adG:function adG(){}, +MD:function MD(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1){var _=this +_.c=a +_.f=b +_.r=c +_.w=d +_.x=e +_.y=f +_.Q=g +_.as=h +_.at=i +_.ax=j +_.ay=k +_.ch=l +_.cy=m +_.db=n +_.dy=o +_.fr=p +_.fx=q +_.fy=r +_.go=s +_.id=a0 +_.a=a1}, +ajQ:function ajQ(a,b){var _=this +_.te$=a +_.a=null +_.b=b +_.c=null}, +agX:function agX(a,b,c){this.e=a +this.c=b +this.a=c}, +SJ:function SJ(a,b,c){var _=this +_.C=a +_.E$=b +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=c +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +b96:function b96(a,b){this.a=a +this.b=b}, +aoV:function aoV(){}, +bDm(a,b,c){var s,r,q,p,o,n,m,l,k +if(a===b)return a +s=c<0.5 +if(s)r=a.a +else r=b.a +if(s)q=a.b +else q=b.b +if(s)p=a.c +else p=b.c +o=A.ag(a.d,b.d,c) +n=A.ag(a.e,b.e,c) +m=A.fx(a.f,b.f,c) +if(s)l=a.r +else l=b.r +if(s)k=a.w +else k=b.w +if(s)s=a.x +else s=b.x +return new A.Id(r,q,p,o,n,m,l,k,s)}, +Id:function Id(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}, +adK:function adK(){}, +Ie(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2){return new A.cp(a1,c,g,m,o,s,d,n,k,f,j,h,i,q,p,l,a2,a0,b,e,a,r)}, +t4(a6,a7,a8){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=null +if(a6==a7)return a6 +s=a6==null +r=s?a5:a6.a +q=a7==null +p=q?a5:a7.a +p=A.bJ(r,p,a8,A.W7(),t.p8) +r=s?a5:a6.b +o=q?a5:a7.b +n=t.MH +o=A.bJ(r,o,a8,A.dj(),n) +r=s?a5:a6.c +r=A.bJ(r,q?a5:a7.c,a8,A.dj(),n) +m=s?a5:a6.d +m=A.bJ(m,q?a5:a7.d,a8,A.dj(),n) +l=s?a5:a6.e +l=A.bJ(l,q?a5:a7.e,a8,A.dj(),n) +k=s?a5:a6.f +k=A.bJ(k,q?a5:a7.f,a8,A.dj(),n) +j=s?a5:a6.r +i=q?a5:a7.r +h=t.PM +i=A.bJ(j,i,a8,A.Wa(),h) +j=s?a5:a6.w +g=q?a5:a7.w +g=A.bJ(j,g,a8,A.blx(),t.pc) +j=s?a5:a6.x +f=q?a5:a7.x +e=t.tW +f=A.bJ(j,f,a8,A.W9(),e) +j=s?a5:a6.y +j=A.bJ(j,q?a5:a7.y,a8,A.W9(),e) +d=s?a5:a6.z +e=A.bJ(d,q?a5:a7.z,a8,A.W9(),e) +d=s?a5:a6.Q +n=A.bJ(d,q?a5:a7.Q,a8,A.dj(),n) +d=s?a5:a6.as +h=A.bJ(d,q?a5:a7.as,a8,A.Wa(),h) +d=s?a5:a6.at +d=A.bDn(d,q?a5:a7.at,a8) +c=s?a5:a6.ax +b=q?a5:a7.ax +b=A.bJ(c,b,a8,A.bln(),t.KX) +c=a8<0.5 +if(c)a=s?a5:a6.ay +else a=q?a5:a7.ay +if(c)a0=s?a5:a6.ch +else a0=q?a5:a7.ch +if(c)a1=s?a5:a6.CW +else a1=q?a5:a7.CW +if(c)a2=s?a5:a6.cx +else a2=q?a5:a7.cx +if(c)a3=s?a5:a6.cy +else a3=q?a5:a7.cy +a4=s?a5:a6.db +a4=A.Ag(a4,q?a5:a7.db,a8) +if(c)s=s?a5:a6.dx +else s=q?a5:a7.dx +return A.Ie(a4,a2,o,i,a3,j,r,n,h,e,f,a,m,g,l,b,d,s,k,a1,p,a0)}, +bDn(a,b,c){if(a==null&&b==null)return null +return new A.aho(a,b,c)}, +cp:function cp(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2){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 +_.CW=r +_.cx=s +_.cy=a0 +_.db=a1 +_.dx=a2}, +aho:function aho(a,b,c){this.a=a +this.b=b +this.c=c}, +adM:function adM(){}, +AB(a,b,c,d){var s +if(d<=1)return a +else if(d>=3)return c +else if(d<=2){s=A.fx(a,b,d-1) +s.toString +return s}s=A.fx(b,c,d-2) +s.toString +return s}, +If:function If(){}, +PW:function PW(a,b,c){var _=this +_.r=_.f=_.e=_.d=null +_.dL$=a +_.b_$=b +_.a=null +_.b=c +_.c=null}, +b1m:function b1m(){}, +b1j:function b1j(a,b,c){this.a=a +this.b=b +this.c=c}, +b1k:function b1k(a,b){this.a=a +this.b=b}, +b1l:function b1l(a,b,c){this.a=a +this.b=b +this.c=c}, +b0X:function b0X(){}, +b0Y:function b0Y(){}, +b0Z:function b0Z(){}, +b19:function b19(){}, +b1c:function b1c(){}, +b1d:function b1d(){}, +b1e:function b1e(){}, +b1f:function b1f(){}, +b1g:function b1g(){}, +b1h:function b1h(){}, +b1i:function b1i(){}, +b1_:function b1_(){}, +b10:function b10(){}, +b11:function b11(){}, +b1a:function b1a(a){this.a=a}, +b0V:function b0V(a){this.a=a}, +b1b:function b1b(a){this.a=a}, +b0U:function b0U(a){this.a=a}, +b12:function b12(){}, +b13:function b13(){}, +b14:function b14(){}, +b15:function b15(){}, +b16:function b16(){}, +b17:function b17(){}, +b18:function b18(a){this.a=a}, +b0W:function b0W(){}, +aij:function aij(a){this.a=a}, +agY:function agY(a,b,c){this.e=a +this.c=b +this.a=c}, +SK:function SK(a,b,c){var _=this +_.C=a +_.E$=b +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=c +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +b97:function b97(a,b){this.a=a +this.b=b}, +UX:function UX(){}, +boh(a){var s,r,q,p,o +a.ae(t.Xj) +s=A.r(a) +r=s.y1 +if(r.at==null){q=r.at +if(q==null)q=s.ax +p=r.gdE(r) +o=r.gcG(r) +r=A.bog(!1,r.w,q,r.x,r.y,r.b,r.Q,r.z,r.d,r.ax,r.a,p,o,r.as,r.c)}r.toString +return r}, +bog(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){return new A.XO(k,f,o,i,l,m,!1,b,d,e,h,g,n,c,j)}, +au6:function au6(a,b){this.a=a +this.b=b}, +au5:function au5(a,b){this.a=a +this.b=b}, +XO:function XO(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){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}, +adN:function adN(){}, +pI(a,b,c,d,e){return new A.XW(c,e,b,d,a,null)}, +XW:function XW(a,b,c,d,e,f){var _=this +_.c=a +_.r=b +_.x=c +_.y=d +_.Q=e +_.a=f}, +b1q:function b1q(a,b,c,d,e,f,g,h){var _=this +_.w=a +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f +_.f=g +_.r=h}, +b1r:function b1r(a,b,c,d,e,f,g,h){var _=this +_.w=a +_.x=$ +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f +_.f=g +_.r=h}, +bDt(a,b,c){var s,r,q,p,o,n +if(a===b&&!0)return a +if(c<0.5)s=a.a +else s=b.a +r=A.W(a.b,b.b,c) +q=A.W(a.c,b.c,c) +p=A.W(a.d,b.d,c) +o=A.ag(a.e,b.e,c) +n=A.fx(a.f,b.f,c) +return new A.AF(s,r,q,p,o,n,A.fd(a.r,b.r,c))}, +AF:function AF(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +adP:function adP(){}, +b1N:function b1N(a,b){this.a=a +this.b=b}, +It:function It(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.x=g +_.y=h +_.as=i +_.at=j +_.ax=k +_.ch=l +_.CW=m +_.cx=n +_.cy=o +_.db=p +_.dx=q +_.a=r}, +ae1:function ae1(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){var _=this +_.d=a +_.e=null +_.k9$=b +_.mP$=c +_.oK$=d +_.uY$=e +_.uZ$=f +_.tc$=g +_.v_$=h +_.td$=i +_.EV$=j +_.qK$=k +_.pE$=l +_.pF$=m +_.dL$=n +_.b_$=o +_.a=null +_.b=p +_.c=null}, +b1L:function b1L(a){this.a=a}, +b1M:function b1M(a,b){this.a=a +this.b=b}, +ae_:function ae_(a){var _=this +_.at=_.as=_.Q=_.z=_.y=_.x=_.w=_.r=_.f=_.e=_.d=_.c=_.b=_.a=_.fy=_.fx=_.fr=_.dy=_.dx=_.db=null +_.ak$=0 +_.ah$=a +_.aT$=_.bG$=0 +_.bK$=!1}, +b1y:function b1y(a,b,c,d,e,f,g,h,i,j,k){var _=this +_.y=a +_.z=b +_.a=c +_.b=d +_.c=e +_.d=f +_.e=g +_.f=h +_.r=i +_.w=j +_.x=k}, +b1B:function b1B(a){this.a=a}, +b1z:function b1z(a){this.a=a}, +b1A:function b1A(a){this.a=a}, +b1C:function b1C(a,b,c,d,e,f,g,h,i,j,k){var _=this +_.y=a +_.z=b +_.a=c +_.b=d +_.c=e +_.d=f +_.e=g +_.f=h +_.r=i +_.w=j +_.x=k}, +b1G:function b1G(a){this.a=a}, +b1E:function b1E(a){this.a=a}, +b1D:function b1D(a){this.a=a}, +b1F:function b1F(a){this.a=a}, +UZ:function UZ(){}, +V_:function V_(){}, +AI(a,b,c,d,e,f,g,h,i){return new A.Iu(i,e,a,g,f,c,b,h,d)}, +b1O:function b1O(a,b){this.a=a +this.b=b}, +Iu:function Iu(a,b,c,d,e,f,g,h,i){var _=this +_.c=a +_.d=b +_.f=c +_.cy=d +_.db=e +_.fr=f +_.fy=g +_.id=h +_.a=i}, +bDA(a,b,c){var s,r,q,p,o,n,m,l +if(a===b&&!0)return a +s=c<0.5 +if(s)r=a.a +else r=b.a +q=t.MH +p=A.bJ(a.b,b.b,c,A.dj(),q) +o=A.bJ(a.c,b.c,c,A.dj(),q) +q=A.bJ(a.d,b.d,c,A.dj(),q) +n=A.ag(a.e,b.e,c) +if(s)m=a.f +else m=b.f +if(s)s=a.r +else s=b.r +l=t.KX.a(A.fd(a.w,b.w,c)) +return new A.AK(r,p,o,q,n,m,s,l,A.bDz(a.x,b.x,c))}, +bDz(a,b,c){if(a==null||b==null)return null +if(a===b)return a +return A.bn(a,b,c)}, +bom(a){var s +a.ae(t.ES) +s=A.r(a) +return s.c5}, +AK:function AK(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}, +ae2:function ae2(){}, +bhS(a,b,c){return new A.AM(b,c,a,null)}, +brw(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,b0,b1,b2,b3,b4,b5,b6){return new A.MA(h,b,q,s,r,B.V_,a1,k,i,a2,a4,a5,p,l,a6,b4,b1,a9,f,n,!1,g,d,a3,b6,a0,m,a8,b2,o,a7,b0,e,c,!0,b3,null)}, +bkE(a){var s,r,q +if(a==null)s=B.Y +else{s=a.b +s.toString +s=t.q.a(s).a +r=a.gq(a) +q=s.a +s=s.b +r=new A.I(q,s,q+r.a,s+r.b) +s=r}return s}, +bPl(a,b,c,d,e){var s,r,q,p=a.a-c.gdD() +c.gcC(c) +c.gcH(c) +s=d.a2(0,new A.l(c.a,c.b)) +r=b.a +q=Math.min(p*0.499,Math.max(r,24+r/2)) +switch(e.a){case 1:return s.a>=p-q +case 0:return s.a<=q}}, +AM:function AM(a,b,c,d){var _=this +_.d=a +_.e=b +_.as=c +_.a=d}, +MA:function MA(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,b0,b1,b2,b3,b4,b5,b6,b7){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.x=g +_.y=h +_.z=i +_.Q=j +_.at=k +_.ax=l +_.ay=m +_.ch=n +_.CW=o +_.cx=p +_.cy=q +_.db=r +_.dx=s +_.dy=a0 +_.fr=a1 +_.fx=a2 +_.fy=a3 +_.go=a4 +_.id=a5 +_.k1=a6 +_.k2=a7 +_.k3=a8 +_.k4=a9 +_.ok=b0 +_.p1=b1 +_.p2=b2 +_.p3=b3 +_.p4=b4 +_.R8=b5 +_.RG=b6 +_.a=b7}, +St:function St(a,b,c,d){var _=this +_.Q=_.z=_.y=_.x=_.w=_.r=_.f=_.e=_.d=$ +_.as=!1 +_.dL$=a +_.b_$=b +_.te$=c +_.a=null +_.b=d +_.c=null}, +b8x:function b8x(a){this.a=a}, +b8w:function b8w(a){this.a=a}, +b8y:function b8y(a){this.a=a}, +b8A:function b8A(a){this.a=a}, +b8B:function b8B(a){this.a=a}, +b8C:function b8C(a){this.a=a}, +b8z:function b8z(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +agT:function agT(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +ae5:function ae5(a,b,c){this.e=a +this.c=b +this.a=c}, +akb:function akb(a,b,c){var _=this +_.C=a +_.E$=b +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=c +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +b8N:function b8N(a,b){this.a=a +this.b=b}, +ae7:function ae7(a,b,c,d,e,f,g,h,i){var _=this +_.d=a +_.e=b +_.f=c +_.r=d +_.w=e +_.x=f +_.y=g +_.z=h +_.a=i}, +pg:function pg(a,b){this.a=a +this.b=b}, +ae6:function ae6(a,b,c,d,e,f,g,h,i,j,k){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=h +_.x=i +_.y=j +_.z=k}, +SB:function SB(a,b,c,d,e,f,g,h,i,j,k){var _=this +_.B=a +_.Z=b +_.av=_.Y=$ +_.ar=c +_.aG=d +_.aS=e +_.b8=f +_.b6=g +_.bp=h +_.cc=i +_.d1$=j +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=k +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +b8Q:function b8Q(a,b){this.a=a +this.b=b}, +b8R:function b8R(a,b){this.a=a +this.b=b}, +b8O:function b8O(a){this.a=a}, +b8P:function b8P(a){this.a=a}, +b1Q:function b1Q(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +b1P:function b1P(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3){var _=this +_.dx=a +_.dy=b +_.fx=_.fr=$ +_.a=c +_.b=d +_.c=e +_.d=f +_.e=g +_.f=h +_.r=i +_.w=j +_.x=k +_.y=l +_.z=m +_.Q=n +_.as=o +_.at=p +_.ax=q +_.ay=r +_.ch=s +_.CW=a0 +_.cx=a1 +_.cy=a2 +_.db=a3}, +aoU:function aoU(){}, +Vr:function Vr(){}, +aoY:function aoY(){}, +boq(a){var s +a.ae(t.aL) +s=A.r(a) +return s.cO}, +bop(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1){return new A.AN(d,a,e,f,o,n,q,a1,p,!0,c,i,k,a0,r,j,m,b,g,l,h)}, +bDF(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 +if(a3===a4)return a3 +s=A.bJ(a3.a,a4.a,a5,A.dj(),t.MH) +r=A.W(a3.b,a4.b,a5) +q=A.W(a3.c,a4.c,a5) +p=A.W(a3.d,a4.d,a5) +o=A.W(a3.e,a4.e,a5) +n=A.W(a3.f,a4.f,a5) +m=A.W(a3.r,a4.r,a5) +l=A.W(a3.w,a4.w,a5) +k=A.W(a3.x,a4.x,a5) +j=a5<0.5 +if(j)i=a3.y!==!1 +else i=a4.y!==!1 +h=A.W(a3.z,a4.z,a5) +g=A.fx(a3.Q,a4.Q,a5) +f=A.fx(a3.as,a4.as,a5) +e=A.bDE(a3.at,a4.at,a5) +d=A.bDD(a3.ax,a4.ax,a5) +c=A.c1(a3.ay,a4.ay,a5) +b=A.c1(a3.ch,a4.ch,a5) +if(j){j=a3.CW +if(j==null)j=B.aB}else{j=a4.CW +if(j==null)j=B.aB}a=A.ag(a3.cx,a4.cx,a5) +a0=A.ag(a3.cy,a4.cy,a5) +a1=a3.db +if(a1==null)a2=a4.db!=null +else a2=!0 +if(a2)a1=A.qf(a1,a4.db,a5) +else a1=null +return A.bop(r,j,h,s,q,p,a,a1,g,c,f,a0,b,n,o,k,m,d,i,e,l)}, +bDE(a,b,c){var s=a==null +if(s&&b==null)return null +if(s){s=b.a +return A.bn(new A.b9(A.K(0,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255),0,B.M,-1),b,c)}if(b==null){s=a.a +return A.bn(new A.b9(A.K(0,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255),0,B.M,-1),a,c)}return A.bn(a,b,c)}, +bDD(a,b,c){if(a==null&&b==null)return null +return t.KX.a(A.fd(a,b,c))}, +AN:function AN(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1){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 +_.CW=r +_.cx=s +_.cy=a0 +_.db=a1}, +ae8:function ae8(){}, +b1R:function b1R(a,b){this.a=a +this.b=b}, +Y8:function Y8(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.r=c +_.x=d +_.a=e}, +b1S:function b1S(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5){var _=this +_.dx=a +_.dy=b +_.fr=c +_.fx=d +_.go=_.fy=$ +_.a=e +_.b=f +_.c=g +_.d=h +_.e=i +_.f=j +_.r=k +_.w=l +_.x=m +_.y=n +_.z=o +_.Q=p +_.as=q +_.at=r +_.ax=s +_.ay=a0 +_.ch=a1 +_.CW=a2 +_.cx=a3 +_.cy=a4 +_.db=a5}, +b1T:function b1T(a){this.a=a}, +bhW(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,b0,b1){return new A.tf(b,a1,k,a2,l,a4,m,a5,n,b0,q,b1,r,c,h,d,i,a,g,a7,o,a9,p,s,a0,a6,a3,f,j,e,a8)}, +bDS(b7,b8,b9){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 +if(b7===b8)return b7 +s=b9<0.5?b7.a:b8.a +r=b7.b +q=b8.b +p=A.W(r,q,b9) +p.toString +o=b7.c +n=b8.c +m=A.W(o,n,b9) +m.toString +l=b7.d +if(l==null)l=r +k=b8.d +l=A.W(l,k==null?q:k,b9) +k=b7.e +if(k==null)k=o +j=b8.e +k=A.W(k,j==null?n:j,b9) +j=b7.f +i=b8.f +h=A.W(j,i,b9) +h.toString +g=b7.r +f=b8.r +e=A.W(g,f,b9) +e.toString +d=b7.w +if(d==null)d=j +c=b8.w +d=A.W(d,c==null?i:c,b9) +c=b7.x +if(c==null)c=g +b=b8.x +c=A.W(c,b==null?f:b,b9) +b=b7.y +a=b==null +a0=a?j:b +a1=b8.y +a2=a1==null +a0=A.W(a0,a2?i:a1,b9) +a3=b7.z +a4=a3==null +a5=a4?g:a3 +a6=b8.z +a7=a6==null +a5=A.W(a5,a7?f:a6,b9) +a8=b7.Q +if(a8==null)j=a?j:b +else j=a8 +b=b8.Q +if(b==null)i=a2?i:a1 +else i=b +i=A.W(j,i,b9) +j=b7.as +if(j==null)j=a4?g:a3 +g=b8.as +if(g==null)g=a7?f:a6 +g=A.W(j,g,b9) +j=b7.at +f=b8.at +b=A.W(j,f,b9) +b.toString +a=b7.ax +a1=b8.ax +a2=A.W(a,a1,b9) +a2.toString +a3=b7.ay +j=a3==null?j:a3 +a3=b8.ay +j=A.W(j,a3==null?f:a3,b9) +f=b7.ch +if(f==null)f=a +a=b8.ch +f=A.W(f,a==null?a1:a,b9) +a=A.W(b7.CW,b8.CW,b9) +a.toString +a1=b7.cx +a3=b8.cx +a4=A.W(a1,a3,b9) +a4.toString +a6=b7.cy +a7=b8.cy +a8=A.W(a6,a7,b9) +a8.toString +a9=b7.db +b0=b8.db +b1=A.W(a9,b0,b9) +b1.toString +b2=b7.dx +if(b2==null)b2=a6 +b3=b8.dx +b2=A.W(b2,b3==null?a7:b3,b9) +b3=b7.dy +if(b3==null)b3=a9 +b4=b8.dy +b3=A.W(b3,b4==null?b0:b4,b9) +b4=b7.fr +if(b4==null)b4=a1 +b5=b8.fr +b4=A.W(b4,b5==null?a3:b5,b9) +b5=b7.fx +a1=b5==null?a1:b5 +b5=b8.fx +a1=A.W(a1,b5==null?a3:b5,b9) +a3=b7.fy +if(a3==null)a3=B.v +b5=b8.fy +a3=A.W(a3,b5==null?B.v:b5,b9) +b5=b7.go +if(b5==null)b5=B.v +b6=b8.go +b5=A.W(b5,b6==null?B.v:b6,b9) +b6=b7.id +a9=b6==null?a9:b6 +b6=b8.id +a9=A.W(a9,b6==null?b0:b6,b9) +b0=b7.k1 +a6=b0==null?a6:b0 +b0=b8.k1 +a6=A.W(a6,b0==null?a7:b0,b9) +a7=b7.k2 +o=a7==null?o:a7 +a7=b8.k2 +o=A.W(o,a7==null?n:a7,b9) +n=b7.k3 +r=n==null?r:n +n=b8.k3 +return A.bhW(a,s,b,j,o,a9,a4,a2,f,a6,m,k,e,c,b1,b3,a5,g,b4,a1,p,l,b5,h,d,a3,a8,A.W(r,n==null?q:n,b9),b2,a0,i)}, +tf:function tf(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,b0,b1){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 +_.CW=r +_.cx=s +_.cy=a0 +_.db=a1 +_.dx=a2 +_.dy=a3 +_.fr=a4 +_.fx=a5 +_.fy=a6 +_.go=a7 +_.id=a8 +_.k1=a9 +_.k2=b0 +_.k3=b1}, +aec:function aec(){}, +CJ:function CJ(a,b){this.b=a +this.a=b}, +a38:function a38(a,b){this.b=a +this.a=b}, +bEn(a,b,c){var s,r,q,p,o,n,m,l,k,j,i,h,g,f +if(a===b)return a +s=A.axe(a.a,b.a,c) +r=t.MH +q=A.bJ(a.b,b.b,c,A.dj(),r) +p=A.ag(a.c,b.c,c) +o=A.ag(a.d,b.d,c) +n=A.c1(a.e,b.e,c) +r=A.bJ(a.f,b.f,c,A.dj(),r) +m=A.ag(a.r,b.r,c) +l=A.c1(a.w,b.w,c) +k=A.ag(a.x,b.x,c) +j=A.ag(a.y,b.y,c) +i=A.ag(a.z,b.z,c) +h=A.ag(a.Q,b.Q,c) +g=c<0.5 +f=g?a.as:b.as +g=g?a.at:b.at +return new A.J6(s,q,p,o,n,r,m,l,k,j,i,h,f,g)}, +J6:function J6(a,b,c,d,e,f,g,h,i,j,k,l,m,n){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}, +aeX:function aeX(){}, +bEt(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,b3,b4 +if(b5===b6&&!0)return b5 +s=A.W(b5.a,b6.a,b7) +r=A.ag(b5.b,b6.b,b7) +q=A.W(b5.c,b6.c,b7) +p=A.W(b5.d,b6.d,b7) +o=A.fd(b5.e,b6.e,b7) +n=A.W(b5.f,b6.f,b7) +m=A.W(b5.r,b6.r,b7) +l=A.c1(b5.w,b6.w,b7) +k=A.c1(b5.x,b6.x,b7) +j=A.c1(b5.y,b6.y,b7) +i=A.c1(b5.z,b6.z,b7) +h=t.MH +g=A.bJ(b5.Q,b6.Q,b7,A.dj(),h) +f=A.bJ(b5.as,b6.as,b7,A.dj(),h) +e=A.bJ(b5.at,b6.at,b7,A.dj(),h) +d=A.bJ(b5.ax,b6.ax,b7,A.dj(),h) +c=A.bJ(b5.ay,b6.ay,b7,A.dj(),h) +b=A.bEs(b5.ch,b6.ch,b7) +a=A.c1(b5.CW,b6.CW,b7) +a0=A.bJ(b5.cx,b6.cx,b7,A.dj(),h) +a1=A.bJ(b5.cy,b6.cy,b7,A.dj(),h) +a2=A.bJ(b5.db,b6.db,b7,A.dj(),h) +a3=A.W(b5.dx,b6.dx,b7) +a4=A.ag(b5.dy,b6.dy,b7) +a5=A.W(b5.fr,b6.fr,b7) +a6=A.W(b5.fx,b6.fx,b7) +a7=A.fd(b5.fy,b6.fy,b7) +a8=A.W(b5.go,b6.go,b7) +a9=A.W(b5.id,b6.id,b7) +b0=A.c1(b5.k1,b6.k1,b7) +b1=A.c1(b5.k2,b6.k2,b7) +b2=A.W(b5.k3,b6.k3,b7) +h=A.bJ(b5.k4,b6.k4,b7,A.dj(),h) +b3=A.W(b5.ok,b6.ok,b7) +if(b7<0.5)b4=b5.p1 +else b4=b6.p1 +return new A.J7(s,r,q,p,o,n,m,l,k,j,i,g,f,e,d,c,b,a,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,b0,b1,b2,h,b3,b4)}, +bEs(a,b,c){var s +if(a==b)return a +if(a==null){s=b.a +return A.bn(new A.b9(A.K(0,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255),0,B.M,-1),b,c)}s=a.a +return A.bn(a,new A.b9(A.K(0,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255),0,B.M,-1),c)}, +J7:function J7(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,b0,b1,b2,b3,b4){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 +_.CW=r +_.cx=s +_.cy=a0 +_.db=a1 +_.dx=a2 +_.dy=a3 +_.fr=a4 +_.fx=a5 +_.fy=a6 +_.go=a7 +_.id=a8 +_.k1=a9 +_.k2=b0 +_.k3=b1 +_.k4=b2 +_.ok=b3 +_.p1=b4}, +aeZ:function aeZ(){}, +afa:function afa(){}, +axp:function axp(){}, +aoj:function aoj(){}, +a00:function a00(a,b,c){this.c=a +this.d=b +this.a=c}, +bED(a,b,c){var s=null +return new A.Be(b,A.O(c,s,B.ac,s,s,B.KM.co(A.r(a).ax.a===B.am?B.n:B.a8),s,s),s)}, +Be:function Be(a,b,c){this.c=a +this.d=b +this.a=c}, +kP(a,b,c,d){return new A.Af(d,b,c,a,null)}, +bO0(a,b,c,d){return new A.cS(A.c_(B.cx,b,null),!1,d,null)}, +fk(a,b,c){var s,r=A.j5(b,!0).c +r.toString +s=A.Kr(b,r) +r=A.j5(b,!0) +return r.Bk(A.bEH(null,B.a6,!0,null,a,b,null,s,B.p7,!0,c),c)}, +bEH(a,b,c,d,e,f,g,h,i,j,k){var s,r,q,p,o,n,m=null,l=A.A(f,B.ax,t.D) +l.toString +l=l.gaE() +s=A.a([],t.Zt) +r=$.a9 +q=A.lX(B.bN) +p=A.a([],t.wi) +o=A.ed(m,t.v) +n=$.a9 +return new A.Jd(new A.axq(e,h,!0),!0,l,b,B.cT,A.bRN(),a,m,i,s,new A.bo(m,k.h("bo>")),new A.bo(m,t.C),new A.oD(),m,0,new A.aD(new A.a8(r,k.h("a8<0?>")),k.h("aD<0?>")),q,p,B.fD,o,new A.aD(new A.a8(n,k.h("a8<0?>")),k.h("aD<0?>")),k.h("Jd<0>"))}, +btF(a){var s=null +return new A.b2K(a,A.r(a).p3,A.r(a).ok,s,24,s,s,B.es,B.X,s,s,s,s)}, +btG(a){var s=null +return new A.b2L(a,s,6,s,s,B.Jg,B.X,s,s,s,s)}, +a06:function a06(a,b,c,d,e,f,g,h,i,j){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.x=e +_.y=f +_.z=g +_.Q=h +_.as=i +_.a=j}, +Af:function Af(a,b,c,d,e){var _=this +_.f=a +_.x=b +_.y=c +_.Q=d +_.a=e}, +Jd:function Jd(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2){var _=this +_.dH=a +_.E=b +_.al=c +_.cg=d +_.cI=e +_.ez=f +_.C=g +_.fr=h +_.fx=i +_.fy=!1 +_.id=_.go=null +_.k1=j +_.k2=k +_.k3=l +_.k4=m +_.ok=$ +_.p1=null +_.p2=$ +_.hP$=n +_.mO$=o +_.y=p +_.z=null +_.Q=!1 +_.at=_.as=null +_.ax=q +_.ay=!0 +_.CW=_.ch=null +_.e=r +_.a=null +_.b=s +_.c=a0 +_.d=a1 +_.$ti=a2}, +axq:function axq(a,b,c){this.a=a +this.b=b +this.c=c}, +b2K:function b2K(a,b,c,d,e,f,g,h,i,j,k,l,m){var _=this +_.z=a +_.Q=b +_.as=c +_.a=d +_.b=e +_.c=f +_.d=g +_.e=h +_.f=i +_.r=j +_.w=k +_.x=l +_.y=m}, +b2L:function b2L(a,b,c,d,e,f,g,h,i,j,k){var _=this +_.z=a +_.as=_.Q=$ +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f +_.f=g +_.r=h +_.w=i +_.x=j +_.y=k}, +bEI(a,b,c){var s,r,q,p,o,n,m,l,k +if(a===b&&!0)return a +s=A.W(a.a,b.a,c) +r=A.ag(a.b,b.b,c) +q=A.W(a.c,b.c,c) +p=A.W(a.d,b.d,c) +o=A.fd(a.e,b.e,c) +n=A.Ag(a.f,b.f,c) +m=A.W(a.y,b.y,c) +l=A.c1(a.r,b.r,c) +k=A.c1(a.w,b.w,c) +return new A.Bf(s,r,q,p,o,n,l,k,A.fx(a.x,b.x,c),m)}, +Bf:function Bf(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}, +afd:function afd(){}, +boP(a,b,c){var s,r=A.bij(a),q=A.r(a).y?A.bko(a):A.bkn(a),p=r.a,o=p +if(o==null)o=q==null?null:q.ga5(q) +s=c +if(o==null)return new A.b9(B.v,s,B.M,-1) +return new A.b9(o,s,B.M,-1)}, +bkn(a){return new A.b2N(a,null,16,0,0,0)}, +bko(a){return new A.b2O(a,null,16,1,0,0)}, +Bi:function Bi(a,b){this.c=a +this.a=b}, +aaR:function aaR(a){this.a=a}, +b2N:function b2N(a,b,c,d,e,f){var _=this +_.f=a +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f}, +b2O:function b2O(a,b,c,d,e,f){var _=this +_.f=a +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f}, +bEU(a,b,c){var s,r,q,p +if(a===b&&!0)return a +s=A.W(a.a,b.a,c) +r=A.ag(a.b,b.b,c) +q=A.ag(a.c,b.c,c) +p=A.ag(a.d,b.d,c) +return new A.Bj(s,r,q,p,A.ag(a.e,b.e,c))}, +bij(a){var s +a.ae(t.Jj) +s=A.r(a) +return s.bQ}, +Bj:function Bj(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +afi:function afi(){}, +bis(a,b,c){return new A.Js(b,c,a,null)}, +a0o:function a0o(a,b){this.a=a +this.b=b}, +Js:function Js(a,b,c,d){var _=this +_.r=a +_.w=b +_.x=c +_.a=d}, +QC:function QC(a,b,c){this.f=a +this.b=b +this.a=c}, +Jt:function Jt(a,b,c,d,e,f,g,h,i){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.x=g +_.y=h +_.a=i}, +Bn:function Bn(a,b,c,d,e,f){var _=this +_.d=null +_.e=a +_.f=$ +_.r=b +_.w=!1 +_.x=$ +_.y=c +_.f9$=d +_.c4$=e +_.a=null +_.b=f +_.c=null}, +az0:function az0(){}, +b2R:function b2R(a,b,c,d,e,f,g,h,i){var _=this +_.x=a +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f +_.f=g +_.r=h +_.w=i}, +b2S:function b2S(a,b,c,d,e,f,g,h,i){var _=this +_.x=a +_.y=$ +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f +_.f=g +_.r=h +_.w=i}, +QD:function QD(){}, +bFk(a,b,c){var s,r,q,p,o,n,m +if(a===b)return a +s=A.W(a.a,b.a,c) +r=A.W(a.b,b.b,c) +q=A.ag(a.c,b.c,c) +p=A.W(a.d,b.d,c) +o=A.W(a.e,b.e,c) +n=A.fd(a.f,b.f,c) +m=A.fd(a.r,b.r,c) +return new A.Bo(s,r,q,p,o,n,m,A.ag(a.w,b.w,c))}, +bpf(a){var s +a.ae(t.ty) +s=A.r(a) +return s.bO}, +Bo:function Bo(a,b,c,d,e,f,g,h){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=h}, +afx:function afx(){}, +afy:function afy(a,b,c,d,e,f,g,h){var _=this +_.b=a +_.c=b +_.d=c +_.e=d +_.f=e +_.r=f +_.w=g +_.a=h}, +FK:function FK(a,b,c,d,e,f,g,h){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.a=g +_.$ti=h}, +FL:function FL(a,b){var _=this +_.a=null +_.b=a +_.c=null +_.$ti=b}, +FJ:function FJ(a,b,c,d,e,f,g,h,i){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.x=g +_.a=h +_.$ti=i}, +QF:function QF(a,b){var _=this +_.e=_.d=$ +_.a=null +_.b=a +_.c=null +_.$ti=b}, +b3_:function b3_(a){this.a=a}, +afz:function afz(a,b,c,d){var _=this +_.b=a +_.c=b +_.d=c +_.$ti=d}, +lt:function lt(a,b){this.a=a +this.$ti=b}, +b6C:function b6C(a,b,c){this.a=a +this.c=b +this.d=c}, +QG:function QG(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9){var _=this +_.dH=a +_.E=b +_.al=c +_.cg=d +_.cI=e +_.ez=f +_.C=g +_.a0=h +_.aw=i +_.cu=j +_.fG=k +_.fa=l +_.hQ=m +_.fH=null +_.j7=n +_.fr=o +_.fx=p +_.fy=!1 +_.id=_.go=null +_.k1=q +_.k2=r +_.k3=s +_.k4=a0 +_.ok=$ +_.p1=null +_.p2=$ +_.hP$=a1 +_.mO$=a2 +_.y=a3 +_.z=null +_.Q=!1 +_.at=_.as=null +_.ax=a4 +_.ay=!0 +_.CW=_.ch=null +_.e=a5 +_.a=null +_.b=a6 +_.c=a7 +_.d=a8 +_.$ti=a9}, +b31:function b31(a){this.a=a}, +b32:function b32(){}, +b33:function b33(){}, +FM:function FM(a,b,c,d,e,f,g,h,i,j,k){var _=this +_.c=a +_.d=b +_.f=c +_.r=d +_.w=e +_.y=f +_.Q=g +_.as=h +_.at=i +_.a=j +_.$ti=k}, +b30:function b30(a,b,c){this.a=a +this.b=b +this.c=c}, +Gg:function Gg(a,b,c,d,e){var _=this +_.e=a +_.f=b +_.c=c +_.a=d +_.$ti=e}, +ako:function ako(a,b,c){var _=this +_.C=a +_.E$=b +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=c +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +QE:function QE(a,b,c){this.c=a +this.d=b +this.a=c}, +pU:function pU(a,b,c,d,e){var _=this +_.r=a +_.c=b +_.d=c +_.a=d +_.$ti=e}, +Ju:function Ju(a,b){this.b=a +this.a=b}, +Bp:function Bp(a,b,c,d,e,f,g,h){var _=this +_.c=a +_.d=b +_.e=c +_.r=d +_.as=e +_.CW=f +_.a=g +_.$ti=h}, +FI:function FI(a,b){var _=this +_.r=_.f=_.e=_.d=null +_.w=$ +_.a=null +_.b=a +_.c=null +_.$ti=b}, +b2Y:function b2Y(a){this.a=a}, +b2Z:function b2Z(a){this.a=a}, +b2W:function b2W(a){this.a=a}, +b2U:function b2U(a,b){this.a=a +this.b=b}, +b2V:function b2V(a){this.a=a}, +b2X:function b2X(a){this.a=a}, +V9:function V9(){}, +bFl(a,b,c){var s,r +if(a===b&&!0)return a +s=A.c1(a.a,b.a,c) +if(c<0.5)r=a.b +else r=b.b +return new A.Jv(s,r,A.bjf(a.c,b.c,c))}, +Jv:function Jv(a,b,c){this.a=a +this.b=b +this.c=c}, +afA:function afA(){}, +wD(a,b,c,d,e,f,g,h,i,j,k){return new A.By(i,h,g,f,k,c,d,!1,j,!0,b,e)}, +bvI(a){var s=A.r(a).y?24:16,r=s/2,q=r/2,p=A.cT(a,B.bb) +p=p==null?null:p.c +if(p==null)p=1 +return A.AB(new A.aK(s,0,s,0),new A.aK(r,0,r,0),new A.aK(q,0,q,0),p)}, +bMm(a,b,c){var s=null +return new A.afM(c,s,s,s,s,B.l,s,!1,s,!0,new A.afN(b,a,s),s)}, +By:function By(a,b,c,d,e,f,g,h,i,j,k,l){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.x=g +_.y=h +_.z=i +_.Q=j +_.as=k +_.a=l}, +QP:function QP(a,b){this.a=a +this.b=b}, +afJ:function afJ(a){this.a=a}, +afH:function afH(a){this.a=a}, +afI:function afI(a,b){this.a=a +this.b=b}, +afM:function afM(a,b,c,d,e,f,g,h,i,j,k,l){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.x=g +_.y=h +_.z=i +_.Q=j +_.as=k +_.a=l}, +afN:function afN(a,b,c){this.c=a +this.d=b +this.a=c}, +afK:function afK(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3){var _=this +_.dy=a +_.fr=$ +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f +_.f=g +_.r=h +_.w=i +_.x=j +_.y=k +_.z=l +_.Q=m +_.as=n +_.at=o +_.ax=p +_.ay=q +_.ch=r +_.CW=s +_.cx=a0 +_.cy=a1 +_.db=a2 +_.dx=a3}, +b34:function b34(a){this.a=a}, +b36:function b36(a){this.a=a}, +b38:function b38(a){this.a=a}, +b35:function b35(){}, +b37:function b37(){}, +aom:function aom(){}, +aon:function aon(){}, +aoo:function aoo(){}, +aop:function aop(){}, +bFv(a,b,c){if(a===b)return a +return new A.JA(A.t4(a.a,b.a,c))}, +JA:function JA(a){this.a=a}, +afL:function afL(){}, +bpp(a,b,c){if(b!=null&&!b.l(0,B.u))return A.tg(A.K(B.e.bi(255*A.bFw(c)),b.gk(b)>>>16&255,b.gk(b)>>>8&255,b.gk(b)&255),a) +return a}, +bFw(a){var s,r,q,p,o,n +if(a<0)return 0 +for(s=0;r=B.wh[s],q=r.a,a>=q;){if(a===q||s+1===6)return r.b;++s}p=B.wh[s-1] +o=p.a +n=p.b +return n+(a-o)/(q-o)*(r.b-n)}, +bpo(a,b,c){var s,r=A.r(a) +if(c>0)if(r.a){s=r.ax +if(s.a===B.am){s=s.cy.a +s=A.K(255,b.gk(b)>>>16&255,b.gk(b)>>>8&255,b.gk(b)&255).l(0,A.K(255,s>>>16&255,s>>>8&255,s&255))}else s=!1}else s=!1 +else s=!1 +if(s)return A.tg(A.bpn(r.ax.db,c),b) +return b}, +bpn(a,b){var s=a.a +return A.K(B.e.bi(255*((4.5*Math.log(b+1)+2)/100)),s>>>16&255,s>>>8&255,s&255)}, +rg:function rg(a,b){this.a=a +this.b=b}, +biy(a,b,c,d,e,f){return new A.JI(f,a,c,b,e,d,null)}, +aAR:function aAR(){this.a=null}, +JI:function JI(a,b,c,d,e,f,g){var _=this +_.d=a +_.r=b +_.z=c +_.ch=d +_.cx=e +_.db=f +_.a=g}, +QT:function QT(a,b,c,d,e,f,g){var _=this +_.d=a +_.e=b +_.f=c +_.r=d +_.at=_.as=_.Q=_.z=_.y=_.x=_.w=$ +_.ax=!1 +_.ay=$ +_.f9$=e +_.c4$=f +_.a=null +_.b=g +_.c=null}, +b3k:function b3k(a){this.a=a}, +b3j:function b3j(a){this.a=a}, +b3i:function b3i(){}, +b3g:function b3g(a,b,c,d,e,f,g,h,i,j,k,l){var _=this +_.as=a +_.ax=_.at=$ +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f +_.f=g +_.r=h +_.w=i +_.x=j +_.y=k +_.z=l}, +b3h:function b3h(a,b,c,d,e,f,g,h,i,j,k,l){var _=this +_.as=a +_.ax=_.at=$ +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f +_.f=g +_.r=h +_.w=i +_.x=j +_.y=k +_.z=l}, +Va:function Va(){}, +bFN(a,b,c,d,e,f,g,h,i,j,k){return new A.BE(a,c,k,g,b,h,d,j,f,i,e)}, +bFO(a,b,c){var s,r,q,p,o,n,m,l,k,j +if(a===b)return a +s=A.W(a.a,b.a,c) +r=A.W(a.b,b.b,c) +q=A.fx(a.c,b.c,c) +p=A.Ag(a.d,b.d,c) +o=A.fx(a.e,b.e,c) +n=A.W(a.f,b.f,c) +m=A.W(a.r,b.r,c) +l=A.W(a.w,b.w,c) +k=A.W(a.x,b.x,c) +j=A.fd(a.y,b.y,c) +return A.bFN(s,o,r,m,A.fd(a.z,b.z,c),k,p,n,j,l,q)}, +biz(a){var s +a.ae(t.o6) +s=A.r(a) +return s.Y}, +BE:function BE(a,b,c,d,e,f,g,h,i,j,k){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=h +_.x=i +_.y=j +_.z=k}, +afR:function afR(){}, +biD(a,b){var s=null +return new A.a0X(b,s,s,s,s,B.l,s,!1,s,!0,a,s)}, +bQ6(a){var s=A.r(a).y?24:16,r=s/2,q=r/2,p=A.cT(a,B.bb) +p=p==null?null:p.c +if(p==null)p=1 +return A.AB(new A.aK(s,0,s,0),new A.aK(r,0,r,0),new A.aK(q,0,q,0),p)}, +b3S:function b3S(a,b){this.a=a +this.b=b}, +a0X:function a0X(a,b,c,d,e,f,g,h,i,j,k,l){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.x=g +_.y=h +_.z=i +_.Q=j +_.as=k +_.a=l}, +ag0:function ag0(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3){var _=this +_.dy=a +_.fr=$ +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f +_.f=g +_.r=h +_.w=i +_.x=j +_.y=k +_.z=l +_.Q=m +_.as=n +_.at=o +_.ax=p +_.ay=q +_.ch=r +_.CW=s +_.cx=a0 +_.cy=a1 +_.db=a2 +_.dx=a3}, +b3N:function b3N(a){this.a=a}, +b3P:function b3P(a){this.a=a}, +b3R:function b3R(a){this.a=a}, +b3O:function b3O(){}, +b3Q:function b3Q(){}, +bFY(a,b,c){if(a===b)return a +return new A.JM(A.t4(a.a,b.a,c))}, +JM:function JM(a){this.a=a}, +ag1:function ag1(){}, +JS:function JS(a,b,c,d,e,f,g){var _=this +_.f=a +_.r=b +_.w=c +_.x=d +_.y=e +_.b=f +_.a=g}, +a11(a,b,c,d){return new A.wQ(a,d,B.bB,b,B.ll,c,null)}, +b2y:function b2y(){}, +QY:function QY(a,b){this.a=a +this.b=b}, +wQ:function wQ(a,b,c,d,e,f,g){var _=this +_.c=a +_.z=b +_.Q=c +_.db=d +_.k1=e +_.k2=f +_.a=g}, +afF:function afF(a,b){this.a=a +this.b=b}, +ae3:function ae3(a,b){this.c=a +this.a=b}, +SA:function SA(a,b,c,d){var _=this +_.C=null +_.a0=a +_.aw=b +_.E$=c +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=d +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +b3l:function b3l(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5){var _=this +_.dx=a +_.dy=b +_.fr=c +_.fx=d +_.a=e +_.b=f +_.c=g +_.d=h +_.e=i +_.f=j +_.r=k +_.w=l +_.x=m +_.y=n +_.z=o +_.Q=p +_.as=q +_.at=r +_.ax=s +_.ay=a0 +_.ch=a1 +_.CW=a2 +_.cx=a3 +_.cy=a4 +_.db=a5}, +b3m:function b3m(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4){var _=this +_.dx=a +_.dy=b +_.fr=c +_.fy=_.fx=$ +_.a=d +_.b=e +_.c=f +_.d=g +_.e=h +_.f=i +_.r=j +_.w=k +_.x=l +_.y=m +_.z=n +_.Q=o +_.as=p +_.at=q +_.ax=r +_.ay=s +_.ch=a0 +_.CW=a1 +_.cx=a2 +_.cy=a3 +_.db=a4}, +btv(a,b,c,d,e){return new A.Py(c,d,a,b,new A.bb(A.a([],t.x8),t.jc),new A.bb(A.a([],t.qj),t.fy),0,e.h("Py<0>"))}, +aBW:function aBW(){}, +aVQ:function aVQ(){}, +a0R:function a0R(){}, +aBb:function aBb(){}, +aBc:function aBc(){}, +b1w:function b1w(){}, +b3a:function b3a(){}, +aBV:function aBV(){}, +b9V:function b9V(){}, +Py:function Py(a,b,c,d,e,f,g,h){var _=this +_.w=a +_.x=b +_.a=c +_.b=d +_.d=_.c=null +_.eo$=e +_.dB$=f +_.uX$=g +_.$ti=h}, +aob:function aob(){}, +aoc:function aoc(){}, +aoq:function aoq(){}, +aor:function aor(){}, +bG_(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1){return new A.BK(k,a,i,m,a1,c,j,n,b,l,r,d,o,s,a0,p,g,e,f,h,q)}, +bG0(a2,a3,a4){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1 +if(a2===a3)return a2 +s=A.W(a2.a,a3.a,a4) +r=A.W(a2.b,a3.b,a4) +q=A.W(a2.c,a3.c,a4) +p=A.W(a2.d,a3.d,a4) +o=A.W(a2.e,a3.e,a4) +n=A.ag(a2.f,a3.f,a4) +m=A.ag(a2.r,a3.r,a4) +l=A.ag(a2.w,a3.w,a4) +k=A.ag(a2.x,a3.x,a4) +j=A.ag(a2.y,a3.y,a4) +i=A.fd(a2.z,a3.z,a4) +h=a4<0.5 +if(h)g=a2.Q +else g=a3.Q +f=A.ag(a2.as,a3.as,a4) +e=A.w2(a2.at,a3.at,a4) +d=A.w2(a2.ax,a3.ax,a4) +c=A.w2(a2.ay,a3.ay,a4) +b=A.w2(a2.ch,a3.ch,a4) +a=A.ag(a2.CW,a3.CW,a4) +a0=A.fx(a2.cx,a3.cx,a4) +a1=A.c1(a2.cy,a3.cy,a4) +if(h)h=a2.db +else h=a3.db +return A.bG_(r,k,n,g,a,a0,b,a1,q,m,s,j,p,l,f,c,h,i,e,d,o)}, +BK:function BK(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1){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 +_.CW=r +_.cx=s +_.cy=a0 +_.db=a1}, +ag9:function ag9(){}, +a1y:function a1y(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +db(a,b,c,d,e,f,g,h,i,j){return new A.x6(d,j,f,g,c,a,e,i,b,h,null)}, +x7(a,b,c,d,e,f,g,h,i,j,k,l,a0,a1){var s,r,q,p,o=null,n=g==null,m=n&&!0?o:new A.agG(g,b) +if(n)n=!0 +else n=!1 +s=n?o:new A.agI(g,f,i,h) +n=a0==null?o:new A.bE(a0,t.Ak) +r=l==null?o:new A.bE(l,t.iL) +q=k==null?o:new A.bE(k,t.iL) +p=j==null?o:new A.bE(j,t.QL) +return A.Ie(a,o,o,o,d,o,m,o,p,q,r,new A.agH(e,c),s,n,o,o,o,o,o,o,o,a1)}, +b4Z:function b4Z(a,b){this.a=a +this.b=b}, +x6:function x6(a,b,c,d,e,f,g,h,i,j,k){var _=this +_.c=a +_.d=b +_.e=c +_.r=d +_.w=e +_.z=f +_.ax=g +_.cx=h +_.cy=i +_.dx=j +_.a=k}, +Te:function Te(a,b,c,d,e,f,g,h){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.x=g +_.a=h}, +ald:function ald(a){var _=this +_.d=$ +_.a=null +_.b=a +_.c=null}, +agK:function agK(a,b,c,d,e,f,g,h,i,j,k,l,m,n){var _=this +_.ax=a +_.ay=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=h +_.x=i +_.y=j +_.z=k +_.Q=l +_.as=m +_.a=n}, +b4Y:function b4Y(a){this.a=a}, +agG:function agG(a,b){this.a=a +this.b=b}, +agI:function agI(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +agH:function agH(a,b){this.a=a +this.b=b}, +agJ:function agJ(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3){var _=this +_.dy=a +_.fx=$ +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f +_.f=g +_.r=h +_.w=i +_.x=j +_.y=k +_.z=l +_.Q=m +_.as=n +_.at=o +_.ax=p +_.ay=q +_.ch=r +_.CW=s +_.cx=a0 +_.cy=a1 +_.db=a2 +_.dx=a3}, +b4V:function b4V(a){this.a=a}, +b4X:function b4X(a){this.a=a}, +b4W:function b4W(){}, +ag2:function ag2(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4){var _=this +_.dy=a +_.fr=b +_.fx=$ +_.a=c +_.b=d +_.c=e +_.d=f +_.e=g +_.f=h +_.r=i +_.w=j +_.x=k +_.y=l +_.z=m +_.Q=n +_.as=o +_.at=p +_.ax=q +_.ay=r +_.ch=s +_.CW=a0 +_.cx=a1 +_.cy=a2 +_.db=a3 +_.dx=a4}, +b3T:function b3T(a){this.a=a}, +b3U:function b3U(a){this.a=a}, +b3W:function b3W(a){this.a=a}, +b3V:function b3V(){}, +ag3:function ag3(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4){var _=this +_.dy=a +_.fr=b +_.fx=$ +_.a=c +_.b=d +_.c=e +_.d=f +_.e=g +_.f=h +_.r=i +_.w=j +_.x=k +_.y=l +_.z=m +_.Q=n +_.as=o +_.at=p +_.ax=q +_.ay=r +_.ch=s +_.CW=a0 +_.cx=a1 +_.cy=a2 +_.db=a3 +_.dx=a4}, +b3X:function b3X(a){this.a=a}, +b3Y:function b3Y(a){this.a=a}, +b4_:function b4_(a){this.a=a}, +b3Z:function b3Z(){}, +aiR:function aiR(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3){var _=this +_.dy=a +_.fx=$ +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f +_.f=g +_.r=h +_.w=i +_.x=j +_.y=k +_.z=l +_.Q=m +_.as=n +_.at=o +_.ax=p +_.ay=q +_.ch=r +_.CW=s +_.cx=a0 +_.cy=a1 +_.db=a2 +_.dx=a3}, +b7n:function b7n(a){this.a=a}, +b7o:function b7o(a){this.a=a}, +b7q:function b7q(a){this.a=a}, +b7r:function b7r(a){this.a=a}, +b7p:function b7p(){}, +aox:function aox(){}, +bGD(a,b,c){if(a===b)return a +return new A.qe(A.t4(a.a,b.a,c))}, +a1T(a,b){return new A.Kk(b,a,null)}, +bq3(a){var s=a.ae(t.g5),r=s==null?null:s.w +return r==null?A.r(a).aG:r}, +qe:function qe(a){this.a=a}, +Kk:function Kk(a,b,c){this.w=a +this.b=b +this.a=c}, +agL:function agL(){}, +bq9(a,b){return new A.xc(a,b,null)}, +xc:function xc(a,b,c){this.c=a +this.e=b +this.a=c}, +Ru:function Ru(a,b){var _=this +_.d=a +_.a=_.e=null +_.b=b +_.c=null}, +Ks:function Ks(a,b,c,d){var _=this +_.f=_.e=null +_.r=!0 +_.w=a +_.a=b +_.b=c +_.c=d +_.d=!1}, +tP:function tP(a,b,c,d,e,f,g,h,i,j){var _=this +_.z=a +_.Q=b +_.as=c +_.at=d +_.ax=e +_.ch=_.ay=$ +_.CW=!0 +_.e=f +_.f=g +_.a=h +_.b=i +_.c=j +_.d=!1}, +bPc(a,b,c){if(c!=null)return c +if(b)return new A.bdR(a) +return null}, +bdR:function bdR(a){this.a=a}, +b5h:function b5h(){}, +Kt:function Kt(a,b,c,d,e,f,g,h,i,j){var _=this +_.z=a +_.Q=b +_.as=c +_.at=d +_.ax=e +_.db=_.cy=_.cx=_.CW=_.ch=_.ay=$ +_.e=f +_.f=g +_.a=h +_.b=i +_.c=j +_.d=!1}, +bPb(a,b,c){if(c!=null)return c +if(b)return new A.bdQ(a) +return null}, +bPh(a,b,c,d){var s,r,q,p,o,n +if(b){if(c!=null){s=c.$0() +r=new A.V(s.c-s.a,s.d-s.b)}else r=a.gq(a) +q=d.a2(0,B.i).ge3() +p=d.a2(0,new A.l(0+r.a,0)).ge3() +o=d.a2(0,new A.l(0,0+r.b)).ge3() +n=d.a2(0,r.E8(0,B.i)).ge3() +return Math.ceil(Math.max(Math.max(q,p),Math.max(o,n)))}return 35}, +bdQ:function bdQ(a){this.a=a}, +b5i:function b5i(){}, +Ku:function Ku(a,b,c,d,e,f,g,h,i,j,k){var _=this +_.z=a +_.Q=b +_.as=c +_.at=d +_.ax=e +_.ay=f +_.cx=_.CW=_.ch=$ +_.cy=null +_.e=g +_.f=h +_.a=i +_.b=j +_.c=k +_.d=!1}, +bqa(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,b0,b1,b2,b3){return new A.C9(d,a5,a7,a8,a6,p,a0,a1,a3,a4,a2,r,s,o,e,l,b0,b,f,i,m,k,a9,b1,b2,g,!1,q,a,j,c,b3,n)}, +jE(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,a0,a1,a2,a3,a4){var s=null +return new A.a24(d,p,r,s,q,s,o,s,s,s,s,m,n,k,!0,B.aE,a1,b,e,g,j,i,a0,a2,a3,f!==!1,!1,l,a,h,c,a4,s)}, +tS:function tS(){}, +Ca:function Ca(){}, +Si:function Si(a,b,c){this.f=a +this.b=b +this.a=c}, +C9:function C9(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,b0,b1,b2,b3){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.x=g +_.y=h +_.z=i +_.Q=j +_.as=k +_.at=l +_.ax=m +_.ay=n +_.ch=o +_.CW=p +_.cx=q +_.cy=r +_.db=s +_.dx=a0 +_.dy=a1 +_.fr=a2 +_.fx=a3 +_.fy=a4 +_.go=a5 +_.id=a6 +_.k1=a7 +_.k2=a8 +_.k3=a9 +_.k4=b0 +_.ok=b1 +_.p1=b2 +_.a=b3}, +Rt:function Rt(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,b0,b1,b2,b3,b4,b5,b6){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.x=g +_.y=h +_.z=i +_.Q=j +_.as=k +_.at=l +_.ax=m +_.ay=n +_.ch=o +_.CW=p +_.cx=q +_.cy=r +_.db=s +_.dx=a0 +_.dy=a1 +_.fr=a2 +_.fx=a3 +_.fy=a4 +_.go=a5 +_.id=a6 +_.k1=a7 +_.k2=a8 +_.k3=a9 +_.k4=b0 +_.ok=b1 +_.p1=b2 +_.p2=b3 +_.p3=b4 +_.p4=b5 +_.a=b6}, +vb:function vb(a,b){this.a=a +this.b=b}, +Rs:function Rs(a,b,c,d){var _=this +_.e=_.d=null +_.f=!1 +_.r=a +_.w=$ +_.x=null +_.y=b +_.z=!1 +_.mN$=c +_.a=null +_.b=d +_.c=null}, +b5f:function b5f(){}, +b5e:function b5e(){}, +b5g:function b5g(a,b){this.a=a +this.b=b}, +b5b:function b5b(a,b){this.a=a +this.b=b}, +b5d:function b5d(a){this.a=a}, +b5c:function b5c(a,b){this.a=a +this.b=b}, +a24:function a24(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,b0,b1,b2,b3){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.x=g +_.y=h +_.z=i +_.Q=j +_.as=k +_.at=l +_.ax=m +_.ay=n +_.ch=o +_.CW=p +_.cx=q +_.cy=r +_.db=s +_.dx=a0 +_.dy=a1 +_.fr=a2 +_.fx=a3 +_.fy=a4 +_.go=a5 +_.id=a6 +_.k1=a7 +_.k2=a8 +_.k3=a9 +_.k4=b0 +_.ok=b1 +_.p1=b2 +_.a=b3}, +Vf:function Vf(){}, +l6:function l6(){}, +aiy:function aiy(a){this.a=a}, +nl:function nl(a,b){this.b=a +this.a=b}, +lU:function lU(a,b,c){this.b=a +this.c=b +this.a=c}, +bG1(a){if(a===-1)return"FloatingLabelAlignment.start" +if(a===0)return"FloatingLabelAlignment.center" +return"FloatingLabelAlignment(x: "+B.f.az(a,1)+")"}, +bGJ(a,b,c,d,e,f,g,h,i){return new A.xd(c,a,h,i,f,g,!1,e,b,null)}, +tQ(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,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,d1){return new A.Kv(b2,b3,b6,b8,b7,a0,a6,a5,a4,a9,a8,b0,a7,k,o,n,m,s,r,b5,d,!1,c0,c2,b9,c4,c3,c1,c7,c6,d1,d0,c8,c9,g,e,f,q,p,a1,b1,l,a2,a3,h,j,b,!0,c5,a,c)}, +Rv:function Rv(a){var _=this +_.a=null +_.ak$=_.b=0 +_.ah$=a +_.aT$=_.bG$=0 +_.bK$=!1}, +Rw:function Rw(a,b){this.a=a +this.b=b}, +agV:function agV(a,b,c,d,e,f,g,h,i){var _=this +_.b=a +_.c=b +_.d=c +_.e=d +_.f=e +_.r=f +_.w=g +_.x=h +_.a=i}, +PR:function PR(a,b,c,d,e,f,g){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.a=g}, +adB:function adB(a,b,c){var _=this +_.x=_.w=_.r=_.f=_.e=_.d=$ +_.dL$=a +_.b_$=b +_.a=null +_.b=c +_.c=null}, +alr:function alr(a,b,c){this.e=a +this.c=b +this.a=c}, +Rc:function Rc(a,b,c,d,e,f,g,h,i){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.x=g +_.y=h +_.a=i}, +Rd:function Rd(a,b,c){var _=this +_.d=$ +_.f=_.e=null +_.f9$=a +_.c4$=b +_.a=null +_.b=c +_.c=null}, +b4N:function b4N(){}, +JU:function JU(a,b){this.a=a +this.b=b}, +a12:function a12(){}, +ia:function ia(a,b){this.a=a +this.b=b}, +af0:function af0(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1){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 +_.CW=r +_.cx=s +_.cy=a0 +_.db=a1}, +b9_:function b9_(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +SE:function SE(a,b,c,d,e,f,g,h,i){var _=this +_.B=a +_.Z=b +_.Y=c +_.av=d +_.ar=e +_.aG=f +_.aS=g +_.b8=null +_.d1$=h +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=i +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +b93:function b93(a){this.a=a}, +b92:function b92(a,b){this.a=a +this.b=b}, +b91:function b91(a,b){this.a=a +this.b=b}, +b90:function b90(a,b,c){this.a=a +this.b=b +this.c=c}, +af3:function af3(a,b,c,d,e,f,g){var _=this +_.d=a +_.e=b +_.f=c +_.r=d +_.w=e +_.x=f +_.a=g}, +xd:function xd(a,b,c,d,e,f,g,h,i,j){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.x=g +_.y=h +_.z=i +_.a=j}, +Rx:function Rx(a,b,c,d){var _=this +_.f=_.e=_.d=$ +_.r=a +_.w=null +_.dL$=b +_.b_$=c +_.a=null +_.b=d +_.c=null}, +b5E:function b5E(){}, +Kv:function Kv(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,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,d1){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 +_.CW=r +_.cx=s +_.cy=a0 +_.db=a1 +_.dx=a2 +_.dy=a3 +_.fr=a4 +_.fx=a5 +_.fy=a6 +_.go=a7 +_.id=a8 +_.k1=a9 +_.k2=b0 +_.k3=b1 +_.k4=b2 +_.ok=b3 +_.p1=b4 +_.p2=b5 +_.p3=b6 +_.p4=b7 +_.R8=b8 +_.RG=b9 +_.rx=c0 +_.ry=c1 +_.to=c2 +_.x1=c3 +_.x2=c4 +_.xr=c5 +_.y1=c6 +_.y2=c7 +_.c5=c8 +_.cO=c9 +_.aV=d0 +_.bU=d1}, +Kw:function Kw(){}, +b5j:function b5j(a){this.ok=a}, +b5o:function b5o(a){this.a=a}, +b5q:function b5q(a){this.a=a}, +b5m:function b5m(a){this.a=a}, +b5n:function b5n(a){this.a=a}, +b5k:function b5k(a){this.a=a}, +b5l:function b5l(a){this.a=a}, +b5p:function b5p(a){this.a=a}, +b5r:function b5r(a){this.a=a}, +b5s:function b5s(a){this.a=a}, +b5t:function b5t(a){this.ok=a +this.p2=this.p1=$}, +b5z:function b5z(a){this.a=a}, +b5w:function b5w(a){this.a=a}, +b5u:function b5u(a){this.a=a}, +b5B:function b5B(a){this.a=a}, +b5C:function b5C(a){this.a=a}, +b5D:function b5D(a){this.a=a}, +b5A:function b5A(a){this.a=a}, +b5x:function b5x(a){this.a=a}, +b5y:function b5y(a){this.a=a}, +b5v:function b5v(a){this.a=a}, +agW:function agW(){}, +UW:function UW(){}, +Ve:function Ve(){}, +Vg:function Vg(){}, +ap_:function ap_(){}, +bH(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2){return new A.qm(j,a0,r,a1,h,c,a2,q,o,b,e,m,l,k,n,g,f,!1,s,p,d,i)}, +b98(a,b){if(a==null)return B.x +a.cX(b,!0) +return a.gq(a)}, +a2L:function a2L(a,b){this.a=a +this.b=b}, +KR:function KR(a,b){this.a=a +this.b=b}, +a2M:function a2M(a,b){this.a=a +this.b=b}, +qm:function qm(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.x=g +_.y=h +_.z=i +_.CW=j +_.cx=k +_.cy=l +_.db=m +_.dx=n +_.fr=o +_.fy=p +_.id=q +_.k1=r +_.k2=s +_.k3=a0 +_.k4=a1 +_.a=a2}, +aHe:function aHe(a){this.a=a}, +agS:function agS(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +nE:function nE(a,b){this.a=a +this.b=b}, +ahE:function ahE(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){var _=this +_.d=a +_.e=b +_.f=c +_.r=d +_.w=e +_.x=f +_.y=g +_.z=h +_.Q=i +_.as=j +_.at=k +_.ax=l +_.ay=m +_.ch=n +_.a=o}, +SN:function SN(a,b,c,d,e,f,g,h,i,j,k,l){var _=this +_.B=a +_.Z=b +_.Y=c +_.av=d +_.ar=e +_.aG=f +_.aS=g +_.b8=h +_.b6=i +_.bp=j +_.d1$=k +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=l +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +b9a:function b9a(a,b){this.a=a +this.b=b}, +b99:function b99(a,b,c){this.a=a +this.b=b +this.c=c}, +b64:function b64(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0){var _=this +_.cy=a +_.dx=_.db=$ +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f +_.f=g +_.r=h +_.w=i +_.x=j +_.y=k +_.z=l +_.Q=m +_.as=n +_.at=o +_.ax=p +_.ay=q +_.ch=r +_.CW=s +_.cx=a0}, +b65:function b65(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0){var _=this +_.cy=a +_.dy=_.dx=_.db=$ +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f +_.f=g +_.r=h +_.w=i +_.x=j +_.y=k +_.z=l +_.Q=m +_.as=n +_.at=o +_.ax=p +_.ay=q +_.ch=r +_.CW=s +_.cx=a0}, +ap4:function ap4(){}, +bj2(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s){return new A.Cw(b,l,m,j,e,o,r,n,f,a,p,k,d,h,g,c,i,s,q)}, +bHp(a0,a1,a2){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a +if(a0===a1)return a0 +s=a2<0.5 +if(s)r=a0.a +else r=a1.a +q=A.fd(a0.b,a1.b,a2) +if(s)p=a0.c +else p=a1.c +o=A.W(a0.d,a1.d,a2) +n=A.W(a0.e,a1.e,a2) +m=A.W(a0.f,a1.f,a2) +l=A.c1(a0.r,a1.r,a2) +k=A.c1(a0.w,a1.w,a2) +j=A.c1(a0.x,a1.x,a2) +i=A.fx(a0.y,a1.y,a2) +h=A.W(a0.z,a1.z,a2) +g=A.W(a0.Q,a1.Q,a2) +f=A.ag(a0.as,a1.as,a2) +e=A.ag(a0.at,a1.at,a2) +d=A.ag(a0.ax,a1.ax,a2) +if(s)c=a0.ay +else c=a1.ay +if(s)b=a0.ch +else b=a1.ch +if(s)a=a0.CW +else a=a1.CW +if(s)s=a0.cx +else s=a1.cx +return A.bj2(i,r,c,f,n,j,d,e,b,o,g,q,p,k,m,h,s,l,a)}, +bqt(a,b,c){return new A.xx(b,a,c)}, +bqv(a){var s=a.ae(t.NJ),r=s==null?null:s.gEr(s) +return r==null?A.r(a).aS:r}, +bqu(a,b,c,d){var s=null +return new A.ej(new A.aHd(s,s,s,c,s,b,d,s,s,s,s,s,s,s,s,s,s,s,s,s,a),s)}, +Cw:function Cw(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s){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 +_.CW=r +_.cx=s}, +xx:function xx(a,b,c){this.w=a +this.b=b +this.a=c}, +aHd:function aHd(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1){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 +_.CW=r +_.cx=s +_.cy=a0 +_.db=a1}, +ahF:function ahF(){}, +OF:function OF(a,b){this.c=a +this.a=b}, +aXN:function aXN(){}, +TS:function TS(a,b){var _=this +_.e=_.d=null +_.f=a +_.a=null +_.b=b +_.c=null}, +bbS:function bbS(a){this.a=a}, +bbR:function bbR(a){this.a=a}, +bbT:function bbT(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +a2S:function a2S(a,b){this.c=a +this.a=b}, +hA(a,b,c,d,e,f,g,h,i,j,k,l,m){return new A.L9(d,m,g,f,i,k,l,j,!0,e,a,c,h)}, +bGI(a,b){var s,r,q,p,o,n,m,l,k,j,i=t.TT,h=A.a([a],i),g=A.a([b],i) +for(s=b,r=a;r!==s;){q=r.c +p=s.c +if(q>=p){o=r.gbP(r) +if(!(o instanceof A.H)||!o.xz(r))return null +h.push(o) +r=o}if(q<=p){n=s.gbP(s) +if(!(n instanceof A.H)||!n.xz(s))return null +g.push(n) +s=n}}m=new A.bS(new Float64Array(16)) +m.fQ() +l=new A.bS(new Float64Array(16)) +l.fQ() +for(k=g.length-1;k>0;k=j){j=k-1 +g[k].eI(g[j],m)}for(k=h.length-1;k>0;k=j){j=k-1 +h[k].eI(h[j],l)}if(l.k0(l)!==0){l.f_(0,m) +i=l}else i=null +return i}, +u6:function u6(a,b){this.a=a +this.b=b}, +L9:function L9(a,b,c,d,e,f,g,h,i,j,k,l,m){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.x=g +_.y=h +_.z=i +_.Q=j +_.as=k +_.at=l +_.a=m}, +ai4:function ai4(a,b,c,d){var _=this +_.d=a +_.dL$=b +_.b_$=c +_.a=null +_.b=d +_.c=null}, +b6t:function b6t(a){this.a=a}, +SI:function SI(a,b,c,d,e){var _=this +_.C=a +_.a0=b +_.aw=c +_.cu=null +_.E$=d +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=e +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +agU:function agU(a,b,c,d,e){var _=this +_.e=a +_.f=b +_.r=c +_.c=d +_.a=e}, +ok:function ok(){}, +uG:function uG(a,b){this.a=a +this.b=b}, +RN:function RN(a,b,c,d,e,f,g,h,i,j,k,l){var _=this +_.r=a +_.w=b +_.x=c +_.y=d +_.z=e +_.Q=f +_.as=g +_.at=h +_.c=i +_.d=j +_.e=k +_.a=l}, +ai0:function ai0(a,b,c){var _=this +_.db=_.cy=_.cx=_.CW=null +_.e=_.d=$ +_.f9$=a +_.c4$=b +_.a=null +_.b=c +_.c=null}, +b6c:function b6c(){}, +b6d:function b6d(){}, +b6e:function b6e(){}, +b6f:function b6f(){}, +Tk:function Tk(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +als:function als(a,b,c){this.b=a +this.c=b +this.a=c}, +aoG:function aoG(){}, +ai1:function ai1(){}, +a_U:function a_U(){}, +vf(a){return new A.Gf(a,J.lB(a.$1(B.ez)))}, +b6s(a){return new A.RO(a,B.v,1,B.M,-1)}, +nG(a){var s=null +return new A.ai5(a,!0,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s)}, +cg(a,b,c){if(c.h("bN<0>").b(a))return a.L(b) +return a}, +bJ(a,b,c,d,e){if(a==null&&b==null)return null +return new A.RF(a,b,c,d,e.h("RF<0>"))}, +bjc(a){var s=A.aY(t.ui) +if(a!=null)s.I(0,a) +return new A.a4X(s,$.b5())}, +dn:function dn(a,b){this.a=a +this.b=b}, +a4U:function a4U(){}, +Gf:function Gf(a,b){this.c=a +this.a=b}, +a4V:function a4V(){}, +QR:function QR(a,b){this.a=a +this.c=b}, +a4T:function a4T(){}, +RO:function RO(a,b,c,d,e){var _=this +_.x=a +_.a=b +_.b=c +_.c=d +_.d=e}, +a4W:function a4W(){}, +ai5:function ai5(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5,a6,a7){var _=this +_.bQ=a +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f +_.f=g +_.r=h +_.w=i +_.x=j +_.y=k +_.z=l +_.Q=m +_.as=n +_.at=o +_.ax=p +_.ay=q +_.ch=r +_.CW=s +_.cx=a0 +_.cy=a1 +_.db=a2 +_.dx=a3 +_.dy=a4 +_.fr=a5 +_.fx=a6 +_.fy=a7}, +bN:function bN(){}, +RF:function RF(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.$ti=e}, +bc:function bc(a,b){this.a=a +this.$ti=b}, +bE:function bE(a,b){this.a=a +this.$ti=b}, +a4X:function a4X(a,b){var _=this +_.a=a +_.ak$=0 +_.ah$=b +_.aT$=_.bG$=0 +_.bK$=!1}, +Ll:function Ll(){}, +aIB:function aIB(a,b,c){this.a=a +this.b=b +this.c=c}, +aIz:function aIz(){}, +aIA:function aIA(){}, +bHS(a,b,c){if(a===b)return a +return new A.a52(A.bjf(a.a,b.a,c))}, +a52:function a52(a){this.a=a}, +bHT(a,b,c){if(a===b)return a +return new A.Lr(A.t4(a.a,b.a,c))}, +Lr:function Lr(a){this.a=a}, +ai9:function ai9(){}, +bjf(a,b,c){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d=null +if(a==b)return a +s=a==null +r=s?d:a.a +q=b==null +p=q?d:b.a +o=t.MH +p=A.bJ(r,p,c,A.dj(),o) +r=s?d:a.b +r=A.bJ(r,q?d:b.b,c,A.dj(),o) +n=s?d:a.c +o=A.bJ(n,q?d:b.c,c,A.dj(),o) +n=s?d:a.d +m=q?d:b.d +m=A.bJ(n,m,c,A.Wa(),t.PM) +n=s?d:a.e +l=q?d:b.e +l=A.bJ(n,l,c,A.blx(),t.pc) +n=s?d:a.f +k=q?d:b.f +j=t.tW +k=A.bJ(n,k,c,A.W9(),j) +n=s?d:a.r +n=A.bJ(n,q?d:b.r,c,A.W9(),j) +i=s?d:a.w +j=A.bJ(i,q?d:b.w,c,A.W9(),j) +i=s?d:a.x +h=q?d:b.x +g=s?d:a.y +f=q?d:b.y +f=A.bJ(g,f,c,A.bln(),t.KX) +g=c<0.5 +if(g)e=s?d:a.z +else e=q?d:b.z +if(g)g=s?d:a.Q +else g=q?d:b.Q +s=s?d:a.as +return new A.a53(p,r,o,m,l,k,n,j,new A.ahq(i,h,c),f,e,g,A.Ag(s,q?d:b.as,c))}, +a53:function a53(a,b,c,d,e,f,g,h,i,j,k,l,m){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}, +ahq:function ahq(a,b,c){this.a=a +this.b=b +this.c=c}, +aib:function aib(){}, +bHU(a,b,c){if(a===b)return a +return new A.CN(A.bjf(a.a,b.a,c))}, +CN:function CN(a){this.a=a}, +aic:function aic(){}, +bjm(a,b,c,d,e,f){return new A.a5p(a,c,f,d,b,e,null)}, +bkA(a){var s=null +return new A.b6W(A.r(a),A.r(a).ax,80,s,0,s,s,s,B.os,s,s,B.Fg)}, +bkB(a){var s=null +return new A.b6X(a,80,s,3,s,s,s,s,s,s,B.Fg)}, +a5n:function a5n(a,b,c,d){var _=this +_.d=a +_.e=b +_.f=c +_.a=d}, +aKc:function aKc(a,b){this.a=a +this.b=b}, +aKd:function aKd(a,b,c){this.a=a +this.b=b +this.c=c}, +aKe:function aKe(a,b){this.a=a +this.b=b}, +xR:function xR(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +aKg:function aKg(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +aKf:function aKf(a,b,c){this.a=a +this.b=b +this.c=c}, +aKh:function aKh(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +S3:function S3(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +aiv:function aiv(a,b){var _=this +_.d=a +_.a=null +_.b=b +_.c=null}, +Rm:function Rm(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,b0,b1,b2,b3,b4){var _=this +_.p3=a +_.c=b +_.d=c +_.e=d +_.f=e +_.r=f +_.w=g +_.x=h +_.y=i +_.z=j +_.Q=k +_.as=l +_.at=m +_.ax=n +_.ay=o +_.ch=p +_.CW=q +_.cx=r +_.cy=s +_.db=a0 +_.dx=a1 +_.dy=a2 +_.fr=a3 +_.fx=a4 +_.fy=a5 +_.go=a6 +_.id=a7 +_.k1=a8 +_.k2=a9 +_.k3=b0 +_.k4=b1 +_.ok=b2 +_.p1=b3 +_.a=b4}, +b58:function b58(a,b){this.a=a +this.b=b}, +zM:function zM(a,b,c,d,e,f,g,h,i){var _=this +_.f=a +_.w=b +_.x=c +_.y=d +_.z=e +_.Q=f +_.as=g +_.b=h +_.a=i}, +a5p:function a5p(a,b,c,d,e,f,g){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.a=g}, +aKj:function aKj(a){this.a=a}, +aKk:function aKk(a){this.a=a}, +aKi:function aKi(a){this.a=a}, +aiq:function aiq(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +b7_:function b7_(a){this.a=a}, +afb:function afb(a,b){this.c=a +this.a=b}, +b2J:function b2J(a){this.a=a}, +air:function air(a,b){this.c=a +this.a=b}, +b70:function b70(a){this.a=a}, +ais:function ais(a,b,c){this.c=a +this.d=b +this.a=c}, +b75:function b75(a,b){var _=this +_.d=a +_.a=b +_.c=_.b=null}, +b77:function b77(){}, +b76:function b76(){}, +ae9:function ae9(a,b,c){this.c=a +this.d=b +this.a=c}, +GR:function GR(a,b,c,d){var _=this +_.e=a +_.f=b +_.c=c +_.a=d}, +vr:function vr(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +alc:function alc(a,b,c){var _=this +_.d=$ +_.f9$=a +_.c4$=b +_.a=null +_.b=c +_.c=null}, +Qs:function Qs(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +Qt:function Qt(a){var _=this +_.d=$ +_.a=_.e=null +_.b=a +_.c=null}, +b2q:function b2q(a,b){this.a=a +this.b=b}, +b2r:function b2r(a){this.a=a}, +b2s:function b2s(a,b){this.a=a +this.b=b}, +b6W:function b6W(a,b,c,d,e,f,g,h,i,j,k,l){var _=this +_.z=a +_.Q=b +_.a=c +_.b=d +_.c=e +_.d=f +_.e=g +_.f=h +_.r=i +_.w=j +_.x=k +_.y=l}, +b6X:function b6X(a,b,c,d,e,f,g,h,i,j,k){var _=this +_.z=a +_.as=_.Q=$ +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f +_.f=g +_.r=h +_.w=i +_.x=j +_.y=k}, +b6Y:function b6Y(a){this.a=a}, +b6Z:function b6Z(a){this.a=a}, +Vy:function Vy(){}, +bI6(a,b,c){var s,r,q,p,o,n,m,l,k,j +if(a===b)return a +s=A.ag(a.a,b.a,c) +r=A.W(a.b,b.b,c) +q=A.ag(a.c,b.c,c) +p=A.W(a.d,b.d,c) +o=A.W(a.e,b.e,c) +n=A.W(a.f,b.f,c) +m=A.fd(a.r,b.r,c) +l=A.bJ(a.w,b.w,c,A.W7(),t.p8) +k=A.bJ(a.x,b.x,c,A.bwK(),t.lF) +if(c<0.5)j=a.y +else j=b.y +return new A.xQ(s,r,q,p,o,n,m,l,k,j)}, +bqU(a,b){return new A.LG(b,a,null)}, +bjl(a){var s=a.ae(t.XD),r=s==null?null:s.w +return r==null?A.r(a).cc:r}, +xQ:function xQ(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}, +LG:function LG(a,b,c){this.w=a +this.b=b +this.a=c}, +ait:function ait(){}, +bI7(a,b,c){var s,r,q,p,o,n,m,l,k +if(a===b)return a +s=A.ag(a.a,b.a,c) +r=A.W(a.b,b.b,c) +q=A.ag(a.c,b.c,c) +p=A.W(a.d,b.d,c) +o=A.W(a.e,b.e,c) +n=A.W(a.f,b.f,c) +m=A.fd(a.r,b.r,c) +l=a.w +l=A.aTn(l,l,c) +k=A.bJ(a.x,b.x,c,A.W7(),t.p8) +return new A.LH(s,r,q,p,o,n,m,l,k,A.bJ(a.y,b.y,c,A.bwK(),t.lF))}, +LH:function LH(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}, +aiw:function aiw(){}, +bkC(a){var s=null +return new A.b78(A.r(a),A.r(a).ax,s,0,s,s,s,s,-1,B.nZ,!1,s,s,72,256)}, +LI:function LI(a,b,c,d,e,f,g,h,i){var _=this +_.d=a +_.e=b +_.r=c +_.w=d +_.x=e +_.y=f +_.Q=g +_.cx=h +_.a=i}, +S4:function S4(a,b,c){var _=this +_.r=_.f=_.e=_.d=$ +_.dL$=a +_.b_$=b +_.a=null +_.b=c +_.c=null}, +b7d:function b7d(a,b){this.a=a +this.b=b}, +b7a:function b7a(){}, +b7b:function b7b(a){this.a=a}, +b7c:function b7c(){}, +ajN:function ajN(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.x=g +_.y=h +_.z=i +_.Q=j +_.as=k +_.at=l +_.ax=m +_.ay=n +_.ch=o +_.CW=p +_.cx=q +_.cy=r +_.a=s}, +Rl:function Rl(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,b0,b1,b2,b3,b4,b5,b6){var _=this +_.p3=a +_.p4=b +_.R8=c +_.c=d +_.d=e +_.e=f +_.f=g +_.r=h +_.w=i +_.x=j +_.y=k +_.z=l +_.Q=m +_.as=n +_.at=o +_.ax=p +_.ay=q +_.ch=r +_.CW=s +_.cx=a0 +_.cy=a1 +_.db=a2 +_.dx=a3 +_.dy=a4 +_.fr=a5 +_.fx=a6 +_.fy=a7 +_.go=a8 +_.id=a9 +_.k1=b0 +_.k2=b1 +_.k3=b2 +_.k4=b3 +_.ok=b4 +_.p1=b5 +_.a=b6}, +b57:function b57(a,b){this.a=a +this.b=b}, +Fn:function Fn(a,b,c,d,e,f,g){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.a=g}, +a5q:function a5q(a,b){this.a=a +this.b=b}, +CS:function CS(a,b,c){this.a=a +this.b=b +this.e=c}, +afS:function afS(a,b,c){this.f=a +this.b=b +this.a=c}, +b78:function b78(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){var _=this +_.at=a +_.ax=b +_.a=c +_.b=d +_.c=e +_.d=f +_.e=g +_.f=h +_.r=i +_.w=j +_.x=k +_.y=l +_.z=m +_.Q=n +_.as=o}, +b79:function b79(a,b,c,d,e,f,g,h,i,j,k,l,m,n){var _=this +_.at=a +_.ay=_.ax=$ +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f +_.f=g +_.r=h +_.w=i +_.x=j +_.y=k +_.z=l +_.Q=m +_.as=n}, +Vl:function Vl(){}, +bI9(a,b,c){var s,r,q,p,o,n,m,l,k,j,i,h +if(a===b)return a +s=A.W(a.a,b.a,c) +r=A.ag(a.b,b.b,c) +q=A.c1(a.c,b.c,c) +p=A.c1(a.d,b.d,c) +o=a.e +if(o==null)n=b.e==null +else n=!1 +if(n)o=null +else o=A.qf(o,b.e,c) +n=a.f +if(n==null)m=b.f==null +else m=!1 +if(m)n=null +else n=A.qf(n,b.f,c) +m=A.ag(a.r,b.r,c) +l=c<0.5 +if(l)k=a.w +else k=b.w +if(l)l=a.x +else l=b.x +j=A.W(a.y,b.y,c) +i=A.fd(a.z,b.z,c) +h=A.ag(a.Q,b.Q,c) +return new A.CT(s,r,q,p,o,n,m,k,l,j,i,h,A.ag(a.as,b.as,c))}, +CT:function CT(a,b,c,d,e,f,g,h,i,j,k,l,m){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}, +aix:function aix(){}, +bvH(a){var s=A.r(a).y?24:16,r=s/2,q=r/2,p=A.cT(a,B.bb) +p=p==null?null:p.c +if(p==null)p=1 +return A.AB(new A.aK(s,0,s,0),new A.aK(r,0,r,0),new A.aK(q,0,q,0),p)}, +a5K:function a5K(a,b,c,d,e,f,g,h,i,j,k,l){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.x=g +_.y=h +_.z=i +_.Q=j +_.as=k +_.a=l}, +Sa:function Sa(a,b){this.a=a +this.b=b}, +aiO:function aiO(a){this.a=a}, +aiN:function aiN(a,b){this.a=a +this.b=b}, +aiP:function aiP(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3){var _=this +_.dy=a +_.fr=$ +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f +_.f=g +_.r=h +_.w=i +_.x=j +_.y=k +_.z=l +_.Q=m +_.as=n +_.at=o +_.ax=p +_.ay=q +_.ch=r +_.CW=s +_.cx=a0 +_.cy=a1 +_.db=a2 +_.dx=a3}, +b7j:function b7j(a){this.a=a}, +b7l:function b7l(a){this.a=a}, +b7m:function b7m(a){this.a=a}, +b7k:function b7k(){}, +aoN:function aoN(){}, +aoO:function aoO(){}, +aoP:function aoP(){}, +bIi(a,b,c){if(a===b)return a +return new A.LV(A.t4(a.a,b.a,c))}, +LV:function LV(a){this.a=a}, +aiQ:function aiQ(){}, +Lk:function Lk(){}, +mW:function mW(a,b,c,d,e,f){var _=this +_.r=a +_.c=b +_.d=c +_.a=d +_.b=e +_.$ti=f}, +Se:function Se(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q){var _=this +_.cb=a +_.bQ=b +_.fr=c +_.fx=d +_.fy=!1 +_.id=_.go=null +_.k1=e +_.k2=f +_.k3=g +_.k4=h +_.ok=$ +_.p1=null +_.p2=$ +_.hP$=i +_.mO$=j +_.y=k +_.z=null +_.Q=!1 +_.at=_.as=null +_.ax=l +_.ay=!0 +_.CW=_.ch=null +_.e=m +_.a=null +_.b=n +_.c=o +_.d=p +_.$ti=q}, +Vp:function Vp(){}, +bvU(a,b,c){var s,r +a.fQ() +if(b===1)return +a.hF(0,b,b) +s=c.a +r=c.b +a.bj(0,-((s*b-s)/2),-((r*b-r)/2))}, +buL(a,b,c,d){var s=new A.Uz(c,a,d,b,new A.bS(new Float64Array(16)),A.aB(t.o0),A.aB(t.bq),$.b5()),r=s.geL() +a.P(0,r) +a.f4(s.gDk()) +d.a.P(0,r) +b.P(0,r) +return s}, +buM(a,b,c,d){var s=new A.UA(c,d,b,a,new A.bS(new Float64Array(16)),A.aB(t.o0),A.aB(t.bq),$.b5()),r=s.geL() +d.a.P(0,r) +b.P(0,r) +a.f4(s.gDk()) +return s}, +ao3:function ao3(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.a=f}, +bcQ:function bcQ(a){this.a=a}, +bcR:function bcR(a){this.a=a}, +bcS:function bcS(a){this.a=a}, +bcT:function bcT(a){this.a=a}, +vv:function vv(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +ao1:function ao1(a,b,c,d){var _=this +_.d=$ +_.v0$=a +_.tg$=b +_.v1$=c +_.a=null +_.b=d +_.c=null}, +vw:function vw(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +ao2:function ao2(a,b,c,d){var _=this +_.d=$ +_.v0$=a +_.tg$=b +_.v1$=c +_.a=null +_.b=d +_.c=null}, +qv:function qv(){}, +acM:function acM(){}, +a_A:function a_A(){}, +a5P:function a5P(){}, +aL5:function aL5(a){this.a=a}, +H6:function H6(){}, +Uz:function Uz(a,b,c,d,e,f,g,h){var _=this +_.r=a +_.w=b +_.x=c +_.y=d +_.z=e +_.Q=f +_.as=g +_.ak$=0 +_.ah$=h +_.aT$=_.bG$=0 +_.bK$=!1}, +bcO:function bcO(a,b){this.a=a +this.b=b}, +UA:function UA(a,b,c,d,e,f,g,h){var _=this +_.r=a +_.w=b +_.x=c +_.y=d +_.z=e +_.Q=f +_.as=g +_.ak$=0 +_.ah$=h +_.aT$=_.bG$=0 +_.bK$=!1}, +bcP:function bcP(a,b){this.a=a +this.b=b}, +aiX:function aiX(){}, +VG:function VG(){}, +VH:function VH(){}, +n3(a,b,c){return new A.um(b,a,null,c.h("um<0>"))}, +bVm(a,b,c,d,e,f,g,a0,a1,a2,a3,a4){var s,r,q,p,o,n,m,l,k,j,i,h=null +switch(A.r(d).r.a){case 2:case 4:s=h +break +case 0:case 1:case 3:case 5:r=A.A(d,B.ax,t.D) +r.toString +s=r.gb2() +break +default:s=h}q=A.j5(d,!1) +r=A.A(d,B.ax,t.D) +r.toString +r=r.gaE() +p=q.c +p.toString +p=A.Kr(d,p) +o=A.aT(J.aZ(g),h,!1,t.tW) +n=A.a([],t.Zt) +m=$.a9 +l=A.lX(B.bN) +k=A.a([],t.wi) +j=A.ed(h,t.v) +i=$.a9 +return q.Bk(new A.Sm(a0,g,o,f,e,a3,a1,s,a2,b,p,c,a,r,h,B.p7,n,new A.bo(h,a4.h("bo>")),new A.bo(h,t.C),new A.oD(),h,0,new A.aD(new A.a8(m,a4.h("a8<0?>")),a4.h("aD<0?>")),l,k,B.fD,j,new A.aD(new A.a8(i,a4.h("a8<0?>")),a4.h("aD<0?>")),a4.h("Sm<0>")),a4)}, +aLY(a,b,c,d){return new A.Dc(b,a,c,null,d.h("Dc<0>"))}, +bu_(a){var s=null +return new A.b7V(a,s,s,8,s,s,s,s,s,s,s)}, +bu0(a){var s=null +return new A.b7W(a,s,s,3,s,s,s,s,s,s,s)}, +Ml:function Ml(){}, +aia:function aia(a,b,c){this.e=a +this.c=b +this.a=c}, +akp:function akp(a,b,c){var _=this +_.C=a +_.E$=b +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=c +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +um:function um(a,b,c,d){var _=this +_.e=a +_.Q=b +_.a=c +_.$ti=d}, +De:function De(a,b){var _=this +_.a=null +_.b=a +_.c=null +_.$ti=b}, +Sl:function Sl(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e +_.$ti=f}, +b8_:function b8_(a,b){this.a=a +this.b=b}, +b80:function b80(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +b7Y:function b7Y(a,b,c,d,e,f){var _=this +_.b=a +_.c=b +_.d=c +_.e=d +_.f=e +_.r=f}, +Sm:function Sm(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9){var _=this +_.dH=a +_.E=b +_.al=c +_.cg=d +_.cI=e +_.ez=f +_.C=g +_.a0=h +_.aw=i +_.cu=j +_.fG=k +_.fa=l +_.hQ=m +_.fH=n +_.fr=o +_.fx=p +_.fy=!1 +_.id=_.go=null +_.k1=q +_.k2=r +_.k3=s +_.k4=a0 +_.ok=$ +_.p1=null +_.p2=$ +_.hP$=a1 +_.mO$=a2 +_.y=a3 +_.z=null +_.Q=!1 +_.at=_.as=null +_.ax=a4 +_.ay=!0 +_.CW=_.ch=null +_.e=a5 +_.a=null +_.b=a6 +_.c=a7 +_.d=a8 +_.$ti=a9}, +b7Z:function b7Z(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +Dc:function Dc(a,b,c,d,e){var _=this +_.c=a +_.ax=b +_.CW=c +_.a=d +_.$ti=e}, +Dd:function Dd(a,b){var _=this +_.a=null +_.b=a +_.c=null +_.$ti=b}, +aLZ:function aLZ(a){this.a=a}, +afG:function afG(a,b){this.a=a +this.b=b}, +b7V:function b7V(a,b,c,d,e,f,g,h,i,j,k){var _=this +_.z=a +_.as=_.Q=$ +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f +_.f=g +_.r=h +_.w=i +_.x=j +_.y=k}, +b7W:function b7W(a,b,c,d,e,f,g,h,i,j,k){var _=this +_.z=a +_.at=_.as=_.Q=$ +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f +_.f=g +_.r=h +_.w=i +_.x=j +_.y=k}, +b7X:function b7X(a){this.a=a}, +bIK(a,b,c){var s,r,q,p,o,n,m,l,k,j +if(a===b)return a +s=A.W(a.a,b.a,c) +r=A.fd(a.b,b.b,c) +q=A.ag(a.c,b.c,c) +p=A.W(a.d,b.d,c) +o=A.W(a.e,b.e,c) +n=A.c1(a.f,b.f,c) +m=A.bJ(a.r,b.r,c,A.W7(),t.p8) +l=c<0.5 +if(l)k=a.w +else k=b.w +if(l)j=a.x +else j=b.x +if(l)l=a.y +else l=b.y +return new A.Df(s,r,q,p,o,n,m,k,j,l)}, +aM_(a){var s +a.ae(t.xF) +s=A.r(a) +return s.ah}, +Df:function Df(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}, +ajA:function ajA(){}, +bMe(a,b,c,d,e,f,g,h,i,j){var s=i!=null,r=s?-1.5707963267948966:-1.5707963267948966+h*3/2*3.141592653589793+d*3.141592653589793*2+c*0.5*3.141592653589793 +return new A.Fv(a,j,i,b,h,c,d,g,e,r,s?A.S(i,0,1)*6.282185307179586:Math.max(b*3/2*3.141592653589793-h*3/2*3.141592653589793,0.001),f,null)}, +bor(a,b,c,d,e,f,g,h,i,j){return new A.o2(h,f,g,i,a,b,j,d,e,c)}, +b_R:function b_R(a,b){this.a=a +this.b=b}, +a6z:function a6z(){}, +ahz:function ahz(a,b,c,d,e,f,g){var _=this +_.b=a +_.c=b +_.d=c +_.e=d +_.f=e +_.r=f +_.a=g}, +b60:function b60(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +KO:function KO(a,b,c,d,e,f,g){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.a=g}, +ahA:function ahA(a,b,c){var _=this +_.d=$ +_.f9$=a +_.c4$=b +_.a=null +_.b=c +_.c=null}, +b61:function b61(a,b){this.a=a +this.b=b}, +Fv:function Fv(a,b,c,d,e,f,g,h,i,j,k,l,m){var _=this +_.b=a +_.c=b +_.d=c +_.e=d +_.f=e +_.r=f +_.w=g +_.x=h +_.y=i +_.z=j +_.Q=k +_.as=l +_.a=m}, +o2:function o2(a,b,c,d,e,f,g,h,i,j){var _=this +_.z=a +_.Q=b +_.as=c +_.c=d +_.d=e +_.e=f +_.f=g +_.r=h +_.w=i +_.a=j}, +Q6:function Q6(a,b,c){var _=this +_.d=$ +_.f9$=a +_.c4$=b +_.a=null +_.b=c +_.c=null}, +b1W:function b1W(a){this.a=a}, +ak5:function ak5(a,b,c,d,e,f,g,h,i,j,k,l,m,n){var _=this +_.ax=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 +_.a=n}, +a70:function a70(a,b,c,d,e,f,g,h,i,j){var _=this +_.z=a +_.Q=b +_.as=c +_.c=d +_.d=e +_.e=f +_.f=g +_.r=h +_.w=i +_.a=j}, +ak6:function ak6(a,b,c){var _=this +_.z=_.y=$ +_.Q=null +_.d=$ +_.f9$=a +_.c4$=b +_.a=null +_.b=c +_.c=null}, +b8M:function b8M(a){this.a=a}, +b1U:function b1U(a,b,c,d,e,f){var _=this +_.f=a +_.r=$ +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f}, +b5Z:function b5Z(a,b,c,d,e,f){var _=this +_.f=a +_.r=$ +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f}, +b1V:function b1V(a,b,c,d,e,f){var _=this +_.f=a +_.r=$ +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f}, +b6_:function b6_(a,b,c,d,e,f){var _=this +_.f=a +_.r=$ +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f}, +V0:function V0(){}, +Vi:function Vi(){}, +bIW(a,b,c){var s,r,q,p +if(a===b)return a +s=A.W(a.a,b.a,c) +r=A.W(a.b,b.b,c) +q=A.ag(a.c,b.c,c) +p=A.W(a.d,b.d,c) +return new A.Dm(s,r,q,p,A.W(a.e,b.e,c))}, +aMe(a){var s +a.ae(t.C0) +s=A.r(a) +return s.bG}, +Dm:function Dm(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +ajD:function ajD(){}, +b8o:function b8o(a,b){this.a=a +this.b=b}, +Dr:function Dr(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.x=g +_.y=h +_.as=i +_.at=j +_.ax=k +_.ch=l +_.CW=m +_.cx=n +_.a=o +_.$ti=p}, +Gu:function Gu(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q){var _=this +_.d=a +_.k9$=b +_.mP$=c +_.oK$=d +_.uY$=e +_.uZ$=f +_.tc$=g +_.v_$=h +_.td$=i +_.EV$=j +_.qK$=k +_.pE$=l +_.pF$=m +_.dL$=n +_.b_$=o +_.a=null +_.b=p +_.c=null +_.$ti=q}, +b8m:function b8m(a){this.a=a}, +b8n:function b8n(a,b){this.a=a +this.b=b}, +ajK:function ajK(a){var _=this +_.at=_.as=_.Q=_.z=_.y=_.x=_.w=_.r=_.f=_.e=_.d=_.c=_.b=_.a=null +_.ak$=0 +_.ah$=a +_.aT$=_.bG$=0 +_.bK$=!1}, +b8g:function b8g(a,b,c,d,e,f,g){var _=this +_.r=a +_.x=_.w=$ +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f +_.f=g}, +b8h:function b8h(a){this.a=a}, +b8i:function b8i(a){this.a=a}, +b8j:function b8j(a,b,c,d,e,f,g){var _=this +_.r=a +_.x=_.w=$ +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f +_.f=g}, +b8k:function b8k(a){this.a=a}, +b8l:function b8l(a){this.a=a}, +H8:function H8(){}, +H9:function H9(){}, +bjy(a,b,c,d,e,f,g){return new A.My(f,b,c,a,e,d,null,g.h("My<0>"))}, +b8p:function b8p(a,b){this.a=a +this.b=b}, +My:function My(a,b,c,d,e,f,g,h){var _=this +_.c=a +_.d=b +_.e=c +_.w=d +_.at=e +_.ax=f +_.a=g +_.$ti=h}, +aN1:function aN1(a){this.a=a}, +bJ0(a,b,c){var s,r,q,p,o,n +if(a===b&&!0)return a +s=c<0.5 +if(s)r=a.a +else r=b.a +q=t.MH +p=A.bJ(a.b,b.b,c,A.dj(),q) +if(s)o=a.e +else o=b.e +q=A.bJ(a.c,b.c,c,A.dj(),q) +n=A.ag(a.d,b.d,c) +if(s)s=a.f +else s=b.f +return new A.Ds(r,p,q,n,o,s)}, +bru(a){var s +a.ae(t.FL) +s=A.r(a) +return s.aT}, +Ds:function Ds(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +ajM:function ajM(){}, +qJ(a,b){return new A.yn(a,b,null)}, +vo:function vo(a,b){this.a=a +this.b=b}, +aOG:function aOG(a,b){this.a=a +this.b=b}, +b59:function b59(a,b){this.a=a +this.b=b}, +yn:function yn(a,b,c){this.c=a +this.f=b +this.a=c}, +MF:function MF(a,b,c){var _=this +_.x=_.w=_.r=_.f=_.e=_.d=$ +_.as=_.Q=_.y=null +_.dL$=a +_.b_$=b +_.a=null +_.b=c +_.c=null}, +aOB:function aOB(a){this.a=a}, +aOz:function aOz(a,b){this.a=a +this.b=b}, +aOA:function aOA(a){this.a=a}, +aOE:function aOE(a,b){this.a=a +this.b=b}, +aOC:function aOC(a){this.a=a}, +aOD:function aOD(a,b){this.a=a +this.b=b}, +aOF:function aOF(a,b){this.a=a +this.b=b}, +Sy:function Sy(){}, +e_(a,b,c,d,e,f,g,h,i,j,k){return new A.na(h,i,a,c,j,k,f,b,d,e,g,null)}, +oO(a){var s=a.F_(t.Np) +if(s!=null)return s +throw A.c(A.BL(A.a([A.ts("Scaffold.of() called with a context that does not contain a Scaffold."),A.bX("No Scaffold ancestor could be found starting from the context that was passed to Scaffold.of(). This usually happens when the context provided is from the same StatefulWidget as that whose build function actually creates the Scaffold widget being sought."),A.a0I('There are several ways to avoid this problem. The simplest is to use a Builder to get a context that is "under" the Scaffold. For an example of this, please see the documentation for Scaffold.of():\n https://api.flutter.dev/flutter/material/Scaffold/of.html'),A.a0I("A more efficient solution is to split your build function into several widgets. This introduces a new context from which you can obtain the Scaffold. In this solution, you would have an outer widget that creates the Scaffold populated by instances of your new inner widgets, and then in these inner widgets you would use Scaffold.of().\nA less elegant but more expedient solution is assign a GlobalKey to the Scaffold, then use the key.currentState property to obtain the ScaffoldState rather than using the Scaffold.of() function."),a.aH0("The context used was")],t.R)))}, +kK:function kK(a,b){this.a=a +this.b=b}, +Nb:function Nb(a,b){this.c=a +this.a=b}, +a8_:function a8_(a,b,c,d,e,f){var _=this +_.d=a +_.e=b +_.r=c +_.y=_.x=null +_.dL$=d +_.b_$=e +_.a=null +_.b=f +_.c=null}, +aQA:function aQA(a,b,c){this.a=a +this.b=b +this.c=c}, +T0:function T0(a,b,c){this.f=a +this.b=b +this.a=c}, +aQB:function aQB(a,b,c,d,e,f,g,h){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.w=g +_.y=h}, +bci:function bci(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +a7Z:function a7Z(a,b){this.a=a +this.b=b}, +al1:function al1(a,b,c){var _=this +_.a=a +_.b=null +_.c=b +_.ak$=0 +_.ah$=c +_.aT$=_.bG$=0 +_.bK$=!1}, +Fu:function Fu(a,b,c,d,e,f,g){var _=this +_.e=a +_.f=b +_.r=c +_.a=d +_.b=e +_.c=f +_.d=g}, +adA:function adA(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +b0I:function b0I(a){this.a=a}, +b9T:function b9T(a,b,c,d,e,f,g,h,i,j,k,l,m,n){var _=this +_.d=a +_.e=b +_.f=c +_.r=d +_.w=e +_.x=f +_.y=g +_.z=h +_.Q=i +_.as=j +_.at=k +_.ax=l +_.ay=m +_.a=n +_.c=_.b=null}, +QW:function QW(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.a=f}, +QX:function QX(a,b,c){var _=this +_.x=_.w=_.r=_.f=_.e=_.d=$ +_.y=null +_.dL$=a +_.b_$=b +_.a=null +_.b=c +_.c=null}, +b40:function b40(a,b){this.a=a +this.b=b}, +na:function na(a,b,c,d,e,f,g,h,i,j,k,l){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.at=g +_.ch=h +_.CW=i +_.cx=j +_.fx=k +_.a=l}, +DQ:function DQ(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){var _=this +_.d=a +_.e=b +_.f=c +_.r=null +_.w=d +_.x=e +_.Q=_.z=_.y=null +_.as=f +_.at=null +_.ax=g +_.ay=null +_.CW=_.ch=$ +_.cy=_.cx=null +_.dx=_.db=$ +_.dy=!1 +_.fr=h +_.d5$=i +_.j4$=j +_.x5$=k +_.hb$=l +_.j5$=m +_.dL$=n +_.b_$=o +_.a=null +_.b=p +_.c=null}, +aQK:function aQK(a,b){this.a=a +this.b=b}, +aQS:function aQS(a,b){this.a=a +this.b=b}, +aQQ:function aQQ(a,b){this.a=a +this.b=b}, +aQN:function aQN(a){this.a=a}, +aQO:function aQO(a,b){this.a=a +this.b=b}, +aQM:function aQM(a,b){this.a=a +this.b=b}, +aQL:function aQL(a){this.a=a}, +aQR:function aQR(){}, +aQJ:function aQJ(a,b){this.a=a +this.b=b}, +aQG:function aQG(a,b,c,d,e,f,g,h){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=h}, +aQH:function aQH(a){this.a=a}, +aQI:function aQI(a,b,c){this.a=a +this.b=b +this.c=c}, +aQD:function aQD(a,b,c){this.a=a +this.b=b +this.c=c}, +aQE:function aQE(a,b){this.a=a +this.b=b}, +aQC:function aQC(a,b){this.a=a +this.b=b}, +aQF:function aQF(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aQP:function aQP(a,b,c){this.a=a +this.b=b +this.c=c}, +aQU:function aQU(a,b,c){this.a=a +this.b=b +this.c=c}, +aQT:function aQT(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +afg:function afg(a,b){this.e=a +this.a=b +this.b=null}, +DP:function DP(){}, +b0Q:function b0Q(a,b){this.a=a +this.b=b}, +vs:function vs(a,b,c,d,e,f,g,h,i,j,k,l,m){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.x=g +_.y=h +_.z=i +_.Q=j +_.as=k +_.at=l +_.a=m}, +GN:function GN(a,b){var _=this +_.d=a +_.a=null +_.b=b +_.c=null}, +baP:function baP(a){this.a=a}, +Mh:function Mh(a,b,c,d,e){var _=this +_.e=a +_.a=b +_.b=c +_.c=d +_.$ti=e}, +al2:function al2(a,b,c){this.f=a +this.b=b +this.a=c}, +b9U:function b9U(){}, +T1:function T1(){}, +T2:function T2(){}, +T3:function T3(){}, +Vc:function Vc(){}, +brO(a,b,c){return new A.a88(a,b,c,null)}, +a88:function a88(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +Ge:function Ge(a,b,c,d,e,f,g,h,i,j,k,l,m,n){var _=this +_.fy=a +_.c=b +_.d=c +_.e=d +_.r=e +_.w=f +_.Q=g +_.ay=h +_.ch=i +_.CW=j +_.cx=k +_.cy=l +_.db=m +_.a=n}, +ai3:function ai3(a,b,c,d){var _=this +_.cy=$ +_.dx=_.db=!1 +_.fx=_.fr=_.dy=$ +_.w=_.r=_.f=_.e=_.d=null +_.y=_.x=$ +_.z=a +_.as=_.Q=!1 +_.at=$ +_.dL$=b +_.b_$=c +_.a=null +_.b=d +_.c=null}, +b6l:function b6l(a){this.a=a}, +b6i:function b6i(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +b6k:function b6k(a,b,c){this.a=a +this.b=b +this.c=c}, +b6j:function b6j(a,b,c){this.a=a +this.b=b +this.c=c}, +b6h:function b6h(a){this.a=a}, +b6r:function b6r(a){this.a=a}, +b6q:function b6q(a){this.a=a}, +b6p:function b6p(a){this.a=a}, +b6n:function b6n(a){this.a=a}, +b6o:function b6o(a){this.a=a}, +b6m:function b6m(a){this.a=a}, +bJH(a,b,c){var s,r,q,p,o,n,m,l,k,j,i +if(a===b&&!0)return a +s=t.u +r=A.bJ(a.a,b.a,c,A.bxt(),s) +q=A.bJ(a.b,b.b,c,A.Wa(),t.PM) +s=A.bJ(a.c,b.c,c,A.bxt(),s) +p=a.d +o=b.d +n=c<0.5 +p=n?p:o +o=a.e +m=b.e +o=n?o:m +n=A.Mz(a.f,b.f,c) +m=t.MH +l=A.bJ(a.r,b.r,c,A.dj(),m) +k=A.bJ(a.w,b.w,c,A.dj(),m) +m=A.bJ(a.x,b.x,c,A.dj(),m) +j=A.ag(a.y,b.y,c) +i=A.ag(a.z,b.z,c) +return new A.Np(r,q,s,p,o,n,l,k,m,j,i,A.ag(a.Q,b.Q,c))}, +bPG(a,b,c){return c<0.5?a:b}, +Np:function Np(a,b,c,d,e,f,g,h,i,j,k,l){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}, +al7:function al7(){}, +bJJ(a,b,c){var s,r,q,p,o,n,m,l,k,j +if(a===b)return a +s=A.bJ(a.a,b.a,c,A.Wa(),t.PM) +r=t.MH +q=A.bJ(a.b,b.b,c,A.dj(),r) +p=A.bJ(a.c,b.c,c,A.dj(),r) +o=A.bJ(a.d,b.d,c,A.dj(),r) +r=A.bJ(a.e,b.e,c,A.dj(),r) +n=A.bJI(a.f,b.f,c) +m=A.bJ(a.r,b.r,c,A.bln(),t.KX) +l=A.bJ(a.w,b.w,c,A.blx(),t.pc) +k=t.p8 +j=A.bJ(a.x,b.x,c,A.W7(),k) +k=A.bJ(a.y,b.y,c,A.W7(),k) +return new A.Nq(s,q,p,o,r,n,m,l,j,k,A.w2(a.z,b.z,c))}, +bJI(a,b,c){if(a==b)return a +return new A.ahp(a,b,c)}, +Nq:function Nq(a,b,c,d,e,f,g,h,i,j,k){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=h +_.x=i +_.y=j +_.z=k}, +ahp:function ahp(a,b,c){this.a=a +this.b=b +this.c=c}, +al8:function al8(){}, +bJL(a,b,c){var s,r,q,p,o,n,m,l +if(a===b)return a +s=A.W(a.a,b.a,c) +r=A.ag(a.b,b.b,c) +q=A.W(a.c,b.c,c) +p=A.bJK(a.d,b.d,c) +o=A.br3(a.e,b.e,c) +n=a.f +m=b.f +l=A.c1(n,m,c) +n=A.c1(n,m,c) +m=A.w2(a.w,b.w,c) +return new A.Nr(s,r,q,p,o,l,n,m,A.W(a.x,b.x,c))}, +bJK(a,b,c){if(a==null||b==null)return null +if(a===b)return a +return A.bn(a,b,c)}, +Nr:function Nr(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}, +al9:function al9(){}, +bJN(a,b,c){var s,r +if(a===b&&!0)return a +s=A.t4(a.a,b.a,c) +if(c<0.5)r=a.b +else r=b.b +return new A.Ns(s,r)}, +Ns:function Ns(a,b){this.a=a +this.b=b}, +ala:function ala(){}, +bun(a){var s=a.Gj(!1) +return new A.amX(a,new A.eN(s,B.id,B.c0),$.b5())}, +bJO(a,b){return A.bhD(b)}, +amX:function amX(a,b,c){var _=this +_.ax=a +_.a=b +_.ak$=0 +_.ah$=c +_.aT$=_.bG$=0 +_.bK$=!1}, +ale:function ale(a,b){var _=this +_.w=a +_.a=b +_.b=!0 +_.d=_.c=0 +_.f=_.e=null +_.r=!1}, +Nt:function Nt(a,b){this.c=a +this.a=b}, +Tf:function Tf(a,b){var _=this +_.d=$ +_.e=null +_.f=!1 +_.w=_.r=$ +_.x=a +_.a=null +_.b=b +_.c=null}, +bal:function bal(a,b){this.a=a +this.b=b}, +bak:function bak(a,b){this.a=a +this.b=b}, +bam:function bam(a){this.a=a}, +bs5(a,b,c,d,e,f){return new A.NN(f,e,d,c,a,b,null)}, +bN8(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,a0){var s=null,r=new A.Gz(o,A.OG(s,s,s,s,s,B.b3,s,s,1,B.aq),a0,l,j,m,b,f,n,q,k,i,h,g,p,d,e,a,!1,A.aB(t.T)) +r.aW() +r.alV(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,a0) +return r}, +baO:function baO(a,b){this.a=a +this.b=b}, +a8K:function a8K(a,b){this.a=a +this.b=b}, +NN:function NN(a,b,c,d,e,f,g){var _=this +_.c=a +_.e=b +_.w=c +_.x=d +_.y=e +_.z=f +_.a=g}, +Tp:function Tp(a,b,c,d,e){var _=this +_.r=_.f=_.e=_.d=$ +_.w=null +_.x=a +_.y=$ +_.z=null +_.Q=!1 +_.as=null +_.ax=_.at=!1 +_.ay=b +_.ch=null +_.dL$=c +_.b_$=d +_.a=null +_.b=e +_.c=null}, +baL:function baL(a,b){this.a=a +this.b=b}, +baM:function baM(a,b){this.a=a +this.b=b}, +baJ:function baJ(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +baK:function baK(a){this.a=a}, +baI:function baI(a){this.a=a}, +baN:function baN(a){this.a=a}, +alH:function alH(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){var _=this +_.d=a +_.e=b +_.f=c +_.r=d +_.w=e +_.x=f +_.y=g +_.z=h +_.Q=i +_.as=j +_.at=k +_.ax=l +_.ay=m +_.ch=n +_.CW=o +_.a=p}, +Gz:function Gz(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0){var _=this +_.B=a +_.av=_.Y=_.Z=$ +_.ar=b +_.aS=_.aG=$ +_.b8=!1 +_.b6=0 +_.bp=null +_.cc=c +_.fF=d +_.fm=e +_.ak=f +_.ah=g +_.bG=h +_.aT=i +_.bK=j +_.bc=k +_.dl=l +_.h_=m +_.dG=n +_.cS=o +_.ep=p +_.iz=q +_.dH=!1 +_.E=r +_.As$=s +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=a0 +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +b9j:function b9j(a){this.a=a}, +b9h:function b9h(){}, +b9g:function b9g(){}, +b9i:function b9i(a){this.a=a}, +b9k:function b9k(a,b){this.a=a +this.b=b}, +nA:function nA(a){this.a=a}, +GL:function GL(a,b){this.a=a +this.b=b}, +anP:function anP(a,b){this.d=a +this.a=b}, +akE:function akE(a,b,c){var _=this +_.B=$ +_.Z=a +_.As$=b +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=c +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +baF:function baF(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,b0,b1,b2,b3){var _=this +_.k4=a +_.ok=b +_.a=c +_.b=d +_.c=e +_.d=f +_.e=g +_.f=h +_.r=i +_.w=j +_.x=k +_.y=l +_.z=m +_.Q=n +_.as=o +_.at=p +_.ax=q +_.ay=r +_.ch=s +_.CW=a0 +_.cx=a1 +_.cy=a2 +_.db=a3 +_.dx=a4 +_.dy=a5 +_.fr=a6 +_.fx=a7 +_.fy=a8 +_.go=a9 +_.id=b0 +_.k1=b1 +_.k2=b2 +_.k3=b3}, +baG:function baG(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,b0,b1,b2){var _=this +_.k4=a +_.ok=$ +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f +_.f=g +_.r=h +_.w=i +_.x=j +_.y=k +_.z=l +_.Q=m +_.as=n +_.at=o +_.ax=p +_.ay=q +_.ch=r +_.CW=s +_.cx=a0 +_.cy=a1 +_.db=a2 +_.dx=a3 +_.dy=a4 +_.fr=a5 +_.fx=a6 +_.fy=a7 +_.go=a8 +_.id=a9 +_.k1=b0 +_.k2=b1 +_.k3=b2}, +baH:function baH(a){this.a=a}, +Vu:function Vu(){}, +Vw:function Vw(){}, +VD:function VD(){}, +bs6(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,b0,b1){return new A.Ed(a7,b,k,a1,e,h,g,a,j,d,f,a3,n,i,o,a9,p,a6,a5,a8,b0,r,q,s,a0,a2,b1,l,a4,m,c)}, +bK8(b2,b3,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 +if(b2===b3)return b2 +s=A.ag(b2.a,b3.a,b4) +r=A.W(b2.b,b3.b,b4) +q=A.W(b2.c,b3.c,b4) +p=A.W(b2.d,b3.d,b4) +o=A.W(b2.e,b3.e,b4) +n=A.W(b2.r,b3.r,b4) +m=A.W(b2.f,b3.f,b4) +l=A.W(b2.w,b3.w,b4) +k=A.W(b2.x,b3.x,b4) +j=A.W(b2.y,b3.y,b4) +i=A.W(b2.z,b3.z,b4) +h=A.W(b2.Q,b3.Q,b4) +g=A.W(b2.as,b3.as,b4) +f=A.W(b2.at,b3.at,b4) +e=A.W(b2.ax,b3.ax,b4) +d=A.W(b2.ay,b3.ay,b4) +c=b4<0.5 +b=c?b2.ch:b3.ch +a=c?b2.CW:b3.CW +a0=c?b2.cx:b3.cx +a1=c?b2.cy:b3.cy +a2=c?b2.db:b3.db +a3=c?b2.dx:b3.dx +a4=c?b2.dy:b3.dy +a5=c?b2.fr:b3.fr +a6=c?b2.fx:b3.fx +a7=c?b2.fy:b3.fy +a8=A.c1(b2.go,b3.go,b4) +a9=A.ag(b2.id,b3.id,b4) +b0=c?b2.k1:b3.k1 +b1=c?b2.k2:b3.k2 +return A.bs6(l,r,c?b2.k3:b3.k3,j,o,i,n,m,f,k,q,a9,b1,g,e,b,a4,a3,a5,a6,p,a7,h,b0,a0,a,s,a1,d,a2,a8)}, +aT3:function aT3(a,b){this.a=a +this.b=b}, +Ed:function Ed(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,b0,b1){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 +_.CW=r +_.cx=s +_.cy=a0 +_.db=a1 +_.dx=a2 +_.dy=a3 +_.fr=a4 +_.fx=a5 +_.fy=a6 +_.go=a7 +_.id=a8 +_.k1=a9 +_.k2=b0 +_.k3=b1}, +aTv:function aTv(){}, +aTy:function aTy(){}, +aTz:function aTz(){}, +asX:function asX(){}, +aPW:function aPW(){}, +aPV:function aPV(){}, +aPU:function aPU(){}, +aPT:function aPT(){}, +a7_:function a7_(){}, +b8L:function b8L(){}, +az1:function az1(){}, +b2T:function b2T(){}, +akU:function akU(){}, +alI:function alI(){}, +NR:function NR(a,b){this.a=a +this.b=b}, +bKc(a,b,c){var s,r,q,p,o,n,m,l,k,j,i,h +if(a===b&&!0)return a +s=A.W(a.a,b.a,c) +r=A.W(a.b,b.b,c) +q=A.W(a.c,b.c,c) +p=A.c1(a.d,b.d,c) +o=A.ag(a.e,b.e,c) +n=A.fd(a.f,b.f,c) +if(c<0.5)m=a.r +else m=b.r +l=A.ag(a.w,b.w,c) +k=A.Br(a.x,b.x,c) +j=A.W(a.z,b.z,c) +i=A.ag(a.Q,b.Q,c) +h=A.W(a.as,b.as,c) +return new A.NS(s,r,q,p,o,n,m,l,k,j,i,h,A.W(a.at,b.at,c))}, +NS:function NS(a,b,c,d,e,f,g,h,i,j,k,l,m){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=h +_.x=i +_.z=j +_.Q=k +_.as=l +_.at=m}, +alR:function alR(){}, +bsm(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1){return new A.a9K(a1,l,a,c,f,h,b,k,g,n,q,s,a0,r,i,B.aoS,!1,e,j,o,p,m,!1,null)}, +bbi:function bbi(a,b){this.a=a +this.b=b}, +a9K:function a9K(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.x=g +_.y=h +_.z=i +_.Q=j +_.as=k +_.at=l +_.ax=m +_.ch=n +_.CW=o +_.cx=p +_.cy=q +_.db=r +_.dx=s +_.fx=a0 +_.fy=a1 +_.id=a2 +_.k1=a3 +_.a=a4}, +RP:function RP(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5,a6){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.x=g +_.y=h +_.z=i +_.Q=j +_.as=k +_.at=l +_.ax=m +_.ay=n +_.ch=o +_.cx=p +_.cy=q +_.db=r +_.dx=s +_.dy=a0 +_.fr=a1 +_.fx=a2 +_.fy=a3 +_.go=a4 +_.id=a5 +_.a=a6}, +RQ:function RQ(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){var _=this +_.d=a +_.e=!1 +_.k9$=b +_.mP$=c +_.oK$=d +_.uY$=e +_.uZ$=f +_.tc$=g +_.v_$=h +_.td$=i +_.EV$=j +_.qK$=k +_.pE$=l +_.pF$=m +_.dL$=n +_.b_$=o +_.a=null +_.b=p +_.c=null}, +b6v:function b6v(a){this.a=a}, +b6w:function b6w(a){this.a=a}, +b6u:function b6u(a){this.a=a}, +b6x:function b6x(a,b){this.a=a +this.b=b}, +TI:function TI(a){var _=this +_.aV=_.cO=_.c5=_.y2=_.y1=_.xr=_.x2=_.x1=_.to=_.ry=_.rx=_.RG=_.R8=_.p4=_.p3=_.p2=_.p1=_.ok=_.k4=_.k3=_.k2=_.k1=_.id=_.go=_.fy=_.fx=_.fr=_.dy=_.dx=_.db=null +_.B=_.bO=_.bQ=_.cb=_.bU=null +_.Y=_.Z=!1 +_.at=_.as=_.Q=_.z=_.y=_.x=_.w=_.r=_.f=_.e=_.d=_.c=_.b=_.a=_.ar=_.av=null +_.ak$=0 +_.ah$=a +_.aT$=_.bG$=0 +_.bK$=!1}, +bbh:function bbh(a,b,c){this.a=a +this.b=b +this.c=c}, +amj:function amj(){}, +amk:function amk(){}, +bb6:function bb6(a,b,c,d,e,f,g,h,i,j,k){var _=this +_.y=a +_.z=b +_.a=c +_.b=d +_.c=e +_.d=f +_.e=g +_.f=h +_.r=i +_.w=j +_.x=k}, +bb9:function bb9(a,b){this.a=a +this.b=b}, +bba:function bba(a,b){this.a=a +this.b=b}, +bb7:function bb7(){}, +bb8:function bb8(a){this.a=a}, +bbb:function bbb(a,b,c,d,e,f,g,h,i,j){var _=this +_.y=a +_.z=$ +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f +_.f=g +_.r=h +_.w=i +_.x=j}, +bbd:function bbd(a){this.a=a}, +bbe:function bbe(a){this.a=a}, +bbf:function bbf(a){this.a=a}, +bbc:function bbc(a){this.a=a}, +aml:function aml(a,b){this.a=a +this.b=b}, +bb5:function bb5(a){this.a=a}, +Vj:function Vj(){}, +Vk:function Vk(){}, +apr:function apr(){}, +aps:function aps(){}, +z2(a,b,c,d,e,f,g){return new A.Ez(g,c,f,e,d,a,b)}, +bbg:function bbg(a,b){this.a=a +this.b=b}, +Ez:function Ez(a,b,c,d,e,f,g){var _=this +_.c=a +_.d=b +_.fy=c +_.go=d +_.id=e +_.p1=f +_.a=g}, +aWL:function aWL(a){this.a=a}, +bKw(a,b,c){var s,r,q,p,o,n,m,l,k +if(a===b&&!0)return a +s=t.MH +r=A.bJ(a.a,b.a,c,A.dj(),s) +q=A.bJ(a.b,b.b,c,A.dj(),s) +p=A.bJ(a.c,b.c,c,A.dj(),s) +o=A.bJ(a.d,b.d,c,A.Wa(),t.PM) +n=c<0.5 +if(n)m=a.e +else m=b.e +if(n)l=a.f +else l=b.f +s=A.bJ(a.r,b.r,c,A.dj(),s) +k=A.ag(a.w,b.w,c) +if(n)n=a.x +else n=b.x +return new A.EA(r,q,p,o,m,l,s,k,n)}, +bjT(a){var s +a.ae(t.OK) +s=A.r(a) +return s.cS}, +EA:function EA(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}, +amm:function amm(){}, +bKy(a,b,c,d,e,f,g,h,i,j,k,l,m){return new A.z5(b,c,d,a,e,f,g,l,m,i,j,h,k)}, +bKz(a,b,c){var s,r,q,p,o,n,m,l,k,j,i,h,g +if(a===b)return a +s=A.axe(a.a,b.a,c) +r=A.W(a.b,b.b,c) +q=c<0.5 +p=q?a.c:b.c +o=A.W(a.d,b.d,c) +n=A.W(a.e,b.e,c) +m=A.fx(a.f,b.f,c) +l=A.c1(a.r,b.r,c) +k=A.W(a.w,b.w,c) +j=A.c1(a.x,b.x,c) +i=A.bJ(a.y,b.y,c,A.dj(),t.MH) +h=q?a.z:b.z +g=q?a.Q:b.Q +return new A.z5(s,r,p,o,n,m,l,k,j,i,h,g,q?a.as:b.as)}, +z5:function z5(a,b,c,d,e,f,g,h,i,j,k,l,m){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}, +ams:function ams(){}, +bsq(a,b,c,d){return new A.qW(A.bhH(null,b,d),B.bt,c,b,b,$.b5())}, +bi9(a,b,c){return new A.J9(c,b,a,null)}, +bia(a){var s=a.ae(t.oq) +return s==null?null:s.f}, +qW:function qW(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.ak$=_.f=0 +_.ah$=f +_.aT$=_.bG$=0 +_.bK$=!1}, +aWZ:function aWZ(a){this.a=a}, +TN:function TN(a,b,c,d){var _=this +_.f=a +_.r=b +_.b=c +_.a=d}, +J9:function J9(a,b,c,d){var _=this +_.c=a +_.d=b +_.f=c +_.a=d}, +af5:function af5(a,b,c){var _=this +_.d=$ +_.f9$=a +_.c4$=b +_.a=null +_.b=c +_.c=null}, +V8:function V8(){}, +uV:function uV(a,b,c){this.a=a +this.b=b +this.c=c}, +bco:function bco(a,b,c){this.b=a +this.c=b +this.a=c}, +z4(a){return new A.z3(a,null)}, +buj(a,b,c,d,e,f,g,h,i){return new A.amw(g,i,e,f,h,c,b,a,null)}, +bPn(a){var s,r,q=a.gek(a).x +q===$&&A.b() +s=a.e +r=a.d +if(a.f===0)return A.S(Math.abs(r-q),0,1) +return Math.abs(q-r)/Math.abs(r-s)}, +aWX(a,b,c,d){return new A.Om(d,a,c,b,null)}, +aWY(a,b,c){return new A.On(b,a,c)}, +a9P:function a9P(a,b){this.a=a +this.b=b}, +Ol:function Ol(a,b){this.a=a +this.b=b}, +z3:function z3(a,b){this.c=a +this.a=b}, +amw:function amw(a,b,c,d,e,f,g,h,i){var _=this +_.e=a +_.f=b +_.r=c +_.x=d +_.y=e +_.z=f +_.Q=g +_.c=h +_.a=i}, +bbw:function bbw(a,b){this.a=a +this.b=b}, +amv:function amv(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){var _=this +_.pG=a +_.B=b +_.Z=c +_.Y=d +_.av=e +_.ar=f +_.aG=g +_.aS=h +_.b8=0 +_.b6=i +_.bp=j +_.a9j$=k +_.aHN$=l +_.d_$=m +_.a3$=n +_.dk$=o +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=p +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +amu:function amu(a,b,c,d,e,f,g,h,i,j){var _=this +_.ax=a +_.e=b +_.f=c +_.r=d +_.w=e +_.x=f +_.y=g +_.z=h +_.c=i +_.a=j}, +Rn:function Rn(a,b,c,d,e,f,g,h){var _=this +_.b=a +_.c=b +_.d=c +_.e=d +_.f=e +_.r=f +_.w=g +_.Q=_.z=_.y=_.x=null +_.as=!1 +_.a=h}, +adU:function adU(a){this.a=a}, +FH:function FH(a,b){this.a=a +this.b=b}, +TJ:function TJ(a,b,c,d,e,f,g,h){var _=this +_.av=a +_.ar=!1 +_.aG=!0 +_.k3=0 +_.k4=b +_.ok=null +_.r=c +_.w=d +_.x=e +_.y=f +_.Q=_.z=null +_.as=0 +_.ax=_.at=null +_.ay=!1 +_.ch=!0 +_.CW=!1 +_.cx=null +_.cy=!1 +_.dx=_.db=null +_.dy=g +_.fr=null +_.ak$=0 +_.ah$=h +_.aT$=_.bG$=0 +_.bK$=!1}, +amr:function amr(a,b,c,d,e){var _=this +_.as=a +_.a=b +_.b=c +_.f=d +_.ak$=0 +_.ah$=e +_.aT$=_.bG$=0 +_.bK$=!1}, +Om:function Om(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.as=d +_.a=e}, +TK:function TK(a){var _=this +_.r=_.f=_.e=_.d=null +_.y=_.x=_.w=$ +_.z=!1 +_.a=null +_.b=a +_.c=null}, +bbs:function bbs(){}, +bbo:function bbo(){}, +bbp:function bbp(a,b){this.a=a +this.b=b}, +bbq:function bbq(a,b){this.a=a +this.b=b}, +bbr:function bbr(a,b){this.a=a +this.b=b}, +On:function On(a,b,c){this.c=a +this.d=b +this.a=c}, +TL:function TL(a){var _=this +_.d=null +_.f=_.e=$ +_.r=null +_.x=_.w=0 +_.y=!1 +_.a=null +_.b=a +_.c=null}, +bbt:function bbt(a){this.a=a}, +bbu:function bbu(a,b,c){this.a=a +this.b=b +this.c=c}, +bbv:function bbv(a){this.a=a}, +bbx:function bbx(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){var _=this +_.at=a +_.ax=b +_.a=c +_.b=d +_.c=e +_.d=f +_.e=g +_.f=h +_.r=i +_.w=j +_.x=k +_.y=l +_.z=m +_.Q=n +_.as=o}, +bby:function bby(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){var _=this +_.at=a +_.ay=_.ax=$ +_.ch=b +_.a=c +_.b=d +_.c=e +_.d=f +_.e=g +_.f=h +_.r=i +_.w=j +_.x=k +_.y=l +_.z=m +_.Q=n +_.as=o}, +bbz:function bbz(a){this.a=a}, +aod:function aod(){}, +aol:function aol(){}, +eM(a,b,c,d,e,f,g,h,i,j,k){return new A.EF(i,h,g,f,k,c,d,!1,j,!0,b,e)}, +Ox(a,b,c,d,e,f,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,b0,b1,b2){var s,r,q,p,o,n,m,l,k,j,i,h=null,g=a3==null?h:a3 +if(e==null)s=h +else s=e +r=g==null +q=r&&s==null?h:new A.TP(g,s) +p=c==null +if(p&&d==null)o=h +else if(d==null){p=p?h:new A.bE(c,t.Il) +o=p}else{p=new A.TP(c,d) +o=p}n=r?h:new A.amF(g) +r=b1==null?h:new A.bE(b1,t.XL) +p=a7==null?h:new A.bE(a7,t.h9) +m=a0==null?h:new A.bE(a0,t.QL) +l=a6==null?h:new A.bE(a6,t.Ak) +k=a5==null?h:new A.bE(a5,t.iL) +j=a4==null?h:new A.bE(a4,t.iL) +i=a8==null?h:new A.bE(a8,t.kU) +return A.Ie(a,b,o,m,a1,h,q,h,h,j,k,new A.amE(a2,f),n,l,p,i,h,a9,h,b0,r,b2)}, +bvJ(a){var s=A.r(a).y?B.rO:B.aT,r=A.cT(a,B.bb) +r=r==null?null:r.c +return A.AB(s,B.bC,B.e6,r==null?1:r)}, +bbE(a,b,c,d){var s=null +return new A.amI(c,s,s,s,d,B.l,s,!1,s,!0,new A.amJ(b,a,s),s)}, +EF:function EF(a,b,c,d,e,f,g,h,i,j,k,l){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.x=g +_.y=h +_.z=i +_.Q=j +_.as=k +_.a=l}, +TP:function TP(a,b){this.a=a +this.b=b}, +amF:function amF(a){this.a=a}, +amE:function amE(a,b){this.a=a +this.b=b}, +amI:function amI(a,b,c,d,e,f,g,h,i,j,k,l){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.x=g +_.y=h +_.z=i +_.Q=j +_.as=k +_.a=l}, +amJ:function amJ(a,b,c){this.c=a +this.d=b +this.a=c}, +amG:function amG(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3){var _=this +_.dy=a +_.fr=$ +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f +_.f=g +_.r=h +_.w=i +_.x=j +_.y=k +_.z=l +_.Q=m +_.as=n +_.at=o +_.ax=p +_.ay=q +_.ch=r +_.CW=s +_.cx=a0 +_.cy=a1 +_.db=a2 +_.dx=a3}, +bbB:function bbB(a){this.a=a}, +bbD:function bbD(a){this.a=a}, +bbC:function bbC(){}, +apt:function apt(){}, +bKC(a,b,c){if(a===b)return a +return new A.Ow(A.t4(a.a,b.a,c))}, +Ow:function Ow(a){this.a=a}, +amH:function amH(){}, +EJ(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,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,d1,d2,d3,d4,d5,d6,d7,d8,d9,e0,e1,e2,e3,e4,e5){var s,r,q,p +if(d4==null)s=b6?B.oQ:B.oR +else s=d4 +if(d5==null)r=b6?B.oS:B.oT +else r=d5 +if(a9==null)q=b3===1?B.KG:B.p3 +else q=a9 +if(a2==null)p=!0 +else p=a2 +return new A.OA(b0,i,a6,o,q,e3,e1,d8,d7,d9,e0,e2,c,b7,b6,!0,s,r,!0,b3,b4,!1,!1,e4,d3,b1,b2,b9,c0,c1,b8,a7,a4,n,k,m,l,j,d1,d2,a8,c8,p,d0,a0,c2,c3,b5,d,c9,c7,b,f,c5,!0,!0,g,h,!0,e5,d6,null)}, +bKH(a,b){return A.bhD(b)}, +bKI(a){return B.ia}, +bPL(a){return A.nG(new A.be7(a))}, +bPM(a){return A.nG(new A.be8(a))}, +amM:function amM(a,b){var _=this +_.w=a +_.a=b +_.b=!0 +_.d=_.c=0 +_.f=_.e=null +_.r=!1}, +OA:function OA(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,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,d1,d2,d3,d4,d5,d6,d7,d8,d9,e0,e1,e2){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.x=g +_.y=h +_.z=i +_.Q=j +_.as=k +_.at=l +_.ax=m +_.ay=n +_.ch=o +_.CW=p +_.cx=q +_.cy=r +_.db=s +_.dx=a0 +_.dy=a1 +_.fr=a2 +_.fx=a3 +_.fy=a4 +_.go=a5 +_.id=a6 +_.k1=a7 +_.k2=a8 +_.k3=a9 +_.k4=b0 +_.ok=b1 +_.p1=b2 +_.p2=b3 +_.p3=b4 +_.p4=b5 +_.R8=b6 +_.RG=b7 +_.rx=b8 +_.ry=b9 +_.to=c0 +_.x1=c1 +_.x2=c2 +_.xr=c3 +_.y1=c4 +_.y2=c5 +_.c5=c6 +_.cO=c7 +_.aV=c8 +_.bU=c9 +_.cb=d0 +_.bQ=d1 +_.bO=d2 +_.B=d3 +_.Z=d4 +_.Y=d5 +_.av=d6 +_.ar=d7 +_.aG=d8 +_.aS=d9 +_.b8=e0 +_.b6=e1 +_.a=e2}, +TQ:function TQ(a,b,c,d,e,f,g){var _=this +_.e=_.d=null +_.r=_.f=!1 +_.x=_.w=$ +_.y=a +_.d5$=b +_.j4$=c +_.x5$=d +_.hb$=e +_.j5$=f +_.a=null +_.b=g +_.c=null}, +bbG:function bbG(){}, +bbI:function bbI(a,b){this.a=a +this.b=b}, +bbH:function bbH(a,b){this.a=a +this.b=b}, +bbK:function bbK(a){this.a=a}, +bbL:function bbL(a){this.a=a}, +bbM:function bbM(a,b,c){this.a=a +this.b=b +this.c=c}, +bbO:function bbO(a){this.a=a}, +bbP:function bbP(a){this.a=a}, +bbN:function bbN(a,b){this.a=a +this.b=b}, +bbJ:function bbJ(a){this.a=a}, +be7:function be7(a){this.a=a}, +be8:function be8(a){this.a=a}, +bcZ:function bcZ(){}, +VF:function VF(){}, +bss(a,b,c,d){var s=null,r=a.a.a +return new A.OB(a,d,new A.aXm(b,s,s,s,s,s,s,s,B.b3,s,s,B.dX,!1,s,!1,s,"\u2022",c,!0,s,s,!0,s,1,s,!1,s,s,s,s,s,s,s,2,s,s,s,B.dx,s,s,s,s,s,s,s,!0,s,A.bVT(),s,s,s,s,s,B.c3,B.bK,B.C,s,B.E,!0,!0),r,!0,B.pZ,s,s)}, +bKJ(a,b){return A.bhD(b)}, +OB:function OB(a,b,c,d,e,f,g,h){var _=this +_.z=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.x=g +_.a=h}, +aXm:function aXm(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,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,d1,d2,d3,d4,d5,d6,d7,d8,d9,e0){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 +_.CW=r +_.cx=s +_.cy=a0 +_.db=a1 +_.dx=a2 +_.dy=a3 +_.fr=a4 +_.fx=a5 +_.fy=a6 +_.go=a7 +_.id=a8 +_.k1=a9 +_.k2=b0 +_.k3=b1 +_.k4=b2 +_.ok=b3 +_.p1=b4 +_.p2=b5 +_.p3=b6 +_.p4=b7 +_.R8=b8 +_.RG=b9 +_.rx=c0 +_.ry=c1 +_.to=c2 +_.x1=c3 +_.x2=c4 +_.xr=c5 +_.y1=c6 +_.y2=c7 +_.c5=c8 +_.cO=c9 +_.aV=d0 +_.bU=d1 +_.cb=d2 +_.bQ=d3 +_.bO=d4 +_.B=d5 +_.Z=d6 +_.Y=d7 +_.av=d8 +_.ar=d9 +_.aG=e0}, +aXn:function aXn(a,b){this.a=a +this.b=b}, +GY:function GY(a,b,c,d,e,f,g,h){var _=this +_.ax=null +_.d=$ +_.e=a +_.f=b +_.d5$=c +_.j4$=d +_.x5$=e +_.hb$=f +_.j5$=g +_.a=null +_.b=h +_.c=null}, +a4Y:function a4Y(){}, +aIC:function aIC(){}, +amN:function amN(a,b){this.b=a +this.a=b}, +ai6:function ai6(){}, +bKL(a,b,c){var s,r +if(a===b)return a +s=A.W(a.a,b.a,c) +r=A.W(a.b,b.b,c) +return new A.OK(s,r,A.W(a.c,b.c,c))}, +OK:function OK(a,b,c){this.a=a +this.b=b +this.c=c}, +amP:function amP(){}, +bKM(a,b,c){return new A.aa9(a,b,c,null)}, +bKS(a,b){return new A.amQ(b,null)}, +aa9:function aa9(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +TV:function TV(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +amU:function amU(a,b,c,d){var _=this +_.d=!1 +_.e=a +_.dL$=b +_.b_$=c +_.a=null +_.b=d +_.c=null}, +bc5:function bc5(a){this.a=a}, +bc4:function bc4(a){this.a=a}, +amV:function amV(a,b,c,d){var _=this +_.e=a +_.f=b +_.c=c +_.a=d}, +amW:function amW(a,b,c,d){var _=this +_.C=null +_.a0=a +_.aw=b +_.E$=c +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=d +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +bc6:function bc6(a,b,c){this.a=a +this.b=b +this.c=c}, +amR:function amR(a,b,c,d){var _=this +_.e=a +_.f=b +_.c=c +_.a=d}, +amS:function amS(a,b,c){var _=this +_.p1=$ +_.p2=a +_.d=_.c=_.b=_.a=_.CW=_.ay=null +_.e=$ +_.f=b +_.r=null +_.w=c +_.z=_.y=null +_.Q=!1 +_.as=!0 +_.ax=_.at=!1}, +akD:function akD(a,b,c,d,e,f){var _=this +_.B=-1 +_.Z=a +_.Y=b +_.d_$=c +_.a3$=d +_.dk$=e +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=f +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +b9l:function b9l(a,b,c){this.a=a +this.b=b +this.c=c}, +b9m:function b9m(a,b,c){this.a=a +this.b=b +this.c=c}, +b9o:function b9o(a,b){this.a=a +this.b=b}, +b9n:function b9n(a,b,c){this.a=a +this.b=b +this.c=c}, +b9p:function b9p(a){this.a=a}, +amQ:function amQ(a,b){this.c=a +this.a=b}, +amT:function amT(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +ap8:function ap8(){}, +apu:function apu(){}, +bKP(a){if(a===B.Lp||a===B.pL)return 14.5 +return 9.5}, +bKR(a){if(a===B.Lq||a===B.pL)return 14.5 +return 9.5}, +bKQ(a,b){if(a===0)return b===1?B.pL:B.Lp +if(a===b-1)return B.Lq +return B.aoT}, +H_:function H_(a,b){this.a=a +this.b=b}, +aab:function aab(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +bjX(a,b,c,d,e,f,a0,a1,a2,a3,a4,a5,a6,a7,a8){var s=null,r=d==null?s:d,q=e==null?s:e,p=f==null?s:f,o=a1==null?s:a1,n=a2==null?s:a2,m=a6==null?s:a6,l=a7==null?s:a7,k=a8==null?s:a8,j=a==null?s:a,i=b==null?s:b,h=c==null?s:c,g=a3==null?s:a3 +return new A.ff(r,q,p,a0,o,n,m,l,k,j,i,h,g,a4,a5==null?s:a5)}, +EP(a,b,c){var s,r,q,p,o,n,m,l,k,j,i,h,g,f +if(a===b&&!0)return a +s=A.c1(a.a,b.a,c) +r=A.c1(a.b,b.b,c) +q=A.c1(a.c,b.c,c) +p=A.c1(a.d,b.d,c) +o=A.c1(a.e,b.e,c) +n=A.c1(a.f,b.f,c) +m=A.c1(a.r,b.r,c) +l=A.c1(a.w,b.w,c) +k=A.c1(a.x,b.x,c) +j=A.c1(a.y,b.y,c) +i=A.c1(a.z,b.z,c) +h=A.c1(a.Q,b.Q,c) +g=A.c1(a.as,b.as,c) +f=A.c1(a.at,b.at,c) +return A.bjX(j,i,h,s,r,q,p,o,n,g,f,A.c1(a.ax,b.ax,c),m,l,k)}, +ff:function ff(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){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}, +amZ:function amZ(){}, +r(a){var s,r=a.ae(t.Nr),q=A.A(a,B.ax,t.D),p=q==null?null:q.gby() +if(p==null)p=B.N +s=r==null?null:r.w.c +if(s==null)s=$.bzo() +return A.bKX(s,s.p4.aeb(p))}, +EQ:function EQ(a,b,c){this.c=a +this.d=b +this.a=c}, +Rr:function Rr(a,b,c){this.w=a +this.b=b +this.a=c}, +z8:function z8(a,b){this.a=a +this.b=b}, +HE:function HE(a,b,c,d,e,f){var _=this +_.r=a +_.w=b +_.c=c +_.d=d +_.e=e +_.a=f}, +adc:function adc(a,b,c){var _=this +_.CW=null +_.e=_.d=$ +_.f9$=a +_.c4$=b +_.a=null +_.b=c +_.c=null}, +b0b:function b0b(){}, +bjZ(d3,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=null,d1=A.a([],t.a5),d2=A.cb() +switch(d2.a){case 0:case 1:case 2:s=B.a9x +break +case 3:case 4:case 5:s=B.kv +break +default:s=d0}r=A.bLx(d2) +d5=d5===!0 +if(d5)q=B.iK +else q=B.OG +if(d3==null){p=d4==null?d0:d4.a +o=p}else o=d3 +if(o==null)o=B.aB +n=o===B.am +if(d5){if(d4==null)d4=n?B.Pe:B.Pb +m=n?d4.cy:d4.b +l=n?d4.db:d4.c +k=d4.CW +j=d4.cy +i=d4.fr +if(i==null)i=d4.cx +h=d4.at +g=d3===B.am +f=k +e=m +d=l +c=f +b=j +a=c}else{f=d0 +e=f +d=e +h=d +i=h +c=i +b=c +k=b +j=k +a=j +g=a}if(e==null)e=n?B.r0:B.hI +a0=A.aY8(e) +a1=n?B.r7:B.r8 +a2=n?B.v:B.r_ +a3=a0===B.am +if(n)a4=B.mc +else{p=d4==null?d0:d4.f +a4=p==null?B.m6:p}a5=n?A.K(31,255,255,255):A.K(31,0,0,0) +a6=n?A.K(10,255,255,255):A.K(10,0,0,0) +if(k==null)k=n?B.m8:B.mi +if(f==null)f=k +if(b==null)b=n?B.d9:B.n +if(i==null)i=n?B.Qu:B.c5 +if(d4==null){a7=n?B.mc:B.m7 +p=n?B.e1:B.me +a8=A.aY8(B.hI)===B.am +a9=A.aY8(a7) +b0=a8?B.n:B.v +a9=a9===B.am?B.n:B.v +b1=n?B.n:B.v +b2=a8?B.n:B.v +d4=A.bhW(p,o,B.rb,d0,d0,d0,b2,n?B.v:B.n,d0,d0,b0,d0,a9,d0,b1,d0,d0,d0,d0,d0,B.hI,d0,d0,a7,d0,d0,b,d0,d0,d0,d0)}b3=n?B.a7:B.a6 +b4=n?B.e1:B.rc +if(c==null)c=n?B.d9:B.n +if(d==null){d=d4.f +if(d.l(0,e))d=B.n}b5=n?B.Pr:A.K(153,0,0,0) +b6=A.bog(!1,n?B.m6:B.iW,d4,d0,a5,36,d0,a6,B.MQ,s,88,d0,d0,d0,B.MS) +b7=n?B.Pm:B.Pl +b8=n?B.qK:B.m3 +b9=n?B.qK:B.Pn +if(d5){c0=A.bsO(d2,d0,d0,B.ajm,B.ajf,B.aji) +p=d4.a===B.aB +c1=p?d4.db:d4.cy +c2=p?d4.cy:d4.db +p=c0.a.a6O(c1,c1,c1) +a9=c0.b.a6O(c2,c2,c2) +c3=new A.EX(p,a9,c0.c,c0.d,c0.e)}else c3=A.bLf(d2) +c4=n?c3.b:c3.a +c5=a3?c3.b:c3.a +c6=c4.cU(d0) +c7=c5.cU(d0) +c8=n?B.tu:B.Uk +c9=a3?B.tu:B.Ul +if(h==null)h=B.rb +if(a==null)a=n?B.e1:B.me +if(j==null)j=n?B.d9:B.n +return A.bjY(d0,d0,B.Lw,g===!0,a,B.LD,B.a9t,j,B.LX,B.LY,B.lU,B.MR,b6,k,b,B.OY,B.P1,B.P2,d4,d0,B.QY,B.QZ,c,B.Rd,b7,i,B.Rl,B.Rr,B.Rt,B.Sg,h,B.Sm,A.bKV(d1),B.SF,B.SH,a5,b8,b5,a6,B.SU,c8,d,B.NK,B.W0,s,B.a9A,B.a9B,B.a9C,B.a9Q,B.a9R,B.a9T,B.aaZ,B.NZ,d2,B.abT,e,a2,a1,c9,c7,B.abV,B.abW,f,B.acz,B.acA,B.acB,b4,B.acC,B.rf,B.v,B.ae6,B.ae9,b9,q,B.aeN,B.aeV,B.aeW,B.afe,c6,B.ajB,B.ajE,a4,B.ajJ,c3,b3,d5,r)}, +bjY(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,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,d1,d2,d3,d4,d5,d6,d7,d8,d9,e0,e1,e2,e3,e4,e5,e6,e7,e8,e9,f0,f1,f2,f3,f4,f5,f6,f7,f8,f9,g0,g1,g2,g3,g4,g5,g6,g7){return new A.mc(d,a0,b3,c3,c5,d3,d4,e4,f4,g6,g7,h,n,o,s,a3,a5,a6,b6,b7,b8,b9,c2,d6,d7,d8,e3,e7,e9,f0,f3,g5,c1,d9,e0,f9,g4,a,c,f,g,i,j,k,l,m,p,q,r,a1,a2,a4,a7,a8,a9,b0,b2,b4,b5,c0,c4,c6,c7,c8,c9,d0,d1,d2,d5,e1,e2,e5,e6,e8,f1,f2,f5,f6,f7,f8,g0,g1,g3,b,b1,e,g2)}, +bKT(){return A.bjZ(B.aB,null,null)}, +bKX(a,b){return $.bzn().cJ(0,new A.G3(a,b),new A.aY9(a,b))}, +aY8(a){var s=a.a7I()+0.05 +if(s*s>0.15)return B.aB +return B.am}, +bKU(a,b,c){var s=a.c,r=s.tu(s,new A.aY6(b,c),t.K,t.Ag) +s=b.c +s=s.gdW(s) +r.a6w(r,s.jm(s,new A.aY7(a))) +return r}, +bKV(a){var s,r,q=t.K,p=t.ZF,o=A.F(q,p) +for(s=0;!1;++s){r=a[s] +o.p(0,r.giH(r),p.a(r))}return A.bi_(o,q,t.Ag)}, +bKW(h6,h7,h8){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,d1,d2,d3,d4,d5,d6,d7,d8,d9,e0,e1,e2,e3,e4,e5,e6,e7,e8,e9,f0,f1,f2,f3,f4,f5,f6,f7,f8,f9,g0,g1,g2,g3,g4,g5,g6,g7,g8,g9,h0,h1,h2,h3,h4,h5 +if(h6===h7)return h6 +s=h8<0.5 +r=s?h6.a:h7.a +q=s?h6.b:h7.b +p=A.bKU(h6,h7,h8) +o=s?h6.d:h7.d +n=s?h6.e:h7.e +m=s?h6.f:h7.f +l=s?h6.r:h7.r +k=A.bJH(h6.w,h7.w,h8) +j=s?h6.x:h7.x +i=s?h6.y:h7.y +h=A.bLy(h6.z,h7.z,h8) +g=A.W(h6.as,h7.as,h8) +g.toString +f=A.W(h6.at,h7.at,h8) +f.toString +e=A.bDS(h6.ax,h7.ax,h8) +d=A.W(h6.ay,h7.ay,h8) +d.toString +c=A.W(h6.ch,h7.ch,h8) +c.toString +b=A.W(h6.CW,h7.CW,h8) +b.toString +a=A.W(h6.cx,h7.cx,h8) +a.toString +a0=A.W(h6.cy,h7.cy,h8) +a0.toString +a1=A.W(h6.db,h7.db,h8) +a1.toString +a2=A.W(h6.dx,h7.dx,h8) +a2.toString +a3=A.W(h6.dy,h7.dy,h8) +a3.toString +a4=A.W(h6.fr,h7.fr,h8) +a4.toString +a5=A.W(h6.fx,h7.fx,h8) +a5.toString +a6=A.W(h6.fy,h7.fy,h8) +a6.toString +a7=A.W(h6.go,h7.go,h8) +a7.toString +a8=A.W(h6.id,h7.id,h8) +a8.toString +a9=A.W(h6.k2,h7.k2,h8) +a9.toString +b0=A.W(h6.k3,h7.k3,h8) +b0.toString +b1=A.W(h6.k4,h7.k4,h8) +b1.toString +b2=A.qf(h6.ok,h7.ok,h8) +b3=A.qf(h6.p1,h7.p1,h8) +b4=A.EP(h6.p2,h7.p2,h8) +b5=A.EP(h6.p3,h7.p3,h8) +b6=A.bLg(h6.p4,h7.p4,h8) +b7=A.bCQ(h6.R8,h7.R8,h8) +b8=A.bCY(h6.RG,h7.RG,h8) +b9=A.bDb(h6.rx,h7.rx,h8) +c0=h6.ry +c1=h7.ry +c2=A.W(c0.a,c1.a,h8) +c3=A.W(c0.b,c1.b,h8) +c4=A.W(c0.c,c1.c,h8) +c5=A.W(c0.d,c1.d,h8) +c6=A.c1(c0.e,c1.e,h8) +c7=A.ag(c0.f,c1.f,h8) +c8=A.fx(c0.r,c1.r,h8) +c0=A.fx(c0.w,c1.w,h8) +c1=A.bDf(h6.to,h7.to,h8) +c9=A.bDg(h6.x1,h7.x1,h8) +d0=A.bDh(h6.x2,h7.x2,h8) +d1=A.bDm(h6.xr,h7.xr,h8) +d2=s?h6.y1:h7.y1 +d3=A.bDt(h6.y2,h7.y2,h8) +d4=A.bDA(h6.c5,h7.c5,h8) +d5=A.bDF(h6.cO,h7.cO,h8) +d6=A.bEn(h6.aV,h7.aV,h8) +d7=A.bEt(h6.bU,h7.bU,h8) +d8=A.bEI(h6.cb,h7.cb,h8) +d9=A.bEU(h6.bQ,h7.bQ,h8) +e0=A.bFk(h6.bO,h7.bO,h8) +e1=A.bFl(h6.B,h7.B,h8) +e2=A.bFv(h6.Z,h7.Z,h8) +e3=A.bFO(h6.Y,h7.Y,h8) +e4=A.bFY(h6.av,h7.av,h8) +e5=A.bG0(h6.ar,h7.ar,h8) +e6=A.bGD(h6.aG,h7.aG,h8) +e7=A.bHp(h6.aS,h7.aS,h8) +e8=A.bHS(h6.b8,h7.b8,h8) +e9=A.bHT(h6.b6,h7.b6,h8) +f0=A.bHU(h6.bp,h7.bp,h8) +f1=A.bI6(h6.cc,h7.cc,h8) +f2=A.bI7(h6.fF,h7.fF,h8) +f3=A.bI9(h6.fm,h7.fm,h8) +f4=A.bIi(h6.ak,h7.ak,h8) +f5=A.bIK(h6.ah,h7.ah,h8) +f6=A.bIW(h6.bG,h7.bG,h8) +f7=A.bJ0(h6.aT,h7.aT,h8) +f8=A.bJJ(h6.bK,h7.bK,h8) +f9=A.bJL(h6.bc,h7.bc,h8) +g0=A.bJN(h6.dl,h7.dl,h8) +g1=A.bK8(h6.h_,h7.h_,h8) +g2=A.bKc(h6.dG,h7.dG,h8) +g3=A.bKw(h6.cS,h7.cS,h8) +g4=A.bKz(h6.ep,h7.ep,h8) +g5=A.bKC(h6.iz,h7.iz,h8) +g6=A.bKL(h6.dH,h7.dH,h8) +g7=A.bKZ(h6.E,h7.E,h8) +g8=A.bL_(h6.al,h7.al,h8) +g9=A.bL1(h6.cg,h7.cg,h8) +s=s?h6.cI:h7.cI +h0=h6.a0 +h0.toString +h1=h7.a0 +h1.toString +h1=A.W(h0,h1,h8) +h0=h6.k1 +h0.toString +h2=h7.k1 +h2.toString +h2=A.W(h0,h2,h8) +h0=h6.ez +h0.toString +h3=h7.ez +h3.toString +h3=A.W(h0,h3,h8) +h0=h6.C +h0.toString +h4=h7.C +h4.toString +h4=A.W(h0,h4,h8) +h0=h6.Q +h0.toString +h5=h7.Q +h5.toString +return A.bjY(b7,s,b8,r,h4,b9,new A.La(c2,c3,c4,c5,c6,c7,c8,c0),A.W(h0,h5,h8),c1,c9,d0,d1,d2,g,f,d3,d4,d5,e,q,d6,d7,d,d8,c,b,d9,e0,e1,e2,h3,e3,p,e4,e5,a,a0,a1,a2,e6,b2,a3,o,e7,n,e8,e9,f0,f1,f2,f3,f4,m,l,f5,a4,a5,a6,b3,b4,f6,f7,a7,k,f8,f9,a8,g0,h2,a9,g1,g2,b0,j,g3,g4,g5,g6,b5,g7,g8,h1,g9,b6,b1,i,h)}, +bHF(a,b){return new A.a39(a,b,B.ps,b.a,b.b,b.c,b.d,b.e,b.f,b.r)}, +bLx(a){switch(a.a){case 0:case 2:case 1:break +case 3:case 4:case 5:return B.eG}return B.fN}, +bLy(a,b,c){var s,r +if(a===b)return a +s=A.ag(a.a,b.a,c) +s.toString +r=A.ag(a.b,b.b,c) +r.toString +return new A.r5(s,r)}, +xK:function xK(a,b){this.a=a +this.b=b}, +mc:function mc(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,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,d1,d2,d3,d4,d5,d6,d7,d8,d9,e0,e1,e2,e3,e4,e5,e6,e7,e8,e9,f0,f1,f2,f3,f4,f5,f6,f7,f8,f9,g0,g1,g2,g3,g4,g5,g6,g7){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 +_.CW=r +_.cx=s +_.cy=a0 +_.db=a1 +_.dx=a2 +_.dy=a3 +_.fr=a4 +_.fx=a5 +_.fy=a6 +_.go=a7 +_.id=a8 +_.k1=a9 +_.k2=b0 +_.k3=b1 +_.k4=b2 +_.ok=b3 +_.p1=b4 +_.p2=b5 +_.p3=b6 +_.p4=b7 +_.R8=b8 +_.RG=b9 +_.rx=c0 +_.ry=c1 +_.to=c2 +_.x1=c3 +_.x2=c4 +_.xr=c5 +_.y1=c6 +_.y2=c7 +_.c5=c8 +_.cO=c9 +_.aV=d0 +_.bU=d1 +_.cb=d2 +_.bQ=d3 +_.bO=d4 +_.B=d5 +_.Z=d6 +_.Y=d7 +_.av=d8 +_.ar=d9 +_.aG=e0 +_.aS=e1 +_.b8=e2 +_.b6=e3 +_.bp=e4 +_.cc=e5 +_.fF=e6 +_.fm=e7 +_.ak=e8 +_.ah=e9 +_.bG=f0 +_.aT=f1 +_.bK=f2 +_.bc=f3 +_.dl=f4 +_.h_=f5 +_.dG=f6 +_.cS=f7 +_.ep=f8 +_.iz=f9 +_.dH=g0 +_.E=g1 +_.al=g2 +_.cg=g3 +_.cI=g4 +_.ez=g5 +_.C=g6 +_.a0=g7}, +aY9:function aY9(a,b){this.a=a +this.b=b}, +aY6:function aY6(a,b){this.a=a +this.b=b}, +aY7:function aY7(a){this.a=a}, +a39:function a39(a,b,c,d,e,f,g,h,i,j){var _=this +_.ay=a +_.ch=b +_.w=c +_.a=d +_.b=e +_.c=f +_.d=g +_.e=h +_.f=i +_.r=j}, +G3:function G3(a,b){this.a=a +this.b=b}, +afW:function afW(a,b,c){this.a=a +this.b=b +this.$ti=c}, +r5:function r5(a,b){this.a=a +this.b=b}, +an2:function an2(){}, +anS:function anS(){}, +bKZ(a2,a3,a4){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1 +if(a2===a3&&!0)return a2 +s=a2.d +if(s==null)r=a3.d==null +else r=!1 +if(r)s=null +else if(s==null)s=a3.d +else{r=a3.d +if(!(r==null)){s.toString +r.toString +s=A.bn(s,r,a4)}}r=A.W(a2.a,a3.a,a4) +q=A.t4(a2.b,a3.b,a4) +p=A.t4(a2.c,a3.c,a4) +o=A.W(a2.e,a3.e,a4) +n=t.KX.a(A.fd(a2.f,a3.f,a4)) +m=A.W(a2.r,a3.r,a4) +l=A.c1(a2.w,a3.w,a4) +k=A.W(a2.x,a3.x,a4) +j=A.W(a2.y,a3.y,a4) +i=A.W(a2.z,a3.z,a4) +h=A.c1(a2.Q,a3.Q,a4) +g=A.ag(a2.as,a3.as,a4) +f=A.W(a2.at,a3.at,a4) +e=A.c1(a2.ax,a3.ax,a4) +d=A.W(a2.ay,a3.ay,a4) +c=A.fd(a2.ch,a3.ch,a4) +b=A.W(a2.CW,a3.CW,a4) +a=A.c1(a2.cx,a3.cx,a4) +if(a4<0.5)a0=a2.cy +else a0=a3.cy +a1=A.fx(a2.db,a3.db,a4) +return new A.OP(r,q,p,s,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,A.fd(a2.dx,a3.dx,a4))}, +OP:function OP(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2){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 +_.CW=r +_.cx=s +_.cy=a0 +_.db=a1 +_.dx=a2}, +an6:function an6(){}, +bL_(a,b,c){var s,r,q,p,o,n,m,l,k,j,i,h,g,f +if(a===b)return a +s=A.c1(a.a,b.a,c) +r=A.w2(a.b,b.b,c) +q=A.W(a.c,b.c,c) +p=A.W(a.d,b.d,c) +o=A.W(a.e,b.e,c) +n=A.W(a.f,b.f,c) +m=A.W(a.r,b.r,c) +l=A.W(a.w,b.w,c) +k=A.W(a.y,b.y,c) +j=A.W(a.x,b.x,c) +i=A.W(a.z,b.z,c) +h=A.W(a.Q,b.Q,c) +g=A.W(a.as,b.as,c) +f=A.mD(a.ax,b.ax,c) +return new A.OU(s,r,q,p,o,n,m,l,j,k,i,h,g,A.ag(a.at,b.at,c),f)}, +OU:function OU(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){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}, +an9:function an9(){}, +zd:function zd(){}, +aYj:function aYj(a,b){this.a=a +this.b=b}, +aYl:function aYl(a){this.a=a}, +aYg:function aYg(a,b){this.a=a +this.b=b}, +aYi:function aYi(a,b){this.a=a +this.b=b}, +ES:function ES(){}, +btI(a,b,c){return new A.afQ(b,null,c,B.cw,a,null)}, +aYn(a,b,c,d,e){return new A.OW(c,e,d,b,a,null)}, +bL2(){var s,r,q +if($.ze.length!==0){s=A.a($.ze.slice(0),A.ab($.ze)) +for(r=s.length,q=0;q>>16&255,r.gk(r)>>>8&255,r.gk(r)&255) +break +default:p=null}switch(q.a){case 1:o=b.a +break +case 0:r=b.a +o=A.K(0,r.gk(r)>>>16&255,r.gk(r)>>>8&255,r.gk(r)&255) +break +default:o=null}r=a.d +q=b.d +if(r!==q){n=A.W(p,o,c) +n.toString +q=A.ag(r,q,c) +q.toString +return new A.b9(n,s,B.M,q)}q=A.W(p,o,c) +q.toString +return new A.b9(q,s,B.M,r)}, +fd(a,b,c){var s,r +if(a==b)return a +s=b!=null?b.eY(a,c):null +if(s==null&&a!=null)s=a.eZ(b,c) +if(s==null)r=c<0.5?a:b +else r=s +return r}, +br3(a,b,c){var s,r +if(a==b)return a +s=b!=null?b.eY(a,c):null +if(s==null&&a!=null)s=a.eZ(b,c) +if(s==null)r=c<0.5?a:b +else r=s +return r}, +btE(a,b,c){var s,r,q,p,o,n,m=a instanceof A.mk?a.a:A.a([a],t.Fi),l=b instanceof A.mk?b.a:A.a([b],t.Fi),k=A.a([],t.N_),j=Math.max(m.length,l.length) +for(s=1-c,r=0;ro/m?new A.V(o*p/m,p):new A.V(q,m*q/o) +r=b +break +case 2:q=c.a +p=c.b +o=b.a +r=q/p>o/m?new A.V(o,o*p/q):new A.V(m*q/p,m) +s=c +break +case 3:q=c.a +p=c.b +o=b.a +if(q/p>o/m){r=new A.V(o,o*p/q) +s=c}else{s=new A.V(q,m*q/o) +r=b}break +case 4:q=c.a +p=c.b +o=b.a +if(q/p>o/m){s=new A.V(o*p/m,p) +r=b}else{r=new A.V(m*q/p,m) +s=c}break +case 5:r=new A.V(Math.min(b.a,c.a),Math.min(m,c.b)) +s=r +break +case 6:n=b.a/m +q=c.b +s=m>q?new A.V(q*n,q):b +m=c.a +if(s.a>m)s=new A.V(m,m/n) +r=b +break +default:r=null +s=null}return new A.a1_(r,s)}, +w3:function w3(a,b){this.a=a +this.b=b}, +a1_:function a1_(a,b){this.a=a +this.b=b}, +bDl(a,b,c){var s,r,q,p,o +if(a===b)return a +s=A.W(a.a,b.a,c) +s.toString +r=A.lT(a.b,b.b,c) +r.toString +q=A.ag(a.c,b.c,c) +q.toString +p=A.ag(a.d,b.d,c) +p.toString +o=a.e +return new A.c8(p,o===B.a2?b.e:o,s,r,q)}, +bhO(a,b,c){var s,r,q,p,o,n,m,l +if(a==null?b==null:a===b)return a +if(a==null)a=A.a([],t.G) +if(b==null)b=A.a([],t.G) +s=Math.min(a.length,b.length) +r=A.a([],t.G) +for(q=0;q>>16&255)/255,o=(a.gk(a)>>>8&255)/255,n=(a.gk(a)&255)/255,m=Math.max(p,Math.max(o,n)),l=Math.min(p,Math.min(o,n)),k=m-l,j=a.gk(a),i=A.b4("hue") +if(m===0)i.b=0 +else if(m===p)i.b=60*B.e.aH((o-n)/k,6) +else if(m===o)i.b=60*((n-p)/k+2) +else if(m===n)i.b=60*((p-o)/k+4) +i.b=isNaN(i.aF())?0:i.aF() +s=i.aF() +r=(m+l)/2 +q=r===1?0:A.S(k/(1-Math.abs(2*r-1)),0,1) +return new A.tF((j>>>24&255)/255,s,q,r)}, +tF:function tF(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +o4:function o4(){}, +axe(a,b,c){var s,r=null +if(a==b)return a +if(a==null){s=b.eY(r,c) +return s==null?b:s}if(b==null){s=a.eZ(r,c) +return s==null?a:s}if(c===0)return a +if(c===1)return b +s=b.eY(a,c) +if(s==null)s=a.eZ(b,c) +if(s==null)if(c<0.5){s=a.eZ(r,c*2) +if(s==null)s=a}else{s=b.eY(r,(c-0.5)*2) +if(s==null)s=b}return s}, +kX:function kX(){}, +XI:function XI(){}, +af2:function af2(){}, +bx8(a1,a2,a3,a4,a5,a6,a7,a8,a9,b0,b1,b2,b3,b4,b5){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0 +if(b3.gai(b3))return +s=b3.a +r=b3.c-s +q=b3.b +p=b3.d-q +o=new A.V(r,p) +n=a9.gf3(a9) +m=a9.gdm(a9) +if(a7==null)a7=B.qd +l=A.bQC(a7,new A.V(n,m).i1(0,b5),o) +k=l.a.au(0,b5) +j=l.b +if(b4!==B.ee&&j.l(0,o))b4=B.ee +i=$.as().bn() +i.sLO(!1) +if(a4!=null)i.sa7C(a4) +i.sa5(0,A.bDR(0,0,0,b2)) +i.sv2(a6) +i.sLK(b0) +h=j.a +g=(r-h)/2 +f=j.b +e=(p-f)/2 +p=a1.a +p=s+(g+(a8?-p:p)*g) +q+=e+a1.b*e +d=new A.I(p,q,p+h,q+f) +c=b4!==B.ee||a8 +if(c)a2.eb(0) +q=b4===B.ee +if(!q)a2.uD(b3) +if(a8){b=-(s+r/2) +a2.bj(0,-b,0) +a2.hF(0,-1,1) +a2.bj(0,b,0)}a=a1.aK0(k,new A.I(0,0,n,m)) +if(q)a2.t9(a9,a,d,i) +else for(s=A.bP8(b3,d,b4),r=s.length,a0=0;a0=B.b.ga1(b))return B.b.ga1(a) +s=B.b.ab0(b,new A.bed(c)) +r=a[s] +q=s+1 +p=a[q] +o=b[s] +o=A.W(r,p,(c-o)/(b[q]-o)) +o.toString +return o}, +bPt(a,b,c,d,e){var s,r,q=A.a9u(null,null,t.i) +q.I(0,b) +q.I(0,d) +s=A.aa(q,!1,q.$ti.c) +r=A.ab(s).h("ad<1,M>") +return new A.b1Y(A.aa(new A.ad(s,new A.bdU(a,b,c,d,e),r),!1,r.h("ax.E")),s)}, +bpT(a,b,c){var s +if(a==b)return a +s=b!=null?b.eY(a,c):null +if(s==null&&a!=null)s=a.eZ(b,c) +if(s!=null)return s +return c<0.5?a.cl(0,1-c*2):b.cl(0,(c-0.5)*2)}, +bqq(a,b,c){var s,r,q,p +if(a==b)return a +if(a==null)return b.cl(0,c) +if(b==null)return a.cl(0,1-c) +s=A.bPt(a.a,a.QS(),b.a,b.QS(),c) +r=A.Ag(a.d,b.d,c) +r.toString +q=A.Ag(a.e,b.e,c) +q.toString +p=c<0.5?a.f:b.f +return new A.u2(r,q,p,s.a,s.b,null)}, +b1Y:function b1Y(a,b){this.a=a +this.b=b}, +bed:function bed(a){this.a=a}, +bdU:function bdU(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +aE0:function aE0(){}, +u2:function u2(a,b,c,d,e,f){var _=this +_.d=a +_.e=b +_.f=c +_.a=d +_.b=e +_.c=f}, +aH9:function aH9(a){this.a=a}, +bMN(a,b){var s=new A.Gb(a,null,a.ic()) +s.alT(a,b,null) +return s}, +aFq:function aFq(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.f=0}, +aFt:function aFt(a,b,c){this.a=a +this.b=b +this.c=c}, +aFs:function aFs(a,b){this.a=a +this.b=b}, +aFu:function aFu(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +adO:function adO(){}, +b1o:function b1o(a){this.a=a}, +Q1:function Q1(a,b,c){this.a=a +this.b=b +this.c=c}, +Gb:function Gb(a,b,c){var _=this +_.d=$ +_.a=a +_.b=b +_.c=c}, +b67:function b67(a,b){this.a=a +this.b=b}, +aiZ:function aiZ(a,b){this.a=a +this.b=b}, +bJp(a,b,c){return c}, +xa:function xa(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +jD:function jD(){}, +aFE:function aFE(a,b,c){this.a=a +this.b=b +this.c=c}, +aFF:function aFF(a,b,c){this.a=a +this.b=b +this.c=c}, +aFB:function aFB(a,b){this.a=a +this.b=b}, +aFA:function aFA(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aFC:function aFC(a){this.a=a}, +aFD:function aFD(a,b){this.a=a +this.b=b}, +Fm:function Fm(a,b){var _=this +_.a=a +_.d=_.c=_.b=null +_.f=_.e=!1 +_.r=0 +_.w=!1 +_.x=b}, +nX:function nX(a,b,c){this.a=a +this.b=b +this.c=c}, +X4:function X4(){}, +b3d:function b3d(a,b){var _=this +_.a=a +_.d=_.c=_.b=null +_.f=_.e=!1 +_.r=0 +_.w=!1 +_.x=b}, +mA:function mA(a,b,c){this.a=a +this.b=b +this.c=c}, +arJ:function arJ(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +arK:function arK(a){this.a=a}, +bjj(a,b,c,d){var s=new A.a5d(d,c,A.a([],t.XZ),A.a([],t.qj)) +s.alD(null,a,b,c,d) +return s}, +l5:function l5(a,b,c){this.a=a +this.b=b +this.c=c}, +kj:function kj(a,b,c){this.a=a +this.b=b +this.c=c}, +jC:function jC(a,b){this.a=a +this.b=b}, +aFH:function aFH(){this.b=this.a=null}, +aFI:function aFI(a){this.a=a}, +xb:function xb(){}, +aFJ:function aFJ(){}, +aFK:function aFK(){}, +a5d:function a5d(a,b,c,d){var _=this +_.z=_.y=null +_.Q=a +_.as=b +_.at=null +_.ax=$ +_.ay=null +_.ch=0 +_.CW=null +_.cx=!1 +_.a=c +_.d=_.c=_.b=null +_.f=_.e=!1 +_.r=0 +_.w=!1 +_.x=d}, +aJJ:function aJJ(a,b){this.a=a +this.b=b}, +aJI:function aJI(a){this.a=a}, +agN:function agN(){}, +agP:function agP(){}, +agO:function agO(){}, +bqb(a,b,c,d){return new A.qh(a,c,b,!1,!1,d)}, +bls(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f=A.a([],t.O_),e=t.oU,d=A.a([],e) +for(s=a.length,r="",q="",p=0;p0){n=-n +l=2*l +r=(n-Math.sqrt(j))/l +q=(n+Math.sqrt(j))/l +p=(c-r*b)/(q-r) +return new A.b7s(r,q,b-p,p)}o=Math.sqrt(k-m)/(2*l) +s=-(n/2*l) +return new A.bcn(o,s,b,(c-s*b)/o)}, +aVO:function aVO(a,b,c){this.a=a +this.b=b +this.c=c}, +O6:function O6(a,b){this.a=a +this.b=b}, +O5:function O5(a,b,c){this.b=a +this.c=b +this.a=c}, +uA:function uA(a,b,c){this.b=a +this.c=b +this.a=c}, +b24:function b24(a,b,c){this.a=a +this.b=b +this.c=c}, +b7s:function b7s(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +bcn:function bcn(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +OV:function OV(a,b){this.a=a +this.c=b}, +bJf(a,b,c,d,e,f,g){var s=null,r=new A.a75(new A.a8F(s,s),B.Jc,b,g,A.aB(t.O5),a,f,s,A.aB(t.T)) +r.aW() +r.sbN(s) +r.alI(a,s,b,c,d,e,f,g) +return r}, +DC:function DC(a,b){this.a=a +this.b=b}, +a75:function a75(a,b,c,d,e,f,g,h,i){var _=this +_.em=_.dA=$ +_.df=a +_.e5=$ +_.f7=null +_.k7=b +_.pB=c +_.EO=d +_.a9g=e +_.C=null +_.a0=f +_.aw=g +_.E$=h +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=i +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +aOJ:function aOJ(a){this.a=a}, +DG:function DG(){}, +aPG:function aPG(a){this.a=a}, +aPF:function aPF(a){this.a=a}, +PP:function PP(a,b){var _=this +_.a=a +_.ak$=0 +_.ah$=b +_.aT$=_.bG$=0 +_.bK$=!1}, +Ax(a){var s=a.a,r=a.b +return new A.aL(s,s,r,r)}, +ii(a,b){var s,r,q=b==null,p=q?0:b +q=q?1/0:b +s=a==null +r=s?0:a +return new A.aL(p,q,r,s?1/0:a)}, +jr(a,b){var s,r,q=b!==1/0,p=q?b:0 +q=q?b:1/0 +s=a!==1/0 +r=s?a:0 +return new A.aL(p,q,r,s?a:1/0)}, +t2(a){return new A.aL(0,a.a,0,a.b)}, +w2(a,b,c){var s,r,q,p +if(a==b)return a +if(a==null)return b.au(0,c) +if(b==null)return a.au(0,1-c) +s=a.a +if(isFinite(s)){s=A.ag(s,b.a,c) +s.toString}else s=1/0 +r=a.b +if(isFinite(r)){r=A.ag(r,b.b,c) +r.toString}else r=1/0 +q=a.c +if(isFinite(q)){q=A.ag(q,b.c,c) +q.toString}else q=1/0 +p=a.d +if(isFinite(p)){p=A.ag(p,b.d,c) +p.toString}else p=1/0 +return new A.aL(s,r,q,p)}, +bhN(a){return new A.pG(a.a,a.b,a.c)}, +aL:function aL(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +atx:function atx(){}, +pG:function pG(a,b,c){this.a=a +this.b=b +this.c=c}, +w4:function w4(a,b){this.c=a +this.a=b +this.b=null}, +ij:function ij(a){this.a=a}, +IK:function IK(){}, +G6:function G6(a,b){this.a=a +this.b=b}, +RA:function RA(a,b){this.a=a +this.b=b}, +N:function N(){}, +aOL:function aOL(a,b){this.a=a +this.b=b}, +aON:function aON(a,b){this.a=a +this.b=b}, +aOM:function aOM(a,b){this.a=a +this.b=b}, +dR:function dR(){}, +aOK:function aOK(a,b,c){this.a=a +this.b=b +this.c=c}, +Qe:function Qe(){}, +lR:function lR(a,b,c){var _=this +_.e=null +_.d0$=a +_.am$=b +_.a=c}, +aJF:function aJF(){}, +MM:function MM(a,b,c,d,e){var _=this +_.B=a +_.d_$=b +_.a3$=c +_.dk$=d +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=e +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +SD:function SD(){}, +akf:function akf(){}, +brF(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=null,d={} +d.a=b +if(a==null)a=B.nr +s=J.ak(a) +r=s.gt(a)-1 +q=A.aT(0,e,!1,t.Ej) +p=0<=r +while(!0){if(!!1)break +s.i(a,0) +o=b[0] +o.gla(o) +break}while(!0){if(!!1)break +s.i(a,r) +n=b[-1] +n.gla(n) +break}m=A.b4("oldKeyedChildren") +if(p){m.sdX(A.F(t.D2,t.bu)) +for(l=m.a,k=0;k<=r;){j=s.i(a,k) +i=j.a +if(i!=null){h=m.b +if(h===m)A.q(A.i0(l)) +J.ie(h,i,j)}++k}p=!0}else k=0 +for(l=m.a,g=0;!1;){o=d.a[g] +if(p){f=o.gla(o) +i=m.b +if(i===m)A.q(A.i0(l)) +j=J.b3(i,f) +if(j!=null){o.gla(o) +j=e}}else j=e +q[g]=A.brE(j,o);++g}s.gt(a) +while(!0){if(!!1)break +q[g]=A.brE(s.i(a,k),d.a[g]);++g;++k}return new A.ik(q,A.ab(q).h("ik<1,e0>"))}, +brE(a,b){var s,r=a==null?A.Nx(b.gla(b),null):a,q=b.gabW(),p=A.oQ() +q.gag7() +p.k2=q.gag7() +p.e=!0 +q.gaFb(q) +s=q.gaFb(q) +p.ce(B.kX,!0) +p.ce(B.JE,s) +q.gaLu() +s=q.gaLu() +p.ce(B.kX,!0) +p.ce(B.JG,s) +q.gafc(q) +p.ce(B.JI,q.gafc(q)) +q.gaEV(q) +p.ce(B.JM,q.gaEV(q)) +q.gxn() +p.ce(B.acT,q.gxn()) +q.gaOk() +p.ce(B.JA,q.gaOk()) +q.gag1() +p.ce(B.JL,q.gag1()) +q.gaKH() +p.ce(B.acR,q.gaKH()) +q.gWG(q) +p.ce(B.Jy,q.gWG(q)) +q.gaI5() +p.ce(B.JC,q.gaI5()) +q.gaI6(q) +p.ce(B.oB,q.gaI6(q)) +q.gAi(q) +s=q.gAi(q) +p.ce(B.kY,!0) +p.ce(B.kW,s) +q.gaJO() +p.ce(B.JD,q.gaJO()) +q.gFJ() +p.ce(B.Jx,q.gFJ()) +q.gaLz(q) +p.ce(B.JK,q.gaLz(q)) +q.gaJw(q) +p.ce(B.kZ,q.gaJw(q)) +q.gaJu() +p.ce(B.JJ,q.gaJu()) +q.gaf7() +p.ce(B.JB,q.gaf7()) +q.gaLC() +p.ce(B.JH,q.gaLC()) +q.gaL_() +p.ce(B.JF,q.gaL_()) +q.gM1() +p.sM1(q.gM1()) +q.gKG() +p.sKG(q.gKG()) +q.gaOF() +s=q.gaOF() +p.ce(B.oC,!0) +p.ce(B.oA,s) +q.gl9(q) +p.ce(B.Jz,q.gl9(q)) +q.gVF(q) +p.RG=new A.dI(q.gVF(q),B.aP) +p.e=!0 +q.gk(q) +p.rx=new A.dI(q.gk(q),B.aP) +p.e=!0 +q.gaJX() +p.ry=new A.dI(q.gaJX(),B.aP) +p.e=!0 +q.gaGR() +p.to=new A.dI(q.gaGR(),B.aP) +p.e=!0 +q.gaJD(q) +p.x1=new A.dI(q.gaJD(q),B.aP) +p.e=!0 +q.gcF() +p.c5=q.gcF() +p.e=!0 +q.gtz() +p.stz(q.gtz()) +q.gvk() +p.svk(q.gvk()) +q.gMo() +p.sMo(q.gMo()) +q.gMp() +p.sMp(q.gMp()) +q.gMq() +p.sMq(q.gMq()) +q.gMn() +p.sMn(q.gMn()) +q.gMg() +p.sMg(q.gMg()) +q.gMd() +p.sMd(q.gMd()) +q.gMb(q) +p.sMb(0,q.gMb(q)) +q.gMc(q) +p.sMc(0,q.gMc(q)) +q.gMl(q) +p.sMl(0,q.gMl(q)) +q.gMj() +p.sMj(q.gMj()) +q.gMh() +p.sMh(q.gMh()) +q.gMk() +p.sMk(q.gMk()) +q.gMi() +p.sMi(q.gMi()) +q.gMr() +p.sMr(q.gMr()) +q.gMs() +p.sMs(q.gMs()) +q.gMe() +p.sMe(q.gMe()) +q.gVZ() +p.sVZ(q.gVZ()) +q.gMf() +p.sMf(q.gMf()) +r.tQ(0,B.nr,p) +r.scE(0,b.gcE(b)) +r.sda(0,b.gda(b)) +r.dy=b.gaPZ() +return r}, +a_G:function a_G(){}, +MN:function MN(a,b,c,d,e,f,g){var _=this +_.C=a +_.a0=b +_.aw=c +_.cu=d +_.fG=e +_.j7=_.fH=_.hQ=_.fa=null +_.E$=f +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=g +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +axb:function axb(){}, +bu2(a){var s=new A.akg(a,A.aB(t.T)) +s.aW() +return s}, +bul(){return new A.TR($.as().bn(),B.c3,B.bK,$.b5())}, +z7:function z7(a,b){this.a=a +this.b=b}, +aZQ:function aZQ(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=!0 +_.r=f}, +yp:function yp(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,b0,b1,b2,b3){var _=this +_.av=_.Y=_.Z=_.B=null +_.ar=$ +_.aG=a +_.aS=b +_.cc=_.bp=_.b6=_.b8=null +_.fF=c +_.fm=d +_.ak=e +_.ah=f +_.bG=g +_.aT=h +_.bK=i +_.bc=j +_.h_=_.dl=null +_.dG=k +_.cS=l +_.ep=m +_.iz=n +_.dH=o +_.E=p +_.al=q +_.cg=r +_.cI=s +_.ez=a0 +_.C=a1 +_.a0=a2 +_.aw=a3 +_.cu=a4 +_.fa=!1 +_.hQ=$ +_.fH=a5 +_.j7=0 +_.iA=a6 +_.iB=_.dR=_.hc=null +_.pG=_.ti=$ +_.aHJ=_.Ar=_.i5=null +_.x0=$ +_.UF=null +_.qF=a7 +_.UG=null +_.d_=_.i7=_.hy=_.i6=!1 +_.a3=null +_.dk=a8 +_.d_$=a9 +_.a3$=b0 +_.dk$=b1 +_.As$=b2 +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=b3 +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +aOR:function aOR(a){this.a=a}, +aOQ:function aOQ(){}, +aOP:function aOP(a,b){this.a=a +this.b=b}, +aOS:function aOS(){}, +aOO:function aOO(){}, +akg:function akg(a,b){var _=this +_.B=a +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=b +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +uu:function uu(){}, +TR:function TR(a,b,c,d){var _=this +_.r=a +_.x=_.w=null +_.y=b +_.z=c +_.ak$=0 +_.ah$=d +_.aT$=_.bG$=0 +_.bK$=!1}, +Q2:function Q2(a,b,c){var _=this +_.r=!0 +_.w=!1 +_.x=a +_.y=$ +_.Q=_.z=null +_.as=b +_.ax=_.at=null +_.ak$=0 +_.ah$=c +_.aT$=_.bG$=0 +_.bK$=!1}, +Fw:function Fw(a,b){var _=this +_.r=a +_.ak$=0 +_.ah$=b +_.aT$=_.bG$=0 +_.bK$=!1}, +SF:function SF(){}, +SG:function SG(){}, +akh:function akh(){}, +MP:function MP(a,b){var _=this +_.B=a +_.Z=$ +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=b +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +bvO(a,b,c){switch(a.a){case 0:switch(b){case B.j:return!0 +case B.ab:return!1 +case null:case void 0:return null}break +case 1:switch(c){case B.cr:return!0 +case B.pi:return!1 +case null:case void 0:return null}break}}, +bJg(a,b,c,d,e,f,g,h){var s=null,r=new A.yq(c,d,e,b,g,h,f,a,A.aB(t.O5),A.aT(4,A.OG(s,s,s,s,s,B.b3,B.j,s,1,B.aq),!1,t.mi),!0,0,s,s,A.aB(t.T)) +r.aW() +r.I(0,s) +return r}, +a10:function a10(a,b){this.a=a +this.b=b}, +hW:function hW(a,b,c){var _=this +_.f=_.e=null +_.d0$=a +_.am$=b +_.a=c}, +a2T:function a2T(a,b){this.a=a +this.b=b}, +u4:function u4(a,b){this.a=a +this.b=b}, +wh:function wh(a,b){this.a=a +this.b=b}, +yq:function yq(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){var _=this +_.B=a +_.Z=b +_.Y=c +_.av=d +_.ar=e +_.aG=f +_.aS=g +_.b8=0 +_.b6=h +_.bp=i +_.a9j$=j +_.aHN$=k +_.d_$=l +_.a3$=m +_.dk$=n +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=o +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +aOW:function aOW(){}, +aOU:function aOU(){}, +aOV:function aOV(){}, +aOT:function aOT(){}, +b5Y:function b5Y(a,b,c){this.a=a +this.b=b +this.c=c}, +akj:function akj(){}, +akk:function akk(){}, +SH:function SH(){}, +MR:function MR(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){var _=this +_.Z=_.B=null +_.Y=a +_.av=b +_.ar=c +_.aG=d +_.aS=e +_.b8=null +_.b6=f +_.bp=g +_.cc=h +_.fF=i +_.fm=j +_.ak=k +_.ah=l +_.bG=m +_.aT=n +_.bK=o +_.bc=p +_.dl=q +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=r +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +aB(a){return new A.a2w(a.h("a2w<0>"))}, +bIp(a){return new A.a6k(a,A.F(t.S,t.Q),A.aB(t.kd))}, +bIf(a){return new A.oC(a,A.F(t.S,t.Q),A.aB(t.kd))}, +bsK(a){return new A.zg(a,B.i,A.F(t.S,t.Q),A.aB(t.kd))}, +a5G(a){return new A.LU(a,B.i,A.F(t.S,t.Q),A.aB(t.kd))}, +bo0(a){return new A.HV(a,B.eQ,A.F(t.S,t.Q),A.aB(t.kd))}, +bj1(a,b){return new A.KM(a,b,A.F(t.S,t.Q),A.aB(t.kd))}, +bpE(a){var s,r,q=new A.bS(new Float64Array(16)) +q.fQ() +for(s=a.length-1;s>0;--s){r=a[s] +if(r!=null)r.zo(a[s-1],q)}return q}, +aCd(a,b,c,d){var s,r +if(a==null||b==null)return null +if(a===b)return a +s=a.z +r=b.z +if(sr){c.push(a.r) +return A.aCd(a.r,b,c,d)}c.push(a.r) +d.push(b.r) +return A.aCd(a.r,b.r,c,d)}, +HL:function HL(a,b,c){this.a=a +this.b=b +this.$ti=c}, +WJ:function WJ(a,b){this.a=a +this.$ti=b}, +h7:function h7(){}, +aGJ:function aGJ(a,b){this.a=a +this.b=b}, +aGK:function aGK(a,b){this.a=a +this.b=b}, +a2w:function a2w(a){this.a=null +this.$ti=a}, +a6k:function a6k(a,b,c){var _=this +_.ax=a +_.ay=null +_.CW=_.ch=!1 +_.a=b +_.b=0 +_.d=_.c=!1 +_.e=c +_.f=0 +_.r=null +_.w=!0 +_.y=_.x=null +_.z=0 +_.at=_.as=_.Q=null}, +hR:function hR(){}, +oC:function oC(a,b,c){var _=this +_.k3=a +_.ay=_.ax=null +_.a=b +_.b=0 +_.d=_.c=!1 +_.e=c +_.f=0 +_.r=null +_.w=!0 +_.y=_.x=null +_.z=0 +_.at=_.as=_.Q=null}, +AW:function AW(a,b,c){var _=this +_.k3=null +_.k4=a +_.ay=_.ax=null +_.a=b +_.b=0 +_.d=_.c=!1 +_.e=c +_.f=0 +_.r=null +_.w=!0 +_.y=_.x=null +_.z=0 +_.at=_.as=_.Q=null}, +AU:function AU(a,b,c){var _=this +_.k3=null +_.k4=a +_.ay=_.ax=null +_.a=b +_.b=0 +_.d=_.c=!1 +_.e=c +_.f=0 +_.r=null +_.w=!0 +_.y=_.x=null +_.z=0 +_.at=_.as=_.Q=null}, +AT:function AT(a,b,c){var _=this +_.k3=null +_.k4=a +_.ay=_.ax=null +_.a=b +_.b=0 +_.d=_.c=!1 +_.e=c +_.f=0 +_.r=null +_.w=!0 +_.y=_.x=null +_.z=0 +_.at=_.as=_.Q=null}, +zg:function zg(a,b,c,d){var _=this +_.c5=a +_.aV=_.cO=null +_.bU=!0 +_.k3=b +_.ay=_.ax=null +_.a=c +_.b=0 +_.d=_.c=!1 +_.e=d +_.f=0 +_.r=null +_.w=!0 +_.y=_.x=null +_.z=0 +_.at=_.as=_.Q=null}, +LU:function LU(a,b,c,d){var _=this +_.c5=a +_.k3=b +_.ay=_.ax=null +_.a=c +_.b=0 +_.d=_.c=!1 +_.e=d +_.f=0 +_.r=null +_.w=!0 +_.y=_.x=null +_.z=0 +_.at=_.as=_.Q=null}, +NC:function NC(a,b){var _=this +_.ay=_.ax=_.ok=_.k4=_.k3=null +_.a=a +_.b=0 +_.d=_.c=!1 +_.e=b +_.f=0 +_.r=null +_.w=!0 +_.y=_.x=null +_.z=0 +_.at=_.as=_.Q=null}, +HV:function HV(a,b,c,d){var _=this +_.k3=a +_.k4=b +_.ay=_.ax=null +_.a=c +_.b=0 +_.d=_.c=!1 +_.e=d +_.f=0 +_.r=null +_.w=!0 +_.y=_.x=null +_.z=0 +_.at=_.as=_.Q=null}, +Co:function Co(){var _=this +_.b=_.a=null +_.c=!1 +_.d=null}, +KM:function KM(a,b,c,d){var _=this +_.k3=a +_.k4=b +_.ay=_.ax=null +_.a=c +_.b=0 +_.d=_.c=!1 +_.e=d +_.f=0 +_.r=null +_.w=!0 +_.y=_.x=null +_.z=0 +_.at=_.as=_.Q=null}, +JY:function JY(a,b,c,d,e,f){var _=this +_.k3=a +_.k4=b +_.ok=c +_.p1=d +_.p4=_.p3=_.p2=null +_.R8=!0 +_.ay=_.ax=null +_.a=e +_.b=0 +_.d=_.c=!1 +_.e=f +_.f=0 +_.r=null +_.w=!0 +_.y=_.x=null +_.z=0 +_.at=_.as=_.Q=null}, +HK:function HK(a,b,c,d,e,f){var _=this +_.k3=a +_.k4=b +_.ok=c +_.ay=_.ax=null +_.a=d +_.b=0 +_.d=_.c=!1 +_.e=e +_.f=0 +_.r=null +_.w=!0 +_.y=_.x=null +_.z=0 +_.at=_.as=_.Q=null +_.$ti=f}, +ahh:function ahh(){}, +oq:function oq(a,b,c){this.d0$=a +this.am$=b +this.a=c}, +MU:function MU(a,b,c,d,e){var _=this +_.B=a +_.d_$=b +_.a3$=c +_.dk$=d +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=e +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +aP7:function aP7(a){this.a=a}, +aP8:function aP8(a){this.a=a}, +aP3:function aP3(a){this.a=a}, +aP4:function aP4(a){this.a=a}, +aP5:function aP5(a){this.a=a}, +aP6:function aP6(a){this.a=a}, +aP1:function aP1(a){this.a=a}, +aP2:function aP2(a){this.a=a}, +akl:function akl(){}, +akm:function akm(){}, +bHX(a,b){var s +if(a==null)return!0 +s=a.b +if(t.ks.b(b))return!1 +return t.ge.b(s)||t.PB.b(b)||!s.gcQ(s).l(0,b.gcQ(b))}, +bHW(a5){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.d +if(a4==null)a4=a5.c +s=a5.a +r=a5.b +q=a4.gBP() +p=a4.gjR(a4) +o=a4.gcz() +n=a4.gdS(a4) +m=a4.goF(a4) +l=a4.gcQ(a4) +k=a4.gzX() +j=a4.gfV(a4) +a4.gFJ() +i=a4.gMK() +h=a4.gFY() +g=a4.ge3() +f=a4.gUn() +e=a4.gq(a4) +d=a4.gWy() +c=a4.gWB() +b=a4.gWA() +a=a4.gWz() +a0=a4.gBd(a4) +a1=a4.gWW() +s.af(0,new A.aJq(r,A.bIy(j,k,m,g,f,a4.gKX(),0,n,!1,a0,o,l,h,i,d,a,b,c,e,a4.gvW(),a1,p,q).cW(a4.gda(a4)),s)) +q=A.k(r).h("c9<1>") +p=q.h("be") +a2=A.aa(new A.be(new A.c9(r,q),new A.aJr(s),p),!0,p.h("z.E")) +p=a4.gBP() +q=a4.gjR(a4) +a1=a4.gcz() +e=a4.gdS(a4) +c=a4.goF(a4) +b=a4.gcQ(a4) +a=a4.gzX() +d=a4.gfV(a4) +a4.gFJ() +i=a4.gMK() +h=a4.gFY() +l=a4.ge3() +o=a4.gUn() +a0=a4.gq(a4) +n=a4.gWy() +f=a4.gWB() +g=a4.gWA() +m=a4.gWz() +k=a4.gBd(a4) +j=a4.gWW() +a3=A.bIw(d,a,c,l,o,a4.gKX(),0,e,!1,k,a1,b,h,i,n,m,g,f,a0,a4.gvW(),j,q,p).cW(a4.gda(a4)) +for(q=A.ab(a2).h("d1<1>"),p=new A.d1(a2,q),p=new A.bZ(p,p.gt(p),q.h("bZ")),q=q.h("ax.E");p.u();){o=p.d +if(o==null)o=q.a(o) +if(o.gXg()&&o.gW1(o)!=null){n=o.gW1(o) +n.toString +n.$1(a3.cW(r.i(0,o)))}}}, +ail:function ail(a,b){this.a=a +this.b=b}, +aim:function aim(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +a5a:function a5a(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=!1 +_.ak$=0 +_.ah$=d +_.aT$=_.bG$=0 +_.bK$=!1}, +aJs:function aJs(){}, +aJv:function aJv(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +aJu:function aJu(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +aJt:function aJt(a){this.a=a}, +aJq:function aJq(a,b,c){this.a=a +this.b=b +this.c=c}, +aJr:function aJr(a){this.a=a}, +aoJ:function aoJ(){}, +bra(a,b,c){var s,r,q=a.ch,p=t.dJ.a(q.a) +if(p==null){s=a.BM(null) +q.sb3(0,s) +q=s}else{p.WL() +a.BM(p) +q=p}a.db=!1 +r=new A.D5(q,a.gr0()) +b=r +a.Rz(b,B.i) +b.Hd()}, +bIm(a){var s=a.ch.a +s.toString +a.BM(t.gY.a(s)) +a.db=!1}, +bJk(a){a.a_B()}, +bJl(a){a.ayP()}, +bu7(a,b){if(a==null)return null +if(a.gai(a)||b.aaX())return B.Y +return A.bqJ(b,a)}, +bNg(a,b,c,d){var s,r,q=b.gbP(b) +q.toString +for(s=q;s!==a;s=q,b=r){s.eI(b,c) +q=s.gbP(s) +q.toString +r=b.gbP(b) +r.toString}a.eI(b,c) +a.eI(b,d)}, +bu6(a,b){if(a==null)return b +if(b==null)return a +return a.he(b)}, +dQ:function dQ(){}, +D5:function D5(a,b){var _=this +_.a=a +_.b=b +_.e=_.d=_.c=null}, +aLl:function aLl(a,b,c){this.a=a +this.b=b +this.c=c}, +aLk:function aLk(a,b,c){this.a=a +this.b=b +this.c=c}, +aLj:function aLj(a,b,c){this.a=a +this.b=b +this.c=c}, +aws:function aws(){}, +Mi:function Mi(a,b,c,d,e,f,g,h){var _=this +_.b=a +_.c=b +_.d=c +_.e=null +_.f=!1 +_.r=d +_.y=_.w=!1 +_.z=e +_.Q=f +_.as=!1 +_.at=null +_.ax=0 +_.ay=!1 +_.ch=g +_.CW=h +_.cx=null}, +aLz:function aLz(){}, +aLy:function aLy(){}, +aLA:function aLA(){}, +aLB:function aLB(){}, +H:function H(){}, +aPe:function aPe(a){this.a=a}, +aPh:function aPh(a,b,c){this.a=a +this.b=b +this.c=c}, +aPf:function aPf(a){this.a=a}, +aPg:function aPg(){}, +aPb:function aPb(a,b,c,d,e,f,g,h,i,j,k){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=h +_.x=i +_.y=j +_.z=k}, +aPc:function aPc(a,b,c){this.a=a +this.b=b +this.c=c}, +aPd:function aPd(a,b){this.a=a +this.b=b}, +b1:function b1(){}, +fa:function fa(){}, +aq:function aq(){}, +ut:function ut(){}, +aOI:function aOI(a){this.a=a}, +baq:function baq(){}, +aei:function aei(a,b,c){this.b=a +this.c=b +this.a=c}, +k1:function k1(){}, +akS:function akS(a,b,c){var _=this +_.e=a +_.b=b +_.c=null +_.a=c}, +Rk:function Rk(a,b,c){var _=this +_.e=a +_.b=b +_.c=null +_.a=c}, +zX:function zX(a,b,c,d,e,f){var _=this +_.e=a +_.f=b +_.w=_.r=!1 +_.x=c +_.y=d +_.z=!1 +_.b=e +_.c=null +_.a=f}, +alj:function alj(){var _=this +_.b=_.a=null +_.d=_.c=$ +_.e=!1}, +akq:function akq(){}, +bJh(a,b,c){var s,r,q,p,o=a.b +o.toString +s=t.ot.a(o).b +if(s==null)o=B.abO +else{o=c.$2(a,new A.aL(0,b,0,1/0)) +r=s.b +q=s.c +$label0$0:{if(B.kF===r||B.kG===r||B.dP===r||B.kI===r||B.kH===r){p=null +break $label0$0}if(B.kE===r){q.toString +p=a.vA(q) +break $label0$0}p=null}q=new A.D9(o,r,p,q) +o=q}return o}, +bkJ(a,b){var s=a.a,r=b.a +if(sr)return-1 +else{s=a.b +if(s===b.b)return 0 +else return s===B.aQ?1:-1}}, +qy:function qy(a,b){this.b=a +this.a=b}, +mb:function mb(a,b){var _=this +_.b=_.a=null +_.d0$=a +_.am$=b}, +a7g:function a7g(){}, +aP_:function aP_(a){this.a=a}, +MY:function MY(a,b,c,d,e,f,g,h,i){var _=this +_.B=a +_.ar=_.av=_.Y=_.Z=null +_.aG=b +_.aS=c +_.b8=d +_.b6=null +_.bp=!1 +_.ak=_.fm=_.fF=_.cc=null +_.As$=e +_.d_$=f +_.a3$=g +_.dk$=h +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=i +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +aPm:function aPm(){}, +aPn:function aPn(){}, +aPl:function aPl(){}, +aPk:function aPk(){}, +aPi:function aPi(){}, +aPj:function aPj(a,b){this.a=a +this.b=b}, +ro:function ro(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.r=_.f=_.e=_.d=null +_.w=$ +_.x=null +_.ak$=0 +_.ah$=d +_.aT$=_.bG$=0 +_.bK$=!1}, +SP:function SP(){}, +akr:function akr(){}, +aks:function aks(){}, +TT:function TT(){}, +apb:function apb(){}, +apc:function apc(){}, +brD(a){var s=new A.DD(a,null,A.aB(t.T)) +s.aW() +s.sbN(null) +return s}, +aP0(a,b){if(b==null)return a +return B.e.eU(a/b)*b}, +bJi(a,b,c,d,e,f){var s=b==null?B.bv:b +s=new A.MV(!0,c,e,d,a,s,null,A.aB(t.T)) +s.aW() +s.sbN(null) +return s}, +a7p:function a7p(){}, +iw:function iw(){}, +Kg:function Kg(a,b){this.a=a +this.b=b}, +MZ:function MZ(){}, +DD:function DD(a,b,c){var _=this +_.C=a +_.E$=b +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=c +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +a7i:function a7i(a,b,c,d){var _=this +_.C=a +_.a0=b +_.E$=c +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=d +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +MT:function MT(a,b,c,d){var _=this +_.C=a +_.a0=b +_.E$=c +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=d +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +a7k:function a7k(a,b,c,d,e){var _=this +_.C=a +_.a0=b +_.aw=c +_.E$=d +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=e +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +MJ:function MJ(){}, +MI:function MI(a,b,c,d,e,f){var _=this +_.Au$=a +_.UK$=b +_.uW$=c +_.UL$=d +_.E$=e +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=f +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +a76:function a76(a,b,c,d){var _=this +_.C=a +_.a0=b +_.E$=c +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=d +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +J2:function J2(){}, +uF:function uF(a,b){this.b=a +this.c=b}, +Gx:function Gx(){}, +a7a:function a7a(a,b,c,d){var _=this +_.C=a +_.a0=null +_.aw=b +_.fG=_.cu=null +_.E$=c +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=d +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +a79:function a79(a,b,c,d,e,f){var _=this +_.df=a +_.e5=b +_.C=c +_.a0=null +_.aw=d +_.fG=_.cu=null +_.E$=e +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=f +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +a78:function a78(a,b,c,d){var _=this +_.C=a +_.a0=null +_.aw=b +_.fG=_.cu=null +_.E$=c +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=d +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +SQ:function SQ(){}, +a7l:function a7l(a,b,c,d,e,f,g,h,i){var _=this +_.UH=a +_.d1=b +_.df=c +_.e5=d +_.f7=e +_.C=f +_.a0=null +_.aw=g +_.fG=_.cu=null +_.E$=h +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=i +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +aPo:function aPo(a,b){this.a=a +this.b=b}, +a7m:function a7m(a,b,c,d,e,f,g){var _=this +_.df=a +_.e5=b +_.f7=c +_.C=d +_.a0=null +_.aw=e +_.fG=_.cu=null +_.E$=f +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=g +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +aPp:function aPp(a,b){this.a=a +this.b=b}, +a_P:function a_P(a,b){this.a=a +this.b=b}, +a7b:function a7b(a,b,c,d,e){var _=this +_.C=null +_.a0=a +_.aw=b +_.cu=c +_.E$=d +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=e +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +a7C:function a7C(a,b,c){var _=this +_.aw=_.a0=_.C=null +_.cu=a +_.fa=_.fG=null +_.E$=b +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=c +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +aPC:function aPC(a){this.a=a}, +a7e:function a7e(a,b,c,d){var _=this +_.C=a +_.a0=b +_.E$=c +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=d +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +aOY:function aOY(a){this.a=a}, +a7n:function a7n(a,b,c,d,e,f,g,h,i,j,k,l){var _=this +_.ee=a +_.fZ=b +_.dA=c +_.em=d +_.df=e +_.e5=f +_.f7=g +_.k7=h +_.pB=i +_.C=j +_.E$=k +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=l +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +MV:function MV(a,b,c,d,e,f,g,h){var _=this +_.ee=a +_.fZ=b +_.dA=c +_.em=d +_.df=e +_.e5=!0 +_.C=f +_.E$=g +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=h +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +a7q:function a7q(a,b){var _=this +_.a0=_.C=0 +_.E$=a +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=b +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +MQ:function MQ(a,b,c,d){var _=this +_.C=a +_.a0=b +_.E$=c +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=d +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +MW:function MW(a,b,c){var _=this +_.C=a +_.E$=b +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=c +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +MH:function MH(a,b,c,d){var _=this +_.C=a +_.a0=b +_.E$=c +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=d +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +qK:function qK(a,b,c){var _=this +_.df=_.em=_.dA=_.fZ=_.ee=null +_.C=a +_.E$=b +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=c +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +N_:function N_(a,b,c,d,e,f,g,h){var _=this +_.C=a +_.a0=b +_.aw=c +_.cu=d +_.fG=e +_.iA=_.j7=_.fH=_.hQ=_.fa=null +_.hc=f +_.E$=g +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=h +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +a77:function a77(a,b,c){var _=this +_.C=a +_.E$=b +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=c +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +a7j:function a7j(a,b){var _=this +_.E$=a +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=b +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +a7c:function a7c(a,b,c){var _=this +_.C=a +_.E$=b +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=c +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +a7f:function a7f(a,b,c){var _=this +_.C=a +_.E$=b +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=c +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +a7h:function a7h(a,b,c){var _=this +_.C=a +_.a0=null +_.E$=b +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=c +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +a7d:function a7d(a,b,c,d,e,f,g){var _=this +_.C=a +_.a0=b +_.aw=c +_.cu=d +_.fG=e +_.E$=f +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=g +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +aOX:function aOX(a){this.a=a}, +MK:function MK(a,b,c,d,e){var _=this +_.C=a +_.a0=b +_.E$=c +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=d +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null +_.$ti=e}, +ak9:function ak9(){}, +SR:function SR(){}, +SS:function SS(){}, +brQ(a,b){var s +if(a.n(0,b))return B.bA +s=b.b +if(sa.d)return B.bZ +return b.a>=a.c?B.bZ:B.c_}, +bJP(a,b,c){var s,r +if(a.n(0,b))return b +s=b.b +r=a.b +if(!(s<=r))s=s<=a.d&&b.a<=a.a +else s=!0 +if(s)return c===B.j?new A.l(a.a,r):new A.l(a.c,r) +else{s=a.d +return c===B.j?new A.l(a.c,s):new A.l(a.a,s)}}, +uC:function uC(a,b){this.a=a +this.b=b}, +hF:function hF(){}, +a8e:function a8e(){}, +Nu:function Nu(a,b){this.a=a +this.b=b}, +EL:function EL(a,b){this.a=a +this.b=b}, +aRM:function aRM(){}, +IC:function IC(a){this.a=a}, +yI:function yI(a,b){this.b=a +this.a=b}, +DZ:function DZ(a,b){this.a=a +this.b=b}, +Nv:function Nv(a,b){this.a=a +this.b=b}, +uB:function uB(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +yJ:function yJ(a,b,c){this.a=a +this.b=b +this.c=c}, +OJ:function OJ(a,b){this.a=a +this.b=b}, +ys:function ys(){}, +aPq:function aPq(a,b,c){this.a=a +this.b=b +this.c=c}, +MX:function MX(a,b,c,d){var _=this +_.C=null +_.a0=a +_.aw=b +_.E$=c +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=d +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +a74:function a74(){}, +a7o:function a7o(a,b,c,d,e,f){var _=this +_.dA=a +_.em=b +_.C=null +_.a0=c +_.aw=d +_.E$=e +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=f +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +aT7:function aT7(){}, +MO:function MO(a,b,c){var _=this +_.C=a +_.E$=b +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=c +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +SU:function SU(){}, +nP(a,b){switch(b.a){case 0:return a +case 1:return A.blA(a)}}, +bQD(a,b){switch(b.a){case 0:return a +case 1:return A.bSr(a)}}, +ky(a,b,c,d,e,f,g,h,i,j,k){var s=d==null?g:d,r=c==null?g:c,q=a==null?d:a +if(q==null)q=g +return new A.a8Q(i,h,g,s,e,f,r,k==null?g>0:k,b,j,q)}, +a1A:function a1A(a,b){this.a=a +this.b=b}, +uK:function uK(a,b,c,d,e,f,g,h,i,j,k,l){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}, +a8Q:function a8Q(a,b,c,d,e,f,g,h,i,j,k){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=h +_.x=i +_.y=j +_.z=k}, +Eg:function Eg(a,b,c){this.a=a +this.b=b +this.c=c}, +a8R:function a8R(a,b,c){var _=this +_.c=a +_.d=b +_.a=c +_.b=null}, +qS:function qS(){}, +oR:function oR(a,b){this.d0$=a +this.am$=b +this.a=null}, +oS:function oS(a){this.a=a}, +jO:function jO(a,b,c){this.d0$=a +this.am$=b +this.a=c}, +d7:function d7(){}, +a7x:function a7x(){}, +aPr:function aPr(a,b){this.a=a +this.b=b}, +a7A:function a7A(){}, +a7B:function a7B(a,b){var _=this +_.E$=a +_.fx=null +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=b +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +akz:function akz(){}, +akA:function akA(){}, +alM:function alM(){}, +alN:function alN(){}, +alQ:function alQ(){}, +a7t:function a7t(a,b,c,d,e,f,g){var _=this +_.d0=a +_.aV=b +_.bU=c +_.cb=$ +_.bQ=!0 +_.d_$=d +_.a3$=e +_.dk$=f +_.fx=null +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=g +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +a7s:function a7s(a,b){var _=this +_.E$=a +_.fx=null +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=b +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +a7u:function a7u(){}, +a7v:function a7v(a,b,c,d,e,f,g){var _=this +_.d0=a +_.aV=b +_.bU=c +_.cb=$ +_.bQ=!0 +_.d_$=d +_.a3$=e +_.dk$=f +_.fx=null +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=g +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +aTD:function aTD(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aTE:function aTE(){}, +aTF:function aTF(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +aTB:function aTB(){}, +aTC:function aTC(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +Ef:function Ef(a,b,c){var _=this +_.b=_.w=null +_.c=!1 +_.Av$=a +_.d0$=b +_.am$=c +_.a=null}, +a7w:function a7w(a,b,c,d,e,f,g){var _=this +_.al=a +_.aV=b +_.bU=c +_.cb=$ +_.bQ=!0 +_.d_$=d +_.a3$=e +_.dk$=f +_.fx=null +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=g +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +a7y:function a7y(a,b,c,d,e,f){var _=this +_.aV=a +_.bU=b +_.cb=$ +_.bQ=!0 +_.d_$=c +_.a3$=d +_.dk$=e +_.fx=null +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=f +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +aPs:function aPs(a,b,c){this.a=a +this.b=b +this.c=c}, +mS:function mS(){}, +aPw:function aPw(){}, +he:function he(a,b,c){var _=this +_.b=null +_.c=!1 +_.Av$=a +_.d0$=b +_.am$=c +_.a=null}, +oM:function oM(){}, +aPt:function aPt(a,b,c){this.a=a +this.b=b +this.c=c}, +aPv:function aPv(a,b){this.a=a +this.b=b}, +aPu:function aPu(){}, +SW:function SW(){}, +akx:function akx(){}, +aky:function aky(){}, +alO:function alO(){}, +alP:function alP(){}, +N0:function N0(){}, +a7z:function a7z(a,b,c,d){var _=this +_.dG=null +_.cS=a +_.ep=b +_.E$=c +_.fx=null +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=d +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +akv:function akv(){}, +brB(a,b){return new A.lj(a.a-b.a,a.b-b.b,b.c-a.c,b.d-a.d)}, +bJe(a,b,c){var s,r,q,p,o +if(a==b)return a +if(a==null)return new A.lj(b.a*c,b.b*c,b.c*c,b.d*c) +if(b==null){s=1-c +return new A.lj(b.a.au(0,s),b.b.au(0,s),b.c.au(0,s),b.d.au(0,s))}r=A.ag(a.a,b.a,c) +r.toString +q=A.ag(a.b,b.b,c) +q.toString +p=A.ag(a.c,b.c,c) +p.toString +o=A.ag(a.d,b.d,c) +o.toString +return new A.lj(r,q,p,o)}, +bJm(a,b,c,d,e){var s=new A.DE(a,e,d,c,A.aB(t.O5),0,null,null,A.aB(t.T)) +s.aW() +s.I(0,b) +return s}, +yt(a,b){var s,r,q,p +for(s=t.Qv,r=a,q=0;r!=null;){p=r.b +p.toString +s.a(p) +if(!p.gLQ())q=Math.max(q,A.kM(b.$1(r))) +r=p.am$}return q}, +brG(a,b,c,d){var s,r,q,p,o,n=b.w +if(n!=null&&b.f!=null){s=b.f +s.toString +n.toString +r=B.eS.Gi(c.a-s-n)}else{n=b.x +r=n!=null?B.eS.Gi(n):B.eS}n=b.e +if(n!=null&&b.r!=null){s=b.r +s.toString +n.toString +r=r.N3(c.b-s-n)}else{n=b.y +if(n!=null)r=r.N3(n)}a.cX(r,!0) +q=b.w +if(!(q!=null)){n=b.f +q=n!=null?c.a-n-a.gq(a).a:d.wx(t.EP.a(c.a2(0,a.gq(a)))).a}p=(q<0||q+a.gq(a).a>c.a)&&!0 +o=b.e +if(!(o!=null)){n=b.r +o=n!=null?c.b-n-a.gq(a).b:d.wx(t.EP.a(c.a2(0,a.gq(a)))).b}if(o<0||o+a.gq(a).b>c.b)p=!0 +b.sc6(0,new A.l(q,o)) +return p}, +lj:function lj(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +fD:function fD(a,b,c){var _=this +_.y=_.x=_.w=_.r=_.f=_.e=null +_.d0$=a +_.am$=b +_.a=c}, +a9v:function a9v(a,b){this.a=a +this.b=b}, +DE:function DE(a,b,c,d,e,f,g,h,i){var _=this +_.B=!1 +_.Z=null +_.Y=a +_.av=b +_.ar=c +_.aG=d +_.aS=e +_.d_$=f +_.a3$=g +_.dk$=h +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=i +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +aPA:function aPA(a){this.a=a}, +aPy:function aPy(a){this.a=a}, +aPz:function aPz(a){this.a=a}, +aPx:function aPx(a){this.a=a}, +MS:function MS(a,b,c,d,e,f,g,h,i,j){var _=this +_.iA=a +_.B=!1 +_.Z=null +_.Y=b +_.av=c +_.ar=d +_.aG=e +_.aS=f +_.d_$=g +_.a3$=h +_.dk$=i +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=j +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +aOZ:function aOZ(a,b,c){this.a=a +this.b=b +this.c=c}, +akB:function akB(){}, +akC:function akC(){}, +aaU:function aaU(a,b){this.a=a +this.b=b}, +a7D:function a7D(a,b,c,d,e){var _=this +_.fx=a +_.fy=b +_.go=c +_.k1=null +_.E$=d +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=e +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +akF:function akF(){}, +brC(a){var s +for(s=t.NW;a!=null;){if(s.b(a))return a +a=a.gbP(a)}return null}, +brH(a,b,c,d,e,f){var s,r,q,p,o,n,m +if(b==null)return e +s=f.vB(b,0,e) +r=f.vB(b,1,e) +q=d.at +q.toString +p=s.a +o=r.a +if(pp)n=s +else{if(!(q0)return a>=1e5 +return!0}, +FW:function FW(a){this.a=a +this.b=null}, +yB:function yB(a,b){this.a=a +this.b=b}, +aLt:function aLt(a){this.a=a}, +i6:function i6(){}, +aR4:function aR4(a){this.a=a}, +aR6:function aR6(a){this.a=a}, +aR7:function aR7(a,b){this.a=a +this.b=b}, +aR8:function aR8(a,b){this.a=a +this.b=b}, +aR3:function aR3(a){this.a=a}, +aR5:function aR5(a){this.a=a}, +bk_(){var s=new A.zb(new A.aD(new A.a8($.a9,t.b),t.gR)) +s.a5b() +return s}, +za:function za(a,b){var _=this +_.a=null +_.b=!1 +_.c=null +_.d=a +_.e=null +_.f=b +_.r=$}, +zb:function zb(a){this.a=a +this.c=this.b=null}, +aYa:function aYa(a){this.a=a}, +OO:function OO(a){this.a=a}, +a8f:function a8f(){}, +aS2:function aS2(a){this.a=a}, +ax4(a){var s=$.bi3.i(0,a) +if(s==null){s=$.boD +$.boD=s+1 +$.bi3.p(0,a,s) +$.boC.p(0,s,a)}return s}, +bJQ(a,b){var s +if(a.length!==b.length)return!1 +for(s=0;s=0){q.U(r,0,p).split("\n") +q.cv(r,p+2) +n.push(new A.KN())}else n.push(new A.KN())}return n}, +bJW(a){switch(a){case"AppLifecycleState.resumed":return B.lL +case"AppLifecycleState.inactive":return B.pS +case"AppLifecycleState.hidden":return B.pT +case"AppLifecycleState.paused":return B.lM +case"AppLifecycleState.detached":return B.iA}return null}, +E5:function E5(){}, +aSy:function aSy(a){this.a=a}, +aSx:function aSx(a){this.a=a}, +b2u:function b2u(){}, +b2v:function b2v(a){this.a=a}, +b2w:function b2w(a){this.a=a}, +atK:function atK(){}, +AY(a){var s=0,r=A.y(t.H) +var $async$AY=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:s=2 +return A.t(B.by.e6("Clipboard.setData",A.ap(["text",a.a],t.N,t.z),t.H),$async$AY) +case 2:return A.w(null,r)}}) +return A.x($async$AY,r)}, +awd(a){var s=0,r=A.y(t.VC),q,p +var $async$awd=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:s=3 +return A.t(B.by.e6("Clipboard.getData",a,t.a),$async$awd) +case 3:p=c +if(p==null){q=null +s=1 +break}q=new A.tc(A.bs(J.b3(p,"text"))) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$awd,r)}, +awe(){var s=0,r=A.y(t.y),q,p +var $async$awe=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:s=3 +return A.t(B.by.e6("Clipboard.hasStrings","text/plain",t.a),$async$awe) +case 3:p=b +if(p==null){q=!1 +s=1 +break}q=A.vx(J.b3(p,"value")) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$awe,r)}, +tc:function tc(a){this.a=a}, +bH4(a){var s,r,q=a.c,p=B.a6G.i(0,q) +if(p==null)p=new A.L(q) +q=a.d +s=B.a6V.i(0,q) +if(s==null)s=new A.n(q) +r=a.a +switch(a.b.a){case 0:return new A.xl(p,s,a.e,r,a.f) +case 1:return new A.tW(p,s,null,r,a.f) +case 2:return new A.KI(p,s,a.e,r,!1)}}, +Cl:function Cl(a,b,c){this.c=a +this.a=b +this.b=c}, +tU:function tU(){}, +xl:function xl(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +tW:function tW(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +KI:function KI(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +aEa:function aEa(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.d=!1 +_.e=null}, +a2l:function a2l(a,b){this.a=a +this.b=b}, +KH:function KH(a,b){this.a=a +this.b=b}, +a2m:function a2m(a,b,c,d){var _=this +_.a=null +_.b=a +_.c=b +_.d=null +_.e=c +_.f=d}, +aha:function aha(){}, +aGE:function aGE(a,b,c){this.a=a +this.b=b +this.c=c}, +aGF:function aGF(){}, +n:function n(a){this.a=a}, +L:function L(a){this.a=a}, +ahc:function ahc(){}, +a6o(a,b,c,d){return new A.y0(a,c,b,d)}, +bjh(a){return new A.Ls(a)}, +ov:function ov(a,b){this.a=a +this.b=b}, +y0:function y0(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +Ls:function Ls(a){this.a=a}, +aWz:function aWz(){}, +aGc:function aGc(){}, +aGe:function aGe(){}, +aVS:function aVS(){}, +aVU:function aVU(a,b){this.a=a +this.b=b}, +aVW:function aVW(){}, +bMj(a){var s,r,q +for(s=A.k(a),s=s.h("@<1>").S(s.z[1]),r=new A.c2(J.ao(a.a),a.b,s.h("c2<1,2>")),s=s.z[1];r.u();){q=r.a +if(q==null)q=s.a(q) +if(!q.l(0,B.cw))return q}return null}, +aJp:function aJp(a,b){this.a=a +this.b=b}, +Lv:function Lv(){}, +dY:function dY(){}, +af8:function af8(){}, +amq:function amq(a,b){this.a=a +this.b=b}, +oW:function oW(a){this.a=a}, +aik:function aik(){}, +bHV(a,b,c){return new A.lQ(a,b,c)}, +t_:function t_(a,b,c){this.a=a +this.b=b +this.$ti=c}, +at7:function at7(a,b){this.a=a +this.b=b}, +lQ:function lQ(a,b,c){this.a=a +this.b=b +this.c=c}, +aJ6:function aJ6(a,b){this.a=a +this.b=b}, +n_:function n_(a,b,c){this.a=a +this.b=b +this.c=c}, +aAL:function aAL(a){this.a=a}, +aAN:function aAN(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aAM:function aAM(a,b){this.a=a +this.b=b}, +aAO:function aAO(a,b,c){this.a=a +this.b=b +this.c=c}, +bJ4(a){var s,r,q,p,o={} +o.a=null +s=new A.aN8(o,a).$0() +r=$.bgU().d +q=A.k(r).h("c9<1>") +p=A.i2(new A.c9(r,q),q.h("z.E")).n(0,s.gpT()) +q=J.b3(a,"type") +q.toString +A.bs(q) +switch(q){case"keydown":return new A.oJ(o.a,p,s) +case"keyup":return new A.Dv(null,!1,s) +default:throw A.c(A.ty("Unknown key event type: "+q))}}, +xm:function xm(a,b){this.a=a +this.b=b}, +lb:function lb(a,b){this.a=a +this.b=b}, +MC:function MC(){}, +n7:function n7(){}, +aN8:function aN8(a,b){this.a=a +this.b=b}, +oJ:function oJ(a,b,c){this.a=a +this.b=b +this.c=c}, +Dv:function Dv(a,b,c){this.a=a +this.b=b +this.c=c}, +aNd:function aNd(a,b){this.a=a +this.d=b}, +eV:function eV(a,b){this.a=a +this.b=b}, +ajP:function ajP(){}, +ajO:function ajO(){}, +a6M:function a6M(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +N6:function N6(a,b){var _=this +_.b=_.a=null +_.f=_.e=_.d=_.c=!1 +_.r=a +_.ak$=0 +_.ah$=b +_.aT$=_.bG$=0 +_.bK$=!1}, +aPN:function aPN(a){this.a=a}, +aPO:function aPO(a){this.a=a}, +fp:function fp(a,b,c,d,e,f){var _=this +_.a=a +_.b=null +_.c=b +_.d=c +_.e=d +_.f=e +_.r=f +_.x=_.w=!1}, +aPK:function aPK(){}, +aPL:function aPL(){}, +aPJ:function aPJ(){}, +aPM:function aPM(){}, +bEz(a,b){var s,r,q,p,o=A.a([],t.bt),n=J.ak(a),m=0,l=0 +while(!0){if(!(m1 +if(a1===0)m=0===a1 +else m=!1 +l=n&&a3a +q=!l +i=q&&!m&&sd||!q||k +if(c===o)return new A.EH(c,p,r) +else if((!h||i)&&s)return new A.a9Z(new A.d8(!n?a-1:b,a),c,p,r) +else if((b===a||j)&&s)return new A.aa_(B.c.U(a0,d,d+(a1-d)),a,c,p,r) +else if(e)return new A.aa0(a0,new A.d8(b,a),c,p,r) +return new A.EH(c,p,r)}, +uR:function uR(){}, +aa_:function aa_(a,b,c,d,e){var _=this +_.d=a +_.e=b +_.a=c +_.b=d +_.c=e}, +a9Z:function a9Z(a,b,c,d){var _=this +_.d=a +_.a=b +_.b=c +_.c=d}, +aa0:function aa0(a,b,c,d,e){var _=this +_.d=a +_.e=b +_.a=c +_.b=d +_.c=e}, +EH:function EH(a,b,c){this.a=a +this.b=b +this.c=c}, +amL:function amL(){}, +bqn(a,b){var s,r,q,p,o=a.a,n=new A.Es(o,0,0) +o=o.length===0?B.bS:new A.fe(o) +if(o.gt(o)>b)n.HC(b,0) +s=n.gH(n) +o=a.b +r=s.length +o=o.Ek(Math.min(o.a,r),Math.min(o.b,r)) +q=a.c +p=q.a +q=q.b +return new A.eN(s,o,p!==q&&r>p?new A.d8(p,Math.min(q,r)):B.c0)}, +a50:function a50(a,b){this.a=a +this.b=b}, +qY:function qY(){}, +aio:function aio(a,b){this.a=a +this.b=b}, +bbF:function bbF(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=!1}, +JN:function JN(a,b,c){this.a=a +this.b=b +this.c=c}, +aBN:function aBN(a,b,c){this.a=a +this.b=b +this.c=c}, +a2B:function a2B(a,b){this.a=a +this.b=b}, +bst(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){return new A.aXt(i,l,k,!0,c,m,n,!0,f,h,o,j,!0,a,!1)}, +bQi(a){switch(a){case"TextAffinity.downstream":return B.q +case"TextAffinity.upstream":return B.aQ}return null}, +bsr(a){var s,r,q,p,o=J.ak(a),n=A.bs(o.i(a,"text")),m=A.bv(o.i(a,"selectionBase")) +if(m==null)m=-1 +s=A.bv(o.i(a,"selectionExtent")) +if(s==null)s=-1 +r=A.bQi(A.ae(o.i(a,"selectionAffinity"))) +if(r==null)r=B.q +q=A.cG(o.i(a,"selectionIsDirectional")) +p=A.de(r,m,s,q===!0) +m=A.bv(o.i(a,"composingBase")) +if(m==null)m=-1 +o=A.bv(o.i(a,"composingExtent")) +return new A.eN(n,p,new A.d8(m,o==null?-1:o))}, +bsu(a){var s=A.a([],t.u1),r=$.bsv +$.bsv=r+1 +return new A.aXu(s,r,a)}, +bQk(a){switch(a){case"TextInputAction.none":return B.af1 +case"TextInputAction.unspecified":return B.af2 +case"TextInputAction.go":return B.af5 +case"TextInputAction.search":return B.af6 +case"TextInputAction.send":return B.af7 +case"TextInputAction.next":return B.af8 +case"TextInputAction.previous":return B.af9 +case"TextInputAction.continueAction":return B.afa +case"TextInputAction.join":return B.afb +case"TextInputAction.route":return B.af3 +case"TextInputAction.emergencyCall":return B.af4 +case"TextInputAction.done":return B.p2 +case"TextInputAction.newline":return B.KF}throw A.c(A.BL(A.a([A.ts("Unknown text input action: "+a)],t.R)))}, +bQj(a){switch(a){case"FloatingCursorDragState.start":return B.t6 +case"FloatingCursorDragState.update":return B.mR +case"FloatingCursorDragState.end":return B.mS}throw A.c(A.BL(A.a([A.ts("Unknown text cursor action: "+a)],t.R)))}, +a8V:function a8V(a,b){this.a=a +this.b=b}, +a8W:function a8W(a,b){this.a=a +this.b=b}, +EM:function EM(a,b,c){this.a=a +this.b=b +this.c=c}, +jX:function jX(a,b){this.a=a +this.b=b}, +aX7:function aX7(a,b){this.a=a +this.b=b}, +aXt:function aXt(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=h +_.x=i +_.z=j +_.Q=k +_.as=l +_.at=m +_.ax=n +_.ay=o}, +JT:function JT(a,b){this.a=a +this.b=b}, +aN7:function aN7(a,b){this.a=a +this.b=b}, +eN:function eN(a,b,c){this.a=a +this.b=b +this.c=c}, +aXc:function aXc(a,b){this.a=a +this.b=b}, +m3:function m3(a,b){this.a=a +this.b=b}, +aY3:function aY3(){}, +aXr:function aXr(){}, +yK:function yK(a,b,c){this.a=a +this.b=b +this.c=c}, +aXu:function aXu(a,b,c){var _=this +_.d=_.c=_.b=_.a=null +_.e=a +_.f=b +_.r=c}, +aa4:function aa4(a,b,c){var _=this +_.a=a +_.b=b +_.c=$ +_.d=null +_.e=$ +_.f=c +_.w=_.r=!1}, +aXK:function aXK(a){this.a=a}, +aXI:function aXI(){}, +aXH:function aXH(a,b){this.a=a +this.b=b}, +aXJ:function aXJ(a){this.a=a}, +aXL:function aXL(a){this.a=a}, +OE:function OE(){}, +aj2:function aj2(){}, +b7L:function b7L(){}, +aoQ:function aoQ(){}, +aax:function aax(a,b){this.a=a +this.b=b}, +aay:function aay(){this.a=$ +this.b=null}, +aZ1:function aZ1(){}, +bPf(a){var s=A.b4("parent") +a.tR(new A.bdT(s)) +return s.aF()}, +pC(a,b){return new A.pB(a,b,null)}, +Wy(a,b){var s,r,q=t.L1,p=a.oc(q) +for(;s=p!=null,s;p=r){if(b.$1(p))break +s=A.bPf(p).y +r=s==null?null:s.i(0,A.ck(q))}return s}, +bhA(a){var s={} +s.a=null +A.Wy(a,new A.ari(s)) +return B.Nd}, +bhC(a,b,c){var s={} +s.a=null +if((b==null?null:A.o(b))==null)A.ck(c) +A.Wy(a,new A.arl(s,b,a,c)) +return s.a}, +bhB(a,b){var s={} +s.a=null +A.ck(b) +A.Wy(a,new A.arj(s,null,b)) +return s.a}, +arh(a,b,c){var s,r=b==null?null:A.o(b) +if(r==null)r=A.ck(c) +s=a.r.i(0,r) +if(c.h("c7<0>?").b(s))return s +else return null}, +vP(a,b,c){var s={} +s.a=null +A.Wy(a,new A.ark(s,b,a,c)) +return s.a}, +bCR(a,b,c){var s={} +s.a=null +A.Wy(a,new A.arm(s,b,a,c)) +return s.a}, +aCc(a,b,c,d,e,f,g,h,i,j){return new A.wW(d,e,!1,a,j,h,i,g,f,c,null)}, +boQ(a){return new A.Ji(a,new A.bb(A.a([],t.h),t.d))}, +bdT:function bdT(a){this.a=a}, +bB:function bB(){}, +c7:function c7(){}, +f2:function f2(){}, +cq:function cq(a,b,c){var _=this +_.c=a +_.a=b +_.b=null +_.$ti=c}, +arg:function arg(){}, +pB:function pB(a,b,c){this.d=a +this.e=b +this.a=c}, +ari:function ari(a){this.a=a}, +arl:function arl(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +arj:function arj(a,b,c){this.a=a +this.b=b +this.c=c}, +ark:function ark(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +arm:function arm(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +Pu:function Pu(a,b,c){var _=this +_.d=a +_.e=b +_.a=null +_.b=c +_.c=null}, +b_Q:function b_Q(a){this.a=a}, +Pt:function Pt(a,b,c,d,e){var _=this +_.f=a +_.r=b +_.w=c +_.b=d +_.a=e}, +wW:function wW(a,b,c,d,e,f,g,h,i,j,k){var _=this +_.c=a +_.d=b +_.e=c +_.w=d +_.x=e +_.y=f +_.z=g +_.Q=h +_.as=i +_.ax=j +_.a=k}, +R1:function R1(a,b){var _=this +_.f=_.e=_.d=!1 +_.r=a +_.a=null +_.b=b +_.c=null}, +b4d:function b4d(a){this.a=a}, +b4b:function b4b(a){this.a=a}, +b46:function b46(a){this.a=a}, +b47:function b47(a){this.a=a}, +b45:function b45(a,b){this.a=a +this.b=b}, +b4a:function b4a(a){this.a=a}, +b48:function b48(a){this.a=a}, +b49:function b49(a,b){this.a=a +this.b=b}, +b4c:function b4c(a,b){this.a=a +this.b=b}, +aaZ:function aaZ(a){this.a=a +this.b=null}, +Ji:function Ji(a,b){this.c=a +this.a=b +this.b=null}, +rU:function rU(){}, +t3:function t3(){}, +kf:function kf(){}, +a0a:function a0a(){}, +qH:function qH(){}, +a6x:function a6x(a){var _=this +_.f=_.e=$ +_.a=a +_.b=null}, +Gp:function Gp(){}, +Sb:function Sb(a,b,c,d,e,f,g,h){var _=this +_.e=a +_.f=b +_.aHO$=c +_.aHP$=d +_.aHQ$=e +_.aHR$=f +_.a=g +_.b=null +_.$ti=h}, +Sc:function Sc(a,b,c,d,e,f,g,h){var _=this +_.e=a +_.f=b +_.aHO$=c +_.aHP$=d +_.aHQ$=e +_.aHR$=f +_.a=g +_.b=null +_.$ti=h}, +Qf:function Qf(a,b,c,d){var _=this +_.c=a +_.d=b +_.a=c +_.b=null +_.$ti=d}, +ad0:function ad0(){}, +acZ:function acZ(){}, +ah0:function ah0(){}, +Vm:function Vm(){}, +Vn:function Vn(){}, +bnT(a,b,c){return new A.HC(a,b,c,null)}, +HC:function HC(a,b,c,d){var _=this +_.c=a +_.e=b +_.f=c +_.a=d}, +adb:function adb(a,b,c){var _=this +_.f9$=a +_.c4$=b +_.a=null +_.b=c +_.c=null}, +ada:function ada(a,b,c,d,e,f,g,h){var _=this +_.e=a +_.f=b +_.r=c +_.w=d +_.x=e +_.y=f +_.c=g +_.a=h}, +ao5:function ao5(){}, +bnU(a,b,c,d,e,f,g){return new A.HD(a,b,d,e,f,g,c,null)}, +bCW(a,b){return new A.cS(b,!1,a,new A.bP(a.a,t.Ll))}, +bCV(a,b){var s=A.aa(b,!0,t.l7) +if(a!=null)s.push(a) +return A.fr(B.X,s,B.E,B.aH,null)}, +v6:function v6(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +HD:function HD(a,b,c,d,e,f,g,h){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.x=g +_.a=h}, +Pw:function Pw(a,b,c,d,e){var _=this +_.d=null +_.e=a +_.f=b +_.r=0 +_.dL$=c +_.b_$=d +_.a=null +_.b=e +_.c=null}, +b08:function b08(a,b,c){this.a=a +this.b=b +this.c=c}, +b07:function b07(a,b){this.a=a +this.b=b}, +b09:function b09(){}, +b0a:function b0a(a){this.a=a}, +UV:function UV(){}, +bnW(a,b,c){return new A.HJ(b,a,null,c.h("HJ<0>"))}, +HJ:function HJ(a,b,c,d){var _=this +_.e=a +_.c=b +_.a=c +_.$ti=d}, +bQQ(a1,a2){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0=null +if(a1==null||a1.length===0)return B.b.gN(a2) +s=t.N +r=t.da +q=A.cx(a0,a0,a0,s,r) +p=A.cx(a0,a0,a0,s,r) +o=A.cx(a0,a0,a0,s,r) +n=A.cx(a0,a0,a0,s,r) +m=A.cx(a0,a0,a0,t.v,r) +for(l=0;l<13;++l){k=a2[l] +s=k.a +r=B.cI.i(0,s) +if(r==null)r=s +j=A.h(k.b) +i=k.c +h=B.dh.i(0,i) +if(h==null)h=i +h=r+"_"+j+"_"+A.h(h) +if(q.i(0,h)==null)q.p(0,h,k) +r=B.cI.i(0,s) +r=(r==null?s:r)+"_"+j +if(o.i(0,r)==null)o.p(0,r,k) +r=B.cI.i(0,s) +if(r==null)r=s +j=B.dh.i(0,i) +if(j==null)j=i +j=r+"_"+A.h(j) +if(p.i(0,j)==null)p.p(0,j,k) +r=B.cI.i(0,s) +s=r==null?s:r +if(n.i(0,s)==null)n.p(0,s,k) +s=B.dh.i(0,i) +if(s==null)s=i +if(m.i(0,s)==null)m.p(0,s,k)}for(g=a0,f=g,e=0;e"))}, +bka(){var s=null,r=A.a([],t.GA),q=$.a9,p=A.a([],t.Jh),o=A.aT(7,s,!1,t.JI),n=t.S,m=t.j2 +n=new A.ab_(s,$,r,!0,new A.aD(new A.a8(q,t.b),t.gR),!1,s,!1,$,!1,s,$,!1,0,!1,$,$,0,s,$,$,new A.amo(A.aY(t.Q)),$,$,$,$,s,p,s,A.bQT(),new A.a1D(A.bQS(),o,t.G7),!1,0,A.F(n,t.Jc),A.dN(n),A.a([],m),A.a([],m),s,!1,B.fE,!0,!1,s,B.F,B.F,s,0,s,!1,s,s,0,A.or(s,t.qL),new A.aLQ(A.F(n,t.rr),A.F(t.Ld,t.iD)),new A.aDj(A.F(n,t.cK)),new A.aLT(),A.F(n,t.Fn),$,!1,B.RL) +n.alp() +return n}, +bcK:function bcK(a){this.a=a}, +hj:function hj(){}, +P6:function P6(){}, +bcJ:function bcJ(a,b){this.a=a +this.b=b}, +aZX:function aZX(a,b){this.a=a +this.b=b}, +yr:function yr(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.a=d +_.$ti=e}, +aP9:function aP9(a,b,c){this.a=a +this.b=b +this.c=c}, +aPa:function aPa(a){this.a=a}, +uv:function uv(a,b,c){var _=this +_.d=_.c=_.b=_.a=_.CW=_.ay=_.p2=_.p1=null +_.e=$ +_.f=a +_.r=null +_.w=b +_.z=_.y=null +_.Q=!1 +_.as=!0 +_.ax=_.at=!1 +_.$ti=c}, +ab_:function ab_(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,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,d1,d2,d3,d4,d5,d6,d7,d8,d9,e0){var _=this +_.al$=a +_.cg$=b +_.cI$=c +_.ez$=d +_.C$=e +_.a0$=f +_.aw$=g +_.cu$=h +_.aG$=i +_.aS$=j +_.b8$=k +_.b6$=l +_.bp$=m +_.cc$=n +_.fF$=o +_.fm$=p +_.UI$=q +_.UJ$=r +_.La$=s +_.Lb$=a0 +_.qH$=a1 +_.ta$=a2 +_.dl$=a3 +_.h_$=a4 +_.dG$=a5 +_.cS$=a6 +_.ep$=a7 +_.go$=a8 +_.id$=a9 +_.k1$=b0 +_.k2$=b1 +_.k3$=b2 +_.k4$=b3 +_.ok$=b4 +_.p1$=b5 +_.p2$=b6 +_.p3$=b7 +_.p4$=b8 +_.R8$=b9 +_.RG$=c0 +_.rx$=c1 +_.ry$=c2 +_.to$=c3 +_.x1$=c4 +_.x2$=c5 +_.xr$=c6 +_.y1$=c7 +_.y2$=c8 +_.c5$=c9 +_.cO$=d0 +_.aV$=d1 +_.bU$=d2 +_.cb$=d3 +_.bQ$=d4 +_.bO$=d5 +_.B$=d6 +_.Z$=d7 +_.Y$=d8 +_.av$=d9 +_.ar$=e0 +_.a=!1 +_.b=null +_.c=0}, +SO:function SO(){}, +Us:function Us(){}, +Ut:function Ut(){}, +Uu:function Uu(){}, +Uv:function Uv(){}, +Uw:function Uw(){}, +Ux:function Ux(){}, +Uy:function Uy(){}, +tl(a,b,c){return new A.a_M(b,c,a,null)}, +cP(a,b,c,d,e,f,g,h,i,j,k){var s +if(k!=null||h!=null){s=e==null?null:e.WV(h,k) +if(s==null)s=A.ii(h,k)}else s=e +return new A.YB(b,a,j,d,f,g,s,i,c,null)}, +a_M:function a_M(a,b,c,d){var _=this +_.e=a +_.f=b +_.c=c +_.a=d}, +YB:function YB(a,b,c,d,e,f,g,h,i,j){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.x=g +_.y=h +_.as=i +_.a=j}, +af1:function af1(a,b){this.b=a +this.c=b}, +wf:function wf(a,b){this.a=a +this.b=b}, +ht:function ht(a,b,c){this.a=a +this.b=b +this.c=c}, +bou(){var s=$.B3 +if(s!=null)s.er(0) +$.B3=null +if($.pP!=null)$.pP=null}, +YE:function YE(){}, +awv:function awv(a,b){this.a=a +this.b=b}, +axf(a,b,c,d,e){return new A.tm(b,e,d,a,c)}, +bEy(a,b){var s=null +return new A.ej(new A.axg(s,s,s,b,a),s)}, +tm:function tm(a,b,c,d,e){var _=this +_.w=a +_.x=b +_.y=c +_.b=d +_.a=e}, +axg:function axg(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +aiG:function aiG(a){this.a=a}, +bEA(){switch(A.cb().a){case 0:return $.bmb() +case 1:return $.byl() +case 2:return $.bym() +case 3:return $.byn() +case 4:return $.bmc() +case 5:return $.byp()}}, +a_W:function a_W(a,b){this.c=a +this.a=b}, +a01:function a01(a){this.b=a}, +bES(a){var s=a.ae(t.I) +s.toString +switch(s.w.a){case 0:return B.aay +case 1:return B.i}}, +boN(a){var s=a.ch,r=A.ab(s) +return new A.en(new A.be(s,new A.ayb(),r.h("be<1>")),new A.ayc(),r.h("en<1,I>"))}, +bER(a,b){var s,r,q,p,o=B.b.gN(a),n=A.boM(b,o) +for(s=a.length,r=0;rr)return a.a2(0,new A.l(p,r)).ge3() +else return p-q}}else{p=b.c +if(q>p){s=a.b +r=b.b +if(sr)return a.a2(0,new A.l(p,r)).ge3() +else return q-p}}else{q=a.b +p=b.b +if(qp)return q-p +else return 0}}}}, +boO(a,b){var s,r,q,p,o,n,m,l,k,j,i,h=t.AO,g=A.a([a],h) +for(s=b.gaj(b);s.u();g=q){r=s.gH(s) +q=A.a([],h) +for(p=g.length,o=r.a,n=r.b,m=r.d,r=r.c,l=0;l=n&&k.d<=m){i=k.a +if(ir)q.push(new A.I(r,j,r+(i-r),j+(k.d-j)))}else{i=k.a +if(i>=o&&k.c<=r){if(jm)q.push(new A.I(i,m,i+(k.c-i),m+(j-m)))}else q.push(k)}}}return g}, +bEQ(a,b){var s,r=a.a +if(r>=0)if(r<=b.a){s=a.b +s=s>=0&&s<=b.b}else s=!1 +else s=!1 +if(s)return a +else return new A.l(Math.min(Math.max(0,r),b.a),Math.min(Math.max(0,a.b),b.b))}, +Jh:function Jh(a,b,c){this.c=a +this.d=b +this.a=c}, +ayb:function ayb(){}, +ayc:function ayc(){}, +a0b:function a0b(a,b){this.a=a +this.$ti=b}, +bFi(a){var s=a.ae(t.tM) +return s.aPF()}, +a0m:function a0m(a,b,c){this.c=a +this.d=b +this.a=c}, +GB:function GB(a){var _=this +_.ak$=0 +_.ah$=a +_.aT$=_.bG$=0 +_.bK$=!1}, +Rq:function Rq(a,b,c){this.f=a +this.b=b +this.a=c}, +Bq:function Bq(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +QH:function QH(a,b,c){var _=this +_.d=$ +_.e=a +_.f=b +_.a=null +_.b=c +_.c=null}, +bKE(a){var s=a==null?B.KD:new A.eN(a,B.id,B.c0) +return new A.qX(s,$.b5())}, +bpi(a,b,c,d,e,f,g,h,i,j,k,l,m,n,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,d1,d2,d3,d4,d5,d6,d7,d8,d9,e0,e1,e2,e3,e4,e5,e6,e7,e8,e9,f0,f1,f2,f3){var s,r,q,p,o +if(e0==null)s=b7?B.oQ:B.oR +else s=e0 +if(e1==null)r=b7?B.oS:B.oT +else r=e1 +if(t.qY.b(d5)&&!0)q=B.p6 +else if(b7)q=c7?B.p6:B.ajG +else q=c7?B.ajH:B.ajI +p=b2==null?A.bFp(d,b4):b2 +if(b4===1){o=A.a([$.byz()],t.VS) +B.b.I(o,a9==null?B.NB:a9)}else o=a9 +return new A.Bv(j,a7,b8,b7,e8,f1,c7,a8,q,d9,d8==null?!c7:d8,!0,s,r,!0,e4,f3,e3,e5,e7,e6,f0,k,b,f,b4,b5,!1,e,d4,d5,p,e9,c0,c1,c4,b9,c2,c3,c5,o,b6,!0,a1,l,a0,n,m,c6,d6,d7,b1,d2,a4,a2,d1,d3,!0,d,c,g,c9,!0,h,i,e2,b3,b0)}, +bFp(a,b){return b===1?B.KG:B.p3}, +bFo(a){var s,r=a==null,q=r?null:a.a,p=r||a.l(0,B.ia) +r=q==null +if(r){$.ar.toString +$.bL() +s=!1}else s=!0 +if(p||!s)return B.ia +if(r){r=new A.axh() +r.b=B.aaX}else r=q +return a.aG4(r)}, +vu(a,b,c,d,e,f,g){return new A.Ue(a,e,f,d,b,c,new A.bb(A.a([],t.h),t.d),g.h("Ue<0>"))}, +aee:function aee(a,b,c,d){var _=this +_.e=a +_.f=b +_.c=c +_.a=d}, +akc:function akc(a,b,c,d){var _=this +_.C=a +_.a0=null +_.aw=b +_.E$=c +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=d +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +qX:function qX(a,b){var _=this +_.a=a +_.ak$=0 +_.ah$=b +_.aT$=_.bG$=0 +_.bK$=!1}, +EU:function EU(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +kH:function kH(a,b){this.a=a +this.b=b}, +b2M:function b2M(a,b,c){var _=this +_.b=a +_.c=b +_.d=0 +_.a=c}, +Bv:function Bv(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,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,d1,d2,d3,d4,d5,d6,d7,d8,d9,e0,e1,e2,e3,e4,e5,e6,e7,e8){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.x=g +_.y=h +_.z=i +_.Q=j +_.as=k +_.at=l +_.ax=m +_.ay=n +_.ch=o +_.CW=p +_.cx=q +_.cy=r +_.db=s +_.dx=a0 +_.dy=a1 +_.fx=a2 +_.fy=a3 +_.go=a4 +_.id=a5 +_.k1=a6 +_.k2=a7 +_.k3=a8 +_.k4=a9 +_.ok=b0 +_.p1=b1 +_.p2=b2 +_.p3=b3 +_.p4=b4 +_.R8=b5 +_.RG=b6 +_.rx=b7 +_.ry=b8 +_.to=b9 +_.x1=c0 +_.x2=c1 +_.xr=c2 +_.y1=c3 +_.y2=c4 +_.c5=c5 +_.cO=c6 +_.aV=c7 +_.bU=c8 +_.cb=c9 +_.bQ=d0 +_.bO=d1 +_.B=d2 +_.Z=d3 +_.Y=d4 +_.av=d5 +_.ar=d6 +_.aG=d7 +_.aS=d8 +_.b8=d9 +_.b6=e0 +_.bp=e1 +_.cc=e2 +_.fm=e3 +_.ak=e4 +_.ah=e5 +_.bG=e6 +_.aT=e7 +_.a=e8}, +tq:function tq(a,b,c,d,e,f,g,h,i,j,k){var _=this +_.e=_.d=null +_.f=$ +_.r=a +_.w=b +_.x=c +_.Q=_.z=null +_.as=d +_.at=null +_.ax=e +_.ay=f +_.ch=g +_.CW=!1 +_.cx=null +_.db=_.cy=$ +_.fr=_.dy=_.dx=null +_.fx=!0 +_.k2=_.k1=_.id=_.go=_.fy=null +_.k3=0 +_.p1=_.ok=_.k4=!1 +_.p2=$ +_.p3=0 +_.R8=_.p4=null +_.RG=$ +_.rx=-1 +_.ry=null +_.y1=_.xr=_.x2=_.x1=_.to=$ +_.dL$=h +_.b_$=i +_.mN$=j +_.a=null +_.b=k +_.c=null}, +azp:function azp(){}, +azL:function azL(a){this.a=a}, +azQ:function azQ(a){this.a=a}, +azC:function azC(a){this.a=a}, +azD:function azD(a){this.a=a}, +azE:function azE(a){this.a=a}, +azF:function azF(a){this.a=a}, +azG:function azG(a){this.a=a}, +azH:function azH(a){this.a=a}, +azI:function azI(a){this.a=a}, +azJ:function azJ(a){this.a=a}, +azK:function azK(a){this.a=a}, +azM:function azM(a){this.a=a}, +azO:function azO(a){this.a=a}, +azl:function azl(a,b){this.a=a +this.b=b}, +azt:function azt(a,b){this.a=a +this.b=b}, +azN:function azN(a){this.a=a}, +azn:function azn(a){this.a=a}, +azx:function azx(a){this.a=a}, +azq:function azq(){}, +azr:function azr(a){this.a=a}, +azs:function azs(a){this.a=a}, +azm:function azm(){}, +azo:function azo(a){this.a=a}, +azT:function azT(a){this.a=a}, +azP:function azP(a){this.a=a}, +azR:function azR(a){this.a=a}, +azS:function azS(a,b,c){this.a=a +this.b=b +this.c=c}, +azu:function azu(a,b){this.a=a +this.b=b}, +azv:function azv(a,b){this.a=a +this.b=b}, +azw:function azw(a,b){this.a=a +this.b=b}, +azk:function azk(a){this.a=a}, +azA:function azA(a){this.a=a}, +azz:function azz(a){this.a=a}, +azB:function azB(a,b){this.a=a +this.b=b}, +azy:function azy(a){this.a=a}, +QI:function QI(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,b0,b1,b2,b3,b4,b5,b6,b7,b8,b9,c0){var _=this +_.e=a +_.f=b +_.r=c +_.w=d +_.x=e +_.y=f +_.z=g +_.Q=h +_.as=i +_.at=j +_.ax=k +_.ay=l +_.ch=m +_.CW=n +_.cx=o +_.cy=p +_.db=q +_.dx=r +_.dy=s +_.fr=a0 +_.fx=a1 +_.fy=a2 +_.go=a3 +_.id=a4 +_.k1=a5 +_.k2=a6 +_.k3=a7 +_.k4=a8 +_.ok=a9 +_.p1=b0 +_.p2=b1 +_.p3=b2 +_.p4=b3 +_.R8=b4 +_.RG=b5 +_.rx=b6 +_.ry=b7 +_.to=b8 +_.c=b9 +_.a=c0}, +b9W:function b9W(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}, +T4:function T4(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.a=f}, +al3:function al3(a,b){var _=this +_.d=a +_.a=null +_.b=b +_.c=null}, +b9X:function b9X(a){this.a=a}, +nI:function nI(a,b,c,d,e){var _=this +_.x=a +_.e=b +_.b=c +_.c=d +_.a=e}, +aeb:function aeb(a){this.a=a}, +rc:function rc(a,b,c,d,e){var _=this +_.e=a +_.f=b +_.r=c +_.a=d +_.b=null +_.$ti=e}, +Ue:function Ue(a,b,c,d,e,f,g,h){var _=this +_.e=a +_.f=b +_.r=c +_.w=d +_.x=e +_.y=f +_.a=g +_.b=null +_.$ti=h}, +Uf:function Uf(a,b,c){var _=this +_.e=a +_.r=_.f=null +_.a=b +_.b=null +_.$ti=c}, +alb:function alb(a,b){this.e=a +this.a=b +this.b=null}, +aez:function aez(a,b){this.e=a +this.a=b +this.b=null}, +agt:function agt(a,b){this.a=a +this.b=b}, +QJ:function QJ(){}, +afB:function afB(){}, +QK:function QK(){}, +afC:function afC(){}, +afD:function afD(){}, +bR7(a){var s,r,q +for(s=a.length,r=!1,q=0;q>"),n=new A.ad(a,new A.b8F(),o) +for(s=new A.bZ(n,n.gt(n),o.h("bZ")),o=o.h("ax.E"),r=null;s.u();){q=s.d +p=q==null?o.a(q):q +r=(r==null?p:r).Fh(0,p)}if(r.gai(r))return B.b.gN(a).a +return B.b.Lj(B.b.gN(a).ga8N(),r.gkY(r)).w}, +bu1(a,b){A.rJ(a,new A.b8H(b),t.zP)}, +bN5(a,b){A.rJ(a,new A.b8E(b),t.h7)}, +bjA(){return new A.aOu(A.F(t.l5,t.UJ),A.bSu())}, +bpC(a,b){return new A.JX(b==null?A.bjA():b,a,null)}, +aC9(a){var s +for(;s=a.Q,s!=null;a=s){if(a.e==null)return null +if(a instanceof A.R0)return a}return null}, +wV(a){var s,r=A.biI(a,!1,!0) +if(r==null)return null +s=A.aC9(r) +return s==null?null:s.dy}, +bdP:function bdP(a){this.a=a}, +FT:function FT(a,b){this.b=a +this.c=b}, +zh:function zh(a,b){this.a=a +this.b=b}, +aar:function aar(a,b){this.a=a +this.b=b}, +a19:function a19(){}, +aCb:function aCb(a,b){this.a=a +this.b=b}, +aCa:function aCa(){}, +FF:function FF(a,b){this.a=a +this.b=b}, +aff:function aff(a){this.a=a}, +axT:function axT(){}, +b8I:function b8I(a){this.a=a}, +ay0:function ay0(a,b){this.a=a +this.b=b}, +ay2:function ay2(a){this.a=a}, +ay1:function ay1(a){this.a=a}, +ay3:function ay3(a){this.a=a}, +ay4:function ay4(a){this.a=a}, +axV:function axV(a){this.a=a}, +axW:function axW(a){this.a=a}, +axX:function axX(){}, +axY:function axY(a){this.a=a}, +axZ:function axZ(a){this.a=a}, +ay_:function ay_(){}, +axU:function axU(a,b,c){this.a=a +this.b=b +this.c=c}, +ay5:function ay5(a){this.a=a}, +ay6:function ay6(a){this.a=a}, +ay7:function ay7(a){this.a=a}, +ay8:function ay8(a){this.a=a}, +fX:function fX(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.d=null}, +b8F:function b8F(){}, +b8H:function b8H(a){this.a=a}, +b8G:function b8G(){}, +pk:function pk(a){this.a=a +this.b=null}, +b8D:function b8D(){}, +b8E:function b8E(a){this.a=a}, +aOu:function aOu(a,b){this.EU$=a +this.a=b}, +aOv:function aOv(){}, +aOw:function aOw(){}, +aOx:function aOx(a){this.a=a}, +JX:function JX(a,b,c){this.c=a +this.f=b +this.a=c}, +R0:function R0(a,b,c,d,e,f,g,h,i){var _=this +_.dy=a +_.a=b +_.b=c +_.c=d +_.d=e +_.e=null +_.f=f +_.r=g +_.y=_.x=_.w=null +_.z=!1 +_.Q=null +_.as=h +_.ax=_.at=null +_.ay=!1 +_.ak$=0 +_.ah$=i +_.aT$=_.bG$=0 +_.bK$=!1}, +agj:function agj(a){var _=this +_.d=$ +_.a=null +_.b=a +_.c=null}, +a7F:function a7F(a){this.a=a +this.b=null}, +xS:function xS(){}, +a5s:function a5s(a){this.a=a +this.b=null}, +yb:function yb(){}, +a6u:function a6u(a){this.a=a +this.b=null}, +tp:function tp(a){this.a=a}, +Jf:function Jf(a,b){this.c=a +this.a=b +this.b=null}, +agk:function agk(){}, +ajX:function ajX(){}, +aoW:function aoW(){}, +aoX:function aoX(){}, +biK(a){var s=a.ae(t.Jp) +return s==null?null:s.f}, +bGa(a){var s=null,r=$.b5() +return new A.l2(new A.N5(s,r),new A.yx(!1,r),s,A.F(t.yb,t.Q),s,!0,s,B.m,a.h("l2<0>"))}, +K2:function K2(a,b,c){this.c=a +this.f=b +this.a=c}, +K4:function K4(a,b){var _=this +_.d=0 +_.e=!1 +_.f=a +_.a=null +_.b=b +_.c=null}, +aCC:function aCC(){}, +aCD:function aCD(a){this.a=a}, +aCE:function aCE(a,b){this.a=a +this.b=b}, +R3:function R3(a,b,c,d){var _=this +_.f=a +_.r=b +_.b=c +_.a=d}, +q6:function q6(){}, +l2:function l2(a,b,c,d,e,f,g,h,i){var _=this +_.d=$ +_.e=a +_.f=b +_.d5$=c +_.j4$=d +_.x5$=e +_.hb$=f +_.j5$=g +_.a=null +_.b=h +_.c=null +_.$ti=i}, +aCB:function aCB(a){this.a=a}, +aCA:function aCA(a,b){this.a=a +this.b=b}, +asv:function asv(a,b){this.a=a +this.b=b}, +b4e:function b4e(){}, +FU:function FU(){}, +aDK(a,b){return new A.bo(a,b.h("bo<0>"))}, +bMF(a){a.fk() +a.ck(A.bfn())}, +bFs(a,b){var s,r,q,p=a.e +p===$&&A.b() +s=b.e +s===$&&A.b() +r=p-s +if(r!==0)return r +q=b.as +if(a.as!==q)return q?-1:1 +return 0}, +bFt(a,b){var s=A.ab(b).h("ad<1,fO>") +return A.bEE(!0,A.aa(new A.ad(b,new A.azZ(),s),!0,s.h("ax.E")),a,B.a1O,!0,B.Rc,null)}, +bFr(a){a.cn() +a.ck(A.bwD())}, +JG(a){var s=a.a,r=s instanceof A.q4?s:null +return new A.a0K("",r,new A.kF())}, +bKl(a){var s=a.a8(),r=new A.i7(s,a,B.al) +s.c=r +s.a=a +return r}, +bGG(a){return new A.iY(A.cx(null,null,null,t.F,t.X),a,B.al)}, +bHY(a){return new A.kr(A.dN(t.F),a,B.al)}, +blg(a,b,c,d){var s=new A.cc(b,c,"widgets library",a,d,!1) +A.dV(s) +return s}, +hy:function hy(){}, +bo:function bo(a,b){this.a=a +this.$ti=b}, +q9:function q9(a,b){this.a=a +this.$ti=b}, +d:function d(){}, +a4:function a4(){}, +P:function P(){}, +baR:function baR(a,b){this.a=a +this.b=b}, +af:function af(){}, +b2:function b2(){}, +ha:function ha(){}, +bi:function bi(){}, +aG:function aG(){}, +a2z:function a2z(){}, +by:function by(){}, +fz:function fz(){}, +FN:function FN(a,b){this.a=a +this.b=b}, +agQ:function agQ(a){this.a=!1 +this.b=a}, +b56:function b56(a,b){this.a=a +this.b=b}, +au2:function au2(a,b,c,d){var _=this +_.a=null +_.b=a +_.c=b +_.d=!1 +_.e=null +_.f=c +_.r=0 +_.w=!1 +_.y=_.x=null +_.z=d}, +au3:function au3(a,b,c){this.a=a +this.b=b +this.c=c}, +LO:function LO(){}, +b7h:function b7h(a,b){this.a=a +this.b=b}, +bG:function bG(){}, +aA1:function aA1(a){this.a=a}, +aA_:function aA_(a){this.a=a}, +azZ:function azZ(){}, +aA2:function aA2(a){this.a=a}, +aA3:function aA3(a){this.a=a}, +aA4:function aA4(a){this.a=a}, +azX:function azX(a){this.a=a}, +aA0:function aA0(){}, +azY:function azY(a){this.a=a}, +a0K:function a0K(a,b,c){this.d=a +this.e=b +this.a=c}, +IH:function IH(){}, +awl:function awl(){}, +awm:function awm(){}, +Eo:function Eo(a,b){var _=this +_.d=_.c=_.b=_.a=_.ay=null +_.e=$ +_.f=a +_.r=null +_.w=b +_.z=_.y=null +_.Q=!1 +_.as=!0 +_.ax=_.at=!1}, +i7:function i7(a,b,c){var _=this +_.ok=a +_.p1=!1 +_.d=_.c=_.b=_.a=_.ay=null +_.e=$ +_.f=b +_.r=null +_.w=c +_.z=_.y=null +_.Q=!1 +_.as=!0 +_.ax=_.at=!1}, +Mu:function Mu(){}, +xZ:function xZ(a,b,c){var _=this +_.d=_.c=_.b=_.a=_.ay=null +_.e=$ +_.f=a +_.r=null +_.w=b +_.z=_.y=null +_.Q=!1 +_.as=!0 +_.ax=_.at=!1 +_.$ti=c}, +aLo:function aLo(a){this.a=a}, +iY:function iY(a,b,c){var _=this +_.aV=a +_.d=_.c=_.b=_.a=_.ay=null +_.e=$ +_.f=b +_.r=null +_.w=c +_.z=_.y=null +_.Q=!1 +_.as=!0 +_.ax=_.at=!1}, +c0:function c0(){}, +aPR:function aPR(){}, +a2y:function a2y(a,b){var _=this +_.d=_.c=_.b=_.a=_.CW=_.ay=null +_.e=$ +_.f=a +_.r=null +_.w=b +_.z=_.y=null +_.Q=!1 +_.as=!0 +_.ax=_.at=!1}, +NJ:function NJ(a,b){var _=this +_.d=_.c=_.b=_.a=_.CW=_.ay=_.p1=null +_.e=$ +_.f=a +_.r=null +_.w=b +_.z=_.y=null +_.Q=!1 +_.as=!0 +_.ax=_.at=!1}, +kr:function kr(a,b,c){var _=this +_.p1=$ +_.p2=a +_.d=_.c=_.b=_.a=_.CW=_.ay=null +_.e=$ +_.f=b +_.r=null +_.w=c +_.z=_.y=null +_.Q=!1 +_.as=!0 +_.ax=_.at=!1}, +aJG:function aJG(a){this.a=a}, +tN:function tN(a,b,c){this.a=a +this.b=b +this.$ti=c}, +aiC:function aiC(a,b){var _=this +_.d=_.c=_.b=_.a=null +_.e=$ +_.f=a +_.r=null +_.w=b +_.z=_.y=null +_.Q=!1 +_.as=!0 +_.ax=_.at=!1}, +aiH:function aiH(a){this.a=a}, +am7:function am7(){}, +dM(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,b0,b1,b2){return new A.a1k(b,a8,a9,a6,a7,a2,a4,a5,a3,f,l,o,n,m,b0,h,j,k,i,g,p,r,q,a0,a1,s,a,d,c,!1,b2,e)}, +x0:function x0(){}, +dy:function dy(a,b,c){this.a=a +this.b=b +this.$ti=c}, +a1k:function a1k(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,b0,b1,b2){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.x=g +_.y=h +_.z=i +_.ay=j +_.cy=k +_.db=l +_.dx=m +_.fr=n +_.to=o +_.x2=p +_.xr=q +_.y1=r +_.y2=s +_.c5=a0 +_.cO=a1 +_.bU=a2 +_.cb=a3 +_.bO=a4 +_.B=a5 +_.Z=a6 +_.aS=a7 +_.b8=a8 +_.b6=a9 +_.cc=b0 +_.fF=b1 +_.a=b2}, +aDq:function aDq(a){this.a=a}, +aDr:function aDr(a,b){this.a=a +this.b=b}, +aDs:function aDs(a){this.a=a}, +aDy:function aDy(a,b){this.a=a +this.b=b}, +aDz:function aDz(a){this.a=a}, +aDA:function aDA(a,b){this.a=a +this.b=b}, +aDB:function aDB(a){this.a=a}, +aDC:function aDC(a,b){this.a=a +this.b=b}, +aDD:function aDD(a){this.a=a}, +aDE:function aDE(a,b){this.a=a +this.b=b}, +aDF:function aDF(a){this.a=a}, +aDt:function aDt(a,b){this.a=a +this.b=b}, +aDu:function aDu(a){this.a=a}, +aDv:function aDv(a,b){this.a=a +this.b=b}, +aDw:function aDw(a){this.a=a}, +aDx:function aDx(a,b){this.a=a +this.b=b}, +n6:function n6(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +Du:function Du(a,b){var _=this +_.d=a +_.a=_.e=null +_.b=b +_.c=null}, +agp:function agp(a,b,c,d){var _=this +_.e=a +_.f=b +_.c=c +_.a=d}, +aS1:function aS1(){}, +b2z:function b2z(a){this.a=a}, +b2E:function b2E(a){this.a=a}, +b2D:function b2D(a){this.a=a}, +b2A:function b2A(a){this.a=a}, +b2B:function b2B(a){this.a=a}, +b2C:function b2C(a,b){this.a=a +this.b=b}, +b2F:function b2F(a){this.a=a}, +b2G:function b2G(a){this.a=a}, +b2H:function b2H(a,b){this.a=a +this.b=b}, +bpW(a,b,c,d,e,f){return new A.qb(e,b,a,c,d,f,null)}, +bpY(a,b,c){var s=A.F(t.K,t.U3) +a.ck(new A.aEo(c,new A.aEn(s,b))) +return s}, +btO(a,b){var s,r=a.ga9() +r.toString +t.x.a(r) +s=r.cs(0,b==null?null:b.ga9()) +r=r.gq(r) +return A.j4(s,new A.I(0,0,0+r.a,0+r.b))}, +C_:function C_(a,b){this.a=a +this.b=b}, +qb:function qb(a,b,c,d,e,f,g){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.a=g}, +aEn:function aEn(a,b){this.a=a +this.b=b}, +aEo:function aEo(a,b){this.a=a +this.b=b}, +G1:function G1(a,b){var _=this +_.d=a +_.e=null +_.f=!0 +_.a=null +_.b=b +_.c=null}, +b4S:function b4S(a,b){this.a=a +this.b=b}, +b4R:function b4R(){}, +b4O:function b4O(a,b,c,d,e,f,g,h,i,j,k){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=h +_.x=i +_.y=j +_.z=k +_.at=_.as=_.Q=$}, +rj:function rj(a,b){var _=this +_.a=a +_.b=$ +_.c=null +_.d=b +_.f=_.e=$ +_.r=null +_.x=_.w=!1}, +b4P:function b4P(a){this.a=a}, +b4Q:function b4Q(a,b){this.a=a +this.b=b}, +lJ:function lJ(a,b){this.a=a +this.b=b}, +aEm:function aEm(){}, +aEl:function aEl(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +aEk:function aEk(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +fR(a,b,c,d){return new A.bC(a,d,b,c,null)}, +bC:function bC(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.x=c +_.z=d +_.a=e}, +aM:function aM(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +x9(a,b,c){return new A.x8(b,a,c)}, +mP(a,b){return new A.ej(new A.aFp(null,b,a),null)}, +Km(a){var s,r,q,p,o,n,m=A.bq4(a).L(a),l=m.a,k=l==null +if(!k)if(m.b!=null)if(m.c!=null)if(m.d!=null)if(m.e!=null)if(m.f!=null){s=m.r +s=(s==null?null:A.S(s,0,1))!=null}else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +if(s)l=m +else{if(k)l=24 +k=m.b +if(k==null)k=0 +s=m.c +if(s==null)s=400 +r=m.d +if(r==null)r=0 +q=m.e +if(q==null)q=48 +p=m.f +if(p==null)p=B.v +o=m.r +o=o==null?null:A.S(o,0,1) +if(o==null)o=A.S(1,0,1) +n=m.w +l=m.wJ(p,k,r,o,q,n==null?null:n,l,s)}return l}, +bq4(a){var s=a.ae(t.Oh),r=s==null?null:s.w +return r==null?B.Um:r}, +x8:function x8(a,b,c){this.w=a +this.b=b +this.a=c}, +aFp:function aFp(a,b,c){this.a=a +this.b=b +this.c=c}, +qf(a,b,c){var s,r,q,p,o,n,m,l,k,j,i=null +if(a==b&&a!=null)return a +s=a==null +r=s?i:a.a +q=b==null +r=A.ag(r,q?i:b.a,c) +p=s?i:a.b +p=A.ag(p,q?i:b.b,c) +o=s?i:a.c +o=A.ag(o,q?i:b.c,c) +n=s?i:a.d +n=A.ag(n,q?i:b.d,c) +m=s?i:a.e +m=A.ag(m,q?i:b.e,c) +l=s?i:a.f +l=A.W(l,q?i:b.f,c) +if(s)k=i +else{k=a.r +k=k==null?i:A.S(k,0,1)}if(q)j=i +else{j=b.r +j=j==null?i:A.S(j,0,1)}j=A.ag(k,j,c) +s=s?i:a.w +return new A.cX(r,p,o,n,m,l,j,A.bK0(s,q?i:b.w,c))}, +cX:function cX(a,b,c,d,e,f,g,h){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=h}, +agM:function agM(){}, +VV(a,b){var s,r +a.ae(t.l4) +s=$.aqP() +r=A.cT(a,B.d7) +r=r==null?null:r.b +if(r==null)r=1 +return new A.xa(s,r,A.KX(a),A.eF(a),b,A.cb())}, +bq5(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){return new A.C3(j,h,l,d,o,i,b,f,c,g,a,n,!1,e,k)}, +C3:function C3(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.x=g +_.z=h +_.Q=i +_.as=j +_.at=k +_.ax=l +_.ch=m +_.cy=n +_.a=o}, +Rj:function Rj(a){var _=this +_.f=_.e=_.d=null +_.r=!1 +_.w=$ +_.x=null +_.y=!1 +_.z=$ +_.a=_.ax=_.at=_.as=_.Q=null +_.b=a +_.c=null}, +b50:function b50(a){this.a=a}, +b5_:function b5_(a,b,c){this.a=a +this.b=b +this.c=c}, +b52:function b52(a,b,c){this.a=a +this.b=b +this.c=c}, +b51:function b51(a,b){this.a=a +this.b=b}, +b53:function b53(a){this.a=a}, +b54:function b54(a){this.a=a}, +b55:function b55(a){this.a=a}, +aoy:function aoy(){}, +C5(a,b,c){return new A.a1W(a,c,b,null)}, +a1W:function a1W(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +bnS(a,b,c,d,e){return new A.HB(a,d,e,b,c,null,null)}, +bnR(a,b,c,d){return new A.Hy(a,d,b,c,null,null)}, +Ah(a,b,c,d){return new A.Hw(a,d,b,c,null,null)}, +a_Q:function a_Q(a,b){this.a=a +this.b=b}, +Jw:function Jw(a,b){this.a=a +this.b=b}, +wC:function wC(a,b){this.a=a +this.b=b}, +w_:function w_(a,b){this.a=a +this.b=b}, +XE:function XE(a,b){this.a=a +this.b=b}, +p_:function p_(a,b){this.a=a +this.b=b}, +a2_:function a2_(){}, +C7:function C7(){}, +aFO:function aFO(a){this.a=a}, +aFN:function aFN(a){this.a=a}, +aFM:function aFM(a,b){this.a=a +this.b=b}, +Ai:function Ai(){}, +ars:function ars(){}, +Hz:function Hz(a,b,c,d,e,f){var _=this +_.r=a +_.w=b +_.c=c +_.d=d +_.e=e +_.a=f}, +ad7:function ad7(a,b,c){var _=this +_.CW=null +_.e=_.d=$ +_.f9$=a +_.c4$=b +_.a=null +_.b=c +_.c=null}, +b_W:function b_W(){}, +HB:function HB(a,b,c,d,e,f,g){var _=this +_.r=a +_.w=b +_.x=c +_.c=d +_.d=e +_.e=f +_.a=g}, +ad9:function ad9(a,b,c){var _=this +_.dy=_.dx=_.db=_.cy=_.cx=_.CW=null +_.e=_.d=$ +_.f9$=a +_.c4$=b +_.a=null +_.b=c +_.c=null}, +b00:function b00(){}, +b01:function b01(){}, +b02:function b02(){}, +b03:function b03(){}, +b04:function b04(){}, +b05:function b05(){}, +Hy:function Hy(a,b,c,d,e,f){var _=this +_.r=a +_.w=b +_.c=c +_.d=d +_.e=e +_.a=f}, +ad6:function ad6(a,b,c){var _=this +_.z=null +_.e=_.d=_.Q=$ +_.f9$=a +_.c4$=b +_.a=null +_.b=c +_.c=null}, +b_V:function b_V(){}, +Hw:function Hw(a,b,c,d,e,f){var _=this +_.r=a +_.w=b +_.c=c +_.d=d +_.e=e +_.a=f}, +ad5:function ad5(a,b,c){var _=this +_.CW=null +_.e=_.d=$ +_.f9$=a +_.c4$=b +_.a=null +_.b=c +_.c=null}, +b_U:function b_U(){}, +HA:function HA(a,b,c,d,e,f,g,h,i,j,k){var _=this +_.r=a +_.w=b +_.x=c +_.z=d +_.Q=e +_.as=f +_.at=g +_.c=h +_.d=i +_.e=j +_.a=k}, +ad8:function ad8(a,b,c){var _=this +_.db=_.cy=_.cx=_.CW=null +_.e=_.d=$ +_.f9$=a +_.c4$=b +_.a=null +_.b=c +_.c=null}, +b_X:function b_X(){}, +b_Y:function b_Y(){}, +b_Z:function b_Z(){}, +b0_:function b0_(){}, +G4:function G4(){}, +bGH(a,b,c,d){var s,r=a.oc(d) +if(r==null)return +c.push(r) +s=r.f +s.toString +d.a(s) +return}, +aS(a,b,c){var s,r,q,p,o,n +if(b==null)return a.ae(c) +s=A.a([],t.Fa) +A.bGH(a,b,s,c) +if(s.length===0)return null +r=B.b.ga1(s) +for(q=s.length,p=0;pMath.abs(s.a))s=new A.l(n,s.b) +if(Math.abs(o)>Math.abs(s.b))s=new A.l(s.a,o)}return A.blh(s)}, +blh(a){return new A.l(A.aq7(B.e.az(a.a,9)),A.aq7(B.e.az(a.b,9)))}, +bPe(a,b){if(a.l(0,b))return null +return Math.abs(b.a-a.a)>Math.abs(b.b-a.b)?B.aw:B.R}, +Kx:function Kx(a,b,c){this.x=a +this.ax=b +this.a=c}, +Ry:function Ry(a,b,c,d,e){var _=this +_.d=null +_.e=a +_.f=b +_.w=_.r=null +_.z=_.y=_.x=$ +_.at=_.as=_.Q=null +_.ay=_.ax=0 +_.ch=null +_.dL$=c +_.b_$=d +_.a=null +_.b=e +_.c=null}, +b5F:function b5F(){}, +ah1:function ah1(a,b,c,d,e,f,g){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.a=g}, +aap:function aap(a,b){var _=this +_.a=a +_.ak$=0 +_.ah$=b +_.aT$=_.bG$=0 +_.bK$=!1}, +R7:function R7(a,b){this.a=a +this.b=b}, +aLm:function aLm(a,b){this.a=a +this.b=b}, +Vh:function Vh(){}, +bvz(a,b,c,d){var s=new A.cc(b,c,"widgets library",a,d,!1) +A.dV(s) +return s}, +ti:function ti(){}, +G8:function G8(a,b,c){var _=this +_.d=_.c=_.b=_.a=_.CW=_.ay=_.p1=null +_.e=$ +_.f=a +_.r=null +_.w=b +_.z=_.y=null +_.Q=!1 +_.as=!0 +_.ax=_.at=!1 +_.$ti=c}, +b5V:function b5V(a,b){this.a=a +this.b=b}, +b5W:function b5W(){}, +b5X:function b5X(){}, +lk:function lk(){}, +Cp:function Cp(a,b){this.c=a +this.a=b}, +SL:function SL(a,b,c,d,e){var _=this +_.UM$=a +_.Lc$=b +_.a9k$=c +_.E$=d +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=e +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +ap2:function ap2(){}, +ap3:function ap3(){}, +bPI(a,b){var s,r,q,p,o,n,m,l,k={},j=t.n,i=t.z,h=A.F(j,i) +k.a=null +s=A.aY(j) +r=A.a([],t.a9) +for(j=b.length,q=0;q>")),i).b9(new A.be6(k,h),t.e3)}, +KX(a){var s=a.ae(t.Gk) +return s==null?null:s.r.f}, +A(a,b,c){var s=a.ae(t.Gk) +return s==null?null:c.h("0?").a(J.b3(s.r.e,b))}, +Gr:function Gr(a,b){this.a=a +this.b=b}, +be4:function be4(a){this.a=a}, +be5:function be5(){}, +be6:function be6(a,b){this.a=a +this.b=b}, +fy:function fy(){}, +anY:function anY(){}, +a_Z:function a_Z(){}, +RK:function RK(a,b,c,d){var _=this +_.r=a +_.w=b +_.b=c +_.a=d}, +KW:function KW(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +ahH:function ahH(a,b,c){var _=this +_.d=a +_.e=b +_.a=_.f=null +_.b=c +_.c=null}, +b69:function b69(a){this.a=a}, +b6a:function b6a(a,b){this.a=a +this.b=b}, +b68:function b68(a,b,c){this.a=a +this.b=b +this.c=c}, +bHt(a,b){var s,r +a.ae(t.bS) +s=A.bHu(a,b) +if(s==null)return null +a.Ok(s,null) +r=s.f +r.toString +return b.a(r)}, +bHu(a,b){var s,r,q,p=a.oc(b) +if(p==null)return null +s=a.oc(t.bS) +if(s!=null){r=s.e +r===$&&A.b() +q=p.e +q===$&&A.b() +q=r>q +r=q}else r=!1 +if(r)return null +return p}, +bj3(a,b){var s={} +s.a=null +a.tR(new A.aHp(s,b)) +s=s.a +if(s==null)s=null +else{s=s.ok +s.toString}return b.h("0?").a(s)}, +aHq(a,b){var s={} +s.a=null +a.tR(new A.aHr(s,b)) +s=s.a +if(s==null)s=null +else{s=s.ok +s.toString}return b.h("0?").a(s)}, +aHn(a,b){var s={} +s.a=null +a.tR(new A.aHo(s,b)) +s=s.a +s=s==null?null:s.ga9() +return b.h("0?").a(s)}, +aHp:function aHp(a,b){this.a=a +this.b=b}, +aHr:function aHr(a,b){this.a=a +this.b=b}, +aHo:function aHo(a,b){this.a=a +this.b=b}, +bqz(a,b){var s,r=b.a,q=a.a +if(rq?B.i.T(0,new A.l(q-r,0)):B.i}r=b.b +q=a.b +if(rq)s=s.T(0,new A.l(0,q-r))}return b.dw(s)}, +bqA(a,b,c){return new A.CD(a,null,null,null,b,c)}, +os:function os(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aa6:function aa6(a,b){this.a=a +this.b=b}, +aXM:function aXM(){}, +xz:function xz(){this.b=this.a=null}, +aHs:function aHs(a,b){this.a=a +this.b=b}, +CD:function CD(a,b,c,d,e,f){var _=this +_.f=a +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f}, +Dw:function Dw(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.a=f}, +ahJ:function ahJ(a,b,c){this.c=a +this.d=b +this.a=c}, +afq:function afq(a,b){this.b=a +this.c=b}, +ahI:function ahI(a,b,c,d,e){var _=this +_.e=a +_.f=b +_.r=c +_.c=d +_.a=e}, +akn:function akn(a,b,c,d,e){var _=this +_.C=a +_.a0=b +_.aw=c +_.E$=d +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=e +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +la(a,b,c){return new A.qp(b,a,c)}, +aIK(a,b,c,d,e,f){return A.la(a,A.aS(b,null,t.l).w.WM(c,d,e,f),null)}, +cT(a,b){var s=A.aS(a,b,t.l) +return s==null?null:s.w}, +a5I:function a5I(a,b){this.a=a +this.b=b}, +hM:function hM(a,b){this.a=a +this.b=b}, +Lm:function Lm(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}, +aIJ:function aIJ(a){this.a=a}, +qp:function qp(a,b,c){this.w=a +this.b=b +this.a=c}, +aKl:function aKl(a,b){this.a=a +this.b=b}, +RT:function RT(a,b,c){this.c=a +this.e=b +this.a=c}, +ai7:function ai7(a){var _=this +_.a=_.e=_.d=null +_.b=a +_.c=null}, +b6y:function b6y(a,b){this.a=a +this.b=b}, +aoH:function aoH(){}, +aJe(a,b,c,d,e,f,g){return new A.a58(c,d,e,!0,f,b,g,null)}, +bnQ(a,b,c,d,e,f){return new A.WG(d,e,!0,b,f,c,null)}, +alg:function alg(a,b,c){this.e=a +this.c=b +this.a=c}, +aku:function aku(a,b,c){var _=this +_.C=a +_.E$=b +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=c +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +a58:function a58(a,b,c,d,e,f,g,h){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.x=g +_.a=h}, +aJf:function aJf(a,b){this.a=a +this.b=b}, +WG:function WG(a,b,c,d,e,f,g){var _=this +_.e=a +_.f=b +_.r=c +_.x=d +_.y=e +_.c=f +_.a=g}, +Fp:function Fp(a,b,c,d,e,f,g,h,i){var _=this +_.aV=null +_.k3=_.k2=!1 +_.ok=_.k4=null +_.at=a +_.ay=b +_.ch=c +_.cx=_.CW=null +_.cy=!1 +_.db=null +_.f=d +_.r=e +_.w=null +_.a=f +_.b=null +_.c=g +_.d=h +_.e=i}, +adh:function adh(a){this.a=a}, +aii:function aii(a,b,c){this.c=a +this.d=b +this.a=c}, +LJ:function LJ(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.a=f}, +U2:function U2(a,b){this.a=a +this.b=b}, +bca:function bca(a,b,c,d){var _=this +_.d=a +_.e=b +_.f=c +_.a=d +_.c=_.b=null}, +bpX(a,b){return new A.x2(b,a,null)}, +bqV(a,b,c,d,e,f,g,h,i,j,k,l){return new A.LK(i,g,b,f,h,d,l,e,j,a,k,c)}, +aKu(a){return A.j5(a,!1).aLl(null)}, +j5(a,b){var s,r,q +if(a instanceof A.i7){s=a.ok +s.toString +s=s instanceof A.kt}else s=!1 +if(s){s=a.ok +s.toString +t.uK.a(s) +r=s}else r=null +if(b){q=a.aHY(t.uK) +r=q==null?r:q +s=r}else{if(r==null)r=a.F_(t.uK) +s=r}s.toString +return s}, +bqX(a){var s,r=a.ok +r.toString +if(r instanceof A.kt)s=r +else s=null +if(s==null)s=a.F_(t.uK) +return s}, +bIa(a,b){var s,r,q,p,o,n,m=null,l=A.a([],t.ny) +if(B.c.c8(b,"/")&&b.length>1){b=B.c.cv(b,1) +s=t.z +l.push(a.J4("/",!0,m,s)) +r=b.split("/") +if(b.length!==0)for(q=r.length,p=0,o="";p=3}, +bNe(a){return a.gadv()}, +bkI(a){return new A.b9I(a)}, +bqW(a,b){var s,r,q,p +for(s=a.a,r=s.gMu(),q=r.length,p=0;p2?s[2]:null,B.pE) +case 1:s=s.fs(a,1)[1] +s.toString +t.pO.a(A.bIs(new A.auu(A.fY(s)))) +return null}}, +DL:function DL(a,b){this.a=a +this.b=b}, +dc:function dc(){}, +aQo:function aQo(a){this.a=a}, +aQn:function aQn(a){this.a=a}, +jM:function jM(a,b){this.a=a +this.b=b}, +f5:function f5(){}, +oy:function oy(){}, +x2:function x2(a,b,c){this.f=a +this.b=b +this.a=c}, +qN:function qN(){}, +aaq:function aaq(){}, +a_Y:function a_Y(a){this.$ti=a}, +axm:function axm(a,b,c){this.a=a +this.b=b +this.c=c}, +LK:function LK(a,b,c,d,e,f,g,h,i,j,k,l){var _=this +_.c=a +_.d=b +_.f=c +_.r=d +_.w=e +_.x=f +_.y=g +_.Q=h +_.as=i +_.at=j +_.ax=k +_.a=l}, +aKt:function aKt(){}, +id:function id(a,b){this.a=a +this.b=b}, +aiB:function aiB(a,b,c){var _=this +_.a=null +_.b=a +_.c=b +_.d=c}, +ic:function ic(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=null +_.x=!0 +_.y=!1}, +b9H:function b9H(a,b){this.a=a +this.b=b}, +b9F:function b9F(){}, +b9G:function b9G(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +b9E:function b9E(a,b){this.a=a +this.b=b}, +b9I:function b9I(a){this.a=a}, +vi:function vi(){}, +Gl:function Gl(a,b){this.a=a +this.b=b}, +Gk:function Gk(a,b){this.a=a +this.b=b}, +S5:function S5(a,b){this.a=a +this.b=b}, +S6:function S6(a,b){this.a=a +this.b=b}, +kt:function kt(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q){var _=this +_.d=$ +_.e=a +_.f=b +_.r=c +_.w=d +_.x=e +_.y=f +_.z=!1 +_.Q=null +_.as=$ +_.at=g +_.ax=null +_.ch=_.ay=!1 +_.CW=0 +_.cx=h +_.cy=i +_.d5$=j +_.j4$=k +_.x5$=l +_.hb$=m +_.j5$=n +_.dL$=o +_.b_$=p +_.a=null +_.b=q +_.c=null}, +aKs:function aKs(a){this.a=a}, +aKn:function aKn(){}, +aKo:function aKo(){}, +aKp:function aKp(a){this.a=a}, +aKq:function aKq(){}, +aKr:function aKr(){}, +aKm:function aKm(a){this.a=a}, +SZ:function SZ(a,b){this.a=a +this.b=b}, +akM:function akM(){}, +aip:function aip(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d +_.b=null}, +bke:function bke(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d +_.b=null}, +agz:function agz(a){var _=this +_.y=null +_.a=!1 +_.c=_.b=null +_.ak$=0 +_.ah$=a +_.aT$=_.bG$=0 +_.bK$=!1}, +b4U:function b4U(){}, +b7f:function b7f(){}, +S7:function S7(){}, +S8:function S8(){}, +a5w:function a5w(){}, +dP:function dP(a,b,c,d){var _=this +_.d=a +_.b=b +_.a=c +_.$ti=d}, +S9:function S9(a,b,c){var _=this +_.d=_.c=_.b=_.a=_.ay=null +_.e=$ +_.f=a +_.r=null +_.w=b +_.z=_.y=null +_.Q=!1 +_.as=!0 +_.ax=_.at=!1 +_.$ti=c}, +lL:function lL(){}, +aoM:function aoM(){}, +bIj(a,b,c,d,e,f){return new A.a5L(f,a,e,c,d,b,null)}, +a5M:function a5M(a,b){this.a=a +this.b=b}, +a5L:function a5L(a,b,c,d,e,f,g){var _=this +_.e=a +_.f=b +_.r=c +_.w=d +_.x=e +_.c=f +_.a=g}, +pi:function pi(a,b,c){this.d0$=a +this.am$=b +this.a=c}, +Gy:function Gy(a,b,c,d,e,f,g,h,i,j,k){var _=this +_.B=a +_.Z=b +_.Y=c +_.av=d +_.ar=e +_.aG=f +_.aS=g +_.d_$=h +_.a3$=i +_.dk$=j +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=k +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +b9b:function b9b(a,b){this.a=a +this.b=b}, +ap5:function ap5(){}, +ap6:function ap6(){}, +qu(a,b){return new A.qt(a,b,A.ed(null,t.Aq),new A.bo(null,t.af))}, +bNa(a){return a.ap(0)}, +bN9(a,b){var s,r=a.ae(t.Ap) +if(r!=null)return r +s=A.a([A.ts("No Overlay widget found."),A.bX(A.o(a.gc7()).j(0)+" widgets require an Overlay widget ancestor.\nAn overlay lets widgets float on top of other widget children."),A.a0I("To introduce an Overlay widget, you can either directly include one, or use a widget that contains an Overlay itself, such as a Navigator, WidgetApp, MaterialApp, or CupertinoApp.")],t.R) +B.b.I(s,a.aH1(B.akh)) +throw A.c(A.BL(s))}, +qt:function qt(a,b,c,d){var _=this +_.a=a +_.b=!1 +_.c=b +_.d=c +_.e=null +_.f=d +_.r=!1}, +aKU:function aKU(a){this.a=a}, +rk:function rk(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +Gn:function Gn(a){var _=this +_.d=$ +_.e=null +_.r=_.f=$ +_.a=null +_.b=a +_.c=null}, +b7t:function b7t(){}, +CY:function CY(a,b,c){this.c=a +this.d=b +this.a=c}, +D_:function D_(a,b,c,d){var _=this +_.d=a +_.dL$=b +_.b_$=c +_.a=null +_.b=d +_.c=null}, +aKZ:function aKZ(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aKY:function aKY(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aL_:function aL_(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +aKX:function aKX(){}, +aKW:function aKW(){}, +TZ:function TZ(a,b,c,d){var _=this +_.e=a +_.f=b +_.c=c +_.a=d}, +an1:function an1(a,b,c){var _=this +_.p1=$ +_.p2=a +_.d=_.c=_.b=_.a=_.CW=_.ay=null +_.e=$ +_.f=b +_.r=null +_.w=c +_.z=_.y=null +_.Q=!1 +_.as=!0 +_.ax=_.at=!1}, +zS:function zS(){}, +b9q:function b9q(a){this.a=a}, +H0:function H0(a,b,c){var _=this +_.y=_.x=_.w=_.r=_.f=_.e=_.at=null +_.d0$=a +_.am$=b +_.a=c}, +vq:function vq(a,b,c,d,e,f,g,h){var _=this +_.B=null +_.Z=a +_.Y=b +_.av=c +_.ar=!1 +_.aG=d +_.d_$=e +_.a3$=f +_.dk$=g +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=h +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +b9u:function b9u(a){this.a=a}, +b9s:function b9s(a){this.a=a}, +b9t:function b9t(a){this.a=a}, +b9r:function b9r(a){this.a=a}, +aKV:function aKV(){this.b=this.a=null}, +LW:function LW(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +aiT:function aiT(a){var _=this +_.d=null +_.e=!0 +_.a=_.f=null +_.b=a +_.c=null}, +b7u:function b7u(a,b){this.a=a +this.b=b}, +b7w:function b7w(a,b){this.a=a +this.b=b}, +b7v:function b7v(a){this.a=a}, +vk:function vk(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.i7$=_.hy$=_.i6$=_.e=_.d=null}, +zR:function zR(a,b,c,d){var _=this +_.f=a +_.r=b +_.b=c +_.a=d}, +Go:function Go(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +aiS:function aiS(a,b){var _=this +_.d=_.c=_.b=_.a=_.CW=_.ay=_.p2=_.p1=null +_.e=$ +_.f=a +_.r=null +_.w=b +_.z=_.y=null +_.Q=!1 +_.as=!0 +_.ax=_.at=!1}, +af7:function af7(a,b){this.c=a +this.a=b}, +vp:function vp(a,b,c){var _=this +_.C=a +_.a0=!1 +_.aw=!0 +_.fG=_.cu=!1 +_.i7$=_.hy$=_.i6$=null +_.E$=b +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=c +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +b94:function b94(a){this.a=a}, +b95:function b95(a){this.a=a}, +SM:function SM(a,b){var _=this +_.C=null +_.E$=a +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=b +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +aiU:function aiU(){}, +ap0:function ap0(){}, +ap1:function ap1(){}, +Vv:function Vv(){}, +ap9:function ap9(){}, +bpN(a,b,c){return new A.Kb(a,c,b,null)}, +btN(a,b,c){var s,r,q=null,p=t.Y,o=new A.aO(0,0,p),n=new A.aO(0,0,p),m=new A.R8(B.lp,o,n,b,a,$.b5()),l=A.bw(B.z,q,q,0,q,1,q,c) +l.cL() +s=l.eo$ +s.b=!0 +s.a.push(m.gPd()) +m.b!==$&&A.cl() +m.b=l +r=A.c_(B.dt,l,q) +r.a.P(0,m.geL()) +t.m.a(r) +p=p.h("aw") +m.r!==$&&A.cl() +m.r=new A.aw(r,o,p) +m.x!==$&&A.cl() +m.x=new A.aw(r,n,p) +p=c.zQ(m.gaCf()) +m.y!==$&&A.cl() +m.y=p +return m}, +bKp(a,b,c){return new A.Oe(a,c,b,null)}, +Kb:function Kb(a,b,c,d){var _=this +_.e=a +_.f=b +_.w=c +_.a=d}, +R9:function R9(a,b,c,d){var _=this +_.r=_.f=_.e=_.d=null +_.w=a +_.dL$=b +_.b_$=c +_.a=null +_.b=d +_.c=null}, +FZ:function FZ(a,b){this.a=a +this.b=b}, +R8:function R8(a,b,c,d,e,f){var _=this +_.a=a +_.b=$ +_.c=null +_.e=_.d=0 +_.f=b +_.r=$ +_.w=c +_.y=_.x=$ +_.z=null +_.as=_.Q=0.5 +_.at=0 +_.ax=d +_.ay=e +_.ak$=0 +_.ah$=f +_.aT$=_.bG$=0 +_.bK$=!1}, +b4z:function b4z(a){this.a=a}, +ags:function ags(a,b,c,d){var _=this +_.b=a +_.c=b +_.d=c +_.a=d}, +amb:function amb(a,b){this.a=a +this.b=b}, +Oe:function Oe(a,b,c,d){var _=this +_.c=a +_.e=b +_.f=c +_.a=d}, +TG:function TG(a,b,c){var _=this +_.d=$ +_.f=_.e=null +_.r=0 +_.w=!0 +_.dL$=a +_.b_$=b +_.a=null +_.b=c +_.c=null}, +baY:function baY(a,b,c){this.a=a +this.b=b +this.c=c}, +GT:function GT(a,b){this.a=a +this.b=b}, +TF:function TF(a,b,c,d){var _=this +_.b=_.a=$ +_.c=a +_.d=b +_.e=0 +_.f=c +_.ak$=0 +_.ah$=d +_.aT$=_.bG$=0 +_.bK$=!1}, +ue:function ue(a,b){this.a=a +this.c=!0 +this.j6$=b}, +Sd:function Sd(){}, +Vd:function Vd(){}, +VE:function VE(){}, +br6(a,b){var s=a.gc7() +return!(s instanceof A.D1)}, +xX(a){var s=a.xa(t.Mf) +return s==null?null:s.d}, +TA:function TA(a){this.a=a}, +oD:function oD(){this.a=null}, +aL4:function aL4(a){this.a=a}, +D1:function D1(a,b,c){this.c=a +this.d=b +this.a=c}, +br5(a,b,c){return new A.xW(a,!0,c,0,!0,A.a([],t.ZP),$.b5())}, +xW:function xW(a,b,c,d,e,f,g){var _=this +_.as=a +_.at=b +_.ax=c +_.a=d +_.b=e +_.f=f +_.ak$=0 +_.ah$=g +_.aT$=_.bG$=0 +_.bK$=!1}, +a5N:function a5N(a,b,c,d,e,f,g){var _=this +_.r=a +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f +_.f=g}, +vl:function vl(a,b,c,d,e,f,g,h,i){var _=this +_.ar=a +_.aG=null +_.aS=b +_.k3=0 +_.k4=c +_.ok=null +_.r=d +_.w=e +_.x=f +_.y=g +_.Q=_.z=null +_.as=0 +_.ax=_.at=null +_.ay=!1 +_.ch=!0 +_.CW=!1 +_.cx=null +_.cy=!1 +_.dx=_.db=null +_.dy=h +_.fr=null +_.ak$=0 +_.ah$=i +_.aT$=_.bG$=0 +_.bK$=!1}, +R2:function R2(a,b){this.b=a +this.a=b}, +D0:function D0(a){this.a=a}, +D2:function D2(a,b,c,d,e,f,g,h){var _=this +_.e=a +_.f=b +_.r=c +_.w=d +_.z=e +_.Q=f +_.as=g +_.a=h}, +aiY:function aiY(a){var _=this +_.d=0 +_.a=null +_.b=a +_.c=null}, +b7y:function b7y(a){this.a=a}, +b7z:function b7z(a,b){this.a=a +this.b=b}, +jJ:function jJ(){}, +LY:function LY(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0){var _=this +_.al=a +_.cg=b +_.C=c +_.cb=d +_.bQ=e +_.fr=f +_.fx=g +_.fy=!1 +_.id=_.go=null +_.k1=h +_.k2=i +_.k3=j +_.k4=k +_.ok=$ +_.p1=null +_.p2=$ +_.hP$=l +_.mO$=m +_.y=n +_.z=null +_.Q=!1 +_.at=_.as=null +_.ax=o +_.ay=!0 +_.CW=_.ch=null +_.e=p +_.a=null +_.b=q +_.c=r +_.d=s +_.$ti=a0}, +aJ1:function aJ1(){}, +aLG:function aLG(){}, +a_V:function a_V(a,b){this.a=a +this.d=b}, +uo:function uo(a,b,c){this.c=a +this.d=b +this.a=c}, +brk(a,b){return new A.Dj(b,B.R,B.ad0,a,null)}, +brl(a){return new A.Dj(null,null,B.adb,a,null)}, +brm(a,b){var s,r=a.xa(t.bb) +if(r==null)return!1 +s=A.DT(a).ro(a) +if(r.w.n(0,s))return r.r===b +return!1}, +Dk(a){var s=a.ae(t.bb) +return s==null?null:s.f}, +Dj:function Dj(a,b,c,d,e){var _=this +_.f=a +_.r=b +_.w=c +_.b=d +_.a=e}, +uy(a){var s=a.ae(t.lQ) +return s==null?null:s.f}, +P1(a,b){return new A.zi(a,b,null)}, +ux:function ux(a,b,c){this.c=a +this.d=b +this.a=c}, +akN:function akN(a,b,c,d,e,f){var _=this +_.d5$=a +_.j4$=b +_.x5$=c +_.hb$=d +_.j5$=e +_.a=null +_.b=f +_.c=null}, +zi:function zi(a,b,c){this.f=a +this.b=b +this.a=c}, +N8:function N8(a,b,c){this.c=a +this.d=b +this.a=c}, +SY:function SY(a){var _=this +_.d=null +_.e=!1 +_.r=_.f=null +_.w=!1 +_.a=null +_.b=a +_.c=null}, +b9A:function b9A(a){this.a=a}, +b9z:function b9z(a,b){this.a=a +this.b=b}, +fT:function fT(){}, +lZ:function lZ(){}, +aPP:function aPP(a,b){this.a=a +this.b=b}, +bcW:function bcW(){}, +apa:function apa(){}, +dh:function dh(){}, +lu:function lu(){}, +SX:function SX(){}, +N4:function N4(a,b,c){var _=this +_.cy=a +_.y=null +_.a=!1 +_.c=_.b=null +_.ak$=0 +_.ah$=b +_.aT$=_.bG$=0 +_.bK$=!1 +_.$ti=c}, +yx:function yx(a,b){var _=this +_.cy=a +_.y=null +_.a=!1 +_.c=_.b=null +_.ak$=0 +_.ah$=b +_.aT$=_.bG$=0 +_.bK$=!1}, +N5:function N5(a,b){var _=this +_.cy=a +_.y=null +_.a=!1 +_.c=_.b=null +_.ak$=0 +_.ah$=b +_.aT$=_.bG$=0 +_.bK$=!1}, +bJs(){return new A.a7J(new A.bb(A.a([],t.Zt),t.CT))}, +bcX:function bcX(){}, +lm:function lm(a,b,c){this.a=a +this.b=b +this.c=c}, +DM:function DM(a,b,c,d,e,f,g){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.a=f +_.$ti=g}, +aQg:function aQg(a,b){this.a=a +this.b=b}, +GC:function GC(a,b,c,d,e,f,g,h){var _=this +_.e=_.d=null +_.f=a +_.r=$ +_.w=!1 +_.d5$=b +_.j4$=c +_.x5$=d +_.hb$=e +_.j5$=f +_.a=null +_.b=g +_.c=null +_.$ti=h}, +b9Q:function b9Q(a){this.a=a}, +b9R:function b9R(a){this.a=a}, +b9P:function b9P(a){this.a=a}, +b9N:function b9N(a,b,c){this.a=a +this.b=b +this.c=c}, +b9K:function b9K(a){this.a=a}, +b9L:function b9L(a,b){this.a=a +this.b=b}, +b9O:function b9O(){}, +b9M:function b9M(){}, +akY:function akY(a,b,c,d,e,f,g){var _=this +_.f=a +_.r=b +_.w=c +_.x=d +_.y=e +_.b=f +_.a=g}, +mj:function mj(){}, +b1p:function b1p(a){this.a=a}, +Xi:function Xi(){}, +asw:function asw(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +a7J:function a7J(a){this.b=$ +this.a=a}, +a7P:function a7P(){}, +DN:function DN(){}, +a7Q:function a7Q(){}, +akK:function akK(a){var _=this +_.y=null +_.a=!1 +_.c=_.b=null +_.ak$=0 +_.ah$=a +_.aT$=_.bG$=0 +_.bK$=!1}, +akR:function akR(){}, +Ha:function Ha(){}, +qq(a,b){var s=a.ae(t.Fe),r=s==null?null:s.x +return b.h("dX<0>?").a(r)}, +CZ:function CZ(){}, +fg:function fg(){}, +aYU:function aYU(a,b,c){this.a=a +this.b=b +this.c=c}, +aYS:function aYS(a,b,c){this.a=a +this.b=b +this.c=c}, +aYT:function aYT(a,b,c){this.a=a +this.b=b +this.c=c}, +aYR:function aYR(a,b){this.a=a +this.b=b}, +KU:function KU(a,b){this.a=a +this.b=null +this.c=b}, +a2O:function a2O(){}, +aHf:function aHf(a){this.a=a}, +afh:function afh(a,b){this.e=a +this.a=b +this.b=null}, +RW:function RW(a,b,c,d,e,f){var _=this +_.f=a +_.r=b +_.w=c +_.x=d +_.b=e +_.a=f}, +Gj:function Gj(a,b,c){this.c=a +this.a=b +this.$ti=c}, +kJ:function kJ(a,b,c,d){var _=this +_.d=null +_.e=$ +_.f=a +_.r=b +_.a=null +_.b=c +_.c=null +_.$ti=d}, +b6G:function b6G(a){this.a=a}, +b6K:function b6K(a){this.a=a}, +b6L:function b6L(a){this.a=a}, +b6J:function b6J(a){this.a=a}, +b6H:function b6H(a){this.a=a}, +b6I:function b6I(a){this.a=a}, +dX:function dX(){}, +aJi:function aJi(a,b){this.a=a +this.b=b}, +aJh:function aJh(){}, +Mm:function Mm(){}, +MB:function MB(){}, +Gi:function Gi(){}, +yz(a,b,c,d,e,f){return new A.a7X(c,f,e,a,d,b,null)}, +a7X:function a7X(a,b,c,d,e,f,g){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.x=f +_.a=g}, +a81:function a81(){}, +tJ:function tJ(a){this.a=a}, +aEN:function aEN(a,b){this.b=a +this.a=b}, +aRf:function aRf(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}, +ayX:function ayX(a,b){this.b=a +this.a=b}, +Xo:function Xo(a,b){this.b=$ +this.c=a +this.a=b}, +a0r:function a0r(a){this.c=this.b=$ +this.a=a}, +Nh:function Nh(a,b,c){this.a=a +this.b=b +this.$ti=c}, +aRb:function aRb(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +aRa:function aRa(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +bjF(a,b){return new A.Ni(a,b,null)}, +DT(a){var s=a.ae(t.Cy),r=s==null?null:s.f +return r==null?B.Oc:r}, +WE:function WE(a,b){this.a=a +this.b=b}, +a82:function a82(){}, +aRc:function aRc(){}, +aRd:function aRd(){}, +aRe:function aRe(){}, +bcM:function bcM(a,b,c,d,e,f,g,h){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=h}, +Ni:function Ni(a,b,c){this.f=a +this.b=b +this.a=c}, +DU(a,b){return new A.yC(a,b,A.a([],t.ZP),$.b5())}, +yC:function yC(a,b,c,d){var _=this +_.a=a +_.b=b +_.f=c +_.ak$=0 +_.ah$=d +_.aT$=_.bG$=0 +_.bK$=!1}, +bvk(a,b){return b}, +bs7(a,b,c,d){return new A.a8M(!0,!0,!0,a,A.ap([null,0],t.E5,t.S))}, +uJ:function uJ(){}, +GD:function GD(a){this.a=a}, +kx:function kx(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.r=f +_.w=g}, +a8M:function a8M(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.f=d +_.r=e}, +GF:function GF(a,b){this.c=a +this.a=b}, +Ti:function Ti(a,b){var _=this +_.f=_.e=_.d=null +_.r=!1 +_.mN$=a +_.a=null +_.b=b +_.c=null}, +bap:function bap(a,b){this.a=a +this.b=b}, +ape:function ape(){}, +m1:function m1(){}, +JR:function JR(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +ag7:function ag7(){}, +bjG(a,b,c,d,e){var s=new A.kw(c,e,d,a,0) +if(b!=null)s.j6$=b +return s}, +bRF(a){return a.j6$===0}, +k0:function k0(){}, +aaX:function aaX(){}, +jN:function jN(){}, +DV:function DV(a,b,c,d){var _=this +_.d=a +_.a=b +_.b=c +_.j6$=d}, +kw:function kw(a,b,c,d,e){var _=this +_.d=a +_.e=b +_.a=c +_.b=d +_.j6$=e}, +n0:function n0(a,b,c,d,e,f){var _=this +_.d=a +_.e=b +_.f=c +_.a=d +_.b=e +_.j6$=f}, +oP:function oP(a,b,c,d){var _=this +_.d=a +_.a=b +_.b=c +_.j6$=d}, +aaK:function aaK(a,b,c,d){var _=this +_.d=a +_.a=b +_.b=c +_.j6$=d}, +T7:function T7(){}, +T6:function T6(a,b,c){this.f=a +this.b=b +this.a=c}, +ve:function ve(a){var _=this +_.a=a +_.i7$=_.hy$=_.i6$=null}, +Nk:function Nk(a,b){this.c=a +this.a=b}, +Nl:function Nl(a,b){var _=this +_.d=a +_.a=null +_.b=b +_.c=null}, +aRg:function aRg(a){this.a=a}, +aRh:function aRh(a){this.a=a}, +aRi:function aRi(a){this.a=a}, +bDi(a,b,c){var s,r +if(a>0){s=a/c +if(b"))}, +bl8(a,b){var s=$.ar.al$.z.i(0,a).ga9() +s.toString +return t.x.a(s).jo(b)}, +No:function No(a,b){this.a=a +this.b=b}, +DX:function DX(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=null +_.f=e +_.r=f +_.w=g +_.x=h +_.y=i +_.z=j +_.Q=k +_.as=l +_.at=m +_.ax=n +_.ay=!1 +_.CW=_.ch=null +_.cy=_.cx=$ +_.dx=_.db=null +_.ak$=0 +_.ah$=o +_.aT$=_.bG$=0 +_.bK$=!1}, +aRx:function aRx(){}, +Dx:function Dx(a,b,c,d,e,f,g,h,i,j,k,l,m){var _=this +_.c=a +_.d=b +_.e=c +_.r=d +_.w=e +_.Q=f +_.ay=g +_.ch=h +_.CW=i +_.cx=j +_.cy=k +_.db=l +_.a=m}, +oK:function oK(a,b,c,d,e){var _=this +_.w=_.r=_.f=_.e=_.d=null +_.y=_.x=$ +_.z=a +_.as=_.Q=!1 +_.at=$ +_.dL$=b +_.b_$=c +_.a=null +_.b=d +_.c=null +_.$ti=e}, +aNn:function aNn(a){this.a=a}, +aNj:function aNj(a){this.a=a}, +aNk:function aNk(a){this.a=a}, +aNg:function aNg(a){this.a=a}, +aNh:function aNh(a){this.a=a}, +aNi:function aNi(a){this.a=a}, +aNl:function aNl(a){this.a=a}, +aNm:function aNm(a){this.a=a}, +aNo:function aNo(a){this.a=a}, +aNp:function aNp(a){this.a=a}, +pq:function pq(a,b,c,d,e,f,g,h,i,j){var _=this +_.aT=a +_.k2=!1 +_.bO=_.bQ=_.cb=_.bU=_.aV=_.cO=_.c5=_.y2=_.y1=_.xr=_.x2=_.x1=_.to=_.ry=_.rx=_.RG=_.R8=_.p4=_.p3=_.p2=_.p1=_.ok=_.k4=_.k3=null +_.at=b +_.ay=c +_.ch=d +_.cx=_.CW=null +_.cy=!1 +_.db=null +_.f=e +_.r=f +_.w=null +_.a=g +_.b=null +_.c=h +_.d=i +_.e=j}, +pr:function pr(a,b,c,d,e,f,g,h,i,j){var _=this +_.E=a +_.aG=_.ar=_.av=_.Y=_.Z=_.B=_.bO=_.bQ=_.cb=_.bU=_.aV=null +_.k3=_.k2=!1 +_.ok=_.k4=null +_.at=b +_.ay=c +_.ch=d +_.cx=_.CW=null +_.cy=!1 +_.db=null +_.f=e +_.r=f +_.w=null +_.a=g +_.b=null +_.c=h +_.d=i +_.e=j}, +Gv:function Gv(){}, +bI_(a,b){var s,r=a.b,q=b.b,p=r-q +if(!(p<1e-10&&a.d-b.d>-1e-10))s=q-r<1e-10&&b.d-a.d>-1e-10 +else s=!0 +if(s)return 0 +if(Math.abs(p)>1e-10)return r>q?1:-1 +return a.d>b.d?1:-1}, +bHZ(a,b){var s=a.a,r=b.a,q=s-r +if(q<1e-10&&a.c-b.c>-1e-10){if(a.c-b.c>1e-10)return 1 +return-1}if(r-s<1e-10&&b.c-a.c>-1e-10){if(b.c-a.c>1e-10)return-1 +return 1}if(Math.abs(q)>1e-10)return s>r?1:-1 +return a.c>b.c?1:-1}, +CQ:function CQ(){}, +aJY:function aJY(a){this.a=a}, +aJZ:function aJZ(a,b,c){this.a=a +this.b=b +this.c=c}, +aK_:function aK_(){}, +aK0:function aK0(a,b){this.a=a +this.b=b}, +aK1:function aK1(a){this.a=a}, +ain:function ain(){}, +a8c(a){var s=a.ae(t.Wu) +return s==null?null:s.f}, +brP(a,b){return new A.E_(b,a,null)}, +DY:function DY(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +alf:function alf(a,b,c,d){var _=this +_.d=a +_.Aw$=b +_.x7$=c +_.a=null +_.b=d +_.c=null}, +E_:function E_(a,b,c){this.f=a +this.b=b +this.a=c}, +a8b:function a8b(){}, +apd:function apd(){}, +Vz:function Vz(){}, +NE:function NE(a,b){this.c=a +this.a=b}, +alu:function alu(a){var _=this +_.d=$ +_.a=null +_.b=a +_.c=null}, +alv:function alv(a,b,c){this.x=a +this.b=b +this.a=c}, +hI(a,b,c,d,e){return new A.bj(a,c,e,b,d)}, +bK2(a){var s=A.F(t.oD,t.JF) +a.af(0,new A.aT0(s)) +return s}, +NI(a,b,c){return new A.yR(null,c,a,b,null)}, +brU(a,b){return new A.yR(b,B.kq,a,null,null)}, +bj:function bj(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +zv:function zv(a,b){this.a=a +this.b=b}, +yQ:function yQ(a,b){var _=this +_.b=a +_.c=null +_.ak$=0 +_.ah$=b +_.aT$=_.bG$=0 +_.bK$=!1}, +aT0:function aT0(a){this.a=a}, +aT_:function aT_(){}, +aT1:function aT1(a){this.a=a}, +aT2:function aT2(a){this.a=a}, +yR:function yR(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +Tm:function Tm(a){var _=this +_.a=_.d=null +_.b=a +_.c=null}, +NH:function NH(a,b){var _=this +_.c=a +_.ak$=0 +_.ah$=b +_.aT$=_.bG$=0 +_.bK$=!1}, +NG:function NG(a,b){this.c=a +this.a=b}, +Tl:function Tl(a,b,c){var _=this +_.d=a +_.e=b +_.a=null +_.b=c +_.c=null}, +alA:function alA(a,b,c){this.f=a +this.b=b +this.a=c}, +aly:function aly(){}, +alz:function alz(){}, +alB:function alB(){}, +alE:function alE(){}, +alF:function alF(){}, +ao4:function ao4(){}, +ng(a,b,c,d,e,f){return new A.a8A(f,d,b,e,a,c,null)}, +a8A:function a8A(a,b,c,d,e,f,g){var _=this +_.c=a +_.e=b +_.f=c +_.w=d +_.x=e +_.y=f +_.a=g}, +aT8:function aT8(a,b,c){this.a=a +this.b=b +this.c=c}, +GJ:function GJ(a,b,c,d,e){var _=this +_.e=a +_.f=b +_.r=c +_.c=d +_.a=e}, +alG:function alG(a,b){var _=this +_.d=_.c=_.b=_.a=_.CW=_.ay=_.p1=null +_.e=$ +_.f=a +_.r=null +_.w=b +_.z=_.y=null +_.Q=!1 +_.as=!0 +_.ax=_.at=!1}, +SV:function SV(a,b,c,d,e,f){var _=this +_.B=a +_.Z=b +_.Y=c +_.av=d +_.E$=e +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=f +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +b9f:function b9f(a,b){this.a=a +this.b=b}, +b9e:function b9e(a,b){this.a=a +this.b=b}, +Vt:function Vt(){}, +apf:function apf(){}, +apg:function apg(){}, +bK9(a,b){return new A.a8P(b,a,null)}, +aTA(a,b){return new A.Ee(b,a,null)}, +bs8(a,b){return new A.Eh(b,A.bjP(t.S,t.Dv),a,B.al)}, +bKa(a,b,c,d,e){if(b===e-1)return d +return d+(d-c)/(b-a+1)*(e-b-1)}, +bH2(a,b){return new A.KE(b,a,null)}, +a8S:function a8S(){}, +kz:function kz(){}, +m6:function m6(a,b){this.d=a +this.a=b}, +a8P:function a8P(a,b,c){this.f=a +this.d=b +this.a=c}, +Ee:function Ee(a,b,c){this.f=a +this.d=b +this.a=c}, +Eh:function Eh(a,b,c,d){var _=this +_.p1=a +_.p2=b +_.p4=_.p3=null +_.R8=!1 +_.d=_.c=_.b=_.a=_.CW=_.ay=null +_.e=$ +_.f=c +_.r=null +_.w=d +_.z=_.y=null +_.Q=!1 +_.as=!0 +_.ax=_.at=!1}, +aTJ:function aTJ(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +aTH:function aTH(){}, +aTI:function aTI(a,b){this.a=a +this.b=b}, +aTG:function aTG(a,b,c){this.a=a +this.b=b +this.c=c}, +aTK:function aTK(a,b){this.a=a +this.b=b}, +KE:function KE(a,b,c){this.f=a +this.b=b +this.a=c}, +a8O:function a8O(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +alK:function alK(a,b,c){this.f=a +this.d=b +this.a=c}, +alL:function alL(a,b,c){this.e=a +this.c=b +this.a=c}, +akw:function akw(a,b,c){var _=this +_.dG=null +_.cS=a +_.ep=null +_.E$=b +_.fx=null +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=c +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +a8N:function a8N(a,b,c){this.c=a +this.d=b +this.a=c}, +alJ:function alJ(a,b){this.c=a +this.a=b}, +NP:function NP(){}, +iz:function iz(){}, +m7:function m7(){}, +NQ:function NQ(a,b,c,d,e){var _=this +_.p1=a +_.p2=b +_.d=_.c=_.b=_.a=_.CW=_.ay=_.p3=null +_.e=$ +_.f=c +_.r=null +_.w=d +_.z=_.y=null +_.Q=!1 +_.as=!0 +_.ax=_.at=!1 +_.$ti=e}, +Tq:function Tq(){}, +bs9(a,b,c,d,e){return new A.a8Z(c,d,!0,e,b,null)}, +a8X:function a8X(a,b){this.a=a +this.b=b}, +NT:function NT(a){var _=this +_.a=!1 +_.ak$=0 +_.ah$=a +_.aT$=_.bG$=0 +_.bK$=!1}, +a8Z:function a8Z(a,b,c,d,e,f){var _=this +_.e=a +_.f=b +_.r=c +_.w=d +_.c=e +_.a=f}, +GA:function GA(a,b,c,d,e,f,g){var _=this +_.C=a +_.a0=b +_.aw=c +_.cu=d +_.fG=e +_.hQ=_.fa=null +_.fH=!1 +_.j7=null +_.E$=f +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=g +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +a8Y:function a8Y(){}, +Qw:function Qw(){}, +a9r:function a9r(a){this.a=a}, +bOr(a,b,c){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=A.a([],t.bt) +for(s=J.ak(c),r=0,q=0,p=0;r=0){g=p+k +f=g+(n-m) +p=f+1 +q=g-m +e.push(new A.uO(new A.d8(g,f),o.b))}++r}return e}, +bQV(a,b,c,d,e){var s=e.b,r=e.a,q=a.a +if(r!==q)s=A.bOr(q,r,s) +if(A.cb()===B.bT)return A.di(A.bO1(s,a,c,d,b),c,null) +return A.di(A.bO2(s,a,c,d,a.b.c),c,null)}, +bO2(a,b,c,d,e){var s,r,q,p,o=A.a([],t.Ne),n=b.a,m=c.cU(d),l=n.length,k=J.ak(a),j=0,i=0 +while(!0){if(!(jj){r=r=e?c:m +o.push(A.di(null,s,B.c.U(n,r,p)));++i +j=p}}k=n.length +if(je){r=r=e&&g<=r&&f){o.push(A.di(p,c,B.c.U(n,e,j))) +o.push(A.di(p,l,B.c.U(n,j,g))) +o.push(A.di(p,c,B.c.U(n,g,r)))}else o.push(A.di(p,c,B.c.U(n,e,r))) +e=r}else{q=s.b +q=q=j&&q<=g&&f?l:k +o.push(A.di(p,s,B.c.U(n,r,q)));++d +e=q}}j=n.length +if(ea/2 +n=s?o:o+B.b.gN(c).a.a +r=m.b +q=B.b.gN(c) +o=s?m.c:o+B.b.ga1(c).a.a +p=B.b.ga1(c) +n+=(o-n)/2 +o=m.d +return new A.OL(new A.l(n,A.S(r+q.a.b-d,r,o)),new A.l(n,A.S(r+p.a.b,r,o)))}, +OL:function OL(a,b){this.a=a +this.b=b}, +bKO(a,b,c){var s=b/2,r=a-s +if(r<0)return 0 +if(a+s>c)return c-b +return r}, +aaa:function aaa(a,b,c){this.b=a +this.c=b +this.d=c}, +aae(a){var s=a.ae(t.l3),r=s==null?null:s.f +return r!==!1}, +bsB(a){var s=a.NB(t.l3),r=s==null?null:s.r +return r==null?B.Oz:r}, +zc:function zc(a,b,c){this.c=a +this.d=b +this.a=c}, +an4:function an4(a,b){var _=this +_.d=!0 +_.e=a +_.a=null +_.b=b +_.c=null}, +QL:function QL(a,b,c,d){var _=this +_.f=a +_.r=b +_.b=c +_.a=d}, +fC:function fC(){}, +dG:function dG(){}, +anX:function anX(a,b,c){var _=this +_.w=a +_.a=null +_.b=!1 +_.c=null +_.d=b +_.e=null +_.f=c +_.r=$}, +Qd:function Qd(a){this.$ti=a}, +ER:function ER(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +NM(a,b,c,d){return new A.Ec(c,d,a,b,null)}, +aR2(a,b){return new A.a80(a,b,null)}, +aPS(a,b){return new A.a7N(a,b,null)}, +boH(a,b,c,d){return new A.a_X(c,b,a,d,null)}, +h1(a,b,c){return new A.WF(b,c,a,null)}, +HF:function HF(){}, +Pv:function Pv(a){this.a=null +this.b=a +this.c=null}, +b06:function b06(){}, +Ec:function Ec(a,b,c,d,e){var _=this +_.e=a +_.f=b +_.r=c +_.c=d +_.a=e}, +a80:function a80(a,b,c){this.r=a +this.c=b +this.a=c}, +a7N:function a7N(a,b,c){this.r=a +this.c=b +this.a=c}, +a8E:function a8E(a,b,c,d){var _=this +_.f=a +_.r=b +_.c=c +_.a=d}, +cS:function cS(a,b,c,d){var _=this +_.e=a +_.f=b +_.c=c +_.a=d}, +DA:function DA(a,b){this.a=a +this.b=b}, +Mo:function Mo(a,b,c){this.e=a +this.c=b +this.a=c}, +a_N:function a_N(a,b,c,d){var _=this +_.e=a +_.r=b +_.c=c +_.a=d}, +a_X:function a_X(a,b,c,d,e){var _=this +_.r=a +_.w=b +_.x=c +_.c=d +_.a=e}, +KS:function KS(){}, +WF:function WF(a,b,c,d){var _=this +_.e=a +_.f=b +_.c=c +_.a=d}, +bQf(a,b,c){var s={} +s.a=null +return new A.beh(s,A.b4("arg"),a,b,c)}, +F_:function F_(a,b,c,d,e,f,g,h){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.a=g +_.$ti=h}, +F0:function F0(a,b,c){var _=this +_.d=a +_.e=$ +_.f=null +_.r=!1 +_.a=_.x=_.w=null +_.b=b +_.c=null +_.$ti=c}, +aZ0:function aZ0(a){this.a=a}, +F1:function F1(a,b){this.a=a +this.b=b}, +P0:function P0(a,b,c,d){var _=this +_.w=a +_.x=b +_.a=c +_.ak$=0 +_.ah$=d +_.aT$=_.bG$=0 +_.bK$=!1}, +anD:function anD(a,b){this.a=a +this.b=-1 +this.$ti=b}, +beh:function beh(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +beg:function beg(a,b,c){this.a=a +this.b=b +this.c=c}, +U8:function U8(){}, +bt3(a,b,c){return new A.F7(b,a,null,c.h("F7<0>"))}, +F7:function F7(a,b,c,d){var _=this +_.c=a +_.d=b +_.a=c +_.$ti=d}, +H5:function H5(a,b){var _=this +_.d=$ +_.a=null +_.b=a +_.c=null +_.$ti=b}, +bcA:function bcA(a){this.a=a}, +P4(a){var s=A.bHt(a,t._l) +return s==null?null:s.f}, +aaT:function aaT(a,b,c){this.c=a +this.d=b +this.a=c}, +Up:function Up(a,b,c){this.f=a +this.b=b +this.a=c}, +bt8(a,b,c,d,e,f,g,h,i,j){return new A.r4(b,g,a,i,e,c,d,f,j,h)}, +aaY(a,b){var s +switch(b.a){case 0:s=a.ae(t.I) +s.toString +return A.bgz(s.w) +case 1:return B.ag +case 2:s=a.ae(t.I) +s.toString +return A.bgz(s.w) +case 3:return B.ag}}, +r4:function r4(a,b,c,d,e,f,g,h,i,j){var _=this +_.e=a +_.f=b +_.r=c +_.w=d +_.x=e +_.y=f +_.z=g +_.Q=h +_.c=i +_.a=j}, +anQ:function anQ(a,b,c){var _=this +_.bO=!1 +_.B=null +_.p1=$ +_.p2=a +_.d=_.c=_.b=_.a=_.CW=_.ay=null +_.e=$ +_.f=b +_.r=null +_.w=c +_.z=_.y=null +_.Q=!1 +_.as=!0 +_.ax=_.at=!1}, +a8x:function a8x(a,b,c,d,e){var _=this +_.e=a +_.r=b +_.w=c +_.c=d +_.a=e}, +apO:function apO(){}, +apP:function apP(){}, +bLw(a,b){return new A.F9(a,b,!0,!0,!0,!0,!0,null)}, +bt9(a){var s,r,q,p,o={} +o.a=a +s=t.ps +r=a.oc(s) +q=!0 +while(!0){if(!(q&&r!=null))break +q=s.a(a.U7(r)).f +r.tR(new A.aZR(o)) +p=o.a.y +r=p==null?null:p.i(0,A.ck(s))}return q}, +F9:function F9(a,b,c,d,e,f,g,h){var _=this +_.c=a +_.e=b +_.f=c +_.r=d +_.w=e +_.x=f +_.y=g +_.a=h}, +aZR:function aZR(a){this.a=a}, +Uq:function Uq(a,b,c){this.f=a +this.b=b +this.a=c}, +anR:function anR(a,b,c,d){var _=this +_.e=a +_.f=b +_.c=c +_.a=d}, +akG:function akG(a,b,c,d){var _=this +_.C=a +_.a0=b +_.E$=c +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=d +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +bta(a,b){var s={},r=A.a([],t.p) +s.a=0 +a.ck(new A.aZW(s,r,b)) +return r}, +Fb:function Fb(){}, +aZW:function aZW(a,b,c){this.a=a +this.b=b +this.c=c}, +anW:function anW(a,b,c){this.f=a +this.b=b +this.a=c}, +adq:function adq(a,b,c,d){var _=this +_.e=a +_.f=b +_.c=c +_.a=d}, +ST:function ST(a,b,c,d,e){var _=this +_.B=a +_.Z=b +_.Y=c +_.E$=d +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=e +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +b9d:function b9d(a){this.a=a}, +b9c:function b9c(a){this.a=a}, +ap7:function ap7(){}, +zr:function zr(a,b,c){this.c=a +this.d=b +this.a=c}, +ao_:function ao_(a){var _=this +_.a=_.d=null +_.b=a +_.c=null}, +aBX:function aBX(){}, +qa:function qa(a,b){this.a=a +this.b=b}, +auc:function auc(){}, +aud:function aud(){}, +wq:function wq(a,b,c){var _=this +_.aPR$=a +_.a=b +_.b=c +_.c=$}, +af4:function af4(){}, +aFr:function aFr(){}, +bDq(a){var s=t.N,r=Date.now() +return new A.auh(A.F(s,t.f8),A.F(s,t.LE),a.b,a,a.a.r_(0).b9(new A.auk(a),t.Pt),new A.dl(r,!1))}, +auh:function auh(a,b,c,d,e,f){var _=this +_.b=a +_.c=b +_.d=c +_.e=d +_.f=e +_.r=f +_.w=null}, +auk:function auk(a){this.a=a}, +aul:function aul(a,b,c){this.a=a +this.b=b +this.c=c}, +auj:function auj(a){this.a=a}, +awo:function awo(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.d=c +_.e=d +_.f=e}, +aub:function aub(){}, +kZ:function kZ(a,b){this.b=a +this.c=b}, +a0U:function a0U(a,b){this.a=a +this.b=b}, +of:function of(a,b,c){this.b=a +this.c=b +this.d=c}, +l1:function l1(){}, +a5u:function a5u(){}, +boj(a,b,c,d,e,f,g,h){return new A.lE(c,a,d,f,h,b,e,g)}, +lE:function lE(a,b,c,d,e,f,g,h){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=h}, +aIO:function aIO(a){this.a=a}, +bGA(){A.bxC() +var s=new A.Ib(A.aY(t.Gf)) +return new A.aFg(s)}, +aBw:function aBw(){}, +aFg:function aFg(a){this.b=a}, +a1S:function a1S(a,b){this.a=a +this.b=b}, +a6D:function a6D(a,b,c){this.a=a +this.b=b +this.c=c}, +aZS:function aZS(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=0}, +aZT:function aZT(a,b,c){this.a=a +this.b=b +this.c=c}, +aZU:function aZU(a,b){this.a=a +this.b=b}, +a1P:function a1P(a,b){this.a=a +this.b=b}, +WV(a){return A.A(a,B.h,t.J)}, +bTz(a){switch(a.ge_(a)){case"zh":switch(a.b){case"Hans":A.iL("zh_Hans") +return new A.WT() +case"Hant":A.iL("zh_Hant") +return new A.WU()}break}switch(a.ge_(a)){case"pt":switch(a.geV()){case"PT":A.iL("pt_PT") +return new A.WR()}break}switch(a.ge_(a)){case"ar":A.iL("ar") +return new A.WK() +case"de":A.iL("de") +return new A.WL() +case"en":A.iL("en") +return new A.WM() +case"es":A.iL("es") +return new A.WN() +case"fr":A.iL("fr") +return new A.WO() +case"ja":A.iL("ja") +return new A.WP() +case"ko":A.iL("ko") +return new A.WQ() +case"pt":A.iL("pt") +return new A.HO() +case"uk":A.iL("uk") +return new A.WS() +case"zh":A.iL("zh") +return new A.HP()}throw A.c(A.ty('AppLocalizations.delegate failed to load unsupported locale "'+a.j(0)+'". This is likely an issue with the localizations generation tool. Please file an issue on GitHub with a reproducible sample app and the gen-l10n configuration that was used.'))}, +fK:function fK(){}, +adk:function adk(){}, +WK:function WK(){}, +WL:function WL(){}, +WM:function WM(){}, +WN:function WN(){}, +WO:function WO(){}, +WP:function WP(){}, +WQ:function WQ(){}, +HO:function HO(){}, +WR:function WR(){}, +WS:function WS(){}, +HP:function HP(){}, +WT:function WT(){}, +WU:function WU(){}, +bGy(a,b){var s,r,q,p,o=a.a,n=b.a,m=J.iM(o) +if(m.l(o,n))return!0 +if(o==null||n==null||m.gt(o)!==J.aZ(n))return!1 +s=m.gaj(o) +r=J.ao(n) +for(;!0;){if(!s.u()||!r.u())return!0 +q=s.gH(s) +p=r.gH(r) +if(typeof q=="number"&&typeof p=="number"){if(isNaN(q)&&isNaN(p))continue +m=J.iM(q) +if(m.l(q,0)&&p===0){m=m.l(q,0)?1/q<0:q<0 +if(m!==(p===0?1/p<0:p<0))return!1 +continue}}if(!J.i(q,p))return!1}}, +bv8(a,b){var s=b.a8() +s.a=a +s.c=b +s.LG() +return s}, +bl2(a){var s,r +if(a.j3$!=null){if(a.oI$==null)a.oI$=new A.jF(t.n_) +for(;s=a.j3$,s!=null;){a.j3$=s.gnh(s) +r=s.i6$ +r.toString +r.Sv(s.$ti.h("j1.E").a(s)) +r=a.oI$ +r.yO(r.c,s,!1)}}}, +hY:function hY(){}, +hZ:function hZ(){}, +ml:function ml(a,b){var _=this +_.a=a +_.i7$=_.hy$=_.i6$=null +_.$ti=b}, +a1J:function a1J(){}, +bcY:function bcY(){}, +a1K:function a1K(){}, +am9:function am9(a,b,c,d,e,f,g,h,i,j){var _=this +_.j3$=a +_.uV$=b +_.ET$=c +_.oI$=d +_.oJ$=e +_.x4$=f +_.aHL$=g +_.aHM$=h +_.d=_.c=_.b=_.a=_.ay=null +_.e=$ +_.f=i +_.r=null +_.w=j +_.z=_.y=null +_.Q=!1 +_.as=!0 +_.ax=_.at=!1}, +agC:function agC(){}, +agB:function agB(){}, +apo:function apo(){}, +bxA(a){return $.b7.bm(B.aoM,t.qb)}, +bm5(a,b){return $.b7.bm(new A.ib(new A.bgI(a,b),B.cY,b.h("ib>")),b.h("xT<0>"))}, +vI(a,b,c){return $.b7.bm(new A.ib(new A.bgH(a,c),b,c.h("ib<0>")),c)}, +Uk:function Uk(a,b,c){this.b=a +this.a=b +this.$ti=c}, +anM:function anM(){this.c=this.b=this.a=null}, +Px:function Px(a,b,c,d,e,f,g,h,i){var _=this +_.b=a +_.c=b +_.d=c +_.e=d +_.f=e +_.r=f +_.w=g +_.x=h +_.a=i}, +add:function add(){var _=this +_.d=$ +_.c=_.b=_.a=null}, +To:function To(a){this.a=a}, +an5:function an5(){var _=this +_.c=_.b=_.a=_.d=null}, +R_:function R_(a,b,c,d,e,f,g){var _=this +_.b=a +_.c=b +_.d=c +_.e=d +_.f=e +_.r=f +_.a=g}, +agf:function agf(){var _=this +_.d=$ +_.c=_.b=_.a=null}, +zJ:function zJ(a,b){this.b=a +this.a=b}, +Ga:function Ga(){this.c=this.b=this.a=null}, +b66:function b66(){}, +Sf:function Sf(a,b,c,d){var _=this +_.b=a +_.c=b +_.d=c +_.a=d}, +aiV:function aiV(){var _=this +_.d=$ +_.c=_.b=_.a=null}, +xT:function xT(a,b){this.a=a +this.$ti=b}, +bgI:function bgI(a,b){this.a=a +this.b=b}, +bgH:function bgH(a,b){this.a=a +this.b=b}, +ib:function ib(a,b,c){this.b=a +this.a=b +this.$ti=c}, +RU:function RU(a){var _=this +_.d=$ +_.c=_.b=_.a=null +_.$ti=a}, +dz:function dz(a,b){this.b=a +this.a=b}, +afE:function afE(){var _=this +_.c=_.b=_.a=_.d=null}, +cW:function cW(a,b,c){this.b=a +this.a=b +this.$ti=c}, +GQ:function GQ(a){var _=this +_.d=$ +_.c=_.b=_.a=null +_.$ti=a}, +baQ:function baQ(){}, +TM:function TM(a,b,c,d){var _=this +_.b=a +_.c=b +_.d=c +_.a=d}, +amt:function amt(){var _=this +_.d=$ +_.c=_.b=_.a=null}, +mr:function mr(a,b){this.b=a +this.a=b}, +amK:function amK(){var _=this +_.d=$ +_.c=_.b=_.a=null}, +a1q:function a1q(){}, +agr:function agr(){}, +b4x:function b4x(a){this.a=a}, +b4y:function b4y(a,b,c,d,e,f,g,h){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=h}, +bE3(a,b,c,d,e,f,g,h,i){return new A.IO()}, +bE4(a,b,c,d,e,f,g,h,i){return new A.IP()}, +bE5(a,b,c,d,e,f,g,h,i){return new A.IQ()}, +bE6(a,b,c,d,e,f,g,h,i){return new A.IR()}, +bE7(a,b,c,d,e,f,g,h,i){return new A.IS()}, +bE8(a,b,c,d,e,f,g,h,i){return new A.IT()}, +bE9(a,b,c,d,e,f,g,h,i){return new A.IU()}, +bEa(a,b,c,d,e,f,g,h,i){return new A.IV()}, +box(a,b,c,d,e,f,g,h){return new A.a_u()}, +boy(a,b,c,d,e,f,g,h){return new A.a_v()}, +bSG(a,b,c,d,e,f,g,h,i){switch(a.ge_(a)){case"af":return new A.YQ() +case"am":return new A.YR() +case"ar":return new A.YS() +case"as":return new A.YT() +case"az":return new A.YU() +case"be":return new A.YV() +case"bg":return new A.YW() +case"bn":return new A.YX() +case"bs":return new A.YY() +case"ca":return new A.YZ() +case"cs":return new A.Z_() +case"cy":return new A.Z0() +case"da":return new A.Z1() +case"de":switch(a.geV()){case"CH":return new A.Z2()}return A.bE3(c,i,g,b,"de",d,e,f,h) +case"el":return new A.Z3() +case"en":switch(a.geV()){case"AU":return new A.Z4() +case"CA":return new A.Z5() +case"GB":return new A.Z6() +case"IE":return new A.Z7() +case"IN":return new A.Z8() +case"NZ":return new A.Z9() +case"SG":return new A.Za() +case"ZA":return new A.Zb()}return A.bE4(c,i,g,b,"en",d,e,f,h) +case"es":switch(a.geV()){case"419":return new A.Zc() +case"AR":return new A.Zd() +case"BO":return new A.Ze() +case"CL":return new A.Zf() +case"CO":return new A.Zg() +case"CR":return new A.Zh() +case"DO":return new A.Zi() +case"EC":return new A.Zj() +case"GT":return new A.Zk() +case"HN":return new A.Zl() +case"MX":return new A.Zm() +case"NI":return new A.Zn() +case"PA":return new A.Zo() +case"PE":return new A.Zp() +case"PR":return new A.Zq() +case"PY":return new A.Zr() +case"SV":return new A.Zs() +case"US":return new A.Zt() +case"UY":return new A.Zu() +case"VE":return new A.Zv()}return A.bE5(c,i,g,b,"es",d,e,f,h) +case"et":return new A.Zw() +case"eu":return new A.Zx() +case"fa":return new A.Zy() +case"fi":return new A.Zz() +case"fil":return new A.ZA() +case"fr":switch(a.geV()){case"CA":return new A.ZB()}return A.bE6(c,i,g,b,"fr",d,e,f,h) +case"gl":return new A.ZC() +case"gsw":return new A.ZD() +case"gu":return new A.ZE() +case"he":return new A.ZF() +case"hi":return new A.ZG() +case"hr":return new A.ZH() +case"hu":return new A.ZI() +case"hy":return new A.ZJ() +case"id":return new A.ZK() +case"is":return new A.ZL() +case"it":return new A.ZM() +case"ja":return new A.ZN() +case"ka":return new A.ZO() +case"kk":return new A.ZP() +case"km":return new A.ZQ() +case"kn":return new A.ZR() +case"ko":return new A.ZS() +case"ky":return new A.ZT() +case"lo":return new A.ZU() +case"lt":return new A.ZV() +case"lv":return new A.ZW() +case"mk":return new A.ZX() +case"ml":return new A.ZY() +case"mn":return new A.ZZ() +case"mr":return new A.a__() +case"ms":return new A.a_0() +case"my":return new A.a_1() +case"nb":return new A.a_2() +case"ne":return new A.a_3() +case"nl":return new A.a_4() +case"no":return new A.a_5() +case"or":return new A.a_6() +case"pa":return new A.a_7() +case"pl":return new A.a_8() +case"pt":switch(a.geV()){case"PT":return new A.a_9()}return A.bE7(c,i,g,b,"pt",d,e,f,h) +case"ro":return new A.a_a() +case"ru":return new A.a_b() +case"si":return new A.a_c() +case"sk":return new A.a_d() +case"sl":return new A.a_e() +case"sq":return new A.a_f() +case"sr":switch(a.b){case"Cyrl":return new A.a_g() +case"Latn":return new A.a_h()}return A.bE8(c,i,g,b,"sr",d,e,f,h) +case"sv":return new A.a_i() +case"sw":return new A.a_j() +case"ta":return new A.a_k() +case"te":return new A.a_l() +case"th":return new A.a_m() +case"tl":return new A.a_n() +case"tr":return new A.a_o() +case"uk":return new A.a_p() +case"ur":return new A.a_q() +case"uz":return new A.a_r() +case"vi":return new A.a_s() +case"zh":switch(a.b){case"Hans":return new A.a_t() +case"Hant":switch(a.geV()){case"HK":return A.box(c,i,g,b,d,e,f,h) +case"TW":return A.boy(c,i,g,b,d,e,f,h)}return A.bEa(c,i,g,b,"zh_Hant",d,e,f,h)}switch(a.geV()){case"HK":return A.box(c,i,g,b,d,e,f,h) +case"TW":return A.boy(c,i,g,b,d,e,f,h)}return A.bE9(c,i,g,b,"zh",d,e,f,h) +case"zu":return new A.a_w()}return null}, +YQ:function YQ(){}, +YR:function YR(){}, +YS:function YS(){}, +YT:function YT(){}, +YU:function YU(){}, +YV:function YV(){}, +YW:function YW(){}, +YX:function YX(){}, +YY:function YY(){}, +YZ:function YZ(){}, +Z_:function Z_(){}, +Z0:function Z0(){}, +Z1:function Z1(){}, +IO:function IO(){}, +Z2:function Z2(){}, +Z3:function Z3(){}, +IP:function IP(){}, +Z4:function Z4(){}, +Z5:function Z5(){}, +Z6:function Z6(){}, +Z7:function Z7(){}, +Z8:function Z8(){}, +Z9:function Z9(){}, +Za:function Za(){}, +Zb:function Zb(){}, +IQ:function IQ(){}, +Zc:function Zc(){}, +Zd:function Zd(){}, +Ze:function Ze(){}, +Zf:function Zf(){}, +Zg:function Zg(){}, +Zh:function Zh(){}, +Zi:function Zi(){}, +Zj:function Zj(){}, +Zk:function Zk(){}, +Zl:function Zl(){}, +Zm:function Zm(){}, +Zn:function Zn(){}, +Zo:function Zo(){}, +Zp:function Zp(){}, +Zq:function Zq(){}, +Zr:function Zr(){}, +Zs:function Zs(){}, +Zt:function Zt(){}, +Zu:function Zu(){}, +Zv:function Zv(){}, +Zw:function Zw(){}, +Zx:function Zx(){}, +Zy:function Zy(){}, +Zz:function Zz(){}, +ZA:function ZA(){}, +IR:function IR(){}, +ZB:function ZB(){}, +ZC:function ZC(){}, +ZD:function ZD(){}, +ZE:function ZE(){}, +ZF:function ZF(){}, +ZG:function ZG(){}, +ZH:function ZH(){}, +ZI:function ZI(){}, +ZJ:function ZJ(){}, +ZK:function ZK(){}, +ZL:function ZL(){}, +ZM:function ZM(){}, +ZN:function ZN(){}, +ZO:function ZO(){}, +ZP:function ZP(){}, +ZQ:function ZQ(){}, +ZR:function ZR(){}, +ZS:function ZS(){}, +ZT:function ZT(){}, +ZU:function ZU(){}, +ZV:function ZV(){}, +ZW:function ZW(){}, +ZX:function ZX(){}, +ZY:function ZY(){}, +ZZ:function ZZ(){}, +a__:function a__(){}, +a_0:function a_0(){}, +a_1:function a_1(){}, +a_2:function a_2(){}, +a_3:function a_3(){}, +a_4:function a_4(){}, +a_5:function a_5(){}, +a_6:function a_6(){}, +a_7:function a_7(){}, +a_8:function a_8(){}, +IS:function IS(){}, +a_9:function a_9(){}, +a_a:function a_a(){}, +a_b:function a_b(){}, +a_c:function a_c(){}, +a_d:function a_d(){}, +a_e:function a_e(){}, +a_f:function a_f(){}, +IT:function IT(){}, +a_g:function a_g(){}, +a_h:function a_h(){}, +a_i:function a_i(){}, +a_j:function a_j(){}, +a_k:function a_k(){}, +a_l:function a_l(){}, +a_m:function a_m(){}, +a_n:function a_n(){}, +a_o:function a_o(){}, +a_p:function a_p(){}, +a_q:function a_q(){}, +a_r:function a_r(){}, +a_s:function a_s(){}, +IU:function IU(){}, +a_t:function a_t(){}, +IV:function IV(){}, +a_u:function a_u(){}, +a_v:function a_v(){}, +a_w:function a_w(){}, +bHG(a,b,c,d,e,f,g,h,i,j){return new A.Lb(d,b)}, +bHH(a,b,c,d,e,f,g,h,i,j){return new A.Lc(d,b)}, +bHI(a,b,c,d,e,f,g,h,i,j){return new A.Ld(d,b)}, +bHJ(a,b,c,d,e,f,g,h,i,j){return new A.Le(d,b)}, +bHK(a,b,c,d,e,f,g,h,i,j){return new A.Lf(d,b)}, +bHL(a,b,c,d,e,f,g,h,i,j){return new A.Lg(d,b)}, +bHM(a,b,c,d,e,f,g,h,i,j){return new A.Lh(d,b)}, +bHN(a,b,c,d,e,f,g,h,i,j){return new A.Li(d,b)}, +bqF(a,b,c,d,e,f,g,h,i){return new A.a4Q("zh_Hant_HK",b)}, +bqG(a,b,c,d,e,f,g,h,i){return new A.a4R("zh_Hant_TW",b)}, +bSK(a,b,c,d,e,f,g,h,i,j){switch(a.ge_(a)){case"af":return new A.a3a("af",i) +case"am":return new A.a3b("am",i) +case"ar":return new A.a3c("ar",i) +case"as":return new A.a3d("as",i) +case"az":return new A.a3e("az",i) +case"be":return new A.a3f("be",i) +case"bg":return new A.a3g("bg",i) +case"bn":return new A.a3h("bn",i) +case"bs":return new A.a3i("bs",i) +case"ca":return new A.a3j("ca",i) +case"cs":return new A.a3k("cs",i) +case"cy":return new A.a3l("cy",i) +case"da":return new A.a3m("da",i) +case"de":switch(a.geV()){case"CH":return new A.a3n("de_CH",i)}return A.bHG(c,i,b,"de",f,e,d,h,j,g) +case"el":return new A.a3o("el",i) +case"en":switch(a.geV()){case"AU":return new A.a3p("en_AU",i) +case"CA":return new A.a3q("en_CA",i) +case"GB":return new A.a3r("en_GB",i) +case"IE":return new A.a3s("en_IE",i) +case"IN":return new A.a3t("en_IN",i) +case"NZ":return new A.a3u("en_NZ",i) +case"SG":return new A.a3v("en_SG",i) +case"ZA":return new A.a3w("en_ZA",i)}return A.bHH(c,i,b,"en",f,e,d,h,j,g) +case"es":switch(a.geV()){case"419":return new A.a3x("es_419",i) +case"AR":return new A.a3y("es_AR",i) +case"BO":return new A.a3z("es_BO",i) +case"CL":return new A.a3A("es_CL",i) +case"CO":return new A.a3B("es_CO",i) +case"CR":return new A.a3C("es_CR",i) +case"DO":return new A.a3D("es_DO",i) +case"EC":return new A.a3E("es_EC",i) +case"GT":return new A.a3F("es_GT",i) +case"HN":return new A.a3G("es_HN",i) +case"MX":return new A.a3H("es_MX",i) +case"NI":return new A.a3I("es_NI",i) +case"PA":return new A.a3J("es_PA",i) +case"PE":return new A.a3K("es_PE",i) +case"PR":return new A.a3L("es_PR",i) +case"PY":return new A.a3M("es_PY",i) +case"SV":return new A.a3N("es_SV",i) +case"US":return new A.a3O("es_US",i) +case"UY":return new A.a3P("es_UY",i) +case"VE":return new A.a3Q("es_VE",i)}return A.bHI(c,i,b,"es",f,e,d,h,j,g) +case"et":return new A.a3R("et",i) +case"eu":return new A.a3S("eu",i) +case"fa":return new A.a3T("fa",i) +case"fi":return new A.a3U("fi",i) +case"fil":return new A.a3V("fil",i) +case"fr":switch(a.geV()){case"CA":return new A.a3W("fr_CA",i)}return A.bHJ(c,i,b,"fr",f,e,d,h,j,g) +case"gl":return new A.a3X("gl",i) +case"gsw":return new A.a3Y("gsw",i) +case"gu":return new A.a3Z("gu",i) +case"he":return new A.a4_("he",i) +case"hi":return new A.a40("hi",i) +case"hr":return new A.a41("hr",i) +case"hu":return new A.a42("hu",i) +case"hy":return new A.a43("hy",i) +case"id":return new A.a44("id",i) +case"is":return new A.a45("is",i) +case"it":return new A.a46("it",i) +case"ja":return new A.a47("ja",i) +case"ka":return new A.a48("ka",i) +case"kk":return new A.a49("kk",i) +case"km":return new A.a4a("km",i) +case"kn":return new A.a4b("kn",i) +case"ko":return new A.a4c("ko",i) +case"ky":return new A.a4d("ky",i) +case"lo":return new A.a4e("lo",i) +case"lt":return new A.a4f("lt",i) +case"lv":return new A.a4g("lv",i) +case"mk":return new A.a4h("mk",i) +case"ml":return new A.a4i("ml",i) +case"mn":return new A.a4j("mn",i) +case"mr":return new A.a4k("mr",i) +case"ms":return new A.a4l("ms",i) +case"my":return new A.a4m("my",i) +case"nb":return new A.a4n("nb",i) +case"ne":return new A.a4o("ne",i) +case"nl":return new A.a4p("nl",i) +case"no":return new A.a4q("no",i) +case"or":return new A.a4r("or",i) +case"pa":return new A.a4s("pa",i) +case"pl":return new A.a4t("pl",i) +case"ps":return new A.a4u("ps",i) +case"pt":switch(a.geV()){case"PT":return new A.a4v("pt_PT",i)}return A.bHK(c,i,b,"pt",f,e,d,h,j,g) +case"ro":return new A.a4w("ro",i) +case"ru":return new A.a4x("ru",i) +case"si":return new A.a4y("si",i) +case"sk":return new A.a4z("sk",i) +case"sl":return new A.a4A("sl",i) +case"sq":return new A.a4B("sq",i) +case"sr":switch(a.b){case"Cyrl":return new A.a4C("sr_Cyrl",i) +case"Latn":return new A.a4D("sr_Latn",i)}return A.bHL(c,i,b,"sr",f,e,d,h,j,g) +case"sv":return new A.a4E("sv",i) +case"sw":return new A.a4F("sw",i) +case"ta":return new A.a4G("ta",i) +case"te":return new A.a4H("te",i) +case"th":return new A.a4I("th",i) +case"tl":return new A.a4J("tl",i) +case"tr":return new A.a4K("tr",i) +case"uk":return new A.a4L("uk",i) +case"ur":return new A.a4M("ur",i) +case"uz":return new A.a4N("uz",i) +case"vi":return new A.a4O("vi",i) +case"zh":switch(a.b){case"Hans":return new A.a4P("zh_Hans",i) +case"Hant":switch(a.geV()){case"HK":return A.bqF(c,i,b,f,e,d,h,j,g) +case"TW":return A.bqG(c,i,b,f,e,d,h,j,g)}return A.bHN(c,i,b,"zh_Hant",f,e,d,h,j,g)}switch(a.geV()){case"HK":return A.bqF(c,i,b,f,e,d,h,j,g) +case"TW":return A.bqG(c,i,b,f,e,d,h,j,g)}return A.bHM(c,i,b,"zh",f,e,d,h,j,g) +case"zu":return new A.a4S("zu",i)}return null}, +a3a:function a3a(a,b){this.a=a +this.x=b}, +a3b:function a3b(a,b){this.a=a +this.x=b}, +a3c:function a3c(a,b){this.a=a +this.x=b}, +a3d:function a3d(a,b){this.a=a +this.x=b}, +a3e:function a3e(a,b){this.a=a +this.x=b}, +a3f:function a3f(a,b){this.a=a +this.x=b}, +a3g:function a3g(a,b){this.a=a +this.x=b}, +a3h:function a3h(a,b){this.a=a +this.x=b}, +a3i:function a3i(a,b){this.a=a +this.x=b}, +a3j:function a3j(a,b){this.a=a +this.x=b}, +a3k:function a3k(a,b){this.a=a +this.x=b}, +a3l:function a3l(a,b){this.a=a +this.x=b}, +a3m:function a3m(a,b){this.a=a +this.x=b}, +Lb:function Lb(a,b){this.a=a +this.x=b}, +a3n:function a3n(a,b){this.a=a +this.x=b}, +a3o:function a3o(a,b){this.a=a +this.x=b}, +Lc:function Lc(a,b){this.a=a +this.x=b}, +a3p:function a3p(a,b){this.a=a +this.x=b}, +a3q:function a3q(a,b){this.a=a +this.x=b}, +a3r:function a3r(a,b){this.a=a +this.x=b}, +a3s:function a3s(a,b){this.a=a +this.x=b}, +a3t:function a3t(a,b){this.a=a +this.x=b}, +a3u:function a3u(a,b){this.a=a +this.x=b}, +a3v:function a3v(a,b){this.a=a +this.x=b}, +a3w:function a3w(a,b){this.a=a +this.x=b}, +Ld:function Ld(a,b){this.a=a +this.x=b}, +a3x:function a3x(a,b){this.a=a +this.x=b}, +a3y:function a3y(a,b){this.a=a +this.x=b}, +a3z:function a3z(a,b){this.a=a +this.x=b}, +a3A:function a3A(a,b){this.a=a +this.x=b}, +a3B:function a3B(a,b){this.a=a +this.x=b}, +a3C:function a3C(a,b){this.a=a +this.x=b}, +a3D:function a3D(a,b){this.a=a +this.x=b}, +a3E:function a3E(a,b){this.a=a +this.x=b}, +a3F:function a3F(a,b){this.a=a +this.x=b}, +a3G:function a3G(a,b){this.a=a +this.x=b}, +a3H:function a3H(a,b){this.a=a +this.x=b}, +a3I:function a3I(a,b){this.a=a +this.x=b}, +a3J:function a3J(a,b){this.a=a +this.x=b}, +a3K:function a3K(a,b){this.a=a +this.x=b}, +a3L:function a3L(a,b){this.a=a +this.x=b}, +a3M:function a3M(a,b){this.a=a +this.x=b}, +a3N:function a3N(a,b){this.a=a +this.x=b}, +a3O:function a3O(a,b){this.a=a +this.x=b}, +a3P:function a3P(a,b){this.a=a +this.x=b}, +a3Q:function a3Q(a,b){this.a=a +this.x=b}, +a3R:function a3R(a,b){this.a=a +this.x=b}, +a3S:function a3S(a,b){this.a=a +this.x=b}, +a3T:function a3T(a,b){this.a=a +this.x=b}, +a3U:function a3U(a,b){this.a=a +this.x=b}, +a3V:function a3V(a,b){this.a=a +this.x=b}, +Le:function Le(a,b){this.a=a +this.x=b}, +a3W:function a3W(a,b){this.a=a +this.x=b}, +a3X:function a3X(a,b){this.a=a +this.x=b}, +a3Y:function a3Y(a,b){this.a=a +this.x=b}, +a3Z:function a3Z(a,b){this.a=a +this.x=b}, +a4_:function a4_(a,b){this.a=a +this.x=b}, +a40:function a40(a,b){this.a=a +this.x=b}, +a41:function a41(a,b){this.a=a +this.x=b}, +a42:function a42(a,b){this.a=a +this.x=b}, +a43:function a43(a,b){this.a=a +this.x=b}, +a44:function a44(a,b){this.a=a +this.x=b}, +a45:function a45(a,b){this.a=a +this.x=b}, +a46:function a46(a,b){this.a=a +this.x=b}, +a47:function a47(a,b){this.a=a +this.x=b}, +a48:function a48(a,b){this.a=a +this.x=b}, +a49:function a49(a,b){this.a=a +this.x=b}, +a4a:function a4a(a,b){this.a=a +this.x=b}, +a4b:function a4b(a,b){this.a=a +this.x=b}, +a4c:function a4c(a,b){this.a=a +this.x=b}, +a4d:function a4d(a,b){this.a=a +this.x=b}, +a4e:function a4e(a,b){this.a=a +this.x=b}, +a4f:function a4f(a,b){this.a=a +this.x=b}, +a4g:function a4g(a,b){this.a=a +this.x=b}, +a4h:function a4h(a,b){this.a=a +this.x=b}, +a4i:function a4i(a,b){this.a=a +this.x=b}, +a4j:function a4j(a,b){this.a=a +this.x=b}, +a4k:function a4k(a,b){this.a=a +this.x=b}, +a4l:function a4l(a,b){this.a=a +this.x=b}, +a4m:function a4m(a,b){this.a=a +this.x=b}, +a4n:function a4n(a,b){this.a=a +this.x=b}, +a4o:function a4o(a,b){this.a=a +this.x=b}, +a4p:function a4p(a,b){this.a=a +this.x=b}, +a4q:function a4q(a,b){this.a=a +this.x=b}, +a4r:function a4r(a,b){this.a=a +this.x=b}, +a4s:function a4s(a,b){this.a=a +this.x=b}, +a4t:function a4t(a,b){this.a=a +this.x=b}, +a4u:function a4u(a,b){this.a=a +this.x=b}, +Lf:function Lf(a,b){this.a=a +this.x=b}, +a4v:function a4v(a,b){this.a=a +this.x=b}, +a4w:function a4w(a,b){this.a=a +this.x=b}, +a4x:function a4x(a,b){this.a=a +this.x=b}, +a4y:function a4y(a,b){this.a=a +this.x=b}, +a4z:function a4z(a,b){this.a=a +this.x=b}, +a4A:function a4A(a,b){this.a=a +this.x=b}, +a4B:function a4B(a,b){this.a=a +this.x=b}, +Lg:function Lg(a,b){this.a=a +this.x=b}, +a4C:function a4C(a,b){this.a=a +this.x=b}, +a4D:function a4D(a,b){this.a=a +this.x=b}, +a4E:function a4E(a,b){this.a=a +this.x=b}, +a4F:function a4F(a,b){this.a=a +this.x=b}, +a4G:function a4G(a,b){this.a=a +this.x=b}, +a4H:function a4H(a,b){this.a=a +this.x=b}, +a4I:function a4I(a,b){this.a=a +this.x=b}, +a4J:function a4J(a,b){this.a=a +this.x=b}, +a4K:function a4K(a,b){this.a=a +this.x=b}, +a4L:function a4L(a,b){this.a=a +this.x=b}, +a4M:function a4M(a,b){this.a=a +this.x=b}, +a4N:function a4N(a,b){this.a=a +this.x=b}, +a4O:function a4O(a,b){this.a=a +this.x=b}, +Lh:function Lh(a,b){this.a=a +this.x=b}, +a4P:function a4P(a,b){this.a=a +this.x=b}, +Li:function Li(a,b){this.a=a +this.x=b}, +a4Q:function a4Q(a,b){this.a=a +this.x=b}, +a4R:function a4R(a,b){this.a=a +this.x=b}, +a4S:function a4S(a,b){this.a=a +this.x=b}, +bSN(a){switch(a.ge_(a)){case"af":return B.alA +case"am":return B.alB +case"ar":return B.alC +case"as":return B.alD +case"az":return B.alE +case"be":return B.alF +case"bg":return B.alG +case"bn":return B.alH +case"bs":return B.alI +case"ca":return B.alJ +case"cs":return B.alK +case"cy":return B.alL +case"da":return B.alM +case"de":switch(a.geV()){case"CH":return B.alN}return B.alO +case"el":return B.alP +case"en":switch(a.geV()){case"AU":return B.alQ +case"CA":return B.alR +case"GB":return B.alS +case"IE":return B.alT +case"IN":return B.alU +case"NZ":return B.alV +case"SG":return B.alW +case"ZA":return B.alX}return B.alY +case"es":switch(a.geV()){case"419":return B.alZ +case"AR":return B.am_ +case"BO":return B.am0 +case"CL":return B.am1 +case"CO":return B.am2 +case"CR":return B.am3 +case"DO":return B.am4 +case"EC":return B.am5 +case"GT":return B.am6 +case"HN":return B.am7 +case"MX":return B.am8 +case"NI":return B.am9 +case"PA":return B.ama +case"PE":return B.amb +case"PR":return B.amc +case"PY":return B.amd +case"SV":return B.ame +case"US":return B.amf +case"UY":return B.amg +case"VE":return B.amh}return B.ami +case"et":return B.amj +case"eu":return B.amk +case"fa":return B.aml +case"fi":return B.amm +case"fil":return B.amn +case"fr":switch(a.geV()){case"CA":return B.amo}return B.amp +case"gl":return B.amq +case"gsw":return B.amr +case"gu":return B.ams +case"he":return B.amt +case"hi":return B.amu +case"hr":return B.amv +case"hu":return B.amw +case"hy":return B.amx +case"id":return B.amy +case"is":return B.amz +case"it":return B.amA +case"ja":return B.amB +case"ka":return B.amC +case"kk":return B.amD +case"km":return B.amE +case"kn":return B.amF +case"ko":return B.amG +case"ky":return B.amH +case"lo":return B.amI +case"lt":return B.amJ +case"lv":return B.amK +case"mk":return B.amL +case"ml":return B.amM +case"mn":return B.amN +case"mr":return B.amO +case"ms":return B.amP +case"my":return B.amQ +case"nb":return B.amR +case"ne":return B.amS +case"nl":return B.amT +case"no":return B.amU +case"or":return B.amV +case"pa":return B.amW +case"pl":return B.amX +case"ps":return B.amY +case"pt":switch(a.geV()){case"PT":return B.amZ}return B.an_ +case"ro":return B.an0 +case"ru":return B.an1 +case"si":return B.an2 +case"sk":return B.an3 +case"sl":return B.an4 +case"sq":return B.an5 +case"sr":switch(a.b){case"Cyrl":return B.an6 +case"Latn":return B.an7}return B.an8 +case"sv":return B.an9 +case"sw":return B.ana +case"ta":return B.anb +case"te":return B.anc +case"th":return B.and +case"tl":return B.ane +case"tr":return B.anf +case"uk":return B.ang +case"ur":return B.anh +case"uz":return B.ani +case"vi":return B.anj +case"zh":switch(a.b){case"Hans":return B.ank +case"Hant":switch(a.geV()){case"HK":return B.L1 +case"TW":return B.L2}return B.anl}switch(a.geV()){case"HK":return B.L1 +case"TW":return B.L2}return B.anm +case"zu":return B.ann}return null}, +ab0:function ab0(a){this.a=a}, +ab1:function ab1(a){this.a=a}, +ab2:function ab2(a){this.a=a}, +ab3:function ab3(a){this.a=a}, +ab4:function ab4(a){this.a=a}, +ab5:function ab5(a){this.a=a}, +ab6:function ab6(a){this.a=a}, +ab7:function ab7(a){this.a=a}, +ab8:function ab8(a){this.a=a}, +ab9:function ab9(a){this.a=a}, +aba:function aba(a){this.a=a}, +abb:function abb(a){this.a=a}, +abc:function abc(a){this.a=a}, +P7:function P7(a){this.a=a}, +abd:function abd(a){this.a=a}, +abe:function abe(a){this.a=a}, +P8:function P8(a){this.a=a}, +abf:function abf(a){this.a=a}, +abg:function abg(a){this.a=a}, +abh:function abh(a){this.a=a}, +abi:function abi(a){this.a=a}, +abj:function abj(a){this.a=a}, +abk:function abk(a){this.a=a}, +abl:function abl(a){this.a=a}, +abm:function abm(a){this.a=a}, +P9:function P9(a){this.a=a}, +abn:function abn(a){this.a=a}, +abo:function abo(a){this.a=a}, +abp:function abp(a){this.a=a}, +abq:function abq(a){this.a=a}, +abr:function abr(a){this.a=a}, +abs:function abs(a){this.a=a}, +abt:function abt(a){this.a=a}, +abu:function abu(a){this.a=a}, +abv:function abv(a){this.a=a}, +abw:function abw(a){this.a=a}, +abx:function abx(a){this.a=a}, +aby:function aby(a){this.a=a}, +abz:function abz(a){this.a=a}, +abA:function abA(a){this.a=a}, +abB:function abB(a){this.a=a}, +abC:function abC(a){this.a=a}, +abD:function abD(a){this.a=a}, +abE:function abE(a){this.a=a}, +abF:function abF(a){this.a=a}, +abG:function abG(a){this.a=a}, +abH:function abH(a){this.a=a}, +abI:function abI(a){this.a=a}, +abJ:function abJ(a){this.a=a}, +abK:function abK(a){this.a=a}, +abL:function abL(a){this.a=a}, +Pa:function Pa(a){this.a=a}, +abM:function abM(a){this.a=a}, +abN:function abN(a){this.a=a}, +abO:function abO(a){this.a=a}, +abP:function abP(a){this.a=a}, +abQ:function abQ(a){this.a=a}, +abR:function abR(a){this.a=a}, +abS:function abS(a){this.a=a}, +abT:function abT(a){this.a=a}, +abU:function abU(a){this.a=a}, +abV:function abV(a){this.a=a}, +abW:function abW(a){this.a=a}, +abX:function abX(a){this.a=a}, +abY:function abY(a){this.a=a}, +abZ:function abZ(a){this.a=a}, +ac_:function ac_(a){this.a=a}, +ac0:function ac0(a){this.a=a}, +ac1:function ac1(a){this.a=a}, +ac2:function ac2(a){this.a=a}, +ac3:function ac3(a){this.a=a}, +ac4:function ac4(a){this.a=a}, +ac5:function ac5(a){this.a=a}, +ac6:function ac6(a){this.a=a}, +ac7:function ac7(a){this.a=a}, +ac8:function ac8(a){this.a=a}, +ac9:function ac9(a){this.a=a}, +aca:function aca(a){this.a=a}, +acb:function acb(a){this.a=a}, +acc:function acc(a){this.a=a}, +acd:function acd(a){this.a=a}, +ace:function ace(a){this.a=a}, +acf:function acf(a){this.a=a}, +acg:function acg(a){this.a=a}, +ach:function ach(a){this.a=a}, +aci:function aci(a){this.a=a}, +acj:function acj(a){this.a=a}, +ack:function ack(a){this.a=a}, +Pb:function Pb(a){this.a=a}, +acl:function acl(a){this.a=a}, +acm:function acm(a){this.a=a}, +acn:function acn(a){this.a=a}, +aco:function aco(a){this.a=a}, +acp:function acp(a){this.a=a}, +acq:function acq(a){this.a=a}, +acr:function acr(a){this.a=a}, +Pc:function Pc(a){this.a=a}, +acs:function acs(a){this.a=a}, +act:function act(a){this.a=a}, +acu:function acu(a){this.a=a}, +acv:function acv(a){this.a=a}, +acw:function acw(a){this.a=a}, +acx:function acx(a){this.a=a}, +acy:function acy(a){this.a=a}, +acz:function acz(a){this.a=a}, +acA:function acA(a){this.a=a}, +acB:function acB(a){this.a=a}, +acC:function acC(a){this.a=a}, +acD:function acD(a){this.a=a}, +acE:function acE(a){this.a=a}, +Pd:function Pd(a){this.a=a}, +acF:function acF(a){this.a=a}, +Pe:function Pe(a){this.a=a}, +acG:function acG(a){this.a=a}, +acH:function acH(a){this.a=a}, +acI:function acI(a){this.a=a}, +a1r:function a1r(){}, +ai2:function ai2(){}, +b6g:function b6g(a){this.a=a}, +bwU(){if(!$.bv2){$.bBw().af(0,new A.bfM()) +$.bv2=!0}}, +bfM:function bfM(){}, +a1t:function a1t(){}, +anZ:function anZ(){}, +bcL:function bcL(a){this.a=a}, +a14:function a14(){}, +bDY(a){var s=A.a([],t.ha),r=a.a8() +s=new A.B1(A.F(t.o8,t.I0),s,r,a,B.al) +r.c=s +r.a=a +return s}, +we:function we(){}, +aeh:function aeh(a){var _=this +_.d=$ +_.a=null +_.b=a +_.c=null}, +YA:function YA(){}, +IJ:function IJ(){}, +B1:function B1(a,b,c,d,e){var _=this +_.cb=$ +_.bQ=a +_.bO=null +_.B=b +_.Z=null +_.ok=c +_.p1=!1 +_.d=_.c=_.b=_.a=_.ay=null +_.e=$ +_.f=d +_.r=null +_.w=e +_.z=_.y=null +_.Q=!1 +_.as=!0 +_.ax=_.at=!1}, +awu:function awu(a,b,c){this.a=a +this.b=b +this.c=c}, +awt:function awt(a,b){this.a=a +this.b=b}, +aMI(a,b){var s,r=t.F9 +if(b)s=a.ae(r) +else{r=a.oc(r) +if(r==null)r=null +else{r=r.f +r.toString}t.MQ.a(r) +s=r}if(s==null)throw A.c(A.R("No ProviderScope found")) +return s.f}, +Ms:function Ms(a,b,c){this.d=a +this.f=b +this.a=c}, +a6A:function a6A(a){var _=this +_.d=$ +_.e=null +_.f=!1 +_.a=null +_.b=a +_.c=null}, +EZ:function EZ(a,b,c){this.f=a +this.b=b +this.a=c}, +U7:function U7(a,b,c){var _=this +_.ak=null +_.ah=!0 +_.aV=a +_.d=_.c=_.b=_.a=_.ay=null +_.e=$ +_.f=b +_.r=null +_.w=c +_.z=_.y=null +_.Q=!1 +_.as=!0 +_.ax=_.at=!1}, +bcm:function bcm(a){this.a=a}, +a73:function a73(){}, +aOH:function aOH(a){this.a=a}, +aLL:function aLL(a){this.a=a}, +OR:function OR(a,b){this.a=a +this.b=b}, +aB6:function aB6(a){var _=this +_.b=_.a=null +_.c=a +_.e=_.d=null}, +aB8:function aB8(a,b){this.a=a +this.b=b}, +aB7:function aB7(a){this.a=a}, +aB9:function aB9(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +an7:function an7(a,b,c){this.a=a +this.b=b +this.c=c}, +U0:function U0(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.a=f}, +aai:function aai(a,b,c){var _=this +_.d=null +_.e=$ +_.f=null +_.f9$=a +_.c4$=b +_.a=null +_.b=c +_.c=null}, +aYe:function aYe(a){this.a=a}, +aYd:function aYd(a){this.a=a}, +U1:function U1(){}, +a16:function a16(){}, +Kl:function Kl(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +cQ:function cQ(a,b,c){this.b=a +this.a=b +this.$ti=c}, +oe:function oe(a,b,c){this.c=a +this.a=b +this.$ti=c}, +aCO:function aCO(){}, +bJt(a){A.bGU(new A.es(a.gaO8(),t.n0)) +return A.aY(t.Bt)}, +brK(a,b,c,d,e,f,g){var s=A.bqV(B.E,null,c,e,A.bx2(),null,a,null,b,!1,f,g) +if(d!=null)return A.bpX(s,d) +else return s}, +a7O:function a7O(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 +_.Q=_.z=null}, +aQ8:function aQ8(a,b,c){this.a=a +this.b=b +this.c=c}, +aPY:function aPY(a){this.a=a}, +aQ_:function aQ_(){}, +aQ0:function aQ0(){}, +aQ1:function aQ1(){}, +aQ2:function aQ2(){}, +aQ3:function aQ3(a,b){this.a=a +this.b=b}, +aPZ:function aPZ(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aQ7:function aQ7(a,b){this.a=a +this.b=b}, +aPX:function aPX(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aQ4:function aQ4(){}, +aQ5:function aQ5(){}, +aQ6:function aQ6(){}, +aiW:function aiW(a,b){this.a=a +this.b=b}, +b7x:function b7x(){}, +aQ9:function aQ9(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aQc:function aQc(a,b,c){this.a=a +this.b=b +this.c=c}, +aQd:function aQd(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +aQe:function aQe(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +aQb:function aQb(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aQa:function aQa(){}, +bpR(a,b,c){var s +if(a<0)return new A.ct(!0,t.d9) +s=A.bpR(a-1,b,c) +return s}, +btT(a,b){return new A.b7e(a,a.a.length-1,b)}, +Kd:function Kd(a,b,c,d){var _=this +_.a=$ +_.b=a +_.c=b +_.d=c +_.ak$=0 +_.ah$=d +_.aT$=_.bG$=0 +_.bK$=!1}, +aDY:function aDY(){}, +aDZ:function aDZ(a,b){this.a=a +this.b=b}, +b7e:function b7e(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.d=$}, +agw:function agw(){}, +LF:function LF(a,b){this.a=a +this.b=b}, +n9:function n9(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.$ti=e}, +Kc:function Kc(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.ak$=0 +_.ah$=d +_.aT$=_.bG$=0 +_.bK$=!1}, +agu:function agu(){}, +agv:function agv(){}, +bVi(a){var s=$.bvR +if(s!=null)s.aQ(0) +$.nN=!0 +$.bvR=$.mx().a1l().B0(new A.bgl())}, +bgl:function bgl(){}, +bJv(a,b,c,d,e){var s,r,q,p,o,n +if(e instanceof A.m5)return new A.fU(e,d,new A.bP(B.f.j(A.cU(e)),t.O)) +else if(e instanceof A.ki){s=e.y +s===$&&A.b() +r=s.aLg(0,d) +if(r==null)return null +q=A.bSi(e.x,r) +for(s=q.gdW(q),s=s.gaj(s),p=J.cn(c);s.u();){o=s.gH(s) +n=o.a +o=o.b +p.p(c,n,A.lv(o,0,o.length,B.O,!1))}s=e.d +return new A.fU(e,A.aq5(a,A.bxc(s,q)),new A.bP(A.aq5(b,s),t.O))}return null}, +biR(a,b,c){return new A.i_(b,a,A.bq7(b),A.bq8(b),c)}, +bq7(a){var s=null +if(a.e!=null)return A.bpQ(new A.aFL(),s,s,s,"error",s,B.b1) +return B.b.ga1(a.a).a}, +bq8(a){if(a.e!=null)return a.c.j(0) +return B.b.ga1(a.a).b}, +bJu(a,b,c,d,e){return new A.eq(c,d,e,b,a,A.N9(c))}, +N9(a){var s,r,q,p,o,n=new A.cV("") +for(s=J.lC(a,new A.aQh()),r=J.ao(s.a),s=new A.jc(r,s.b,s.$ti.h("jc<1>")),q=!1;s.u();){p=r.gH(r).a +if(p instanceof A.ki){if(q)n.a+="/" +o=p.d +n.a+=o +q=q||o!=="/"}}s=n.a +return s.charCodeAt(0)==0?s:s}, +fU:function fU(a,b,c){this.a=a +this.b=b +this.c=c}, +i_:function i_(a,b,c,d,e){var _=this +_.d=a +_.e=b +_.a=c +_.b=d +_.c=e}, +aFL:function aFL(){}, +eq:function eq(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +aQh:function aQh(){}, +aQj:function aQj(){}, +aQk:function aQk(a){this.a=a}, +aQl:function aQl(){}, +aQi:function aQi(){}, +a7R:function a7R(a,b){this.a=a +this.b=b}, +akX:function akX(a){this.a=a}, +b9J:function b9J(a){this.a=a}, +akW:function akW(a){this.a=a}, +BC:function BC(a,b){this.c=a +this.a=b}, +aAK:function aAK(a){this.a=a}, +PV:function PV(a,b,c){this.c=a +this.d=b +this.a=c}, +adL:function adL(a){var _=this +_.d=$ +_.a=null +_.b=a +_.c=null}, +bpO(a){return new A.a1v(a)}, +bpP(a){return new A.BU(a)}, +a1v:function a1v(a){this.a=a}, +BU:function BU(a){this.a=a}, +tO:function tO(a,b,c){this.f=a +this.b=b +this.a=c}, +bU1(a,b,c,d,e){return new A.jt(b,c,e,d,a,t.gF)}, +B5:function B5(a,b){this.c=a +this.a=b}, +awV:function awV(a){this.a=a}, +bEm(a,b,c,d,e,f,g,h,i){return new A.io(b,g,f,h,c,e,d,a,i.h("io<0>"))}, +bqZ(a,b,c,d,e,f){return new A.oz(b,B.F,B.F,A.aq6(),c,e,d,a,f.h("oz<0>"))}, +bIb(a,b,c,d){return d}, +io:function io(a,b,c,d,e,f,g,h,i){var _=this +_.r=a +_.w=b +_.x=c +_.ay=d +_.c=e +_.d=f +_.a=g +_.b=h +_.$ti=i}, +Qv:function Qv(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q){var _=this +_.cb=a +_.bQ=b +_.fr=c +_.fx=d +_.fy=!1 +_.id=_.go=null +_.k1=e +_.k2=f +_.k3=g +_.k4=h +_.ok=$ +_.p1=null +_.p2=$ +_.hP$=i +_.mO$=j +_.y=k +_.z=null +_.Q=!1 +_.at=_.as=null +_.ax=l +_.ay=!0 +_.CW=_.ch=null +_.e=m +_.a=null +_.b=n +_.c=o +_.d=p +_.$ti=q}, +oz:function oz(a,b,c,d,e,f,g,h,i){var _=this +_.r=a +_.w=b +_.x=c +_.ay=d +_.c=e +_.d=f +_.a=g +_.b=h +_.$ti=i}, +bU2(a,b,c,d,e){return new A.mW(b,c,e,d,a,t.sS)}, +CK:function CK(a,b){this.c=a +this.a=b}, +aIv:function aIv(a){this.a=a}, +aDU:function aDU(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aDV:function aDV(a,b){this.a=a +this.b=b}, +aDW:function aDW(a,b,c){this.a=a +this.b=b +this.c=c}, +bxd(a,b){var s,r,q,p,o,n,m,l,k +for(s=$.bmI().rT(0,a),s=new A.r8(s.a,s.b,s.c),r=t.Qz,q=0,p="^";s.u();){o=s.d +n=(o==null?r.a(o):o).b +m=n.index +if(m>q)p+=A.aqh(B.c.U(a,q,m)) +l=n[1] +l.toString +k=n[2] +p+=k!=null?A.bOQ(k,l):"(?<"+l+">[^/]+)" +b.push(l) +q=m+n[0].length}s=q"+s+")"}, +bxc(a,b){var s,r,q,p,o,n,m,l +for(s=$.bmI().rT(0,a),s=new A.r8(s.a,s.b,s.c),r=t.Qz,q=0,p="";s.u();p=l){o=s.d +n=(o==null?r.a(o):o).b +m=n.index +if(m>q)p+=B.c.U(a,q,m) +l=n[1] +l.toString +l=p+A.h(b.i(0,l)) +q=m+n[0].length}s=q")),q=A.aT(12,s,!1,t.gJ),p=A.aT(12,0,!1,t.S) +return new A.a2o(a,b,new A.a22(new A.vj(s,s,q,p,t.C2),B.fZ,c,t.nT),r,d.h("a2o<0>"))}, +a2o:function a2o(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=0 +_.f=-1 +_.$ti=e}, +Cr:function Cr(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=$ +_.f=!0 +_.$ti=e}, +aEM:function aEM(a,b,c,d){var _=this +_.b=a +_.c=b +_.d=null +_.e=c +_.f=null +_.a=d}, +a1G:function a1G(){}, +C0:function C0(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.e=_.d=null +_.r=_.f=!1 +_.$ti=d}, +Rf:function Rf(){}, +Rg:function Rg(){}, +Rh:function Rh(){}, +N3:function N3(a,b,c){this.a=a +this.b=b +this.$ti=c}, +b7i:function b7i(){}, +aYY:function aYY(){}, +a0_:function a0_(){}, +a22:function a22(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=1 +_.e=0 +_.$ti=d}, +vj:function vj(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.$ti=e}, +ah6:function ah6(){}, +ahb:function ahb(a,b){this.a=a +this.$ti=b}, +RE:function RE(a,b){this.a=a +this.$ti=b}, +bMC(a){var s=A.a([],t.ha),r=a.a8() +s=new A.agA(null,new A.jF(t.n_),new A.jF(t.gL),null,!1,null,!1,!1,A.F(t.o8,t.I0),s,r,a,B.al) +r.c=s +r.a=a +return s}, +bcV:function bcV(){}, +a1I:function a1I(){}, +agA:function agA(a,b,c,d,e,f,g,h,i,j,k,l,m){var _=this +_.j3$=a +_.uV$=b +_.ET$=c +_.oI$=d +_.oJ$=e +_.x4$=f +_.aHL$=g +_.aHM$=h +_.cb=$ +_.bQ=i +_.bO=null +_.B=j +_.Z=null +_.ok=k +_.p1=!1 +_.d=_.c=_.b=_.a=_.ay=null +_.e=$ +_.f=l +_.r=null +_.w=m +_.z=_.y=null +_.Q=!1 +_.as=!0 +_.ax=_.at=!1}, +aow:function aow(){}, +bSE(a){return A.bel(new A.bfv(a,null),t.Wd)}, +bel(a,b){return A.bQs(a,b,b)}, +bQs(a,b,c){var s=0,r=A.y(c),q,p=2,o,n=[],m,l +var $async$bel=A.u(function(d,e){if(d===1){o=e +s=p}while(true)switch(s){case 0:A.bxC() +m=new A.Ib(A.aY(t.Gf)) +p=3 +s=6 +return A.t(a.$1(m),$async$bel) +case 6:l=e +q=l +n=[1] +s=4 +break +n.push(5) +s=4 +break +case 3:n=[2] +case 4:p=2 +J.Hr(m) +s=n.pop() +break +case 5:case 1:return A.w(q,r) +case 2:return A.v(o,r)}}) +return A.x($async$bel,r)}, +bfv:function bfv(a,b){this.a=a +this.b=b}, +Xr:function Xr(){}, +Xs:function Xs(){}, +asU:function asU(){}, +asV:function asV(){}, +asW:function asW(){}, +Ib:function Ib(a){this.a=a +this.c=!1}, +atI:function atI(a,b,c){this.a=a +this.b=b +this.c=c}, +atJ:function atJ(a,b){this.a=a +this.b=b}, +AC:function AC(a){this.a=a}, +au7:function au7(a){this.a=a}, +bDJ(a,b){return new A.ID(a,b)}, +ID:function ID(a,b){this.a=a +this.b=b}, +brI(a,b){var s=new Uint8Array(0),r=$.byd() +if(!r.b.test(a))A.q(A.eR(a,"method","Not a valid method")) +r=t.N +return new A.aPH(B.O,s,a,b,A.l9(new A.asU(),new A.asV(),r,r))}, +aPH:function aPH(a,b,c,d,e){var _=this +_.x=a +_.y=b +_.a=c +_.b=d +_.r=e +_.w=!1}, +aPI(a){var s=0,r=A.y(t.Wd),q,p,o,n,m,l,k,j +var $async$aPI=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:s=3 +return A.t(a.w.acV(),$async$aPI) +case 3:p=c +o=a.b +n=a.a +m=a.e +l=a.c +k=A.bW4(p) +j=p.length +k=new A.DH(k,n,o,l,j,m,!1,!0) +k.Zx(o,j,m,!1,!0,l,n) +q=k +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$aPI,r)}, +bOo(a){var s=a.i(0,"content-type") +if(s!=null)return A.bqK(s) +return A.bje("application","octet-stream",null)}, +DH:function DH(a,b,c,d,e,f,g,h){var _=this +_.w=a +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f +_.f=g +_.r=h}, +Er:function Er(a,b,c,d,e,f,g,h){var _=this +_.w=a +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f +_.f=g +_.r=h}, +bDu(a,b){var s=new A.Ij(new A.auH(),A.F(t.N,b.h("aU")),b.h("Ij<0>")) +s.I(0,a) +return s}, +Ij:function Ij(a,b,c){this.a=a +this.c=b +this.$ti=c}, +auH:function auH(){}, +bqK(a){return A.bWe("media type",a,new A.aIL(a))}, +bje(a,b,c){var s=t.N +s=c==null?A.F(s,s):A.bDu(c,s) +return new A.Ln(a.toLowerCase(),b.toLowerCase(),new A.md(s,t.G5))}, +Ln:function Ln(a,b,c){this.a=a +this.b=b +this.c=c}, +aIL:function aIL(a){this.a=a}, +aIN:function aIN(a){this.a=a}, +aIM:function aIM(){}, +bS3(a){var s +a.a9b($.bAZ(),"quoted string") +s=a.gAX().i(0,0) +return A.blZ(B.c.U(s,1,s.length-1),$.bAY(),new A.bf0(),null)}, +bf0:function bf0(){}, +bjq(a,b,c,d,e,f){return new A.a5Q(c,a,b,d,e,f.h("a5Q<0>"))}, +a5Q:function a5Q(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.d=c +_.e=d +_.f=e +_.$ti=f}, +qw:function qw(a,b,c,d,e,f,g){var _=this +_.w=a +_.x=b +_.y=c +_.z=d +_.a=e +_.ak$=0 +_.ah$=f +_.aT$=_.bG$=0 +_.bK$=!1 +_.$ti=g}, +aLh:function aLh(a,b){this.a=a +this.b=b}, +aLg:function aLg(a,b){this.a=a +this.b=b}, +j7:function j7(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.$ti=d}, +le:function le(a,b){this.a=a +this.b=b}, +bnX(a,b,c,d,e,f,g){var s=d==null,r=s?e:new A.arG(f,d,e) +s=s?f:f+1 +return new A.WY(r,s,!0,!0,!0,g==null?new A.arH():g,null)}, +WY:function WY(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.r=f +_.w=g}, +arG:function arG(a,b,c){this.a=a +this.b=b +this.c=c}, +arH:function arH(){}, +KT:function KT(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +RI:function RI(a){this.a=null +this.b=a +this.c=null}, +K1:function K1(a,b){this.c=a +this.a=b}, +CU:function CU(a,b){this.c=a +this.a=b}, +CV:function CV(a){this.a=a}, +br8(a,b,c,d,e,f,g,h,i){return new A.D3(f,a,e,c,b,!1,d,null,h.h("@<0>").S(i).h("D3<1,2>"))}, +bdx(a){var s=a.a.a +s=s==null?null:s.length +return s==null?0:s}, +aL6:function aL6(a,b){this.a=a +this.b=b}, +D3:function D3(a,b,c,d,e,f,g,h,i){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.x=g +_.a=h +_.$ti=i}, +Sg:function Sg(a,b){var _=this +_.d=!1 +_.a=null +_.b=a +_.c=null +_.$ti=b}, +b7B:function b7B(a){this.a=a}, +b7C:function b7C(){}, +b7H:function b7H(a){this.a=a}, +b7I:function b7I(a){this.a=a}, +b7D:function b7D(a,b){this.a=a +this.b=b}, +b7E:function b7E(a,b){this.a=a +this.b=b}, +b7F:function b7F(a,b){this.a=a +this.b=b}, +b7G:function b7G(a){this.a=a}, +b7A:function b7A(a){this.a=a}, +FR:function FR(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +LZ:function LZ(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1){var _=this +_.p3=a +_.p4=b +_.R8=c +_.cx=d +_.c=e +_.d=f +_.e=g +_.f=h +_.r=i +_.w=j +_.x=k +_.y=l +_.z=m +_.Q=n +_.as=o +_.at=p +_.ax=q +_.ay=r +_.ch=s +_.a=a0 +_.$ti=a1}, +br9(a,b,c,d){var s=null,r=!0 +r=r?B.dp:s +return new A.M_(b,a,s,B.R,!1,s,s,r,s,!1,s,0,s,s,B.C,B.ex,s,B.E,s,c.h("@<0>").S(d).h("M_<1,2>"))}, +M_:function M_(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0){var _=this +_.p3=a +_.p4=b +_.cx=c +_.c=d +_.d=e +_.e=f +_.f=g +_.r=h +_.w=i +_.x=j +_.y=k +_.z=l +_.Q=m +_.as=n +_.at=o +_.ax=p +_.ay=q +_.ch=r +_.a=s +_.$ti=a0}, +bkf(a,b,c,d,e,f,g,h){return new A.v3(e,f,h,!0,d,!0,!0,!0,null)}, +M0:function M0(a,b,c,d,e,f,g,h,i,j,k,l){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.x=g +_.y=h +_.z=i +_.Q=j +_.a=k +_.$ti=l}, +aLa:function aLa(a){this.a=a}, +aL9:function aL9(a){this.a=a}, +aLc:function aLc(a){this.a=a}, +aL7:function aL7(a){this.a=a}, +aLb:function aLb(a){this.a=a}, +aL8:function aL8(a){this.a=a}, +v3:function v3(a,b,c,d,e,f,g,h,i){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.x=g +_.y=h +_.a=i}, +M1:function M1(a,b,c,d,e,f,g,h,i,j,k){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.y=g +_.z=h +_.Q=i +_.a=j +_.$ti=k}, +aLd:function aLd(a){this.a=a}, +aLf:function aLf(a){this.a=a}, +aLe:function aLe(a){this.a=a}, +aW(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5){return new A.Ba(i,e,d,j,q,h,p,m,s,a3,a1,o,a0,r,n,l,a,a5)}, +Ba:function Ba(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){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 +_.ax=n +_.ay=o +_.ch=p +_.CW=q +_.fy=r}, +bGR(a,b,c,d,e,f,g,h){var s,r +A.bf(f,"other") +A.bf(a,"howMany") +s=B.f.an(a) +if(s===a)a=s +if(a===0&&h!=null)return h +if(a===1&&e!=null)return e +if(a===2&&g!=null)return g +switch(A.bGQ(c,a,null).$0().a){case 0:return h==null?f:h +case 1:return e==null?f:e +case 2:r=g==null?b:g +return r==null?f:r +case 3:return b==null?f:b +case 4:return d==null?f:d +case 5:return f +default:throw A.c(A.eR(a,"howMany","Invalid plural argument"))}}, +bGQ(a,b,c){var s,r,q,p,o +$.et=b +s=$.bQ2=c +$.eP=B.f.bi(b) +r=""+b +q=B.c.eX(r,".") +s=q===-1?0:r.length-q-1 +s=Math.min(s,3) +$.fi=s +p=A.fY(Math.pow(10,s)) +s=B.f.aH(B.f.eA(b*p),p) +$.rB=s +A.bQr($.fi,s) +o=A.lz(a,A.bUm(),new A.aG9()) +if($.bqd==o){s=$.bqe +s.toString +return s}else{s=$.bne().i(0,o) +$.bqe=s +$.bqd=o +s.toString +return s}}, +aG9:function aG9(){}, +aF(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){return new A.uc(i,c,f,k,p,n,h,e,m,g,j,b,d)}, +uc:function uc(a,b,c,d,e,f,g,h,i,j,k,l,m){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 +_.ay=m}, +boE(a,b){var s=A.lz(b,A.pw(),null) +s.toString +s=new A.h4(new A.kW(),s) +s.m3(a) +return s}, +bEo(a){var s=A.lz(a,A.pw(),null) +s.toString +s=new A.h4(new A.kW(),s) +s.m3("d") +return s}, +bi4(a){var s=A.lz(a,A.pw(),null) +s.toString +s=new A.h4(new A.kW(),s) +s.m3("MMMd") +return s}, +ax6(a){var s=A.lz(a,A.pw(),null) +s.toString +s=new A.h4(new A.kW(),s) +s.m3("MMMEd") +return s}, +ax7(a){var s=A.lz(a,A.pw(),null) +s.toString +s=new A.h4(new A.kW(),s) +s.m3("y") +return s}, +bi7(a){var s=A.lz(a,A.pw(),null) +s.toString +s=new A.h4(new A.kW(),s) +s.m3("yMd") +return s}, +a_I(a){var s=A.lz(a,A.pw(),null) +s.toString +s=new A.h4(new A.kW(),s) +s.m3("yMMMd") +return s}, +bi5(a){var s=A.lz(a,A.pw(),null) +s.toString +s=new A.h4(new A.kW(),s) +s.m3("yMMMM") +return s}, +bi6(a){var s=A.lz(a,A.pw(),null) +s.toString +s=new A.h4(new A.kW(),s) +s.m3("yMMMMEEEEd") +return s}, +bEp(a){var s=A.lz(a,A.pw(),null) +s.toString +s=new A.h4(new A.kW(),s) +s.m3("m") +return s}, +bEq(a){var s=A.lz(a,A.pw(),null) +s.toString +s=new A.h4(new A.kW(),s) +s.m3("s") +return s}, +a_J(a){return J.jn($.Wh(),a)}, +bEr(){return A.a([new A.ax8(),new A.ax9(),new A.axa()],t.xf)}, +bMi(a){var s,r +if(a==="''")return"'" +else{s=B.c.U(a,1,a.length-1) +r=$.bzM() +return A.eC(s,r,"'")}}, +h4:function h4(a,b){var _=this +_.a=a +_.c=b +_.x=_.w=_.f=_.e=_.d=null}, +kW:function kW(){}, +ax8:function ax8(){}, +ax9:function ax9(){}, +axa:function axa(){}, +v9:function v9(){}, +FC:function FC(a,b){this.a=a +this.b=b}, +FE:function FE(a,b,c){this.d=a +this.a=b +this.b=c}, +FD:function FD(a,b){this.a=a +this.b=b}, +bjn(a,b){return A.br_(b,new A.aKL(a))}, +aKJ(a){return A.br_(a,new A.aKK())}, +br_(a2,a3){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1=A.lz(a2,A.bTZ(),null) +a1.toString +s=t.zr.a($.bnd().i(0,a1)) +r=$.bh3() +q=s.ay +p=a3.$1(s) +o=s.r +if(p==null)o=new A.a5z(o,null) +else{o=new A.a5z(o,null) +new A.aKI(s,new A.aWA(p),!1,q,q,o).awL()}n=o.b +m=o.a +l=o.d +k=o.c +j=o.e +i=B.e.bi(Math.log(j)/$.bAV()) +h=o.ax +g=o.f +f=o.r +e=o.w +d=o.x +c=o.y +b=o.z +a=o.Q +a0=o.at +return new A.aKH(m,n,k,l,b,a,o.as,a0,h,!1,f,e,d,c,g,j,i,p,a1,s,o.ay,new A.cV(""),s.e.charCodeAt(0)-r)}, +bjo(a){return $.bnd().ao(0,a)}, +br0(a){var s +a.toString +s=Math.abs(a) +if(s<10)return 1 +if(s<100)return 2 +if(s<1000)return 3 +if(s<1e4)return 4 +if(s<1e5)return 5 +if(s<1e6)return 6 +if(s<1e7)return 7 +if(s<1e8)return 8 +if(s<1e9)return 9 +if(s<1e10)return 10 +if(s<1e11)return 11 +if(s<1e12)return 12 +if(s<1e13)return 13 +if(s<1e14)return 14 +if(s<1e15)return 15 +if(s<1e16)return 16 +if(s<1e17)return 17 +if(s<1e18)return 18 +return 19}, +aKH:function aKH(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3){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 +_.at=m +_.ay=n +_.ch=o +_.dx=p +_.dy=q +_.fr=r +_.fx=s +_.fy=a0 +_.k1=a1 +_.k2=a2 +_.k4=a3}, +aKL:function aKL(a){this.a=a}, +aKK:function aKK(){}, +aKM:function aKM(a,b,c){this.a=a +this.b=b +this.c=c}, +a5z:function a5z(a,b){var _=this +_.a=a +_.d=_.c=_.b="" +_.e=1 +_.f=0 +_.r=40 +_.w=1 +_.x=3 +_.y=0 +_.Q=_.z=3 +_.ax=_.at=_.as=!1 +_.ay=b}, +aKI:function aKI(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.w=_.r=!1 +_.x=-1 +_.Q=_.z=_.y=0 +_.as=-1}, +aWA:function aWA(a){this.a=a +this.b=0}, +bsQ(a,b,c){return new A.F3(a,b,A.a([],t.s),c.h("F3<0>"))}, +bvM(a){var s,r=a.length +if(r<3)return-1 +s=a[2] +if(s==="-"||s==="_")return 2 +if(r<4)return-1 +r=a[3] +if(r==="-"||r==="_")return 3 +return-1}, +iL(a){var s,r,q +if(a==="C")return"en_ISO" +if(a.length<5)return a +s=A.bvM(a) +if(s===-1)return a +r=B.c.U(a,0,s) +q=B.c.cv(a,s+1) +if(q.length<=3)q=q.toUpperCase() +return r+"_"+q}, +lz(a,b,c){var s,r,q +if(a==null){if(A.bwp()==null)$.bv5="en_US" +s=A.bwp() +s.toString +return A.lz(s,b,c)}if(b.$1(a))return a +for(s=[A.iL(a),A.bVk(a),"fallback"],r=0;r<3;++r){q=s[r] +if(b.$1(q))return q}return(c==null?A.bTa():c).$1(a)}, +bQg(a){throw A.c(A.bU('Invalid locale "'+a+'"',null))}, +bVk(a){var s,r +if(a==="invalid")return"in" +s=a.length +if(s<2)return a +r=A.bvM(a) +if(r===-1)if(s<4)return a.toLowerCase() +else return a +return B.c.U(a,0,r).toLowerCase()}, +F3:function F3(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.$ti=d}, +a2P:function a2P(a){this.a=a}, +bOF(){return B.ao}, +bQr(a,b){if(b===0){$.bee=0 +return}for(;B.f.aH(b,10)===0;){b=B.e.eA(b/10);--a}$.bee=b}, +bNV(){if($.eP===1&&$.fi===0)return B.ar +return B.ao}, +bNN(){if($.et===1)return B.ar +return B.ao}, +bNP(){if($.eP===0||$.et===1)return B.ar +return B.ao}, +bNQ(){var s,r,q=$.et +if(q===0)return B.o6 +if(q===1)return B.ar +if(q===2)return B.ep +if(B.b.n(A.a([3,4,5,6,7,8,9,10],t.t),B.f.aH($.et,100)))return B.bX +s=J.om(89,t.S) +for(r=0;r<89;++r)s[r]=r+11 +if(B.b.n(s,B.f.aH($.et,100)))return B.bQ +return B.ao}, +bNY(){var s,r=$.et,q=B.f.aH(r,10) +if(q===1&&B.f.aH(r,100)!==11)return B.ar +if(q===2||q===3||q===4){s=B.f.aH(r,100) +s=!(s===12||s===13||s===14)}else s=!1 +if(s)return B.bX +if(q!==0)if(q!==5)if(q!==6)if(q!==7)if(q!==8)if(q!==9){r=B.f.aH(r,100) +r=r===11||r===12||r===13||r===14}else r=!0 +else r=!0 +else r=!0 +else r=!0 +else r=!0 +else r=!0 +if(r)return B.bQ +return B.ao}, +bNZ(){var s,r=$.et,q=B.f.aH(r,10) +if(q===1){s=B.f.aH(r,100) +s=!(s===11||s===71||s===91)}else s=!1 +if(s)return B.ar +if(q===2){r=B.f.aH(r,100) +r=!(r===12||r===72||r===92)}else r=!1 +if(r)return B.ep +if(q===3||q===4||q===9){r=t.t +r=!(B.b.n(A.a([10,11,12,13,14,15,16,17,18,19],r),B.f.aH($.et,100))||B.b.n(A.a([70,71,72,73,74,75,76,77,78,79],r),B.f.aH($.et,100))||B.b.n(A.a([90,91,92,93,94,95,96,97,98,99],r),B.f.aH($.et,100)))}else r=!1 +if(r)return B.bX +r=$.et +if(r!==0&&B.f.aH(r,1e6)===0)return B.bQ +return B.ao}, +bO_(){var s,r=$.fi===0 +if(r){s=$.eP +s=B.f.aH(s,10)===1&&B.f.aH(s,100)!==11}else s=!1 +if(!s){s=$.rB +s=B.f.aH(s,10)===1&&B.f.aH(s,100)!==11}else s=!0 +if(s)return B.ar +if(r){r=$.eP +s=B.f.aH(r,10) +if(s===2||s===3||s===4){r=B.f.aH(r,100) +r=!(r===12||r===13||r===14)}else r=!1}else r=!1 +if(!r){r=$.rB +s=B.f.aH(r,10) +if(s===2||s===3||s===4){r=B.f.aH(r,100) +r=!(r===12||r===13||r===14)}else r=!1}else r=!0 +if(r)return B.bX +return B.ao}, +bO3(){var s=$.eP +if(s===1&&$.fi===0)return B.ar +if(s!==0&&B.f.aH(s,1e6)===0&&$.fi===0)return B.bQ +return B.ao}, +bOt(){var s=$.eP +if(s===1&&$.fi===0)return B.ar +if((s===2||s===3||s===4)&&$.fi===0)return B.bX +if($.fi!==0)return B.bQ +return B.ao}, +bOu(){var s=$.et +if(s===0)return B.o6 +if(s===1)return B.ar +if(s===2)return B.ep +if(s===3)return B.bX +if(s===6)return B.bQ +return B.ao}, +bOv(){if($.et!==1)if($.bee!==0){var s=$.eP +s=s===0||s===1}else s=!1 +else s=!0 +if(s)return B.ar +return B.ao}, +bOP(){if($.et===1)return B.ar +var s=$.eP +if(s!==0&&B.f.aH(s,1e6)===0&&$.fi===0)return B.bQ +return B.ao}, +bOc(){var s,r=$.fi===0 +if(r){s=$.eP +s=s===1||s===2||s===3}else s=!1 +if(!s){if(r){s=B.f.aH($.eP,10) +s=!(s===4||s===6||s===9)}else s=!1 +if(!s)if(!r){r=B.f.aH($.rB,10) +r=!(r===4||r===6||r===9)}else r=!1 +else r=!0}else r=!0 +if(r)return B.ar +return B.ao}, +bP_(){var s=$.eP,r=s!==0 +if(!r||s===1)return B.ar +if(r&&B.f.aH(s,1e6)===0&&$.fi===0)return B.bQ +return B.ao}, +bP2(){var s=$.et +if(s===1)return B.ar +if(s===2)return B.ep +if(s===3||s===4||s===5||s===6)return B.bX +if(s===7||s===8||s===9||s===10)return B.bQ +return B.ao}, +bPj(){var s,r=$.eP +if(!(r===1&&$.fi===0))s=r===0&&$.fi!==0 +else s=!0 +if(s)return B.ar +if(r===2&&$.fi===0)return B.ep +return B.ao}, +bOW(){var s=$.eP +if(s===0||s===1)return B.ar +return B.ao}, +bPD(){var s,r=$.bee +if(r===0){s=$.eP +s=B.f.aH(s,10)===1&&B.f.aH(s,100)!==11}else s=!1 +if(!s)r=B.f.aH(r,10)===1&&B.f.aH(r,100)!==11 +else r=!0 +if(r)return B.ar +return B.ao}, +bNO(){var s=$.et +if(s===0||s===1)return B.ar +return B.ao}, +bPJ(){if(B.f.aH($.et,10)===1&&!B.b.n(A.a([11,12,13,14,15,16,17,18,19],t.t),B.f.aH($.et,100)))return B.ar +var s=t.t +if(B.b.n(A.a([2,3,4,5,6,7,8,9],s),B.f.aH($.et,10))&&!B.b.n(A.a([11,12,13,14,15,16,17,18,19],s),B.f.aH($.et,100)))return B.bX +if($.rB!==0)return B.bQ +return B.ao}, +bPK(){var s,r +if(B.f.aH($.et,10)!==0){s=t.t +if(!B.b.n(A.a([11,12,13,14,15,16,17,18,19],s),B.f.aH($.et,100)))s=$.fi===2&&B.b.n(A.a([11,12,13,14,15,16,17,18,19],s),B.f.aH($.rB,100)) +else s=!0}else s=!0 +if(s)return B.o6 +s=$.et +if(!(B.f.aH(s,10)===1&&B.f.aH(s,100)!==11)){s=$.fi===2 +if(s){r=$.rB +r=B.f.aH(r,10)===1&&B.f.aH(r,100)!==11}else r=!1 +if(!r)s=!s&&B.f.aH($.rB,10)===1 +else s=!0}else s=!0 +if(s)return B.ar +return B.ao}, +bPQ(){if($.fi===0){var s=$.eP +s=B.f.aH(s,10)===1&&B.f.aH(s,100)!==11}else s=!1 +if(!s){s=$.rB +s=B.f.aH(s,10)===1&&B.f.aH(s,100)!==11}else s=!0 +if(s)return B.ar +return B.ao}, +bPT(){var s=$.et +if(s===1)return B.ar +if(s===2)return B.ep +if(s===0||B.b.n(A.a([3,4,5,6,7,8,9,10],t.t),B.f.aH($.et,100)))return B.bX +if(B.b.n(A.a([11,12,13,14,15,16,17,18,19],t.t),B.f.aH($.et,100)))return B.bQ +return B.ao}, +bQ1(){var s,r,q=$.eP,p=q===1 +if(p&&$.fi===0)return B.ar +s=$.fi===0 +if(s){r=B.f.aH(q,10) +if(r===2||r===3||r===4){r=B.f.aH(q,100) +r=!(r===12||r===13||r===14)}else r=!1}else r=!1 +if(r)return B.bX +if(s)if(!p){p=B.f.aH(q,10) +p=p===0||p===1}else p=!1 +else p=!1 +if(!p){if(s){p=B.f.aH(q,10) +p=p===5||p===6||p===7||p===8||p===9}else p=!1 +if(!p)if(s){q=B.f.aH(q,100) +q=q===12||q===13||q===14}else q=!1 +else q=!0}else q=!0 +if(q)return B.bQ +return B.ao}, +bQ3(){var s=$.eP,r=s!==0 +if(!r||s===1)return B.ar +if(r&&B.f.aH(s,1e6)===0&&$.fi===0)return B.bQ +return B.ao}, +bPR(){var s,r,q,p +if($.eP===1&&$.fi===0)return B.ar +if($.fi===0){s=$.et +if(s!==0)if(s!==1){r=J.om(19,t.S) +for(q=0;q<19;q=p){p=q+1 +r[q]=p}s=B.b.n(r,B.f.aH($.et,100))}else s=!1 +else s=!0}else s=!0 +if(s)return B.bX +return B.ao}, +bQ5(){var s,r,q=$.fi===0 +if(q){s=$.eP +s=B.f.aH(s,10)===1&&B.f.aH(s,100)!==11}else s=!1 +if(s)return B.ar +if(q){s=$.eP +r=B.f.aH(s,10) +if(r===2||r===3||r===4){s=B.f.aH(s,100) +s=!(s===12||s===13||s===14)}else s=!1}else s=!1 +if(s)return B.bX +if(!(q&&B.f.aH($.eP,10)===0)){if(q){s=B.f.aH($.eP,10) +s=s===5||s===6||s===7||s===8||s===9}else s=!1 +if(!s)if(q){q=B.f.aH($.eP,100) +q=q===11||q===12||q===13||q===14}else q=!1 +else q=!0}else q=!0 +if(q)return B.bQ +return B.ao}, +bQa(){var s=$.et +if(s!==0)if(s!==1)s=$.eP===0&&$.rB===1 +else s=!0 +else s=!0 +if(s)return B.ar +return B.ao}, +bQb(){var s,r=$.fi===0 +if(r&&B.f.aH($.eP,100)===1)return B.ar +if(r&&B.f.aH($.eP,100)===2)return B.ep +if(r){s=B.f.aH($.eP,100) +s=s===3||s===4}else s=!1 +if(s||!r)return B.bX +return B.ao}, +bTx(a){return $.bne().ao(0,a)}, +n2:function n2(a,b){this.a=a +this.b=b}, +xo:function xo(a,b){this.a=a +this.b=b}, +Cy:function Cy(a,b,c,d,e,f,g,h){var _=this +_.a=a +_.b=b +_.d=c +_.e=d +_.f=e +_.r=f +_.w=g +_.x=h}, +aHg(a){return $.bHr.cJ(0,a,new A.aHh(a))}, +Cz:function Cz(a,b,c){var _=this +_.a=a +_.b=b +_.c=null +_.d=c +_.f=null}, +aHh:function aHh(a){this.a=a}, +aKw:function aKw(){}, +aKv:function aKv(){}, +WI:function WI(a,b){this.a=a +this.b=b}, +tw:function tw(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +QU:function QU(a,b,c){var _=this +_.f=_.e=_.d=$ +_.f9$=a +_.c4$=b +_.a=null +_.b=c +_.c=null}, +b3n:function b3n(a,b){this.a=a +this.b=b}, +Vb:function Vb(){}, +LS:function LS(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.x=g +_.y=h +_.z=i +_.Q=j +_.as=k +_.at=l +_.ax=m +_.ay=n +_.ch=o +_.CW=p +_.cx=q +_.cy=r +_.db=s +_.dx=a0 +_.a=a1}, +aiL:function aiL(a){var _=this +_.d=null +_.e=$ +_.a=null +_.b=a +_.c=null}, +bq6(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,a0,a1){var s=new A.a1V(m,a1,l,k,a,a0,!1,c,d,j,n,p,r,e,q,i,h,g,f,b) +s.z=s.ap_() +return s}, +Sj:function Sj(a,b){this.a=a +this.b=b}, +a1V:function a1V(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=h +_.x=i +_.y=j +_.z=$ +_.Q=k +_.as=l +_.at=m +_.ax=n +_.ay=o +_.ch=p +_.CW=q +_.cx=r +_.cy=s +_.db=a0 +_.dy=_.dx=!1}, +aL2(){var s=0,r=A.y(t.A9),q,p,o +var $async$aL2=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:o=$.br4 +if(o!=null){q=o +s=1 +break}s=3 +return A.t($.byU().jn(0),$async$aL2) +case 3:p=b +q=$.br4=new A.xV(p.a,p.b,p.c,p.d,p.e,p.f) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$aL2,r)}, +xV:function xV(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +bNy(a){if(a.VA("chrome-extension"))return a.gfg()+"://"+a.gpJ(a) +return a.gBe(a)}, +aL1:function aL1(){}, +aJ2:function aJ2(){}, +LX:function LX(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +aL0:function aL0(){}, +bi1(a,b){if(a==null)a="." +return new A.YC(b,a)}, +beb(a){if(t.Xu.b(a))return a +throw A.c(A.eR(a,"uri","Value must be a String or a Uri"))}, +bvV(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.cV("") +o=""+(a+"(") +p.a=o +n=A.ab(b) +m=n.h("jW<1>") +l=new A.jW(b,0,s,m) +l.CB(b,0,s,n.c) +m=o+new A.ad(l,new A.bek(),m.h("ad")).cq(0,", ") +p.a=m +p.a=m+("): part "+(r-1)+" was null, but part "+r+" was not.") +throw A.c(A.bU(p.j(0),null))}}, +YC:function YC(a,b){this.a=a +this.b=b}, +awx:function awx(){}, +awy:function awy(){}, +bek:function bek(){}, +aG4:function aG4(){}, +oF(a,b){var s,r,q,p,o,n=b.aeS(a),m=b.ve(a) +if(n!=null)a=B.c.cv(a,n.length) +s=t.s +r=A.a([],s) +q=A.a([],s) +s=a.length +if(s!==0&&b.qT(a.charCodeAt(0))){q.push(a[0]) +p=1}else{q.push("") +p=0}for(o=p;o>").S(b).h("n5<1,2>"))}, +bNW(a,b){return new A.n5(a,new A.bd0(b),b.h("@>").S(b.h("U<0>")).h("n5<1,2>"))}, +bD6(a,b,c,d,e,f,g,h){return new A.fm(a,c,e,null,f,d,b,g.h("@<0>").S(h).h("fm<1,2>"))}, +bD5(a,b,c){var s=null,r=t.B +return new A.o_(s,!1,new A.cd(A.aT(0,s,!1,b.h("dT<0>?")),b.h("cd<0>")),new A.cd(A.aT(0,s,!1,c.h("dT>?")),c.h("cd>")),s,s,s,s,a,A.a([],c.h("G>>")),A.a([],r),A.a([],t._),A.a([],r),A.cx(s,s,s,t.M,t.K),b.h("@<0>").S(c).h("o_<1,2>"))}, +bpM(a,b){var s=a.gjI(),r=b.gjI() +if(s||r)return s!==r +return!0}, +bOU(a,b,c,d){var s={},r=A.b4("subscription"),q=new A.a8($.a9,d.h("a8<0>")) +s.a=null +r.b=a.h2(new A.bdA(s,d),new A.bdB(s,new A.aD(q,d.h("aD<0>")),c,d),new A.bdC(s,d)) +b.$2(q,J.bC6(r.aF()))}, +bo_(a,b,c,d,e,f,g){return new A.HT(a,c,null,null,e,d,b,f.h("@<0>").S(g).h("HT<1,2>"))}, +h2:function h2(){}, +bd1:function bd1(a,b){this.a=a +this.b=b}, +bd0:function bd0(a){this.a=a}, +pD:function pD(){}, +hO:function hO(){}, +An:function An(){}, +fm:function fm(a,b,c,d,e,f,g,h){var _=this +_.CW=_.ch=$ +_.y=a +_.d=b +_.e=c +_.f=d +_.a=e +_.b=f +_.c=g +_.$ti=h}, +o_:function o_(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){var _=this +_.dQ$=a +_.f8$=b +_.go=c +_.iy$=d +_.i8$=e +_.i9$=f +_.hN$=g +_.hO$=h +_.a=null +_.b=!1 +_.c=$ +_.d=i +_.e=$ +_.f=j +_.r=k +_.w=l +_.x=m +_.y=n +_.CW=_.ch=_.ay=_.ax=_.at=_.as=_.Q=_.z=null +_.fx=_.fr=_.dy=_.dx=_.db=_.cy=_.cx=!1 +_.fy=null +_.$ti=o}, +bY:function bY(){}, +aD3:function aD3(a,b){this.a=a +this.b=b}, +aD2:function aD2(a){this.a=a}, +aD0:function aD0(a,b){this.a=a +this.b=b}, +aD1:function aD1(a){this.a=a}, +aCZ:function aCZ(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aD_:function aD_(a,b,c){this.a=a +this.b=b +this.c=c}, +aCV:function aCV(a,b){this.a=a +this.b=b}, +aCX:function aCX(a,b){this.a=a +this.b=b}, +aCY:function aCY(a){this.a=a}, +aCW:function aCW(a){this.a=a}, +b0h:function b0h(a){this.a=a}, +b0i:function b0i(){}, +mB:function mB(){}, +eZ:function eZ(){}, +arX:function arX(a,b){this.a=a +this.b=b}, +arZ:function arZ(a,b){this.a=a +this.b=b}, +arY:function arY(a,b,c){this.a=a +this.b=b +this.c=c}, +arW:function arW(a,b,c){this.a=a +this.b=b +this.c=c}, +bdA:function bdA(a,b){this.a=a +this.b=b}, +bdC:function bdC(a,b){this.a=a +this.b=b}, +bdB:function bdB(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +bdy:function bdy(a,b){this.a=a +this.b=b}, +bdz:function bdz(a,b){this.a=a +this.b=b}, +Eq:function Eq(){}, +mG:function mG(){}, +vV:function vV(){}, +HT:function HT(a,b,c,d,e,f,g,h){var _=this +_.y=a +_.d=b +_.e=c +_.f=d +_.a=e +_.b=f +_.c=g +_.$ti=h}, +Ao:function Ao(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){var _=this +_.dQ$=a +_.f8$=b +_.go=c +_.iy$=d +_.i8$=e +_.i9$=f +_.hN$=g +_.hO$=h +_.a=null +_.b=!1 +_.c=$ +_.d=i +_.e=$ +_.f=j +_.r=k +_.w=l +_.x=m +_.y=n +_.CW=_.ch=_.ay=_.ax=_.at=_.as=_.Q=_.z=null +_.fx=_.fr=_.dy=_.dx=_.db=_.cy=_.cx=!1 +_.fy=null +_.$ti=o}, +Od:function Od(){}, +aW8:function aW8(a,b){this.a=a +this.b=b}, +aWa:function aWa(a,b){this.a=a +this.b=b}, +aW9:function aW9(a,b,c){this.a=a +this.b=b +this.c=c}, +aW7:function aW7(a,b,c){this.a=a +this.b=b +this.c=c}, +hk:function hk(){}, +PC:function PC(){}, +PD:function PD(){}, +PI:function PI(){}, +PJ:function PJ(){}, +bhJ(a,b,c,d){var s=a.fy,r=s==null?null:s.gjj() +if(r==null)a.a7(b) +else a.a7(b.Pa(d).zM(r,c))}, +dw(a,b){return A.bD3(a,b,b.h("C<0>"))}, +bD3(a,b,c){var s=0,r=A.y(c),q,p=2,o,n,m,l,k,j,i +var $async$dw=A.u(function(d,e){if(d===1){o=e +s=p}while(true)switch(s){case 0:p=4 +i=A +s=7 +return A.t(a.$0(),$async$dw) +case 7:l=i.X6(e,b) +q=l +s=1 +break +p=2 +s=6 +break +case 4:p=3 +j=o +n=A.ai(j) +m=A.aH(j) +l=A.HS(n,m,b) +q=l +s=1 +break +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.w(q,r) +case 2:return A.v(o,r)}}) +return A.x($async$dw,r)}, +X6(a,b){return new A.fL(a,!1,null,null,b.h("fL<0>"))}, +bhI(a){return new A.eY(!1,null,null,null,a.h("eY<0>"))}, +HS(a,b,c){return new A.eu(!1,!1,null,a,b,c.h("eu<0>"))}, +bD1(a){var s,r +if(a.goR()){s=a.gk(a) +return s}if(a.ghw(a)!=null){s=a.ghw(a) +s.toString +r=a.gjU() +r.toString +A.bgA(s,r)}throw A.c(A.R("Tried to call `requireValue` on an `AsyncValue` that has no value: "+a.j(0)))}, +bW(a){if(a.goR())return a.gk(a) +return null}, +bnZ(a){var s +if(a.gjI())s=(a.goR()||a.ghw(a)!=null)&&!(a instanceof A.eY) +else s=!1 +return s}, +bD0(a,b){return a.vg(0,new A.asf(b),new A.asg(b),new A.ash(b))}, +bD2(a,b,c,d){return a.vg(0,new A.asi(b,c,d),new A.asj(c,d),new A.ask(c,d))}, +bhK(a,b,c,d,e,f,g){var s,r,q +if(a.gjI()){if(A.bnZ(a))s=!0 +else{if(!a.goR())a.ghw(a) +s=!1}if(!s)return d.$0()}if(a.ghw(a)!=null)r=!a.goR()||!e +else r=!1 +if(r){r=a.ghw(a) +r.toString +q=a.gjU() +q.toString +return c.$2(r,q)}return b.$1(A.bD1(a))}, +vT(a,b,c,d,e){var s=b==null?new A.asl(d):b,r=c==null?new A.asm():c +return A.bhK(a,s,r,new A.asn(),!1,!0,!1)}, +C:function C(){}, +fL:function fL(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.$ti=e}, +eY:function eY(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.$ti=e}, +arQ:function arQ(a){this.a=a}, +arR:function arR(a){this.a=a}, +arS:function arS(a){this.a=a}, +arT:function arT(a){this.a=a}, +arU:function arU(a){this.a=a}, +arV:function arV(a){this.a=a}, +eu:function eu(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.$ti=f}, +asf:function asf(a){this.a=a}, +asg:function asg(a){this.a=a}, +ash:function ash(a){this.a=a}, +asi:function asi(a,b,c){this.a=a +this.b=b +this.c=c}, +asj:function asj(a,b){this.a=a +this.b=b}, +ask:function ask(a,b){this.a=a +this.b=b}, +asl:function asl(a){this.a=a}, +asm:function asm(){}, +asn:function asn(){}, +bIX(a,b,c){var s,r,q=null,p=A.a([],t.NK),o=t.WK,n=A.cx(q,q,q,o,o),m=A.cx(q,q,q,t.gw,t.pz),l=c==null,k=l?0:c.d+1,j=A.a([],t.BF),i=!l +if(i)B.b.I(j,c.z) +o=A.F(o,t.w4) +if(i)for(i=c.y,i=i.gdW(i),i=i.gaj(i);i.u();){s=i.gH(i) +r=s.b +if(!r.d)o.p(0,s.a,r)}l=l?q:c.e +p=new A.Dn(3,k,l==null?c:l,c,p,n,m,o,j) +p.alG(a,b,c) +return p}, +bOE(a){A.BP(a,t.H)}, +bk5(a,b){var s=null +return new A.zn(a,s,s,s,s,s,s,b.h("zn<0>"))}, +WB:function WB(){}, +WA:function WA(){}, +Am:function Am(){}, +da:function da(){}, +a2k:function a2k(){}, +rs:function rs(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=null}, +baS:function baS(a){this.a=a}, +baT:function baT(a){this.a=a}, +Dn:function Dn(a,b,c,d,e,f,g,h,i){var _=this +_.a=a +_.c=$ +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.x=g +_.y=h +_.z=i +_.as=!1}, +aMf:function aMf(a,b){this.a=a +this.b=b}, +aMg:function aMg(a,b){this.a=a +this.b=b}, +aMh:function aMh(a){this.a=a}, +aMj:function aMj(a,b){this.a=a +this.b=b}, +aMk:function aMk(a,b,c){this.a=a +this.b=b +this.c=c}, +aMi:function aMi(a,b,c){this.a=a +this.b=b +this.c=c}, +aMl:function aMl(){}, +Do:function Do(a,b){this.a=a +this.b=b}, +Ya:function Ya(){}, +aV:function aV(){}, +aMA:function aMA(a){this.a=a}, +aMy:function aMy(a){this.a=a}, +aMz:function aMz(a){this.a=a}, +aMw:function aMw(){}, +aMx:function aMx(){}, +aMp:function aMp(){}, +aMq:function aMq(a,b){this.a=a +this.b=b}, +aMr:function aMr(a){this.a=a}, +aMs:function aMs(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aMt:function aMt(a,b,c){this.a=a +this.b=b +this.c=c}, +aMu:function aMu(a){this.a=a}, +aMv:function aMv(a,b){this.a=a +this.b=b}, +aMn:function aMn(){}, +aMo:function aMo(){}, +aMB:function aMB(a,b){this.a=a +this.b=b}, +aMC:function aMC(a){this.a=a}, +aMD:function aMD(a,b){this.a=a +this.b=b}, +aMm:function aMm(a,b){this.a=a +this.b=b}, +e7:function e7(){}, +aMH:function aMH(){}, +bp:function bp(){}, +kv:function kv(){}, +bm:function bm(){}, +e2:function e2(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=!1 +_.$ti=d}, +zO:function zO(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.$ti=e}, +eo:function eo(){}, +Gt:function Gt(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.$ti=d}, +n5:function n5(a,b,c){this.a=a +this.b=b +this.$ti=c}, +aMG:function aMG(a,b){this.a=a +this.b=b}, +aME:function aME(a){this.a=a}, +aMF:function aMF(){}, +ajE:function ajE(a,b){this.a=a +this.b=b +this.c=null}, +rm:function rm(a,b,c){this.a=a +this.b=b +this.$ti=c}, +b88:function b88(a){this.a=a}, +b89:function b89(a){this.a=a}, +b86:function b86(a,b,c){this.a=a +this.b=b +this.c=c}, +b87:function b87(a,b){this.a=a +this.b=b}, +b8d:function b8d(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +b8c:function b8c(a,b){this.a=a +this.b=b}, +b8e:function b8e(a,b){this.a=a +this.b=b}, +b8a:function b8a(a){this.a=a}, +b8b:function b8b(a){this.a=a}, +GG:function GG(a,b,c){var _=this +_.a=a +_.b=b +_.c=!1 +_.$ti=c}, +zn:function zn(a,b,c,d,e,f,g,h){var _=this +_.y=a +_.d=b +_.e=c +_.f=d +_.a=e +_.b=f +_.c=g +_.$ti=h}, +F8:function F8(a,b,c,d,e,f,g){var _=this +_.a=null +_.b=!1 +_.c=$ +_.d=a +_.e=$ +_.f=b +_.r=c +_.w=d +_.x=e +_.y=f +_.CW=_.ch=_.ay=_.ax=_.at=_.as=_.Q=_.z=null +_.fx=_.fr=_.dy=_.dx=_.db=_.cy=_.cx=!1 +_.fy=null +_.$ti=g}, +Sp:function Sp(){}, +Sq:function Sq(){}, +Sr:function Sr(){}, +Uo:function Uo(){}, +Vq:function Vq(){}, +bP1(a,b){return new A.n5(a,new A.bdO(b),b.h("@>").S(b.h("U<0>")).h("n5<1,2>"))}, +asu(a,b,c,d,e,f,g){return new A.fM(a,c,e,null,f,d,b,g.h("fM<0>"))}, +bD7(a,b){var s=null,r=t.B +return new A.lD(s,!1,new A.cd(A.aT(0,s,!1,b.h("dT>?")),b.h("cd>")),s,s,s,s,a,A.a([],b.h("G>>")),A.a([],r),A.a([],t._),A.a([],r),A.cx(s,s,s,t.M,t.K),b.h("lD<0>"))}, +b4i:function b4i(a){this.a=a}, +b4j:function b4j(){}, +bdO:function bdO(a){this.a=a}, +mn:function mn(){}, +fM:function fM(a,b,c,d,e,f,g,h){var _=this +_.ay=a +_.ch=$ +_.d=b +_.e=c +_.f=d +_.a=e +_.b=f +_.c=g +_.$ti=h}, +lD:function lD(a,b,c,d,e,f,g,h,i,j,k,l,m,n){var _=this +_.dQ$=a +_.f8$=b +_.iy$=c +_.i8$=d +_.i9$=e +_.hN$=f +_.hO$=g +_.a=null +_.b=!1 +_.c=$ +_.d=h +_.e=$ +_.f=i +_.r=j +_.w=k +_.x=l +_.y=m +_.CW=_.ch=_.ay=_.ax=_.at=_.as=_.Q=_.z=null +_.fx=_.fr=_.dy=_.dx=_.db=_.cy=_.cx=!1 +_.fy=null +_.$ti=n}, +h5:function h5(){}, +aD4:function aD4(a,b){this.a=a +this.b=b}, +PF:function PF(){}, +PE:function PE(){}, +fG:function fG(){}, +dT:function dT(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.$ti=d}, +cd:function cd(a,b){var _=this +_.f=null +_.a=0 +_.b=a +_.d=_.c=0 +_.e=!1 +_.$ti=b}, +aMJ:function aMJ(a,b){this.a=a +this.b=b}, +Un:function Un(){}, +bcD:function bcD(a,b){this.a=a +this.b=b}, +bcC:function bcC(a,b,c){this.a=a +this.b=b +this.c=c}, +bcB:function bcB(a,b,c){this.a=a +this.b=b +this.c=c}, +bcE:function bcE(a){this.a=a}, +bPX(a,b,c){return new A.n5(a,new A.bea(b,c),c.h("@<0>").S(b).h("n5<1,2>"))}, +d5(a,b,c,d,e,f,g,h){return new A.f_(a,c,e,null,f,d,b,g.h("@<0>").S(h).h("f_<1,2>"))}, +bD8(a,b,c){var s=null,r=t.B +return new A.mC(s,!1,new A.cd(A.aT(0,s,!1,b.h("dT<0>?")),b.h("cd<0>")),a,A.a([],c.h("G>")),A.a([],r),A.a([],t._),A.a([],r),A.cx(s,s,s,t.M,t.K),b.h("@<0>").S(c).h("mC<1,2>"))}, +c5:function c5(){}, +bea:function bea(a,b){this.a=a +this.b=b}, +oB:function oB(){}, +aR:function aR(){}, +cH:function cH(){}, +f_:function f_(a,b,c,d,e,f,g,h){var _=this +_.ch=$ +_.y=a +_.d=b +_.e=c +_.f=d +_.a=e +_.b=f +_.c=g +_.$ti=h}, +mC:function mC(a,b,c,d,e,f,g,h,i,j){var _=this +_.dQ$=a +_.f8$=b +_.go=c +_.a=null +_.b=!1 +_.c=$ +_.d=d +_.e=$ +_.f=e +_.r=f +_.w=g +_.x=h +_.y=i +_.CW=_.ch=_.ay=_.ax=_.at=_.as=_.Q=_.z=null +_.fx=_.fr=_.dy=_.dx=_.db=_.cy=_.cx=!1 +_.fy=null +_.$ti=j}, +fb:function fb(){}, +aKG:function aKG(a,b){this.a=a +this.b=b}, +PG:function PG(){}, +f0(a,b,c,d,e,f,g){return new A.ev(a,c,e,null,f,d,b,g.h("ev<0>"))}, +bD9(a,b){var s=null,r=t.B +return new A.iQ(s,!1,a,A.a([],b.h("G>")),A.a([],r),A.a([],t._),A.a([],r),A.cx(s,s,s,t.M,t.K),b.h("iQ<0>"))}, +iZ:function iZ(){}, +ev:function ev(a,b,c,d,e,f,g,h){var _=this +_.ay=a +_.d=b +_.e=c +_.f=d +_.a=e +_.b=f +_.c=g +_.$ti=h}, +iQ:function iQ(a,b,c,d,e,f,g,h,i){var _=this +_.dQ$=a +_.f8$=b +_.a=null +_.b=!1 +_.c=$ +_.d=c +_.e=$ +_.f=d +_.r=e +_.w=f +_.x=g +_.y=h +_.CW=_.ch=_.ay=_.ax=_.at=_.as=_.Q=_.z=null +_.fx=_.fr=_.dy=_.dx=_.db=_.cy=_.cx=!1 +_.fy=null +_.$ti=i}, +eL:function eL(){}, +PH:function PH(){}, +Rz:function Rz(){}, +aPQ(a,b){var s,r,q,p +try{q=a.$0() +return new A.e9(q,b.h("e9<0>"))}catch(p){s=A.ai(p) +r=A.aH(p) +return new A.fq(s,r,b.h("fq<0>"))}}, +e9:function e9(a,b){this.a=a +this.$ti=b}, +fq:function fq(a,b,c){this.a=a +this.b=b +this.$ti=c}, +bgA(a,b){var s=A.a([A.bL6()],t.ch) +B.b.I(s,A.bDx(b).gX1()) +A.biv(a,new A.aaO(new A.il(A.i3(s,t.f3)).aI7(new A.bgB()).BD().a))}, +bgB:function bgB(){}, +bEC(a,b,c){return new A.Jb(a,!0,c.h("Jb<0>"))}, +Jb:function Jb(a,b,c){this.a=a +this.b=b +this.$ti=c}, +bDc(a,b,c,d){return new A.at8(a,b,d)}, +I1:function I1(a,b,c,d){var _=this +_.e=a +_.b=b +_.c=!1 +_.a=c +_.$ti=d}, +at8:function at8(a,b,c){this.a=a +this.b=b +this.c=c}, +ao0:function ao0(a,b){var _=this +_.a=!1 +_.b=a +_.c=null +_.$ti=b}, +v4:function v4(a,b){this.a=a +this.$ti=b}, +Ew:function Ew(){}, +GV:function GV(a,b){this.a=a +this.$ti=b}, +GP:function GP(a,b){this.b=a +this.a=null +this.$ti=b}, +a9x:function a9x(a,b){this.a=a +this.$ti=b}, +aVY:function aVY(a){this.a=a}, +GO:function GO(a,b,c){var _=this +_.b=a +_.c=b +_.a=null +_.$ti=c}, +a9w:function a9w(a,b,c){this.a=a +this.b=b +this.$ti=c}, +aVX:function aVX(a){this.a=a}, +b39:function b39(){}, +a0G:function a0G(a,b){this.a=a +this.b=b}, +K5:function K5(){}, +bwx(a,b,c,d){var s +if(a.gh1())s=A.bOZ(a,b,c,d) +else s=A.bOY(a,b,c,d) +return s}, +bOZ(a,b,c,d){return new A.zL(!0,new A.bdG(b,a,d),d.h("zL<0>"))}, +bOY(a,b,c,d){var s,r,q=null,p={} +if(a.gh1())s=new A.nL(q,q,d.h("nL<0>")) +else s=A.ln(q,q,q,!0,d) +p.a=null +p.b=!1 +r=A.dr("sink",new A.bdK(b,c,d)) +s.sW8(new A.bdL(p,a,r,s)) +s.sVV(0,new A.bdM(p,r)) +return s.gvR(s)}, +bdG:function bdG(a,b,c){this.a=a +this.b=b +this.c=c}, +bdH:function bdH(a,b,c){this.a=a +this.b=b +this.c=c}, +bdF:function bdF(a,b){this.a=a +this.b=b}, +bdK:function bdK(a,b,c){this.a=a +this.b=b +this.c=c}, +bdL:function bdL(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +bdN:function bdN(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +bdI:function bdI(a,b){this.a=a +this.b=b}, +bdJ:function bdJ(a,b){this.a=a +this.b=b}, +bdM:function bdM(a,b){this.a=a +this.b=b}, +RX:function RX(a,b){this.a=a +this.$ti=b}, +MG:function MG(a,b,c){this.c=a +this.d=b +this.a=c}, +a72:function a72(a,b){this.b=a +this.a=b}, +ak8:function ak8(a,b){var _=this +_.d=a +_.a=null +_.b=b +_.c=null}, +Rp:function Rp(a,b,c){this.f=a +this.b=b +this.a=c}, +ak7:function ak7(a,b){var _=this +_.aV=$ +_.d=_.c=_.b=_.a=_.ay=null +_.e=$ +_.f=a +_.r=null +_.w=b +_.z=_.y=null +_.Q=!1 +_.as=!0 +_.ax=_.at=!1}, +kn:function kn(a,b,c){this.a=a +this.b=b +this.c=c}, +Cd:function Cd(a){this.a=a}, +brj(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q){return new A.Mn(h,g,p,f,i,l,d,n,m,!1,k,e,o,!0,j,!0,!0,null)}, +Mn:function Mn(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.x=g +_.y=h +_.z=i +_.Q=j +_.as=k +_.at=l +_.ax=m +_.ay=n +_.ch=o +_.CW=p +_.cx=q +_.a=r}, +Sn:function Sn(a,b,c){var _=this +_.d=a +_.e=b +_.f=$ +_.r=!1 +_.a=null +_.b=c +_.c=null}, +b82:function b82(a){this.a=a}, +b83:function b83(a){this.a=a}, +b84:function b84(a){this.a=a}, +b81:function b81(a){this.a=a}, +Dh:function Dh(a,b,c){this.c=a +this.d=b +this.a=c}, +ajB:function ajB(a,b){var _=this +_.d=_.c=_.b=_.a=_.ay=null +_.e=$ +_.f=a +_.r=null +_.w=b +_.z=_.y=null +_.Q=!1 +_.as=!0 +_.ax=_.at=!1}, +aau:function aau(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s){var _=this +_.p3=a +_.p4=b +_.cx=c +_.c=d +_.d=e +_.e=f +_.f=g +_.r=h +_.w=i +_.x=j +_.y=k +_.z=l +_.Q=m +_.as=n +_.at=o +_.ax=p +_.ay=q +_.ch=r +_.a=s}, +bNf(){var s=t.zX,r=t.Hk +return new A.T8(new A.ahC(new A.Cd(A.ed(A.a([],s),r)),A.DU(0,!1),B.als),new A.ahC(new A.Cd(A.ed(A.a([],s),r)),A.DU(0,!1),B.alt),A.lX(B.qf),new A.baf(),null,null,B.m)}, +Nn:function Nn(a,b,c,d,e,f,g,h,i,j,k,l){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.x=f +_.y=g +_.Q=h +_.as=i +_.ax=j +_.db=k +_.a=l}, +xg:function xg(){this.a=null}, +T8:function T8(a,b,c,d,e,f,g){var _=this +_.d=a +_.e=b +_.f=c +_.r=d +_.w=!1 +_.x=null +_.y=0 +_.dL$=e +_.b_$=f +_.a=null +_.b=g +_.c=null}, +baf:function baf(){}, +bae:function bae(a){this.a=a}, +bab:function bab(a){this.a=a}, +bac:function bac(a){this.a=a}, +bad:function bad(a){this.a=a}, +baa:function baa(a){this.a=a}, +ba9:function ba9(a){this.a=a}, +ba7:function ba7(a){this.a=a}, +ba8:function ba8(){}, +b9Y:function b9Y(a,b,c){this.a=a +this.b=b +this.c=c}, +b9Z:function b9Z(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +ba1:function ba1(a){this.a=a}, +ba2:function ba2(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}, +ba0:function ba0(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}, +ba_:function ba_(){}, +ba3:function ba3(a,b,c){this.a=a +this.b=b +this.c=c}, +ba4:function ba4(a){this.a=a}, +ba5:function ba5(){}, +ba6:function ba6(){}, +ahC:function ahC(a,b,c){var _=this +_.a=a +_.b=b +_.d=_.c=0 +_.e=c}, +Vx:function Vx(){}, +aaw:function aaw(a,b,c,d,e,f,g,h,i,j,k){var _=this +_.ax=a +_.e=b +_.f=c +_.r=d +_.w=e +_.x=f +_.y=g +_.z=h +_.Q=i +_.c=j +_.a=k}, +aav:function aav(a,b,c,d,e,f,g,h,i,j,k,l,m,n){var _=this +_.x3=a +_.EQ=_.EP=$ +_.L7=!1 +_.qG=null +_.hc=b +_.dR=c +_.ti=_.iB=$ +_.pG=!1 +_.B=d +_.Z=e +_.Y=f +_.av=g +_.ar=null +_.aG=h +_.aS=i +_.b8=j +_.d_$=k +_.a3$=l +_.dk$=m +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=n +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +J4:function J4(){}, +aSS(){var s=0,r=A.y(t.cZ),q,p=2,o,n,m,l,k,j,i +var $async$aSS=A.u(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:s=$.aSQ==null?3:4 +break +case 3:n=new A.aD(new A.a8($.a9,t.Gl),t.Iy) +$.aSQ=n +p=6 +s=9 +return A.t(A.aSR(),$async$aSS) +case 9:m=b +J.bC0(n,new A.uH(m)) +p=2 +s=8 +break +case 6:p=5 +i=o +l=A.ai(i) +n.ms(l) +k=n.a +$.aSQ=null +q=k +s=1 +break +s=8 +break +case 5:s=2 +break +case 8:case 4:q=$.aSQ.a +s=1 +break +case 1:return A.w(q,r) +case 2:return A.v(o,r)}}) +return A.x($async$aSS,r)}, +aSR(){var s=0,r=A.y(t.nf),q,p,o,n,m,l,k,j +var $async$aSR=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:n=t.N +m=t.K +l=A.F(n,m) +k=J +j=l +s=3 +return A.t($.bgW().jn(0),$async$aSR) +case 3:k.nU(j,b) +p=A.F(n,m) +for(n=l,n=A.i1(n,n.r,A.ch(n).c);n.u();){m=n.d +o=B.c.cv(m,8) +m=J.b3(l,m) +m.toString +p.p(0,o,m)}q=p +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$aSR,r)}, +uH:function uH(a){this.a=a}, +aJ3:function aJ3(){}, +aSP:function aSP(){}, +aM1:function aM1(a,b){this.a=a +this.b=b}, +aDG:function aDG(a){this.a=a}, +aSN:function aSN(){}, +aSO:function aSO(a,b){this.a=a +this.b=b}, +brT(a,b,c){return new A.NF(b,new A.u2(B.eO,B.dn,B.cK,A.a([a,a,c,a,a],t.t_),B.a4q,null),null)}, +Ea:function Ea(a,b){this.a=a +this.b=b}, +NF:function NF(a,b,c){this.c=a +this.f=b +this.a=c}, +alx:function alx(a,b,c){var _=this +_.d=$ +_.e=0 +_.f9$=a +_.c4$=b +_.a=null +_.b=c +_.c=null}, +baB:function baB(a){this.a=a}, +baA:function baA(a){this.a=a}, +GI:function GI(a,b,c,d,e){var _=this +_.e=a +_.f=b +_.r=c +_.c=d +_.a=e}, +alw:function alw(a,b,c,d,e){var _=this +_.C=a +_.a0=b +_.aw=c +_.E$=d +_.fy=_.fx=null +_.go=!1 +_.k1=_.id=null +_.k2=0 +_.a=!1 +_.b=null +_.c=0 +_.e=_.d=null +_.r=_.f=!1 +_.w=null +_.x=!1 +_.y=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ax=!1 +_.ay=$ +_.ch=e +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +VC:function VC(){}, +biC(a,b){if(b<0)A.q(A.c6("Offset may not be negative, was "+b+".")) +else if(b>a.c.length)A.q(A.c6("Offset "+b+u.D+a.gt(a)+".")) +return new A.a0T(a,b)}, +aU_:function aU_(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.d=null}, +a0T:function a0T(a,b){this.a=a +this.b=b}, +FQ:function FQ(a,b,c){this.a=a +this.b=b +this.c=c}, +bGu(a,b){var s=A.bGv(A.a([A.bMy(a,!0)],t._Y)),r=new A.aEJ(b).$0(),q=B.f.j(B.b.ga1(s).b+1),p=A.bGw(s)?0:3,o=A.ab(s) +return new A.aEp(s,r,null,1+Math.max(q.length,p),new A.ad(s,new A.aEr(),o.h("ad<1,m>")).lr(0,B.iF),!A.bTe(new A.ad(s,new A.aEs(),o.h("ad<1,B?>"))),new A.cV(""))}, +bGw(a){var s,r,q +for(s=0;s").S(r.z[1]),s=new A.c2(J.ao(s.a),s.b,r.h("c2<1,2>")),r=r.z[1];s.u();){q=s.a +if(q==null)q=r.a(q) +J.bhy(q,new A.aEv())}s=p.gdW(p) +r=A.k(s).h("ip") +return A.aa(new A.ip(s,new A.aEw(),r),!0,r.h("z.E"))}, +bMy(a,b){var s=new A.b4T(a).$0() +return new A.jf(s,!0,null)}, +bMA(a){var s,r,q,p,o,n,m=a.ge9(a) +if(!B.c.n(m,"\r\n"))return a +s=a.gcf(a) +r=s.gc6(s) +for(s=m.length-1,q=0;q")),A.bW6(),r.h("en<1,dS>")),t.f3))}if(!B.c.n(a,q))return new A.il(A.i3(A.a([A.bsJ(a)],t.ch),t.f3)) +return new A.il(A.i3(new A.ad(A.a(a.split(q),t.s),A.bW5(),t.B5),t.f3))}, +il:function il(a){this.a=a}, +avq:function avq(a){this.a=a}, +avr:function avr(){}, +avs:function avs(a,b){this.a=a +this.b=b}, +avt:function avt(a){this.a=a}, +avy:function avy(){}, +avx:function avx(){}, +avv:function avv(){}, +avw:function avw(a){this.a=a}, +avu:function avu(a){this.a=a}, +bGi(a){return A.bpI(a)}, +bpI(a){return A.a1g(a,new A.aCL(a))}, +bGh(a){return A.bGe(a)}, +bGe(a){return A.a1g(a,new A.aCJ(a))}, +bGb(a){return A.a1g(a,new A.aCG(a))}, +bGf(a){return A.bGc(a)}, +bGc(a){return A.a1g(a,new A.aCH(a))}, +bGg(a){return A.bGd(a)}, +bGd(a){return A.a1g(a,new A.aCI(a))}, +biL(a){if(B.c.n(a,$.byB()))return A.dH(a,0,null) +else if(B.c.n(a,$.byC()))return A.but(a,!0) +else if(B.c.c8(a,"/"))return A.but(a,!1) +if(B.c.n(a,"\\"))return $.bBU().ad4(a) +return A.dH(a,0,null)}, +a1g(a,b){var s,r,q=null +try{s=b.$0() +return s}catch(r){if(t.bE.b(A.ai(r)))return new A.nm(A.f7(q,q,"unparsed",q,q,q),a) +else throw r}}, +dW:function dW(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aCL:function aCL(a){this.a=a}, +aCJ:function aCJ(a){this.a=a}, +aCK:function aCK(a){this.a=a}, +aCG:function aCG(a){this.a=a}, +aCH:function aCH(a){this.a=a}, +aCI:function aCI(a){this.a=a}, +KL:function KL(a){this.a=a +this.b=$}, +xn:function xn(a){this.a=a +this.b=$}, +aGM:function aGM(a,b,c){this.a=a +this.b=b +this.c=c}, +bL6(){return new A.xn(new A.aYH(A.bL7(A.jU()),0))}, +bL7(a){if(t.f3.b(a))return a +if(t.Uc.b(a))return a.BD() +return new A.xn(new A.aYI(a))}, +bsJ(a){var s,r,q +try{if(a.length===0){r=A.aYC(A.a([],t.sR),null) +return r}if(B.c.n(a,$.bBp())){r=A.bL5(a) +return r}if(B.c.n(a,"\tat ")){r=A.bL4(a) +return r}if(B.c.n(a,$.bAm())||B.c.n(a,$.bAk())){r=A.bL3(a) +return r}if(B.c.n(a,u.C)){r=A.bol(a).BD() +return r}if(B.c.n(a,$.bAq())){r=A.bsH(a) +return r}r=A.bsI(a) +return r}catch(q){r=A.ai(q) +if(t.bE.b(r)){s=r +throw A.c(A.cJ(J.bnw(s)+"\nStack trace:\n"+a,null,null))}else throw q}}, +bL9(a){return A.bsI(a)}, +bsI(a){var s=A.i3(A.bLa(a),t.OP) +return new A.dS(s,new A.pn(a))}, +bLa(a){var s,r=B.c.dI(a),q=$.bnn(),p=t.gD,o=new A.be(A.a(A.eC(r,q,"").split("\n"),t.s),new A.aYJ(),p) +if(!o.gaj(o).u())return A.a([],t.sR) +r=A.aX_(o,o.gt(o)-1,p.h("z.E")) +r=A.mV(r,A.bSA(),A.k(r).h("z.E"),t.OP) +s=A.aa(r,!0,A.k(r).h("z.E")) +if(!J.bC2(o.ga1(o),".da"))B.b.G(s,A.bpI(o.ga1(o))) +return s}, +bL5(a){var s=A.fE(A.a(a.split("\n"),t.s),1,null,t.N).ah5(0,new A.aYG()),r=t.OP +r=A.i3(A.mV(s,A.bwC(),s.$ti.h("z.E"),r),r) +return new A.dS(r,new A.pn(a))}, +bL4(a){var s=A.i3(new A.en(new A.be(A.a(a.split("\n"),t.s),new A.aYF(),t.gD),A.bwC(),t.tN),t.OP) +return new A.dS(s,new A.pn(a))}, +bL3(a){var s=A.i3(new A.en(new A.be(A.a(B.c.dI(a).split("\n"),t.s),new A.aYD(),t.gD),A.bSy(),t.tN),t.OP) +return new A.dS(s,new A.pn(a))}, +bL8(a){return A.bsH(a)}, +bsH(a){var s=a.length===0?A.a([],t.sR):new A.en(new A.be(A.a(B.c.dI(a).split("\n"),t.s),new A.aYE(),t.gD),A.bSz(),t.tN) +s=A.i3(s,t.OP) +return new A.dS(s,new A.pn(a))}, +aYC(a,b){var s=A.i3(a,t.OP) +return new A.dS(s,new A.pn(b==null?"":b))}, +dS:function dS(a,b){this.a=a +this.b=b}, +aYH:function aYH(a,b){this.a=a +this.b=b}, +aYI:function aYI(a){this.a=a}, +aYJ:function aYJ(){}, +aYG:function aYG(){}, +aYF:function aYF(){}, +aYD:function aYD(){}, +aYE:function aYE(){}, +aYL:function aYL(){}, +aYK:function aYK(a){this.a=a}, +nm:function nm(a,b){this.a=a +this.w=b}, +aaO:function aaO(a){this.a=a}, +aZN:function aZN(a){this.a=a}, +aZM:function aZM(){}, +bpU(a,b,c,d){var s,r={} +r.a=a +s=new A.a1B(d.h("a1B<0>")) +s.aly(b,c,r,d) +return s}, +a1B:function a1B(a){var _=this +_.b=_.a=$ +_.c=null +_.d=!1 +_.$ti=a}, +aE5:function aE5(a,b){this.a=a +this.b=b}, +aE4:function aE4(a){this.a=a}, +Ra:function Ra(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.e=_.d=!1 +_.r=_.f=null +_.w=d +_.$ti=e}, +b4A:function b4A(){}, +a9z:function a9z(a){this.b=this.a=$ +this.$ti=a}, +a9A:function a9A(){}, +a9E:function a9E(a,b,c){this.c=a +this.a=b +this.b=c}, +bsi(a){return new A.Og(null,a)}, +Og:function Og(a,b){var _=this +_.a=a +_.b=b +_.c=0 +_.e=_.d=null}, +bfJ(a){var s=A.ab(a).h("ad<1,m>") +return new A.V(1/0,64*B.b.oM(A.aa(new A.ad(a,new A.bfK(),s),!0,s.h("ax.E")),0,new A.bfL()))}, +bwZ(a){return new A.aTC(a==null?192:a,2,2,0.75)}, +bfK:function bfK(){}, +bfL:function bfL(){}, +aH7:function aH7(a){this.a=$ +this.b=a}, +hr:function hr(a,b){this.a=a +this.b=b}, +eT:function eT(a,b){this.a=a +this.b=b}, +fc:function fc(a,b){this.a=a +this.b=b}, +kq:function kq(a,b){this.a=a +this.b=b}, +kT:function kT(a,b){this.a=a +this.b=b}, +el:function el(a,b,c){this.c=a +this.a=b +this.b=c}, +lO:function lO(a,b,c,d){var _=this +_.c=a +_.d=b +_.a=c +_.b=d}, +z_:function z_(a,b,c,d){var _=this +_.c=a +_.d=b +_.a=c +_.b=d}, +bqT(a){var s=B.b.vb($.Wc(),new A.aK6(a)) +return s>0?s:0}, +a5o(a,b,c,d,e){return new A.ox(e,c,d,a,b)}, +ox:function ox(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +aK6:function aK6(a){this.a=a}, +aK5:function aK5(a){this.a=a}, +aK7:function aK7(){}, +aK8:function aK8(){}, +aK9:function aK9(){}, +aKa:function aKa(){}, +aKb:function aKb(){}, +lS:function lS(){}, +mZ:function mZ(){}, +lV:function lV(){}, +n4:function n4(){}, +tH:function tH(){}, +bQv(a){return new A.vO(a.xP($.vN()),a.xP($.aqN()))}, +vO:function vO(a,b){this.a=a +this.b=b}, +aqY:function aqY(){}, +aqV:function aqV(){}, +aqW:function aqW(a,b){this.a=a +this.b=b}, +aqX:function aqX(a){this.a=a}, +kO:function kO(){}, +b_u:function b_u(){}, +Pf:function Pf(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +acW:function acW(){}, +hG:function hG(){}, +b_I:function b_I(){}, +zs:function zs(a,b,c){this.a=a +this.b=b +this.c=c}, +alo:function alo(){}, +Wt:function Wt(a){this.a=a}, +ar7:function ar7(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +ar5:function ar5(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +ar3:function ar3(a){this.a=a}, +ar4:function ar4(){}, +ar6:function ar6(a,b){this.a=a +this.b=b}, +ar8:function ar8(a,b,c){this.a=a +this.b=b +this.c=c}, +ar9:function ar9(a,b){this.a=a +this.b=b}, +aqZ:function aqZ(a,b){this.a=a +this.b=b}, +ar2:function ar2(a){this.a=a}, +ar_:function ar_(a,b,c){this.a=a +this.b=b +this.c=c}, +ar0:function ar0(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +ar1:function ar1(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +blm(a,b,c,d,e){return A.fk(new A.bet(a,c,b,e,d),a,t.z)}, +bet:function bet(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +ber:function ber(a){this.a=a}, +bes:function bes(a,b,c){this.a=a +this.b=b +this.c=c}, +IE(a,b){return new A.Ys(a,b,null)}, +Ys:function Ys(a,b,c){this.e=a +this.f=b +this.a=c}, +aw7:function aw7(a,b,c){this.a=a +this.b=b +this.c=c}, +CM:function CM(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +aIH:function aIH(a,b){this.a=a +this.b=b}, +aII:function aII(a,b){this.a=a +this.b=b}, +bS9(a){return new A.tv(a.M($.vN(),t.w6))}, +tv:function tv(a){this.a=a}, +aB_:function aB_(){}, +bVt(a){return new A.Ej(a.xP($.vN()))}, +Ej:function Ej(a){this.a=a}, +aVx:function aVx(){}, +aVu:function aVu(){}, +aVv:function aVv(){}, +aVt:function aVt(){}, +aVy:function aVy(){}, +aVw:function aVw(){}, +cw:function cw(){}, +b_C:function b_C(){}, +Fi:function Fi(a,b,c,d,e,f,g,h,i,j,k){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=h +_.x=i +_.y=j +_.z=k}, +afV:function afV(){}, +bpA(a,b){var s=J.ak(a),r=s.i(a,"filter"),q=A.F(t.N,t.z) +q.p(0,"type",s.i(a,"type")) +if(t.a.b(r))q.I(0,r) +return q}, +bpB(a){var s,r,q,p=A.a([],t.H7) +for(s=J.ak(a),r=0;r")),!0,s) +B.b.oh(s) +return s}, +bFP(){return new A.wL($,$,$,$,$)}, +bS7(a){var s,r,q,p,o=t.N,n=t.h1,m=A.F(o,n),l=a.M($.bmX(),t.yG) +n=A.F(o,n) +o=A.bW(l) +if(o!=null)n.I(0,o) +o=A.a([],t.s) +s=a.M($.aqK(),t.Xb) +if(s!=null)B.b.I(o,s) +for(s=o.length,r=0;r>>6}, +buh(a){a=a+((a&67108863)<<3)&536870911 +a^=a>>>11 +return a+((a&16383)<<15)&536870911}, +bjO(a,b){var s=null +return new A.O_(a,b,new A.aVs(a,b),s,B.Ol,s,"sourceQuickSearchMangaListProvider",s,s)}, +bjx(a){var s=null +return new A.Mv(a,new A.aMV(a),s,B.O4,s,"quickSearchResultsProvider",s,s)}, +bgy:function bgy(a,b,c){this.a=a +this.b=b +this.c=c}, +bgc:function bgc(){}, +bgd:function bgd(a){this.a=a}, +a9l:function a9l(){}, +O_:function O_(a,b,c,d,e,f,g,h,i){var _=this +_.fr=a +_.fx=b +_.ay=c +_.ch=$ +_.d=d +_.e=e +_.f=f +_.a=g +_.b=h +_.c=i}, +aVs:function aVs(a,b){this.a=a +this.b=b}, +O0:function O0(){}, +am0:function am0(a,b,c,d,e,f,g,h,i,j,k,l,m){var _=this +_.dQ$=a +_.f8$=b +_.iy$=c +_.i8$=d +_.i9$=e +_.hN$=f +_.hO$=g +_.a=null +_.b=!1 +_.c=$ +_.d=h +_.e=$ +_.f=i +_.r=j +_.w=k +_.x=l +_.y=m +_.CW=_.ch=_.ay=_.ax=_.at=_.as=_.Q=_.z=null +_.fx=_.fr=_.dy=_.dx=_.db=_.cy=_.cx=!1 +_.fy=null}, +a6G:function a6G(){}, +Mv:function Mv(a,b,c,d,e,f,g,h){var _=this +_.dy=a +_.ay=b +_.d=c +_.e=d +_.f=e +_.a=f +_.b=g +_.c=h}, +aMV:function aMV(a){this.a=a}, +Mw:function Mw(){}, +ajJ:function ajJ(a,b,c,d,e,f,g,h){var _=this +_.dQ$=a +_.f8$=b +_.a=null +_.b=!1 +_.c=$ +_.d=c +_.e=$ +_.f=d +_.r=e +_.w=f +_.x=g +_.y=h +_.CW=_.ch=_.ay=_.ax=_.at=_.as=_.Q=_.z=null +_.fx=_.fr=_.dy=_.dx=_.db=_.cy=_.cx=!1 +_.fy=null}, +aoT:function aoT(){}, +apl:function apl(){}, +a1s:function a1s(a,b){this.f=a +this.a=b}, +aDN:function aDN(a){this.a=a}, +aDO:function aDO(a,b,c){this.a=a +this.b=b +this.c=c}, +aDL:function aDL(a){this.a=a}, +aDM:function aDM(a,b){this.a=a +this.b=b}, +a9n:function a9n(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +aVG:function aVG(a,b){this.a=a +this.b=b}, +aVH:function aVH(a){this.a=a}, +aVF:function aVF(a,b){this.a=a +this.b=b}, +bgp(a){return A.bVp(a)}, +bVp(a){var s=0,r=A.y(t.s5),q,p,o +var $async$bgp=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:o=new A.hP(new A.aD(new A.a8($.a9,t.Ic),t.L4)) +a.kj(o.gdP(o)) +s=3 +return A.t(a.M($.A9(),t.v4).GW(o),$async$bgp) +case 3:p=c +a.ic() +q=p +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$bgp,r)}, +bVq(a){var s,r,q,p,o=A.F(t.N,t.iW),n=a.M($.bhl(),t.uU),m=a.M($.aqQ(),t.v),l=t.wb,k=A.a([],l),j=A.bW(n) +if(j!=null)B.b.I(k,j) +j=k.length +s=0 +for(;s") +return A.aa(new A.ip(s,new A.bgv(b),r),!0,r.h("z.E"))}s=s.gbw(s) +r=A.k(s).h("ip") +return A.aa(new A.ip(s,new A.bgw(),r),!0,r.h("z.E"))}, +bKf(){return new A.yY($,$,$,$,$)}, +bKg(){return new A.yZ($,$,$,$,$)}, +buc(a,b){a=a+b&536870911 +a=a+((a&524287)<<10)&536870911 +return a^a>>>6}, +bjN(a){var s=null +return new A.NY(a,new A.aVr(a),s,B.Ok,s,"sourceQueryProvider",s,s)}, +bgr:function bgr(a){this.a=a}, +bgs:function bgs(a){this.a=a}, +bgt:function bgt(a){this.a=a}, +yX:function yX(){this.a=$}, +aU0:function aU0(a){this.a=a}, +aU1:function aU1(a){this.a=a}, +aU2:function aU2(a){this.a=a}, +bgq:function bgq(a){this.a=a}, +bgv:function bgv(a){this.a=a}, +bgu:function bgu(a){this.a=a}, +bgw:function bgw(){}, +yY:function yY(a,b,c,d,e){var _=this +_.dJ$=a +_.dK$=b +_.en$=c +_.ex$=d +_.ey$=e +_.a=$}, +yZ:function yZ(a,b,c,d,e){var _=this +_.dJ$=a +_.dK$=b +_.en$=c +_.ex$=d +_.ey$=e +_.a=$}, +a9k:function a9k(){}, +NY:function NY(a,b,c,d,e,f,g,h){var _=this +_.dy=a +_.ay=b +_.d=c +_.e=d +_.f=e +_.a=f +_.b=g +_.c=h}, +aVr:function aVr(a){this.a=a}, +NZ:function NZ(){}, +am_:function am_(a,b,c,d,e,f,g,h){var _=this +_.dQ$=a +_.f8$=b +_.a=null +_.b=!1 +_.c=$ +_.d=c +_.e=$ +_.f=d +_.r=e +_.w=f +_.x=g +_.y=h +_.CW=_.ch=_.ay=_.ax=_.at=_.as=_.Q=_.z=null +_.fx=_.fr=_.dy=_.dx=_.db=_.cy=_.cx=!1 +_.fy=null}, +alU:function alU(){}, +alV:function alV(){}, +apk:function apk(){}, +a9m:function a9m(a){this.a=a}, +aVE:function aVE(a){this.a=a}, +aVB:function aVB(a,b){this.a=a +this.b=b}, +aVC:function aVC(a,b,c){this.a=a +this.b=b +this.c=c}, +aVD:function aVD(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +aVz:function aVz(a){this.a=a}, +aVA:function aVA(a,b){this.a=a +this.b=b}, +a96:function a96(a){this.a=a}, +aU5:function aU5(a,b){this.a=a +this.b=b}, +aU4:function aU4(a){this.a=a}, +aU6:function aU6(a,b,c){this.a=a +this.b=b +this.c=c}, +aU3:function aU3(a,b){this.a=a +this.b=b}, +qT:function qT(a,b){this.e=a +this.a=b}, +aU8:function aU8(a,b,c){this.a=a +this.b=b +this.c=c}, +aU7:function aU7(a,b,c){this.a=a +this.b=b +this.c=c}, +bgo(a,b){var s=0,r=A.y(t.FO),q,p,o +var $async$bgo=A.u(function(c,d){if(c===1)return A.v(d,r) +while(true)switch(s){case 0:o=new A.hP(new A.aD(new A.a8($.a9,t.Ic),t.L4)) +a.kj(o.gdP(o)) +s=3 +return A.t(a.M($.A9(),t.v4).GV(o,b),$async$bgo) +case 3:p=d +a.ic() +q=p +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$bgo,r)}, +bev(a,b){var s=0,r=A.y(t.uS),q,p,o +var $async$bev=A.u(function(c,d){if(c===1)return A.v(d,r) +while(true)switch(s){case 0:o=new A.hP(new A.aD(new A.a8($.a9,t.Ic),t.L4)) +a.kj(o.gdP(o)) +s=3 +return A.t(a.M($.A9(),t.v4).GP(b),$async$bev) +case 3:p=d +a.ic() +q=p +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$bev,r)}, +bKd(){return new A.yW($,$,null,$)}, +GW(a,b){a=a+b&536870911 +a=a+((a&524287)<<10)&536870911 +return a^a>>>6}, +bkL(a){a=a+((a&67108863)<<3)&536870911 +a^=a>>>11 +return a+((a&16383)<<15)&536870911}, +a9j(a){var s=null +return new A.NX(a,new A.aVp(a),s,B.Oh,s,"sourceProvider",s,s)}, +Xu(a){var s=null +return new A.HX(a,new A.asY(a),s,B.Ni,s,"baseSourceMangaFilterListProvider",s,s)}, +bjL(a,b){var s=null +return new A.NV(a,b,new A.aUj(a,b),s,B.Oi,s,"sourceMangaFilterListProvider",s,s)}, +jQ:function jQ(){this.a=this.c=this.b=$}, +aUl:function aUl(a){this.a=a}, +yW:function yW(a,b,c,d){var _=this +_.pC$=a +_.pD$=b +_.tb$=c +_.qJ$=d +_.a=$}, +a95:function a95(){}, +NX:function NX(a,b,c,d,e,f,g,h){var _=this +_.fr=a +_.ay=b +_.ch=$ +_.d=c +_.e=d +_.f=e +_.a=f +_.b=g +_.c=h}, +aVp:function aVp(a){this.a=a}, +O1:function O1(){}, +alZ:function alZ(a,b,c,d,e,f,g,h,i,j,k,l,m){var _=this +_.dQ$=a +_.f8$=b +_.iy$=c +_.i8$=d +_.i9$=e +_.hN$=f +_.hO$=g +_.a=null +_.b=!1 +_.c=$ +_.d=h +_.e=$ +_.f=i +_.r=j +_.w=k +_.x=l +_.y=m +_.CW=_.ch=_.ay=_.ax=_.at=_.as=_.Q=_.z=null +_.fx=_.fr=_.dy=_.dx=_.db=_.cy=_.cx=!1 +_.fy=null}, +Xt:function Xt(){}, +HX:function HX(a,b,c,d,e,f,g,h){var _=this +_.fr=a +_.ay=b +_.ch=$ +_.d=c +_.e=d +_.f=e +_.a=f +_.b=g +_.c=h}, +asY:function asY(a){this.a=a}, +HY:function HY(){}, +adx:function adx(a,b,c,d,e,f,g,h,i,j,k,l,m){var _=this +_.dQ$=a +_.f8$=b +_.iy$=c +_.i8$=d +_.i9$=e +_.hN$=f +_.hO$=g +_.a=null +_.b=!1 +_.c=$ +_.d=h +_.e=$ +_.f=i +_.r=j +_.w=k +_.x=l +_.y=m +_.CW=_.ch=_.ay=_.ax=_.at=_.as=_.Q=_.z=null +_.fx=_.fr=_.dy=_.dx=_.db=_.cy=_.cx=!1 +_.fy=null}, +acT:function acT(){}, +a9c:function a9c(){}, +NV:function NV(a,b,c,d,e,f,g,h,i){var _=this +_.fx=a +_.fy=b +_.ch=$ +_.y=c +_.d=d +_.e=e +_.f=f +_.a=g +_.b=h +_.c=i}, +aUj:function aUj(a,b){this.a=a +this.b=b}, +aUk:function aUk(){}, +alW:function alW(a,b,c,d,e,f,g,h,i){var _=this +_.dQ$=a +_.f8$=b +_.go=c +_.a=null +_.b=!1 +_.c=$ +_.d=d +_.e=$ +_.f=e +_.r=f +_.w=g +_.x=h +_.y=i +_.CW=_.ch=_.ay=_.ax=_.at=_.as=_.Q=_.z=null +_.fx=_.fr=_.dy=_.dx=_.db=_.cy=_.cx=!1 +_.fy=null}, +alT:function alT(){}, +ao6:function ao6(){}, +aph:function aph(){}, +apj:function apj(){}, +a9e:function a9e(a,b,c,d,e){var _=this +_.f=a +_.r=b +_.w=c +_.x=d +_.a=e}, +aUB:function aUB(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +aUC:function aUC(a,b){this.a=a +this.b=b}, +aUz:function aUz(a,b){this.a=a +this.b=b}, +aUA:function aUA(a){this.a=a}, +aUU:function aUU(a,b){this.a=a +this.b=b}, +aUT:function aUT(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +aUP:function aUP(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +aUO:function aUO(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +aUQ:function aUQ(a,b,c,d,e,f,g,h){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=h}, +aUF:function aUF(a){this.a=a}, +aUG:function aUG(a,b){this.a=a +this.b=b}, +aUH:function aUH(a,b){this.a=a +this.b=b}, +aUI:function aUI(a,b){this.a=a +this.b=b}, +aUJ:function aUJ(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +aUE:function aUE(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +aUD:function aUD(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +aUL:function aUL(a){this.a=a}, +aUK:function aUK(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aUM:function aUM(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +aUN:function aUN(a){this.a=a}, +aUR:function aUR(a,b){this.a=a +this.b=b}, +aUS:function aUS(a){this.a=a}, +wP:function wP(a,b,c){this.c=a +this.d=b +this.a=c}, +aBB:function aBB(a,b){this.a=a +this.b=b}, +aBC:function aBC(a,b){this.a=a +this.b=b}, +aBD:function aBD(a,b){this.a=a +this.b=b}, +aBz:function aBz(a){this.a=a}, +aBE:function aBE(a,b){this.a=a +this.b=b}, +aBF:function aBF(a,b,c){this.a=a +this.b=b +this.c=c}, +aBA:function aBA(a){this.a=a}, +aBG:function aBG(a,b){this.a=a +this.b=b}, +aBH:function aBH(a,b){this.a=a +this.b=b}, +aBI:function aBI(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +a99:function a99(a){this.a=a}, +aUc:function aUc(a,b,c){this.a=a +this.b=b +this.c=c}, +aUb:function aUb(a,b){this.a=a +this.b=b}, +aU9:function aU9(a){this.a=a}, +aUa:function aUa(a,b){this.a=a +this.b=b}, +a9a:function a9a(a,b,c){this.e=a +this.f=b +this.a=c}, +aUd:function aUd(a,b){this.a=a +this.b=b}, +aUg:function aUg(a,b){this.a=a +this.b=b}, +aUe:function aUe(a){this.a=a}, +aUf:function aUf(a,b){this.a=a +this.b=b}, +aUh:function aUh(a,b){this.a=a +this.b=b}, +aUi:function aUi(a,b){this.a=a +this.b=b}, +a9b:function a9b(a,b,c,d,e){var _=this +_.d=a +_.e=b +_.f=c +_.r=d +_.a=e}, +aUn:function aUn(a,b){this.a=a +this.b=b}, +aUo:function aUo(a,b){this.a=a +this.b=b}, +aUp:function aUp(a,b){this.a=a +this.b=b}, +aUm:function aUm(a,b,c){this.a=a +this.b=b +this.c=c}, +a9d:function a9d(a,b,c,d){var _=this +_.e=a +_.f=b +_.r=c +_.a=d}, +aUv:function aUv(){}, +aUx:function aUx(){}, +aUu:function aUu(a){this.a=a}, +aUt:function aUt(a){this.a=a}, +aUy:function aUy(a){this.a=a}, +aUq:function aUq(a){this.a=a}, +aUw:function aUw(a){this.a=a}, +aUr:function aUr(a,b,c){this.a=a +this.b=b +this.c=c}, +aUs:function aUs(a,b){this.a=a +this.b=b}, +a9f:function a9f(a,b,c,d){var _=this +_.e=a +_.f=b +_.r=c +_.a=d}, +aV_:function aV_(){}, +aV1:function aV1(){}, +aUZ:function aUZ(a){this.a=a}, +aUY:function aUY(a){this.a=a}, +aV2:function aV2(a){this.a=a}, +aUV:function aUV(a){this.a=a}, +aV0:function aV0(a){this.a=a}, +aUW:function aUW(a,b,c){this.a=a +this.b=b +this.c=c}, +aUX:function aUX(a,b){this.a=a +this.b=b}, +uM:function uM(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +bbn(a,b){a=a+b&536870911 +a=a+((a&524287)<<10)&536870911 +return a^a>>>6}, +bui(a){a=a+((a&67108863)<<3)&536870911 +a^=a>>>11 +return a+((a&16383)<<15)&536870911}, +asZ(a){var s=null +return new A.HZ(a,new A.at_(a),s,B.Nj,s,"baseSourcePreferenceListProvider",s,s)}, +bjM(a){var s=null +return new A.NW(a,new A.aV3(a),s,B.Oj,s,"sourcePreferenceListProvider",s,s)}, +jR:function jR(){this.a=this.b=$}, +Xv:function Xv(){}, +HZ:function HZ(a,b,c,d,e,f,g,h){var _=this +_.fr=a +_.ay=b +_.ch=$ +_.d=c +_.e=d +_.f=e +_.a=f +_.b=g +_.c=h}, +at_:function at_(a){this.a=a}, +I_:function I_(){}, +ady:function ady(a,b,c,d,e,f,g,h,i,j,k,l,m){var _=this +_.dQ$=a +_.f8$=b +_.iy$=c +_.i8$=d +_.i9$=e +_.hN$=f +_.hO$=g +_.a=null +_.b=!1 +_.c=$ +_.d=h +_.e=$ +_.f=i +_.r=j +_.w=k +_.x=l +_.y=m +_.CW=_.ch=_.ay=_.ax=_.at=_.as=_.Q=_.z=null +_.fx=_.fr=_.dy=_.dx=_.db=_.cy=_.cx=!1 +_.fy=null}, +acU:function acU(){}, +a9g:function a9g(){}, +NW:function NW(a,b,c,d,e,f,g,h){var _=this +_.fx=a +_.ch=$ +_.y=b +_.d=c +_.e=d +_.f=e +_.a=f +_.b=g +_.c=h}, +aV3:function aV3(a){this.a=a}, +aV4:function aV4(){}, +alX:function alX(a,b,c,d,e,f,g,h,i){var _=this +_.dQ$=a +_.f8$=b +_.go=c +_.a=null +_.b=!1 +_.c=$ +_.d=d +_.e=$ +_.f=e +_.r=f +_.w=g +_.x=h +_.y=i +_.CW=_.ch=_.ay=_.ax=_.at=_.as=_.Q=_.z=null +_.fx=_.fr=_.dy=_.dx=_.db=_.cy=_.cx=!1 +_.fy=null}, +ao7:function ao7(){}, +api:function api(){}, +a9h:function a9h(a,b){this.f=a +this.a=b}, +aV7:function aV7(a,b,c){this.a=a +this.b=b +this.c=c}, +aV6:function aV6(a,b,c){this.a=a +this.b=b +this.c=c}, +aV5:function aV5(a,b,c){this.a=a +this.b=b +this.c=c}, +a9i:function a9i(a,b,c){this.c=a +this.d=b +this.a=c}, +aVi:function aVi(a,b){this.a=a +this.b=b}, +aVj:function aVj(a,b){this.a=a +this.b=b}, +aVk:function aVk(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aVf:function aVf(a,b,c){this.a=a +this.b=b +this.c=c}, +aVc:function aVc(a,b,c){this.a=a +this.b=b +this.c=c}, +aVb:function aVb(a){this.a=a}, +aVl:function aVl(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aVe:function aVe(a,b,c){this.a=a +this.b=b +this.c=c}, +aV9:function aV9(a,b,c){this.a=a +this.b=b +this.c=c}, +aVa:function aVa(a){this.a=a}, +aVg:function aVg(a){this.a=a}, +aVh:function aVh(a){this.a=a}, +aVm:function aVm(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aVd:function aVd(a,b,c){this.a=a +this.b=b +this.c=c}, +aV8:function aV8(a,b,c){this.a=a +this.b=b +this.c=c}, +bQZ(a){return new A.t7(a.M($.vN(),t.w6))}, +t7:function t7(a){this.a=a}, +avg:function avg(){}, +avh:function avh(){}, +bts(a){return a}, +btd(a){var s=J.ak(a) +return new A.lr(A.bv(s.i(a,"id")),A.ae(s.i(a,"name")),A.bv(s.i(a,"order")),A.cG(s.i(a,"default")))}, +aQ:function aQ(){}, +b_w:function b_w(){}, +Ff:function Ff(){}, +UB:function UB(a,b,c){this.a=a +this.b=b +this.$ti=c}, +lr:function lr(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +adT:function adT(){}, +bDw(){return new A.w8()}, +bQY(a,b){var s,r=A.bW(a.M($.k9(),t.Pa)) +if(r==null)s=null +else{s=J.lC(r,new A.beF(b)) +s=A.aa(s,!0,s.$ti.h("z.E"))}return s}, +bud(a,b){a=a+b&536870911 +a=a+((a&524287)<<10)&536870911 +return a^a>>>6}, +bok(a){var s=null +return new A.Il(a,new A.auR(a),s,B.Nl,s,"categoryListQueryProvider",s,s)}, +w8:function w8(){this.a=$}, +auL:function auL(a,b){this.a=a +this.b=b}, +auM:function auM(a,b,c){this.a=a +this.b=b +this.c=c}, +auN:function auN(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +beF:function beF(a){this.a=a}, +XZ:function XZ(){}, +Il:function Il(a,b,c,d,e,f,g,h){var _=this +_.dy=a +_.ay=b +_.d=c +_.e=d +_.f=e +_.a=f +_.b=g +_.c=h}, +auR:function auR(a){this.a=a}, +Im:function Im(){}, +adQ:function adQ(a,b,c,d,e,f,g,h){var _=this +_.dQ$=a +_.f8$=b +_.a=null +_.b=!1 +_.c=$ +_.d=c +_.e=$ +_.f=d +_.r=e +_.w=f +_.x=g +_.y=h +_.CW=_.ch=_.ay=_.ax=_.at=_.as=_.Q=_.z=null +_.fx=_.fr=_.dy=_.dx=_.db=_.cy=_.cx=!1 +_.fy=null}, +ao8:function ao8(){}, +a0t:function a0t(a){this.a=a}, +aza:function aza(a,b,c){this.a=a +this.b=b +this.c=c}, +azb:function azb(a,b){this.a=a +this.b=b}, +az7:function az7(a){this.a=a}, +az8:function az8(a,b){this.a=a +this.b=b}, +az9:function az9(a){this.a=a}, +azc:function azc(a){this.a=a}, +XY:function XY(a){this.a=a}, +auQ:function auQ(a,b,c){this.a=a +this.b=b +this.c=c}, +auP:function auP(a,b){this.a=a +this.b=b}, +auO:function auO(a,b){this.a=a +this.b=b}, +Y1:function Y1(a,b,c){this.f=a +this.r=b +this.a=c}, +avm:function avm(a,b){this.a=a +this.b=b}, +avn:function avn(a,b){this.a=a +this.b=b}, +avo:function avo(a,b,c){this.a=a +this.b=b +this.c=c}, +avl:function avl(a,b){this.a=a +this.b=b}, +avj:function avj(a){this.a=a}, +avp:function avp(a,b,c){this.a=a +this.b=b +this.c=c}, +avk:function avk(a,b){this.a=a +this.b=b}, +avi:function avi(a,b,c){this.a=a +this.b=b +this.c=c}, +bpg(a,b){return new A.Bt(a,b,null)}, +Bt:function Bt(a,b,c){this.f=a +this.r=b +this.a=c}, +az4:function az4(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +az5:function az5(a){this.a=a}, +az6:function az6(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +w9:function w9(a,b){this.f=a +this.a=b}, +ave:function ave(a,b){this.a=a +this.b=b}, +avc:function avc(a,b){this.a=a +this.b=b}, +avd:function avd(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +av8:function av8(a,b,c){this.a=a +this.b=b +this.c=c}, +av7:function av7(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +av6:function av6(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +av1:function av1(a,b){this.a=a +this.b=b}, +av9:function av9(a,b,c){this.a=a +this.b=b +this.c=c}, +av4:function av4(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +av0:function av0(a,b){this.a=a +this.b=b}, +av5:function av5(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +ava:function ava(a,b,c){this.a=a +this.b=b +this.c=c}, +av3:function av3(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +av2:function av2(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +av_:function av_(a,b){this.a=a +this.b=b}, +avb:function avb(a){this.a=a}, +beG(a,b){var s=0,r=A.y(t.aQ),q,p,o +var $async$beG=A.u(function(c,d){if(c===1)return A.v(d,r) +while(true)switch(s){case 0:o=new A.hP(new A.aD(new A.a8($.a9,t.Ic),t.L4)) +a.kj(o.gdP(o)) +s=3 +return A.t(a.M($.Wj(),t.ad).GQ(o,b),$async$beG) +case 3:p=d +a.ic() +q=p +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$beG,r)}, +bHh(){return new A.xv()}, +bHd(){return new A.xr($,$,$,$,$)}, +bHe(){return new A.xs($,$,$,$,$)}, +bHc(){return new A.xq($,$,$,$,$)}, +bHg(){return new A.xt($,$,null,$)}, +bHf(){return new A.xu($,$,$,$,$)}, +bHb(){return new A.xp($,$,null,$)}, +bbm(a,b){a=a+b&536870911 +a=a+((a&524287)<<10)&536870911 +return a^a>>>6}, +bug(a){a=a+((a&67108863)<<3)&536870911 +a^=a>>>11 +return a+((a&16383)<<15)&536870911}, +Io(a){var s=null +return new A.In(a,new A.auS(a),s,B.Nm,s,"categoryMangaListProvider",s,s)}, +bhR(a){var s=null +return new A.Iq(a,new A.auT(a),s,B.Nn,s,"categoryMangaListWithQueryAndFilterProvider",s,s)}, +kb:function kb(){this.a=this.b=$}, +auV:function auV(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +auW:function auW(a,b){this.a=a +this.b=b}, +auX:function auX(a,b){this.a=a +this.b=b}, +auY:function auY(){}, +auZ:function auZ(){}, +xv:function xv(){this.a=$}, +xr:function xr(a,b,c,d,e){var _=this +_.dJ$=a +_.dK$=b +_.en$=c +_.ex$=d +_.ey$=e +_.a=$}, +xs:function xs(a,b,c,d,e){var _=this +_.dJ$=a +_.dK$=b +_.en$=c +_.ex$=d +_.ey$=e +_.a=$}, +xq:function xq(a,b,c,d,e){var _=this +_.dJ$=a +_.dK$=b +_.en$=c +_.ex$=d +_.ey$=e +_.a=$}, +xt:function xt(a,b,c,d){var _=this +_.pC$=a +_.pD$=b +_.tb$=c +_.qJ$=d +_.a=$}, +xu:function xu(a,b,c,d,e){var _=this +_.dJ$=a +_.dK$=b +_.en$=c +_.ex$=d +_.ey$=e +_.a=$}, +xp:function xp(a,b,c,d){var _=this +_.pC$=a +_.pD$=b +_.tb$=c +_.qJ$=d +_.a=$}, +Y_:function Y_(){}, +In:function In(a,b,c,d,e,f,g,h){var _=this +_.fr=a +_.ay=b +_.ch=$ +_.d=c +_.e=d +_.f=e +_.a=f +_.b=g +_.c=h}, +auS:function auS(a){this.a=a}, +Ip:function Ip(){}, +adR:function adR(a,b,c,d,e,f,g,h,i,j,k,l,m){var _=this +_.dQ$=a +_.f8$=b +_.iy$=c +_.i8$=d +_.i9$=e +_.hN$=f +_.hO$=g +_.a=null +_.b=!1 +_.c=$ +_.d=h +_.e=$ +_.f=i +_.r=j +_.w=k +_.x=l +_.y=m +_.CW=_.ch=_.ay=_.ax=_.at=_.as=_.Q=_.z=null +_.fx=_.fr=_.dy=_.dx=_.db=_.cy=_.cx=!1 +_.fy=null}, +acO:function acO(){}, +Y0:function Y0(){}, +Iq:function Iq(a,b,c,d,e,f,g,h){var _=this +_.fx=a +_.ch=$ +_.y=b +_.d=c +_.e=d +_.f=e +_.a=f +_.b=g +_.c=h}, +auT:function auT(a){this.a=a}, +auU:function auU(){}, +adS:function adS(a,b,c,d,e,f,g,h,i){var _=this +_.dQ$=a +_.f8$=b +_.go=c +_.a=null +_.b=!1 +_.c=$ +_.d=d +_.e=$ +_.f=e +_.r=f +_.w=g +_.x=h +_.y=i +_.CW=_.ch=_.ay=_.ax=_.at=_.as=_.Q=_.z=null +_.fx=_.fr=_.dy=_.dx=_.db=_.cy=_.cx=!1 +_.fy=null}, +ahr:function ahr(){}, +ahs:function ahs(){}, +aht:function aht(){}, +ahu:function ahu(){}, +ahw:function ahw(){}, +ahv:function ahv(){}, +ahx:function ahx(){}, +ao9:function ao9(){}, +aoa:function aoa(){}, +a2G:function a2G(a,b){this.f=a +this.a=b}, +aH2:function aH2(a,b){this.a=a +this.b=b}, +aH3:function aH3(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aGU:function aGU(a){this.a=a}, +aGV:function aGV(){}, +aGW:function aGW(a){this.a=a}, +aGX:function aGX(a){this.a=a}, +aGY:function aGY(a){this.a=a}, +aGZ:function aGZ(){}, +aGT:function aGT(a){this.a=a}, +aGR:function aGR(){}, +aH_:function aH_(a){this.a=a}, +aGS:function aGS(a,b){this.a=a +this.b=b}, +aH0:function aH0(a){this.a=a}, +aH1:function aH1(){}, +aH4:function aH4(a){this.a=a}, +aH5:function aH5(a){this.a=a}, +a2D:function a2D(a){this.a=a}, +aGO:function aGO(a){this.a=a}, +aGN:function aGN(a){this.a=a}, +a2E:function a2E(a){this.a=a}, +Cs:function Cs(a){this.a=a}, +a2F:function a2F(a,b){this.e=a +this.a=b}, +aGP:function aGP(a,b){this.a=a +this.b=b}, +aGQ:function aGQ(a,b){this.a=a +this.b=b}, +bRT(a){return new A.pS(a.M($.vN(),t.w6))}, +bFf(){return new A.wB()}, +bRS(a){var s,r,q,p=a.M($.bh6(),t.rv),o=A.F(t.S,t.b6),n=A.a([],t.mt),m=A.bW(p) +m=m==null?null:m.gBn() +if(m!=null)B.b.I(n,m) +m=n.length +s=0 +for(;s")),t.fC)}, +bRQ(a){return J.fJ(J.jq(a.M($.bmW(),t.yy)))}, +bRU(a){var s=$.bh6() +return a.M(new A.rm(s,new A.beW(),s.$ti.h("rm>")),t.TX)}, +bVl(a){var s=a.M($.bh6(),t.rv),r=A.bW(s) +r=r==null?null:r.gBn() +if(!(r==null||J.ce(r))){r=A.bW(s).gBn() +r.toString +r=J.bC_(r,new A.bgm())}else r=!1 +return r}, +buf(a,b){a=a+b&536870911 +a=a+((a&524287)<<10)&536870911 +return a^a>>>6}, +ayJ(a){var s=null +return new A.Jo(a,new A.ayK(a),s,B.Nw,s,"downloadsFromIdProvider",s,s)}, +pS:function pS(a){this.a=a}, +ayM:function ayM(){}, +ayL:function ayL(){}, +wB:function wB(){this.a=$}, +beU:function beU(a){this.a=a}, +beW:function beW(){}, +beV:function beV(){}, +bgm:function bgm(){}, +a0j:function a0j(){}, +Jo:function Jo(a,b,c,d,e,f,g,h){var _=this +_.dy=a +_.ay=b +_.d=c +_.e=d +_.f=e +_.a=f +_.b=g +_.c=h}, +ayK:function ayK(a){this.a=a}, +Jp:function Jp(){}, +aft:function aft(a,b,c,d,e,f,g,h){var _=this +_.dQ$=a +_.f8$=b +_.a=null +_.b=!1 +_.c=$ +_.d=c +_.e=$ +_.f=d +_.r=e +_.w=f +_.x=g +_.y=h +_.CW=_.ch=_.ay=_.ax=_.at=_.as=_.Q=_.z=null +_.fx=_.fr=_.dy=_.dx=_.db=_.cy=_.cx=!1 +_.fy=null}, +aok:function aok(){}, +bTC(a){return new A.u5(a.M($.vN(),t.w6))}, +u5:function u5(a){this.a=a}, +aHx:function aHx(){}, +aHv:function aHv(){}, +aHu:function aHu(){}, +aHw:function aHw(){}, +bW9(a){return new A.uZ(a.M($.vN(),t.w6))}, +bgG(a){return A.bW8(a)}, +bW8(a){var s=0,r=A.y(t.YO),q,p +var $async$bgG=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:p=new A.hP(new A.aD(new A.a8($.a9,t.Ic),t.L4)) +a.kj(p.gdP(p)) +s=3 +return A.t(a.M($.Hq(),t.BA).Hg(p),$async$bgG) +case 3:q=c +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$bgG,r)}, +bLl(){return new A.zm()}, +uZ:function uZ(a){this.a=a}, +aZc:function aZc(){}, +aZf:function aZf(){}, +aZe:function aZe(){}, +aZd:function aZd(){}, +zm:function zm(){this.a=$}, +bti(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){return new A.Pk(f,a,b,c,d,e,g,h,i,j,l,m,n,o,p,q,r,k)}, +acN(a0){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=J.ak(a0),d=A.bv(e.i(a0,"id")),c=A.cG(e.i(a0,"bookmarked")),b=A.bv(e.i(a0,"chapterCount")),a=A.bd_(e.i(a0,"chapterNumber")) +if(a==null)a=null +s=A.cG(e.i(a0,"downloaded")) +r=A.bv(e.i(a0,"fetchedAt")) +q=A.bv(e.i(a0,"index")) +p=A.bv(e.i(a0,"lastPageRead")) +o=A.bv(e.i(a0,"lastReadAt")) +n=A.bv(e.i(a0,"mangaId")) +m=A.ae(e.i(a0,"name")) +l=A.bv(e.i(a0,"pageCount")) +k=A.cG(e.i(a0,"read")) +j=A.ae(e.i(a0,"realUrl")) +i=A.ae(e.i(a0,"scanlator")) +h=A.bv(e.i(a0,"uploadDate")) +g=A.ae(e.i(a0,"url")) +e=t.nA.a(e.i(a0,"meta")) +if(e==null)e=null +else{f=t.N +f=J.Wr(e,new A.b_6(),f,f) +e=f}return A.bti(c,b,a,s,r,d,q,p,o,n,e,m,l,k,j,i,h,g)}, +a5:function a5(){}, +b_x:function b_x(){}, +Pk:function Pk(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){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 +_.CW=r}, +adV:function adV(){}, +b_6:function b_6(){}, +adZ:function adZ(){}, +bLF(a){var s=a.gTu(),r=a.b +return A.ap(["chapterIds",s,"change",r==null?null:A.bte(r)],t.N,t.z)}, +bte(a){return A.ap(["isRead",a.a,"isBookmarked",a.b,"lastPageRead",a.c,"delete",a.d],t.N,t.z)}, +Pj:function Pj(a,b){this.a=a +this.b=b}, +r6:function r6(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +btt(a){return a}, +bLG(a){var s=J.ak(a),r=A.cG(s.i(a,"hasNextPage")) +s=t.kc.a(s.i(a,"page")) +if(s==null)s=null +else{s=J.co(s,new A.b_7(),t.dA) +s=A.aa(s,!0,A.k(s).h("ax.E"))}return new A.Pl(r,s)}, +bLH(a){var s=a.giD(a) +if(s==null)s=null +else{s=J.co(s,new A.b_8(),t.a) +s=A.aa(s,!0,A.k(s).h("ax.E"))}return A.ap(["hasNextPage",a.a,"page",s],t.N,t.z)}, +kS:function kS(){}, +kc:function kc(){}, +b_y:function b_y(){}, +Fg:function Fg(){}, +UC:function UC(a,b,c){this.a=a +this.b=b +this.$ti=c}, +p7:function p7(a,b){this.a=a +this.b=b}, +b_z:function b_z(){}, +Pl:function Pl(a,b){this.a=a +this.b=b}, +b_7:function b_7(){}, +b_8:function b_8(){}, +adW:function adW(){}, +adX:function adX(){}, +bLI(a){return A.ap(["read",a.a,"bookmarked",a.b,"markPrevRead",a.c,"lastPageRead",a.d],t.N,t.z)}, +Fh:function Fh(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +bLJ(a){var s=J.ak(a),r=t.kc.a(s.i(a,"queue")) +if(r==null)r=null +else{r=J.co(r,new A.b_9(),t.b6) +r=A.aa(r,!0,A.k(r).h("ax.E"))}return new A.Pm(r,A.ae(s.i(a,"status")))}, +bLK(a){var s=a.gBn() +if(s==null)s=null +else{s=J.co(s,new A.b_a(),t.a) +s=A.aa(s,!0,A.k(s).h("ax.E"))}return A.ap(["queue",s,"status",a.b],t.N,t.z)}, +hT:function hT(){}, +b_A:function b_A(){}, +Pm:function Pm(a,b){this.a=a +this.b=b}, +b_9:function b_9(){}, +b_a:function b_a(){}, +afv:function afv(){}, +cC:function cC(){}, +b_B:function b_B(){}, +Pn:function Pn(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +afu:function afu(){}, +btu(a){return a}, +bkd(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5){return new A.r7(a,b,e,f,c,o,m,g,h,j,i,k,l,q,r,s,a0,a1,a2,a3,a4,n,d,a5,p)}, +v1(b4){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2="lastChapterRead",a3=null,a4=J.ak(b4),a5=A.ae(a4.i(b4,"artist")),a6=A.ae(a4.i(b4,"author")),a7=A.ae(a4.i(b4,"description")),a8=A.bv(a4.i(b4,"downloadCount")),a9=A.bv(a4.i(b4,"chapterCount")),b0=A.bv(a4.i(b4,"lastReadAt")),b1=a4.i(b4,a2)==null?a3:A.acN(t.a.a(a4.i(b4,a2))),b2=A.cG(a4.i(b4,"freshData")),b3=t.kc.a(a4.i(b4,"genre")) +if(b3==null)b3=a3 +else{b3=J.co(b3,new A.b_g(),t.N) +b3=A.aa(b3,!0,A.k(b3).h("ax.E"))}s=A.cG(a4.i(b4,"inLibrary")) +r=A.bv(a4.i(b4,"id")) +q=A.bv(a4.i(b4,"inLibraryAt")) +p=A.cG(a4.i(b4,"initialized")) +o=A.ae(a4.i(b4,"realUrl")) +n=a4.i(b4,"source")==null?a3:A.bkc(t.a.a(a4.i(b4,"source"))) +m=A.ae(a4.i(b4,"sourceId")) +l=A.bs(a4.i(b4,"status")) +l=$.byQ().i(0,l) +if(l==null)l=B.EV +k=A.ae(a4.i(b4,"thumbnailUrl")) +j=A.bv(a4.i(b4,"thumbnailUrlLastFetched")) +i=A.ae(a4.i(b4,"title")) +h=A.bv(a4.i(b4,"unreadCount")) +g=A.bv(a4.i(b4,"lastFetchedAt")) +f=A.bv(a4.i(b4,"chaptersLastFetchedAt")) +e=A.ae(a4.i(b4,"url")) +if(a4.i(b4,"meta")==null)a4=a3 +else{a4=t.a.a(a4.i(b4,"meta")) +d=J.ak(a4) +c=d.i(a4,"flutter_readerNavigationLayoutInvert") +c=c!=null&&typeof c=="string"?B.c.bM(c.toLowerCase(),String(!0))===0:a3 +b=t.N +a=A.bm8(B.EW,d.i(a4,"flutter_readerNavigationLayout"),t.lR,b) +b=A.bm8(B.EX,d.i(a4,"flutter_readerMode"),t.uM,b) +a0=d.i(a4,"flutter_readerPadding") +a0=a0!=null&&typeof a0=="string"?A.aq7(a0):a3 +a1=d.i(a4,"flutter_readerMagnifierSize") +a1=a1!=null&&typeof a1=="string"?A.aq7(a1):a3 +a4=new A.Po(c,a,b,a0,a1,A.ae(d.i(a4,"flutter_scanlator")))}return A.bkd(a5,a6,a9,f,a7,a8,b2,b3,r,s,q,p,b1,g,b0,a4,o,n,m,l,k,j,i,h,e)}, +a3:function a3(){}, +aIm:function aIm(){}, +aIn:function aIn(){}, +L5:function L5(){}, +b_F:function b_F(){}, +v2:function v2(){}, +UP:function UP(a,b,c){this.a=a +this.b=b +this.$ti=c}, +r7:function r7(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5){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 +_.CW=r +_.cx=s +_.cy=a0 +_.db=a1 +_.dx=a2 +_.dy=a3 +_.fr=a4 +_.fx=a5}, +ahK:function ahK(){}, +b_G:function b_G(){}, +Po:function Po(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +b_g:function b_g(){}, +ahY:function ahY(){}, +ahU:function ahU(){}, +bth(a){var s,r,q=null,p=J.ak(a),o=t.kc,n=o.a(p.i(a,"PENDING")) +if(n==null)n=q +else{n=J.co(n,new A.b_m(),t.nn) +n=A.aa(n,!0,A.k(n).h("ax.E"))}s=o.a(p.i(a,"RUNNING")) +if(s==null)s=q +else{s=J.co(s,new A.b_n(),t.nn) +s=A.aa(s,!0,A.k(s).h("ax.E"))}r=o.a(p.i(a,"COMPLETE")) +if(r==null)r=q +else{r=J.co(r,new A.b_o(),t.nn) +r=A.aa(r,!0,A.k(r).h("ax.E"))}p=o.a(p.i(a,"FAILED")) +if(p==null)p=q +else{p=J.co(p,new A.b_p(),t.nn) +p=A.aa(p,!0,A.k(p).h("ax.E"))}return new A.Ps(n,s,r,p)}, +bLS(a){var s,r,q,p=null,o=a.ghW(a) +if(o==null)o=p +else{o=J.co(o,new A.b_q(),t.a) +o=A.aa(o,!0,A.k(o).h("ax.E"))}s=a.gi_() +if(s==null)s=p +else{s=J.co(s,new A.b_r(),t.a) +s=A.aa(s,!0,A.k(s).h("ax.E"))}r=a.gh8(a) +if(r==null)r=p +else{r=J.co(r,new A.b_s(),t.a) +r=A.aa(r,!0,A.k(r).h("ax.E"))}q=a.ghx() +if(q==null)q=p +else{q=J.co(q,new A.b_t(),t.a) +q=A.aa(q,!0,A.k(q).h("ax.E"))}return A.ap(["PENDING",o,"RUNNING",s,"COMPLETE",r,"FAILED",q],t.N,t.z)}, +eO:function eO(){}, +b_M:function b_M(){}, +Ps:function Ps(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +anK:function anK(){}, +b_m:function b_m(){}, +b_n:function b_n(){}, +b_o:function b_o(){}, +b_p:function b_p(){}, +b_q:function b_q(){}, +b_r:function b_r(){}, +b_s:function b_s(){}, +b_t:function b_t(){}, +anL:function anL(){}, +a0k:function a0k(a){this.a=a}, +ayO:function ayO(a){this.a=a}, +ayP:function ayP(a,b,c){this.a=a +this.b=b +this.c=c}, +ayN:function ayN(a,b,c){this.a=a +this.b=b +this.c=c}, +a0g:function a0g(a,b,c,d,e){var _=this +_.f=a +_.r=b +_.w=c +_.x=d +_.a=e}, +ayw:function ayw(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +ayr:function ayr(a,b){this.a=a +this.b=b}, +ays:function ays(a,b){this.a=a +this.b=b}, +ayt:function ayt(a,b,c){this.a=a +this.b=b +this.c=c}, +ayu:function ayu(a,b,c){this.a=a +this.b=b +this.c=c}, +ayv:function ayv(a,b,c){this.a=a +this.b=b +this.c=c}, +ayn:function ayn(a,b,c){this.a=a +this.b=b +this.c=c}, +ayo:function ayo(a,b,c){this.a=a +this.b=b +this.c=c}, +ayp:function ayp(a,b){this.a=a +this.b=b}, +ayq:function ayq(a,b,c){this.a=a +this.b=b +this.c=c}, +a0i:function a0i(a,b){this.e=a +this.a=b}, +ayH:function ayH(a,b){this.a=a +this.b=b}, +ayI:function ayI(a,b){this.a=a +this.b=b}, +bTE(a,b){var s=A.aY(t.N) +A.bD2(a.M(A.CF(b),t.uV),new A.bfV(s),t.U_,t.P) +return s}, +bTD(a,b){var s,r=a.M(A.CF(b),t.uV),q=t.u,p=a.M($.bnb(),q),o=a.M($.bna(),q),n=a.M($.bn9(),q),m=a.M($.bhe(),t.cu) +if(m==null)m=!1 +q=a.M($.Wl(),q) +s=t.U_ +return A.nZ(r,new A.bfU(new A.bfS(p,o,n,a.M(A.L0(b),t.N)),new A.bfT(q!==!1,m)),s,s)}, +bSp(a,b){var s,r=a.M($.Wl(),t.u) +if(r==null)r=!1 +s=A.bW(a.M(A.a30(b),t.uV)) +if(s==null)return null +else if(r)return A.bGV(s,new A.bfk()) +else return A.bGX(s,new A.bfl())}, +bSL(a,b,c,d){var s,r,q,p,o,n=a.M($.Wl(),t.u) +if(n==null)n=!1 +s=A.bW(a.M(A.a30(c),t.uV)) +if(s==null)return null +else{r=J.cn(s) +q=r.vb(s,new A.bfu(b)) +p=q>0?r.i(s,q-1):null +o=q>>6}, +zY(a){a=a+((a&67108863)<<3)&536870911 +a^=a>>>11 +return a+((a&16383)<<15)&536870911}, +bj9(a){var s=null +return new A.L6(a,new A.aIh(a),s,B.NR,s,"mangaScanlatorListProvider",s,s)}, +a30(a){var s=null +return new A.L2(a,new A.aHJ(a),s,B.NQ,s,"mangaChapterListWithFilterProvider",s,s)}, +biE(a){var s=null +return new A.JO(a,new A.aBS(a),s,B.ND,s,"firstUnreadInFilteredChapterListProvider",s,s)}, +aDH(a,b,c){var s=null +return new A.K9(b,a,c,new A.aDI(b,a,c),s,B.NF,s,"getNextAndPreviousChaptersProvider",s,s)}, +ot(a){var s=null +return new A.L8(a,new A.aIj(a),s,B.NS,s,"mangaWithIdProvider",s,s)}, +CF(a){var s=null +return new A.L1(a,new A.aHH(a),s,B.NP,s,"mangaChapterListProvider",s,s)}, +L0(a){var s=null +return new A.L_(a,new A.aHC(a),s,B.NO,s,"mangaChapterFilterScanlatorProvider",s,s)}, +bj6(a){var s=null +return new A.KZ(a,new A.aHy(a),s,B.NN,s,"mangaCategoryListProvider",s,s)}, +iv:function iv(){this.a=this.b=$}, +aIl:function aIl(a,b,c){this.a=a +this.b=b +this.c=c}, +it:function it(){this.a=this.b=$}, +aHK:function aHK(a,b,c){this.a=a +this.b=b +this.c=c}, +bfV:function bfV(a){this.a=a}, +jH:function jH(){this.a=this.b=$}, +aHE:function aHE(a,b){this.a=a +this.b=b}, +bfS:function bfS(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +bfT:function bfT(a,b){this.a=a +this.b=b}, +bfU:function bfU(a,b){this.a=a +this.b=b}, +bfk:function bfk(){}, +bfl:function bfl(){}, +bfu:function bfu(a){this.a=a}, +xE:function xE(a,b,c,d){var _=this +_.pC$=a +_.pD$=b +_.tb$=c +_.qJ$=d +_.a=$}, +xF:function xF(a,b,c,d,e){var _=this +_.dJ$=a +_.dK$=b +_.en$=c +_.ex$=d +_.ey$=e +_.a=$}, +xB:function xB(a,b,c,d,e){var _=this +_.dJ$=a +_.dK$=b +_.en$=c +_.ex$=d +_.ey$=e +_.a=$}, +xC:function xC(a,b,c,d,e){var _=this +_.dJ$=a +_.dK$=b +_.en$=c +_.ex$=d +_.ey$=e +_.a=$}, +xA:function xA(a,b,c,d,e){var _=this +_.dJ$=a +_.dK$=b +_.en$=c +_.ex$=d +_.ey$=e +_.a=$}, +is:function is(){this.a=this.b=$}, +aHA:function aHA(a){this.a=a}, +aHB:function aHB(){}, +a36:function a36(){}, +L6:function L6(a,b,c,d,e,f,g,h){var _=this +_.dy=a +_.ay=b +_.d=c +_.e=d +_.f=e +_.a=f +_.b=g +_.c=h}, +aIh:function aIh(a){this.a=a}, +L7:function L7(){}, +ahW:function ahW(a,b,c,d,e,f,g,h){var _=this +_.dQ$=a +_.f8$=b +_.a=null +_.b=!1 +_.c=$ +_.d=c +_.e=$ +_.f=d +_.r=e +_.w=f +_.x=g +_.y=h +_.CW=_.ch=_.ay=_.ax=_.at=_.as=_.Q=_.z=null +_.fx=_.fr=_.dy=_.dx=_.db=_.cy=_.cx=!1 +_.fy=null}, +a3_:function a3_(){}, +L2:function L2(a,b,c,d,e,f,g,h){var _=this +_.dy=a +_.ay=b +_.d=c +_.e=d +_.f=e +_.a=f +_.b=g +_.c=h}, +aHJ:function aHJ(a){this.a=a}, +L3:function L3(){}, +ahR:function ahR(a,b,c,d,e,f,g,h){var _=this +_.dQ$=a +_.f8$=b +_.a=null +_.b=!1 +_.c=$ +_.d=c +_.e=$ +_.f=d +_.r=e +_.w=f +_.x=g +_.y=h +_.CW=_.ch=_.ay=_.ax=_.at=_.as=_.Q=_.z=null +_.fx=_.fr=_.dy=_.dx=_.db=_.cy=_.cx=!1 +_.fy=null}, +a0Z:function a0Z(){}, +JO:function JO(a,b,c,d,e,f,g,h){var _=this +_.dy=a +_.ay=b +_.d=c +_.e=d +_.f=e +_.a=f +_.b=g +_.c=h}, +aBS:function aBS(a){this.a=a}, +JP:function JP(){}, +ag6:function ag6(a,b,c,d,e,f,g,h){var _=this +_.dQ$=a +_.f8$=b +_.a=null +_.b=!1 +_.c=$ +_.d=c +_.e=$ +_.f=d +_.r=e +_.w=f +_.x=g +_.y=h +_.CW=_.ch=_.ay=_.ax=_.at=_.as=_.Q=_.z=null +_.fx=_.fr=_.dy=_.dx=_.db=_.cy=_.cx=!1 +_.fy=null}, +a1n:function a1n(){}, +K9:function K9(a,b,c,d,e,f,g,h,i,j){var _=this +_.dy=a +_.fr=b +_.fx=c +_.ay=d +_.d=e +_.e=f +_.f=g +_.a=h +_.b=i +_.c=j}, +aDI:function aDI(a,b,c){this.a=a +this.b=b +this.c=c}, +Ka:function Ka(){}, +agq:function agq(a,b,c,d,e,f,g,h){var _=this +_.dQ$=a +_.f8$=b +_.a=null +_.b=!1 +_.c=$ +_.d=c +_.e=$ +_.f=d +_.r=e +_.w=f +_.x=g +_.y=h +_.CW=_.ch=_.ay=_.ax=_.at=_.as=_.Q=_.z=null +_.fx=_.fr=_.dy=_.dx=_.db=_.cy=_.cx=!1 +_.fy=null}, +acS:function acS(){}, +a37:function a37(){}, +L8:function L8(a,b,c,d,e,f,g,h){var _=this +_.fy=a +_.CW=_.ch=$ +_.y=b +_.d=c +_.e=d +_.f=e +_.a=f +_.b=g +_.c=h}, +aIj:function aIj(a){this.a=a}, +aIk:function aIk(){}, +ahX:function ahX(a,b,c,d,e,f,g,h,i,j,k,l,m,n){var _=this +_.dQ$=a +_.f8$=b +_.go=c +_.iy$=d +_.i8$=e +_.i9$=f +_.hN$=g +_.hO$=h +_.a=null +_.b=!1 +_.c=$ +_.d=i +_.e=$ +_.f=j +_.r=k +_.w=l +_.x=m +_.y=n +_.CW=_.ch=_.ay=_.ax=_.at=_.as=_.Q=_.z=null +_.fx=_.fr=_.dy=_.dx=_.db=_.cy=_.cx=!1 +_.fy=null}, +acR:function acR(){}, +a2Z:function a2Z(){}, +L1:function L1(a,b,c,d,e,f,g,h){var _=this +_.fy=a +_.CW=_.ch=$ +_.y=b +_.d=c +_.e=d +_.f=e +_.a=f +_.b=g +_.c=h}, +aHH:function aHH(a){this.a=a}, +aHI:function aHI(){}, +ahQ:function ahQ(a,b,c,d,e,f,g,h,i,j,k,l,m,n){var _=this +_.dQ$=a +_.f8$=b +_.go=c +_.iy$=d +_.i8$=e +_.i9$=f +_.hN$=g +_.hO$=h +_.a=null +_.b=!1 +_.c=$ +_.d=i +_.e=$ +_.f=j +_.r=k +_.w=l +_.x=m +_.y=n +_.CW=_.ch=_.ay=_.ax=_.at=_.as=_.Q=_.z=null +_.fx=_.fr=_.dy=_.dx=_.db=_.cy=_.cx=!1 +_.fy=null}, +acQ:function acQ(){}, +a2Y:function a2Y(){}, +L_:function L_(a,b,c,d,e,f,g,h){var _=this +_.fx=a +_.ch=$ +_.y=b +_.d=c +_.e=d +_.f=e +_.a=f +_.b=g +_.c=h}, +aHC:function aHC(a){this.a=a}, +aHD:function aHD(){}, +ahO:function ahO(a,b,c,d,e,f,g,h,i){var _=this +_.dQ$=a +_.f8$=b +_.go=c +_.a=null +_.b=!1 +_.c=$ +_.d=d +_.e=$ +_.f=e +_.r=f +_.w=g +_.x=h +_.y=i +_.CW=_.ch=_.ay=_.ax=_.at=_.as=_.Q=_.z=null +_.fx=_.fr=_.dy=_.dx=_.db=_.cy=_.cx=!1 +_.fy=null}, +acP:function acP(){}, +a2W:function a2W(){}, +KZ:function KZ(a,b,c,d,e,f,g,h){var _=this +_.fy=a +_.CW=_.ch=$ +_.y=b +_.d=c +_.e=d +_.f=e +_.a=f +_.b=g +_.c=h}, +aHy:function aHy(a){this.a=a}, +aHz:function aHz(){}, +ahL:function ahL(a,b,c,d,e,f,g,h,i,j,k,l,m,n){var _=this +_.dQ$=a +_.f8$=b +_.go=c +_.iy$=d +_.i8$=e +_.i9$=f +_.hN$=g +_.hO$=h +_.a=null +_.b=!1 +_.c=$ +_.d=i +_.e=$ +_.f=j +_.r=k +_.w=l +_.x=m +_.y=n +_.CW=_.ch=_.ay=_.ax=_.at=_.as=_.Q=_.z=null +_.fx=_.fr=_.dy=_.dx=_.db=_.cy=_.cx=!1 +_.fy=null}, +ahM:function ahM(){}, +ahN:function ahN(){}, +ahP:function ahP(){}, +ahT:function ahT(){}, +ahS:function ahS(){}, +aos:function aos(){}, +aov:function aov(){}, +aoA:function aoA(){}, +aoB:function aoB(){}, +aoC:function aoC(){}, +aoD:function aoD(){}, +aoE:function aoE(){}, +aoF:function aoF(){}, +a35:function a35(a,b,c){this.f=a +this.r=b +this.a=c}, +aIa:function aIa(a,b){this.a=a +this.b=b}, +aIb:function aIb(a,b){this.a=a +this.b=b}, +aIc:function aIc(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +aId:function aId(a,b,c){this.a=a +this.b=b +this.c=c}, +aIg:function aIg(a,b){this.a=a +this.b=b}, +aIe:function aIe(a,b,c,d,e,f,g,h){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=h}, +aI3:function aI3(a){this.a=a}, +aI4:function aI4(a,b){this.a=a +this.b=b}, +aI5:function aI5(a,b){this.a=a +this.b=b}, +aI6:function aI6(a){this.a=a}, +aI7:function aI7(a){this.a=a}, +aI2:function aI2(a,b){this.a=a +this.b=b}, +aI_:function aI_(a){this.a=a}, +aI8:function aI8(a,b){this.a=a +this.b=b}, +aI0:function aI0(a,b){this.a=a +this.b=b}, +aHZ:function aHZ(a,b){this.a=a +this.b=b}, +aHY:function aHY(a){this.a=a}, +aI1:function aI1(a){this.a=a}, +aI9:function aI9(a,b,c){this.a=a +this.b=b +this.c=c}, +aIf:function aIf(a){this.a=a}, +a5f:function a5f(a,b,c){this.c=a +this.d=b +this.a=c}, +aJT:function aJT(a){this.a=a}, +aJQ:function aJQ(a){this.a=a}, +aJP:function aJP(a){this.a=a}, +aJR:function aJR(a){this.a=a}, +aJS:function aJS(a){this.a=a}, +aJN:function aJN(a){this.a=a}, +aJO:function aJO(a){this.a=a}, +Xy:function Xy(a,b,c,d,e,f,g,h){var _=this +_.e=a +_.f=b +_.r=c +_.w=d +_.x=e +_.y=f +_.z=g +_.a=h}, +ati:function ati(a){this.a=a}, +atf:function atf(a,b){this.a=a +this.b=b}, +atd:function atd(a,b){this.a=a +this.b=b}, +ate:function ate(a){this.a=a}, +atg:function atg(a,b,c){this.a=a +this.b=b +this.c=c}, +atb:function atb(a,b){this.a=a +this.b=b}, +at9:function at9(a){this.a=a}, +ata:function ata(a){this.a=a}, +atc:function atc(a){this.a=a}, +ath:function ath(a){this.a=a}, +wa:function wa(a,b,c,d,e,f,g){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.a=g}, +avH:function avH(a){this.a=a}, +avE:function avE(a){this.a=a}, +avF:function avF(a,b){this.a=a +this.b=b}, +avG:function avG(a){this.a=a}, +azd(a,b){return new A.Bu(a,b,null)}, +Bu:function Bu(a,b,c){this.f=a +this.r=b +this.a=c}, +azh:function azh(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +azg:function azg(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +azf:function azf(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aze:function aze(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +a2X:function a2X(a,b){this.e=a +this.a=b}, +aHF:function aHF(a,b){this.a=a +this.b=b}, +aHG:function aHG(a,b){this.a=a +this.b=b}, +xD:function xD(a,b){this.c=a +this.a=b}, +a31:function a31(a){this.a=a}, +a32:function a32(a,b){this.e=a +this.a=b}, +aHL:function aHL(a,b){this.a=a +this.b=b}, +aHM:function aHM(a,b){this.a=a +this.b=b}, +bqC(a,b,c,d){return new A.a34(b,c,d,a,null)}, +a34:function a34(a,b,c,d,e){var _=this +_.f=a +_.r=b +_.w=c +_.x=d +_.a=e}, +aHS:function aHS(a){this.a=a}, +aHT:function aHT(a,b,c){this.a=a +this.b=b +this.c=c}, +aHR:function aHR(a){this.a=a}, +aHU:function aHU(a,b,c){this.a=a +this.b=b +this.c=c}, +aHV:function aHV(a){this.a=a}, +aHW:function aHW(){}, +aHX:function aHX(){}, +a8T:function a8T(a,b,c,d,e,f,g){var _=this +_.e=a +_.f=b +_.r=c +_.w=d +_.x=e +_.z=f +_.a=g}, +aTV:function aTV(a){this.a=a}, +aTQ:function aTQ(a){this.a=a}, +aTR:function aTR(a,b){this.a=a +this.b=b}, +aTP:function aTP(a,b){this.a=a +this.b=b}, +aTS:function aTS(a,b,c){this.a=a +this.b=b +this.c=c}, +aTN:function aTN(a,b){this.a=a +this.b=b}, +aTL:function aTL(a){this.a=a}, +aTM:function aTM(a){this.a=a}, +aTO:function aTO(a){this.a=a}, +aTT:function aTT(a){this.a=a}, +aTU:function aTU(a){this.a=a}, +CH:function CH(a,b){this.c=a +this.a=b}, +aIi:function aIi(a){this.a=a}, +beH(a,b,c){var s=0,r=A.y(t.ep),q,p,o +var $async$beH=A.u(function(d,e){if(d===1)return A.v(e,r) +while(true)switch(s){case 0:o=new A.hP(new A.aD(new A.a8($.a9,t.Ic),t.L4)) +a.kj(o.gdP(o)) +s=3 +return A.t(a.M($.fl(),t.W).GL(b,c),$async$beH) +case 3:p=e +a.ic() +q=p +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$beH,r)}, +bkK(a,b){a=a+b&536870911 +a=a+((a&524287)<<10)&536870911 +return a^a>>>6}, +Y4(a,b){var s=null +return new A.Ir(b,a,new A.avM(b,a),s,B.No,s,"chapterProvider",s,s)}, +Y2:function Y2(){}, +Ir:function Ir(a,b,c,d,e,f,g,h,i){var _=this +_.fr=a +_.fx=b +_.ay=c +_.ch=$ +_.d=d +_.e=e +_.f=f +_.a=g +_.b=h +_.c=i}, +avM:function avM(a,b){this.a=a +this.b=b}, +Is:function Is(){}, +adY:function adY(a,b,c,d,e,f,g,h,i,j,k,l,m){var _=this +_.dQ$=a +_.f8$=b +_.iy$=c +_.i8$=d +_.i9$=e +_.hN$=f +_.hO$=g +_.a=null +_.b=!1 +_.c=$ +_.d=h +_.e=$ +_.f=i +_.r=j +_.w=k +_.x=l +_.y=m +_.CW=_.ch=_.ay=_.ax=_.at=_.as=_.Q=_.z=null +_.fx=_.fr=_.dy=_.dx=_.db=_.cy=_.cx=!1 +_.fy=null}, +aoe:function aoe(){}, +a6V:function a6V(a,b,c,d){var _=this +_.f=a +_.r=b +_.w=c +_.a=d}, +aNI:function aNI(a,b,c){this.a=a +this.b=b +this.c=c}, +aNG:function aNG(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aNH:function aNH(a,b,c){this.a=a +this.b=b +this.c=c}, +aNF:function aNF(a,b){this.a=a +this.b=b}, +aNJ:function aNJ(){}, +aNE:function aNE(){}, +aNM:function aNM(a,b,c){this.a=a +this.b=b +this.c=c}, +aNK:function aNK(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +aNC:function aNC(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aND:function aND(a,b){this.a=a +this.b=b}, +aNL:function aNL(a,b){this.a=a +this.b=b}, +Y5:function Y5(a,b,c,d){var _=this +_.e=a +_.f=b +_.r=c +_.a=d}, +avN:function avN(a,b){this.a=a +this.b=b}, +avO:function avO(a,b){this.a=a +this.b=b}, +a5O:function a5O(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +aL3:function aL3(a){this.a=a}, +YG(a,b,c,d,e,f,g){return new A.YF(b,a,g,c,e,d,f,null)}, +YF:function YF(a,b,c,d,e,f,g,h){var _=this +_.f=a +_.r=b +_.w=c +_.x=d +_.y=e +_.z=f +_.Q=g +_.a=h}, +awE:function awE(){}, +awF:function awF(){}, +awG:function awG(a,b){this.a=a +this.b=b}, +awH:function awH(a,b){this.a=a +this.b=b}, +awN:function awN(a,b){this.a=a +this.b=b}, +awC:function awC(){}, +awD:function awD(){}, +awB:function awB(a,b){this.a=a +this.b=b}, +awK:function awK(a){this.a=a}, +awM:function awM(a,b,c){this.a=a +this.b=b +this.c=c}, +awL:function awL(a,b,c){this.a=a +this.b=b +this.c=c}, +awJ:function awJ(a){this.a=a}, +awI:function awI(a){this.a=a}, +awz:function awz(){}, +awA:function awA(a,b){this.a=a +this.b=b}, +bjJ(a,b,c,d,e,f){return new A.a8B(b,a,c,d,e,f,null)}, +a8B:function a8B(a,b,c,d,e,f,g){var _=this +_.f=a +_.r=b +_.w=c +_.x=d +_.y=e +_.z=f +_.a=g}, +aTd:function aTd(){}, +aTe:function aTe(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aTf:function aTf(a,b){this.a=a +this.b=b}, +aTk:function aTk(a,b){this.a=a +this.b=b}, +aTc:function aTc(a,b){this.a=a +this.b=b}, +aTh:function aTh(a){this.a=a}, +aTj:function aTj(a,b){this.a=a +this.b=b}, +aTi:function aTi(a,b){this.a=a +this.b=b}, +aTg:function aTg(a){this.a=a}, +aTb:function aTb(){}, +a0s:function a0s(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +a2p:function a2p(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +a2q:function a2q(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +a7I:function a7I(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +a6T:function a6T(a,b,c,d,e){var _=this +_.f=a +_.r=b +_.w=c +_.x=d +_.a=e}, +aNz:function aNz(a){this.a=a}, +brx(a,b,c,d,e,f,g,h,i,j){return new A.a6Z(b,d,a,e,g,f,c,h,i,j,null)}, +a6Z:function a6Z(a,b,c,d,e,f,g,h,i,j,k){var _=this +_.f=a +_.r=b +_.w=c +_.x=d +_.y=e +_.z=f +_.Q=g +_.as=h +_.at=i +_.ax=j +_.a=k}, +aO6:function aO6(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aO5:function aO5(a,b,c){this.a=a +this.b=b +this.c=c}, +aNY:function aNY(a){this.a=a}, +aNZ:function aNZ(a,b,c){this.a=a +this.b=b +this.c=c}, +aNV:function aNV(a,b,c){this.a=a +this.b=b +this.c=c}, +aO7:function aO7(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aO4:function aO4(a,b,c){this.a=a +this.b=b +this.c=c}, +aNW:function aNW(a){this.a=a}, +aNX:function aNX(a,b,c){this.a=a +this.b=b +this.c=c}, +aNU:function aNU(a,b,c){this.a=a +this.b=b +this.c=c}, +aO8:function aO8(a){this.a=a}, +aOj:function aOj(a,b,c){this.a=a +this.b=b +this.c=c}, +aO2:function aO2(a,b){this.a=a +this.b=b}, +aO3:function aO3(a){this.a=a}, +aOn:function aOn(a,b,c){this.a=a +this.b=b +this.c=c}, +aOo:function aOo(a,b){this.a=a +this.b=b}, +aOp:function aOp(a,b){this.a=a +this.b=b}, +aOq:function aOq(a,b){this.a=a +this.b=b}, +aO1:function aO1(a,b,c){this.a=a +this.b=b +this.c=c}, +aOr:function aOr(a,b){this.a=a +this.b=b}, +aO0:function aO0(a,b,c){this.a=a +this.b=b +this.c=c}, +aOs:function aOs(a,b,c){this.a=a +this.b=b +this.c=c}, +aOt:function aOt(a){this.a=a}, +aO9:function aO9(a,b,c){this.a=a +this.b=b +this.c=c}, +aOa:function aOa(a,b){this.a=a +this.b=b}, +aOb:function aOb(a){this.a=a}, +aOc:function aOc(){}, +aO_:function aO_(a){this.a=a}, +aOd:function aOd(a,b){this.a=a +this.b=b}, +aOe:function aOe(a,b){this.a=a +this.b=b}, +aOf:function aOf(a,b,c){this.a=a +this.b=b +this.c=c}, +aOg:function aOg(a,b,c){this.a=a +this.b=b +this.c=c}, +aOh:function aOh(a){this.a=a}, +aOl:function aOl(a){this.a=a}, +aOm:function aOm(a){this.a=a}, +aOk:function aOk(a){this.a=a}, +aOi:function aOi(a,b){this.a=a +this.b=b}, +a6Y:function a6Y(a,b,c,d,e,f,g,h,i,j,k,l,m){var _=this +_.d=a +_.e=b +_.f=c +_.r=d +_.w=e +_.x=f +_.y=g +_.z=h +_.Q=i +_.as=j +_.at=k +_.ax=l +_.a=m}, +aNS:function aNS(a,b){this.a=a +this.b=b}, +aNT:function aNT(a,b){this.a=a +this.b=b}, +aNQ:function aNQ(a,b){this.a=a +this.b=b}, +aNO:function aNO(a,b){this.a=a +this.b=b}, +aNP:function aNP(a){this.a=a}, +aNN:function aNN(a,b,c){this.a=a +this.b=b +this.c=c}, +aNR:function aNR(a,b,c){this.a=a +this.b=b +this.c=c}, +aaF:function aaF(a){this.a=a}, +aZi:function aZi(a,b){this.a=a +this.b=b}, +aZj:function aZj(a,b){this.a=a +this.b=b}, +aZg:function aZg(a,b){this.a=a +this.b=b}, +aZh:function aZh(a){this.a=a}, +aZp:function aZp(){}, +aZq:function aZq(a,b,c){this.a=a +this.b=b +this.c=c}, +aZo:function aZo(a,b,c){this.a=a +this.b=b +this.c=c}, +aZr:function aZr(a,b,c){this.a=a +this.b=b +this.c=c}, +aZs:function aZs(a){this.a=a}, +aZt:function aZt(a){this.a=a}, +aZy:function aZy(a,b){this.a=a +this.b=b}, +aZv:function aZv(){}, +aZu:function aZu(a){this.a=a}, +aZn:function aZn(a){this.a=a}, +aZx:function aZx(a){this.a=a}, +aZk:function aZk(a){this.a=a}, +aZw:function aZw(a,b,c){this.a=a +this.b=b +this.c=c}, +aZl:function aZl(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +aZm:function aZm(a){this.a=a}, +Y3:function Y3(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.a=f}, +avI:function avI(a){this.a=a}, +avJ:function avJ(a,b){this.a=a +this.b=b}, +avK:function avK(a,b){this.a=a +this.b=b}, +avL:function avL(a){this.a=a}, +Lx(a,b,c,d){return new A.a5b(b,a,d,c,null)}, +a5b:function a5b(a,b,c,d,e){var _=this +_.e=a +_.f=b +_.r=c +_.w=d +_.a=e}, +aJx:function aJx(a,b,c){this.a=a +this.b=b +this.c=c}, +aJw:function aJw(a,b){this.a=a +this.b=b}, +bqL(a,b,c){return new A.a5c(c,a,b,null)}, +a5c:function a5c(a,b,c,d){var _=this +_.f=a +_.r=b +_.w=c +_.a=d}, +aJE:function aJE(a){this.a=a}, +aJy:function aJy(){}, +aJz:function aJz(){}, +aJA:function aJA(){}, +aJB:function aJB(){}, +aJC:function aJC(){}, +aJD:function aJD(){}, +brV(a,b,c,d,e,f){return new A.a8z(a,e,b,f,c,d,null)}, +a8z:function a8z(a,b,c,d,e,f,g){var _=this +_.e=a +_.f=b +_.r=c +_.w=d +_.x=e +_.y=f +_.a=g}, +aT6:function aT6(a,b,c){this.a=a +this.b=b +this.c=c}, +aT5:function aT5(a,b){this.a=a +this.b=b}, +bpe(a,b,c,d){return new A.a0h(d,a,c,b,null)}, +a0h:function a0h(a,b,c,d,e){var _=this +_.f=a +_.r=b +_.w=c +_.x=d +_.a=e}, +ayG:function ayG(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +ayB:function ayB(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +ayA:function ayA(a,b,c){this.a=a +this.b=b +this.c=c}, +ayx:function ayx(a){this.a=a}, +ayC:function ayC(a,b,c){this.a=a +this.b=b +this.c=c}, +ayD:function ayD(a,b,c){this.a=a +this.b=b +this.c=c}, +ayE:function ayE(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +ayy:function ayy(a,b){this.a=a +this.b=b}, +ayz:function ayz(a){this.a=a}, +ayF:function ayF(a,b,c){this.a=a +this.b=b +this.c=c}, +aaD:function aaD(a){this.a=a}, +aZ4:function aZ4(a,b,c){this.a=a +this.b=b +this.c=c}, +uY:function uY(a,b,c){this.e=a +this.f=b +this.a=c}, +aZ8:function aZ8(a,b){this.a=a +this.b=b}, +aZ5:function aZ5(a,b){this.a=a +this.b=b}, +aZ6:function aZ6(a){this.a=a}, +aZ7:function aZ7(a){this.a=a}, +aaE:function aaE(a){this.a=a}, +aZa:function aZa(a,b){this.a=a +this.b=b}, +aZ9:function aZ9(a){this.a=a}, +aZb:function aZb(a){this.a=a}, +zl:function zl(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +aZ3:function aZ3(a){this.a=a}, +aZ2:function aZ2(a,b){this.a=a +this.b=b}, +pa:function pa(a,b,c){this.a=a +this.b=b +this.c=c}, +Pq:function Pq(a){this.a=a}, +Pr:function Pr(a,b){this.a=a +this.b=b}, +Pi:function Pi(a){this.a=a}, +Ph:function Ph(a,b){this.a=a +this.b=b}, +Pg:function Pg(a,b,c){this.a=a +this.b=b +this.c=c}, +bIY(){return new A.yd()}, +bUs(a,b){var s,r,q,p,o,n,m,l,k=null,j=a.M($.bnf(),t.v) +if(j==null)j="" +if(B.c.c8(j,"?")){s=t.J +return A.a([new A.pa("@S","@",A.A(b,B.h,s).gnz()),new A.pa("@S/M","@/",A.A(b,B.h,s).gnA()),new A.pa("#C","#",A.A(b,B.h,s).gnv()),new A.pa("#C/M","#/",A.A(b,B.h,s).gnw()),new A.pa("#C/M:CN","#/:",A.A(b,B.h,s).gnx()),new A.pa("X",k,A.A(b,B.h,s).gny())],t.RI)}if(B.c.c8(j,"@")){r=B.c.cv(j,1) +q=A.a(r.split("/"),t.s) +p=a.M(A.bjN(A.xi(q)),t.s5) +if(q.length>1){if(p==null)s=k +else{s=J.co(p,new A.bg4(q),t.WM) +s=A.aa(s,!0,A.k(s).h("ax.E"))}return s}else{if(p==null)s=k +else{s=J.co(p,new A.bg5(),t.WM) +s=A.aa(s,!0,A.k(s).h("ax.E"))}return s}}s=new A.bg1(a) +o=new A.bg6(a,s) +if(!B.c.c8(j,"#"))n=B.c.n(A.YD(b),"/library") +else n=!0 +if(n)return o.$1(j) +n=B.c.c8(A.YD(b),"/manga/") +if(n){n=A.xi(A.a(B.c.cv(A.YD(b),7).split("/"),t.s)) +n=n==null?k:A.xi(J.bhz(n,"?")) +m=A.lW(n==null?"":n,k) +if(m!=null){l=A.bW(a.M(A.ot(m),t.ms)) +if(l!=null)return s.$2$query(l,j)}}return o.$1(j)}, +bub(a,b){a=a+b&536870911 +a=a+((a&524287)<<10)&536870911 +return a^a>>>6}, +bjv(a){var s=null +return new A.Mq(a,new A.aMd(a),s,B.O3,s,"processesQuickSearchProvider",s,s)}, +yd:function yd(){this.a=$}, +bg4:function bg4(a){this.a=a}, +bg5:function bg5(){}, +bg1:function bg1(a){this.a=a}, +bg2:function bg2(a){this.a=a}, +bg3:function bg3(a,b){this.a=a +this.b=b}, +bg6:function bg6(a,b){this.a=a +this.b=b}, +bg7:function bg7(a){this.a=a}, +bg8:function bg8(a){this.a=a}, +bg9:function bg9(){}, +a6y:function a6y(){}, +Mq:function Mq(a,b,c,d,e,f,g,h){var _=this +_.dy=a +_.ay=b +_.d=c +_.e=d +_.f=e +_.a=f +_.b=g +_.c=h}, +aMd:function aMd(a){this.a=a}, +Mr:function Mr(){}, +ajC:function ajC(a,b,c,d,e,f,g,h){var _=this +_.dQ$=a +_.f8$=b +_.a=null +_.b=!1 +_.c=$ +_.d=c +_.e=$ +_.f=d +_.r=e +_.w=f +_.x=g +_.y=h +_.CW=_.ch=_.ay=_.ax=_.at=_.as=_.Q=_.z=null +_.fx=_.fr=_.dy=_.dx=_.db=_.cy=_.cx=!1 +_.fy=null}, +ajI:function ajI(){}, +aoS:function aoS(){}, +a6H:function a6H(a,b){this.d=a +this.a=b}, +aMX:function aMX(a){this.a=a}, +aMW:function aMW(a){this.a=a}, +lF:function lF(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +avf:function avf(a,b){this.a=a +this.b=b}, +a6E:function a6E(a,b,c){this.e=a +this.f=b +this.a=c}, +aMO:function aMO(a){this.a=a}, +a6F:function a6F(a,b){this.f=a +this.a=b}, +aMR:function aMR(a){this.a=a}, +aMQ:function aMQ(a){this.a=a}, +aMS:function aMS(a,b){this.a=a +this.b=b}, +aMU:function aMU(a,b){this.a=a +this.b=b}, +aMP:function aMP(a,b){this.a=a +this.b=b}, +aMT:function aMT(a){this.a=a}, +yH:function yH(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +aRG:function aRG(a,b){this.a=a +this.b=b}, +aRA:function aRA(a,b){this.a=a +this.b=b}, +aRI:function aRI(a){this.a=a}, +aRJ:function aRJ(a){this.a=a}, +aRB:function aRB(a){this.a=a}, +aRC:function aRC(a){this.a=a}, +aRD:function aRD(a){this.a=a}, +aRH:function aRH(){}, +aRE:function aRE(){}, +aRF:function aRF(){}, +bsd(a,b,c){return new A.uL(c,b,a,null)}, +uL:function uL(a,b,c,d){var _=this +_.e=a +_.f=b +_.r=c +_.a=d}, +aVq:function aVq(a,b,c){this.a=a +this.b=b +this.c=c}, +uI:function uI(){}, +tG:function tG(){}, +a89:function a89(a,b){this.d=a +this.a=b}, +aRL:function aRL(a){this.a=a}, +aRK:function aRK(a){this.a=a}, +a6I:function a6I(a,b,c){this.c=a +this.d=b +this.a=c}, +aMY:function aMY(a){this.a=a}, +aMZ:function aMZ(a){this.a=a}, +aN_:function aN_(a){this.a=a}, +bQO(a){return new A.rY(a.M($.vN(),t.w6))}, +rY:function rY(a){this.a=a}, +asL:function asL(){}, +bLE(a){var s,r=J.ak(a),q=t.kc,p=q.a(r.i(a,"missingSources")) +if(p==null)p=null +else{p=J.co(p,new A.b_3(),t.N) +p=A.aa(p,!0,A.k(p).h("ax.E"))}s=q.a(r.i(a,"missingTrackers")) +if(s==null)s=null +else{s=J.co(s,new A.b_4(),t.N) +s=A.aa(s,!0,A.k(s).h("ax.E"))}r=q.a(r.i(a,"mangasMissingSources")) +if(r==null)r=null +else{r=J.co(r,new A.b_5(),t.N) +r=A.aa(r,!0,A.k(r).h("ax.E"))}return new A.Fe(p,s,r)}, +kR:function kR(){}, +asI:function asI(){}, +asJ:function asJ(){}, +asK:function asK(){}, +b_v:function b_v(){}, +Fe:function Fe(a,b,c){this.a=a +this.b=b +this.c=c}, +adt:function adt(){}, +b_3:function b_3(){}, +b_4:function b_4(){}, +b_5:function b_5(){}, +adu:function adu(){}, +WX:function WX(a){this.a=a}, +bGs(){return new A.x1($,$,$,$,$)}, +x1:function x1(a,b,c,d,e){var _=this +_.dJ$=a +_.dK$=b +_.en$=c +_.ex$=d +_.ey$=e +_.a=$}, +a1x:function a1x(a){this.a=a}, +aE2:function aE2(){}, +aE3:function aE3(a){this.a=a}, +agx:function agx(){}, +Xn:function Xn(a){this.a=a}, +asQ:function asQ(a){this.a=a}, +asN:function asN(a,b,c){this.a=a +this.b=b +this.c=c}, +asP:function asP(a,b,c){this.a=a +this.b=b +this.c=c}, +asO:function asO(a,b){this.a=a +this.b=b}, +asM:function asM(a){this.a=a}, +asR:function asR(a,b){this.a=a +this.b=b}, +asS:function asS(a,b,c){this.a=a +this.b=b +this.c=c}, +As:function As(a,b){this.c=a +this.a=b}, +asF:function asF(){}, +asG:function asG(){}, +asH:function asH(){}, +XM:function XM(a){this.a=a}, +bK3(){return new A.yS($,$,$,$,$)}, +yS:function yS(a,b,c,d,e){var _=this +_.dJ$=a +_.dK$=b +_.en$=c +_.ex$=d +_.ey$=e +_.a=$}, +a8w:function a8w(a){this.a=a}, +alC:function alC(){}, +a1j:function a1j(a){this.a=a}, +aDg:function aDg(a,b){this.a=a +this.b=b}, +aDf:function aDf(a){this.a=a}, +aDe:function aDe(a,b){this.a=a +this.b=b}, +aDh:function aDh(a,b){this.a=a +this.b=b}, +a2H:function a2H(a){this.a=a}, +aH6:function aH6(a){this.a=a}, +a59:function a59(a){this.a=a}, +aJj:function aJj(a){this.a=a}, +aJk:function aJk(a){this.a=a}, +aJl:function aJl(a){this.a=a}, +aJm:function aJm(a){this.a=a}, +aJn:function aJn(a,b){this.a=a +this.b=b}, +a6X:function a6X(a){this.a=a}, +bJ8(){return new A.yg($,$,$,$,$)}, +yg:function yg(a,b,c,d,e){var _=this +_.dJ$=a +_.dK$=b +_.en$=c +_.ex$=d +_.ey$=e +_.a=$}, +a6O:function a6O(a){this.a=a}, +ajR:function ajR(){}, +bGS(){return new A.xf($,$,$,$,$)}, +xf:function xf(a,b,c,d,e){var _=this +_.dJ$=a +_.dK$=b +_.en$=c +_.ex$=d +_.ey$=e +_.a=$}, +a6P:function a6P(a){this.a=a}, +ah5:function ah5(){}, +bJ9(){return new A.yh($,$,$,$,$)}, +yh:function yh(a,b,c,d,e){var _=this +_.dJ$=a +_.dK$=b +_.en$=c +_.ex$=d +_.ey$=e +_.a=$}, +a6Q:function a6Q(a){this.a=a}, +aNq:function aNq(){}, +X8:function X8(a,b,c){this.f=a +this.r=b +this.a=c}, +as1:function as1(a,b){this.a=a +this.b=b}, +as_:function as_(a,b){this.a=a +this.b=b}, +as0:function as0(){}, +ajS:function ajS(){}, +bJa(){return new A.yi($,$,null,$)}, +yi:function yi(a,b,c,d){var _=this +_.pC$=a +_.pD$=b +_.tb$=c +_.qJ$=d +_.a=$}, +a6R:function a6R(a){this.a=a}, +aNu:function aNu(a,b,c){this.a=a +this.b=b +this.c=c}, +aNt:function aNt(a,b){this.a=a +this.b=b}, +aNr:function aNr(a){this.a=a}, +aNs:function aNs(a,b){this.a=a +this.b=b}, +ajT:function ajT(){}, +bJb(){return new A.yj($,$,null,$)}, +yj:function yj(a,b,c,d){var _=this +_.pC$=a +_.pD$=b +_.tb$=c +_.qJ$=d +_.a=$}, +a6S:function a6S(a){this.a=a}, +aNy:function aNy(a,b,c){this.a=a +this.b=b +this.c=c}, +aNx:function aNx(a,b){this.a=a +this.b=b}, +aNv:function aNv(a){this.a=a}, +aNw:function aNw(a,b){this.a=a +this.b=b}, +ajU:function ajU(){}, +bJc(){return new A.yk($,$,$,$,$)}, +yk:function yk(a,b,c,d,e){var _=this +_.dJ$=a +_.dK$=b +_.en$=c +_.ex$=d +_.ey$=e +_.a=$}, +a6U:function a6U(a){this.a=a}, +aNA:function aNA(){}, +X9:function X9(a,b,c){this.f=a +this.r=b +this.a=c}, +as4:function as4(a,b){this.a=a +this.b=b}, +as2:function as2(a,b){this.a=a +this.b=b}, +as3:function as3(){}, +ajV:function ajV(){}, +bJd(){return new A.yl($,$,$,$,$)}, +yl:function yl(a,b,c,d,e){var _=this +_.dJ$=a +_.dK$=b +_.en$=c +_.ex$=d +_.ey$=e +_.a=$}, +a6W:function a6W(a){this.a=a}, +ajW:function ajW(){}, +bKu(){return new A.z1($,$,$,$,$)}, +z1:function z1(a,b,c,d,e){var _=this +_.dJ$=a +_.dK$=b +_.en$=c +_.ex$=d +_.ey$=e +_.a=$}, +a9J:function a9J(a){this.a=a}, +ami:function ami(){}, +bLz(){return new A.zq($,$,$,$,$)}, +zq:function zq(a,b,c,d,e){var _=this +_.dJ$=a +_.dK$=b +_.en$=c +_.ex$=d +_.ey$=e +_.a=$}, +anT:function anT(){}, +bLA(){return new A.zp($,$,$,$,$)}, +zp:function zp(a,b,c,d,e){var _=this +_.dJ$=a +_.dK$=b +_.en$=c +_.ex$=d +_.ey$=e +_.a=$}, +anU:function anU(){}, +a8o:function a8o(a){this.a=a}, +aSs:function aSs(a){this.a=a}, +aSr:function aSr(){}, +Xe:function Xe(a){this.a=a}, +ast:function ast(a,b,c){this.a=a +this.b=b +this.c=c}, +ass:function ass(a,b){this.a=a +this.b=b}, +asq:function asq(a){this.a=a}, +asr:function asr(a,b){this.a=a +this.b=b}, +bE_(){return new A.wg($,$,$,$,$)}, +wg:function wg(a,b,c,d,e){var _=this +_.dJ$=a +_.dK$=b +_.en$=c +_.ex$=d +_.ey$=e +_.a=$}, +B4:function B4(a){this.a=a}, +awO:function awO(a){this.a=a}, +awP:function awP(a){this.a=a}, +awQ:function awQ(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +aeB:function aeB(){}, +a8q:function a8q(a){this.a=a}, +aSA:function aSA(a){this.a=a}, +aSB:function aSB(a){this.a=a}, +aSC:function aSC(a){this.a=a}, +aSD:function aSD(a){this.a=a}, +aSE:function aSE(a){this.a=a}, +aSF:function aSF(a){this.a=a}, +aSG:function aSG(a){this.a=a}, +bJT(){return new A.yM($,$,$,$,$)}, +bJS(){return new A.yN($,$,$,$,$)}, +yM:function yM(a,b,c,d,e){var _=this +_.dJ$=a +_.dK$=b +_.en$=c +_.ex$=d +_.ey$=e +_.a=$}, +yN:function yN(a,b,c,d,e){var _=this +_.dJ$=a +_.dK$=b +_.en$=c +_.ex$=d +_.ey$=e +_.a=$}, +a8n:function a8n(a){this.a=a}, +aSp:function aSp(a){this.a=a}, +aSq:function aSq(a,b){this.a=a +this.b=b}, +aSo:function aSo(a){this.a=a}, +E2:function E2(a,b){this.f=a +this.a=b}, +aSm:function aSm(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aSn:function aSn(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aln:function aln(){}, +alm:function alm(){}, +bJU(){return new A.yO($,$,$,$,$)}, +yO:function yO(a,b,c,d,e){var _=this +_.dJ$=a +_.dK$=b +_.en$=c +_.ex$=d +_.ey$=e +_.a=$}, +a8p:function a8p(a){this.a=a}, +aSw:function aSw(a,b){this.a=a +this.b=b}, +aSv:function aSv(a){this.a=a}, +E4:function E4(a,b){this.f=a +this.a=b}, +aSt:function aSt(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aSu:function aSu(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +alp:function alp(){}, +a8L(a,b,c,d,e,f,g,h,i){return new A.NO(g,c,h,f,e,a,d,b,null,i.h("NO<0>"))}, +NO:function NO(a,b,c,d,e,f,g,h,i,j){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.x=g +_.y=h +_.a=i +_.$ti=j}, +aTw:function aTw(a){this.a=a}, +aTx:function aTx(a){this.a=a}, +bKY(){return new A.z9($,$,null,$)}, +bsA(a,b){var s +switch(a.a){case 0:s=A.A(b,B.h,t.J).go_() +break +case 1:s=A.A(b,B.h,t.J).gnZ() +break +case 2:s=A.A(b,B.h,t.J).gnY() +break +default:s=null}return s}, +z9:function z9(a,b,c,d){var _=this +_.pC$=a +_.pD$=b +_.tb$=c +_.qJ$=d +_.a=$}, +WW:function WW(a){this.a=a}, +arF:function arF(a,b,c){this.a=a +this.b=b +this.c=c}, +arE:function arE(a,b){this.a=a +this.b=b}, +arC:function arC(a){this.a=a}, +arD:function arD(a,b){this.a=a +this.b=b}, +an3:function an3(){}, +bRP(a){var s,r,q,p=a.M($.bBF(),t.lm),o=t.v,n=a.M($.Hp(),o) +if(n==null)n="http://127.0.0.1" +s=a.M($.A8(),t.bo) +r=a.M($.Ho(),t.u) +q=a.M($.vM(),t.Wr) +if(q==null)q=B.dY +return new A.tn(p.aMU(r===!0,q,n,a.M($.Hn(),o),a.M($.bmZ(),t.Wm),s))}, +bD4(){return new A.vU($,$,null,$)}, +bHa(){return new A.tX($,$,$,$,$)}, +bVj(a){return A.q(A.cL(null))}, +bQB(a){return A.q(A.cL(null))}, +bSY(a){var s,r,q=a.M($.bmS(),t.je) +q=q==null?null:J.bCg(q) +s=new A.qd() +if(q!=null){r=$.aqt() +r.f=q +switch(0){}r.d=new A.Xm()}q=$.aqt() +if(!q.Vt(93))q.WK(new A.Q0(),t.JS) +if(!q.Vt(94))q.WK(new A.PZ(),t.M8) +if(!q.Vt(95))q.WK(new A.Q_(),t.PL) +s.zA(!0) +return s}, +bUv(a){return new A.Dp(A.a([],t.F1),B.bu,3,A.a([],t.LU),A.aY(t.S))}, +vU:function vU(a,b,c,d){var _=this +_.pC$=a +_.pD$=b +_.tb$=c +_.qJ$=d +_.a=$}, +tX:function tX(a,b,c,d,e){var _=this +_.dJ$=a +_.dK$=b +_.en$=c +_.ex$=d +_.ey$=e +_.a=$}, +adp:function adp(){}, +ahd:function ahd(){}, +bUJ(a){var s,r=null,q="/library",p=t.yo +p=A.a([A.brS(A.bUZ(),$.byX(),A.a([A.brS(A.bV3(),$.bzi(),A.a([A.fP(A.bUU(),r,"/",B.b1,t.Ae),A.fP(A.bUV(),r,q,B.b1,t.BH),A.fP(A.bV7(),r,"/updates",B.b1,t.wR),A.fP(A.bUO(),r,"/browse",B.b1,t.i4),A.fP(A.bUQ(),r,"/downloads",B.b1,t.g7),A.fP(A.bUY(),r,"/more",B.b1,t.Ig)],p),t.ti),A.fP(A.bUX(),$.byP(),"/manga/:mangaId",B.b1,t.sy),A.fP(A.bV6(),$.bzz(),"/update-status",B.b1,t.kg),A.fP(A.bUT(),$.byF(),"/global-search",B.b1,t.Ul),A.fP(A.bV5(),$.bzk(),"/source/:sourceId/preference",B.b1,t.GP),A.fP(A.bV4(),$.bzj(),"/source/:sourceId/:sourceType",B.b1,t.xy),A.fP(A.bUL(),$.bya(),"/about",B.b1,t.uY),A.fP(A.bV_(),$.bz0(),"/manga/:mangaId/chapter/:chapterIndex",B.b1,t.gy),A.fP(A.bV2(),$.bzg(),"/settings",A.a([A.fP(A.bUW(),$.byO(),"library",A.a([A.fP(A.bUR(),$.byu(),"edit-categories",B.b1,t.sv)],p),t.Fs),A.fP(A.bV1(),$.bzf(),"server",B.b1,t.yc),A.fP(A.bV0(),$.bz1(),"reader",B.b1,t.N7),A.fP(A.bUM(),$.byb(),"appearance",B.b1,t.Ao),A.fP(A.bUS(),$.byE(),"general",B.b1,t.RQ),A.fP(A.bUP(),$.bye(),"browse",B.b1,t.y7),A.fP(A.bUN(),$.byc(),"backup",B.b1,t.kk)],p),t.G2)],p),t.hN)],p) +s=$.bB_() +return A.bGr(!0,r,r,r,r,q,s,r,r,!1,r,!0,r,!1,new A.aeg(new A.aQp(p,A.bUK(),5)))}, +bxY(a){return B.O5}, +by3(a){return B.Og}, +bxQ(a){return B.NI}, +bxR(a){return new A.tZ(A.acV("initial-category-order",a.b.gr9(),A.bwh()))}, +bgK(a){var s=A.F(t.N,t.z),r=a.a +if(r!=null)s.p(0,"initial-category-order",B.f.j(r)) +return A.e8("/library",s)}, +bxS(a){return new A.aqp(a)}, +by7(a){return B.m_}, +by9(a){return A.e8("/updates",null)}, +by8(a){return new A.aqr(a)}, +bxG(a){return B.lW}, +bxI(a){return A.e8("/browse",null)}, +bxH(a){return new A.aqn(a)}, +bxK(a){return B.lX}, +bxM(a){return A.e8("/downloads",null)}, +bxL(a){return new A.aqo(a)}, +bxV(a){return B.lY}, +bxX(a){return A.e8("/more",null)}, +bxW(a){return new A.aqq(a)}, +bxU(a){var s=a.r.i(0,"mangaId") +s.toString +return new A.j3(A.ef(s,null,null),A.acV("category-id",a.b.gr9(),A.bwh()))}, +py(a){var s=A.k6(B.fi,B.f.j(a.a),B.O,!1),r=A.F(t.N,t.z),q=a.b +if(q!=null)r.p(0,"category-id",B.f.j(q)) +return A.e8("/manga/"+s,r)}, +by6(a){return B.Ov}, +bxP(a){return new A.tE(a.b.gr9().i(0,"query"))}, +bm7(a){var s=A.F(t.N,t.z),r=a.a +if(r!=null)s.p(0,"query",r) +return A.e8("/global-search",s)}, +by5(a){var s=a.r.i(0,"sourceId") +s.toString +return new A.Ei(s)}, +by4(a){var s=a.r,r=s.i(0,"sourceId") +r.toString +s=s.i(0,"sourceType") +s.toString +return new A.kA(r,A.bOV(B.EY,s,t.IU),a.b.gr9().i(0,"query"),t.uS.a(a.w))}, +vJ(a){var s,r,q=A.k6(B.fi,a.a,B.O,!1),p=B.EY.i(0,a.b) +p.toString +p=A.k6(B.fi,p,B.O,!1) +s=A.F(t.N,t.z) +r=a.c +if(r!=null)s.p(0,"query",r) +return A.e8("/source/"+q+"/"+p,s)}, +bxD(a){return B.Nc}, +bxZ(a){var s,r,q,p=null,o=a.r,n=o.i(0,"mangaId") +n.toString +n=A.ef(n,p,p) +o=o.i(0,"chapterIndex") +o.toString +o=A.ef(o,p,p) +s=a.b +r=A.acV("trans-vertical",s.gr9(),A.blT()) +q=A.acV("to-prev",s.gr9(),A.blT()) +s=A.acV("show-reader-layout-animation",s.gr9(),A.blT()) +return new A.i4(n,o,r,q,s==null?!1:s)}, +mw(a){var s=A.k6(B.fi,B.f.j(a.a),B.O,!1),r=A.k6(B.fi,B.f.j(a.b),B.O,!1),q=A.F(t.N,t.z),p=a.c +if(p!=null)q.p(0,"trans-vertical",B.b0.j(p)) +p=a.d +if(p!=null)q.p(0,"to-prev",B.b0.j(p)) +if(a.e)q.p(0,"show-reader-layout-animation",B.b0.j(!0)) +return A.e8("/manga/"+s+"/chapter/"+r,q)}, +by1(a){return B.qv}, +by2(a){return A.e8("/settings",null)}, +bxT(a){return B.NM}, +bxN(a){return B.Ny}, +by0(a){return B.Of}, +by_(a){return B.O6}, +bxE(a){return B.Nf}, +bxO(a){return B.NE}, +bxJ(a){return B.Nk}, +bxF(a){return B.Ng}, +acV(a,b,c){var s=b.i(0,a) +return s==null?null:c.$1(s)}, +bOV(a,b,c){var s=a.gdW(a) +return s.pg(s,new A.bdD(b,c)).a}, +bLW(a){switch(a){case"true":return!0 +case"false":return!1 +default:throw A.c(A.a7('Cannot convert "'+a+'" into a bool.'))}}, +Dq:function Dq(){}, +E9:function E9(){}, +C1:function C1(){}, +tZ:function tZ(a){this.a=a}, +F6:function F6(){}, +Az:function Az(){}, +Bm:function Bm(){}, +CP:function CP(){}, +j3:function j3(a,b){this.a=a +this.b=b}, +F5:function F5(){}, +tE:function tE(a){this.a=a}, +kA:function kA(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +Ei:function Ei(a){this.a=a}, +Ad:function Ad(){}, +i4:function i4(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +aNB:function aNB(a){this.a=a}, +E7:function E7(){}, +Ct:function Ct(){}, +Bs:function Bs(){}, +E3:function E3(){}, +Dy:function Dy(){}, +Al:function Al(){}, +BR:function BR(){}, +AA:function AA(){}, +At:function At(){}, +aqp:function aqp(a){this.a=a}, +aqr:function aqr(a){this.a=a}, +aqn:function aqn(a){this.a=a}, +aqo:function aqo(a){this.a=a}, +aqq:function aqq(a){this.a=a}, +bdD:function bdD(a,b){this.a=a +this.b=b}, +a9_:function a9_(a){this.a=a}, +aTY:function aTY(){}, +bnY(a,b,c){if(!A.bnZ(a))A.vT(a,null,new A.as7(b),c,t.P)}, +hq(a,b,c,d){if(c)A.tD(new A.asb(a,b,d),t.H) +else A.bnY(a,b,d)}, +ih(a,b,c,d,e,f,g){var s={} +s.a=g +if(d)s.a=new A.asc() +return A.bhK(a,c,new A.asd(s,f,b,e),new A.ase(s),!0,!0,!1)}, +nZ(a,b,c,d){return A.bhK(a,new A.as8(b,c,d),new A.as9(d),new A.asa(d),!0,!0,!1)}, +YD(a){var s,r=A.bd(a).c +r===$&&A.b() +s=B.b.ga1(r.d.a) +return(s instanceof A.i_?s.d:r.d).c.j(0)}, +boG(a,b){var s=B.f.cY(A.dC(0,Date.now()-a.a,0).a,864e8) +if(s<1)return A.A(b,B.h,t.J).gp0() +else if(s<2)return A.A(b,B.h,t.J).gp7() +else if(s<10)return A.A(b,B.h,t.J).my(s) +else return A.a_I(b.ae(t.Gk).r.f.rP("-")).tj(a)}, +biT(a){return B.c.eM(B.f.j(a),2,"0")}, +bGN(a,b){if(a==null)return"" +return A.boG(A.mJ(a*1000,!1),b)}, +bGM(a,b){return A.boG(A.mJ(a,!1),b)}, +bGL(a,b){var s,r +if(a==null||b==null)return!1 +a.toString +s=A.mJ(a*1000,!1) +r=A.mJ(b*1000,!1) +return A.yc(s)===A.yc(r)&&A.ku(s)===A.ku(r)&&A.Dl(s)===A.Dl(r)}, +xi(a){var s +if(a==null)return null +s=J.ao(a) +if(s.u())return s.gH(s) +return null}, +bGX(a,b){var s,r,q=null +try{s=J.bnD(a,b,q) +return s}catch(r){return null}}, +bGV(a,b){var s,r,q=null +try{s=J.bnu(a,b,q) +return s}catch(r){return null}}, +aIs(a,b,c){var s=A.F(b,c) +a.af(0,new A.aIt(s,b,c)) +return s}, +bja(a,b,c,d,e){var s +if(J.jn(a,b)){s=A.oo(a,d,e) +s.F(0,b) +return s}else{s=A.oo(a,d,e) +s.p(0,b,c) +return s}}, +Of(a,b){if(a==null)return!1 +if(b==null||b.length===0)return!0 +return B.c.n(a.toLowerCase(),b.toLowerCase())}, +bsh(a){if(a.length===0)return null +return B.c.vt(a,A.bF("http",!1,!1,!1),"ws")}, +as7:function as7(a){this.a=a}, +asb:function asb(a,b,c){this.a=a +this.b=b +this.c=c}, +asc:function asc(){}, +asd:function asd(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +ase:function ase(a){this.a=a}, +as8:function as8(a,b,c){this.a=a +this.b=b +this.c=c}, +as9:function as9(a){this.a=a}, +asa:function asa(a){this.a=a}, +aIt:function aIt(a,b,c){this.a=a +this.b=b +this.c=c}, +bxz(a,b,c){return $.b7.bm(new A.Gq(a,null,null,b.h("@<0>").S(c).h("Gq<1,2>")),b.h("@<0>").S(c).h("qw<1,2>"))}, +Gq:function Gq(a,b,c,d){var _=this +_.b=a +_.c=b +_.a=c +_.$ti=d}, +Sh:function Sh(a){var _=this +_.d=$ +_.c=_.b=_.a=null +_.$ti=a}, +bk1(a,b){return new A.aaj(b,a,null)}, +bue(a,b){a=a+b&536870911 +a=a+((a&524287)<<10)&536870911 +return a^a>>>6}, +eA(a){var s=null +return new A.OS(a,new A.aYc(a),s,B.Ou,s,"toastProvider",s,s)}, +er:function er(a){this.a=a +this.b=$}, +aYf:function aYf(a,b){this.a=a +this.b=b}, +aaj:function aaj(a,b,c){this.c=a +this.e=b +this.a=c}, +aah:function aah(){}, +OS:function OS(a,b,c,d,e,f,g,h){var _=this +_.dy=a +_.ay=b +_.d=c +_.e=d +_.f=e +_.a=f +_.b=g +_.c=h}, +aYc:function aYc(a){this.a=a}, +OT:function OT(){}, +an8:function an8(a,b,c,d,e,f,g,h){var _=this +_.dQ$=a +_.f8$=b +_.a=null +_.b=!1 +_.c=$ +_.d=c +_.e=$ +_.f=d +_.r=e +_.w=f +_.x=g +_.y=h +_.CW=_.ch=_.ay=_.ax=_.at=_.as=_.Q=_.z=null +_.fx=_.fr=_.dy=_.dx=_.db=_.cy=_.cx=!1 +_.fy=null}, +apv:function apv(){}, +b_:function b_(){}, +aSK:function aSK(){}, +aSL:function aSL(a){this.a=a}, +ey:function ey(){}, +aSM:function aSM(a){this.a=a}, +En:function En(){}, +tn:function tn(a){this.a=a}, +axv:function axv(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +axx:function axx(a,b,c,d,e,f,g,h){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=h}, +axw:function axw(a,b,c,d,e,f,g,h){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=h}, +axy:function axy(a,b,c,d,e,f,g,h){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=h}, +axu:function axu(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +axt:function axt(a,b){this.a=a +this.b=b}, +bQ0(a){var s,r +try{s=B.at.uK(0,a,null) +return s}catch(r){return a}}, +bU6(a){return A.Hf(A.bTV(),a,null,t.N,t.z)}, +bTU(a){return new A.Bh()}, +Bh:function Bh(){}, +axS:function axS(a,b){this.a=a +this.b=b}, +axR:function axR(a){this.a=a}, +X5:function X5(a,b,c,d){var _=this +_.d=a +_.e=b +_.f=c +_.a=d}, +arN:function arN(a,b){this.a=a +this.b=b}, +arO:function arO(a,b){this.a=a +this.b=b}, +Xa:function Xa(a,b,c,d,e,f,g,h){var _=this +_.d=a +_.e=b +_.f=c +_.r=d +_.w=e +_.x=f +_.z=g +_.a=h}, +as5:function as5(a,b){this.a=a +this.b=b}, +as6:function as6(a,b){this.a=a +this.b=b}, +wn(a,b,c,d,e){return new A.J1(c,b,a,d,null,e.h("J1<0>"))}, +J1:function J1(a,b,c,d,e,f){var _=this +_.e=a +_.f=b +_.r=c +_.w=d +_.a=e +_.$ti=f}, +bjg(a,b){return new A.a57(a,b,null)}, +pM:function pM(a,b){this.c=a +this.a=b}, +a90:function a90(a){this.a=a}, +a57:function a57(a,b,c){this.c=a +this.d=b +this.a=c}, +hU(a,b){return new A.Bz(b,a,null)}, +Bz:function Bz(a,b,c){this.d=a +this.f=b +this.a=c}, +aA7:function aA7(){}, +bj7(a,b,c,d,e,f,g){return new A.qo(a,c,b,e,g,d,f,null)}, +qo:function qo(a,b,c,d,e,f,g,h){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.x=g +_.a=h}, +aHQ:function aHQ(a,b){this.a=a +this.b=b}, +aHO:function aHO(a){this.a=a}, +aHP:function aHP(){}, +bqB(a,b,c,d,e){return new A.CG(a,e,c,b,d,null)}, +CG:function CG(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.f=c +_.r=d +_.w=e +_.a=f}, +aHN:function aHN(a){this.a=a}, +bj8(a,b,c,d){return new A.mU(a,c,b,d,null)}, +mU:function mU(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +bFe(){return new A.wA($,$,$,$,$)}, +bLk(){return new A.zk($,$,$,$,$)}, +wA:function wA(a,b,c,d,e){var _=this +_.dJ$=a +_.dK$=b +_.en$=c +_.ex$=d +_.ey$=e +_.a=$}, +zk:function zk(a,b,c,d,e){var _=this +_.dJ$=a +_.dK$=b +_.en$=c +_.ex$=d +_.ey$=e +_.a=$}, +afs:function afs(){}, +anI:function anI(){}, +bj5(a,b,c){return new A.a2V(a,c,b,null)}, +a2V:function a2V(a,b,c,d){var _=this +_.e=a +_.r=b +_.w=c +_.a=d}, +CE:function CE(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +a33:function a33(a,b,c){this.e=a +this.f=b +this.a=c}, +L4:function L4(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +xM:function xM(a,b,c,d,e,f,g){var _=this +_.d=a +_.e=b +_.f=c +_.r=d +_.w=e +_.a=f +_.$ti=g}, +aJV:function aJV(a,b){this.a=a +this.b=b}, +aJX:function aJX(a,b){this.a=a +this.b=b}, +aJW:function aJW(a,b){this.a=a +this.b=b}, +aJU:function aJU(a,b){this.a=a +this.b=b}, +AJ:function AJ(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e +_.$ti=f}, +Q5:function Q5(a,b){var _=this +_.a=null +_.b=a +_.c=null +_.$ti=b}, +b1K:function b1K(a){this.a=a}, +b1J:function b1J(a,b){this.a=a +this.b=b}, +b1I:function b1I(a,b){this.a=a +this.b=b}, +b1H:function b1H(a,b,c){this.a=a +this.b=b +this.c=c}, +ul:function ul(a,b){this.c=a +this.a=b}, +aLX:function aLX(a){this.a=a}, +uq(a,b,c,d,e,f,g){return new A.hD(e,d,f,c,b,a,null,g.h("hD<0>"))}, +hD:function hD(a,b,c,d,e,f,g,h){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.a=g +_.$ti=h}, +ye:function ye(a,b,c,d,e,f,g){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.a=f +_.$ti=g}, +aN3:function aN3(a){this.a=a}, +aN2:function aN2(a,b){this.a=a +this.b=b}, +qP:function qP(a,b,c,d,e,f,g){var _=this +_.d=a +_.e=b +_.f=c +_.r=d +_.w=e +_.x=f +_.a=g}, +aRy:function aRy(a){this.a=a}, +nf(a,b,c,d,e,f,g){return new A.a8l(c,f,b,a,d,g,e,null)}, +a8l:function a8l(a,b,c,d,e,f,g,h){var _=this +_.f=a +_.r=b +_.w=c +_.x=d +_.y=e +_.z=f +_.Q=g +_.a=h}, +aSl:function aSl(a){this.a=a}, +aSj:function aSj(a,b){this.a=a +this.b=b}, +aSk:function aSk(a){this.a=a}, +a8m:function a8m(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +aSi:function aSi(){}, +Xz:function Xz(a,b){this.c=a +this.a=b}, +atj:function atj(a){this.a=a}, +atk:function atk(a){this.a=a}, +atl:function atl(a,b){this.a=a +this.b=b}, +atm:function atm(a){this.a=a}, +a8v:function a8v(a,b){this.f=a +this.a=b}, +aSZ:function aSZ(a,b,c){this.a=a +this.b=b +this.c=c}, +aSY:function aSY(a,b,c){this.a=a +this.b=b +this.c=c}, +aSX:function aSX(a,b,c){this.a=a +this.b=b +this.c=c}, +a8U:function a8U(a,b){this.c=a +this.a=b}, +aTX:function aTX(a){this.a=a}, +aTW:function aTW(a,b){this.a=a +this.b=b}, +bsa(a,b,c,d,e,f){return new A.NU(a,e,c,d,f,b)}, +NU:function NU(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.a=f}, +aTZ:function aTZ(a){this.a=a}, +EK:function EK(a,b,c,d,e){var _=this +_.d=a +_.e=b +_.f=c +_.r=d +_.a=e}, +aXe:function aXe(a,b){this.a=a +this.b=b}, +aXf:function aXf(a,b){this.a=a +this.b=b}, +r2:function r2(){}, +ah_:function ah_(){}, +aat:function aat(a,b){this.a=a +this.b=b}, +Cn:function Cn(a,b){this.a=a +this.b=b}, +aZV:function aZV(){}, +aJ4:function aJ4(){}, +aJ5:function aJ5(){}, +ya:function ya(a,b){this.a=a +this.b=b}, +a20:function a20(a,b,c){this.a=a +this.b=b +this.c=c}, +a2v:function a2v(a,b,c){this.a=a +this.b=b +this.c=c}, +aZE:function aZE(){}, +aZF:function aZF(a){this.a=a +this.b=!1}, +aaP:function aaP(a,b){this.a=a +this.b=b}, +aN0:function aN0(){}, +a4Z:function a4Z(){}, +aaN:function aaN(){}, +aZJ:function aZJ(a){this.a=a}, +aZK:function aZK(a){this.a=a}, +xL(a){var s=new A.bS(new Float64Array(16)) +if(s.k0(a)===0)return null +return s}, +bHP(){return new A.bS(new Float64Array(16))}, +bHQ(){var s=new A.bS(new Float64Array(16)) +s.fQ() +return s}, +ou(a,b,c){var s=new Float64Array(16),r=new A.bS(s) +r.fQ() +s[14]=c +s[13]=b +s[12]=a +return r}, +u7(a,b,c){var s=new Float64Array(16) +s[15]=1 +s[10]=c +s[5]=b +s[0]=a +return new A.bS(s)}, +bS:function bS(a){this.a=a}, +a6B:function a6B(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +d4:function d4(a){this.a=a}, +nn:function nn(a){this.a=a}, +bq1(a,b){var s,r,q,p,o,n,m=null,l=A.bLB(a.j(0),b) +l.binaryType="arraybuffer" +s=new A.a9z(t.Z5) +r=t.z +q=A.ln(m,m,m,!0,r) +p=A.ln(m,m,m,!0,r) +o=A.k(p) +n=A.k(q) +s.a=A.bpU(new A.d_(p,o.h("d_<1>")),new A.zV(q,n.h("zV<1>")),!0,r) +s.b=A.bpU(new A.d_(q,n.h("d_<1>")),new A.zV(p,o.h("zV<1>")),!1,r) +s=new A.aF3(l,s) +s.alz(l) +return s}, +aF3:function aF3(a,b){var _=this +_.a=a +_.e=_.d=null +_.f=$ +_.r=b +_.w=$}, +aF5:function aF5(a){this.a=a}, +aF6:function aF6(a){this.a=a}, +aF7:function aF7(a){this.a=a}, +aF8:function aF8(a){this.a=a}, +aF4:function aF4(a){this.a=a}, +Ri:function Ri(a,b){this.b=a +this.a=b}, +bk8:function bk8(a,b){this.a=a +this.b=b}, +P5:function P5(a){this.a=a}, +bfO(){var s=0,r=A.y(t.H) +var $async$bfO=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:s=2 +return A.t(A.bey(new A.bfP(),new A.bfQ()),$async$bfO) +case 2:return A.w(null,r)}}) +return A.x($async$bfO,r)}, +bfQ:function bfQ(){}, +bfP:function bfP(){}, +bEi(a){a.ae(t.H5) +return null}, +bpZ(a,b){var s,r +a.a3B() +s=a.grM() +r=a.grM().i(0,b) +s.p(0,b,r+1)}, +bq_(a,b){var s=a.grM().i(0,b),r=a.grM(),q=s.a2(0,1) +r.p(0,b,q) +if(q.aPB(0,0))a.grM().F(0,b)}, +bGx(a,b){return a.grM().ao(0,b)}, +bxC(){return null}, +bHl(a){return $.bHk.i(0,a).gaPE()}, +bwO(a){return t.jj.b(a)||t.I3.b(a)||t.M2.b(a)||t.J2.b(a)||t.iy.b(a)||t.BJ.b(a)||t.oL.b(a)}, +bxk(a){if(typeof dartPrint=="function"){dartPrint(a) +return}if(typeof console=="object"&&typeof console.log!="undefined"){console.log(a) +return}if(typeof print=="function"){print(a) +return}throw"Unable to print message: "+String(a)}, +bpJ(a){return A.cA(a)}, +bpd(a){return a}, +bH_(a){return a}, +bKr(a){return a}, +A1(a){var s=u.ba.charCodeAt(a>>>6)+(a&63),r=s&1,q=u.I.charCodeAt(s>>>1) +return q>>>4&-r|q&15&r-1}, +px(a,b){var s=(a&1023)<<10|b&1023,r=u.ba.charCodeAt(1024+(s>>>9))+(s&511),q=r&1,p=u.I.charCodeAt(r>>>1) +return p>>>4&-q|p&15&q-1}, +bm0(){return new A.dl(Date.now(),!1)}, +bw9(){$.bAf() +return B.Np}, +bSW(a,b,c,d){var s,r,q,p,o,n=A.F(d,c.h("e<0>")) +for(s=c.h("G<0>"),r=0;r<1;++r){q=a[r] +p=b.$1(q) +o=n.i(0,p) +if(o==null){o=A.a([],s) +n.p(0,p,o) +p=o}else p=o +J.fu(p,q)}return n}, +bGT(a,b){var s,r +for(s=J.ao(a);s.u();){r=s.gH(s) +if(b.$1(r))return r}return null}, +bGU(a){var s=J.ao(a.a),r=a.$ti +if(new A.p4(s,r.h("p4<1>")).u())return r.c.a(s.gH(s)) +return null}, +VT(a,b,c,d,e){return A.bRa(a,b,c,d,e,e)}, +bRa(a,b,c,d,e,f){var s=0,r=A.y(f),q +var $async$VT=A.u(function(g,h){if(g===1)return A.v(h,r) +while(true)switch(s){case 0:s=3 +return A.t(null,$async$VT) +case 3:q=a.$1(b) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$VT,r)}, +boi(a,b){return A.d3(b,t.z7)}, +au8(a,b){return A.d3(b,t.z7)}, +blW(a,b){var s=0,r=A.y(t.z7),q,p +var $async$blW=A.u(function(c,d){if(c===1)return A.v(d,r) +while(true)$async$outer:switch(s){case 0:if(b==null){q=null +s=1 +break}switch(a.a){case 3:q=b +s=1 +break $async$outer +case 2:q=B.O.gfY().cN(b) +s=1 +break $async$outer +case 0:p=B.at.wX(b,null) +q=B.O.gfY().cN(p) +s=1 +break $async$outer +default:throw A.c(A.a7("Response type not supported : "+a.j(0)+"."))}case 1:return A.w(q,r)}}) +return A.x($async$blW,r)}, +bRI(a,b){switch(a.a){case 3:return b +case 2:return b!=null?B.O.hu(0,b):null +case 0:return b!=null?B.at.uK(0,B.O.hu(0,b),null):null +default:throw A.c(A.a7("Response type not supported : "+a.j(0)+"."))}}, +bJo(a,b){var s,r=a.b +r===$&&A.b() +s=r.i(0,b) +if(t.yp.b(s))return s +if(typeof s=="string")return A.a(s.split(","),t.s) +return s}, +bJr(a,b){if(b==null)return +A.DI(a,"cache-control",b) +A.DI(a,"date",b) +A.DI(a,"etag",b) +A.DI(a,"last-modified",b) +A.DI(a,"expires",b) +A.DI(a,"content-location",b) +A.DI(a,"vary",b)}, +DI(a,b,c){var s=c.e.a.i(0,B.c.dI(b).toLowerCase()) +if(s!=null)a.e.a.p(0,b,s)}, +bJq(a){var s,r,q,p,o=a.b.f +o===$&&A.b() +if(o===B.or)return!0 +o=a.e.a.i(0,B.c.dI("content-disposition").toLowerCase()) +if(o!=null)for(o=J.ao(o);o.u();)for(s=o.gH(o).split(";"),r=s.length,q=0;qc)return c +if(isNaN(a))return c +return a}, +bwo(a,b){var s=t.s,r=A.a(a.split("\n"),s) +$.aqA().I(0,r) +if(!$.bl_)A.bv3()}, +bv3(){var s,r=$.bl_=!1,q=$.bmA() +if(A.dC(q.gUs(),0,0).a>1e6){if(q.b==null)q.b=$.Mp.$0() +q.km(0) +$.apT=0}while(!0){if($.apT<12288){q=$.aqA() +q=!q.gai(q)}else q=r +if(!q)break +s=$.aqA().Bo() +$.apT=$.apT+s.length +A.bxk(s)}r=$.aqA() +if(!r.gai(r)){$.bl_=!0 +$.apT=0 +A.d2(B.e3,A.bUr()) +if($.bds==null)$.bds=new A.aD(new A.a8($.a9,t.b),t.gR)}else{$.bmA().vP(0) +r=$.bds +if(r!=null)r.fj(0) +$.bds=null}}, +biA(a){var s=0,r=A.y(t.H),q +var $async$biA=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)$async$outer:switch(s){case 0:a.ga9().Ce(B.oZ) +switch(A.r(a).r.a){case 0:case 1:q=A.a9N(B.aeP) +s=1 +break $async$outer +case 2:case 3:case 4:case 5:q=A.d3(null,t.H) +s=1 +break $async$outer}case 1:return A.w(q,r)}}) +return A.x($async$biA,r)}, +aBf(a){a.ga9().Ce(B.a6q) +switch(A.r(a).r.a){case 0:case 1:return A.aE9() +case 2:case 3:case 4:case 5:return A.d3(null,t.H)}}, +bIq(){switch(A.cb().a){case 0:case 1:case 3:case 5:return!1 +case 2:case 4:return!0}}, +bUn(a,b,c,d,e){var s,r,q=d.b,p=q+e,o=a.b,n=c.b-10,m=p+o<=n +o=q-e-o +s=(o>=10===m?b:m)?Math.min(p,n):Math.max(o,10) +q=a.a +r=c.a-q +return new A.l(r<=20?r/2:A.S(d.a-q/2,10,r-10),s)}, +aIG(a){var s=a.a +if(s[0]===1&&s[1]===0&&s[2]===0&&s[3]===0&&s[4]===0&&s[5]===1&&s[6]===0&&s[7]===0&&s[8]===0&&s[9]===0&&s[10]===1&&s[11]===0&&s[14]===0&&s[15]===1)return new A.l(s[12],s[13]) +return null}, +bjd(a,b){var s,r,q +if(a==b)return!0 +if(a==null){b.toString +return A.a5_(b)}if(b==null)return A.a5_(a) +s=a.a +r=s[0] +q=b.a +return r===q[0]&&s[1]===q[1]&&s[2]===q[2]&&s[3]===q[3]&&s[4]===q[4]&&s[5]===q[5]&&s[6]===q[6]&&s[7]===q[7]&&s[8]===q[8]&&s[9]===q[9]&&s[10]===q[10]&&s[11]===q[11]&&s[12]===q[12]&&s[13]===q[13]&&s[14]===q[14]&&s[15]===q[15]}, +a5_(a){var s=a.a +return s[0]===1&&s[1]===0&&s[2]===0&&s[3]===0&&s[4]===0&&s[5]===1&&s[6]===0&&s[7]===0&&s[8]===0&&s[9]===0&&s[10]===1&&s[11]===0&&s[12]===0&&s[13]===0&&s[14]===0&&s[15]===1}, +cD(a,b){var s=a.a,r=b.a,q=b.b,p=s[0]*r+s[4]*q+s[12],o=s[1]*r+s[5]*q+s[13],n=s[3]*r+s[7]*q+s[15] +if(n===1)return new A.l(p,o) +else return new A.l(p/n,o/n)}, +aIE(a,b,c,d,e){var s,r=e?1:1/(a[3]*b+a[7]*c+a[15]),q=(a[0]*b+a[4]*c+a[12])*r,p=(a[1]*b+a[5]*c+a[13])*r +if(d){s=$.bgR() +s[2]=q +s[0]=q +s[3]=p +s[1]=p}else{s=$.bgR() +if(qs[2])s[2]=q +if(p>s[3])s[3]=p}}, +j4(b1,b2){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=b1.a,a5=b2.a,a6=b2.b,a7=b2.c,a8=a7-a5,a9=b2.d,b0=a9-a6 +if(!isFinite(a8)||!isFinite(b0)){s=a4[3]===0&&a4[7]===0&&a4[15]===1 +A.aIE(a4,a5,a6,!0,s) +A.aIE(a4,a7,a6,!1,s) +A.aIE(a4,a5,a9,!1,s) +A.aIE(a4,a7,a9,!1,s) +a7=$.bgR() +return new A.I(a7[0],a7[1],a7[2],a7[3])}a7=a4[0] +r=a7*a8 +a9=a4[4] +q=a9*b0 +p=a7*a5+a9*a6+a4[12] +a9=a4[1] +o=a9*a8 +a7=a4[5] +n=a7*b0 +m=a9*a5+a7*a6+a4[13] +a7=a4[3] +if(a7===0&&a4[7]===0&&a4[15]===1){l=p+r +if(r<0)k=p +else{k=l +l=p}if(q<0)l+=q +else k+=q +j=m+o +if(o<0)i=m +else{i=j +j=m}if(n<0)j+=n +else i+=n +return new A.I(l,j,k,i)}else{a9=a4[7] +h=a9*b0 +g=a7*a5+a9*a6+a4[15] +f=p/g +e=m/g +a9=p+r +a7=g+a7*a8 +d=a9/a7 +c=m+o +b=c/a7 +a=g+h +a0=(p+q)/a +a1=(m+n)/a +a7+=h +a2=(a9+q)/a7 +a3=(c+n)/a7 +return new A.I(A.bqI(f,d,a0,a2),A.bqI(e,b,a1,a3),A.bqH(f,d,a0,a2),A.bqH(e,b,a1,a3))}}, +bqI(a,b,c,d){var s=ab?a:b,r=c>d?c:d +return s>r?s:r}, +bqJ(a,b){var s +if(A.a5_(a))return b +s=new A.bS(new Float64Array(16)) +s.cd(a) +s.k0(s) +return A.j4(s,b)}, +aIF(a){var s,r=new A.bS(new Float64Array(16)) +r.fQ() +s=new A.nn(new Float64Array(4)) +s.H6(0,0,0,a.a) +r.NX(0,s) +s=new A.nn(new Float64Array(4)) +s.H6(0,0,0,a.b) +r.NX(1,s) +return r}, +W2(a,b,c){if(a==null||!1)return a===b +return a>b-c&&a60&&b/a>0.15}, +bRD(a,b){if(A.iK(a))if(A.iK(b))if(a>b)return 1 +else if(a>>0 +q=(a0[4]|a0[5]<<8|a0[6]<<16|a0[7]<<24)>>>0 +p=(a0[8]|a0[9]<<8|a0[10]<<16|a0[11]<<24)>>>0 +o=(a0[12]|a0[13]<<8|a0[14]<<16|a0[15]<<24)>>>0 +n=(a0[16]|a0[17]<<8|a0[18]<<16|a0[19]<<24)>>>0 +m=(a0[20]|a0[21]<<8|a0[22]<<16|a0[23]<<24)>>>0 +l=(a0[24]|a0[25]<<8|a0[26]<<16|a0[27]<<24)>>>0 +k=(a0[28]|a0[29]<<8|a0[30]<<16|a0[31]<<24)>>>0 +j=a[0] +j[0]=r +j[1]=q +j[2]=p +j[3]=o +j=a[1] +j[0]=n +j[1]=m +j[2]=l +j[3]=k +for(i=1,h=2;h<14;h+=2,i=g){j=k>>>8|(k&255)<<24 +g=i<<1 +r=(r^(B.au[j&255]|B.au[j>>>8&255]<<8|B.au[j>>>16&255]<<16|B.au[j>>>24&255]<<24)^i)>>>0 +j=a[h] +j[0]=r +q=(q^r)>>>0 +j[1]=q +p=(p^q)>>>0 +j[2]=p +o=(o^p)>>>0 +j[3]=o +n=(n^(B.au[o&255]|B.au[o>>>8&255]<<8|B.au[o>>>16&255]<<16|B.au[o>>>24&255]<<24))>>>0 +j=a[h+1] +j[0]=n +m=(m^n)>>>0 +j[1]=m +l=(l^m)>>>0 +j[2]=l +k=(k^l)>>>0 +j[3]=k}n=k>>>8|(k&255)<<24 +r=(r^(B.au[n&255]|B.au[n>>>8&255]<<8|B.au[n>>>16&255]<<16|B.au[n>>>24&255]<<24)^i)>>>0 +n=a[14] +n[0]=r +q=(q^r)>>>0 +n[1]=q +p=(p^q)>>>0 +n[2]=p +n[3]=(o^p)>>>0 +if(!a1)for(f=1;f<14;++f)for(h=0;h<4;++h){q=a[f] +p=q[h] +e=(p&2139062143)<<1^(p>>>7&16843009)*27 +d=(e&2139062143)<<1^(e>>>7&16843009)*27 +c=(d&2139062143)<<1^(d>>>7&16843009)*27 +b=p^c +p=e^b +o=d^b +q[h]=(e^d^c^(p>>>8|(p&255)<<24)^(o>>>16|(o&65535)<<16)^(b>>>24|b<<8))>>>0}return a}, +bWp(a,b,c,d,e){var s,r,q,p,o,n,m,l,k=b[c],j=b[c+1],i=b[c+2],h=b[c+3],g=a[0],f=(k|j<<8|i<<16|h<<24)^g[0] +h=c+4 +s=(b[h]|b[h+1]<<8|b[h+2]<<16|b[h+3]<<24)^g[1] +h=c+8 +r=(b[h]|b[h+1]<<8|b[h+2]<<16|b[h+3]<<24)^g[2] +h=c+12 +q=(b[h]|b[h+1]<<8|b[h+2]<<16|b[h+3]<<24)^g[3] +for(p=1;p<13;){k=B.cf[f&255] +j=B.cd[s>>>8&255] +i=B.cg[r>>>16&255] +h=B.ch[q>>>24&255] +g=a[p] +o=k^j^i^h^g[0] +n=B.cf[s&255]^B.cd[r>>>8&255]^B.cg[q>>>16&255]^B.ch[f>>>24&255]^g[1] +m=B.cf[r&255]^B.cd[q>>>8&255]^B.cg[f>>>16&255]^B.ch[s>>>24&255]^g[2] +l=B.cf[q&255]^B.cd[f>>>8&255]^B.cg[s>>>16&255]^B.ch[r>>>24&255]^g[3];++p +g=B.cf[o&255] +h=B.cd[n>>>8&255] +i=B.cg[m>>>16&255] +j=B.ch[l>>>24&255] +k=a[p] +f=g^h^i^j^k[0] +s=B.cf[n&255]^B.cd[m>>>8&255]^B.cg[l>>>16&255]^B.ch[o>>>24&255]^k[1] +r=B.cf[m&255]^B.cd[l>>>8&255]^B.cg[o>>>16&255]^B.ch[n>>>24&255]^k[2] +q=B.cf[l&255]^B.cd[o>>>8&255]^B.cg[n>>>16&255]^B.ch[m>>>24&255]^k[3];++p}k=B.cf[f&255] +j=B.cd[s>>>8&255] +i=B.cg[r>>>16&255] +h=B.ch[q>>>24&255] +g=a[p] +o=k^j^i^h^g[0] +n=B.cf[s&255]^B.cd[r>>>8&255]^B.cg[q>>>16&255]^B.ch[f>>>24&255]^g[1] +m=B.cf[r&255]^B.cd[q>>>8&255]^B.cg[f>>>16&255]^B.ch[s>>>24&255]^g[2] +l=B.cf[q&255]^B.cd[f>>>8&255]^B.cg[s>>>16&255]^B.ch[r>>>24&255]^g[3] +g=B.au[o&255] +h=B.au[n>>>8&255] +i=B.au[m>>>16&255] +j=B.au[l>>>24&255] +k=a[p+1] +f=(g&255^h<<8^i<<16^j<<24^k[0])>>>0 +s=(B.au[n&255]&255^B.au[m>>>8&255]<<8^B.au[l>>>16&255]<<16^B.au[o>>>24&255]<<24^k[1])>>>0 +r=(B.au[m&255]&255^B.au[l>>>8&255]<<8^B.au[o>>>16&255]<<16^B.au[n>>>24&255]<<24^k[2])>>>0 +q=(B.au[l&255]&255^B.au[o>>>8&255]<<8^B.au[n>>>16&255]<<16^B.au[m>>>24&255]<<24^k[3])>>>0 +d[e]=f +d[e+1]=f>>>8 +d[e+2]=f>>>16 +d[e+3]=f>>>24 +k=e+4 +d[k]=s +d[k+1]=s>>>8 +d[k+2]=s>>>16 +d[k+3]=s>>>24 +k=e+8 +d[k]=r +d[k+1]=r>>>8 +d[k+2]=r>>>16 +d[k+3]=r>>>24 +k=e+12 +d[k]=q +d[k+1]=q>>>8 +d[k+2]=q>>>16 +d[k+3]=q>>>24}, +bWo(a,b,c,d,e){var s,r,q,p,o,n,m,l,k=b[c],j=b[c+1],i=b[c+2],h=b[c+3],g=a[14],f=(k|j<<8|i<<16|h<<24)^g[0] +h=c+4 +s=(b[h]|b[h+1]<<8|b[h+2]<<16|b[h+3]<<24)^g[1] +h=c+8 +r=(b[h]|b[h+1]<<8|b[h+2]<<16|b[h+3]<<24)^g[2] +h=c+12 +q=(b[h]|b[h+1]<<8|b[h+2]<<16|b[h+3]<<24)^g[3] +for(p=13;p>1;){k=B.ci[f&255] +j=B.cj[q>>>8&255] +i=B.cc[r>>>16&255] +h=B.ce[s>>>24&255] +g=a[p] +o=k^j^i^h^g[0] +n=B.ci[s&255]^B.cj[f>>>8&255]^B.cc[q>>>16&255]^B.ce[r>>>24&255]^g[1] +m=B.ci[r&255]^B.cj[s>>>8&255]^B.cc[f>>>16&255]^B.ce[q>>>24&255]^g[2] +l=B.ci[q&255]^B.cj[r>>>8&255]^B.cc[s>>>16&255]^B.ce[f>>>24&255]^g[3];--p +g=B.ci[o&255] +h=B.cj[l>>>8&255] +i=B.cc[m>>>16&255] +j=B.ce[n>>>24&255] +k=a[p] +f=g^h^i^j^k[0] +s=B.ci[n&255]^B.cj[o>>>8&255]^B.cc[l>>>16&255]^B.ce[m>>>24&255]^k[1] +r=B.ci[m&255]^B.cj[n>>>8&255]^B.cc[o>>>16&255]^B.ce[l>>>24&255]^k[2] +q=B.ci[l&255]^B.cj[m>>>8&255]^B.cc[n>>>16&255]^B.ce[o>>>24&255]^k[3];--p}k=B.ci[f&255] +j=B.cj[q>>>8&255] +i=B.cc[r>>>16&255] +h=B.ce[s>>>24&255] +g=a[p] +o=k^j^i^h^g[0] +n=B.ci[s&255]^B.cj[f>>>8&255]^B.cc[q>>>16&255]^B.ce[r>>>24&255]^g[1] +m=B.ci[r&255]^B.cj[s>>>8&255]^B.cc[f>>>16&255]^B.ce[q>>>24&255]^g[2] +l=B.ci[q&255]^B.cj[r>>>8&255]^B.cc[s>>>16&255]^B.ce[f>>>24&255]^g[3] +g=B.bw[o&255] +h=B.bw[l>>>8&255] +i=B.bw[m>>>16&255] +j=B.bw[n>>>24&255] +k=a[0] +f=(g^h<<8^i<<16^j<<24^k[0])>>>0 +s=(B.bw[n&255]&255^B.bw[o>>>8&255]<<8^B.bw[l>>>16&255]<<16^B.bw[m>>>24&255]<<24^k[1])>>>0 +r=(B.bw[m&255]&255^B.bw[n>>>8&255]<<8^B.bw[o>>>16&255]<<16^B.bw[l>>>24&255]<<24^k[2])>>>0 +q=(B.bw[l&255]&255^B.bw[m>>>8&255]<<8^B.bw[n>>>16&255]<<16^B.bw[o>>>24&255]<<24^k[3])>>>0 +d[e]=f +d[e+1]=f>>>8 +d[e+2]=f>>>16 +d[e+3]=f>>>24 +k=e+4 +d[k]=s +d[k+1]=s>>>8 +d[k+2]=s>>>16 +d[k+3]=s>>>24 +k=e+8 +d[k]=r +d[k+1]=r>>>8 +d[k+2]=r>>>16 +d[k+3]=r>>>24 +k=e+12 +d[k]=q +d[k+1]=q>>>8 +d[k+2]=q>>>16 +d[k+3]=q>>>24}, +bJ1(a,b){var s,r=new Uint8Array(b) +for(s=0;s=65&&a<=90))s=a>=97&&a<=122 +else s=!0 +return s}, +bwP(a,b){var s=a.length,r=b+2 +if(s")),q=q.h("ax.E");r.u();){p=r.d +if(!J.i(p==null?q.a(p):p,s))return!1}return!0}, +bUI(a,b){var s=B.b.eX(a,null) +if(s<0)throw A.c(A.bU(A.h(a)+" contains no null elements.",null)) +a[s]=b}, +bxq(a,b){var s=B.b.eX(a,b) +if(s<0)throw A.c(A.bU(A.h(a)+" contains no elements matching "+b.j(0)+".",null)) +a[s]=null}, +bRn(a,b){var s,r,q,p +for(s=new A.hQ(a),r=t.Hz,s=new A.bZ(s,s.gt(s),r.h("bZ")),r=r.h("ac.E"),q=0;s.u();){p=s.d +if((p==null?r.a(p):p)===b)++q}return q}, +bfj(a,b,c){var s,r,q +if(b.length===0)for(s=0;!0;){r=B.c.h0(a,"\n",s) +if(r===-1)return a.length-s>=c?s:null +if(r-s>=c)return s +s=r+1}r=B.c.eX(a,b) +for(;r!==-1;){q=r===0?0:B.c.AW(a,"\n",r-1)+1 +if(c===r-q)return q +r=B.c.h0(a,b,r+1)}return null}, +aqf(){var s=0,r=A.y(t.H),q,p,o,n,m,l,k +var $async$aqf=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:if($.ar==null)A.bka() +$.ar.toString +s=2 +return A.t(A.aL2(),$async$aqf) +case 2:q=b +s=3 +return A.t(A.aSS(),$async$aqf) +case 3:p=b +A.aWU(B.a1p) +$.bpS=!0 +o=$.aqN() +n=A.bk5(q,o.$ti.h("eo.0")) +m=$.bhj() +l=A.bk5(p,m.$ti.h("eo.0")) +k=$.bmS() +k=A.a([new A.Do(o,n),new A.Do(m,l),new A.Do(k,A.bk5(null,k.$ti.h("eo.0")))],t.AT) +if($.ar==null)A.bka() +o=$.ar +o.toString +n=$.bL().d.i(0,0) +n.toString +o.af4(new A.aaT(n,new A.Ms(B.aea,k,null),new A.q9(n,t.bT))) +o.XZ() +return A.w(null,r)}}) +return A.x($async$aqf,r)}, +aAb(a,b,c,d){var s=c==null?"http://127.0.0.1":c,r=d!=null&&a?":"+A.h(d):"",q=b?"/api/v1":"" +return s+r+q}, +bwH(a){var s,r=a.rP("-").toLowerCase(),q=$.lA() +if(q.i(0,r)!=null){q=q.i(0,r) +s=q.gh9(q)}else if(q.i(0,a.ge_(a).toLowerCase())!=null){q=q.i(0,a.ge_(a).toLowerCase()) +s=q.gh9(q)}else s=null +return s==null?a.rP("-"):s}, +bSJ(a){var s,r=a.rP("-").toLowerCase(),q=$.lA() +if(q.i(0,r)!=null)s=q.i(0,r).b +else s=q.i(0,a.ge_(a).toLowerCase())!=null?q.i(0,a.ge_(a).toLowerCase()).b:null +return s==null?a.rP("-"):s}, +beq(a){return A.bQu(a)}, +bQu(a){var s=0,r=A.y(t.ly),q,p,o +var $async$beq=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:o=new A.hP(new A.aD(new A.a8($.a9,t.Ic),t.L4)) +a.kj(o.gdP(o)) +s=3 +return A.t(a.M($.aqH(),t.JC).GH(o),$async$beq) +case 3:p=c +a.ic() +q=p +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$beq,r)}, +bU0(a){return A.q(A.cL(null))}, +Ih(a,b,c){var s=0,r=A.y(t.lC),q,p,o,n,m,l +var $async$Ih=A.u(function(d,e){if(d===1)return A.v(e,r) +while(true)switch(s){case 0:n=b.aa(0,$.vM(),t.Wr) +m=t.v +l=b.aa(0,$.Hn(),m) +m=b.aa(0,$.Hp(),m) +p=b.aa(0,$.A8(),t.bo) +o=b.aa(0,$.Ho(),t.u) +m=A.aAb(o===!0,!0,m,p) +if(n===B.iB&&l!=null){p=t.N +p=A.ap(["Authorization",l],p,p)}else p=null +s=3 +return A.t(a.C6(m+c,p),$async$Ih) +case 3:q=e +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$Ih,r)}, +bql(a){var s +if(a!=null){s=$.lA().i(0,a.toLowerCase()) +if(s==null)s=new A.Fk(a.toLowerCase(),null,null)}else s=null +return s}, +nR(a,b,c){var s=0,r=A.y(t.H) +var $async$nR=A.u(function(d,e){if(d===1)return A.v(e,r) +while(true)switch(s){case 0:s=4 +return A.t(A.blI(A.dH(b,0,null),B.VR,"_blank"),$async$nR) +case 4:s=!e?2:3 +break +case 2:s=5 +return A.t(A.AY(new A.tc(b)),$async$nR) +case 5:if(a.f!=null)if(c!=null)c.H9(A.A(a,B.h,t.J).mH(b)) +case 3:return A.w(null,r)}}) +return A.x($async$nR,r)}, +Ak(a,b){if(a!=null)return a.$1(b) +return b}, +bEK(a){var s,r,q +switch(a.c.a){case 5:s="Request cancelled" +break +case 0:s="Connection timeout" +break +case 7:s="Check your Internet Connection" +break +case 2:s="Receive timeout" +break +case 4:s=a.b +r=s==null +if((r?null:s.c)!=null)s="Received invalid status code: "+A.h(r?null:s.c) +else s="Something went wrong!" +break +case 1:s="Send timeout" +break +case 3:s="Check your Internet Connection (Incorrect certificate )" +break +case 6:s="Check your Internet Connection (Check server IP in settings)" +break +default:s=null}q=s +return q}, +bRh(a){switch(a.a){case 0:return B.oa +case 2:return B.J3 +case 1:return B.J2 +case 3:return B.abU +case 4:return B.J4}}, +blI(a,b,c){var s=0,r=A.y(t.y),q,p +var $async$blI=A.u(function(d,e){if(d===1)return A.v(e,r) +while(true)switch(s){case 0:if(b===B.VP||b===B.VQ)p=!(a.gfg()==="https"||a.gfg()==="http") +else p=!1 +if(p)throw A.c(A.eR(a,"url","To use an in-app web view, you must provide an http(s) URL.")) +q=$.bzA().Fp(a.j(0),new A.a2v(A.bRh(b),new A.a20(!0,!0,B.fl),c)) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$blI,r)}, +bLv(a){var s,r,q,p,o,n,m,l,k,j=null,i=A.bsZ(j,a,B.alp) +if(!i){s=A.bsZ(j,a,B.alo) +if(s)A.q(A.cJ("The provided UUID is not RFC4122 compliant. It seems you might be using a Microsoft GUID. Try setting `validationMode = ValidationMode.nonStrict`",a,j)) +A.q(A.cJ("The provided UUID is invalid.",a,j))}r=new Uint8Array(16) +for(q=A.bF("[0-9a-f]{2}",!0,!1,!1).rT(0,a.toLowerCase()),q=new A.r8(q.a,q.b,q.c),p=t.Qz,o=0;q.u();){n=q.d +if(n==null)n=p.a(n) +if(o<16){m=n.b +l=m.index +k=o+1 +r[o]=A.ef(B.c.U(a.toLowerCase(),l,l+m[0].length),j,16) +o=k}}for(;o<16;o=k){k=o+1 +r[o]=0}return r}, +bk3(a){var s=a.length +if(s-0<16)throw A.c(A.c6("buffer too small: need 16: length="+s)) +s=$.bzD() +return s[a[0]]+s[a[1]]+s[a[2]]+s[a[3]]+"-"+s[a[4]]+s[a[5]]+"-"+s[a[6]]+s[a[7]]+"-"+s[a[8]]+s[a[9]]+"-"+s[a[10]]+s[a[11]]+s[a[12]]+s[a[13]]+s[a[14]]+s[a[15]]}, +bsZ(a,b,c){var s +if(b==="00000000-0000-0000-0000-000000000000")return!0 +if(b.length!==36)return!1 +switch(c.a){case 1:s=A.bF("^[0-9a-f]{8}-[0-9a-f]{4}-[0-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$",!1,!0,!1) +return s.b.test(b.toLowerCase()) +case 0:s=A.bF("^[0-9a-f]{8}-[0-9a-f]{4}-[0-8][0-9a-f]{3}-[0-9a-f]{4}-[0-9a-f]{12}$",!1,!0,!1) +return s.b.test(b.toLowerCase()) +default:throw A.c(A.cR("`"+c.j(0)+"` is an invalid ValidationMode."))}}},J={ +blJ(a,b,c,d){return{i:a,p:b,e:c,x:d}}, +aqc(a){var s,r,q,p,o,n=a[v.dispatchPropertyName] +if(n==null)if($.blE==null){A.bT4() +n=a[v.dispatchPropertyName]}if(n!=null){s=n.p +if(!1===s)return n.i +if(!0===s)return a +r=Object.getPrototypeOf(a) +if(s===r)return n.i +if(n.e===r)throw A.c(A.cL("Return interceptor for "+A.h(s(a,n))))}q=a.constructor +if(q==null)p=null +else{o=$.b5J +if(o==null)o=$.b5J=v.getIsolateTag("_$dart_js") +p=q[o]}if(p!=null)return p +p=A.bTy(a) +if(p!=null)return p +if(typeof a=="function")return B.VE +s=Object.getPrototypeOf(a) +if(s==null)return B.J0 +if(s===Object.prototype)return B.J0 +if(typeof q=="function"){o=$.b5J +if(o==null)o=$.b5J=v.getIsolateTag("_$dart_js") +Object.defineProperty(q,o,{value:B.ph,enumerable:false,writable:true,configurable:true}) +return B.ph}return B.ph}, +a2e(a,b){if(a<0||a>4294967295)throw A.c(A.cK(a,0,4294967295,"length",null)) +return J.lK(new Array(a),b)}, +Cf(a,b){if(a<0)throw A.c(A.bU("Length must be a non-negative integer: "+a,null)) +return A.a(new Array(a),b.h("G<0>"))}, +om(a,b){if(a<0)throw A.c(A.bU("Length must be a non-negative integer: "+a,null)) +return A.a(new Array(a),b.h("G<0>"))}, +lK(a,b){return J.aGa(A.a(a,b.h("G<0>")))}, +aGa(a){a.fixed$length=Array +return a}, +bqi(a){a.fixed$length=Array +a.immutable$list=Array +return a}, +bGZ(a,b){return J.Ab(a,b)}, +bqj(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}}, +biU(a,b){var s,r +for(s=a.length;b0;b=s){s=b-1 +r=a.charCodeAt(s) +if(r!==32&&r!==13&&!J.bqj(r))break}return b}, +iM(a){if(typeof a=="number"){if(Math.floor(a)==a)return J.Cg.prototype +return J.KB.prototype}if(typeof a=="string")return J.qi.prototype +if(a==null)return J.Ch.prototype +if(typeof a=="boolean")return J.Kz.prototype +if(Array.isArray(a))return J.G.prototype +if(typeof a!="object"){if(typeof a=="function")return J.on.prototype +return a}if(a instanceof A.B)return a +return J.aqc(a)}, +bSH(a){if(typeof a=="number")return J.tT.prototype +if(typeof a=="string")return J.qi.prototype +if(a==null)return a +if(Array.isArray(a))return J.G.prototype +if(typeof a!="object"){if(typeof a=="function")return J.on.prototype +return a}if(a instanceof A.B)return a +return J.aqc(a)}, +ak(a){if(typeof a=="string")return J.qi.prototype +if(a==null)return a +if(Array.isArray(a))return J.G.prototype +if(typeof a!="object"){if(typeof a=="function")return J.on.prototype +return a}if(a instanceof A.B)return a +return J.aqc(a)}, +cn(a){if(a==null)return a +if(Array.isArray(a))return J.G.prototype +if(typeof a!="object"){if(typeof a=="function")return J.on.prototype +return a}if(a instanceof A.B)return a +return J.aqc(a)}, +bSI(a){if(typeof a=="number"){if(Math.floor(a)==a)return J.Cg.prototype +return J.KB.prototype}if(a==null)return a +if(!(a instanceof A.B))return J.p2.prototype +return a}, +bft(a){if(typeof a=="number")return J.tT.prototype +if(a==null)return a +if(!(a instanceof A.B))return J.p2.prototype +return a}, +bwF(a){if(typeof a=="number")return J.tT.prototype +if(typeof a=="string")return J.qi.prototype +if(a==null)return a +if(!(a instanceof A.B))return J.p2.prototype +return a}, +mv(a){if(typeof a=="string")return J.qi.prototype +if(a==null)return a +if(!(a instanceof A.B))return J.p2.prototype +return a}, +bK(a){if(a==null)return a +if(typeof a!="object"){if(typeof a=="function")return J.on.prototype +return a}if(a instanceof A.B)return a +return J.aqc(a)}, +eW(a){if(a==null)return a +if(!(a instanceof A.B))return J.p2.prototype +return a}, +bnp(a,b){if(typeof a=="number"&&typeof b=="number")return a+b +return J.bSH(a).T(a,b)}, +i(a,b){if(a==null)return b==null +if(typeof a!="object")return b!=null&&a===b +return J.iM(a).l(a,b)}, +bBV(a,b){if(typeof a=="number"&&typeof b=="number")return a*b +return J.bwF(a).au(a,b)}, +bBW(a,b){if(typeof a=="number"&&typeof b=="number")return a-b +return J.bft(a).a2(a,b)}, +b3(a,b){if(typeof b==="number")if(Array.isArray(a)||typeof a=="string"||A.bwR(a,a[v.dispatchPropertyName]))if(b>>>0===b&&b>>0===b&&b0?1:a<0?-1:a +return J.bSI(a).gO2(a)}, +Wq(a){return J.cn(a).gaI(a)}, +bnx(a){return J.bK(a).gq(a)}, +bny(a){return J.bK(a).gfS(a)}, +bht(a){return J.bK(a).gaL(a)}, +bnz(a){return J.eW(a).gvR(a)}, +bCi(a){return J.bK(a).gacR(a)}, +bhu(a){return J.bK(a).ghk(a)}, +bnA(a){return J.bK(a).gGo(a)}, +ka(a){return J.bK(a).gio(a)}, +bCj(a){return J.bK(a).gGx(a)}, +lB(a){return J.bK(a).gk(a)}, +bhv(a){return J.bK(a).gbw(a)}, +bCk(a,b,c){return J.cn(a).C3(a,b,c)}, +bhw(a,b){return J.eW(a).cs(a,b)}, +bnB(a,b){return J.eW(a).y3(a,b)}, +bCl(a,b){return J.ak(a).eX(a,b)}, +bCm(a,b){return J.cn(a).xf(a,b)}, +bhx(a,b,c){return J.cn(a).fu(a,b,c)}, +bCn(a){return J.eW(a).Fl(a)}, +bnC(a){return J.cn(a).pO(a)}, +Ac(a,b){return J.cn(a).cq(a,b)}, +bnD(a,b,c){return J.cn(a).pP(a,b,c)}, +bCo(a,b){return J.eW(a).aKY(a,b)}, +co(a,b,c){return J.cn(a).ig(a,b,c)}, +Wr(a,b,c,d){return J.cn(a).tu(a,b,c,d)}, +bCp(a,b,c){return J.cn(a).qV(a,b,c)}, +bnE(a,b,c){return J.mv(a).qX(a,b,c)}, +bCq(a,b){return J.iM(a).D(a,b)}, +bCr(a){return J.eW(a).VW(a)}, +bCs(a){return J.eW(a).abz(a)}, +bCt(a){return J.eW(a).abC(a)}, +bCu(a,b,c,d){return J.bK(a).aMl(a,b,c,d)}, +bCv(a,b,c,d,e){return J.bK(a).r7(a,b,c,d,e)}, +Hs(a,b,c){return J.bK(a).cJ(a,b,c)}, +bCw(a){return J.bK(a).hX(a)}, +bCx(a,b,c){return J.bK(a).ace(a,b,c)}, +bCy(a){return J.eW(a).jg(a)}, +bnF(a,b){return J.eW(a).vr(a,b)}, +Ht(a){return J.cn(a).er(a)}, +pA(a,b){return J.cn(a).F(a,b)}, +bCz(a,b,c,d){return J.bK(a).acm(a,b,c,d)}, +bnG(a){return J.cn(a).hj(a)}, +bCA(a,b){return J.bK(a).J(a,b)}, +bCB(a,b,c,d){return J.ak(a).iG(a,b,c,d)}, +bCC(a,b){return J.bK(a).aNK(a,b)}, +bCD(a){return J.eW(a).km(a)}, +bnH(a,b){return J.eW(a).cl(a,b)}, +bCE(a,b){return J.bK(a).iM(a,b)}, +bCF(a,b){return J.ak(a).st(a,b)}, +eX(a,b){return J.bK(a).sd8(a,b)}, +bCG(a,b,c,d,e){return J.cn(a).cA(a,b,c,d,e)}, +Ws(a,b){return J.eW(a).rz(a,b)}, +bnI(a,b,c){return J.eW(a).Yo(a,b,c)}, +aqU(a,b){return J.cn(a).lL(a,b)}, +bhy(a,b){return J.cn(a).fz(a,b)}, +bhz(a,b){return J.mv(a).rA(a,b)}, +bnJ(a,b){return J.mv(a).c8(a,b)}, +bCH(a){return J.eW(a).YC(a)}, +bnK(a,b){return J.mv(a).cv(a,b)}, +bnL(a,b){return J.cn(a).q2(a,b)}, +bCI(a){return J.bft(a).an(a)}, +fJ(a){return J.cn(a).fL(a)}, +bCJ(a,b){return J.cn(a).hl(a,b)}, +bCK(a){return J.mv(a).BB(a)}, +bCL(a,b){return J.bft(a).o0(a,b)}, +bCM(a){return J.cn(a).kp(a)}, +cI(a){return J.iM(a).j(a)}, +bnM(a){return J.mv(a).dI(a)}, +bCN(a){return J.mv(a).aOS(a)}, +bnN(a,b){return J.bK(a).c_(a,b)}, +bnO(a,b){return J.eW(a).adr(a,b)}, +lC(a,b){return J.cn(a).jm(a,b)}, +bCO(a,b){return J.cn(a).Nn(a,b)}, +Cb:function Cb(){}, +Kz:function Kz(){}, +Ch:function Ch(){}, +j:function j(){}, +tY:function tY(){}, +a6m:function a6m(){}, +p2:function p2(){}, +on:function on(){}, +G:function G(a){this.$ti=a}, +aGf:function aGf(a){this.$ti=a}, +e6:function e6(a,b,c){var _=this +_.a=a +_.b=b +_.c=0 +_.d=null +_.$ti=c}, +tT:function tT(){}, +Cg:function Cg(){}, +KB:function KB(){}, +qi:function qi(){}},B={} +var w=[A,J,B] +var $={} +A.Hu.prototype={ +sU3(a){var s,r,q,p=this +if(J.i(a,p.c))return +if(a==null){p.P9() +p.c=null +return}s=p.a.$0() +r=a.a +q=s.a +if(rr){p.P9() +p.b=A.d2(A.dC(0,r-q,0),p.gSl())}p.c=a}, +P9(){var s=this.b +if(s!=null)s.aQ(0) +this.b=null}, +aCh(){var s=this,r=s.a.$0(),q=s.c,p=r.a +q=q.a +if(p>=q){s.b=null +q=s.d +if(q!=null)q.$0()}else s.b=A.d2(A.dC(0,q-p,0),s.gSl())}} +A.arv.prototype={ +zt(){var s=0,r=A.y(t.H),q=this +var $async$zt=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:s=2 +return A.t(q.a.$0(),$async$zt) +case 2:s=3 +return A.t(q.b.$0(),$async$zt) +case 3:return A.w(null,r)}}) +return A.x($async$zt,r)}, +aMT(){var s=A.cA(new A.arA(this)) +return t.e.a({initializeEngine:A.cA(new A.arB(this)),autoStart:s})}, +ayM(){return t.e.a({runApp:A.cA(new A.arx(this))})}} +A.arA.prototype={ +$0(){return A.bwE(new A.arz(this.a).$0(),t.e)}, +$S:121} +A.arz.prototype={ +$0(){var s=0,r=A.y(t.e),q,p=this +var $async$$0=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:s=3 +return A.t(p.a.zt(),$async$$0) +case 3:q=t.e.a({}) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$$0,r)}, +$S:310} +A.arB.prototype={ +$1(a){return A.bwE(new A.ary(this.a,a).$0(),t.e)}, +$0(){return this.$1(null)}, +$C:"$1", +$R:0, +$D(){return[null]}, +$S:191} +A.ary.prototype={ +$0(){var s=0,r=A.y(t.e),q,p=this,o +var $async$$0=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:o=p.a +s=3 +return A.t(o.a.$1(p.b),$async$$0) +case 3:q=o.ayM() +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$$0,r)}, +$S:310} +A.arx.prototype={ +$1(a){return new globalThis.Promise(A.cA(new A.arw(this.a)))}, +$0(){return this.$1(null)}, +$C:"$1", +$R:0, +$D(){return[null]}, +$S:191} +A.arw.prototype={ +$2(a,b){return this.adE(a,b)}, +adE(a,b){var s=0,r=A.y(t.H),q=this +var $async$$2=A.u(function(c,d){if(c===1)return A.v(d,r) +while(true)switch(s){case 0:s=2 +return A.t(q.a.b.$0(),$async$$2) +case 2:A.brt(a,t.e.a({})) +return A.w(null,r)}}) +return A.x($async$$2,r)}, +$S:864} +A.Ic.prototype={ +K(){return"BrowserEngine."+this.b}} +A.qs.prototype={ +K(){return"OperatingSystem."+this.b}} +A.auG.prototype={ +gca(a){var s=this.d +if(s==null){this.PC() +s=this.d}s.toString +return s}, +geu(){if(this.y==null)this.PC() +var s=this.e +s.toString +return s}, +PC(){var s,r,q,p,o,n,m,l,k=this,j=!1,i=null,h=k.y +if(h!=null){A.Bl(h,0) +h=k.y +h.toString +A.Bk(h,0) +k.y=null}h=k.x +if(h!=null&&h.length!==0){h.toString +s=B.b.jO(h,0) +k.y=s +i=s +j=!0 +r=!0}else{h=k.f +q=self.window.devicePixelRatio +if(q===0)q=1 +p=k.r +o=self.window.devicePixelRatio +if(o===0)o=1 +i=k.ZV(h,p) +n=i +k.y=n +if(n==null){A.bxo() +i=k.ZV(h,p)}n=i.style +A.Q(n,"position","absolute") +A.Q(n,"width",A.h(h/q)+"px") +A.Q(n,"height",A.h(p/o)+"px") +r=!1}if(!J.i(k.z.lastChild,i))k.z.append(i) +try{if(j)i.style.removeProperty("z-index") +h=A.pR(i,"2d",null) +h.toString +k.d=t.e.a(h)}catch(m){}h=k.d +if(h==null){A.bxo() +h=A.pR(i,"2d",null) +h.toString +h=k.d=t.e.a(h)}q=k.as +k.e=new A.aww(h,k,q,B.eQ,B.dW,B.l6) +l=k.gca(k) +l.save();++k.Q +A.boT(l,1,0,0,1,0,0) +if(r)l.clearRect(0,0,k.f*q,k.r*q) +h=self.window.devicePixelRatio +if(h===0)h=1 +p=self.window.devicePixelRatio +if(p===0)p=1 +l.scale(h*q,p*q) +k.azo()}, +ZV(a,b){var s=this.as +return A.bW7(B.e.eU(a*s),B.e.eU(b*s))}, +ab(a){var s,r,q,p,o,n=this +n.ajO(0) +if(n.y!=null){s=n.d +if(s!=null)try{s.font=""}catch(q){r=A.ai(q) +if(!J.i(r.name,"NS_ERROR_FAILURE"))throw q}}if(n.y!=null){n.S0() +n.e.km(0) +p=n.w +if(p==null)p=n.w=A.a([],t.A) +o=n.y +o.toString +p.push(o) +n.e=n.d=null}n.x=n.w +n.e=n.d=n.y=n.w=null}, +a3z(a,b,c,d){var s,r,q,p,o,n,m,l,k,j,i=this,h=i.gca(i) +if(d!=null)for(s=d.length,r=i.as,q=t.Ci;a>>16&255,p>>>8&255,p&255).a)) +s.translate(-5e4,0) +l=new Float32Array(2) +p=$.eg().x +if(p==null){p=self.window.devicePixelRatio +if(p===0)p=1}l[0]=5e4*p +p=i.b +p.c.adf(l) +k=l[0] +j=l[1] +l[1]=0 +l[0]=0 +p.c.adf(l) +A.bim(s,k-l[0]) +A.bin(s,j-l[1])}}, +tK(){var s=this,r=s.z +if((r==null?null:r.x)!=null){r=$.dv() +r=r===B.ah||!1}else r=!1 +if(r)s.a.restore() +r=s.Q +if(r!=null){s.a.translate(-r.a,-r.b) +s.Q=null}}, +lo(a){var s=this.a +if(a===B.aj)s.stroke() +else A.ayf(s,null)}, +km(a){var s,r=this,q=r.a +A.ayg(q,"") +s=q.fillStyle +r.r=s==null?null:s +A.ayh(q,"") +s=q.strokeStyle +r.w=s==null?null:s +q.shadowBlur=0 +A.bil(q,"none") +A.bim(q,0) +A.bin(q,0) +q.globalCompositeOperation="source-over" +r.d=B.eQ +A.boU(q,1) +r.x=1 +q.lineCap="butt" +r.e=B.dW +q.lineJoin="miter" +r.f=B.l6 +r.Q=null}} +A.al0.prototype={ +ab(a){B.b.ab(this.a) +this.b=null +this.c=A.h8()}, +eb(a){var s=this.c,r=new A.ds(new Float32Array(16)) +r.cd(s) +s=this.b +s=s==null?null:A.hz(s,!0,t.Sv) +this.a.push(new A.a7Y(r,s))}, +dq(a){var s,r=this.a +if(r.length===0)return +s=r.pop() +this.c=s.a +this.b=s.b}, +bj(a,b,c){this.c.bj(0,b,c)}, +hF(a,b,c){this.c.hF(0,b,c)}, +tJ(a,b){this.c.acN(0,B.Jb,b)}, +a_(a,b){this.c.f_(0,new A.ds(b))}, +uD(a){var s,r,q=this.b +if(q==null)q=this.b=A.a([],t.CK) +s=this.c +r=new A.ds(new Float32Array(16)) +r.cd(s) +q.push(new A.yA(a,null,null,r))}, +wE(a){var s,r,q=this.b +if(q==null)q=this.b=A.a([],t.CK) +s=this.c +r=new A.ds(new Float32Array(16)) +r.cd(s) +q.push(new A.yA(null,a,null,r))}, +mr(a,b){var s,r,q=this.b +if(q==null)q=this.b=A.a([],t.CK) +s=this.c +r=new A.ds(new Float32Array(16)) +r.cd(s) +q.push(new A.yA(null,null,b,r))}} +A.kU.prototype={ +t9(a,b,c,d){var s,r,q,p,o=d.ay,n=this.a,m=a.b +if(o===B.mQ){m===$&&A.b() +m=m.a +m===$&&A.b() +m=m.a +m.toString +A.ca(n,"drawImageRectCubic",[m,A.iN(b),A.iN(c),0.3333333333333333,0.3333333333333333,d.a])}else{m===$&&A.b() +m=m.a +m===$&&A.b() +m=m.a +m.toString +s=A.iN(b) +r=A.iN(c) +q=A.bW1(o) +p=o===B.t5?$.cM.cB().MipmapMode.Linear:$.cM.cB().MipmapMode.None +A.ca(n,"drawImageRectOptions",[m,s,r,q,p,d.a])}}, +lF(a,b){var s=b==null?null:b.a +A.brY(this.a,s,A.iN(a),null,null)}, +NN(a,b,c){t.p1.a(b) +b.aai(new A.avQ(this,c,a))}} +A.avQ.prototype={ +$1(a){A.brY(this.a.a,this.b.a,A.iN(this.c),a,0)}, +$S:3} +A.bdb.prototype={ +$1(a){var s=$.e3 +s=(s==null?$.e3=A.jA(self.window.flutterConfiguration):s).b +if(s==null)s=null +else{s=s.canvasKitBaseUrl +if(s==null)s=null}return(s==null?"https://www.gstatic.com/flutter-canvaskit/0545f8705df301877d787107bac1a6e9fc9ee1ad/":s)+a}, +$S:19} +A.bdu.prototype={ +$1(a){this.a.remove() +this.b.cM(0,!0)}, +$S:3} +A.bdt.prototype={ +$1(a){this.a.remove() +this.b.cM(0,!1)}, +$S:3} +A.auC.prototype={ +eb(a){B.e.an(this.a.a.save())}, +lF(a,b){this.a.lF(a,t.qo.a(b))}, +dq(a){this.a.a.restore()}, +bj(a,b,c){this.a.a.translate(b,c)}, +hF(a,b,c){var s=c==null?b:c +this.a.a.scale(b,s) +return null}, +tJ(a,b){this.a.a.rotate(b*180/3.141592653589793,0,0)}, +a_(a,b){this.a.a.concat(A.bxw(A.aqj(b)))}, +Ec(a,b,c){this.a.a.clipRect(A.iN(a),$.bmL()[b.a],c)}, +a7A(a,b){return this.Ec(a,B.eV,b)}, +uD(a){return this.Ec(a,B.eV,!0)}, +Kr(a,b){this.a.a.clipRRect(A.W8(a),$.aqz(),b)}, +wE(a){return this.Kr(a,!0)}, +Kq(a,b,c){var s=t.E_.a(b).a +s===$&&A.b() +s=s.a +s.toString +this.a.a.clipPath(s,$.aqz(),c)}, +mr(a,b){return this.Kq(a,b,!0)}, +jF(a,b,c){A.ca(this.a.a,"drawLine",[a.a,a.b,b.a,b.b,t.qo.a(c).a])}, +Ag(a){this.a.a.drawPaint(t.qo.a(a).a)}, +el(a,b){t.qo.a(b) +this.a.a.drawRect(A.iN(a),b.a)}, +de(a,b){t.qo.a(b) +this.a.a.drawRRect(A.W8(a),b.a)}, +Ae(a,b,c){t.qo.a(c) +this.a.a.drawDRRect(A.W8(a),A.W8(b),c.a)}, +Af(a,b){t.qo.a(b) +this.a.a.drawOval(A.iN(a),b.a)}, +ha(a,b,c){this.a.a.drawCircle(a.a,a.b,b,t.qo.a(c).a)}, +Up(a,b,c,d,e){t.qo.a(e) +A.ca(this.a.a,"drawArc",[A.iN(a),b*57.29577951308232,c*57.29577951308232,!1,e.a])}, +dV(a,b){var s +t.E_.a(a) +t.qo.a(b) +s=a.a +s===$&&A.b() +s=s.a +s.toString +this.a.a.drawPath(s,b.a)}, +t9(a,b,c,d){this.a.t9(t.XY.a(a),b,c,t.qo.a(d))}, +uO(a,b){var s=t.tG.a(a).a +s===$&&A.b() +s=s.a +s.toString +this.a.a.drawParagraph(s,b.a,b.b)}, +wV(a,b,c,d){var s,r,q,p,o,n,m,l,k +t.E_.a(a) +s=$.eg().x +if(s==null){s=self.window.devicePixelRatio +if(s===0)s=1}r=d?5:4 +q=A.K(B.e.bi((b.gk(b)>>>24&255)*0.039),b.gk(b)>>>16&255,b.gk(b)>>>8&255,b.gk(b)&255) +p=A.K(B.e.bi((b.gk(b)>>>24&255)*0.25),b.gk(b)>>>16&255,b.gk(b)>>>8&255,b.gk(b)&255) +o=t.e.a({ambient:A.Hi(q),spot:A.Hi(p)}) +n=$.cM.cB().computeTonalColors(o) +m=a.a +m===$&&A.b() +m=m.a +m.toString +l=new Float32Array(3) +l[2]=s*c +k=new Float32Array(3) +k[0]=0 +k[1]=-450 +k[2]=s*600 +A.ca(this.a.a,"drawShadow",[m,l,k,s*1.1,n.ambient,n.spot,r])}} +A.a2U.prototype={ +gv(a){var s=this.a +return s.gv(s)}, +l(a,b){if(b==null)return!1 +if(A.o(this)!==J.a1(b))return!1 +return b instanceof A.a2U&&b.a.l(0,this.a)}, +j(a){return this.a.j(0)}} +A.Yd.prototype={$it9:1} +A.Iv.prototype={ +QV(){return A.bRv(this.a,this.b)}, +gv(a){return A.X(this.a,this.b,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +l(a,b){if(b==null)return!1 +if(A.o(this)!==J.a1(b))return!1 +return b instanceof A.Iv&&b.a.l(0,this.a)&&b.b===this.b}, +j(a){return"ColorFilter.mode("+this.a.j(0)+", "+this.b.j(0)+")"}} +A.Ix.prototype={ +gawH(){var s,r,q=new Float32Array(20) +for(s=this.a,r=0;r<20;++r)if(B.b.n(B.Xr,r))q[r]=s[r]/255 +else q[r]=s[r] +return q}, +QV(){return $.cM.cB().ColorFilter.MakeMatrix(this.gawH())}, +gv(a){return A.dt(this.a)}, +l(a,b){if(b==null)return!1 +return A.o(this)===J.a1(b)&&b instanceof A.Ix&&A.vF(this.a,b.a)}, +j(a){return"ColorFilter.matrix("+A.h(this.a)+")"}} +A.AO.prototype={ +QV(){var s,r=$.cM.cB().ColorFilter,q=this.a.b +q===$&&A.b() +q=q.a +q.toString +s=this.b.b +s===$&&A.b() +s=s.a +s.toString +return r.MakeCompose(q,s)}, +l(a,b){if(b==null)return!1 +if(!(b instanceof A.AO))return!1 +return b.a.l(0,this.a)&&b.b.l(0,this.b)}, +gv(a){return A.X(this.a,this.b,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){return"ColorFilter.compose("+this.a.j(0)+", "+this.b.j(0)+")"}} +A.a1O.prototype={ +aeJ(){var s=this.b.a +return new A.ad(s,new A.aF1(),A.ab(s).h("ad<1,kU>"))}, +ao1(a){var s,r,q,p,o,n,m=this.Q +if(m.ao(0,a)){s=null.querySelector("#sk_path_defs") +s.toString +r=A.a([],t.A) +q=m.i(0,a) +q.toString +for(p=t.qr,p=A.dx(new A.hL(s.children,p),p.h("z.E"),t.e),s=J.ao(p.a),p=A.k(p),p=p.h("@<1>").S(p.z[1]).z[1];s.u();){o=p.a(s.gH(s)) +if(q.n(0,o.id))r.push(o)}for(s=r.length,n=0;n") +a1.a8U(A.i2(new A.be(m,new A.aF2(a3),l),l.h("z.E"))) +B.b.I(a2,s) +i.ack(s) +a2=a3.c +if(a2){m=a3.d +m.toString +m=a1.d.i(0,m) +h=m.gxK(m)}else h=null +for(m=a3.b,l=m.length,g=a1.d,f=$.fN.a,k=0;k") +q=A.aa(new A.ad(s,new A.aEZ(),r),!0,r.h("ax.E")) +if(q.length>A.oV().b-1)B.b.hj(q) +r=m.gauS() +p=m.e +if(l){l=A.oV() +o=l.d +B.b.I(l.e,o) +B.b.ab(o) +p.ab(0) +B.b.af(q,r)}else{l=A.k(p).h("c9<1>") +n=A.aa(new A.c9(p,l),!0,l.h("z.E")) +new A.be(n,new A.aF_(q),A.ab(n).h("be<1>")).af(0,m.gaza()) +new A.be(q,new A.aF0(m),A.ab(q).h("be<1>")).af(0,r)}}, +aeK(a){var s,r,q,p,o,n,m,l,k=A.oV().b-1 +if(k===0)return B.a1U +s=A.a([],t.jT) +r=t.t +q=new A.ud(A.a([],r),!1) +for(p=0;p") +s=new A.d1(s,r) +return new A.bZ(s,s.gt(s),r.h("bZ"))}} +A.a0v.prototype={} +A.p3.prototype={} +A.beS.prototype={ +$1(a){var s,r,q,p,o=null +for(s=this.a,r=this.b,q=0;p=q+a,p=0;++q){if(!J.i(r[p],s[s.length-1-q]))return o +if(q===s.length-1){s=r.length +if(a===s-1)return new A.p3(B.b.d2(r,0,s-q-1),B.hv,!1,o) +else if(a===q)return new A.p3(B.b.fs(r,a+1),B.hv,!1,o) +else return o}}return new A.p3(B.b.fs(r,a+1),B.b.d2(s,0,s.length-1-a),!0,B.b.gN(r))}, +$S:255} +A.a8H.prototype={ +gUV(){var s,r,q=this.b +if(q===$){s=$.e3 +s=(s==null?$.e3=A.jA(self.window.flutterConfiguration):s).b +if(s==null)s=null +else{s=s.useColorEmoji +if(s==null)s=null}s=s===!0 +r=A.a([new A.al("Noto Sans","notosans/v28/o-0IIpQlx3QUlC5A4PNb4j5Ba_2c7A.ttf","w|2m;4g|k7;oq|5;p0|6;p8|;pa|j;pv|1q;s0|8v;1s0|3j;59s|g;5mo|8;5ow|12;5q0|1;5q8|6x;5x7|7u;654|5;65c|11;66g|5;66o|7;66x|;66z|;671|;673|u;680|1g;69i|e;69y|d;6ae|5;6al|i;6b6|2;6ba|8;6bk|2s;6ee|b;6es|q;6fk|c;6g0|v;6i8|;6io|2n;6mc|;6mh|;6qa|;6qd|;7gs|;8rk|v;928|36;wu8|2n;wzk|5b;x4y|8;x6d|a;x80|9;xcw|v;xf2|;xtc|1n;1dkw|6;1e68|;1e74|f;1edb|;1ekc|1;")],t.Qg) +if(s)r.push(new A.al("Noto Color Emoji","notocoloremoji/v24/Yq6P-KqIXTD0t4D9z1ESnKM3-HpFab5s79iz64w.ttf","w|;z|;16|;1c|9;4p|;4u|;6bx|;6d8|;6dl|;6hv|;6jm|;6k9|;6ms|5;6nd|1;6xm|1;6y0|;72n|;73d|a;73s|2;79e|;7fu|1;7g6|;7gg|;7i3|3;7i8|4;7im|;7ip|;7is|1;7iw|;7j1|;7j4|;7j6|1;7ja|;7je|;7ji|1;7js|2;7k0|;7k2|;7k8|b;7kv|1;7kz|;7l1|1;7l4|;7ln|;7lq|1;7ma|5;7mh|;7mj|1;7mo|1;7mv|;7my|1;7n4|1;7nh|1;7no|1;7ns|;7ny|1;7o1|;7o3|1;7op|1;7ow|5;7p3|3;7p9|;7pe|;7ph|;7pk|5;7pr|;7pu|;7pw|;7py|;7q5|;7q9|;7qg|;7qr|1;7r8|;7rb|;7rg|;7ri|;7rn|2;7rr|;7s3|1;7th|2;7tt|;7u8|;7un|;850|1;8hx|2;8ij|1;8k0|;8k5|;9io|;9j1|;9zr|;9zt|;2pz8|;2q4v|;2q9c|1;2q9q|1;2qa6|;2qa9|9;2qcm|p;2qdd|1;2qe2|;2qen|;2qeq|8;2qfk|1;2qkg|x;2qlg|33;2qom|1;2qop|2;2qou|2a;2qr7|2;2qrb|7a;2qyn|1q;2r0p|5;2r0w|n;2r1r|1;2r1v|7;2r2f|;2r2i|3;2r2o|;2r2t|1;2r38|1;2r3c|;2r3l|1;2r3w|;2r42|2;2r4h|2;2r4s|2;2r4x|;2r4z|;2r54|;2r5b|;2r5f|;2r5m|2d;2r9c|1x;2rbf|7;2rbp|2;2rbw|9;2rc9|;2rcb|1;2rcg|;2rcj|9;2rj4|b;2rjk|;2rrg|1a;2rss|9;2rt3|54;2s1c|c;2s1s|8;2s28|19;2s3j|6;2s3y|d;2s4g|8;2s4w|8;jnzk|9;jo0x|p;jo1r|;mbqd|9;mcdo|;mcdq|9;")) +if(!s)r.push(new A.al("Noto Emoji","notoemoji/v39/bMrnmSyK7YY-MEu6aWjPDs-ar6uWaGWuob-r0jwvS-FGJCMY.ttf","w|;z|;16|;1c|9;4p|;4u|;6bx|;6d8|;6dl|;6hv|;6jm|;6k9|;6ms|5;6nd|1;6xm|1;6y0|;72n|;73d|a;73s|2;79e|;7fu|1;7g6|;7gg|;7i3|3;7i8|4;7im|;7ip|;7is|1;7iw|;7j1|;7j4|;7j6|1;7ja|;7je|;7ji|1;7js|2;7k0|;7k2|;7k8|b;7kv|1;7kz|;7l1|1;7l4|;7ln|;7lq|1;7ma|5;7mh|;7mj|1;7mo|1;7mv|;7my|1;7n4|1;7nh|1;7no|1;7ns|;7ny|1;7o1|;7o3|1;7op|1;7ow|5;7p3|3;7p9|;7pe|;7ph|;7pk|5;7pr|;7pu|;7pw|;7py|;7q5|;7q9|;7qg|;7qr|1;7r8|;7rb|;7rg|;7ri|;7rn|2;7rr|;7s3|1;7th|2;7tt|;7u8|;7un|;850|1;8hx|2;8ij|1;8k0|;8k5|;9io|;9j1|;9zr|;9zt|;1e6m|1;2pz8|;2q4v|;2q9c|1;2q9q|1;2qa6|;2qa9|9;2qcm|p;2qdd|1;2qe2|;2qen|;2qeq|8;2qfk|1;2qkg|x;2qlg|33;2qom|1;2qop|2;2qou|2a;2qr7|2;2qrb|7a;2qyn|1q;2r0p|5;2r0w|n;2r1r|1;2r1v|7;2r2f|;2r2i|3;2r2o|;2r2t|1;2r38|1;2r3c|;2r3l|1;2r3w|;2r42|2;2r4h|2;2r4s|2;2r4x|;2r4z|;2r54|;2r5b|;2r5f|;2r5m|2d;2r9c|1x;2rbf|7;2rbp|2;2rbw|9;2rc9|;2rcb|1;2rcg|;2rcj|9;2rj4|b;2rjk|;2rrg|1a;2rss|9;2rt3|54;2s1c|c;2s1s|8;2s28|19;2s3j|6;2s3y|d;2s4g|8;2s4w|8;jnzk|9;jo0x|p;jo1r|;mbqd|9;mcdo|;mcdq|9;")) +r.push(new A.al("Noto Sans Symbols","notosanssymbols/v40/rP2up3q65FkAtHfwd-eIS2brbDN6gxP34F9jRRCe4W3gfQ8gavVFRkzrbQ.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ct|1;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;60w|5;61q|;642|1;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6hp|3;6hu|2;6jm|;6lc|z;6md|3;6mi|1;6mo|9;6qa|;6ww|f;6xd|4;6xj|;6xo|3;6xu|1;6y1|1;6y4|9;70c|;70g|k;712|4;71r|;726|f;72o|b;736|6;76o|4f;7gs|;7ii|3;7ir|;7j8|b;7js|3;7jx|m;7l5|l;7m8|d;7mq|7;7n1|f;7ny|;7oi|t;7q5|4;7sm|t;84h|1;2q68|c;2q6o|2k;2q9c|w;2qaj|h;2r0m|3;2r0v|;2r68|;2rcw|37;")) +r.push(new A.al("Noto Sans Symbols 2","notosanssymbols2/v17/I_uyMoGduATTei9eI8daxVHDyfisHr71ypPqfX71-AI.ttf","w|2n;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;60w|5;61q|;642|1;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6hu|1;6jm|;6nj|;6p2|a;6pf|;6qa|;6qg|1;6u1|;6v8|2;6xi|;6xk|;6xm|1;6xw|4;6y3|;70b|;70d|2;710|;72m|1;73d|1;73h|2;73l|1h;75s|a;7fk|2x;7im|4;7is|f;7jk|7;7jw|;7kk|k;7lr|g;7mm|3;7my|2;7nh|g;7nz|i;7pc|4;7pi|3;7pn|h;7qa|5;7qh|y;7rh|;7rj|4;7rq|v;7tg|;7tk|n;7u9|d;7wg|73;875|;88v|;8a3|;8hs|d;8ia|t;8jx|12;8l2|v;8lz|2u;8ov|;fcw|1r;1ek9|2;1etc|26;1evk|c;1ew0|;1exc|19;1f4w|r;1heo|u;2k80|j;2k8w|2e;2kbk|o;2pz4|17;2q0g|2r;2q3k|e;2q41|e;2q4h|e;2q4x|10;2qkt|2;2ql1|;2ql8|;2qld|b;2qly|;2qns|;2qnx|;2qoj|c;2qp3|;2qp8|2;2qpu|;2qpw|;2qpy|;2qq2|4;2qqc|c;2qr1|;2qr5|2;2qr9|2;2qrs|;2qs5|;2qsf|;2qsm|;2qtb|;2qtd|1;2qti|3;2qto|2;2qtv|;2qui|;2qv1|;2qw3|;2qwg|;2qwj|;2qwp|;2qwr|;2qwv|;2qx4|3;2qxm|;2qxr|;2qxw|2;2qy2|3;2qyf|;2qyh|2;2qyl|1;2qyr|;2qyv|3;2qz1|;2qz6|1;2r0e|7;2r0q|;2r0w|15;2r23|p;2r2v|c;2r39|2d;2r80|1b;2r9j|;2r9p|;2r9t|;2r9w|;2ra0|;2ral|;2raq|;2rax|1;2rb0|;2rba|5;2rbh|2;2rbn|4;2rc0|a;2rcg|3;2rcn|5;2rgg|2g;2rj4|b;2rk0|b;2rkg|1j;2rm8|9;2rmo|13;2ro0|t;2row|1;2rsr|;2rt2|;2ry8|2b;2s0w|d;2s1c|4;2s1k|2;2s1s|6;2s28|o;2s34|6;2s3k|2;2s40|6;2s5c|42;2s9g|1i;2sc0|9;")) +r.push(new A.al("Noto Sans Adlam","notosansadlam/v21/neIczCCpqp0s5pPusPamd81eMfjPonvqdbYxxpgufnv0TGnBZLwhuvk.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ct|1;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;17j|;18g|;60w|5;61q|;642|1;6c3|2;6c8|6;6cg|2;6cm|;6cw|;6d5|1;6dg|;6dr|;6gc|;6jm|;6qa|;7gs|;948|1;94x|;2olc|23;2onk|9;2ony|1;")) +r.push(new A.al("Noto Sans Anatolian Hieroglyphs","notosansanatolianhieroglyphs/v14/ijw9s4roRME5LLRxjsRb8A0gKPSWq4BbDmHHu6j2pEtUJzZWXybIymc5QYo.ttf","w|;4g|;6bv|;1s00|g6;")) +r.push(new A.al("Noto Sans Arabic","notosansarabic/v18/nwpxtLGrOAZMl5nJ_wfgRg3DrWFZWsnVBJ_sS6tlqHHFlhQ5l3sQWIHPqzCfyGyvu3CBFQLaig.ttf","w|1;18|2;1c|a;4g|;4r|;57|;nj|;16o|s;17i|69;1g0|1b;1pc|k;1py|8;1qr|18;6bv|6;6dr|;7gs|;94x|;1dn4|35;1dqr|a4;1e1c|1r;1e36|1h;1e5s|d;1e9c|4;1e9i|3q;")) +r.push(new A.al("Noto Sans Armenian","notosansarmenian/v42/ZgN0jOZKPa7CHqq0h37c7ReDUubm2SEdFXp7ig73qtTY5idb74R9UdM3y2nZLorxb60iYy6zF3Eg.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ct|1;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;10x|11;121|1d;13h|2;60w|5;61q|;642|1;6c0|;6c3|1;6c8|2;6cc|2;6ci|;6ck|;6cm|;6d5|1;6gc|;6jm|;6qa|;7gs|;1dlf|4;")) +r.push(new A.al("Noto Sans Avestan","notosansavestan/v20/bWti7ejKfBziStx7lIzKOLQZKhIJkyu9SASLji8U.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;60w|5;61q|;642|1;6bw|1;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6jm|;6qa|;94g|1;1gqo|1h;1gs9|6;")) +r.push(new A.al("Noto Sans Balinese","notosansbalinese/v24/NaPwcYvSBuhTirw6IaFn6UrRDaqje-lpbbRtYf-Fwu2Ov7fdhE5Vd222PPY.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ct|1;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;5c0|23;5e8|18;60w|5;61q|;642|1;6bv|2;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6jm|;6qa|;7gs|;")) +r.push(new A.al("Noto Sans Bamum","notosansbamum/v26/uk-0EGK3o6EruUbnwovcbBTkkklK_Ya_PBHfNGTPEddO-_gLykxEkxA.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;60w|5;61q|;642|1;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6jm|;6qa|;7gs|;www|2f;1z40|fs;")) +r.push(new A.al("Noto Sans Bassa Vah","notosansbassavah/v17/PN_bRee-r3f7LnqsD5sax12gjZn7mBpL5YwUpA2MBdcFn4MaAc6p34gH-GD7.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ct|1;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;60w|5;61q|;642|1;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6jm|;6qa|;7gs|;1zo0|t;1zow|5;")) +r.push(new A.al("Noto Sans Batak","notosansbatak/v16/gok2H6TwAEdtF9N8-mdTCQvT-Zdgo4_PHuk74A.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ct|1;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;5hc|1f;5j0|3;60w|5;61q|;642|1;6bv|2;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6jm|;6qa|;7gs|;")) +r.push(new A.al("Noto Sans Bengali","notosansbengali/v20/Cn-SJsCGWQxOjaGwMQ6fIiMywrNJIky6nvd8BjzVMvJx2mcSPVFpVEqE-6KmsolLudCk8izI0lc.ttf","w|2m;4g|3;4l|;4n|4;4t|3;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ct|1;ew|3;fr|;jg|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;1u9|1;1us|1;1vk|3;1vp|7;1vz|1;1w3|l;1wq|6;1wy|;1x2|3;1x8|8;1xj|1;1xn|3;1xz|;1y4|1;1y7|4;1ye|o;5ow|;5oy|;5p1|1;5p4|;5pd|;5pm|;5pp|;5pu|;5px|2;60w|5;61q|;642|1;6bv|2;6c0|;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6gp|;6jm|;6qa|;7gs|;xdd|;")) +r.push(new A.al("Noto Sans Bhaiksuki","notosansbhaiksuki/v15/UcC63EosKniBH4iELXATsSBWdvUHXxhj8rLUdU4wh9U.ttf","w|;4g|;6bv|;7gs|;1k3k|8;1k3u|18;1k54|d;1k5s|s;")) +r.push(new A.al("Noto Sans Brahmi","notosansbrahmi/v15/vEFK2-VODB8RrNDvZSUmQQIIByV18tK1W77HtMo.ttf","w|;4g|;6bv|2;7gs|;1hq8|25;1hsi|t;1htr|;")) +r.push(new A.al("Noto Sans Buginese","notosansbuginese/v18/esDM30ldNv-KYGGJpKGk18phe_7Da6_gtfuEXLmNtw.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ct|1;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;54w|r;55q|1;60w|5;61q|;642|1;6bv|2;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6jm|;6qa|;7gs|;xjj|;")) +r.push(new A.al("Noto Sans Buhid","notosansbuhid/v18/Dxxy8jiXMW75w3OmoDXVWJD7YwzAe6tgnaFoGA.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ct|1;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;4l1|1;4lc|j;60w|5;61q|;642|1;6bv|2;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6jm|;6qa|;7gs|;")) +r.push(new A.al("Noto Sans Canadian Aboriginal","notosanscanadianaboriginal/v21/4C_TLjTuEqPj-8J01CwaGkiZ9os0iGVkezM1mUT-j_Lmlzda6uH_nnX1bzigWLn_yAsg0q0uhQ.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ct|1;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;3y8|hr;4vk|1x;60w|5;61q|;642|1;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6jm|;6qa|;7gs|;1ju8|f;")) +r.push(new A.al("Noto Sans Carian","notosanscarian/v15/LDIpaoiONgYwA9Yc6f0gUILeMIOgs7ob9yGLmfI.ttf","w|;4g|;1f34|1c;")) +r.push(new A.al("Noto Sans Caucasian Albanian","notosanscaucasianalbanian/v16/nKKA-HM_FYFRJvXzVXaANsU0VzsAc46QGOkWytlTs-TXrYDmoVmRSZo.ttf","w|;4g|;lg|;mp|;7gs|;1e74|f;1flc|1f;1fn3|;")) +r.push(new A.al("Noto Sans Chakma","notosanschakma/v17/Y4GQYbJ8VTEp4t3MKJSMjg5OIzhi4JjTQhYBeYo.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ct|1;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;1ye|9;37k|9;60w|5;61q|;642|1;6bw|1;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6jm|;6qa|;7gs|;1hxc|1g;1hyu|h;")) +r.push(new A.al("Noto Sans Cham","notosanscham/v27/pe06MIySN5pO62Z5YkFyQb_bbuRhe6D4yip43qfcERwcv7GykboaLg.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ct|1;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;60w|5;61q|;642|1;6bw|1;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6jm|;6qa|;7gs|;xkw|1i;xmo|d;xn4|9;xng|3;")) +r.push(new A.al("Noto Sans Cherokee","notosanscherokee/v19/KFOPCm6Yu8uF-29fiz9vQF9YWK6Z8O10cHNA0cSkZCHYWi5PDkm5rAffjl0.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ct|1;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;mb|1;me|2;mo|1;3vk|2d;3y0|5;60w|5;61q|;642|1;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6jm|;6qa|;xv4|27;")) +r.push(new A.al("Noto Sans Coptic","notosanscoptic/v17/iJWfBWmUZi_OHPqn4wq6kgqumOEd78u_VG0xR4Y.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ct|1;ew|3;fr|;jd|;jq|1;jt|;k8|5;lc|8;lm|2;lt|1;mb|;me|2;n3|;ny|;o1|;ok|1;rm|d;16t|;5vx|;60w|5;61q|;642|1;6c0|;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6dv|;6dy|;6e0|1;6gc|;6jm|;6qa|;7gs|;8sg|37;8vt|6;93r|;94j|1;1e78|2;1f4w|r;")) +r.push(new A.al("Noto Sans Cuneiform","notosanscuneiform/v15/bMrrmTWK7YY-MF22aHGGd7H8PhJtvBDWgb9JlRQueeQ.ttf","w|;4g|;1kw0|pl;1log|32;1lrk|4;1ls0|5f;")) +r.push(new A.al("Noto Sans Cypriot","notosanscypriot/v15/8AtzGta9PYqQDjyp79a6f8Cj-3a3cxIsK5MPpahF.ttf","w|;4g|;1g5c|5;1g5k|;1g5m|17;1g6v|1;1g70|;1g73|;")) +r.push(new A.al("Noto Sans Deseret","notosansdeseret/v15/MwQsbgPp1eKH6QsAVuFb9AZM6MMr2Vq9ZnJSZtQG.ttf","w|;4g|;1fcw|27;")) +r.push(new A.al("Noto Sans Devanagari","notosansdevanagari/v25/TuGoUUFzXI5FBtUq5a8bjKYTZjtRU6Sgv3NaV_SNmI0b8QQCQmHn6B2OHjbL_08AlXQly-AzoFoW4Ow.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ew|3;fr|;jg|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;1s0|3j;5ow|12;5q0|1;60w|5;61q|;642|1;6bv|2;6c0|;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6gp|;6i8|;6jm|;6qa|;7gs|;x80|9;xcw|v;")) +r.push(new A.al("Noto Sans Duployan","notosansduployan/v16/gokzH7nwAEdtF9N8-mdTDx_X9JM5wsvrFsIn6WYDvA.ttf","w|;4g|;6bw|1;7gs|;2fpc|2y;2fsg|c;2fsw|8;2ftc|9;2fto|7;")) +r.push(new A.al("Noto Sans Egyptian Hieroglyphs","notosansegyptianhieroglyphs/v26/vEF42-tODB8RrNDvZSUmRhcQHzx1s7y_F9-j3qSzEcbEYindSVK8xRg7iw.ttf","w|;4g|;6bw|1;7gs|;1o1s|tq;")) +r.push(new A.al("Noto Sans Elbasan","notosanselbasan/v15/-F6rfiZqLzI2JPCgQBnw400qp1trvHdlre4dFcFh.ttf","w|;4g|;53|;lh|;pd|g;pv|6;re|;rg|;ri|;7gs|;1fk0|13;")) +r.push(new A.al("Noto Sans Elymaic","notosanselymaic/v15/UqyKK9YTJW5liNMhTMqe9vUFP65ZD4AjWOT0zi2V.ttf","w|;4g|;1hpc|m;")) +r.push(new A.al("Noto Sans Georgian","notosansgeorgian/v42/PlIaFke5O6RzLfvNNVSitxkr76PRHBC4Ytyq-Gof7PUs4S7zWn-8YDB09HFNdpvnzFj-f5WK0OQV.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ct|1;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;13d|;3a8|11;3bb|;3bh|;3bk|1b;5n4|16;5od|2;60w|5;61q|;642|1;6c0|;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6gu|;6jm|;6qa|;8w0|11;8x3|;8x9|;")) +r.push(new A.al("Noto Sans Glagolitic","notosansglagolitic/v15/1q2ZY4-BBFBst88SU_tOj4J-4yuNF_HI4ERK4Amu7nM1.ttf","w|;4g|;lf|;lh|;w4|;w7|;8ow|1a;8q8|1a;wvj|;2mtc|6;2mtk|g;2mu3|6;2mub|1;2mue|4;")) +r.push(new A.al("Noto Sans Gothic","notosansgothic/v15/TuGKUUVzXI5FBtUq5a8bj6wRbzxTFMX40kFQRx0.ttf","w|;4g|;lg|1;lk|;mp|;1f74|q;")) +r.push(new A.al("Noto Sans Grantha","notosansgrantha/v17/3y976akwcCjmsU8NDyrKo3IQfQ4o-r8cFeulHc6N.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ct|1;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;1u9|1;1us|1;2ay|;2b9|;2cm|c;5ow|;5oy|1;5pu|2;5q0|1;60w|5;61q|;642|1;6bw|1;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6i8|;6jm|;6qa|;7gs|;1ibk|3;1ibp|7;1ibz|1;1ic3|l;1icq|6;1icy|1;1id1|4;1id7|9;1idj|1;1idn|2;1ids|;1idz|;1ie5|6;1iee|6;1ieo|4;")) +r.push(new A.al("Noto Sans Gujarati","notosansgujarati/v23/wlpWgx_HC1ti5ViekvcxnhMlCVo3f5pv17ivlzsUB14gg1TMR2Gw4VceEl7MA_ypFwPM_OdiEH0s.ttf","w|2m;4g|3;4l|;4n|4;4t|3;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;1u9|1;1us|1;22p|2;22t|8;233|2;237|l;23u|6;242|1;245|4;24c|9;24n|2;24r|2;24w|;25c|3;25i|b;261|6;60w|5;61q|;642|1;6bv|2;6c0|;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6gp|;6jm|;6qa|;7gs|;x80|9;")) +r.push(new A.al("Noto Sans Gunjala Gondi","notosansgunjalagondi/v15/bWto7e7KfBziStx7lIzKPrcSMwcEnCv6DW7n5hcVXYMTK4q1.ttf","w|1;11|;13|8;1m|;1o|3;4g|;5z|;6v|;6bw|1;6c8|1;6cc|1;6cm|;6qa|;7gs|;1kdc|5;1kdj|1;1kdm|10;1keo|1;1ker|5;1kf4|9;")) +r.push(new A.al("Noto Sans Gurmukhi","notosansgurmukhi/v26/w8g9H3EvQP81sInb43inmyN9zZ7hb7ATbSWo4q8dJ74a3cVrYFQ_bogT0-gPeG1OenbxZ_trdp7h.ttf","w|2m;4g|3;4l|;4n|4;4t|3;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ew|3;fr|;jg|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;1u9|1;1us|1;1z5|2;1z9|5;1zj|1;1zn|l;20a|6;20i|1;20l|1;20o|1;20s|;20u|4;213|1;217|2;21d|;21l|3;21q|;21y|g;60w|5;61q|;642|1;6bv|2;6c0|;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6gp|;6jm|;6qa|;7gs|;7jg|;x80|9;")) +r.push(new A.al("Noto Sans HK","notosanshk/v21/nKKQ-GM_FYFRJvXzVXaAPe9hMnB3Eu7mOQ.otf","w|2m;4g|2r;7k|3;7u|1;88|3;8z|1;93|1;98|3;9e|1;a0|5;b6|;bk|1;bz|1;ct|f;e0|1;gh|;gx|;jf|;jr|;jt|2;k9|;kq|1;lc|1;lg|;lj|;lo|;pd|g;pv|6;q9|o;sh|;sw|1r;up|;5z2|1;61s|2h;6bm|1;6c0|6;6c8|2;6cc|2;6cg|2;6cl|2;6cw|;6cy|1;6d1|;6d5|3;6de|;6dj|2;6dt|;6es|;6g9|;6gb|1;6hp|1;6io|;6ir|;6it|;6ix|1;6j3|;6j7|;6ja|;6jl|1;6jq|1;6jv|;6jy|;6k5|;6kb|;6lc|b;6ls|b;6mo|9;6ns|1;6o4|2;6ob|1;6og|;6oi|;6ok|;6p2|3;6ph|;6ps|;6pu|1;6px|6;6q7|;6q9|2;6qd|;6qi|;6ql|3;6qr|;6qt|9;6r8|3;6rh|;6rn|;6rp|;6rs|;6rw|;6s2|;6sg|2;6sk|3;6sq|1;6su|1;6sy|1;6t2|1;6te|5;6tm|1;6tx|4;6u8|;6ud|;6v3|;6vu|1;6wf|;6x1|2;6xe|;6xk|;6y1|1;71s|1;726|e;72m|;72y|1;74z|;76o|97;7g1|2;7g6|1;7gc|1;7gg|1;7gm|6;7gu|5;7he|4;7hr|;7i8|3;7id|1;7ih|;7im|1;7iu|1;7j0|3;7jj|;7k0|2;7kw|f;7le|b;7mo|;7nh|1;7pe|;7pv|;7q2|;7r1|;7r3|1;7rq|;7sm|t;7tt|;850|1;88v|;8ai|1;8hx|2;8ii|;8lx|;94q|1;96o|p;97f|2g;9a8|5x;9gw|b;9hc|1r;9j5|2d;9ll|2u;9ol|16;9pt|1e;9r9|15;9sg|17;9ts|z;9v4|1a;9wg|7f;a3x|5u;ab9|;abk|;abu|;abw|;ack|;acz|;ad6|;ad9|1;adv|;ady|;aed|;aen|;af0|;af5|;afc|;afz|;ag4|;ag6|;agr|;ah2|;aim|;aj5|;aj7|;ajd|;ajl|;ajx|;ak0|;ak2|;ak7|1;akk|;al3|1;ald|;alh|;alp|;am7|;am9|;amd|;amf|;ami|;amm|;amq|;amu|;amz|;an1|;anl|2;anv|;any|;ao9|;aoo|;aoq|;aoz|;ap1|;ap9|;aph|;apl|;apq|;apz|2;aq6|;aqn|;aqp|;are|;arl|;asa|;asl|;asq|;ass|;asw|1;at1|;at5|;at8|;atd|;atf|2;atj|1;atv|1;aty|;au5|;au9|1;aud|1;aut|;av5|;av7|;avc|;ave|;avh|;avw|;aw2|1;aw5|;awc|1;awg|;awi|1;awq|;aww|;awz|;axu|;ay7|;azb|;azk|;b09|;b0e|;b12|;b1u|;b20|;b23|;b2n|;b2x|;b34|;b3h|;b3q|;b3s|;b4z|;b5h|;b6o|;b7n|;b7w|;b81|;b84|;b96|;b9k|;b9w|;baf|;baq|;bb3|;bbh|;bc3|;bco|;bcw|;bd5|1;bde|;bdl|;bdn|;bdt|;bdw|;beg|;bfg|;bfm|;bfp|;bfw|;bg8|;bgb|;bge|;bgh|;bgj|;bgm|;bh3|1;bhl|1;bhw|;bij|;biq|;biv|;bj0|;bj2|;bja|1;bkn|;bl7|;blp|;bmm|;bmo|;bn4|;bn6|;bn9|;bnf|;bny|;bo9|;boi|;bor|;bp5|;bpe|;bq0|;bq8|;bqp|1;bqz|1;br4|;brp|1;brt|;bs1|;bss|;bsu|;bsy|;bt0|;btj|;btp|;bu4|;bua|2;bv1|;bv5|;bv9|;bvc|;bx0|;byj|;c0b|;c0d|;c0h|;c0m|;c0s|;c17|;c1b|;c2a|1;c2l|;c36|;c3f|;c3q|;c3w|;c3y|;c41|;c4f|;c4i|;c4p|1;c4v|;c51|;c59|;c5h|;c5k|;c5m|;c5r|;c5t|;c6d|;c6l|;c6s|;c73|;c7a|1;c7d|;c7g|1;c7n|;c7v|;c87|1;c8b|;c8j|1;c8n|;c8s|1;c92|;cao|;car|;caw|;cb9|;cc4|;cdk|2;cdp|;cdt|;ce0|;ce7|;cea|;cef|;cei|;cek|;ceo|1;ceu|1;cey|1;cf2|;cf5|1;cfb|;cfd|;cff|1;cfk|;cfn|1;cfu|;cfw|;cfz|1;cg4|;cg6|1;cge|;cib|;cig|1;cir|;cjg|;ck3|;clc|;clk|;clz|;cm4|;cmd|;cml|;cmx|1;cn8|;cnd|;cnx|;cop|;cp1|;cpf|;cpj|;cpu|;cpx|;cq2|;cq7|;cq9|;crs|;cs4|;csb|;csf|;cso|;ct4|;ctb|;cu0|;cu2|;cua|2;cuh|;cum|;cvl|1;cx3|;cx8|;cxa|;cxo|;cxr|;cxt|;cy8|;cz6|;czo|;czu|;czz|;d0b|;d0t|;d0v|;d15|;d1t|;d2b|;d34|;d40|;d4a|;d4m|;d4q|;d58|;d5g|;d5u|;d6d|;d6h|;d6k|;d84|;d8b|1;d8q|;d9n|;dbi|;dcn|;dcq|;ddm|;ddt|;deh|;den|;df1|;df4|;df6|;dfl|1;dg3|;dgl|;dgt|;diy|;djj|;djl|;djz|1;dk2|;dkg|;dkn|;dkt|;dkw|;dkz|;dl1|;dla|;dlp|2;dlt|;dlw|;dm1|3;dmc|;dmr|1;dmx|;dmz|;dna|;dnf|;dnh|;dnr|;dny|;do3|;do6|;dob|;dod|;dof|;doj|;dox|1;dp1|;dp4|;dp8|;dpd|1;dpm|;dpp|;dpz|1;dqd|;dra|;drn|;dsq|;dt5|1;dtv|;dty|;du7|;dud|;duf|;dwb|;dx6|;dxc|;dy9|;dym|;dyz|;dzj|1;e0l|;e0n|;e1f|;e1k|;e2e|;e2s|;e32|1;e4c|;e54|;e5i|;e6t|;e7h|;e7o|;e80|;e8b|;e9j|;eal|;eb5|;ecb|;ect|1;eds|;ee5|;eel|;eer|;eey|;efa|;efl|;efy|;eg5|;ega|;egd|;egf|1;egl|;egs|;egu|;eh1|;ehd|;ehf|;ehx|;ei2|;eia|;eix|;ejl|;ejr|;elb|;elh|;elj|;emn|;en1|;en8|;enp|;eqe|;eqs|;er8|;erc|;es1|;esk|;etb|;ets|;eu1|;eu8|;euk|;euv|;ewf|1;ewi|;ewr|;ewu|;exa|;exc|;exf|;exi|1;exp|;eyl|1;eyo|;f0k|;f0n|;f0u|;f1u|;f23|;f26|;f28|;f2f|;f2v|;f2z|;f3h|;f3r|;f3v|;f3x|;f41|;f45|;f50|;f5a|;f5c|;f5j|;f65|;f6p|1;f71|;f7r|;f7t|;f80|;f90|;fau|1;fbd|;fbl|;fbw|;feo|1;fer|1;fev|a;ff8|2;ffc|2;ffg|;ffi|1;ffl|1;ffo|;ffq|;ffs|;ffu|9;fg6|3;fgb|2;fgf|;fgi|1;fgl|;fgn|2;fgr|;fgt|2;fgy|1;fh2|;fh4|7;fhl|1;fhv|;fi0|;fi6|b;fij|3;fip|4;fiw|3;fj2|8;fjc|;fjf|3;fjn|;fjq|1;fjt|3;fjz|5;fk6|5;fkd|1;fkk|6;fks|3;fkx|;fkz|2;fl4|3;fla|;flc|8;fln|;flp|;flr|6;fm0|3;fm5|8;fmf|3;fml|;fmq|;fmw|1;fn0|1;fn3|1;fn6|2;fna|9;fnl|2;fnp|4;fnv|p;fon|;fop|3;fou|2;foy|p;fpp|;fpr|3;fpw|4;fq2|4;fqa|;fqg|;fqj|;fqm|2;fqq|5;fqx|2;fr1|;fr3|6;frb|a;frn|1;frq|b;fs4|1;fsc|;fse|c;fst|1;fsw|;fsz|;ft1|4;ft7|4;ftd|b;ftq|5;ftx|c;fub|2;fuf|;fuj|1;fuo|1;fur|;fut|a;fv5|;fv7|;fv9|3;fve|c;fvs|8;fw2|5;fwa|;fwd|;fwg|3;fwl|;fwn|1;fwr|3;fww|2;fx0|2;fx4|6;fxe|1;fxi|;fxo|c;fy2|5;fy9|1;fyc|7;fyl|4;fyr|4;fyx|2;fz1|;fz3|2;fz7|7;fzg|5;fzn|3;fzs|1;fzv|j;g0g|5;g0n|1;g0q|;g0s|;g0v|3;g10|2;g15|2;g19|1;g1c|5;g1j|6;g1r|2;g1v|6;g23|2;g29|1;g2c|3;g2h|a;g2t|;g2v|7;g35|;g38|5;g3g|;g3k|;g3m|;g3q|4;g3x|;g3z|;g41|7;g4a|;g4c|;g4e|;g4g|;g4i|;g4k|1;g4n|1;g4q|2;g4u|;g4w|9;g58|2;g5f|h;g5z|1;g63|7;g6c|;g6l|;g6o|1;g6r|3;g6w|2;g70|2;g74|3;g79|7;g7i|;g7k|3;g7q|1;g7w|5;g84|6;g8e|;g8g|8;g8q|2;g8x|;g8z|1;g92|1;g95|6;g9e|;g9g|3;g9l|9;ga0|7;gaa|3;gaf|6;gan|5;gav|6;gb3|2;gb7|1;gba|5;gbj|2;gbn|1;gbq|;gbs|6;gc5|;gc9|;gcb|1;gce|;gcg|3;gcl|;gcn|;gcp|;gcs|1;gcw|3;gd1|4;gd7|;gd9|7;gdi|;gdl|;gdn|;gdr|2;gdv|2;gdz|5;ge6|1;ge9|;ged|1;geg|3;gel|5;get|2;gex|1;gf0|1;gf3|5;gfb|;gfe|;gfg|1;gfj|5;gfr|2;gfv|a;gg7|3;ggc|2;ggh|3;ggn|;ggq|;ggs|5;ggz|1;gh2|1;gh5|;gh8|9;ghj|2;ghn|4;ghu|;ghw|;gi2|;gi6|1;gia|2;gie|4;gik|4;giq|;gis|a;gj4|;gj6|;gj8|;gja|;gjd|;gjf|;gjl|2;gjp|;gjs|5;gk0|2;gk4|;gk6|5;gkf|7;gko|b;gl1|3;gl7|1;gla|;gld|;glf|1;gli|e;gly|;gm0|9;gmb|m;gmz|8;gn9|3;gne|5;gno|;go0|d;gof|9;goq|8;gp0|4;gp7|d;gpm|;gpo|;gpq|;gps|k;gqe|j;gqz|5;gra|;gre|;gri|;grk|b;grx|2;gs1|2;gs7|1;gsa|3;gsf|;gsh|j;gt3|1;gt6|;gta|;gtf|;gth|3;gtm|f;gu3|1;gu6|3;gub|8;gul|6;gut|2;gv0|3;gv5|5;gvd|2;gvl|2;gvp|2;gvt|;gvv|9;gw6|f;gwo|2;gws|1;gwv|;gwx|d;gxc|5;gxl|3;gxr|w;gyp|9;gz0|;gz2|4;gz9|2;gzd|9;gzo|2;gzs|1;gzw|b;h0b|8;h0l|;h0n|;h0p|1;h0s|4;h0y|9;h19|6;h1h|1;h1k|2;h1o|4;h1u|2;h1z|3;h25|1;h28|6;h2g|c;h2u|6;h32|9;h3d|7;h3m|1;h3p|;h3r|3;h3w|3;h41|;h44|4;h4a|5;h4h|6;h4p|;h4s|7;h51|1;h54|5;h5d|;h5f|1;h5i|1;h5m|1;h5p|5;h5w|1;h5z|;h62|1;h65|4;h6f|;h6h|2;h6l|;h6n|5;h6v|6;h76|4;h7c|;h7e|6;h7m|1;h7s|2;h7w|4;h82|2;h8b|;h8d|6;h8l|2;h8p|9;h90|;h93|;h97|;h9b|;h9d|1;h9g|;h9i|5;h9p|;h9r|8;ha2|6;haa|1;hag|;hai|3;han|1;har|2;hav|e;hbb|;hbe|;hbi|;hbn|3;hbs|7;hc1|3;hc6|2;hcb|1;hce|2;hci|;hck|1;hcn|;hcs|b;hd5|;hd8|i;hds|e;he8|;hea|;hec|;heg|1;hej|3;heo|a;hf0|f;hfh|;hfj|1;hfo|;hfr|8;hg1|4;hg7|8;hgi|3;hgo|1;hgr|2;hgv|;hgx|5;hh5|a;hhh|6;hhq|6;hhy|;hi0|2;hi4|5;hib|;hid|7;him|3;hir|;hit|1;hiy|5;hj5|1;hj9|4;hjf|;hji|8;hjs|8;hk2|2;hk7|2;hkb|1;hkf|1;hki|2;hkp|6;hky|5;hl6|;hl8|3;hld|1;hlg|3;hll|1;hlo|1;hlr|1;hlu|;hlw|1;hlz|;hm1|6;hm9|1;hmc|;hmf|1;hmk|;hmm|;hmo|;hms|1;hmv|3;hn2|3;hn7|2;hnb|1;hne|;hng|;hnk|2;hnp|;hnr|;hnt|5;ho0|9;hob|a;hop|1;hot|3;hoy|2;hp2|4;hp9|b;hpo|;hpq|j;hqb|h;hqu|;hqw|6;hr4|1;hr7|3;hrc|r;hs9|4;hsf|;hsh|2;hsl|7;hsu|3;hsz|2;ht3|;ht5|5;htf|;hth|4;hto|2;hts|a;hu4|1;hu8|u;hv4|1;hvb|8;hvl|3;hvq|;hvs|;hvu|2;hvy|9;hw9|9;hwk|3;hwp|3;hwu|m;hxi|9;hxt|;hxv|;hxx|h;hyg|6;hyo|;hyq|9;hz1|2;hz5|2;hz9|;hzb|2;hzf|2;hzj|2;hzn|4;hzt|2;hzx|4;i03|5;i0a|6;i0i|;i0k|;i0o|;i0s|5;i0z|5;i16|7;i1f|5;i1m|3;i1r|;i1u|4;i20|1;i23|3;i28|8;i2i|3;i2n|6;i2v|2;i2z|1;i32|2;i36|1;i39|a;i3m|6;i3u|;i3w|2;i40|;i43|6;i4f|8;i4q|4;i4w|9;i57|;i5a|e;i5q|5;i5x|1;i60|;i62|;i67|;i69|;i6b|2;i6f|f;i6y|;i70|;i72|2;i76|3;i7c|;i7e|;i7g|;i7k|1;i7n|;i7r|5;i7y|3;i84|d;i8j|3;i8o|1;i8s|2;i8w|;i8y|3;i93|3;i98|3;i9d|;i9f|1;i9k|4;i9q|;i9v|;i9x|1;ia0|5;ia7|6;iah|1;iak|l;ib7|;ib9|3;ibe|;ibl|1;ibq|6;iby|d;ice|1;icl|;ico|2;ics|5;id0|5;id7|2;idb|2;idi|1;idn|7;idw|7;ie5|3;iea|7;iek|;iem|c;if0|7;if9|7;ifi|;ifk|2;ifp|2;ift|;ifv|;ify|;ig2|1;ig5|;ig7|2;igb|1;igf|3;igk|;ign|b;ih0|7;ih9|1;ihe|3;ihj|;ihl|1;iho|6;ihw|;ihz|b;iic|6;iik|1;iio|3;iiu|1;iix|;iiz|;ij1|;ij3|;ij5|1;ij8|4;ijf|;ijh|5;ijp|3;ijv|;ijy|;ik0|5;ik7|;ik9|;ikd|2;iki|2;ikm|;ikp|3;iku|;ikx|1;il0|7;il9|;ilb|6;ilk|1;iln|;ilp|1;ilv|1;ily|2;im5|1;im8|5;img|;imi|5;imr|2;imv|2;imz|8;ina|a;inm|4;ins|8;io2|2;io6|7;iof|;ioi|;iol|2;iop|3;iow|;ioy|6;ip6|4;ipc|9;ipp|1;ipt|1;ipw|a;iq8|j;iqt|4;ir0|;ir2|1;ir5|3;ira|6;iri|1;irl|1;iro|1;irr|1;iru|5;is2|3;is7|1;isa|1;isd|;isf|;isi|7;ist|1;isw|1;isz|;it1|3;it6|2;itc|;itf|3;itk|9;itw|;ity|3;iu4|2;iu9|4;iuf|;iuh|4;iun|5;iuu|3;iuz|8;iv9|7;ivk|2;ivq|3;ivv|1;ivy|3;iw4|b;iwh|1;iwl|2;iwp|c;ix5|;ix8|1;ixb|3;ixg|5;ixn|;ixp|4;ixv|2;iy0|;iy2|1;iy5|2;iy9|;iyb|2;iyf|1;iyi|1;iyl|;iyn|1;iyx|e;izd|5;izk|f;j01|4;j07|;j09|;j0b|;j0g|7;j0p|4;j0w|;j0y|3;j14|3;j19|2;j1e|e;j1u|;j1x|;j1z|;j26|3;j2b|7;j2k|2;j2o|;j2q|;j2s|3;j2y|6;j36|2;j3a|2;j3k|h;j43|c;j4h|;j4j|2;j4n|d;j52|3;j5c|h;j5v|d;j6a|4;j6g|5;j6n|1;j6q|1;j6v|2;j6z|1;j72|2;j76|;j78|;j7a|1;j7f|;j7h|5;j7o|c;j82|4;j88|g;j8q|2;j8u|9;j95|1;j98|2;j9c|3;j9j|;j9l|5;j9s|6;ja0|5;ja7|;ja9|1;jac|;jaf|j;jb0|;jb2|5;jb9|8;jbj|1;jbn|;jbq|;jbs|;jbu|;jby|2;jc2|9;jcd|1;jcg|2;jcl|c;jcz|1;jd3|3;jd8|2;jdc|2;jdg|2;jdl|2;jdr|6;jdz|;je1|5;je8|;jea|2;jee|1;jeh|1;jel|6;jeu|8;jf4|4;jfc|4;jfi|;jfk|6;jfs|;jfx|7;jg6|1;jg9|h;jgs|;jgu|a;jh9|;jhg|;jhi|;jhk|9;jhv|3;ji0|1;ji3|4;ji9|r;jj3|;jj9|;jjf|o;jk7|2;jkb|6;jkj|3;jko|;jl4|7;jld|d;jls|h;jmc|6;jml|;jms|1;jmv|2;jmz|7;jn9|8;jnj|6;jnr|b;jo4|;jo6|3;job|a;jon|a;jp5|;jp9|1;jpc|j;jpx|m;jql|9;jqw|1;jqz|1;jr2|;jra|1;jrd|7;jrm|6;jru|2;jry|a;jsa|6;jsi|9;jst|4;jsz|;jt7|;jt9|1;jtc|4;jtk|9;jtx|4;ju3|i;jun|;juq|;jut|;juv|6;jv3|4;jv9|5;jvg|4;jvm|4;jvt|;jvv|9;jw6|;jwb|a;jwn|;jwp|2;jwt|3;jwy|2;jx2|5;jx9|;jxc|d;jxr|5;jxz|1;jy2|7;jyb|1;jye|1;jyh|1;jyk|5;jyr|6;jyz|b;jzd|7;jzm|7;jzv|;jzx|2;k01|;k03|;k05|1;k08|2;k0d|;k0f|;k0h|;k0j|7;k0s|3;k0y|6;k16|3;k1b|;k1e|a;k1r|a;k23|1;k28|2;k2c|3;k2h|;k2j|7;k2s|1;k2v|1;k2y|2;k32|2;k36|1;k39|4;k3f|4;k3l|5;k3v|9;k46|1;k4a|1;k4d|6;k4l|1;k4o|1;k4s|9;k56|3;k5b|1;k5e|j;k60|;k64|c;k6j|;k6l|9;k6x|1;k75|4;k7b|6;k7j|;k7l|2;k7r|;k7t|f;k8a|2;k8e|6;k8m|8;k8w|;k90|a;k9c|2;k9g|6;k9p|;k9r|3;k9w|;ka0|3;ka5|e;kal|3;kas|;kau|9;kb6|;kba|;kbc|6;kbk|;kbn|1;kbq|3;kbv|3;kc0|4;kc6|3;kcc|;kce|7;kco|8;kcy|7;kd7|;kd9|6;kdh|3;kdm|4;kdt|;kdv|3;ke0|7;kec|5;kej|6;ker|;ket|2;kex|1;kf0|6;kfb|;kfe|l;kg1|6;kg9|;kgb|a;kgn|3;kgs|1;kgv|1;kh0|;kh8|;kha|d;khr|7;ki0|c;kie|9;kiq|5;kix|h;kjg|;kji|6;kjx|;kk0|;kk2|2;kk6|2;kka|8;kkl|1;kko|3;kkt|2;kkx|d;klc|h;klv|3;km5|;kmd|;kmj|;kml|2;kmp|1;kms|5;kmz|h;knj|5;knq|2;knv|2;knz|5;ko6|g;kop|;kot|;kox|;koz|b;kpc|8;kpm|;kpo|5;kpv|1;kpy|6;kq6|f;kqo|l;krb|4;krp|;kru|;krw|;krz|1;ks2|7;ksb|b;kso|4;ksu|1;ksx|16;ku8|;kua|1;kud|1;kui|;kul|1;kuo|1;kur|9;kv2|p;kvt|;kvv|9;kw6|;kw9|8;kwj|3;kwp|;kwx|1;kx0|5;kx7|3;kxd|3;kxi|n;ky7|;ky9|;kyb|e;kyr|;kyt|4;kyz|2;kz6|3;kzc|9;kzn|6;kzv|g;l0d|e;l0t|;l0v|;l0x|;l10|;l12|;l16|;l1a|7;l1j|;l1l|1;l1o|b;l21|f;l2j|4;l2p|a;l31|1;l36|1;l39|8;l3j|2;l3n|1;l3s|9;l45|;l47|1;l4a|2;l4e|3;l4j|;l4m|;l4o|4;l4w|;l4y|3;l54|3;l5b|4;l5i|4;l5p|1;l5s|1;l5v|;l5x|;l60|;l64|1;l67|;l69|e;l6p|2;l6t|9;l74|2;l78|3;l7d|;l7f|1;l7i|9;l7u|;l7x|;l7z|;l82|;l84|;l86|5;l8e|6;l8m|;l8o|2;l8s|3;l8x|;l90|5;l97|;l9a|2;l9e|5;l9m|1;l9p|3;l9u|1;l9x|2;la2|;la4|1;la7|2;lab|a;lan|1;laq|2;lau|2;lay|2;lb2|;lb4|4;lba|2;lbe|2;lbj|1;lbm|1;lbr|f;lc8|1;lcb|2;lcf|2;lcj|3;lco|5;lcv|2;lcz|5;ld6|2;lda|d;ldp|6;ldy|;le1|7;lea|;lec|1;lef|a;let|6;lf1|9;lfc|3;lfh|j;lg2|4;lg8|5;lgf|;lgi|;lgq|a;lh2|h;lhl|e;li1|a;lid|;lif|c;lit|;lix|;lj3|j;ljq|5;ljx|3;lk2|;lk4|u;lla|;llj|5;llq|c;lm4|6;lmc|10;lne|;lno|1;lnu|2;lny|1;lo1|4;lo7|9;loi|;lok|9;lov|n;lpk|f;lq1|5;lq8|;lqa|3;lqi|;lqn|;lqt|;lqw|5;lr3|n;lrs|9;ls3|4;ls9|2;lsd|s;lt7|;lta|1;ltd|3;lti|3;lto|;lty|;lu0|1;lu3|;lu5|3;lua|2;lue|h;luy|1;lv2|14;lw8|5;lwi|;lwo|1;lwr|4;lwx|1;lx0|r;lxu|8;ly4|;ly6|9;lyh|o;lz7|1;lzi|a;lzu|a;m06|1;m09|7;m0i|2;m0m|c;m10|a;m1c|;m1e|5;m1p|p;m2g|c;m2u|9;m37|2;m3c|c;m3q|3;m3v|7;m44|;m46|2;m4a|2;m4e|3;m4j|4;m4p|6;m4x|;m50|g;m5i|6;m5r|6;m5z|5;m66|8;m6g|5;m6o|2;m6s|4;m6y|i;m7i|3;m7o|6;m7w|3;m81|5;m89|2;m8e|1;m8h|5;m8o|2;m8v|2;m8z|4;m95|;m97|6;m9f|2;m9j|7;m9s|;m9w|4;ma2|g;mak|6;mas|;mb3|2;mb7|d;mbm|;mbo|2;mbt|5;mc0|;mc3|;mc7|;mc9|a;mcl|1;mco|1;mcr|1;mcu|8;md6|1;mda|;mdc|7;mdl|b;mdy|4;me4|g;mem|;meo|8;mey|4;mf4|2;mf8|6;mfg|;mfi|4;mfo|;mfq|f;mg7|3;mgc|1;mgf|6;mgn|3;mgs|f;mha|4;mhg|2;mhk|5;mhr|3;mhw|4;mi3|3;mi8|2;mic|2;mig|1;mij|8;mit|2;mix|1;mj0|4;mj7|4;mjd|2;mjh|2;mjm|c;mk0|;mk5|1;mk8|3;mkd|5;mkk|;mkm|6;mkv|1;mky|1;ml1|e;mli|1;mll|1;mlo|;mlq|2;mlu|2;mly|3;mm3|7;mmc|5;mmj|d;mmy|1;mn1|2;mn5|9;mng|4;mnm|;mno|1;mnu|;mnx|;mnz|7;mo9|5;mog|2;mok|;mom|4;mos|;mov|5;mp2|;mp4|3;mpf|1;mpi|c;mpw|;mpz|1;mq2|2;mq7|4;mqe|3;mqj|3;mqq|1;mqt|9;mr4|c;mri|7;mrs|2;mrw|6;ms7|4;msd|5;msl|7;msu|a;mt6|i;mtq|1;mtu|6;mu4|6;muc|9;muq|a;mv2|2;mv6|e;mvm|c;mw0|b;mwd|2;mwj|q;mxd|1;mxg|3;mxl|d;my0|i;myk|;myn|o;mzd|c;mzr|f;n09|1;n0c|7;n0l|8;n0w|;n0y|;n10|1;n13|a;n1f|8;n1p|;n1r|3;n1w|7;n25|6;n2d|1;n2g|;n2i|2;n2n|1;n2r|m;n3g|;n3i|;n3k|2;n3o|4;n3v|;n3x|3;n42|3;n47|1;n4b|f;n4s|3;n4x|1;n51|1;n54|d;n5j|4;n5p|3;n5u|;n5y|2;n62|5;n69|;n6b|2;n6h|4;n6n|1;n6q|5;n6y|6;n76|;n7a|4;n7h|3;n7n|1;n7q|1;n7u|8;n84|1;n88|2;n8d|1;n8i|3;n8n|;n8q|1;n8w|6;n94|d;n9j|1;n9m|8;n9w|1;n9z|d;nae|1;nal|;nan|k;nbb|6;nbj|2;nbn|3;nbt|g;ncc|1;ncf|6;nco|;ncq|3;ncw|;ncy|1;nd2|3;nd8|8;ndi|4;ndo|;ndr|3;ndw|3;ne1|1;ne4|a;neg|7;nep|1;nes|;neu|5;nf2|2;nf6|1;nf9|1;nfd|5;nfl|;nfo|2;nfu|1;nfx|3;ng4|1;ng7|1;nga|1;ngd|2;ngi|4;ngo|2;ngs|2;ngy|2;nh2|;nh5|6;nhd|;nhf|4;nhl|1;nho|9;nhz|5;ni6|;ni9|;nib|2;nif|5;nim|5;nit|;nix|2;nj1|3;nj6|7;njf|;njh|;njj|;njl|d;nk0|;nk3|4;nka|5;nki|;nkk|2;nko|4;nku|5;nl1|a;nle|;nlj|e;nlz|2;nm3|4;nm9|;nmb|;nmd|;nmf|c;nmt|;nmv|1;nmy|3;nn3|8;nnd|6;nnm|3;nnr|;nnt|7;no3|2;no7|7;nog|;noi|1;nol|4;nos|8;np3|7;npe|1;nph|1;npk|1;npo|8;nq0|;nq4|7;nqd|g;nqv|2;nr0|1;nr6|3;nrb|7;nrk|4;nrw|2;ns0|;ns2|;ns4|2;ns8|9;nsp|3;nsu|3;nsz|6;nt8|3;ntd|;ntf|7;ntq|7;ntz|6;nu7|5;nue|;nug|4;num|;nup|;nur|2;nuv|e;nvb|1;nve|1;nvh|8;nvr|3;nvw|9;nw7|;nw9|6;nwh|1;nwk|2;nwp|;nws|;nwu|;nww|4;nx3|;nx5|;nx7|3;nxd|;nxf|c;nxt|5;ny0|a;nyc|8;nyn|m;nzb|4;nzh|;nzk|4;nzt|1;nzw|7;o06|2;o0a|1;o0d|g;o0v|3;o10|a;o1c|4;o1i|5;o1p|4;o1w|2;o20|a;o2c|2;o2g|;o2k|4;o2q|2;o2u|1;o2x|5;o35|;o38|;o3a|2;o3e|1;o3k|;o3m|4;o3s|;o3u|4;o40|5;o47|5;o4e|2;o4i|;o4m|;o4o|;o4q|8;o53|;o55|7;o5f|b;o5w|;o5y|2;o62|2;o67|3;o6d|;o6f|2;o6j|3;o6o|2;o6s|2;o6w|3;o71|4;o77|9;o7j|a;o7y|2;o82|1;o88|4;o8e|a;o8q|2;o8u|7;o93|4;o9b|;o9d|;o9f|;o9k|5;o9r|1;o9u|5;oa1|2;oa5|2;oae|1;oah|8;oas|2;oaw|4;ob2|6;obc|3;obh|3;obm|j;oc8|1;ocb|;ocg|;oci|g;od0|2;od4|;odc|7;odl|;odo|c;oe3|;oea|;oec|1;oef|1;oei|8;oes|9;of4|4;ofg|3;ofl|1;ofo|1;ofr|2;ofy|;og0|1;og4|3;og9|3;oge|2;ogk|1;ogo|k;ohc|4;ohj|c;ohx|2;oi1|9;oid|;oih|;oij|8;oit|8;oj4|;oj7|;oj9|;ojb|2;ojf|5;ojm|3;ojr|3;ojw|1;ok0|1;ok3|1;ok6|1;ok9|4;okf|1;okj|4;okp|7;oky|3;ol4|9;olf|3;olk|2;olo|2;olt|1;olw|4;om4|;om6|1;om9|2;omd|3;omk|;omm|1;omp|4;omw|7;on6|1;on9|;onb|7;onk|7;ont|1;onw|4;oo2|;oo6|2;ooa|;ooc|d;oor|3;oow|y;opx|;oq0|1;oq3|1;oq6|5;oqd|1;oqg|f;oqy|;or1|9;orc|;ore|5;orl|2;orq|5;orx|6;os9|4;osf|2;osj|3;oso|1;osr|4;osx|6;ot8|8;oti|f;otz|b;ouc|3;ouh|7;ouq|2;ouv|a;ov7|7;ovg|;ovi|9;ovt|5;ow3|;ow7|g;owq|b;ox3|;ox5|2;ox9|s;oy4|;oy8|c;oym|5;oyt|;oyv|9;oz6|g;ozq|2;ozu|5;p01|b;p0f|;p0k|;p0s|;p16|;p1j|;p1r|;p27|;p3a|;p4m|4;p4t|4;p4z|2;p53|e;p5k|;p5n|6;p5v|;p5x|9;p68|3;p6d|a;p6r|;p6t|a;p75|6;p7e|4;p7k|9;p7w|n;p8l|;p8n|;p8p|9;p90|1;p93|;p97|8;p9h|g;p9z|h;paj|7;pas|5;paz|6;pb8|2;pbc|2;pbg|;pbi|3;pbn|4;pbt|;pbv|4;pc3|;pc6|2;pca|;pcf|3;pck|;pcm|;pco|;pcq|4;pcx|3;pd2|1;pd8|;pdb|4;pdh|4;pdp|3;pdu|;pdw|3;pe1|3;pe7|1;pea|1;ped|1;peg|5;pen|;pep|2;pet|;pev|;pex|2;pf1|2;pf5|1;pf8|4;pfe|;pfg|1;pfm|8;pfw|5;pg4|a;pgg|1;pgj|3;pgp|;pgs|1;pgv|7;ph4|6;phc|3;phh|5;pho|;phq|;phu|;phw|7;pi5|2;pi9|4;pif|;pih|4;pin|3;pis|;piv|;pix|1;pj1|1;pj6|2;pja|2;pje|c;pjt|3;pjy|;pk0|2;pk4|3;pk9|;pkb|9;pkm|4;pks|1;pkv|1;pky|2;pl2|7;plb|;plf|;plh|;plj|9;plu|1;plx|7;pm6|;pm8|7;pmh|h;pn0|1;pn3|3;pn9|;pnb|4;pnh|d;pnw|3;po2|2;po6|6;poe|4;pok|1;pon|6;pow|2;pp0|2;pp4|;pp6|8;pph|1;ppk|5;ppr|;ppu|8;pq4|4;pqa|;pqc|1;pqf|;pqh|;pqj|;pqm|e;pr2|1;pr5|5;prc|1;prf|4;prl|1;pro|c;ps3|2;ps7|;psa|1;psd|7;pso|3;pst|k;ptf|d;ptu|2;pu2|;pu7|a;puj|1;pum|a;puy|v;pvv|2;pw6|8;pwg|;pwi|;pwk|9;pwv|;pwx|c;pxb|6;pxj|d;pxy|1;pya|1;pye|;pyn|;pyr|5;pyy|5;pz5|;pz7|;pz9|p;q00|;q02|a;q0e|2;q0p|;q0t|i;q1d|;q1f|6;q1n|a;q1z|f;q2g|7;q2p|;q2r|4;q2x|b;q3a|;q3c|;q3f|1;q3k|1;q3n|1;q3q|;q3t|;q3v|l;q4i|c;q4w|p;q5n|f;q65|3;q6a|;q6c|;q6e|;q6g|;q6l|7;q6u|e;q7b|b;q7o|;q7q|;q7s|a;q84|3;q89|b;q8m|1;q8q|1;q8u|;q8x|1;q90|1;q93|5;q9a|6;q9i|a;q9u|o;qak|5;qar|e;qb7|1;qbc|;qbf|;qbh|1;qbk|e;qc1|a;qcd|k;qcz|;qd1|7;qda|;qdc|h;qdv|h;qee|4;qen|2;qer|7;qf1|c;qff|;qfh|5;qfp|5;qfw|a;qg8|a;qgk|;qgm|c;qh0|3;qh5|4;qhb|2;qhf|1;qhi|6;qhq|c;qi4|3;qi9|5;qig|4;qim|2;qiq|1;qit|3;qiz|3;qj4|;qj6|4;qjd|;qjf|1;qji|1;qjl|4;qjr|d;qk7|;qk9|3;qke|;qkl|2;qkq|4;qkw|a;ql8|2;qlc|5;qlj|3;qlp|;qlr|q;qmj|1;qmo|1;qmr|1;qmu|9;qn6|2;qna|;qnc|5;qnj|;qnp|6;qny|;qo0|e;qoh|2;qol|;qoo|4;qou|;qow|a;qp8|2;qpc|5;qpj|1;qpm|2;qpq|5;qpy|;qq4|11;qr7|8;qrh|;qrl|8;qrv|2;qrz|5;qs6|2;qsa|5;qsi|3;qsp|t;qtk|4;qtq|;qtt|3;qty|i;qui|5;quq|5;qux|3;qv2|8;qvc|5;qvj|2;qvn|6;qvv|2;qvz|k;qwl|4;qwr|b;qx4|;qx6|5;qxe|1;qxh|2;qxl|2;qxp|1;qxs|5;qxz|4;qy5|5;qyc|3;qyh|;qyk|8;qyv|2;qyz|8;qz9|d;qzo|;qzr|1;qzu|2;qzy|;r01|1;r04|6;r0c|6;r0l|;r0n|;r0p|7;r0y|;r10|b;r1d|;r1i|2;r1n|1;r1q|k;r2d|2;r2h|3;r2m|;r2o|a;r32|1;r35|6;r3d|a;r3p|3;r3v|3;r41|3;r46|1;r49|;r4b|2;r4f|5;r4m|g;r55|6;r5d|3;r5i|1;r5l|3;r5q|5;r5x|6;r67|;r69|;r6b|5;r6j|4;r6p|6;r6x|1;r70|3;r76|;r7a|1;r7d|1;r7g|5;r7q|;r82|4;r89|4;r8f|a;r8r|2;r8w|4;r92|2;r96|2;r9a|2;r9e|2;r9j|1;r9m|;r9o|;r9q|5;r9x|3;ra3|4;raa|1;rad|;raf|;rah|4;rao|1;ras|;rau|;raw|9;rb8|2;rbc|2;rbg|6;rbo|5;rbv|;rby|;rc0|3;rc6|3;rcb|3;rcg|7;rcp|3;rcu|1;rcx|6;rd7|2;rdb|7;rdk|2;rdo|;rdq|;rds|1;rdv|9;re7|1;rea|;rec|;ree|;reg|8;req|7;rez|2;rf3|;rf5|h;rfo|;rfq|2;rfu|1;rfx|f;rge|4;rgk|4;rgq|m;rhe|6;rhm|7;rhv|;rhx|2;ri1|a;rid|l;rj0|4;rj6|1;rj9|8;rjj|1;rjo|;rjr|4;rjx|9;rk8|;rka|2;rke|2;rki|4;rko|4;rku|2;rlq|;rmq|;rp3|;rp5|;rp7|4;rpd|2;rph|c;rpw|3;rq2|;rq4|1;rq7|;rq9|1;rqc|2;rqg|5;rqn|4;rqt|6;rr1|;rr4|2;rr8|2;rrd|1;rrg|1;rrj|6;rrr|e;rs7|6;rsf|1;rsi|j;rt3|1;rt6|;rt8|1;rtb|;rtd|6;rtl|l;ru8|5;ruf|7;ruo|;ruq|b;rv3|a;rvf|2;rxg|;rxi|3;rxn|5;rxu|2;rxy|5;ry5|;ry8|2;ryc|1;ryh|1;ryk|a;ryx|;ryz|1;rz3|2;rz7|;rz9|a;rzm|5;rzt|1;rzw|;rzy|5;s05|3;s0b|6;s0j|a;s0v|5;s12|6;s1a|6;s1m|;s1o|b;s21|1;s25|u;s31|1;s34|1;s37|3;s3c|2;s3g|6;s3o|c;s43|4;s49|h;s4s|1;s4v|;s4x|7;s56|2;s5a|;s5c|2;s5g|a;s5s|8;s62|;s65|4;s6b|a;s6o|;s6q|;s6u|;s6x|1;s70|1;s74|;s76|1;s7d|6;s7l|3;s7r|1;s7u|8;s84|5;s8b|4;s8h|1;s8k|8;s8u|5;s91|6;s99|1;s9c|g;s9v|3;sa1|1;sa4|4;saa|7;saj|1;sam|d;sb1|n;sbq|1;sby|;scz|;sd7|1;sdb|1;sdf|;sdh|3;sdp|f;se6|1;se9|1;sec|2;seh|e;sey|;sf4|6;sfc|;sfe|1;sfh|1;sfk|;sfo|i;sg8|;sgb|2;sgf|3;sgk|3;sgp|b;sh9|2;shd|7;sho|3;sht|1;shw|;shy|1;si1|d;sig|1;sij|3;sio|4;siv|2;siz|5;sj6|m;sju|1;sjx|;sjz|2;sk4|1;sk7|2;skb|;ske|5;skl|3;skq|;sku|8;sl4|;sl7|;sl9|2;sld|;slf|2;slj|1;slm|1;slq|;slw|9;sm7|6;smg|5;smn|6;smx|g;snf|;snh|5;sno|;snq|e;so6|g;soo|3;sou|3;soz|g;sph|5;spo|;spq|7;spz|3;sq4|;sq6|2;sqa|8;sqk|;sqo|7;sqx|a;sra|;srd|a;srp|;srr|g;ss9|5;ssg|7;ssp|;ssr|6;ssz|7;st8|1;stb|;ste|c;stt|;stv|7;su5|d;suk|e;sv0|;sv2|;sv5|;sv7|5;sve|1;svh|1;svk|a;svw|5;sw4|2;sw8|g;swq|1;swt|a;sx7|5;sxe|;sxi|p;sy9|;syb|a;syo|c;sz2|;sz5|6;szd|3;szi|n;t07|2;t0b|;t0d|4;t0j|h;t12|e;t1i|3;t1n|5;t1u|4;t20|3;t25|k;t2r|3;t2w|1;t30|;t34|i;t3o|8;t3y|g;t4g|1;t4j|b;t4w|a;t58|6;t5g|m;t64|9;t6f|1;t6j|;t6l|;t6n|1;t6q|2;t6u|2;t6y|q;t7q|2;t7w|;t7y|;t80|1;t83|e;t8j|1;t8m|j;t97|;t99|;t9c|;t9g|f;t9x|b;taa|b;tan|3;tas|1;tav|1;taz|;tb1|1;tb4|;tb6|3;tbb|i;tbv|8;tc5|;tcv|;tcy|;tdt|;tdv|;tek|;tfa|;tgt|;thj|;tiv|1;tiy|3;tj3|1;tj6|1;tj9|1;tjc|1;tjf|9;tjq|3;tjv|1;tjy|g;tkg|2;tkl|2;tkp|7;tkz|;tl1|8;tlc|6;tlm|2;tlq|7;tm0|;tmc|;tng|2;tnk|4;tns|;tnu|;tnw|7;to8|5;tof|6;toq|7;toz|1;tp2|;tp4|;tp7|4;tpd|3;tpl|4;tpr|9;tq3|3;tq8|1;tqb|8;tql|2;tqp|8;tqz|1;tr2|;tr5|4;trb|3;trg|;tri|;trk|1;trn|1;trq|;trs|1;trv|2;trz|f;tsi|d;tsx|2;tt1|;tt4|2;ttb|3;ttg|7;ttp|;ttr|1;ttu|7;tu3|;tu5|6;tue|;tug|1;tuj|h;tv2|4;tv8|2;tvc|2;tvh|7;tvq|5;tw1|1;tw5|3;twa|8;twm|;two|2;tws|2;tww|4;tx2|2;tx6|b;txj|4;txp|2;txw|;txz|f;tyg|;tyi|4;typ|3;tyu|5;tz1|c;tzf|5;tzm|7;tzw|5;u03|;u05|1;u0d|1;u0g|3;u0l|1;u0o|3;u0t|b;u16|;u18|c;u1n|6;u1v|1;u1y|3;u23|;u25|3;u2a|3;u2f|2;u2j|;u2p|;u2r|g;u3a|3;u3f|5;u3m|a;u3z|6;u5k|1;u5o|3;u5t|3;u5y|e;u6e|6;u6m|;u6z|1;u72|5;u79|2;u7d|4;u7j|;u7l|1;u7o|2;u7t|1;u7w|2;u80|;u82|1;u85|;u87|3;u8c|;u8e|;u8g|c;u8u|1;u8x|;u90|1;u93|c;u9h|;u9j|c;u9x|;u9z|7;ua8|9;uaj|4;uap|2;uc6|3;ucb|3;uch|;ucj|5;ucq|b;ud4|5;udd|4;udj|;udl|;udn|i;ue7|8;ueh|1;uek|2;ueo|1;ues|b;uf5|6;ufd|8;ufo|2;uft|e;ug9|9;ugk|i;uh4|2;uh8|4;uhe|a;uhq|2;uhu|a;uj3|;ujs|;ujv|;ujx|;ujz|5;uk6|c;ukm|1;ukq|;ukt|;ukv|9;ul8|;ulb|4;uli|1;uln|4;ult|3;uly|1;um1|6;um9|5;umg|a;ums|6;un2|2;un6|3;unb|4;unh|2;unl|4;unr|;unt|3;uny|8;uo8|;uoa|8;uok|2;uoo|3;uov|2;up0|;up2|3;up8|;upb|2;upg|3;upm|9;upx|3;uq3|;uq5|6;uqd|;uqf|;uqi|1;uql|5;uqs|2;uqw|;uqy|1;ur1|3;ur9|1;urc|1;urh|;urj|2;urn|1;urq|4;urz|;us3|4;us9|5;usg|2;usk|9;usw|1;ut0|;ut3|1;ut9|;utb|;ute|;uth|9;uts|;utu|3;utz|;uu3|2;uu7|2;uub|3;uug|1;uuj|2;uun|;uup|6;uux|8;uv8|c;uvm|7;uvx|3;uw2|1;uw6|2;uwd|1;uwh|4;uwn|5;uzp|2;uzt|1;uzx|;v01|6;v09|4;v0f|1;v0i|7;v0s|;v0w|;v0y|;v10|5;v17|;v19|6;v1h|1;v1k|1;v1p|4;v1v|1;v1y|3;v23|;v25|8;v2h|3;v2m|6;v2u|b;v3b|e;v3r|2;v3v|h;v4g|;v4i|2;v4m|n;v5b|;v5d|k;v5z|o;v6p|5;v6w|1;v6z|5;v76|l;v7t|c;v87|8;vat|;vax|4;vb3|f;vbk|i;vc4|d;vck|3;vcr|9;vd2|2;vd8|5;vdf|3;vdk|;vdm|6;vdu|;vdw|4;ve3|;ve5|l;veu|4;vf2|2;vf6|1;vf9|7;vfi|;vfk|;vfm|n;vgb|;vgd|1;vgg|g;vgy|l;vhl|3;vhq|4;vhw|7;vi6|1;vil|1;vio|2;vis|5;vj0|;vj3|1;vj6|;vj8|f;vk7|4;vkg|;1d6o|8;1d6z|2;1d79|;1d7b|;1d7e|;1d7m|;1d7x|;1d84|;1d87|;1d8a|;1d8j|;1d8n|1;1d8q|;1d8y|;1d9a|;1d9e|;1d9h|;1d9j|;1d9p|;1d9u|;1d9y|;1da0|1;1da3|;1da6|;1da8|;1dae|;1dai|;1dam|;1dat|;1db0|1;1db3|;1dbp|;1dbv|;1dbx|1;1dc5|1;1dc8|;1dcg|;1dco|1;1dcs|2;1dcw|;1dcy|2;1dd3|;1dd5|;1ddg|1;1ddm|;1ddp|;1ddr|;1ddu|;1ddx|3;1de2|;1de4|1;1df7|2;1dfe|;1dft|;1dfv|;1dgd|1;1dkw|4;1e6o|9;1e7k|y;1e8k|i;1e94|3;1edd|4e;1eht|t;1eiq|5;1eiy|5;1ej6|5;1eje|2;1ejk|6;1ejs|6;2q68|c;2q6o|2k;2q9c|1o;2qdc|2;2qds|17;2qf4|8;2qfk|1;2t5t|;2t6m|;2t6u|;2t72|;2t7s|;2t8m|1;2t8q|;2t90|;2tai|3;2tap|;2tbi|;2tcc|;2tce|;2tco|;2tgk|;2tgp|;2tgr|;2thd|;2thw|;2tiq|;2tj8|;2tjg|;2tjo|;2tkp|;2tln|;2tmc|1;2tnd|;2tni|;2tnk|;2to7|;2tof|1;2tph|;2tqi|;2tr9|;2ts1|;2ts5|2;2ttq|2;2tuo|;2tuv|;2tv9|;2tvt|;2tvv|;2tx1|;2tx8|;2txv|1;2ty7|;2u05|;2u13|;2u1a|;2u1d|1;2u1v|;2u3b|;2u4c|;2u4e|;2u6f|;2u8e|;2u91|;2u9f|;2u9v|;2ua2|;2ua8|;2uad|;2uan|1;2uaz|;2uc1|;2uc5|;2uc9|1;2uco|;2ucw|;2udy|;2ueu|;2uj2|;2uk1|;2um1|;2ur0|;2usz|;2uvp|;2uxi|;2uxv|;2uz8|;2v09|;2v3b|;2v4h|;2v68|;2v73|;2v7u|;2v90|;2v9e|;2v9p|;2vbh|;2vf3|;2vfj|;2vfs|1;2vgf|;2vgm|;2vgr|;2vhe|;2vhn|;2vi3|;2vi7|;2vij|;2vil|;2vj4|;2vjo|;2vju|1;2vk1|2;2vkj|;2vl1|;2vlj|1;2vlo|;2vm5|;2vme|;2vmk|;2vn9|;2vnc|;2vnz|;2vo3|3;2vod|;2vot|;2vpb|;2vpx|;2vqg|;2vqp|1;2vra|3;2vrg|2;2vsf|;2vsh|;2vsk|;2vss|;2vsu|1;2vti|;2vto|;2vtz|;2vua|;2vuw|;2vwk|;2vwp|1;2vwt|4;2vx2|;2vx9|;2vyk|;2vzh|;2vzn|;2vzp|6;2w0c|;2w0m|;2w0o|;2w0t|;2w0y|;2w16|2;2w1i|;2w2f|1;2w2l|;2w3c|3;2w4d|;2w4m|;2w4t|1;2w4w|1;2w57|;2w5o|;2w6c|;2w7h|;2w7k|;2w8d|;2w8k|2;2w8s|;2w9r|;2wa2|3;2wb8|;2wbh|1;2wcv|;2wd8|;2wdr|;2wdx|3;2we3|;2weg|;2weu|;2wf1|;2wfo|;2wfz|2;2wg7|2;2wgf|;2wgj|;2wh0|;2whg|2;2wj3|;2wjf|;2wjh|;2wjp|;2wjs|;2wjz|;2wlc|;2wlj|;2wnt|;2wqk|;2wr3|;2wsc|;2wtk|1;2wts|;2wv7|;2wvy|;2ww2|3;2wxi|;2wxm|;2wz9|1;2wzy|;2x08|;2x0c|;2x1h|1;2x2l|;2x32|;2x3n|;2x3q|;2x44|;2x4v|;2x5e|;2x5g|1;2x6y|;2x7b|;2x86|;2x9k|;2xa5|;2xdj|;2xdu|;2xee|;2xhm|;2xhv|;2xi1|;2xj2|;2xk1|;2xle|;2xmg|;2xmi|;2xmo|2;2xn7|;2xn9|;2xnj|;2xnq|2;2xoa|2;2xoe|;2xot|;2xow|;2xpi|;2xq2|2;2xqv|;2xrg|5;2xrn|1;2xt7|;2xtc|5;2xtv|;2xtz|;2xuh|3;2xun|;2xv3|;2xv9|1;2xvc|4;2xwg|;2xwo|2;2xwt|;2xx5|2;2xxc|;2xxh|;2xxu|;2xy6|;2xy9|3;2xyv|;2xyz|;2xz7|2;2xzy|4;2y0u|1;2y1d|;2y1i|3;2y2i|;2y2r|2;2y34|2;2y39|;2y3g|;2y3m|;2y3r|;2y4b|;2y4k|;2y54|;2y5m|;2y64|;2y68|;2y6b|;2y6g|;2y6u|;2y8r|;2y9f|;2yb1|;2yb8|;2ybp|;2ybv|;2ycj|;2yis|;2ym9|1;2yp6|;2yr4|;2ysi|;2ysl|;2yss|;2yx2|;2yxf|;2yxq|;2yz4|;2z06|;2z0a|;2z0q|;2z0x|;2z1n|;2z21|;2z30|;2z37|;2z3r|;2z3x|;2z61|;2z6s|;2z6w|;2z7s|;2z85|;2z9r|;2z9x|;2zca|;2zdq|;2zdt|;2zfs|;2zid|;2zih|;2zjy|;2zkq|;2zlz|;2zng|;2zoq|;2zq3|;2zqr|;2zqy|;2zs1|;2zsx|;2zsz|;2zuw|;2zy4|;302p|;302t|;3071|;307k|;307r|;308q|;30bp|;30c1|;30cr|;30cx|;30ds|;30e4|;30e9|;30eh|;30ek|;30fh|;30gj|;30gr|;30hc|;30ic|;30jx|;30kv|;30la|;30nv|1;30ob|;30q0|;30qi|;30ra|;30rc|;30tw|2;30uq|;30us|;30uz|;30v3|;30ve|;30xh|;30xt|;30ye|;30z8|1;30zx|;311f|;313z|1;314h|;3165|;316p|;3187|;319i|;31a1|;31an|;31bb|;31bf|;31c0|;31cj|;31ie|;31lb|;31lh|;31ly|;31m0|;31n2|;31nm|;31of|;31oj|;31pm|;31sa|;31se|;31uu|1;31vc|;31vw|;31w1|;31w5|;31wi|;31xk|;31y3|;31y9|;31yh|;31yq|;31yv|;31z6|;31za|;31zd|;3213|1;321e|;322s|;3230|;323r|;324t|;3251|;325c|;325f|1;325z|;327i|;328d|;329i|;329u|;32bc|;32bv|;32cz|;32en|;32ic|;32ks|;32lf|;32nn|;32o4|;32ob|;32p2|;32pp|1;32q6|;32rb|;32rg|;32sa|;32tf|;32v1|;32wt|;32wy|;32xw|1;32yb|;32yw|1;32zu|;3307|2;330v|;331h|;331r|;331t|3;332u|;3332|;3336|;3341|;3349|1;3357|2;336a|;336o|1;337k|;337u|;338f|;33ck|;33d8|;33dq|;33dy|;33ec|1;33eh|1;33em|;33eo|;33gf|;33gw|;33hr|;33hu|;33l1|;33mh|;33n4|;33o1|;33oa|;33on|;33px|;33q1|;33q4|;33qz|;33rh|2;33sj|;33sw|;33tj|;33tm|;33uk|;33uo|;33vd|;33vj|;33w7|;33wu|;33xa|;33xi|;33xp|;33y2|;33z3|;33zi|;3403|;340m|;340w|;3419|;341b|;341r|;342u|;343l|;344i|;3458|;345e|;345x|2;348q|;34jm|;34pz|;34rf|;34ry|;34sa|;34t6|;34uy|;352b|;353t|2;354l|;354n|;3553|2;356k|3;358g|;3597|;35a6|;35an|;35bq|7;35cz|;35dk|;35dy|;35e9|;35f0|5;35fd|;35hk|3;35ix|;35j3|;35jr|;35kn|5;35md|;35mp|;35my|;35nl|;35of|3;35ov|;35pw|;35pz|;35q8|;35qd|;35rf|5;35sh|;35tl|4;35uf|;35vp|;35vv|2;35w1|;35xl|;35y9|;35yk|;35z8|;35zj|;35zt|;360v|1;3610|;361a|;361h|2;361o|;361r|;361t|;362f|;362i|;363n|2;363w|;3645|;364t|;365e|;3664|;366z|;368b|;368m|;368p|;369i|2;369w|;36ab|;36ad|;36at|;36bj|;36bl|;36bt|1;36cu|;36d6|;36dp|;36e2|;36es|;36fc|;36g2|3;36h8|;36hi|;36ho|;36il|;36ip|;36jt|1;36k2|;36k8|;36kk|;36lx|1;36my|1;36nn|;36o7|1;36pl|;36po|;36q6|;36qb|;36qe|;36rp|;36sh|;36uw|;36x4|;36zc|;36zu|;371h|;371w|;372v|;374k|;375y|;376t|;3773|;379r|;37c0|;37de|;37dv|;37gi|;37jd|;37jk|3;37jv|;37jz|2;37kc|;37km|1;37kp|;37lb|;37lf|1;37lq|5;37mq|1;37n8|2;37nf|;37nj|;37nm|;37ns|7;37o4|;37ok|;37on|;37op|;37or|2;37p3|4;37ph|;37ps|;37q2|;37q6|1;37qb|;37qd|;37qk|1;37qu|3;37qz|;37ri|;37rm|1;37rp|;37s1|9;37su|;37sy|;37t1|;37t6|;37ta|3;37tp|;37tx|2;37u9|;37uf|3;37v0|;37v7|3;37vo|3;37w1|2;37wa|2;37wg|;37wn|;37wq|;37wx|;37xb|;37xe|;37xl|;37yn|;381a|;3851|;385l|;389q|1;38ax|;38bd|;38cm|;38cz|;38hk|;38iy|1;38l7|;38ls|;38o5|;38o7|;38r2|;38t8|;38ua|;38ue|;38uv|;38uy|;38vd|;38vs|;38w2|;38z0|;3902|;3925|;3963|;396w|;398d|1;39al|;39b7|;39ba|1;39cw|1;39e8|;39g9|;39hj|;39i0|;39ji|;39jl|;39jn|;39qx|;39r9|;39rj|1;39s6|;39t8|;39ta|;39ui|;39yp|;39yt|;39z3|;39zv|3;3a02|;3a05|1;3a0x|;3a10|;3a1b|;3a2h|;3a39|;3a3f|;3a3k|;3a4l|;3a5x|;3a6p|;3a83|;3a8l|;3aar|;3aba|;3abq|;3acd|;3acl|;3ad9|;3aeq|;3ah3|;3ahr|2;3al3|;3al9|;3alu|;3ao8|;3aou|;3aox|;3apv|;3arq|;3as6|;3auk|;3avg|;3az8|;3b11|;3b18|;3b1q|1;3b2v|;3b3d|;3b78|;3b7t|;3b8z|1;3b9i|;3bac|;3bag|;3bb5|;3bba|;3bc1|;3bd6|;3bdx|;3bf5|;3bfo|;3bgg|1;3bi6|;3bj4|;3bjk|;3bk3|;3bmh|;3bnd|;3bpq|;3brd|;3bsx|2;3bty|;3buk|;3bvb|1;3bx6|;3byj|;3c2p|1;3c4h|;3c4p|;3c5k|;3c6c|;3c77|;3c7r|;3c84|1;3caq|;3cbl|;3cd5|3;3cfh|1;3cfm|;3cgt|;3ck8|;3ckh|;3ckq|1;3cnk|;3cqd|;3cqz|1;3cr5|;3cu6|;3cvp|;3cvs|;3cw2|;3cwg|2;3cy2|;3cyx|;3czo|;3czs|1;3czx|;3d08|;3d3m|;3d6a|;3d7k|;3d7x|;3d8f|;3daq|;3dba|;3df3|;3df5|;3df9|;3dga|;3dgo|;3dh8|;3dhy|;3dj5|;3dll|;3dmb|1;3dn0|;3dp8|;3dqe|;3dr2|;3dri|;3ds8|;3dsa|;3dsj|;3dtz|;3dvy|;3dw1|;3dwm|;3dx5|;3dxt|;3e08|;3e0l|;3e2a|;3e2i|;3e3x|1;3e44|;3e4i|;3e4x|1;3e9x|;3ea2|;3eab|;3ead|;3ear|;3eaw|;3ec0|3;3ecb|;3ed1|;3ede|;3edy|1;3ee5|;3eer|;3ef4|;3egn|;3eht|;3eio|1;3eiu|;3eke|4;3elg|;3elz|1;3em5|;3em8|;3emb|;3emp|;3eoy|8;3eq9|;3er8|;3esg|7;3esu|;3eu4|;3eui|1;3euo|;3ev4|;3ev9|;3evb|;3evm|;3ewy|3;3ey6|;3eya|;3eyf|;3eys|;3eyw|;3eyz|;3ezd|;3f0w|7;3f3a|;3f5f|1;3f6n|;3f6p|;3f7i|;3f8e|1;3f9q|;3fbf|;3fbm|1;3fd4|;3fe5|2;3ff1|;3ff6|;3fg0|;3fg8|;3fgp|;3fgs|1;3fhi|1;3fj8|1;3fjp|;3fm5|;3fob|;3fqf|;3fr4|;3fr9|;3frf|;3fsi|;3fsm|;3fty|;3fwy|;3fyy|;3g1r|;3g2q|;3g40|;3g5g|;3g5i|;3gc4|;3gdf|;3gf4|;3gf8|;3gfx|1;3gg7|;3ggc|;3ghe|;3ghl|;3gid|2;3gk4|;3gnj|;3gol|1;3gox|;3gpq|;3gqs|1;3gss|;3gwo|;3gxc|;3gyl|;3gz6|;3gzs|;3h2c|;3h47|;3h4q|;3h5s|;3h7h|;3h8d|;3h8q|;3h8u|;3ha6|;3har|;3hax|;3hbt|;3hc4|;3hdp|1;3hf8|;3hfq|;3hfv|;3hg8|;3hh4|2;3hhk|;3hid|;3hm7|;3hmc|;3hn6|;3hpo|;3hrl|;3hs5|;3hv3|;3hw3|1;3hwm|;3hwz|;3hxg|;3hxr|;3hy0|;3hz1|;3hzw|;3i31|;3i33|;3i9a|;3id3|;3iex|;3if6|;3ifd|;3ify|;3ig3|1;3ih4|;3iir|;3ij4|;3ikd|1;3ilk|1;3ilw|;3ini|;3iof|;3iot|;3ipb|;3iq1|;3ir3|;3irg|;3itj|;3iu0|;3iu2|;3ivq|;3iws|;3ixn|;3iz1|;3izm|;3j0m|;3j14|;3j1r|;3j22|;3j39|;3j3h|;3j3x|;3j4a|;3j82|;3jag|;3jak|;3jar|;3jb6|;3jep|;3jgc|1;3jho|;3jl4|;3jlg|;3jls|;3jm3|;3jmt|;3jnf|;3jqi|1;3jqq|;3jr0|;3jrs|;3js6|;3jtb|;3jtf|;3k04|;3k17|;3k7h|;3k8j|;3k94|1;3k9i|;3k9w|;3ka0|;3ka4|1;3kam|;3kax|;3kbs|;3kbu|1;3kc8|;3kcc|;3kcg|;3kd8|;3kda|;3kdd|;3kdf|1;3kdj|1;3ke1|3;3ken|;3keu|;3kf9|;3kfd|;3kfm|;3kfq|;3kg4|7;3kgp|1;3kht|2;3kii|2;3kjk|;3kjq|;3kjv|1;3kjy|;3kke|5;3kkl|;3kkq|;3kl8|;3klo|;3klv|;3km9|1;3kmj|2;3kmn|;3kna|;3kng|;3kni|;3knk|;3ko3|3;3koc|;3kpb|;3kpl|;3kpo|1;3kqh|;3kqq|;3kqt|;3kr8|;3krb|;3krd|1;3krr|5;3ks5|;3ksf|;3ksj|;3ksp|;3kt8|1;3ktf|;3kti|;3ktn|;3kts|;3ku1|;3ku3|;3ky2|;3ky5|;3kya|;3l10|;3l3t|;3l4p|;3l73|;3l86|;3l89|;3l9h|1;3lav|;3lbg|;3lbm|1;3lcp|;3ld3|;3lj9|;3lo9|;3loo|;3lor|;3loz|;3lpr|2;3lq8|;3lr8|1;3lrg|1;3lsd|;3lsg|;3lto|;3lu5|;3luj|;3lum|;3lv4|;3lwc|;3lwo|;3lxx|;3lyj|;3me5|;3me8|;3mer|;3mf3|;3mfc|;3mj4|;3mjd|1;3mjp|;3mjr|;3mou|;3mpc|;3mpk|;3mqf|;3mqx|;3mr8|;3mv3|;3mzk|;3n02|;3n4k|;3n68|;3n87|;3nac|;3nbl|;3nca|;3nch|;3ncq|;3ncz|;3nd1|;3ne7|;3net|;3nev|2;3nfh|;3nfu|;3nh9|;3nib|;3nih|;3nl4|;3nm5|;3nr9|;3nri|;3nx1|;3o1f|;3o31|;3o72|;3o7u|;3o8s|;3o9k|;3o9n|;3oc6|;3ocm|;3odp|;3ofc|;3oh8|;3ohc|;3ohv|;3ojc|;3okj|;3okw|;3oon|;3opq|;3or8|;3ouf|;3ovt|;3owx|;3ox9|;3oxf|;3oxk|;3oxq|;3oxz|;3oyr|;3oz7|1;3p00|;3p1u|1;3p2j|;3p2s|1;3p3z|;3p4l|;3p5s|;3p6b|;3p8z|;3p9b|;3p9u|;3p9w|;3p9y|;3pa2|;3pa5|;3pb3|;3pbz|;3pe9|;3pgp|;3pil|;3pkk|;3pln|;3pvq|;3pvv|;3pxd|;3pyq|;3pze|;3pzv|;3q21|;3ri7|;3z9g|;465h|;4663|;4668|;467s|;468k|;4692|;46a5|;46aj|;46fo|;46gi|;46gs|;46hg|;4an2|;4ay4|;")) +r.push(new A.al("Noto Sans Hanunoo","notosanshanunoo/v17/f0Xs0fCv8dxkDWlZSoXOj6CphMloFsEsEpgL_ix2.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ct|1;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;4kg|m;60w|5;61q|;642|1;6bv|2;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6jm|;6qa|;7gs|;")) +r.push(new A.al("Noto Sans Hatran","notosanshatran/v15/A2BBn4Ne0RgnVF3Lnko-0sOBIfL_mM83r1nwzDs.ttf","w|;4g|;6bw|;1gbk|i;1gc4|1;1gcb|4;")) +r.push(new A.al("Noto Sans Hebrew","notosanshebrew/v43/or3HQ7v33eiDljA1IufXTtVf7V6RvEEdhQlk0LlGxCyaeNKYZC0sqk3xXGiXd4qtoiJltutR2g.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ct|1;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;nj|;13l|1i;15c|q;168|4;60w|5;61q|;642|1;6bw|4;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6ga|;6gc|;6jm|;6qa|;7gs|;1dlp|p;1dmg|4;1dmm|;1dmo|1;1dmr|1;1dmu|9;")) +r.push(new A.al("Noto Sans Imperial Aramaic","notosansimperialaramaic/v15/a8IMNpjwKmHXpgXbMIsbTc_kvks91LlLetBr5itQrtdml3YfPNno.ttf","w|;4g|;1g74|l;1g7r|8;")) +r.push(new A.al("Noto Sans Indic Siyaq Numbers","notosansindicsiyaqnumbers/v15/6xK5dTJFKcWIu4bpRBjRZRpsIYHabOeZ8UZLubTzpXNHKx2WPOpVd5Iu.ttf","w|;4g|;17r|;19c|9;1dc|9;2p9t|1v;")) +r.push(new A.al("Noto Sans Inscriptional Pahlavi","notosansinscriptionalpahlavi/v15/ll8UK3GaVDuxR-TEqFPIbsR79Xxz9WEKbwsjpz7VklYlC7FCVtqVOAYK0QA.ttf","w|;4g|;1gtc|i;1gu0|7;")) +r.push(new A.al("Noto Sans Inscriptional Parthian","notosansinscriptionalparthian/v15/k3k7o-IMPvpLmixcA63oYi-yStDkgXuXncL7dzfW3P4TAJ2yklBJ2jNkLlLr.ttf","w|;4g|;1gsg|l;1gt4|7;")) +r.push(new A.al("Noto Sans JP","notosansjp/v52/-F6jfjtqLzI2JPCgQBnw7HFyzSD-AsregP8VFBEj75vY0rw-oME.ttf","w|2m;4g|2r;7k|3;7u|1;88|3;8z|1;93|1;98|3;9e|1;a0|5;b6|;bk|1;bz|1;ct|f;e0|1;gh|;gx|;jf|;jr|;jt|2;k9|;kq|1;lc|1;lg|;lj|;lo|;pd|g;pv|6;q9|o;sh|;sw|1r;up|;5z2|1;61s|2h;6bm|1;6c0|6;6c8|2;6cc|2;6cg|2;6cl|2;6cw|;6cy|1;6d1|;6d5|3;6de|;6dj|2;6dt|;6es|;6g9|;6gb|1;6hp|1;6io|;6ir|;6it|;6ix|1;6j3|;6j7|;6ja|;6jl|1;6jq|1;6jv|;6jy|;6k5|;6kb|;6lc|b;6ls|b;6mo|9;6ns|1;6o4|2;6ob|1;6og|;6oi|;6ok|;6p2|3;6ph|;6ps|;6pu|1;6px|6;6q7|;6q9|2;6qd|;6qi|;6ql|3;6qr|;6qt|9;6r8|3;6rh|;6rn|;6rp|;6rs|;6rw|;6sg|2;6sk|3;6sq|1;6su|1;6sy|1;6t2|1;6te|5;6tm|1;6tx|4;6u8|;6ud|;6v3|;6vu|1;6wf|;6x1|2;6xe|;6xk|;6y1|1;71s|1;726|e;72m|;72y|1;74z|;76o|97;7g1|2;7g6|1;7gc|1;7gg|1;7gm|1;7gp|3;7gu|5;7he|4;7hr|;7i8|3;7id|1;7ih|;7im|1;7iu|1;7j0|3;7jj|;7k0|2;7kw|f;7le|b;7mo|;7nh|1;7pe|;7pv|;7q2|;7r1|;7r3|1;7rq|;7sm|t;7tt|;850|1;88v|;8ai|1;8hx|2;8ii|;8lx|;94q|1;96o|p;97f|2g;9a8|5x;9gw|b;9hc|1r;9j5|2d;9ll|2u;9ol|16;9pt|1e;9r9|15;9sg|17;9ts|z;9v4|1a;9wg|7f;a3x|5u;a9u|;a9x|1;aav|;ab0|;ab2|;aco|;acq|;adk|;adu|;aet|;af0|;af5|;afb|;afv|;ahr|;aim|;ajh|1;ajn|;ajy|;ali|;alk|;amd|;amy|;an2|;ano|;ao5|;aok|;aq2|;as1|;as6|;as9|;atr|;axt|1;ay3|1;ayd|;az1|;b0h|;b1e|;b1k|;b1w|;b25|;b28|;b3j|;b3q|;b40|;b4s|;b4x|;b6p|;b71|;b96|;b9z|;ba2|;bcf|;bdw|;beg|;bj0|;bji|;bjn|;bk5|;blw|;bm3|;bme|1;bmy|;bn7|;bny|;boa|;boc|;boi|;bp1|;bql|;bqv|;brb|1;brh|;bs4|;bsm|;bsz|;bt9|;bu8|;bub|;bv3|;bvq|;c03|;c0i|;c29|;c2m|;c35|;c3y|;c4k|;c62|;c74|;c7g|;c7o|;c91|;can|1;cbk|;cbq|;cbs|;ccj|;ccq|;cd0|;cey|;cif|;cj6|;cj9|;cjb|;cku|;ckx|;cll|;clz|;cm4|;cop|;cpk|;cr7|;cub|;cud|;cw8|;cwf|;cwz|;cz8|;czj|;d0m|;d0u|;d0z|;d1j|;d1q|;d44|;d5f|;d6u|;d7a|;d7h|;d8i|;d9n|;dab|;df2|;df4|;dfs|;dfw|;dg7|;dgc|;dgi|;dhv|;di3|;diu|;diy|;djl|;dkj|;dku|;dlg|;dmw|;dn1|;dnp|;doj|;dq2|;dr1|;drs|;dry|;dt1|;dt6|;du7|1;dvl|;dwl|;dy9|;dym|1;e18|;e1r|;e3o|;e7a|;e7x|;e8m|;e8u|;e9w|;ea6|;ed1|;ek0|;elj|;em2|;emc|;end|;erg|;euw|;euz|;ewu|;eyq|;eyy|;ez6|;ezs|;f13|;f1c|;f20|;f5w|;f69|;f6p|;f7r|;fav|;feo|5;fev|b;ff8|5;ffi|1;ffl|;ffn|1;ffq|;ffs|a;fg5|4;fgb|1;fgf|6;fgn|1;fgr|;fgt|2;fgx|;fh1|a;fhe|1;fhk|1;fht|;fhv|2;fi1|;fi6|2;fia|;fid|1;fig|6;fip|1;fis|5;fiz|7;fj8|2;fjc|;fjf|5;fjn|;fjq|;fjt|3;fk0|4;fk6|2;fka|1;fkd|3;fkk|7;fkt|8;fl4|;fl7|;fl9|6;flh|2;fln|8;fm0|a;fmd|2;fmh|1;fmk|1;fmz|;fn2|3;fn7|b;fnk|;fnm|1;fnq|3;fnv|l;foj|1;fop|1;fos|;fou|3;foz|;fp1|a;fpd|5;fpk|c;fpy|5;fq5|4;fqj|;fql|2;fqq|;fqt|2;fqx|;fqz|b;frc|c;frr|1;fru|3;frz|7;fse|5;fsl|1;fso|;fsq|;fss|6;ft0|3;ft5|b;fti|9;ftt|d;fu8|;fua|1;fud|1;fuh|;fuj|;fuo|3;fut|5;fv0|;fv2|5;fv9|2;fvd|1;fvg|;fvj|1;fvm|1;fvp|2;fvu|;fvw|1;fw0|2;fw4|4;fwd|;fwg|1;fwj|3;fwo|;fwq|;fwt|9;fx4|4;fxa|5;fxm|;fxo|1;fxr|6;fxz|;fy1|2;fy5|1;fy8|;fya|3;fyf|;fyh|1;fyk|5;fyr|3;fyw|2;fz0|3;fz5|8;fzh|9;fzt|2;fzy|;g00|4;g06|3;g0b|3;g0g|;g0i|;g0k|b;g0x|;g0z|;g13|1;g16|;g18|1;g1b|;g1d|4;g1j|5;g1r|h;g2a|3;g2f|1;g2i|;g2k|;g2n|1;g2q|;g2s|a;g35|;g37|6;g3f|1;g3i|;g3k|;g3m|4;g3t|a;g45|4;g4d|;g4g|6;g4o|5;g4w|8;g56|;g58|3;g5e|4;g5k|5;g5r|;g5t|5;g60|;g63|7;g6d|2;g6h|1;g6k|2;g6o|a;g71|1;g74|8;g7e|1;g7i|;g7l|7;g7x|;g82|;g84|7;g8e|;g8g|3;g8l|7;g8z|2;g93|;g95|4;g9b|;g9g|4;g9m|7;g9v|3;ga1|1;ga4|;ga6|7;gaf|2;gal|;gan|1;gaq|3;gav|3;gb0|1;gb5|7;gbe|2;gbj|1;gbn|4;gbt|4;gbz|2;gc4|a;gcg|1;gcj|7;gcs|1;gcv|3;gd0|5;gd7|f;gdo|;gds|b;ge6|5;ged|3;gei|3;gen|2;ger|;get|c;gf7|2;gfb|6;gfj|4;gfp|;gfs|b;gg5|8;ggh|3;ggn|5;ggu|;ggw|1;ggz|4;gh5|;gh8|9;ghj|4;ghp|2;ghu|2;ghz|2;gi6|;gib|1;gie|;gig|2;gil|;gin|2;gis|2;giw|3;gj1|3;gj6|6;gje|1;gjh|;gjk|5;gjs|7;gk2|5;gk9|2;gkd|r;gl6|;gld|3;glk|b;gm2|1;gm5|4;gmc|;gme|9;gmp|;gmr|3;gmw|1;gmz|5;gn6|2;gna|4;gng|3;gnl|;gnp|;gny|1;go2|;go4|;go6|8;gog|1;goj|4;gor|2;gov|2;goz|3;gp4|a;gph|1;gpo|;gpr|3;gpw|b;gq9|2;gqf|d;gqu|4;gr1|1;grc|;grk|2;grp|1;grs|2;grw|3;gs1|2;gs6|;gsa|;gsc|5;gsk|5;gss|4;gt0|2;gtj|;gtm|1;gtq|1;gtt|2;gtx|1;gu0|1;gu3|3;gu8|1;guc|3;guh|1;guk|1;gun|2;gur|;guu|2;guy|4;gv4|1;gv7|1;gva|;gvv|9;gw6|5;gwe|1;gwh|3;gwn|3;gws|3;gwz|1;gx3|7;gxc|;gxe|;gxi|;gxr|;gxt|;gxv|4;gy1|;gy3|1;gy6|;gy9|3;gyf|1;gyi|5;gyq|2;gyx|;gz0|;gz2|;gz5|;gza|3;gzh|2;gzp|5;gzx|5;h04|;h06|3;h0b|;h0g|;h0o|1;h0s|;h0v|a;h17|2;h1b|5;h1i|1;h1l|;h1n|5;h1v|1;h23|;h26|;h28|4;h2e|;h2g|5;h2n|;h2p|1;h2s|2;h2w|;h2y|;h34|;h38|4;h3e|2;h3j|;h3o|1;h3t|1;h3x|3;h42|;h45|4;h4b|3;h4h|3;h4m|1;h4s|;h4u|;h4w|3;h51|;h54|9;h5f|;h5j|a;h5v|5;h63|;h65|1;h68|3;h6e|1;h6h|1;h6l|;h6n|5;h6v|6;h73|;h75|2;h79|1;h7c|;h7e|3;h7j|b;h7w|4;h83|1;h87|1;h8b|;h8d|3;h8i|;h8l|2;h8q|;h8s|6;h95|;h9b|;h9d|1;h9g|7;h9p|4;h9v|2;h9z|;ha1|3;ha6|1;ha9|2;hag|1;haj|1;har|2;hav|;hax|1;hb0|8;hbb|3;hbg|;hbi|;hbk|;hbn|;hbs|;hbx|;hc0|;hc3|;hc6|2;hcb|1;hce|1;hci|5;hcs|5;hcz|1;hd2|1;hd5|;hd9|;hdc|;hdg|c;hdu|4;he0|5;hed|;heh|;hej|;hel|4;hes|;heu|1;hey|;hf1|;hf3|3;hf8|1;hfd|1;hfh|;hfj|2;hft|4;hfz|3;hg4|1;hg7|3;hge|1;hgh|1;hgk|;hgn|2;hgr|;hgt|;hgw|;hgy|;hh1|;hh4|1;hh8|;hha|3;hhf|;hhh|;hhj|6;hhr|1;hhv|1;hhy|2;hi4|6;hie|;hig|3;him|;hip|2;hiw|4;hj2|;hj5|4;hjb|1;hje|;hjg|2;hjk|a;hjw|6;hk4|1;hk9|;hkb|1;hke|6;hkn|;hkp|4;hky|;hl1|1;hl5|4;hlb|1;hle|4;hlk|5;hlr|;hlt|4;hlz|c;hmd|4;hml|2;hmr|1;hmu|3;hn2|7;hnb|4;hnh|6;hnp|;hnr|8;ho2|4;ho8|1;hob|2;hoh|3;hoq|4;hoy|1;hp1|2;hp5|;hp7|;hp9|;hpb|;hpf|2;hpj|1;hpo|4;hpu|1;hpz|;hq1|3;hq6|;hq9|;hqb|1;hqe|;hqg|3;hql|;hqo|4;hqx|1;hr0|3;hr7|5;hre|2;hri|1;hrl|1;hro|;hrq|2;hrv|;hrz|2;hs3|1;hs9|;hsc|2;hsh|2;hsn|1;hsq|2;hsu|2;hsz|2;ht3|3;ht9|;htb|1;hth|1;hto|;hts|1;htw|5;hu4|;hu8|;hud|;hui|;hum|;huq|1;hut|2;huy|;hv0|1;hvb|;hve|1;hvi|1;hvo|;hvv|;hw0|;hw2|1;hw6|;hw9|3;hwe|2;hwi|;hwn|;hws|;hwx|2;hx1|;hx4|;hx6|5;hxd|1;hxg|;hxi|;hxk|1;hxn|1;hxr|1;hxy|1;hy2|;hy4|;hy8|1;hyb|;hyd|1;hyh|1;hym|;hyo|;hyt|1;hyy|1;hz1|;hz4|1;hzc|1;hzf|1;hzq|1;hzt|;hzv|;hzx|;i01|1;i05|;i0a|;i0c|1;i0g|;i0i|;i0k|;i0m|;i0o|;i0u|;i0w|1;i0z|;i11|;i17|1;i1c|2;i1g|4;i1m|5;i1v|3;i20|1;i23|;i26|3;i2b|;i2d|1;i2g|;i2i|;i2k|l;i37|a;i3j|;i3m|4;i3s|1;i3w|e;i4c|;i4f|8;i4p|;i4s|4;i4y|2;i52|5;i59|5;i5g|5;i5n|1;i5q|3;i5v|3;i60|;i62|;i65|2;i69|e;i6p|3;i6u|1;i6x|1;i72|2;i76|2;i7a|;i7c|6;i7k|2;i7p|1;i7s|9;i85|1;i88|;i8a|1;i8d|4;i8j|;i8l|;i8p|3;i8u|7;i93|2;i98|5;i9g|2;i9l|4;i9z|1;ia2|;ia4|;ia7|3;iac|;ial|;ian|4;iau|7;ib5|7;ibe|2;ibi|;ibp|;ibr|;ibt|;ibv|;ic0|;ic2|;ic7|;ic9|;icd|;icg|1;icm|;ico|2;ict|5;id0|2;id6|1;id9|;idd|;idi|1;idn|;idp|1;ids|2;idw|7;ie5|;ie7|1;iea|2;iee|1;ieh|;iej|;iep|;ies|;iex|;if1|;if3|;if6|1;ifa|2;ife|2;ifi|;ifk|3;ifp|;ift|;ifw|;ifz|3;ig4|;ig9|1;igc|1;igf|1;igj|;igm|;igp|1;igu|1;igx|3;ih3|1;ih6|2;ihc|;ihe|3;ihj|;ihl|;ihn|;ihp|;ihr|1;ihu|;ihw|;ihz|;ii3|1;ii6|;ii8|;iia|;iic|;iif|3;iik|1;iir|;iiv|;iix|;iiz|3;ij4|3;ija|3;ijf|;ijh|1;ijk|9;ijv|;ijy|;ik1|4;ik7|2;ikb|;ikd|3;iki|1;ikm|1;ikr|2;ikx|1;il0|2;il4|3;il9|;ilb|1;ilh|;ilk|;iln|;ilp|3;ilu|1;ilx|3;im5|1;im8|;imb|2;imf|;imh|;imj|1;imm|;imo|1;ims|4;imz|1;in2|1;in5|3;inc|;ine|4;ink|;inm|f;io3|1;io7|;ioa|1;ioe|1;iol|2;iop|1;ios|;iow|;ioy|;ip0|4;ip6|3;ipd|;ipf|;iph|4;ipp|2;ipt|2;ipy|;iq0|4;iq6|8;iqh|a;iqt|;iqw|1;iqz|1;ir4|1;ir7|1;ira|e;irq|b;is3|6;isb|4;ish|8;isr|6;it0|4;it6|7;itg|1;itj|1;itm|;ito|2;its|1;itv|1;ity|3;iu3|2;iu8|7;iuh|4;iun|6;iuv|3;iv0|9;ivb|6;ivj|4;ivq|3;ivw|2;iw0|2;iw4|;iw7|a;iwj|2;iwn|2;iws|1;iwz|2;ix3|2;ix7|2;ixc|4;ixi|3;ixo|2;ixs|2;ixw|;iy0|b;iyd|1;iyg|;iyi|3;iyn|;iyv|;iyy|;iz1|3;iz6|b;izj|3;izo|7;izx|;izz|;j01|;j03|;j05|;j0a|;j0g|3;j0m|7;j0w|2;j10|3;j15|1;j19|;j1b|6;j1j|6;j1r|2;j1x|;j1z|;j26|1;j29|5;j2g|6;j2p|7;j2y|1;j31|3;j36|8;j3k|8;j3v|3;j42|;j44|7;j4e|1;j4h|;j4j|2;j4o|b;j51|;j53|1;j5a|;j5c|d;j5s|3;j5y|4;j64|b;j6h|3;j6m|4;j6v|1;j6y|2;j74|1;j78|3;j7d|1;j7g|3;j7l|1;j7o|a;j83|;j85|;j88|2;j8d|3;j8i|3;j8n|1;j8r|1;j8u|a;j97|9;j9j|;j9m|1;j9p|1;j9s|4;j9y|4;ja4|1;ja7|1;jac|1;jaf|7;jaq|;jau|;jaw|2;jb0|;jb2|;jb4|3;jba|a;jbp|;jbw|3;jc1|2;jc5|4;jcc|1;jcf|;jci|;jck|4;jcq|;jcs|5;jcz|1;jd3|3;jd8|2;jdc|6;jdm|9;jdy|1;je1|2;je6|6;jee|;jeg|1;jej|;jel|7;jeu|3;jez|3;jf4|6;jfc|;jfe|2;jfi|;jfk|1;jfn|1;jfs|;jfx|2;jg1|;jg3|;jg6|;jg9|7;jgi|3;jgp|1;jgt|c;jh7|1;jha|;jhi|;jhk|;jhn|1;jht|;jhv|;jhx|2;ji1|6;jia|;jic|6;jik|h;jj4|1;jje|;jjg|3;jjl|6;jjw|3;jk1|3;jk7|6;jkg|1;jkj|;jkm|;jko|1;jkr|;jkv|;jl3|4;jl9|;jlb|;jle|;jlh|1;jll|6;jlt|3;jly|;jm1|7;jma|3;jmf|2;jmj|1;jmt|4;jmz|3;jn5|1;jn8|4;jne|3;jnj|1;jnm|2;jnr|3;jnw|;jny|2;jo2|;jo4|2;jo8|3;joe|h;joy|;jp0|1;jp7|;jp9|1;jpc|1;jpf|3;jpk|1;jpq|8;jq2|2;jq8|1;jqb|;jqd|;jqh|5;jqq|8;jra|;jrd|1;jrh|;jrj|1;jrm|2;jrq|2;jrw|;jry|;js0|;js2|;js4|2;js8|2;jsc|1;jsf|1;jsk|2;jsq|;jst|2;jsy|;jt7|;jta|1;jtd|3;jtk|;jtm|3;jtr|2;jtv|;jtz|;ju1|;ju5|;ju7|;jub|1;jue|;jug|3;jul|;jur|;jut|;juv|1;jv3|4;jv9|;jvc|3;jvh|2;jvl|;jvn|3;jvs|1;jvv|3;jw0|;jw2|1;jw9|;jwb|4;jwh|1;jwk|1;jwn|;jwp|5;jww|2;jx0|1;jx3|1;jx6|;jxc|7;jxl|1;jxo|1;jxr|3;jxw|3;jy2|1;jy5|4;jyc|1;jyg|2;jyn|;jyr|1;jyu|;jyw|1;jyz|4;jz6|2;jza|;jzd|3;jzi|1;jzl|1;jzo|b;k03|2;k07|2;k0d|5;k0k|5;k0t|3;k0y|1;k12|1;k17|1;k1c|;k1e|;k1g|1;k1j|1;k1m|;k1p|;k1t|4;k1z|3;k24|;k26|;k28|2;k2d|;k2f|2;k2j|2;k2n|2;k2r|4;k2z|5;k36|3;k3b|2;k3g|3;k3l|5;k3s|1;k3v|1;k3y|2;k42|;k44|;k46|3;k4b|;k4f|4;k4l|4;k4s|1;k4w|2;k50|1;k55|3;k5a|2;k5e|2;k5i|4;k5o|3;k5t|5;k64|l;k6r|4;k6x|3;k73|7;k7c|4;k7i|1;k7l|1;k7r|p;k8j|9;k8u|3;k8z|1;k93|2;k97|3;k9c|2;k9i|7;k9r|1;k9u|;k9w|;k9y|;ka3|;ka5|1;ka9|4;kag|1;kaj|1;kam|6;kau|3;kb0|;kb2|1;kb8|;kba|;kbd|4;kbj|1;kbq|;kbs|1;kbv|1;kby|;kc0|;kc2|3;kc7|a;kcj|;kcl|;kcn|2;kcr|5;kcy|5;kd5|;kd7|5;kde|;kdh|3;kdm|4;kdt|;kdv|5;ke2|;ke5|2;ke9|;keb|;ked|4;kek|5;ker|3;kex|;kf0|a;kfe|;kfg|b;kfv|1;kfy|3;kg4|1;kg7|;kg9|;kgb|1;kge|5;kgl|8;kgw|2;kh0|;kh2|;kh5|;khb|a;khn|3;khs|6;ki0|2;ki6|6;kif|7;kip|1;kis|;kiu|1;kix|;kj0|;kj2|9;kjd|3;kji|1;kjl|4;kk0|;kk3|1;kk6|3;kkd|2;kkh|1;kkn|6;kkv|5;kl4|1;kl7|b;klk|2;klo|2;kls|5;klz|2;km3|2;km7|;kmb|;kmf|;kmj|;kmm|4;kms|3;kmx|3;kn2|1;kn5|5;knc|;knh|3;knn|1;knq|7;knz|4;ko5|6;kod|9;kop|3;koz|3;kp4|5;kpb|b;kpo|1;kpr|2;kpv|2;kpz|1;kq2|8;kqd|2;kqh|4;kqo|1;kqr|g;kra|1;krd|3;krl|2;krp|1;krs|;kru|;ks0|1;ks3|3;ks8|1;ksb|;ksd|;ksf|;ksi|;ksl|1;ksp|1;ksu|;ksz|2;kt3|;kt5|5;ktc|6;ktk|d;ktz|b;kue|;kui|;kul|1;kup|1;kus|2;kuw|;kuz|1;kv4|1;kv9|3;kvf|;kvh|5;kvo|;kvr|1;kvu|2;kvy|3;kw3|;kw5|;kw7|1;kwa|7;kwj|;kwm|3;kwt|1;kwy|1;kx1|;kx3|4;kx9|2;kxd|5;kxl|;kxn|;kxp|6;kxx|;ky2|2;ky7|;ky9|4;kyf|;kyh|2;kyl|7;kyw|3;kz2|;kz4|;kz6|9;kzh|2;kzo|7;kzy|;l00|2;l04|2;l08|1;l0b|;l0f|;l0h|1;l0k|;l0m|1;l0q|1;l0x|2;l14|;l16|;l1a|3;l1f|1;l1i|1;l1l|;l1n|;l1p|1;l1s|1;l1w|;l1z|;l23|8;l2d|;l2i|2;l2m|3;l2r|1;l2w|;l2z|;l31|2;l35|2;l3a|;l3c|1;l3g|;l3k|1;l3n|3;l3u|5;l42|;l44|;l47|1;l4a|;l4c|;l4g|3;l4o|;l4q|3;l4y|5;l55|2;l5b|3;l5i|1;l5n|;l5p|4;l5v|1;l5z|1;l63|1;l67|;l6a|;l6d|6;l6l|2;l6r|;l6u|1;l6x|1;l70|2;l74|;l76|2;l7a|;l7c|1;l7f|;l7h|;l7j|8;l7t|3;l7y|2;l82|3;l87|4;l8d|9;l8p|2;l8t|;l91|3;l97|;l9a|2;l9e|2;l9k|d;l9z|9;lab|6;laj|4;laq|2;lau|2;lay|1;lb3|;lb5|;lb7|;lba|1;lbf|1;lbi|1;lbl|;lbn|;lbr|;lbt|;lbz|;lc2|;lc4|1;lc8|2;lcd|7;lcn|;lcp|;lcr|;lcv|;lcz|1;ld2|2;ld8|;lda|;ldf|5;ldm|1;ldq|4;le2|1;le5|3;lea|;lec|1;lef|;leh|7;leq|;lev|1;ley|1;lf1|;lf3|1;lf6|2;lfa|;lfc|3;lfh|1;lfl|8;lfw|1;lg0|;lg2|a;lgf|;lgh|1;lgq|4;lgw|4;lh4|7;lhd|1;lhg|2;lhl|1;lho|1;lhr|8;li1|4;li8|3;lid|;lif|d;liz|;lj4|1;lj8|;ljb|;lje|2;lji|1;ljl|2;ljr|;ljt|2;ljy|1;lk4|7;lke|1;lkh|5;lko|1;lkr|4;lkx|;ll0|1;llj|5;llq|3;llv|4;lm1|1;lm4|;lm6|2;lmc|;lmf|2;lmk|;lmo|2;lmt|;lmv|3;ln0|2;ln5|8;lnf|1;lnu|2;lny|1;lo2|;lo4|1;lo7|2;loc|1;lof|1;loi|;lok|4;loq|2;lou|4;lp1|1;lp4|3;lp9|5;lpg|2;lpk|4;lpq|e;lq8|;lqc|1;lqf|4;lqr|;lqt|;lqv|;lqx|2;lr1|a;lrd|;lrf|4;lrm|;lro|;lrq|;lrs|4;lry|;ls2|3;ls8|7;lsh|3;lsm|2;lsr|4;lsy|1;lt3|1;lt7|;lta|1;lte|1;lti|;ltn|;ltp|3;ltu|;lu1|;lu4|1;lu7|1;lub|;lue|;lug|1;luk|1;lun|1;luq|;lut|;luv|;luy|1;lv1|2;lv5|3;lva|1;lve|3;lvj|6;lvr|8;lw1|;lw3|2;lw9|2;lwd|1;lwm|;lwr|4;lwy|;lx0|;lx3|2;lx7|;lx9|2;lxd|1;lxg|;lxi|;lxk|2;lxo|1;lxr|2;lxv|3;ly0|;ly2|1;ly8|;lya|1;lyd|1;lyh|4;lyn|4;lyt|1;lyw|;lyz|1;lz2|1;lz5|;lz9|;lzj|;lzl|3;lzr|b;m04|;m06|;m08|;m0c|4;m0k|;m0o|;m0q|;m0s|2;m0w|4;m12|2;m17|3;m1c|4;m1i|2;m1m|;m1p|;m1r|2;m1v|5;m22|;m26|3;m2b|;m2d|2;m2h|;m2k|;m2m|;m2o|3;m2t|5;m38|1;m3c|;m3e|1;m3i|3;m3o|;m3s|1;m3v|1;m3y|3;m43|;m45|1;m49|1;m4c|2;m4g|1;m4l|2;m4p|2;m4t|;m4v|;m4x|;m51|;m53|1;m56|1;m59|3;m5f|;m5i|2;m5o|;m5r|1;m5u|;m5w|;m5z|;m61|1;m64|;m66|;m6b|1;m6f|5;m6m|;m6p|;m6s|1;m6w|;m71|1;m77|2;m7d|;m7f|1;m7i|2;m7p|1;m7s|;m7w|2;m81|;m85|1;m89|1;m8e|;m8i|;m8k|5;m8r|;m8v|;m90|;m97|6;m9f|1;m9j|4;ma0|;ma2|1;ma7|;ma9|;mab|3;mag|1;mak|1;man|;mas|;mb0|;mb5|;mbd|1;mbh|;mbn|6;mbv|1;mbz|;mc4|;mc9|1;mcc|;mce|;mcg|1;mcm|;mcr|;mct|4;md2|;md4|;md8|;mdd|;mdh|2;mdl|3;mdq|;mds|3;mdx|2;me1|1;me4|;me6|;me8|;mea|;mec|5;mek|;mem|;mex|;mf1|;mf4|;mf8|1;mfb|1;mfe|;mfg|;mfj|;mfm|;mfo|2;mft|2;mfz|1;mg2|;mg8|;mgc|;mge|5;mgp|1;mgu|3;mgz|1;mh4|1;mh7|1;mha|;mhc|;mhe|5;mhl|1;mho|;mhr|1;mhx|2;mi4|2;mic|1;mig|1;mij|1;mim|2;miu|3;mj1|;mj4|;mj7|;mj9|;mjb|;mje|1;mjh|;mjj|;mjo|;mjs|;mju|3;mjz|1;mk2|;mk4|2;mk8|b;mkl|3;mkr|1;mku|2;mky|1;ml1|e;mlj|2;mln|;mlq|1;mlt|1;mlw|;mlz|2;mm3|7;mmc|;mmf|;mmh|;mml|1;mmq|1;mmu|;mmz|;mn4|;mn6|;mnb|1;mng|6;mno|;mnq|;mnt|;mny|;mo0|4;mo6|1;mo9|;moc|;moe|;mog|;moi|;mol|4;mor|;mov|3;mp1|;mp5|;mp8|1;mpf|1;mpj|7;mpu|;mpw|1;mpz|;mq2|1;mq5|;mqa|1;mqe|3;mqj|4;mqq|;mqs|1;mqv|5;mr2|1;mr5|6;mrd|2;mrh|2;mrn|2;mrx|3;ms2|;ms6|2;msd|3;msj|;msm|6;msu|4;mt1|;mt3|5;mtc|1;mtf|4;mtl|2;mtq|;mts|;mtv|5;mu4|;mu6|2;mua|;mud|1;mug|3;mul|;muq|1;mut|;muv|;mux|4;mv3|1;mv6|;mv9|1;mvc|7;mvm|1;mvq|;mvt|;mvx|1;mw0|1;mw3|4;mw9|1;mwd|1;mwh|;mwk|1;mwn|4;mwt|4;mwz|4;mx5|1;mxd|;mxf|;mxm|1;mxt|1;mxw|2;my0|e;myh|1;myn|2;myr|1;myu|1;myz|;mz1|;mz5|2;mz9|;mzb|;mzd|7;mzm|2;mzq|5;mzx|6;n06|;n0e|;n0g|1;n0j|;n0l|4;n0r|;n0v|3;n13|3;n18|;n1a|5;n1h|6;n1q|4;n1x|;n21|2;n25|;n27|;n2g|2;n2k|;n2n|1;n2r|1;n2u|;n2w|;n2y|2;n32|2;n36|2;n3a|5;n3i|4;n3o|;n3q|2;n3u|2;n3z|;n41|;n43|3;n4c|2;n4h|2;n4l|3;n4q|;n4s|;n4u|e;n5b|4;n5i|a;n5v|1;n5y|c;n6c|;n6f|;n6h|9;n6s|3;n6x|4;n73|g;n7l|1;n7p|2;n7t|3;n7y|7;n89|1;n8c|1;n8i|3;n8r|;n8w|5;n93|3;n98|b;n9m|;n9o|3;n9u|3;n9z|2;na3|9;naf|;nah|;nak|;nam|6;nax|1;nb0|;nb2|6;nbb|6;nbj|;nbm|1;nbp|1;nbs|1;nbv|e;ncd|;ncg|;nci|3;nco|4;ncw|c;nda|;nde|;ndh|1;ndk|1;ndo|;ndr|;ndt|1;ndw|1;ndz|3;ne4|6;nec|;nee|;neg|;nei|4;neo|8;nez|3;nf4|;nf7|;nf9|1;nfd|f;nfu|;nfx|3;ng4|;ng6|4;ngd|;ngf|;ngh|2;ngl|1;ngo|6;ngy|;nh0|;nh2|1;nh5|;nh7|1;nha|3;nhf|5;nhm|2;nhq|;nhs|2;nhw|;nhy|;ni0|1;ni3|1;ni6|;ni8|1;nic|;nie|6;nim|;niq|;nis|1;niv|;nix|3;nj2|2;nj6|;nj8|2;njc|1;njh|2;njo|6;njw|2;nk0|;nk2|;nk5|2;nka|;nkd|2;nki|;nkm|2;nkq|2;nku|a;nl6|2;nlc|;nle|2;nll|1;nlo|4;nlw|;nm3|3;nm9|;nmc|2;nmi|;nmm|2;nmq|;nms|1;nmv|;nmx|1;nn0|5;nn7|;nn9|2;nnd|;nnf|4;nnn|;nnr|;nnt|;nnx|;no1|1;no5|;no7|;no9|3;noe|2;noi|5;nop|1;nos|5;noz|1;np4|;np7|1;npe|;nph|1;npl|;npo|2;npt|1;npw|1;nq1|;nq5|;nq8|3;nqd|2;nqk|2;nqo|;nqq|;nqs|1;nqv|;nqy|;nr3|;nr7|2;nrb|1;nrg|;nri|1;nrl|1;nrw|2;ns0|1;ns3|1;ns8|;nsa|2;nse|1;nsi|;nsk|;nsq|;nss|;nsu|;nsx|;nt2|1;nt6|;nt8|3;ntd|;ntf|2;ntj|1;ntm|;ntp|2;ntt|;ntv|1;ntz|3;nu4|1;nu7|4;nud|;nui|5;nup|;nut|7;nv2|;nv4|6;nve|1;nvj|2;nvo|;nvq|2;nvu|;nvw|;nvz|;nw2|2;nw6|1;nw9|2;nwd|4;nwm|1;nws|;nwu|;nww|2;nx5|3;nxa|2;nxh|9;nxs|1;nxw|1;ny2|8;nyc|7;nyn|2;nyr|5;nyy|6;nz6|;nz9|;nzb|2;nzf|;nzh|;nzm|;nzr|;nzt|3;nzy|3;o04|1;o0a|5;o0h|;o0j|3;o0o|;o0r|2;o0x|;o12|5;o1a|3;o1f|1;o1k|3;o1p|5;o1w|;o1z|6;o27|;o29|1;o2c|2;o2g|;o2i|;o2l|a;o2x|4;o34|1;o3c|;o3f|1;o3k|;o3m|1;o3p|;o3r|7;o41|;o44|1;o47|5;o4e|3;o4n|;o4r|;o4t|5;o50|1;o53|9;o5e|7;o5o|4;o5x|2;o61|;o64|1;o67|4;o6d|;o6f|;o6h|2;o6l|;o6o|;o6s|2;o6w|2;o71|9;o7c|;o7e|1;o7k|8;o7y|2;o83|;o89|1;o8c|;o8e|2;o8j|;o8l|1;o8p|6;o8z|c;o9d|2;o9h|;o9l|4;o9r|4;o9x|8;oa7|2;oac|;oae|;oag|3;oal|2;oaq|;oas|;oau|2;oay|1;ob3|;ob5|1;ob8|;obc|1;obf|;obi|2;obn|;obp|c;oc3|3;oc9|;ocb|;ocd|;ocf|2;ocl|4;ocr|b;od9|;odc|;odg|3;odl|1;odo|9;odz|;oe1|1;oe7|;oec|;oee|1;oeh|;oej|;oel|5;oes|d;of9|;ofe|;ofg|1;ofj|3;ofo|2;ofs|;ofu|3;og0|2;og4|8;ogf|;ogk|;ogm|1;ogp|2;ogt|;ogw|;oh0|2;oh4|2;oh9|;ohc|;ohe|8;oho|;ohq|;ohs|4;ohy|1;oi1|;oi3|4;oi9|3;oif|;oih|;oij|;oim|3;oir|;oit|3;oiy|2;oj3|;oj5|;oj7|1;oja|4;ojh|3;ojm|1;ojp|1;oju|;ojw|1;ojz|i;okj|2;okn|;okp|;oks|4;oky|1;ol1|;ol5|;ol7|3;old|2;oli|1;oll|;oln|;olp|;olr|1;olu|;olw|1;olz|1;om3|;om6|4;omc|4;omj|;oml|1;omo|3;omu|1;omx|7;on6|;on8|1;onb|3;onh|2;onm|8;onw|4;oo2|;oo6|1;oo9|;oob|;oof|;ooi|;ook|2;ooo|3;oou|;oow|;ooy|9;op9|;opb|f;ops|3;opy|;oq2|9;oqd|;oqh|1;oqk|c;oqz|6;or7|;or9|2;ord|5;orl|2;orp|3;oru|;ory|;os0|3;os5|1;os8|3;osd|;osf|;osh|2;osl|1;oso|1;osr|2;osv|;osx|;osz|;ot2|1;ot5|7;ote|1;oti|1;otm|h;ou5|3;oua|5;oui|8;out|5;ov0|2;ov4|6;ovc|5;ovj|;ovl|1;ovo|2;ovt|2;ow0|1;ow4|1;ow8|3;owg|2;owl|;own|;owr|8;ox2|2;ox7|4;oxd|2;oxh|2;oxl|2;oxp|2;oxt|;oxv|5;oy2|1;oy5|1;oy8|;oya|;oyc|2;oyg|2;oyl|2;oyp|1;oyt|2;oyx|2;oz1|3;oz7|;oz9|;ozc|1;ozf|4;ozl|2;ozq|4;ozw|a;p08|;p0a|5;p4m|;p4o|;p4q|5;p4z|2;p53|;p58|9;p5k|;p5n|2;p5r|2;p5v|8;p65|1;p68|2;p6d|;p6f|2;p6l|3;p6q|1;p6t|3;p6y|7;p78|;p7a|1;p7e|;p7g|2;p7l|3;p7q|;p7s|2;p7x|2;p82|;p84|;p86|;p88|1;p8c|1;p8f|2;p8j|;p8l|1;p8o|;p8q|;p8s|;p8u|1;p8y|;p90|1;p97|;p9b|2;p9f|;p9h|1;p9k|1;p9n|1;p9q|2;p9u|1;pa1|f;pai|f;pb0|5;pb8|;pba|;pbc|;pbg|;pbi|;pbk|;pbn|4;pbt|7;pc3|1;pc6|;pca|;pci|;pcm|;pco|;pcq|;pcu|4;pd0|;pd2|;pd4|;pd9|;pdb|8;pdl|;pdn|;pdp|4;pdw|5;pe3|1;pe6|;peb|;pee|;peg|6;pep|1;pes|3;pex|4;pf3|;pf5|1;pf8|;pfc|2;pfn|3;pfs|;pfu|;pfw|3;pg2|;pg4|7;pgd|1;pgg|1;pgk|2;pgt|h;phd|2;phh|6;php|;phy|2;pi2|2;pi6|;pi8|;pib|1;pif|;pih|;pij|1;pin|2;pir|;pit|;pix|1;pj0|2;pj5|;pj9|2;pje|2;pji|;pjk|5;pjr|;pjz|2;pk5|4;pkb|;pkd|4;pkj|1;pkn|3;pkv|7;pl4|;pl6|1;pla|2;plf|;plh|1;plk|;plm|4;pls|;plu|2;pm0|1;pm6|;pm8|;pma|3;pmg|;pmi|1;pml|6;pmt|1;pmw|3;pn1|2;pn5|;pn7|;pn9|6;pnh|4;pnn|2;pnr|1;pnu|3;pnz|7;po8|d;pon|9;poy|2;pp2|9;ppd|1;ppk|4;ppq|;ppu|8;pq4|;pq8|;pqb|4;pqh|;pqj|;pqm|1;pqp|;pqu|4;pr0|1;pr3|1;pr6|2;pra|2;pre|1;prh|2;prl|1;pro|;prq|3;prv|;prx|4;ps3|1;ps7|;ps9|2;psd|1;psh|3;psm|;pso|3;pst|;psv|2;psz|h;ptj|8;ptx|1;pu8|5;puf|;puh|3;pum|a;puy|1;pv1|;pv3|;pv5|;pv7|1;pva|1;pvd|2;pvh|1;pvk|c;pvy|;pw6|2;pwb|4;pwh|2;pwo|;pwr|f;px8|1;pxc|;pxe|5;pxl|1;pxp|b;py2|;pya|1;pyo|;pyr|;pyt|;pyv|1;pyz|2;pz3|1;pz6|;pz8|3;pzd|1;pzh|1;pzm|4;pzs|8;q02|;q06|7;q0h|;q0l|;q0t|4;q11|;q13|;q15|1;q18|;q1a|3;q1f|1;q1i|;q1k|;q1o|1;q1r|2;q1x|;q20|3;q27|3;q2c|;q2e|3;q2j|2;q2p|;q2r|1;q2u|1;q2y|5;q35|;q37|;q39|;q3b|;q3d|;q3k|;q3m|;q3t|1;q3w|;q3z|;q41|;q45|;q48|1;q4c|1;q4l|5;q4t|2;q4x|1;q52|6;q5b|8;q5l|8;q5v|7;q64|1;q69|1;q6c|1;q6j|;q6o|;q6q|3;q6v|;q6x|;q70|;q72|1;q75|;q7a|;q7c|2;q7h|;q7j|;q7l|1;q7o|;q7s|a;q84|;q86|b;q8j|;q8m|;q8p|1;q8s|;q93|;q96|;q98|;q9a|4;q9g|;q9j|;q9m|3;q9r|1;q9u|1;q9y|1;qa4|;qa6|;qa8|1;qab|2;qaf|1;qai|2;qam|1;qap|6;qay|3;qb3|;qb6|4;qbh|4;qbn|;qbq|;qbs|3;qby|5;qc5|5;qcc|8;qco|3;qct|;qcv|;qd3|;qd5|2;qd9|4;qdg|8;qdr|2;qdv|1;qdz|2;qe3|2;qe7|1;qea|;qec|c;qes|;qeu|4;qf0|3;qf5|1;qfb|;qfd|2;qfh|3;qfp|;qfs|2;qfw|1;qfz|2;qg4|2;qg8|2;qgd|;qgj|1;qgm|1;qgp|3;qgu|2;qgy|;qh0|3;qh6|1;qh9|1;qhc|3;qhi|5;qhq|;qht|1;qhw|;qhz|;qi1|;qi5|;qi7|1;qie|;qig|2;qik|1;qin|3;qiu|;qj1|1;qj4|;qj6|i;qjr|;qjt|;qjv|1;qjz|;qk1|;qk5|2;qk9|2;qkd|;qkn|6;qkx|;qkz|;ql1|1;ql4|;ql6|;ql8|1;qld|;qlf|1;qli|5;qlp|;qlr|2;qlv|6;qm7|2;qmb|4;qmh|;qmj|;qml|1;qmp|1;qms|1;qmv|;qmx|3;qn2|2;qn7|4;qnd|;qng|3;qns|6;qo0|;qo2|9;qod|7;qoo|2;qos|;qou|1;qox|2;qp1|;qp4|1;qpa|1;qpd|1;qpg|;qpj|;qpl|7;qpv|;qpx|;qq1|;qq3|3;qq9|;qqb|;qqd|;qqf|2;qql|;qqn|2;qqr|3;qqw|;qqy|;qr2|1;qr5|1;qr8|;qra|;qrc|;qrf|1;qrj|;qrm|7;qrv|3;qs0|;qs3|;qs5|;qs7|2;qse|2;qsi|1;qsn|;qsr|4;qsx|;qsz|;qt1|;qt6|1;qt9|4;qtg|;qti|5;qtq|;qts|;qtu|;qtx|1;qu1|1;qu4|;qu7|1;qua|4;qui|3;qun|;qup|2;qut|6;qv2|1;qv5|;qv7|;qv9|2;qvd|2;qvh|9;qvs|4;qvy|1;qw1|2;qw7|1;qwd|1;qwg|2;qwl|1;qwp|3;qww|6;qx4|6;qxd|2;qxh|f;qy0|1;qy3|;qy6|4;qyd|;qyf|;qyh|;qyj|;qyl|5;qyw|;qyz|;qz1|;qz6|;qza|6;qzi|2;qzm|;qzo|;qzs|;qzu|1;qzy|;r00|1;r04|1;r07|;r0a|;r0c|a;r0q|5;r0x|4;r14|1;r17|6;r1j|1;r1r|6;r1z|2;r24|2;r29|1;r2c|;r2e|1;r2i|;r2k|4;r2q|1;r2t|1;r2w|2;r30|2;r34|;r39|3;r3e|1;r3k|2;r3p|6;r3y|;r40|6;r49|;r4c|1;r4f|;r4i|;r4m|1;r4q|2;r4u|6;r52|;r56|1;r59|3;r5e|3;r5j|;r5m|7;r5v|;r5y|5;r65|;r67|1;r6b|5;r6i|2;r6n|2;r6t|2;r6x|1;r70|;r73|1;r76|5;r7e|;r7g|1;r7j|2;r82|;r84|4;r8a|;r8c|1;r8j|;r8l|2;r8p|;r8r|;r8t|;r8x|;r8z|1;r92|;r94|1;r99|;r9b|6;r9j|1;r9m|;r9o|;r9q|a;ra3|;ra5|9;rai|3;ran|;rap|;rar|4;ray|4;rb4|1;rb7|;rb9|4;rbh|1;rbk|8;rbv|3;rc0|3;rc5|2;rc9|;rcb|3;rcg|3;rcl|2;rcp|3;rcu|2;rcy|5;rd5|;rd7|2;rdb|4;rdh|5;rdq|3;rdv|7;re4|4;rea|1;ree|1;reh|;rej|1;rem|1;req|2;reu|7;rf3|8;rfe|8;rfo|;rfq|1;rfv|3;rg0|1;rg3|5;rga|;rgc|;rge|4;rgk|3;rgq|7;rh0|;rh2|1;rh5|8;rhi|;rhk|;rhn|2;rhs|;rhv|;rhz|;ri1|;ri4|;ri6|;ri9|5;rig|1;rik|3;rip|3;riu|;riw|4;rj2|1;rj7|;rja|;rjd|;rjf|2;rjj|3;rjo|;rjq|3;rjw|5;rk3|2;rka|6;rki|4;rkp|1;rks|4;rp3|3;rp9|2;rpd|;rph|7;rpq|3;rpv|2;rpz|4;rq5|;rq9|3;rqe|;rqg|5;rqr|;rqt|1;rqw|4;rr2|;rr6|;rr9|2;rrd|5;rrk|;rrm|2;rrs|1;rrv|7;rs4|;rs7|9;rsi|2;rsm|7;rsv|c;rt9|2;rtd|2;rth|1;rtl|5;rts|4;rty|;ru0|;ru2|;ru4|1;ru7|3;ruc|1;ruf|1;rui|5;rup|;rur|2;ruv|4;rv1|3;rv6|2;rva|1;rvf|2;rxg|3;rxl|;rxn|3;rxs|1;rxv|1;rxy|1;ry7|;ry9|1;ryc|1;ryg|;ryi|;ryl|;ryo|1;ryt|;ryx|;rz2|2;rz7|;rza|;rzc|;rzf|1;rzj|;rzm|1;rzp|;rzr|;rzt|3;rzy|;s00|;s02|;s05|3;s0a|2;s0e|1;s0h|;s0k|3;s0p|2;s0t|;s0v|;s0x|;s0z|2;s13|1;s16|2;s1b|6;s1o|1;s1r|;s1t|;s1w|2;s20|4;s27|2;s2c|;s2e|;s2l|6;s2u|1;s2y|;s34|1;s37|6;s3h|;s3k|2;s3o|;s3r|9;s44|1;s49|;s4b|9;s4p|;s4s|1;s4v|3;s50|3;s55|3;s5d|4;s5j|;s5l|2;s5p|;s5s|5;s60|3;s65|1;s69|1;s6f|;s6h|8;s6r|;s6t|1;s6y|1;s72|;s74|1;s77|5;s7e|3;s7j|;s7l|1;s7o|;s7v|1;s7z|;s82|1;s88|;s8b|;s8d|1;s8g|1;s8n|7;s8w|;s8y|1;s91|;s93|3;s98|;s9b|1;s9e|7;s9n|6;s9v|;s9x|a;sab|8;sam|9;sax|1;sb0|3;sb5|4;sbb|1;sbg|3;sbl|5;sd7|d;sdp|5;sdw|4;se2|2;se6|4;sec|2;seg|;sei|1;sel|1;seo|5;sey|;sf4|;sf6|4;sfc|3;sfh|4;sfo|7;sfx|1;sg0|6;sg8|;sgb|6;sgj|8;sgt|6;sh3|3;sh8|3;shd|8;sho|;shq|1;sht|4;shz|;si1|d;sig|1;sij|3;sio|3;sit|4;sj0|4;sj6|;sj8|6;sjg|1;sjj|6;sjr|5;sjy|3;sk5|;sk7|2;skb|;skg|3;skl|1;sko|;skq|;skv|7;sl4|;sl9|1;sld|;slf|2;slj|3;slo|;slq|;slu|;slx|;slz|2;sm3|4;sm9|1;smc|1;smg|;smj|;sml|;smn|1;smq|;sms|3;sn1|3;sn6|;sn8|2;snc|;snh|;snk|;snm|;sno|6;snw|;sny|;so0|;so2|1;so5|;so7|;so9|;sod|5;sok|;som|1;sop|1;sos|1;soz|;sp2|9;spe|2;spi|5;spt|4;spz|;sq1|1;sq4|1;sqa|3;sqf|4;sqp|2;sqt|2;sqx|2;sr1|1;sr4|5;srb|1;srg|;sri|;srl|1;sro|;srq|;srs|;sru|c;ss8|;ssa|3;ssf|a;ssr|6;ssz|1;st2|9;std|;stf|4;stl|1;sto|5;stx|2;su1|;su3|2;su7|2;suc|3;suh|1;suk|2;suo|8;sv0|2;sv7|3;svc|1;svg|;svi|2;svn|7;svw|;svy|2;sw2|9;swd|4;swm|8;sww|2;sx0|5;sxa|3;sxh|4;sxn|5;sxv|;sxx|;sy0|2;sy5|1;sy9|2;syd|7;syn|1;sys|1;syv|1;syz|;sz1|;sz3|;sz6|1;sza|7;szj|4;szp|3;szv|5;t02|1;t05|;t07|2;t0c|1;t0f|2;t0j|2;t0n|3;t0s|2;t0w|;t0y|1;t13|5;t1b|1;t1e|;t1g|;t1i|;t1k|;t1p|;t1r|2;t1w|1;t20|2;t24|g;t2m|1;t2q|5;t2y|1;t38|;t3b|4;t3h|;t3k|2;t3o|4;t3u|2;t3y|;t40|;t44|1;t47|;t49|8;t4j|3;t4q|;t4s|6;t54|;t56|3;t5b|;t5e|;t5g|4;t5m|1;t5q|;t5t|;t5v|1;t5y|3;t63|3;t68|;t6c|2;t6h|2;t6p|;t6r|a;t74|1;t77|;t7a|3;t7g|3;t7l|1;t7o|4;t81|;t85|;t87|4;t8d|;t8h|3;t8n|2;t8t|3;t8z|7;t9b|;t9d|;t9n|;t9q|1;t9t|5;ta0|;ta2|1;ta5|;ta7|;ta9|;tab|2;tag|;tai|;tak|;tap|2;tat|;tax|3;tb2|5;tbc|;tbe|1;tbh|5;tbp|;tbr|;tbw|3;tc1|;tc3|2;tiv|2;tj2|2;tj6|2;tja|9;tjl|3;tjq|;tjs|1;tjx|c;tkb|2;tkh|1;tkk|;tkm|;tkp|6;tkz|;tl2|7;tlc|6;tlk|2;tlo|6;tlw|2;tm0|;tng|2;tnl|1;tno|2;tns|;tnu|;tnw|;tny|1;to1|3;to7|6;tof|3;tok|;tor|2;tov|1;toy|;tp0|;tp2|2;tp7|4;tpd|5;tpm|;tpo|;tpq|;tps|;tpu|6;tq2|5;tq9|5;tqg|3;tql|2;tqp|;tqs|9;tr3|1;tr7|7;tri|6;trq|7;ts0|1;ts4|3;ts9|5;tsh|1;tsl|1;tso|7;tsy|1;tt4|3;ttb|3;tti|1;ttl|2;tts|;ttu|8;tu5|2;tu9|;tub|1;tue|;tuh|5;tup|3;tuv|1;tuy|;tv4|3;tva|;tvc|1;tvf|;tvh|1;tvl|3;tvq|4;tvx|2;tw1|1;tw5|7;twe|;twg|4;twm|5;twt|1;twx|;twz|1;tx2|7;txb|2;txg|2;txl|;txn|;txp|;txr|1;txx|5;ty4|;ty6|2;tya|1;tye|;tyg|;tyj|3;typ|5;tyw|2;tz0|;tz2|1;tz5|;tz7|b;tzk|1;tzn|1;tzr|2;tzv|3;u00|1;u04|;u06|;u0d|2;u0h|7;u0q|1;u0v|;u0x|7;u16|;u18|8;u1i|4;u1o|;u1q|;u1s|1;u1v|3;u23|5;u2a|3;u2f|2;u2j|3;u2s|;u2u|1;u2y|5;u35|a;u3i|;u3m|1;u3p|2;u3u|2;u3z|2;u43|2;u5k|;u5m|1;u5p|4;u5w|;u5y|2;u62|2;u67|;u6a|6;u6j|1;u6m|;u6z|1;u72|5;u79|2;u7d|2;u7h|7;u7q|;u7w|2;u82|1;u85|;u87|3;u8c|;u8g|8;u8q|8;u90|;u92|2;u97|1;u9a|;u9d|4;u9l|5;u9s|2;u9x|4;ua3|3;ua8|2;uac|1;uaf|2;uaj|1;uam|2;uar|;uc6|3;ucb|;ucd|2;ucj|;ucl|1;uco|;ucs|2;ucw|5;ud5|1;ud8|1;udb|;udd|;udf|3;udk|1;uds|5;ue0|7;ue9|1;uef|;uei|4;ueo|2;ues|1;uew|1;uez|4;uf5|4;ufc|;ufe|2;ufi|5;ufq|;uft|1;ufy|;ug0|;ug2|2;ug7|1;ugb|;ugd|1;ugg|1;ugj|;ugl|3;ugu|;ugw|5;uh3|;uh6|4;uhd|1;uhg|4;uhm|1;uhp|;uhr|;uhu|;uhw|1;ui1|3;ujs|;uju|;ujw|4;uk2|;uk4|5;ukb|6;ukj|1;ukm|;uko|;uku|b;ul7|1;ula|2;ule|5;ull|6;ult|4;ulz|;um1|2;um5|;um7|7;umg|1;umj|3;umo|;umq|;umu|;umw|5;un3|1;un6|1;un9|a;unl|4;unr|;unt|4;uo1|4;uo8|;uob|4;uoh|;uok|4;uoq|1;uou|;uox|;uoz|;up1|1;up4|;up6|5;upe|7;upr|1;upv|4;uq1|2;uq5|7;uqe|1;uqi|;uql|3;uqu|8;ur4|2;ur8|;urb|2;urf|1;uri|3;urq|4;ury|4;us4|;us6|2;usb|;usd|;usf|;ush|4;usn|1;usq|1;usu|5;ut1|;ut3|3;ut9|;utb|1;ute|;utg|;uti|;utk|5;utr|7;uu0|6;uu9|9;uul|5;uut|2;uux|2;uv1|1;uv5|;uv7|7;uvi|2;uvm|2;uvq|2;uvu|7;uw3|;uw5|;uw7|4;uwd|1;uwg|;uwi|;uwl|3;uwq|2;uzp|2;uzt|;uzv|1;v00|;v02|2;v06|1;v09|;v0i|1;v0m|3;v0r|;v0u|;v0x|1;v11|;v13|1;v17|4;v1f|;v1i|;v1k|;v1m|2;v1r|1;v1u|2;v22|5;v29|7;v2i|;v2o|4;v2x|;v30|9;v3d|3;v3j|1;v3m|1;v3q|1;v3u|2;v3y|;v43|1;v46|1;v49|1;v4d|2;v4i|1;v4l|5;v4x|;v50|;v55|3;v5a|1;v5d|1;v5g|1;v5k|5;v5r|5;v5y|1;v61|1;v67|;v6b|4;v6h|1;v6m|2;v6r|;v6t|2;v6x|;v6z|;v71|3;v76|2;v7c|2;v7h|1;v7m|;v7r|;v7u|;v7x|1;v80|2;v85|1;v89|6;vat|;vaw|5;vb3|6;vbb|1;vbf|1;vbi|1;vbl|2;vbp|3;vbv|;vbx|2;vc4|2;vc8|2;vcc|4;vcj|2;vco|7;vcz|1;vd2|;vd4|;vd7|7;vdg|1;vdk|1;vdn|5;vdw|1;vdz|1;ve4|6;vec|5;vej|4;veq|1;vev|2;vf2|9;vfd|2;vfj|3;vfq|;vfu|2;vfz|;vg1|1;vg4|;vg7|;vg9|6;vgh|;vgj|4;vgq|1;vgu|2;vgy|6;vh6|;vh9|6;vhi|4;vho|7;vhx|2;vi2|;vi5|;vi7|;vil|;vin|3;vis|3;vix|;vj0|7;vj9|;vjo|;vjw|6;vk4|;vk6|;vkc|;1d6o|2h;1d97|47;1ddg|n;1de6|2n;1dkw|4;1e6o|9;1e7k|y;1e8k|i;1e94|3;1edd|4e;1eht|t;1eiq|5;1eiy|5;1ej6|5;1eje|2;1ejk|6;1ejs|6;2q68|c;2q6o|2k;2q9c|1o;2qdc|2;2qds|17;2qf4|8;2qfk|1;2t57|;2t8p|1;2t9e|;2t9g|;2t9s|;2tbp|;2teg|;2tgi|;2tjn|;2trf|;2ttd|;2ttt|;2tx5|;2tze|;2u4p|;2u67|;2u9d|;2uae|;2uc1|;2uco|;2ui4|;2ukv|;2uo8|;2upz|;2ure|;2uux|;2uxa|;2v0c|;2v0k|;2v19|;2v6s|;2v9v|;2vbx|;2vfj|;2vg7|;2vr9|;2vrs|;2vvl|;2vz8|;2vzh|;2w0l|;2w67|;2wox|;2wql|;2wr9|;2ws4|;2wsb|;2wuv|;2wv8|;2wvx|;2wwr|;2wxi|;2wxw|;2x1g|;2x65|1;2xg7|;2xjb|;2xmc|;2xom|;2xqa|;2y0t|;2y83|;2yai|;2yqe|;2ywd|;2yx1|;2yxu|;2yyg|;2yz6|;2yzg|;2yzl|;2z07|;2z1c|;2z3n|1;2za6|;2zcm|;2zga|;2zqz|;2zvc|;302m|;306l|;30nd|;30tv|;313v|;3163|;31cf|;31ko|;31om|;31ov|1;31ra|;31ul|;31us|;3275|;329u|;32ln|;32ye|;32yr|1;3305|;33aq|;33d8|;33dc|;33de|1;33dh|;33dm|;33dr|;33dw|;33em|;33gq|1;33gx|;33hh|;33l0|;33oa|;33pw|;33r8|;33ug|2;33uv|;340c|;340s|;341r|;342r|1;346f|;346p|;3473|;3484|;348t|;34pk|;3533|;354u|;356m|;356o|;3572|;358g|;35cj|;35dl|1;35oe|;35u3|;35w6|;35z7|;364m|;3666|;36cu|;36ik|;36j4|;36zt|;3739|;37ch|;37h2|;37jd|;37t9|;380m|;381b|;385y|;38d0|;38jo|;38jy|;38l3|;38mi|;38nf|;38xe|;38zu|;3905|;395u|;399l|;39al|;39b9|;39cu|;39e4|;39ri|;39u6|;39w9|;39xq|;3a1z|;3a7z|;3aep|;3ag9|;3agk|;3alw|;3av8|;3avg|;3avo|;3b2v|;3b37|1;3b3l|;3b8y|;3bd7|;3bdw|;3bmp|;3bqm|;3brq|;3bs2|;3bs5|;3buq|;3bvc|;3bvs|;3bxf|;3bz0|;3c2c|;3c2o|;3c3f|;3c3w|;3c47|;3c68|;3ca5|;3ciq|;3ckq|;3ckw|;3cli|;3cr0|;3cw2|;3ddq|;3df4|;3di5|;3dul|;3duy|;3dxt|;3dyn|;3dzt|;3e1p|;3e3i|;3e54|;3e6k|;3e7r|;3e9r|;3ei1|;3ek3|;3ela|;3en1|;3eww|;3exx|;3f6c|;3f92|2;3fg4|;3fgt|;3fi1|;3g0q|1;3g1q|;3g28|;3g3t|;3ggk|1;3ghd|;3gjo|;3gk3|;3gni|;3go3|;3gpe|;3gz6|;3h51|;3h6c|;3hc4|;3hkj|;3hku|;3hl3|;3hoc|;3hrs|;3hwz|;3hy8|;3i1c|;3i5r|;3id3|;3iiy|;3ikb|;3iwn|;3iwy|;3j03|;3j65|;3j7w|;3j9x|;3jdo|;3jhn|;3jk8|1;3jrr|;3jsq|;3k92|;3k95|;3ka3|;3kav|1;3kca|1;3kf2|;3kfd|;3kg3|;3khd|;3kih|;3kjx|;3kkd|;3kkk|;3kqp|;3krz|;3kyl|;3l00|;3l2p|;3l6j|;3l73|;3l7b|;3l7j|;3l86|;3lah|;3ld7|;3ldi|;3lf6|;3lko|;3m3k|;3m41|;3mhc|;3mq7|;3mv3|;3my8|;3mzd|;3n0w|;3n68|;3nba|;3nn6|;3o7f|;3obf|;3od1|;3oe5|;3oeh|;3oga|;3ohw|;3oij|;3oix|;3opa|;3opj|;3ore|;3orz|;3oua|;3oxl|;3p1s|;3p9u|;3pfw|;3pkn|;3pwx|;3pxe|;3py2|;3q2a|;3qp2|;3tc6|;3tch|;3tcj|;3tcq|;3tcs|;3td1|;3tdi|1;3tdo|;3tdu|;3te1|;3te3|;3te6|;3tec|;3tf0|;3tf3|;3tfh|;3tft|;3tfz|;3tg2|;3tg8|;3tgw|;3thp|;3thz|;3ti2|;3z9g|;41vc|;42g9|;42qy|;464k|;464v|;4651|;4654|;4656|;465e|;465k|;465o|;465v|;4667|;466e|;466q|;4676|;467h|;467n|;467r|;4684|;468p|1;4692|;4698|;469e|;469i|;46ab|;46aj|1;46ap|;46at|;46ay|;46b1|;46bg|;46bn|;46bv|;46bz|;46ca|;46cg|1;46dh|;46dj|;46ek|;46fp|;46hc|;46hq|1;46ic|;4an2|;4ay4|;")) +r.push(new A.al("Noto Sans Javanese","notosansjavanese/v21/2V01KJkDAIA6Hp4zoSScDjV0Y-eoHAHT-Z3MngEefiidxJnkFFliZYWj4O8.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ct|1;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;60w|5;61q|;642|1;6bv|2;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6jm|;6qa|;7gs|;xhc|25;xjj|a;xjy|1;")) +r.push(new A.al("Noto Sans KR","notosanskr/v27/PbykFmXiEBPT4ITbgNA5Cgm20HTs4JMMuA.otf","w|2m;4g|2r;7k|3;7u|1;88|3;8z|1;93|1;98|3;9e|1;a0|5;b6|;bk|1;bz|1;ct|f;e0|1;gh|;gx|;jf|;jr|;jt|2;k9|;kq|1;lc|1;lg|;lj|;lo|;pd|g;pv|6;q9|o;sh|;sw|1r;up|;3cw|73;5z2|1;61s|2h;6bm|1;6c0|6;6c8|2;6cc|2;6cg|2;6cl|2;6cw|;6cy|1;6d1|;6d5|3;6de|;6dj|2;6dt|;6es|;6g9|;6gb|1;6hp|1;6io|;6ir|;6it|;6ix|1;6j3|;6j7|;6ja|;6jl|1;6jq|1;6jv|;6jy|;6k5|;6kb|;6lc|b;6ls|b;6mo|9;6ns|1;6o4|2;6ob|1;6og|;6oi|;6ok|;6p2|3;6ph|;6ps|;6pu|1;6px|6;6q7|;6q9|2;6qd|;6qi|;6ql|3;6qr|;6qt|9;6r8|3;6rh|;6rn|;6rp|;6rs|;6rw|;6s2|;6sg|2;6sk|3;6sq|1;6su|1;6sy|1;6t2|1;6te|5;6tm|1;6tx|4;6u8|;6ud|;6v3|;6vu|1;6wf|;6x1|2;6xe|;6xk|;6y1|1;71s|1;726|e;72m|;72y|1;74z|;76o|97;7g1|2;7g6|1;7gc|1;7gg|1;7gm|6;7gu|5;7he|4;7hr|;7i8|3;7id|1;7ih|;7im|1;7iu|1;7j0|3;7jj|;7k0|2;7kw|f;7le|b;7mo|;7nh|1;7pe|;7pv|;7q2|;7r1|;7r3|1;7rq|;7sm|t;7tt|;850|1;88v|;8ai|1;8hx|2;8ii|;8lx|;94q|1;96o|p;97f|2g;9a8|5x;9gw|b;9hc|1r;9j5|2d;9ll|2u;9ol|16;9pt|2l;9sg|17;9ts|z;9v4|1a;9wg|7f;a3x|5u;ae2|;afr|;ahh|;aht|;aim|;anz|;ar3|;atf|2;aue|;aw3|;awf|;awq|;b0c|;b2k|;b2w|;b5v|;b7e|;b8n|;b99|;bc0|;bc5|;bcz|;bdc|;bdx|;bee|;bi1|;bl0|;bmk|;bna|;bnn|;boj|;bqx|;bub|;bv8|;bvo|;bvx|;bzx|1;c1o|;c2f|;c4f|;c70|;c76|;cec|;cfh|;cfx|;cg4|;cof|;cok|;cpu|;crt|;csp|;cvr|;cz0|;d3t|;ddn|;ddz|;dev|;dey|;dhs|;dn6|;dte|;dug|;dyv|;dz2|;dzo|;dzs|;dzx|;e25|;e3w|;e4d|;e5b|;ear|;ebn|;ec6|;ecm|;eg5|;eji|;ejp|;ekr|;emq|;enh|;erc|;esf|;eso|;et7|;evn|;ewh|;f6n|1;f8b|;feo|1;fer|;fev|4;ff1|1;ff5|;ff8|2;ffc|1;ffi|1;ffo|;ffq|;ffs|;ffv|2;fg0|2;fg6|;fg8|1;fgb|;fgf|;fgi|1;fgl|;fgr|;fgt|2;fh2|5;fh9|2;fhj|;fhn|2;fht|;fhv|;fhy|1;fi2|2;fi6|;fi8|;fia|;fid|1;fig|1;fij|1;fim|4;fis|1;fiw|1;fiz|1;fj2|4;fj8|2;fjc|;fjf|3;fjk|;fjn|1;fjq|;fjt|2;fk0|1;fk4|;fk6|1;fka|1;fkd|;fkk|5;fkt|2;fkx|;fkz|2;fla|;flc|;fle|1;flh|2;fln|;flp|;flr|2;fm1|2;fm5|4;fmi|;fml|;fn3|1;fn8|;fna|;fnc|;fne|;fng|2;fnm|1;fnq|3;fnv|;fnx|4;fo3|4;fo9|6;fop|1;fov|1;foz|1;fp2|;fp4|9;fpf|1;fpi|;fpk|3;fpp|5;fpw|;fpy|2;fq2|3;fqm|1;fqq|;fqt|1;fqx|;fqz|;fr3|;fr5|4;frd|1;frg|8;frr|4;frx|4;fs3|;fse|3;fsj|3;fso|;fsq|;fsu|;fsw|;fsy|;ft1|2;ft5|;ft7|;ft9|;ftb|;ftd|3;fti|;ftk|2;fto|;ftq|1;ftt|d;fu8|;fuj|;fur|1;fuv|3;fv2|1;fv7|;fv9|1;fvc|2;fvg|;fvk|;fvm|;fvp|1;fvu|;fw0|;fw2|;fw4|2;fw8|;fwg|;fwj|;fwl|;fwr|;fwt|;fwx|1;fx0|;fx2|;fx4|3;fx9|1;fxe|;fxo|2;fxu|3;fxz|;fy5|2;fya|;fyc|1;fyh|1;fyn|;fyp|;fys|2;fyy|1;fz2|;fz6|;fz9|2;fzd|;fzg|2;fzp|;fzt|;fzv|;fzy|6;g06|1;g09|;g0b|1;g0g|;g0i|3;g0n|1;g0q|2;g0v|;g0x|1;g10|1;g13|;g16|1;g1d|2;g1h|;g1j|5;g1r|2;g1v|6;g23|3;g28|;g2a|;g2c|3;g2i|;g2k|;g2q|;g2t|;g2v|7;g35|;g39|3;g3g|;g3k|;g3m|;g3q|;g3t|1;g3w|1;g3z|;g41|2;g45|4;g4e|;g4g|;g4i|3;g4q|2;g4w|2;g52|1;g59|1;g5g|2;g5l|4;g5u|;g5w|;g5y|;g63|3;g68|1;g6h|;g6l|;g6o|1;g6r|3;g6w|2;g71|;g74|3;g7a|2;g7e|;g7i|;g7l|;g7n|;g7q|1;g7x|;g84|3;g89|1;g8e|;g8g|3;g8m|5;g8z|1;g92|1;g95|4;g9g|3;g9m|1;g9p|2;g9t|;ga1|1;ga7|;gaa|;gac|1;gaf|;gai|;gal|;gan|;gaq|1;gav|2;gb1|;gb5|2;gbb|1;gbf|;gbj|1;gbn|1;gbr|;gbt|5;gc9|;gce|;gch|;gcj|;gcl|;gcn|;gcp|;gcs|1;gcy|;gd1|1;gd4|1;gd7|;gd9|7;gdi|;gdp|;gdu|1;gdx|;ge0|3;ge6|5;ged|;geg|;gei|;gek|1;gen|1;get|2;gex|1;gf4|1;gf7|;gfb|;gfe|;gfj|;gfl|;gfq|;gfs|3;gfx|4;gg3|2;gg7|3;ggd|;ggh|3;ggn|;ggq|;ggs|;ggu|;ggw|1;gh0|;gh2|;gh4|1;gh8|;gha|7;ghj|4;ghp|2;ghu|;ghw|;gi6|;gib|;gie|;gig|;gii|;gil|;gin|1;git|1;giy|;gj1|1;gj6|1;gja|;gjd|;gjf|;gjm|1;gjp|;gjs|5;gk4|;gk6|1;gk9|;gkb|;gkf|;gkh|5;gko|g;gld|;glf|1;glk|9;gm3|;gm5|;gm7|1;gme|;gmh|;gmj|1;gmm|;gmp|;gmr|;gmu|;gmw|1;gmz|3;gn4|;gn6|;gna|;gnc|;gne|;gni|;gnl|;gnx|;gnz|;go2|;go4|;go6|;go8|;goa|1;gog|1;goj|;gol|1;gor|2;gov|1;gp0|;gp2|1;gp7|5;gpi|;gps|;gpu|;gpw|1;gq0|;gq3|1;gq7|;gqa|1;gqg|;gqj|2;gqn|5;gqu|3;grl|;grp|1;grs|1;grx|1;gs1|1;gsa|;gsd|;gsf|;gsk|;gsm|1;gsp|;gsu|2;gt0|;gt8|;gtn|;gtq|1;gtt|;gtv|;gtx|;gu1|;gu4|;gu6|;gu8|;gua|;guc|;gue|;gui|;gun|;gur|;guu|1;gv0|;gv2|;gv7|;gvv|6;gw3|1;gw6|1;gw9|2;gwh|;gwj|1;gwo|2;gws|3;gwz|1;gx3|5;gxa|;gxc|;gxv|;gxx|;gxz|;gy1|;gy9|;gyc|;gyi|2;gyn|1;gyq|2;gzb|;gzh|2;gzo|;gzq|;gzs|1;gzw|4;h02|;h04|;h06|1;h0p|;h0s|;h0v|;h0y|;h10|;h12|3;h17|;h1b|;h1d|1;h1l|;h1n|;h1p|2;h1v|;h2c|1;h2g|5;h2n|;h2q|;h2s|;h2u|;h2w|;h2y|;h34|;h38|;h3a|1;h3j|;h3t|1;h45|;h47|;h4c|;h4e|;h4j|1;h4m|;h4s|;h4w|3;h54|2;h59|;h5d|;h5j|;h5m|1;h5q|2;h5v|;h5y|1;h63|;h65|1;h68|;h6b|;h6f|;h6h|1;h6l|;h6n|;h6p|3;h6v|4;h71|;h76|1;h7a|;h7c|;h7g|;h7j|;h7p|;h7s|2;h7w|2;h80|;h8b|;h8e|;h8g|2;h8n|;h8q|;h8s|5;h9d|;h9g|;h9i|4;h9q|3;h9v|;h9x|;h9z|1;ha3|1;haa|;hag|;haj|1;har|;hat|;hb2|;hb4|;hb6|2;hbs|;hbx|;hc3|;hc6|3;hcb|;hce|1;hch|1;hcs|;hcv|1;hd0|;hd5|;hd9|1;hdc|;hdf|1;hdi|1;hdl|4;hds|;hdu|4;he0|3;hef|;heh|;hel|1;heo|1;her|1;heu|1;hey|;hf1|;hf3|2;hf8|1;hfe|;hfk|;hft|4;hfz|3;hg4|;hg7|3;hge|;hgh|1;hgk|;hgp|;hh1|;hh5|;hh8|2;hhc|1;hhf|;hhh|;hhl|1;hho|1;hhs|;hhv|;hi4|3;hi9|;hib|;hig|1;hij|;him|;hio|1;hir|;hiy|1;hj2|;hj5|;hj7|;hj9|;hjb|;hji|;hjl|;hjn|2;hjs|2;hjw|3;hk1|;hk4|;hkb|1;hke|2;hki|;hkp|2;hkt|;hky|;hl2|;hl4|;hl6|;hlb|1;hlg|2;hll|3;hlu|;hlw|1;hlz|;hm1|6;hm9|1;hmf|1;hml|1;hms|;hmv|2;hn0|;hn2|3;hn7|2;hnb|1;hne|;hng|;hnk|;hnm|;hnr|;hnt|5;ho2|2;ho6|;ho8|;hod|;hoi|2;hoq|;hos|1;hox|2;hp2|1;hp5|;hp9|;hpf|2;hpj|1;hpo|;hpr|;hpu|;hpx|1;hq0|1;hq3|;hq6|1;hq9|;hqb|;hqe|;hqg|3;hql|;hqo|4;hqx|1;hr0|2;hr6|4;hrc|;hre|2;hri|;hrk|;hrm|;hrr|5;hrz|;hs1|;hs3|;hs9|1;hsd|;hsh|;hsj|;hso|1;hsr|1;hsv|1;hsz|;ht1|;ht3|;ht5|;ht7|;ht9|;hth|1;hto|;htr|2;hty|1;hu1|;hu3|1;hu8|1;hui|;huo|;huq|1;huu|1;hux|1;hv1|;hv6|;hvb|;hvj|;hvo|;hvx|;hw0|;hw2|1;hw5|;hwa|1;hwe|1;hwi|;hwk|;hwn|;hwq|;hwz|;hx1|;hx6|5;hxd|1;hxg|;hxk|1;hxn|1;hxx|2;hy1|2;hy5|;hy8|6;hyh|;hyj|;hyl|2;hyu|;hyy|1;hz1|;hz4|;hz9|;hzc|1;hzf|1;hzq|;hzt|;hzv|;i05|;i08|;i0a|;i0d|;i0g|;i0i|;i0k|;i0u|2;i0z|;i11|;i18|;i1c|1;i1g|4;i1m|3;i1r|;i1t|;i1v|3;i21|;i23|;i28|1;i2d|1;i2g|;i2i|;i2k|;i2n|3;i2t|;i2v|5;i33|;i37|;i39|8;i3j|;i3m|4;i3w|;i3y|;i40|;i43|3;i48|1;i4f|1;i4i|5;i4s|;i4w|;i4y|2;i52|2;i57|;i5a|1;i5d|1;i5g|5;i5n|5;i5x|1;i60|2;i67|;i69|;i6c|b;i6p|;i6s|;i6u|;i6x|;i73|1;i76|2;i7c|;i7f|;i7l|;i7s|9;i85|3;i8b|;i8d|1;i8g|1;i8l|;i8r|;i8w|;i8y|;i90|1;i94|;i98|;i9b|;i9d|;i9f|;i9l|1;ia0|;ia2|;ia4|;ia7|3;iac|;ial|;iap|;iar|;iat|8;ib5|;ib7|;ib9|;ibb|1;ibe|;ibi|;ibk|;ibv|;ic2|;ic9|;icg|;ico|1;ict|;icv|2;id0|;id2|;id7|;id9|;idi|1;idp|1;ids|1;idw|5;ie3|;ie7|;iea|;iec|;iee|1;ieh|;ies|;if1|;if5|1;if8|;iff|1;ifi|;ifk|;ifn|1;ig9|;igc|;igf|;igh|;igx|1;ih0|;ih2|1;ih7|;ihe|;ihg|1;ihl|;ihp|;ihs|;ihu|;ihz|;ii2|1;ii6|;ii8|;iif|1;iii|;iik|2;iix|;iiz|;ij1|;ij5|2;ija|;ije|1;ijh|1;ijk|2;ijp|3;ijv|;ijy|;ik1|4;ik7|2;ikb|;ikd|1;iki|1;ikm|;ikp|;iks|;ikx|;il1|1;il5|2;il9|;ilc|;ilh|;ilk|;iln|;ilp|;ilv|;ily|2;im5|;im7|1;imb|2;imf|;imk|;imm|;ims|1;imw|;in2|1;in5|2;inc|;ine|2;ink|4;inq|a;io3|1;io7|;ioa|1;iof|;iol|2;ioq|;ios|;iow|;ip1|3;ip7|;ip9|;ipf|;iph|3;ipp|1;ipt|1;iq0|3;iq7|2;iqb|;iqd|1;iqh|2;iql|6;iqt|;iqv|2;ir0|;ir5|;ir7|1;ira|1;ire|1;iri|1;irl|;irn|1;irr|1;iru|1;irz|;is1|4;is7|1;isb|;isf|;isi|;isl|2;isp|;ist|;isx|;it0|1;it3|;it6|;it8|;ita|;itc|;iti|;itk|;itm|;ito|;itq|;its|1;itv|1;ity|3;iu3|;iu5|;iu9|1;iuc|3;iuh|4;iuo|1;iur|;iuv|;iux|;iv0|;iv3|3;iv9|;ivb|5;ivk|2;ivr|2;ivw|;ivy|;iw0|1;iw3|;iw7|3;iwc|3;iwj|;iwl|;iwn|;iwp|;iws|1;iwz|2;ix4|1;ix8|2;ixc|;ixe|1;ixh|4;ixo|5;ixw|;iy0|;iy3|;iy5|2;iy9|;iyd|;iyg|;iyj|2;iyn|;iyy|;iz1|;iz3|;iz6|;iz8|3;izd|;izf|2;izk|1;izp|5;izz|1;j03|;j0h|2;j0m|2;j0q|1;j0t|;j0w|;j0y|;j11|;j15|1;j19|;j1b|1;j1e|3;j1k|5;j1r|1;j1x|;j29|;j2b|3;j2h|4;j2n|;j2q|;j2s|3;j2y|1;j33|1;j36|2;j3b|;j3e|;j3k|6;j3s|;j3v|3;j44|3;j49|;j4b|;j4f|;j4h|;j4j|;j4l|;j4n|b;j5c|4;j5i|6;j5s|1;j5v|;j5y|;j60|1;j65|2;j6c|1;j6i|2;j6m|1;j6q|;j6v|1;j6z|2;j74|;j78|;j7b|;j7g|;j7i|1;j7m|;j7o|;j7q|2;j7u|3;j7z|;j82|3;j88|2;j8c|1;j8f|5;j8n|1;j8q|1;j8u|;j8w|1;j8z|4;j96|;j98|2;j9d|2;j9m|;j9p|1;j9s|4;j9y|;ja0|2;jac|;jaf|2;jaj|1;jam|1;jaq|;jau|;jaw|;jay|4;jb7|;jba|6;jbj|;jbp|;jbr|;jby|1;jc3|;jc6|;jci|;jcm|2;jcq|;jcs|4;jd3|1;jd6|;jd8|2;jdc|2;jdg|2;jdk|;jdm|;jdq|1;jdt|1;jdy|1;je1|1;je5|1;je8|6;jeh|;jem|3;jer|;jev|7;jf5|2;jfb|1;jff|1;jfi|;jfn|;jfs|;jfy|;jg1|;jg3|;jg6|;jg9|1;jgc|;jge|2;jgj|1;jgm|;jgp|1;jgv|;jgx|1;jh0|4;jh7|;jhi|;jhk|;jhn|1;jhq|;jht|1;jhx|;ji1|;ji4|1;jia|;jic|9;jin|a;jiz|1;jj5|;jjg|3;jjl|;jjn|;jjp|2;jjx|2;jk1|1;jk7|;jk9|;jkc|;jkg|2;jl4|;jl6|1;jlb|;jll|2;jlp|1;jlu|2;jly|;jm1|;jm4|4;jmb|;jmd|;jmf|;jmi|;jmv|2;jmz|;jn2|;jn5|1;jna|1;jne|1;jnj|1;jnn|1;jnr|3;jnw|;jny|1;jo2|;jo6|;jo8|;job|1;jof|3;jol|;jon|3;jos|;jpa|;jpc|;jpf|1;jpi|;jpl|;jpr|1;jpu|;jpy|;jq2|1;jq7|2;jqb|;jqh|;jqj|;jql|1;jqq|;jqs|3;jra|;jrd|;jrh|;jrj|;jrm|;jro|;jrq|2;jrw|;js0|;js2|;js4|1;js8|;jsa|3;jsf|1;jsk|;jsm|;jsq|;jsu|;jtk|;jtn|;jtq|;jts|;jtz|;ju1|;ju5|;ju7|;jub|;jug|3;jul|;jut|;juw|;jv4|3;jv9|;jvd|2;jvh|2;jvo|1;jvt|;jvv|;jvx|1;jw0|;jw2|;jwb|1;jwe|1;jwh|;jwk|1;jwn|;jwp|1;jwt|1;jww|;jwy|;jx0|1;jx3|1;jx6|;jxc|3;jxh|2;jxo|1;jxr|;jxt|1;jxw|;jy2|;jy6|;jy8|;jya|;jyc|;jyf|;jyi|;jyn|;jys|;jyw|1;jz1|;jz6|2;jze|2;jzj|;jzm|;jzo|5;jzv|;jzx|2;k03|;k05|;k08|1;k0d|2;k0h|1;k0k|5;k0t|1;k0y|1;k12|;k18|1;k1e|;k1g|1;k1j|1;k1q|;k1t|2;k1x|;k1z|;k21|;k24|;k28|1;k2f|;k2h|;k2j|2;k2n|;k2p|;k2s|1;k2v|;k2z|2;k33|3;k3b|;k3d|;k3g|1;k3j|;k3l|5;k3u|2;k3z|;k42|;k47|;k4g|1;k4j|;k4l|1;k4o|1;k4s|1;k4x|1;k50|;k56|3;k5b|1;k5e|1;k5i|1;k5l|1;k5o|5;k5v|2;k63|1;k66|3;k6b|2;k6f|1;k6j|;k6l|;k6n|2;k6s|3;k6y|1;k75|3;k7c|1;k7f|1;k7i|3;k7t|2;k7x|5;k84|5;k8b|5;k8j|1;k8m|5;k8t|;k8v|;k90|;k93|2;k97|1;k9a|;k9c|1;k9i|2;k9m|;k9p|1;k9s|;k9u|1;ka3|1;ka6|;ka9|4;kag|3;kam|3;kas|5;kb7|1;kba|;kbc|6;kbk|;kbn|;kbq|;kbs|2;kbw|;kby|2;kc2|2;kc7|3;kcc|;kce|2;kcj|2;kco|5;kcw|;kd0|1;kd3|;kd7|;kd9|3;kde|1;kdi|2;kdm|4;kdt|;kdv|1;kdy|;ke2|;ke5|1;ked|1;keh|;kej|1;kem|3;ker|;keu|;kf0|4;kf9|;kfe|;kfg|1;kfj|4;kfp|;kfr|;kfv|1;kfy|1;kg3|;kg7|;kg9|;kgb|1;kgf|1;kgi|1;kgl|;kgn|3;kgs|1;khb|1;khe|1;khi|2;khq|;kht|;khw|1;ki2|;ki7|5;kie|4;kil|2;kiq|;kix|;kj0|;kj3|2;kj7|3;kjd|;kjf|;kji|1;kjn|1;kk0|;kk2|1;kk6|1;kkd|1;kkh|1;kkq|;kku|1;kkx|1;kl0|;kl4|1;kl7|2;klc|4;kli|;klk|1;klq|;kls|1;klv|1;kml|;kmn|;kms|;kmu|1;kn2|1;kn5|;kn7|;kn9|1;knj|;knn|1;knr|;knv|;knx|;knz|4;ko7|1;kod|;kof|2;koj|;kol|1;kp0|1;kp5|4;kpc|;kpe|;kph|3;kpm|;kpr|1;kpv|;kpz|1;kq4|;kq6|;kqa|;kqh|4;kqo|1;kqs|2;kqz|;kr1|2;kr5|1;krd|;krg|;krr|;ks0|;ks4|;ks6|;ks9|;ksd|;ksf|;ksi|;ksq|;ksv|;ksz|2;kt3|;kt5|1;kt9|1;ktc|3;kth|;ktk|;ktm|5;ktv|;ktx|;ktz|2;ku3|;ku5|;kum|;kup|;kus|1;kuw|;kuz|1;kv3|;kv8|3;kvh|1;kvk|2;kvo|;kvr|;kvu|2;kvy|3;kw3|;kw7|;kwa|6;kwj|;kwm|;kwy|;kx1|5;kx9|;kxe|;kxl|;kxn|;kxp|;kxr|1;kxu|;kxx|;ky2|1;ky9|3;kyf|;kyh|;kyj|;kym|1;kyp|;kyr|;kyx|;kyz|;kz9|;kzc|3;kzh|;kzn|2;kzr|6;l00|;l02|1;l08|2;l0f|;l0h|1;l0k|;l0m|;l0r|;l0y|;l11|;l1b|1;l1f|1;l1l|;l1p|1;l1s|;l1w|;l1z|;l24|1;l27|1;l2a|1;l2m|;l2r|;l2u|;l2z|1;l33|;l36|1;l3n|;l3u|5;l48|;l4a|;l4c|;l4m|;l4r|1;l4y|2;l56|;l58|;l5d|1;l5i|;l5q|;l5s|1;l5v|;l64|;l6a|;l6f|4;l6l|2;l6r|;l6u|1;l6x|1;l70|;l72|;l74|;l78|;l7d|2;l7j|8;l7t|1;l7z|;l82|;l87|4;l8f|1;l8i|2;l8m|;l8p|1;l8t|;l8x|;l92|;l94|;l9a|;l9e|;l9g|;l9n|;l9p|2;l9u|1;l9x|;l9z|;la2|;la4|1;la7|2;lac|2;laj|;lal|;lan|;laq|2;lau|2;lay|1;lbf|1;lbj|;lbn|;lbs|;lbz|;lc5|;lc8|;lcf|2;lcj|1;lcn|;lcr|;lcz|1;ldf|5;ldq|5;le3|;le6|2;lea|3;lef|;leh|7;leu|;lew|2;lf1|;lf4|;lf6|;lf8|;lfa|;lfe|;lfh|1;lfl|8;lfw|1;lg0|;lg2|4;lg8|3;lgi|;lgr|1;lgu|;lgw|1;lgz|;lh2|;lh4|1;lh7|4;lhd|1;lhg|2;lhl|1;lho|;lhs|1;lhv|2;lhz|;li1|4;li8|3;lid|;lig|;lij|;lim|3;lir|;lj3|;lj8|;ljb|;lje|2;ljl|1;ljo|;ljr|;ljt|;ljv|;ljy|1;lk3|;lk5|;lk7|5;lke|;lki|;lkl|1;lko|6;lkx|;lll|1;llo|;llt|;llv|4;lm1|1;lm4|;lm6|1;lma|;lmc|;lmf|2;lmn|;lmq|;lmt|;lmv|2;ln0|3;ln5|;ln7|4;lnu|2;lnz|;lo2|;lo4|1;lo7|1;loc|;lof|1;loj|5;lor|1;lov|3;lp2|;lp4|2;lp9|1;lpc|6;lpk|;lpm|2;lpq|;lpt|;lpv|;lpx|7;lqd|;lqg|;lqi|;lqv|;lqx|2;lr1|;lr3|7;lrc|;lrf|2;lrj|;lrm|;lro|;lrq|2;lru|;lrw|2;ls0|;ls3|2;lsa|;lsd|1;lsh|;lsj|3;lso|;lsr|1;lsu|1;lsz|;lt3|;lt7|;lta|1;lte|1;lth|;ltm|;lu7|1;lud|1;lug|;luk|1;lun|;luq|;lut|;luv|1;luy|1;lv3|;lv5|1;lv9|2;lve|;lvh|;lvm|3;lvs|1;lvv|1;lvy|;lw1|;lw3|2;lw9|;lws|1;lwv|;lwy|;lx0|1;lx3|1;lx8|;lxa|1;lxd|1;lxg|;lxi|;lxl|;lxo|;lxr|;lxt|;lxv|2;ly1|1;ly8|;lya|2;lye|2;lyi|3;lyo|3;lyw|;lz0|;lz2|1;lz5|;lzj|;lzl|1;lzo|;lzr|8;m01|3;m06|;m0d|4;m0k|;m0o|;m0q|;m0s|2;m0x|1;m10|;m12|3;m17|3;m1c|;m1e|;m1g|4;m1r|;m1t|;m1v|2;m1z|1;m22|;m26|1;m29|;m2b|;m2e|;m2h|;m2m|;m2o|3;m2u|1;m2x|1;m38|1;m3c|;m3e|1;m3i|3;m3o|2;m3t|;m3v|1;m3y|1;m41|;m43|1;m46|;m4a|;m4e|;m4h|;m4l|2;m4p|;m4r|;m4v|;m4x|2;m51|;m54|;m56|5;m5f|;m5i|2;m5r|1;m5u|;m5z|1;m64|;m66|;m6c|;m6e|;m6k|;m6m|;m6o|1;m6r|;m6w|;m71|1;m77|;m7a|;m7d|;m7f|1;m7j|1;m7s|;m7w|2;m81|;m85|1;m8a|;m8e|;m8i|;m8l|;m8o|3;m8x|;m90|;m92|;m97|5;m9f|;m9j|3;ma0|;ma2|1;ma7|;mab|1;mag|1;mak|1;man|;mb3|;mb5|;mbd|1;mbh|;mbn|1;mbq|;mbt|;mbw|;mc9|1;mcc|;mce|;mcg|1;mcm|;mct|4;md2|;mdf|;mdi|1;mdl|1;mdo|;mdq|;mds|;mdu|1;mdx|2;me1|;me4|2;mea|;mec|5;mek|;mem|;mf1|;mf4|;mf8|1;mfb|3;mfj|;mfm|;mfo|;mft|;mfv|;mfz|3;mg4|;mg8|1;mgc|;mgf|;mgh|1;mgp|1;mgu|;mgx|;mgz|;mh4|1;mh7|;mha|2;mhe|;mhg|2;mhl|;mhn|;mhr|1;mhx|2;mi4|2;mih|;mij|6;miu|1;miz|2;mj4|;mj8|;mjb|;mje|1;mjj|;mjp|;mjs|;mju|;mjw|1;mk0|;mk2|;mk5|1;mk8|3;mkd|3;mki|;mkm|2;mkr|1;mky|2;ml2|;ml4|3;ml9|;mlb|;mld|2;mlj|;mll|;mlr|;mlu|;mlw|;mm0|1;mm5|;mm8|2;mmf|;mml|;mmq|;mmu|;mn6|;mnb|;mng|1;mnj|;mnn|2;mo0|;mo2|;mo4|;mo9|;moe|;mog|;moi|;mon|;mop|;mox|1;mp1|;mp4|1;mp8|;mpg|;mpj|6;mq1|1;mqb|;mqe|3;mqj|2;mqq|;mqt|;mqv|4;mr5|;mr8|;mra|1;mri|1;mrn|2;mry|;ms0|;ms2|;ms7|1;msc|;msg|;mso|4;msv|1;msy|;mt1|;mt3|1;mt6|2;mtd|;mtg|;mti|3;mtn|;mtq|;mtu|;mtw|4;mu6|2;mue|1;muh|2;mul|;muq|2;muv|;mux|;muz|2;mv3|1;mv6|;mva|;mvc|2;mvg|1;mvj|;mvm|;mvq|3;mvx|1;mw0|;mw2|4;mw9|2;mwd|1;mwl|;mwn|2;mwt|1;mwx|;mwz|4;mx5|;mxf|;mxj|1;mxn|;mxp|;mxr|3;mxw|2;my0|;my2|2;my6|8;myg|;myi|;myn|7;myw|1;myz|1;mz2|;mz9|;mzb|;mzd|7;mzm|3;mzs|2;mzx|6;n0d|1;n0g|;n0i|5;n0p|3;n0w|;n14|;n18|3;n1d|;n1f|;n1h|;n1j|1;n1m|1;n1s|2;n1x|1;n20|1;n24|1;n27|1;n2e|;n2i|;n2l|;n2n|1;n2r|1;n2w|;n2y|2;n34|;n36|1;n3a|;n3d|;n3i|;n3m|1;n3r|;n41|;n43|1;n4c|2;n4h|;n4j|;n4l|;n4o|;n4q|2;n4u|1;n4y|4;n54|;n57|1;n5c|3;n5j|1;n5m|1;n5r|;n5v|;n5z|;n62|2;n66|1;n69|;n6b|1;n6h|4;n6o|;n6q|;n6s|3;n6y|1;n73|1;n79|1;n7c|;n7e|;n7j|;n7q|2;n7u|1;n7y|1;n81|1;n84|;n89|1;n8d|;n8j|;n8l|;n8p|;n8r|;n8x|4;n94|1;n98|2;n9c|;n9e|1;n9h|;n9j|;n9m|;n9p|1;n9u|3;na0|1;na3|;na6|;naa|2;naf|;nao|;naq|2;nax|1;nb0|;nb3|2;nbb|2;nbf|;nbh|;nbk|;nbp|;nbt|;nbz|3;nc4|;nc6|1;ncf|2;ncj|1;ncr|;ncy|1;nd2|3;nd8|;nda|;nde|;ndh|1;ndk|;ndo|;ndt|1;ndw|1;ndz|2;ne4|6;nee|;neg|;nei|4;neo|1;ner|1;neu|1;nez|;nf2|;nf4|;nf6|1;nfa|1;nfe|2;nfi|;nfo|;nfw|;nfy|;ng4|;ng6|;ng8|;nga|;ngf|;ngi|1;ngm|;ngo|;ngq|;ngs|2;ngy|2;nh2|;nh5|;nh7|1;nha|1;nhd|;nhf|2;nhj|;nhm|;nho|;nhq|;nht|1;nhw|;ni0|1;ni3|1;ni6|4;nic|;nif|5;nio|;niy|1;nj2|2;nj9|1;njc|1;njo|;njr|5;njy|;nk0|;nk3|;nk6|1;nkd|;nki|;nkq|1;nkv|4;nl1|1;nl4|;nl7|1;nlj|;nll|;nlp|2;nm3|;nm5|1;nm9|;nme|;nmh|;nmm|;nmo|;nmq|;nmt|;nmy|;nn0|2;nn4|;nn7|;nnd|;nnf|2;nnj|;nnr|;nnt|;nnx|;no7|;no9|3;noe|;noh|2;nol|;non|;nop|;not|3;noz|;np4|;np6|3;npe|;npj|;npo|;npr|;npt|1;npw|;nqa|;nqd|2;nqk|1;nqo|;nqq|;nqs|;nr7|;nr9|;nrj|;nrw|1;ns0|;ns7|1;nsa|2;nse|1;nss|;nsx|;nt0|;nt3|;nt8|3;ntd|;ntf|;ntj|;ntr|;ntv|1;ntz|2;nu4|1;nui|2;num|;nup|;nut|;nuw|;nuy|1;nv2|3;nv8|1;nve|;nvk|;nvr|1;nvu|;nvw|;nvz|;nw4|1;nw7|;nwa|3;nwh|;nws|;nwu|1;nwx|1;nx2|;nx5|;nxj|;nxm|3;nxt|;ny2|2;ny6|;ny8|1;nyc|6;nyo|;nyr|5;nyy|6;nz6|;nz9|;nzb|1;nzh|;nzt|1;nzw|;nzz|2;o0a|1;o0d|2;o0h|;o0k|;o0r|;o0t|;o12|2;o16|1;o1a|;o1c|1;o1f|1;o1k|9;o1w|;o1y|;o21|2;o29|1;o2d|;o2g|;o2m|1;o2q|2;o2u|1;o2x|3;o39|;o3c|;o3f|;o3k|2;o3p|;o3s|;o3u|3;o44|;o47|3;o4c|;o4e|2;o4i|;o4n|;o4u|;o4w|1;o4z|;o52|1;o55|;o57|2;o5b|1;o5e|;o5h|1;o5l|;o5o|2;o5z|;o68|2;o6e|;o6h|;o6j|;o6o|;o6s|2;o6x|1;o71|9;o7c|;o7e|;o7m|1;o7p|4;o7v|;o7z|1;o83|;o89|1;o8c|;o8e|1;o8j|;o8m|;o8p|2;o8u|1;o90|1;o93|1;o96|1;o9j|;o9l|;o9o|1;o9r|1;o9u|1;o9x|1;oa2|;oa5|;oa7|;oac|;oae|;oag|2;oal|;oan|;oau|;oaw|;oay|;ob0|;ob2|1;ob5|1;obc|1;obf|;obi|;obk|;obp|3;obw|1;obz|;oc3|;oc5|;oc9|;ocl|1;oco|1;ocr|2;ocv|5;od2|;odb|1;odh|2;odl|;odo|;odq|;odt|;odv|;odx|;oe5|;oef|;oej|;oel|2;oeq|;oes|1;oev|;oex|1;of0|1;of4|1;ofh|;ofl|;ofo|;ofs|;ofy|;og0|1;og4|;og6|1;og9|3;ogi|;ogk|;ogp|;ogr|;ogt|;ogw|1;oh0|;oh2|;oh5|1;ohf|;ohj|;ohq|;ohs|;ohz|;oi1|;oi3|;oi7|;oia|;oim|3;oiv|;oiy|1;ojb|1;ojh|2;ojn|;ojw|1;ok0|;ok2|;ok4|;okb|1;okf|1;okk|1;okn|;okp|;oks|;oky|1;ola|;old|;olf|;oll|;olp|;olu|;olx|;olz|1;om7|;oma|;omc|4;omm|;omp|2;omx|;on0|2;on9|1;one|;onp|2;ont|1;onw|4;oo2|;oo5|;oo7|;oof|;ooh|1;ook|2;ooo|3;oou|;oow|;ooy|6;op6|1;op9|;opc|;opf|2;opj|5;ops|2;oq3|1;oq6|5;oqd|;oqg|2;oqp|5;oqx|;or0|1;or4|1;or9|1;ord|;orf|1;ori|;orl|2;orq|;ors|2;ory|;os0|3;os5|1;os9|1;osf|;osj|;osm|;osu|1;osz|;ot4|;ot6|;ot8|;otc|;ote|1;oth|2;otl|;otn|3;ots|2;otw|1;ou0|;ou2|1;ou5|2;ouc|;ouf|;oui|3;oun|;ouu|2;ouy|;ov0|2;ov4|1;ov7|;ova|;ovc|1;ovg|;ovj|;ovo|;ovq|;ovt|;ovv|;ow3|;ow8|3;owg|1;owl|;own|1;owr|;owt|6;ox7|;oxa|1;oxd|2;oxh|;oxj|;oxl|;oxn|;oxp|1;oxt|;oxv|5;oy8|;oya|;oyc|3;oyh|1;oym|;oyp|1;oyx|2;oz1|;oz3|1;oza|;ozd|;ozg|2;ozl|1;ozr|1;ozu|;ozw|1;ozz|;p03|1;p06|;p08|;p0b|1;p0f|;p4m|2;p4q|;p4u|1;p4z|2;p53|;p57|3;p5c|5;p5k|;p5p|;p5r|2;p5v|;p5y|;p60|;p62|1;p66|;p68|;p6a|;p6d|;p6f|2;p6k|2;p6q|;p6t|3;p6y|;p70|;p72|;p78|;p7a|2;p7e|;p7h|1;p7l|;p7o|;p7s|1;p7v|;p7z|;p82|;p86|;p88|1;p8d|;p8f|;p8h|;p8l|;p8q|;p8s|;p8u|;p8y|;p90|2;p97|;p9b|2;p9f|1;p9i|;p9l|;p9n|1;p9q|;p9s|;p9v|;pa1|3;pa6|;pa8|9;pak|;pao|2;pas|5;pb2|;pb5|;pba|;pbc|;pbg|1;pbk|;pbn|;pbq|;pbx|;pbz|;pc3|;pc6|;pc8|;pca|;pci|;pcl|1;pco|;pcq|;pcu|;pcx|;pdb|4;pdh|2;pdp|3;pdw|3;pe1|;pe3|1;peb|;pee|;peg|;pei|1;pel|;pep|1;pet|1;pex|2;pf1|;pf3|;pf5|1;pf8|1;pfe|;pfn|1;pfq|;pfu|;pfw|;pfy|;pg5|1;pg9|3;pge|;pgg|1;pgk|1;pgv|;pgx|;ph0|;ph3|1;ph9|1;phe|;phh|5;phy|2;pi2|1;pib|1;pif|;pih|;pij|;pin|1;pix|1;pj2|;pj5|;pja|;pje|1;pji|;pjk|5;pk0|;pk4|2;pkb|;pkd|;pkg|1;pkk|;pkm|4;pkv|1;pky|2;pl2|;pl4|;pl6|1;plb|;plm|;plo|2;pls|;plv|;pm0|1;pm8|;pmb|2;pmg|2;pml|3;pmq|;pmu|;pmy|;pn1|;pn3|;pn5|;pnc|2;pnh|;pnj|1;pnn|;pnp|;pnr|1;pnu|;pnw|1;po3|1;po6|;poa|2;poe|;poh|2;pol|;pon|1;poq|;pos|1;pow|;poy|;pp2|;pp4|;pp7|1;ppa|1;ppd|;ppm|2;ppv|;ppx|4;pq5|;pq8|;pqd|;pqf|;pqp|;pqw|2;pr3|;pr8|;pra|;prc|;pre|1;pri|1;prl|1;pro|;prq|3;prx|1;ps3|;psa|1;psd|1;psg|;psi|;psk|;pso|2;pst|;psv|;psx|2;pt1|c;ptf|;ptj|2;ptn|4;ptx|;pu9|4;puf|;puj|1;pum|3;pur|;put|2;pux|;puz|;pv5|;pv7|1;pvd|2;pvh|8;pvs|1;pw7|;pwb|2;pwj|2;pwo|;pwq|1;pwv|;pwx|5;px4|1;px8|;pxc|;pxf|;pxj|;pxl|1;pxr|3;pyb|;pyr|;pyv|;pyy|1;pz6|;pz9|;pzd|1;pzi|;pzm|1;pzq|;pzs|;pzu|1;pzx|3;q02|;q08|3;q0t|5;q11|;q15|1;q18|;q1d|;q1f|1;q1i|;q1k|;q1o|;q1r|2;q21|;q23|;q27|3;q2c|;q2e|;q2h|;q2j|;q2l|;q2r|1;q2u|1;q2y|4;q3t|;q3w|;q41|;q45|;q48|1;q4c|1;q4m|;q4p|1;q4x|;q53|;q56|1;q5d|;q5f|;q5i|;q5l|4;q5r|2;q5v|;q5x|;q5z|;q62|;q6a|;q6o|1;q6s|;q6x|;q70|;q73|;q75|;q7c|;q7h|;q7j|;q7m|;q7o|;q7s|5;q7z|3;q84|;q86|;q89|2;q8d|;q8f|2;q8j|;q8m|;q8q|;q98|3;q9d|;q9g|;q9m|;q9o|1;q9s|;q9y|;qa6|;qa9|;qab|2;qaf|1;qai|;qam|1;qap|;qar|;qat|1;qay|;qb0|1;qb3|1;qbh|;qbj|;qbl|;qbn|;qbq|;qbt|2;qby|;qc3|;qc5|4;qce|;qch|;qcj|1;qco|3;qct|;qd4|;qd6|;qda|;qdc|;qdg|;qdi|1;qdl|1;qdo|;qdr|;qdt|;qdw|;qdz|;qe1|;qe3|;qe5|;qec|2;qeg|3;qen|1;qey|;qf5|;qfb|;qfd|;qfh|3;qfp|;qfw|1;qg4|1;qg9|1;qgn|;qgp|2;qgt|;qgv|1;qgy|;qh0|;qh2|1;qh6|1;qhi|2;qhm|;qhr|;qhu|;qhz|;qi1|1;qi5|;qi7|;qik|;qin|;qip|;qj1|1;qj4|;qj7|2;qjf|1;qji|1;qjr|;qjv|1;qjz|;qk1|;qk8|3;qkq|3;qkz|;ql1|;qlf|1;qlk|2;qlr|2;qlw|;qm8|;qmd|2;qmh|;qmj|;qms|;qmx|;qmz|;qn2|1;qn7|1;qnd|;qng|1;qns|1;qnv|;qny|;qo0|;qo2|1;qo6|;qo8|3;qoh|;qoo|;qoq|;qos|1;qox|;qp1|;qp4|1;qpg|1;qpj|;qpm|1;qpr|1;qq4|;qq6|;qqd|;qqf|;qqh|;qqn|1;qqs|2;qqw|;qr2|;qr8|;qra|;qrc|;qrm|1;qrw|1;qs8|;qse|1;qsi|1;qst|;qsz|1;qt6|1;qt9|;qtc|;qtg|;qtj|;qtm|1;qtu|;qu2|1;qu8|;qub|;quk|;qun|;quq|;quv|;qux|;quz|;qv2|;qv9|;qvh|;qvl|;qvp|;qvz|;qw1|2;qwh|1;qwm|;qwp|;qwr|;qww|;qx0|;qx2|;qx6|;qx8|2;qxe|1;qxj|;qxl|;qxn|;qxp|1;qxt|3;qy0|;qy3|;qy6|;qy8|;qya|;qyf|;qyl|2;qyp|1;qyw|;qyz|;qz1|;qz6|;qza|1;qzf|;qzh|1;qzm|;qzu|1;r04|;r0g|2;r0l|;r0q|;r0t|;r0v|;r0y|;r10|1;r14|1;r18|1;r1b|;r1d|;r1k|;r1r|;r1t|;r1v|2;r20|1;r25|1;r2c|;r2f|;r2i|;r2k|;r2o|3;r2t|;r2w|2;r39|;r3b|;r3e|1;r3j|1;r3q|;r3s|;r3u|1;r41|;r44|;r4d|;r4i|;r4m|;r4o|;r4s|;r4u|2;r50|;r56|;r59|;r5b|;r5e|;r5g|;r5q|3;r5v|;r5y|3;r63|;r67|;r6b|;r6e|2;r6i|;r6o|1;r6w|2;r70|;r73|;r76|1;r7a|1;r7e|;r7h|;r7j|2;r82|;r84|;r86|1;r8a|;r8c|1;r8j|;r8l|2;r8w|1;r8z|1;r92|;r94|;r9c|;r9e|1;r9j|3;r9o|;r9q|;r9s|8;ra3|;ra5|;ra7|;raa|1;rad|;rai|;ral|;rap|;rar|1;rau|;ray|2;rb2|;rb5|;rba|;rbf|;rbk|1;rbo|4;rbv|;rby|;rc0|3;rc6|;rc9|;rcb|3;rcg|3;rcl|;rcp|;rcs|;rcv|;rcy|;rd0|3;rd8|1;rdd|;rdf|;rdh|;rdk|;rdm|;rdq|;rds|8;re2|;re8|;rea|;reh|;rek|;rem|1;req|;res|;rev|;rex|;rez|;rf1|;rf3|;rf6|;rfa|1;rff|6;rfo|;rfq|1;rfu|1;rfx|1;rg0|4;rg6|2;rga|;rgc|;rge|;rgg|2;rgk|;rgn|;rgs|;rgu|;rgw|1;rh0|;rh2|1;rh5|4;rhc|;rhf|;rhi|;rhk|;rhn|1;rhv|;rhz|;ri1|;ri4|;ri6|;ri9|;rib|;rie|;rih|;rik|;rim|1;rir|1;riu|;riw|2;rj0|;rj2|1;rja|;rjf|1;rjj|2;rjo|;rjr|;rjx|;rjz|1;rk3|;rk9|1;rkc|;rke|;rkg|;rki|1;rkm|;rkq|;rks|;rku|;rkw|;rp3|;rpb|;rpd|;rpi|4;rpo|;rpq|;rps|;rpx|1;rq2|;rq9|1;rqg|;rqi|2;rqr|;rqw|2;rr6|1;rre|;rrg|1;rrn|1;rrs|;rrx|5;rs7|5;rsf|1;rsi|2;rsm|7;rsv|5;rt2|2;rt6|;rtd|;rtf|;rtl|3;rtq|;rts|6;ru2|;ru4|1;ru8|1;rub|1;ruj|2;rus|1;ruv|1;ruy|1;rv1|;rv3|1;rv7|1;rva|;rvf|;rvh|;rxg|;rxi|1;rxn|;rxp|1;rxs|;rxv|1;rxy|1;ry9|;ryd|;ryi|;rym|;ryo|;ryx|;rz4|;rz7|;rzc|;rzf|;rzm|1;rzu|;rzy|;s02|;s06|;s0b|1;s0e|1;s0l|2;s0r|;s0t|;s0v|;s0x|;s0z|;s14|;s16|3;s1b|;s1d|;s1f|;s1o|;s1y|;s20|2;s27|1;s2c|;s2l|2;s2y|;s34|;s38|2;s3e|;s3h|;s3k|;s3m|;s3o|;s3r|3;s3w|;s3z|;s45|;s49|;s4c|;s4f|1;s4j|1;s4y|;s50|;s52|;s57|;s5d|;s5h|;s5j|;s5l|2;s5p|;s5s|1;s5v|1;s61|;s66|;s69|;s6h|3;s6p|;s6r|;s72|;s74|;s7a|;s7e|3;s7m|;s7y|1;s82|;s88|;s8b|;s8o|4;s8u|;s8z|;s91|;s93|2;s9e|3;s9n|4;s9y|4;sa5|;sa7|1;sab|;sag|1;saj|;sam|2;saq|;sas|2;sax|;sb1|1;sb6|;sb8|;sbb|1;sbh|2;sbl|3;sbq|;sd7|1;sdb|;sde|1;sdi|;sdk|;sdp|5;sdx|1;se3|;se7|1;sea|3;sel|1;seo|1;ser|2;sf6|;sf8|2;sfc|;sfe|3;sfk|;sfm|;sfo|;sfr|3;sfw|1;sfz|4;sg5|1;sg8|;sgb|6;sgk|3;sgp|1;sgt|6;sha|;shd|1;shg|2;shk|;sho|;shq|;sht|1;shz|;si1|2;si5|8;sig|1;sij|3;sio|1;sir|;siw|1;sj0|3;sj6|;sj9|3;sje|;sjg|9;sjr|1;sju|;sjw|1;sjz|2;sk5|;sk7|2;skg|;ski|1;skm|;sko|;skq|;skv|2;skz|;sl1|;sl4|;sl9|1;sld|;slf|2;slm|;slq|;sm4|2;sm9|1;smg|;smi|1;sml|;smn|;smr|2;sn1|;sn6|;snm|;snp|2;snt|;sny|;so2|1;so7|;sod|;sog|2;sok|;sot|;sp4|6;spe|;spi|1;spu|3;sq1|1;sq4|;sqa|;sqc|5;sqr|;sqv|;sqx|;sqz|;sr1|;sr4|;sr6|;srg|;sri|;srm|;sru|2;sry|1;ss1|1;ss4|1;ssc|;ssg|1;ssj|;ssl|2;ssp|;ssr|6;st3|1;st8|1;stf|4;stl|1;stp|;stx|;su7|;suf|;sul|;suo|2;sus|1;suv|;sv0|;sv2|1;sva|;svl|;svo|1;svr|1;svu|;svz|2;sw4|1;sw9|;swb|;swd|5;swn|;swr|;swu|;swy|;sx0|2;sxj|1;sxo|;sxq|;sxs|;sxv|;sxx|;sy3|;sy9|;syb|;syd|1;syg|4;sz7|1;sza|1;szd|;szq|;szw|;szz|;t01|1;t05|;t07|;t0f|;t0k|1;t0q|;t0y|;t14|2;t18|2;t1c|;t1g|;t1i|;t1r|1;t1x|;t20|2;t26|6;t2e|2;t2i|2;t2m|1;t3c|3;t3h|;t3l|;t3o|;t3r|;t3v|2;t44|1;t4b|1;t4e|;t4g|;t4i|;t4l|;t4s|;t4u|;t56|;t58|;t5g|;t5i|1;t5m|1;t5r|2;t5v|1;t5z|;t64|1;t68|;t6j|;t6r|;t6v|1;t6y|2;t75|;t7a|2;t7g|3;t7l|1;t7o|;t7q|;t7s|;t86|;t88|1;t8b|;t8j|1;t8v|1;t8z|1;t94|1;t9h|;t9m|1;t9x|1;ta0|;ta2|;taa|;tac|;tai|;tak|;tap|1;tat|;taz|;tb2|;tb4|;tb6|1;tbe|1;tbk|2;tbp|;tbr|;tbw|3;tc5|;tiv|1;tj3|1;tj7|;tjc|3;tji|1;tjl|3;tjs|;tjw|;tjz|1;tk2|3;tk8|1;tkb|2;tkh|;tkm|;tkp|;tkr|3;tkz|;tl3|1;tl6|3;tlf|3;tlm|;tlo|;tlq|;tls|2;tlx|;tm0|;tng|1;tnl|;tno|;tnr|3;tnx|2;to2|;tob|;tof|1;toi|;tok|;tor|2;tow|;tp0|;tp2|;tp4|;tp7|4;tpd|3;tpm|;tpo|;tps|;tpu|7;tq4|1;tqc|2;tqi|1;tql|2;tqp|;tqs|1;tqv|1;tqz|1;tr7|1;trb|3;trk|1;trn|1;trq|3;trv|1;ts0|1;ts4|3;ts9|;tsb|3;tsl|1;tsp|5;tsy|1;tt4|2;ttb|1;tte|;tti|1;ttl|2;tts|;ttw|5;tu4|3;tu9|;tub|1;tue|;tuh|;tuk|;tum|;tur|;tuu|1;tuy|;tv4|;tv6|;tvc|1;tvh|;tvm|;tvo|;tvq|;tvs|1;tvw|;tw1|1;tw5|1;tw8|6;twg|2;twm|;two|1;twt|;twz|2;tx3|;tx6|;tx8|;txc|1;txg|1;txn|;txp|;txr|;ty0|;ty8|;tyb|;tye|;tyg|;tyj|2;typ|;tys|;tyw|1;tz5|;tz7|;tza|;tzf|2;tzk|;tzn|;tzt|;tzw|2;u00|1;u06|;u0d|1;u0h|2;u0l|1;u0q|1;u0u|5;u11|1;u14|;u16|;u18|7;u1i|2;u1q|;u1t|;u1v|1;u1y|;u23|;u25|1;u28|;u2a|;u2f|2;u2j|1;u2n|;u2q|;u2u|2;u2z|3;u36|3;u3c|2;u3g|;u3i|;u3p|2;u3v|;u3z|2;u43|2;u5k|;u5p|;u5r|;u5t|1;u5y|;u62|;u64|;u67|;u6a|;u6c|;u6e|1;u6h|;u6j|;u6m|;u6z|1;u72|4;u7a|1;u7e|1;u7h|2;u7l|;u7o|;u7v|3;u83|;u89|1;u8c|;u8g|;u8i|3;u8o|;u8q|;u8u|;u8w|;u92|2;u96|;u98|;u9a|;u9c|1;u9f|;u9l|;u9o|1;u9u|;u9x|;ua0|1;ua3|2;ua8|2;uac|1;uaf|;uak|;uam|;uar|;uc6|3;ucc|1;ucf|;uch|;ucj|;ucl|;ucn|1;ucq|;ucs|2;ucw|1;ucz|1;ud2|;ud5|;udd|;udg|1;udk|1;udr|3;udx|;ue0|1;ue3|4;uea|;ueg|;uei|;uel|1;uep|;uew|;uey|1;uf1|;uf3|;uf5|4;ufc|;uff|;ufh|2;ufl|;ufq|;ufs|1;ufv|;ugb|;ugd|;ugg|;ugl|3;ugu|;ugw|5;uh6|;uh8|3;uhe|;uhh|;uhj|1;uhm|1;uhr|;uhu|;uhw|1;ui1|1;ui4|;ujs|;uju|;uk0|;uk8|1;ukc|;ukf|1;ukm|;ukv|;ukx|;ukz|1;ul2|2;ulb|;uld|;ulf|;ulh|1;uln|;ulp|1;uls|;ulu|;ulw|;um1|2;um5|;uma|;umd|1;umi|1;uml|;umo|;umq|;umu|;umw|2;un3|;un6|1;un9|;unb|3;uni|1;unl|1;unu|;unw|;uo1|4;uo8|;uob|;uod|2;uoh|;uok|;uoo|;uoq|;up2|;upb|;upg|;ups|;upv|;uq6|;uq8|3;uqf|;uqn|;uqv|1;uqy|1;ur1|1;urd|;url|;urq|;urt|1;us4|;us6|;usb|;usi|;usk|;uso|;ut3|;utk|;utm|;uto|1;uts|;utu|1;utx|;uuc|1;uul|2;uup|1;uut|;uux|2;uv2|;uvb|;uvd|;uvj|;uvm|1;uvr|;uw0|;uw3|;uw7|;uwo|;uwr|1;uzp|2;uzt|;v03|1;v06|;v0j|;v0m|3;v0s|;v0y|;v11|;v14|1;v17|;v1a|1;v1f|;v1h|1;v1k|;v1r|1;v1y|;v23|;v29|1;v2c|;v2p|;v2r|1;v31|1;v34|1;v3a|;v3d|;v3g|;v3j|1;v3m|;v3r|;v3v|;v3y|;v44|;v49|1;v4m|;v4q|;v4x|;v50|;v55|;v58|;v5b|;v5g|1;v5k|1;v5n|;v5r|;v5t|1;v5w|;v5z|;v6b|;v6e|1;v6h|;v6u|;v6x|2;v74|3;v7c|2;v7h|;v7j|;v7r|;v7z|;v85|;v8a|5;vat|;vav|;vax|2;vb1|;vb3|1;vb6|;vb8|;vbf|1;vbj|;vbl|2;vbr|1;vbx|2;vc4|2;vc9|1;vcf|;vck|1;vcr|;vct|2;vcz|2;vd8|5;vdg|;vdi|;vdk|;vdm|4;vds|;vdx|;ve0|;ve6|1;vea|;vec|3;veh|7;veq|;ves|;vev|3;vf2|;vf4|;vf7|1;vfb|;vfd|;vfk|;vfm|;vfv|1;vfz|;vg4|;vg8|1;vgb|;vge|;vgq|1;vgu|;vgw|;vgy|;vh0|1;vh3|;vhb|2;vhi|1;vhl|3;vhu|;vhy|1;vi7|;vil|1;vio|2;vis|1;vix|;vj0|1;vj3|1;vj6|;vj9|;xgg|s;xz4|8mb;16ls|m;16mj|1c;1d6o|2m;1d9c|21;1dbf|2o;1dea|;1ded|2;1deh|5;1deq|;1deu|;1dey|2;1df2|3;1df7|a;1dfj|;1dfl|;1dfn|i;1dg7|;1dg9|f;1dgq|;1dkw|4;1e6o|9;1e7k|y;1e8k|i;1e94|3;1edd|59;1eiq|5;1eiy|5;1ej6|5;1eje|2;1ejk|6;1ejs|6;2q68|c;2q6o|2k;2q9c|1o;2qdc|2;2qds|17;2qf4|8;2qfk|1;2tav|;2td8|;2ua2|;2uco|;2v0k|;2wk5|;2wst|;2xec|;2xpj|;2zbw|;30ds|;30fh|;31an|;31wv|;32e8|;32t9|;339f|;33uj|;34rd|;36cx|;36hp|;37jd|;37jk|;37r5|;37rm|;3905|;39ku|;39o5|;39q6|;3ak2|;3aka|;3alw|;3at4|;3b2v|;3b87|;3br8|;3c5z|;3d7o|;3dnc|;3dxt|;3fic|;3gfz|;3gh1|;3gz6|;3hap|;3hfm|;3htb|;3i4d|;3i8r|;3id3|;3j7a|;3jdo|;3l3e|;3l41|;3l73|;3lxx|;3lyb|;3mji|;3mkp|;3mv3|;3n68|;3n7f|;3p9p|;3pow|;3q04|;3v9x|;3wlv|;3z9g|;42g9|;4651|;4654|;4656|;465o|;465v|;466q|;4676|;467r|;4684|;469e|;46b1|;46bg|;46cg|;46ek|;46hc|;46hr|;4949|;4an2|;")) +r.push(new A.al("Noto Sans Kaithi","notosanskaithi/v16/buEtppS9f8_vkXadMBJJu0tWjLwjQi0KdoZIKlo.ttf","w|;19|;4g|;1uu|9;6bv|2;6c0|;7gs|;x80|9;1hts|1t;1hvx|;")) +r.push(new A.al("Noto Sans Kannada","notosanskannada/v26/8vIs7xs32H97qzQKnzfeXycxXZyUmySvZWItmf1fe6TVmgop9ndpS-BqHEyGrDvNzSIMLsPKrkY.ttf","w|2m;4g|3;4l|;4n|4;4t|3;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;1u9|1;1us|1;2gw|c;2ha|2;2he|m;2i2|9;2id|4;2ik|8;2iu|2;2iy|3;2j9|1;2ji|;2jk|3;2jq|9;2k1|1;5ow|;5oy|;5p6|;5pu|;5pw|1;60w|5;61q|;642|1;6bv|2;6c0|;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6gp|;6jm|;6qa|;7gs|;x80|5;")) +r.push(new A.al("Noto Sans Kayah Li","notosanskayahli/v20/B50nF61OpWTRcGrhOVJJwOMXdca6Yecki3E06x2jVTX3WCc3CZH4EXLuKVM.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ct|1;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;60w|5;61q|;642|1;6bw|1;6c0|;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6jm|;6qa|;7gs|;xds|1b;")) +r.push(new A.al("Noto Sans Kharoshthi","notosanskharoshthi/v16/Fh4qPiLjKS30-P4-pGMMXCCfvkc5Vd7KE5z4rFyx5mR1.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;60w|5;61q|;642|1;6bv|2;6c0|;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6jm|;6qa|;7gs|;1gjk|3;1gjp|1;1gjw|7;1gk5|2;1gk9|s;1gl4|2;1glb|9;1gls|8;")) +r.push(new A.al("Noto Sans Khmer","notosanskhmer/v23/ijw3s5roRME5LLRxjsRb-gssOenAyendxrgV2c-Zw-9vbVUti_Z_dWgtWYuNAJz4kAbrddiA.ttf","w|2m;4g|3;4l|;4n|4;4t|3;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ct|1;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;4n4|2l;4ps|9;4q8|9;540|v;60w|5;61q|;642|1;6bv|2;6c0|;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6jm|;6qa|;7gs|;")) +r.push(new A.al("Noto Sans Khojki","notosanskhojki/v16/-nFnOHM29Oofr2wohFbTuPPKVWpmK_d709jy92k.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ct|1;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;25i|9;60w|5;61q|;642|1;6bw|1;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6jm|;6qa|;7gs|;x80|9;1i4g|h;1i4z|17;")) +r.push(new A.al("Noto Sans Khudawadi","notosanskhudawadi/v16/fdNi9t6ZsWBZ2k5ltHN73zZ5hc8HANlHIjRnVVXz9MY.ttf","w|;4g|;1us|1;6bw|1;6c3|1;7gs|;x80|9;1i9c|1m;1ib4|9;")) +r.push(new A.al("Noto Sans Lao","notosanslao/v24/bx6lNx2Ol_ixgdYWLm9BwxM3NW6BOkuf763Clj73CiQ_J1Djx9pidOt4ccbdf5MK3riB2w.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ct|1;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;2v5|1;2v8|;2vb|1;2ve|;2vh|;2vo|3;2vt|6;2w1|2;2w5|;2w7|;2wa|1;2wd|c;2wr|2;2ww|4;2x2|;2x4|5;2xc|9;2xo|3;60w|5;61q|;642|1;6bv|2;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|1;6jm|;6qa|;7gs|;")) +r.push(new A.al("Noto Sans Lepcha","notosanslepcha/v16/0QI7MWlB_JWgA166SKhu05TekNS32AJstqBXgd4.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;5j4|1j;5kr|e;5l9|2;60w|5;61q|;642|1;6bv|2;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6jm|;6qa|;7gs|;")) +r.push(new A.al("Noto Sans Limbu","notosanslimbu/v22/3JnlSDv90Gmq2mrzckOBBRRoNJVj0MF3OHRDnA.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ct|1;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;1us|1;4xs|u;4yo|b;4z4|b;4zk|;4zo|b;60w|5;61q|;642|1;6bv|2;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6jm|;6qa|;7gs|;")) +r.push(new A.al("Noto Sans Linear A","notosanslineara/v16/oPWS_l16kP4jCuhpgEGmwJOiA18FZj22zmHQAGQicw.ttf","w|;4g|;1fr4|8m;1g00|l;1g0w|7;")) +r.push(new A.al("Noto Sans Linear B","notosanslinearb/v15/HhyJU4wt9vSgfHoORYOiXOckKNB737IV3BkFTq4EPw.ttf","w|;4g|;1ekg|b;1ekt|p;1elk|i;1em4|1;1em7|e;1emo|d;1eo0|3e;1erk|2;1err|18;1et3|8;")) +r.push(new A.al("Noto Sans Lisu","notosanslisu/v25/uk-3EGO3o6EruUbnwovcYhz6kh57_nqbcTdjJnHP2Vwt29IlxkVdig.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ct|1;ew|3;fr|;jg|;jq|1;jt|;jx|;k8|5;lc|4;li|2;lm|2;lu|;me|2;60w|5;61q|;642|1;6c0|;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6jm|;6qa|;7gs|;9hm|1;wk0|1b;1kts|;")) +r.push(new A.al("Noto Sans Lycian","notosanslycian/v15/QldVNSNMqAsHtsJ7UmqxBQA9r8wA5_naCJwn00E.ttf","w|;4g|;1f28|s;")) +r.push(new A.al("Noto Sans Lydian","notosanslydian/v15/c4m71mVzGN7s8FmIukZJ1v4ZlcPReUPXMoIjEQI.ttf","w|;4g|;1gdc|p;1ge7|;")) +r.push(new A.al("Noto Sans Mahajani","notosansmahajani/v15/-F6sfiVqLzI2JPCgQBnw60Agp0JrvD5Fh8ARHNh4zg.ttf","w|;4g|;1us|b;6bw|1;7gs|;x80|9;1hzk|12;")) +r.push(new A.al("Noto Sans Malayalam","notosansmalayalam/v26/sJoi3K5XjsSdcnzn071rL37lpAOsUThnDZIfPdbeSNzVakglNM-Qw8EaeB8Nss-_RuD9BFzEr6HxEA.ttf","w|2m;4g|3;4l|;4n|4;4t|3;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;mb|;me|2;1u9|1;1us|1;2kg|c;2ku|2;2ky|1e;2me|2;2mi|5;2ms|f;2na|p;5p6|;60w|5;61q|;642|1;6bv|2;6c0|;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6gp|;6jm|;6qa|;7gs|;x80|2;")) +r.push(new A.al("Noto Sans Mandaic","notosansmandaic/v15/cIfnMbdWt1w_HgCcilqhKQBo_OsMI5_A_gMk0izH.ttf","w|;4g|;18g|;1mo|r;1ni|;6bw|1;7gs|;")) +r.push(new A.al("Noto Sans Manichaean","notosansmanichaean/v15/taiVGntiC4--qtsfi4Jp9-_GkPZZCcrfekqCNTtFCtdX.ttf","w|;4g|;18g|;6bw|1;7gs|;1e68|;1gow|12;1gq3|b;")) +r.push(new A.al("Noto Sans Marchen","notosansmarchen/v17/aFTO7OZ_Y282EP-WyG6QTOX_C8WZMHhPk652ZaHk.ttf","w|;4g|;7gs|;1k6o|v;1k7m|l;1k89|d;")) +r.push(new A.al("Noto Sans Masaram Gondi","notosansmasaramgondi/v17/6xK_dThFKcWIu4bpRBjRYRV7KZCbUq6n_1kPnuGe7RI9WSWX.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ct|1;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;1us|1;60w|5;61q|;642|1;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6jm|;6qa|;7gs|;1kao|6;1kaw|1;1kaz|17;1kca|;1kcc|1;1kcf|8;1kcw|9;")) +r.push(new A.al("Noto Sans Math","notosansmath/v15/7Aump_cpkSecTWaHRlH2hyV5UHkG-V048PW0.ttf","w|2m;4g|;4n|;4s|;4x|;5z|;6v|;le|1;lh|;lj|1;mo|;pd|g;pv|6;q9|o;r5|;r9|1;s0|1;s4|1;6cy|5;6dz|;6hc|c;6ht|;6hx|a;6iq|;6iy|4;6j4|2;6j9|;6jd|4;6jo|;6js|;6jw|1;6jz|2;6k3|5;6kc|4;6kl|4;6mo|u;6nk|1h;6pd|1;6pg|7f;6x4|3;6xc|;6xl|;6xo|5;6ye|1w;70c|;711|;717|r;72o|;730|5;778|1;7fz|;7g3|;7g7|;7gd|;7gh|;7gq|;7gs|;7i3|;7l9|2;7uo|1r;83k|e7;8i6|3;8j4|s;8ou|;1efv|;1efx|;2kg0|2c;2kie|1y;2kke|1;2kki|;2kkl|1;2kkp|3;2kku|b;2kl7|;2kl9|6;2klh|1s;2knb|3;2knh|7;2knq|6;2kny|r;2kor|3;2kow|4;2kp2|;2kp6|6;2kpe|9f;2kyw|83;2l72|1d;2pkw|3;2pl1|q;2plt|1;2plw|;2plz|;2pm1|9;2pmc|3;2pmh|;2pmj|;2pmq|;2pmv|;2pmx|;2pmz|;2pn1|2;2pn5|1;2pn8|;2pnb|;2pnd|;2pnf|;2pnh|;2pnj|;2pnl|1;2pno|;2pnr|3;2pnw|6;2po4|3;2po9|3;2poe|;2pog|9;2por|g;2ppd|2;2pph|4;2ppn|g;2prk|1;")) +r.push(new A.al("Noto Sans Mayan Numerals","notosansmayannumerals/v15/PlIuFk25O6RzLfvNNVSivR09_KqYMwvvDKYjfIiE68oo6eepYQ.ttf","w|;4g|;2k80|j;")) +r.push(new A.al("Noto Sans Medefaidrin","notosansmedefaidrin/v22/WwkzxOq6Dk-wranENynkfeVsNbRZtbOIdLb1exeM4ZeuabBfmErWlT318e5A3rw.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ct|1;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;60w|5;61q|;642|1;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6jm|;6qa|;20cg|2i;")) +r.push(new A.al("Noto Sans Meetei Mayek","notosansmeeteimayek/v14/HTxAL3QyKieByqY9eZPFweO0be7M21uSphSdhqILnmrRfJ8t_1TJ_vTW5PgeFYVa.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ct|1;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;60w|5;61q|;642|1;6bv|2;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6gp|;6jm|;6qa|;7gs|;xr4|m;xxc|19;xyo|9;")) +r.push(new A.al("Noto Sans Meroitic","notosansmeroitic/v16/IFS5HfRJndhE3P4b5jnZ3ITPvC6i00UDgDhTiKY9KQ.ttf","w|;1m|;4g|;6cm|;6e5|;1gg0|1j;1gho|j;1gia|19;")) +r.push(new A.al("Noto Sans Miao","notosansmiao/v17/Dxxz8jmXMW75w3OmoDXVV4zyZUjgUYVslLhx.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ct|1;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;60w|5;61q|;642|1;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6jm|;6qa|;7gs|;20hs|22;20jz|1k;20lr|g;")) +r.push(new A.al("Noto Sans Modi","notosansmodi/v20/pe03MIySN5pO62Z5YkFyT7jeav5qWVAgVol-.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ct|1;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;1tp|;60w|5;61q|;642|1;6bw|1;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6jm|;6qa|;7gs|;x80|9;1iww|1w;1iz4|9;")) +r.push(new A.al("Noto Sans Mongolian","notosansmongolian/v17/VdGCAYADGIwE0EopZx8xQfHlgEAMsrToxLsg6-av1x0.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ct|1;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;4qo|e;4r4|9;4rk|2g;4u8|16;60w|5;61q|;642|1;6bw|1;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6cv|;6d5|1;6dk|1;6gc|;6jm|;6qa|;76o|j;7gs|;9hd|1;9hm|5;1e7x|1;1e81|3;1izk|c;")) +r.push(new A.al("Noto Sans Mro","notosansmro/v18/qWcsB6--pZv9TqnUQMhe9b39WDzRtjkho4M.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ct|1;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;60w|5;61q|;642|1;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6jm|;6qa|;1zk0|u;1zkw|9;1zla|1;")) +r.push(new A.al("Noto Sans Multani","notosansmultani/v20/9Bty3ClF38_RfOpe1gCaZ8p30BOFO1A0pfCs5Kos.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ct|1;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;1us|1;21y|9;60w|5;61q|;642|1;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6jm|;6qa|;1i80|6;1i88|;1i8a|3;1i8f|e;1i8v|a;")) +r.push(new A.al("Noto Sans Myanmar","notosansmyanmar/v20/AlZq_y1ZtY3ymOryg38hOCSdOnFq0En23OU4o1AC.ttf","w|;1r|;4g|;35s|4f;6bv|2;6c8|1;6cc|1;6cm|;7gs|;xf2|;xk0|u;xnk|v;1e68|;")) +r.push(new A.al("Noto Sans NKo","notosansnko/v2/esDX31ZdNv-KYGGJpKGk2_RpMpCMHMLBrdA.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ct|1;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;170|;17f|;17j|;19m|;1j4|1m;1kt|2;60w|5;61q|;642|1;6bw|3;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6jm|;6qa|;7gs|;93w|1;1e0u|1;")) +r.push(new A.al("Noto Sans Nabataean","notosansnabataean/v15/IFS4HfVJndhE3P4b5jnZ34DfsjO330dNoBJ9hK8kMK4.ttf","w|;4g|;1g8w|u;1g9z|8;")) +r.push(new A.al("Noto Sans New Tai Lue","notosansnewtailue/v20/H4cKBW-Pl9DZ0Xe_nHUapt7PovLXAhAnY7wqaLy-OJgU3p_pdeXAYUbghFPKzeY.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ct|1;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;51c|17;52o|p;53k|1;53n|7;53y|1;60w|5;61q|;642|1;6bw|1;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6jm|;6qa|;7gs|;9hc|2;9hk|3;1edd|;1edk|1;1edo|;1edq|;1ee2|1;1ee7|;1eg1|;1eg4|;")) +r.push(new A.al("Noto Sans Newa","notosansnewa/v16/7r3fqXp6utEsO9pI4f8ok8sWg8n_qN4R5lNU.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;5x7|;60w|5;61q|;642|1;6bw|1;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6jm|;6qa|;7gs|;1iio|2j;1il9|4;")) +r.push(new A.al("Noto Sans Nushu","notosansnushu/v19/rnCw-xRQ3B7652emAbAe_Ai1IYaFWFAMArZKqQ.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;60w|5;61q|;642|1;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6jm|;6qa|;20o1|;2dm8|az;")) +r.push(new A.al("Noto Sans Ogham","notosansogham/v15/kmKlZqk1GBDGN0mY6k5lmEmww4hrt5laQxcoCA.ttf","w|;4g|;4g0|s;")) +r.push(new A.al("Noto Sans Ol Chiki","notosansolchiki/v21/N0b92TJNOPt-eHmFZCdQbrL32r-4CvhzDzRwlxOQYuVALWk267I6gVrz5gQ.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ct|1;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;5lc|1b;60w|5;61q|;642|1;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6gp|;6jm|;6qa|;")) +r.push(new A.al("Noto Sans Old Hungarian","notosansoldhungarian/v15/E213_cD6hP3GwCJPEUssHEM0KqLaHJXg2PiIgRfjbg5nCYXt.ttf","w|;4g|;6bx|;1h1c|1e;1h34|1e;1h4q|5;")) +r.push(new A.al("Noto Sans Old Italic","notosansolditalic/v15/TuGOUUFzXI5FBtUq5a8bh68BJxxEVam7tWlRdRhtCC4d.ttf","w|;4g|;1f5s|z;1f71|2;")) +r.push(new A.al("Noto Sans Old North Arabian","notosansoldnortharabian/v15/esDF30BdNv-KYGGJpKGk2tNiMt7Jar6olZDyNdr81zBQmUo_xw4ABw.ttf","w|;4g|;1gn4|v;")) +r.push(new A.al("Noto Sans Old Permic","notosansoldpermic/v16/snf1s1q1-dF8pli1TesqcbUY4Mr-ElrwKLdXgv_dKYB5.ttf","w|;4g|;lc|;li|2;lv|;w3|;6hn|;7gs|;1f80|16;")) +r.push(new A.al("Noto Sans Old Persian","notosansoldpersian/v15/wEOjEAbNnc5caQTFG18FHrZr9Bp6-8CmIJ_tqOlQfx9CjA.ttf","w|;4g|;1fa8|z;1fbc|d;")) +r.push(new A.al("Noto Sans Old Sogdian","notosansoldsogdian/v15/3JnjSCH90Gmq2mrzckOBBhFhdrMst48aURt7neIqM-9uyg.ttf","w|;4g|;1hj4|13;")) +r.push(new A.al("Noto Sans Old South Arabian","notosansoldsoutharabian/v15/3qT5oiOhnSyU8TNFIdhZTice3hB_HWKsEnF--0XCHiKx1OtDT9HwTA.ttf","w|;4g|;1gm8|v;")) +r.push(new A.al("Noto Sans Old Turkic","notosansoldturkic/v15/yMJNMJVya43H0SUF_WmcGEQVqoEMKDKbsE2RjEw-Vyws.ttf","w|;4g|;1gxs|20;")) +r.push(new A.al("Noto Sans Oriya","notosansoriya/v27/AYCppXfzfccDCstK_hrjDyADv5e9748vhj3CJBLHIARtgD6TJQS0dJT5Ivj0f6_c6LhHBRe-.ttf","w|c;1a|28;4g|3;4l|;4n|4;4t|3;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ct|1;ew|3;fr|;jg|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;nu|;1us|1;269|2;26d|7;26n|1;26r|l;27e|6;27m|1;27p|4;27w|8;287|1;28b|2;28m|1;28s|1;28v|4;292|h;60w|5;61q|;642|1;6bv|2;6c0|;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6gp|;6jm|;6qa|;7gs|;")) +r.push(new A.al("Noto Sans Osage","notosansosage/v18/oPWX_kB6kP4jCuhpgEGmw4mtAVtXRlaSxkrMCQ.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ct|1;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;ns|;60w|5;61q|;642|1;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6jm|;6qa|;7gs|;1fhs|z;1fiw|z;")) +r.push(new A.al("Noto Sans Osmanya","notosansosmanya/v18/8vIS7xs32H97qzQKnzfeWzUyUpOJmz6kR47NCV5Z.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ct|1;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;60w|5;61q|;642|1;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6jm|;6qa|;1fgg|t;1fhc|9;")) +r.push(new A.al("Noto Sans Pahawh Hmong","notosanspahawhhmong/v18/bWtp7e_KfBziStx7lIzKKaMUOBEA3UPQDW7krzc_c48aMpM.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ct|1;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;60w|5;61q|;642|1;6bw|1;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6jm|;6qa|;7gs|;1zpc|1x;1zrk|9;1zrv|6;1zs3|k;1zst|i;")) +r.push(new A.al("Noto Sans Palmyrene","notosanspalmyrene/v15/ZgNPjOdKPa7CHqq0h37c_ASCWvH93SFCPnK5ZpdNtcA.ttf","w|;4g|;1g80|v;")) +r.push(new A.al("Noto Sans Pau Cin Hau","notosanspaucinhau/v20/x3d-cl3IZKmUqiMg_9wBLLtzl22EayN7ehIdjEWqKMxsKw.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ct|1;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;60w|5;61q|;642|1;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6jm|;6qa|;1juo|1k;")) +r.push(new A.al("Noto Sans Phags Pa","notosansphagspa/v15/pxiZyoo6v8ZYyWh5WuPeJzMkd4SrGChkqkSsrvNXiA.ttf","w|;4g|;4qp|2;4qt|;6bv|4;6cl|1;7gs|;9hd|1;9hj|a;9hw|7;x8g|1j;1e68|;")) +r.push(new A.al("Noto Sans Phoenician","notosansphoenician/v15/jizFRF9Ksm4Bt9PvcTaEkIHiTVtxmFtS5X7Jot-p5561.ttf","w|;4g|;1gcg|r;1gdb|;")) +r.push(new A.al("Noto Sans Psalter Pahlavi","notosanspsalterpahlavi/v15/rP2Vp3K65FkAtHfwd-eISGznYihzggmsicPfud3w1G3KsUQBct4.ttf","w|;4g|;18g|;6bw|1;7gs|;1gu8|h;1gux|3;1gvd|6;")) +r.push(new A.al("Noto Sans Rejang","notosansrejang/v18/Ktk2AKuMeZjqPnXgyqrib7DIogqwN4O3WYZB_sU.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ct|1;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;60w|5;61q|;642|1;6bv|2;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6jm|;6qa|;7gs|;xf4|z;xgf|;")) +r.push(new A.al("Noto Sans Runic","notosansrunic/v15/H4c_BXWPl9DZ0Xe_nHUaus7W68WWaxpvHtgIYg.ttf","w|;4g|;4gw|2g;")) +r.push(new A.al("Noto Sans SC","notosanssc/v26/k3kXo84MPvpLmixcA63oeALhL4iJ-Q7m8w.otf","w|2m;4g|2r;7k|3;7u|1;88|3;8z|1;93|1;98|3;9e|1;a0|5;b6|;bk|1;bz|1;ct|f;e0|1;gh|;gx|;jf|;jr|;jt|2;k9|;kq|1;lc|1;lg|;lj|;lo|;pd|g;pv|6;q9|o;sh|;sw|1r;up|;5z2|1;61s|2h;6bm|1;6c0|6;6c8|2;6cc|2;6cg|2;6cl|2;6cw|;6cy|1;6d1|;6d5|3;6de|;6dj|2;6dt|;6es|;6g9|;6gb|1;6hp|1;6io|;6ir|;6it|;6ix|1;6j3|;6j7|;6ja|;6jl|1;6jq|1;6jv|;6jy|;6k5|;6kb|;6lc|b;6ls|b;6mo|9;6ns|1;6o4|2;6ob|1;6og|;6oi|;6ok|;6p2|3;6ph|;6ps|;6pu|1;6px|6;6q7|;6q9|2;6qd|;6qi|;6ql|3;6qr|;6qt|9;6r8|3;6rh|;6rn|;6rp|;6rs|;6rw|;6s2|;6sg|2;6sk|3;6sq|1;6su|1;6sy|1;6t2|1;6te|5;6tm|1;6tx|4;6u8|;6ud|;6v3|;6vu|1;6wf|;6x1|2;6xe|;6xk|;6y1|1;71s|1;726|e;72m|;72y|1;74z|;76o|97;7g1|2;7g6|1;7gc|1;7gg|1;7gm|6;7gu|5;7he|4;7hr|;7i8|3;7id|1;7ih|;7im|1;7iu|1;7j0|3;7jj|;7k0|2;7kw|f;7le|b;7mo|;7nh|1;7pe|;7pv|;7q2|;7r1|;7r3|1;7rq|;7sm|t;7tt|;850|1;88v|;8ai|1;8hx|2;8ii|;8lx|;94q|1;96o|p;97f|2g;9a8|5x;9gw|b;9hc|1r;9j5|2d;9ll|2u;9ol|16;9pt|1e;9r9|15;9sg|17;9ts|z;9v4|1a;9wg|7f;a3x|58o;feo|g6n;1d6o|3;1d6t|1;1d6z|1;1d79|;1d7b|3;1d7l|;1d7w|1;1d7z|;1d81|4;1d87|3;1d8j|;1d8n|3;1d8u|;1d8y|1;1d9a|;1d9e|5;1d9q|;1d9u|;1d9w|;1d9y|;1da1|2;1da6|2;1dac|1;1dai|2;1dam|;1dar|;1dat|;1daw|;1dbi|;1dbn|;1dbr|;1dbv|;1dbx|1;1dc0|;1dc5|1;1dcg|;1dco|1;1dcs|4;1dcy|2;1dd3|;1dd5|;1ddd|;1ddg|1;1ddm|;1ddp|;1ddr|;1ddu|;1ddx|3;1de2|;1de4|3;1de9|;1deb|1;1deg|;1den|2;1der|1;1dev|2;1df3|;1df7|2;1dfb|1;1dfe|;1dfr|;1dft|;1dfv|;1dgd|1;1dkw|4;1e6o|9;1e7k|y;1e8k|i;1e94|3;1edd|4e;1eht|t;1eiq|5;1eiy|5;1ej6|5;1eje|2;1ejk|6;1ejs|6;2q68|c;2q6o|2k;2q9c|1o;2qdc|2;2qds|17;2qf4|8;2qfk|1;2t8n|;2t8p|;2tak|;2tes|;2uco|;2ueu|;2vo0|;2x0a|;2x3n|;2xg7|;31cf|;33rf|;353r|1;35er|;3666|;366m|;37jd|;37q3|;37r5|;37ul|;37wp|;39yq|;3a02|;3a20|;3b2v|;3bvb|;3cip|;3czx|;3ddi|;3dks|;3dxt|;3ecc|;3eht|;3gz6|;3i5r|;3id3|;3iex|;3j7s|;3jp4|;3jpx|;3jz4|;3knd|;3kuf|;3kun|;3kup|;3kus|;3l73|;3lax|;3mv3|;3n68|;3on2|;3on7|;3ong|;3qal|;3qij|;3qjb|;3qr4|;3qra|;3qs8|;3rtu|;3s4n|1;3s53|1;3sa5|;3shs|;3skj|;3skv|;3sky|;3sl9|;3sp0|;3spc|;3spf|;3srl|;3svb|;3svj|;3svq|;3svt|;3swd|1;3sxi|;3t0u|1;3t0z|;3t2f|;3t2s|;3t3w|1;3t46|2;3t4a|;3t4c|;3t79|1;3t7x|;3t9p|;3tex|;3tfp|;3tgm|;3th5|;3th8|;3thi|;3thm|;3ti4|;3tmg|;3u13|;3u5b|;3u5e|;3u64|;3u6b|;3uaj|;3uk7|;3ukn|;3unr|;3up5|;3v3d|1;3v6x|;3v7u|;3vf9|;3vfd|;3vg9|;3vjw|;3vk8|;3vl0|;3vo7|;3vq3|;3vq9|;3vqc|;3vyg|;3vys|;3vyv|;3w3m|;3w9f|;3w9k|;3w9t|;3wa1|;3wa3|2;3wa7|;3waq|;3way|1;3wh8|;3whb|;3wkf|;3wld|;3wn1|;3wt5|;3wta|;3wtd|;3wtv|;3wuf|;3wui|;3wv1|;3x1e|;3x1q|;3x4t|;3x61|;3x9l|;3x9p|1;3x9t|;3xa0|1;3xa3|;3xa7|;3xa9|;3xai|;3xam|;3xay|1;3xb8|;3xbd|;3xbg|;3xbj|;3xbn|;3xbq|;3xbs|;3xbw|;3xdd|;3xdr|1;3xe6|;3xhy|;3xi7|;3xmd|1;3xml|;3xmn|;3xmq|1;3xmy|;3xqj|;3xql|;3xqn|1;3xr3|1;3xrc|;3xrh|1;3xsl|;3xug|;3xui|;3xur|;3xuu|;3xuy|;3xx8|;3xxk|;3xxv|;3z9g|;4684|;469i|;4an1|1;4ay4|;")) +r.push(new A.al("Noto Sans Saurashtra","notosanssaurashtra/v19/ea8GacQ0Wfz_XKWXe6OtoA8w8zvmYwTef9ndjhPTSIx9.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;60w|5;61q|;642|1;6bv|2;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6jm|;6qa|;7gs|;xa8|1x;xce|b;")) +r.push(new A.al("Noto Sans Sharada","notosanssharada/v16/gok0H7rwAEdtF9N8-mdTGALG6p0kwoXLPOwr4H8a.ttf","w|10;1y|2;22|4;28|4;2e|14;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;1u9|1;5p3|;5p5|;5p8|1;5pc|;60w|5;61q|;642|1;6bw|1;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6jm|;6qa|;7gs|;1i0w|2n;")) +r.push(new A.al("Noto Sans Shavian","notosansshavian/v15/CHy5V_HZE0jxJBQlqAeCKjJvQBNF4EFQSplv2Cwg.ttf","w|;4g|;1ff4|1b;")) +r.push(new A.al("Noto Sans Siddham","notosanssiddham/v17/OZpZg-FwqiNLe9PELUikxTWDoCCeGqndk3Ic92ZH.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ct|1;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;60w|5;61q|;642|1;6bw|1;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6jm|;6qa|;7gs|;1itc|1h;1iuw|11;")) +r.push(new A.al("Noto Sans Sinhala","notosanssinhala/v26/yMJ2MJBya43H0SUF_WmcBEEf4rQVO2P524V5N_MxQzQtb-tf5dJbC30Fu9zUwg2a5lgLpJwbQRM.ttf","w|2m;4g|3;4l|;4n|4;4t|3;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ct|1;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;1us|1;2o1|2;2o5|h;2oq|n;2pf|8;2pp|;2ps|6;2q2|;2q7|5;2qe|;2qg|7;2qu|9;2r6|2;60w|5;61q|;642|1;6bv|2;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6jm|;6qa|;7gs|;1i3l|j;")) +r.push(new A.al("Noto Sans Sogdian","notosanssogdian/v15/taiQGn5iC4--qtsfi4Jp6eHPnfxQBo--Pm6KHidM.ttf","w|;4g|;18g|;6bw|;7gs|;1hkg|15;")) +r.push(new A.al("Noto Sans Sora Sompeng","notosanssorasompeng/v24/PlIRFkO5O6RzLfvNNVSioxM2_OTrEhPyDLolKvCsHzCxWuGkYHR818DpZXJQd4Mu.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ct|1;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;60w|5;61q|;642|1;6c0|;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6jm|;6qa|;1hw0|o;1hww|9;")) +r.push(new A.al("Noto Sans Soyombo","notosanssoyombo/v15/RWmSoL-Y6-8q5LTtXs6MF6q7xsxgY0FrIFOcK25W.ttf","w|;4g|;7gs|;1jrk|2a;")) +r.push(new A.al("Noto Sans Sundanese","notosanssundanese/v24/FwZw7_84xUkosG2xJo2gm7nFwSLQkdymq2mkz3Gz1_b6ctxpNNHCizv7fQES.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;5fk|1r;5og|7;60w|5;61q|;642|1;6bv|2;6c0|;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6jm|;6qa|;7gs|;")) +r.push(new A.al("Noto Sans Syloti Nagri","notosanssylotinagri/v20/uU9eCAQZ75uhfF9UoWDRiY3q7Sf_VFV3m4dGFVfxN87gsj0.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ct|1;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;1us|1;1ye|9;60w|5;61q|;642|1;6bv|2;6c0|1;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6dx|;6gc|;6jm|;6qa|;7gs|;x6o|18;")) +r.push(new A.al("Noto Sans Syriac","notosanssyriac/v16/Ktk7AKuMeZjqPnXgyqribqzQqgW0LYiVqV7dXcP0C-VD9MaJyZfUL_FC.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;m8|;mb|5;ml|1;mo|1;170|;17f|;17j|;17l|;18g|;18r|a;19c|c;19s|;1ds|d;1e7|1n;1fx|2;60w|5;61q|;642|1;6bw|3;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6dg|;6gc|;6jm|;6qa|;7gs|;7lc|1;")) +r.push(new A.al("Noto Sans TC","notosanstc/v26/-nF7OG829Oofr2wohFbTp9iFOSsLA_ZJ1g.otf","w|2m;4g|2r;7k|3;7u|1;88|3;8z|1;93|1;98|3;9e|1;a0|5;b6|;bk|1;bz|1;ct|f;e0|1;gh|;gx|;jf|;jr|;jt|2;k9|;kq|1;lc|1;lg|;lj|;lo|;pd|g;pv|6;q9|o;sh|;sw|1r;up|;5z2|1;61s|2h;6bm|1;6c0|6;6c8|2;6cc|2;6cg|2;6cl|2;6cw|;6cy|1;6d1|;6d5|3;6de|;6dj|2;6dt|;6es|;6g9|;6gb|1;6hp|1;6io|;6ir|;6it|;6ix|1;6j3|;6j7|;6ja|;6jl|1;6jq|1;6jv|;6jy|;6k5|;6kb|;6lc|b;6ls|b;6mo|9;6ns|1;6o4|2;6ob|1;6og|;6oi|;6ok|;6p2|3;6ph|;6ps|;6pu|1;6px|6;6q7|;6q9|2;6qd|;6qi|;6ql|3;6qr|;6qt|9;6r8|3;6rh|;6rn|;6rp|;6rs|;6rw|;6s2|;6sg|2;6sk|3;6sq|1;6su|1;6sy|1;6t2|1;6te|5;6tm|1;6tx|4;6u8|;6ud|;6v3|;6vu|1;6wf|;6x1|2;6xe|;6xk|;6y1|1;71s|1;726|e;72m|;72y|1;74z|;76o|97;7g1|2;7g6|1;7gc|1;7gg|1;7gm|6;7gu|5;7he|4;7hr|;7i8|3;7id|1;7ih|;7im|1;7iu|1;7j0|3;7jj|;7k0|2;7kw|f;7le|b;7mo|;7nh|1;7pe|;7pv|;7q2|;7r1|;7r3|1;7rq|;7sm|t;7tt|;850|1;88v|;8ai|1;8hx|2;8ii|;8lx|;94q|1;96o|p;97f|2g;9a8|5x;9gw|b;9hc|1r;9j5|2d;9ll|2u;9ol|16;9pt|1e;9r9|15;9sg|17;9ts|z;9v4|1a;9wg|7f;a3x|5u;ab9|;abk|;abu|;abw|;ack|;acz|;ad6|;ad9|1;adv|;ady|;aed|;aen|;af0|;af5|;afc|;afz|;ag4|;ag6|;agr|;ah2|;aim|;aj5|;aj7|;ajd|;ajl|;ajx|;ak0|;ak2|;ak7|1;akk|;al3|1;ald|;alh|;alp|;am7|;am9|;amd|;amf|;ami|;amm|;amq|;amu|;amz|;an1|;anl|2;anv|;any|;ao9|;aoo|;aoq|;aoz|;ap1|;ap9|;aph|;apl|;apq|;apz|2;aq6|;aqn|;aqp|;are|;arl|;asa|;asl|;asq|;ass|;asw|1;at1|;at5|;at8|;atd|;atf|2;atj|1;atv|1;aty|;au5|;au9|1;aud|1;aut|;av5|;av7|;avc|;ave|;avh|;avw|;aw2|1;aw5|;awc|1;awg|;awi|1;awq|;aww|;awz|;axu|;ay7|;azb|;azk|;b09|;b0e|;b12|;b1u|;b20|;b23|;b2n|;b2x|;b34|;b3h|;b3q|;b3s|;b4z|;b5h|;b6o|;b7n|;b7w|;b81|;b84|;b96|;b9k|;b9w|;baf|;baq|;bb3|;bbh|;bc3|;bco|;bcw|;bd5|1;bde|;bdl|;bdn|;bdt|;bdw|;beg|;bfg|;bfm|;bfp|;bfw|;bg8|;bgb|;bge|;bgh|;bgj|;bgm|;bh3|1;bhl|1;bhw|;bij|;biq|;biv|;bj0|;bj2|;bja|1;bkn|;bl7|;blp|;bmi|;bmm|;bmo|;bn4|;bn6|;bn9|;bnf|;bny|;bo9|;boi|;bor|;bp5|;bpe|;bq0|;bq8|;bqp|1;bqz|1;br4|;brp|1;brt|;bs1|;bss|;bsu|;bsy|;bt0|;btj|;btp|;bu4|;bua|2;bv1|;bv5|;bv9|;bvc|;bx0|;byj|;c0b|;c0d|;c0h|;c0m|;c0s|;c17|;c1b|;c2a|1;c2l|;c36|;c3f|;c3q|;c3w|;c3y|;c41|;c4f|;c4i|;c4p|1;c4v|;c51|;c59|;c5h|;c5k|;c5m|;c5r|;c5t|;c6d|;c6l|;c6s|;c73|;c7a|1;c7d|;c7g|1;c7n|;c7v|;c87|1;c8b|;c8j|1;c8n|;c8s|1;c92|;cao|;car|;caw|;cb9|;cc4|;cdk|2;cdp|;cdt|;ce0|;ce7|;cea|;cef|;cei|;cek|;ceo|1;ceu|1;cey|1;cf2|;cf5|1;cfb|;cfd|;cff|1;cfk|;cfn|1;cfu|;cfw|;cfz|1;cg4|;cg6|1;cge|;cib|;cig|1;cir|;cjg|;ck3|;clc|;clk|;clz|;cm4|;cmd|;cml|;cmx|1;cn8|;cnd|;cnx|;cop|;cp1|;cpf|;cpj|;cpu|;cpx|;cq2|;cq7|;cq9|;crs|;cs4|;csb|;csf|;cso|;ct4|;ctb|;cu0|;cu2|;cua|2;cuh|;cum|;cvl|1;cx3|;cx8|;cxa|;cxo|;cxr|;cxt|;cy8|;cz6|;czo|;czu|;czz|;d0b|;d0t|;d0v|;d15|;d1t|;d2b|;d34|;d40|;d4a|;d4m|;d4q|;d58|;d5g|;d5u|;d6d|;d6h|;d6k|;d84|;d8b|1;d8q|;d9n|;dbi|;dcn|;dcq|;ddm|;ddt|;deh|;den|;df1|;df4|;df6|;dfl|1;dg3|;dgl|;dgt|;diy|;djj|;djl|;djz|1;dk2|;dkg|;dkn|;dkt|;dkw|;dkz|;dl1|;dla|;dlp|2;dlt|;dlw|;dm1|3;dmc|;dmr|1;dmx|;dmz|;dna|;dnf|;dnh|;dnr|;dny|;do3|;do6|;dob|;dod|;dof|;doj|;dox|1;dp1|;dp4|;dp8|;dpd|1;dpm|;dpp|;dpz|1;dqd|;dra|;drn|;dsq|;dt5|1;dtv|;dty|;du7|;dud|;duf|;dwb|;dx6|;dxc|;dy9|;dym|;dyz|;dzj|1;e0l|;e0n|;e1f|;e1k|;e2e|;e2s|;e32|1;e4c|;e54|;e5i|;e6t|;e7h|;e7o|;e80|;e8b|;e9j|;eal|;eb5|;ecb|;ect|1;eds|;ee5|;eel|;eer|;eey|;efa|;efl|;efy|;eg5|;ega|;egd|;egf|1;egl|;egs|;egu|;eh1|;ehd|;ehf|;ehx|;ei2|;eia|;eix|;ejl|;ejr|;elb|;elh|;elj|;emn|;en1|;en8|;enp|;eqe|;eqs|;er8|;erc|;es1|;esk|;etb|;ets|;eu1|;eu8|;euk|;euv|;ewf|1;ewi|;ewr|;ewu|;exa|;exc|;exf|;exi|1;exp|;eyl|1;eyo|;f0k|;f0n|;f0u|;f1u|;f23|;f26|;f28|;f2f|;f2v|;f2z|;f3h|;f3r|;f3v|;f3x|;f41|;f45|;f50|;f5a|;f5c|;f5j|;f65|;f6p|1;f71|;f7r|;f7t|;f80|;f90|;fau|1;fbd|;fbl|;fbw|;feo|1;fer|1;fev|a;ff8|2;ffc|2;ffg|;ffi|1;ffl|1;ffo|;ffq|;ffs|;ffu|9;fg6|3;fgb|2;fgf|;fgi|1;fgl|;fgn|2;fgr|;fgt|2;fgy|1;fh2|;fh4|7;fhl|1;fhv|;fi0|;fi6|b;fij|3;fip|4;fiw|3;fj2|8;fjc|;fjf|3;fjn|;fjq|1;fjt|3;fjz|5;fk6|5;fkd|1;fkk|6;fks|3;fkx|;fkz|2;fl4|3;fla|;flc|8;fln|;flp|;flr|6;fm0|3;fm5|8;fmf|3;fml|;fmq|;fmw|1;fn0|1;fn3|1;fn6|2;fna|9;fnl|2;fnp|4;fnv|p;fon|;fop|3;fou|2;foy|p;fpp|;fpr|3;fpw|4;fq2|4;fqa|;fqg|;fqj|;fqm|2;fqq|5;fqx|2;fr1|;fr3|6;frb|a;frn|1;frq|b;fs4|1;fsc|;fse|c;fst|1;fsw|;fsz|;ft1|4;ft7|4;ftd|b;ftq|5;ftx|c;fub|2;fuf|;fuj|1;fuo|1;fur|;fut|a;fv5|;fv7|;fv9|3;fve|c;fvs|8;fw2|5;fwa|;fwd|;fwg|3;fwl|;fwn|1;fwr|3;fww|2;fx0|2;fx4|6;fxe|1;fxi|;fxo|c;fy2|5;fy9|1;fyc|7;fyl|4;fyr|4;fyx|2;fz1|;fz3|2;fz7|7;fzg|5;fzn|3;fzs|1;fzv|j;g0g|5;g0n|1;g0q|;g0s|;g0v|3;g10|2;g15|2;g19|1;g1c|5;g1j|6;g1r|2;g1v|6;g23|2;g29|1;g2c|3;g2h|a;g2t|;g2v|7;g35|;g38|5;g3g|;g3k|;g3m|;g3q|4;g3x|;g3z|;g41|7;g4a|;g4c|;g4e|;g4g|;g4i|;g4k|1;g4n|1;g4q|2;g4u|;g4w|9;g58|2;g5f|h;g5z|1;g63|7;g6c|;g6l|;g6o|1;g6r|3;g6w|2;g70|2;g74|3;g79|7;g7i|;g7k|3;g7q|1;g7w|5;g84|6;g8e|;g8g|8;g8q|2;g8x|;g8z|1;g92|1;g95|6;g9e|;g9g|3;g9l|9;ga0|7;gaa|3;gaf|6;gan|5;gav|6;gb3|2;gb7|1;gba|5;gbj|2;gbn|1;gbq|;gbs|6;gc5|;gc9|;gcb|1;gce|;gcg|3;gcl|;gcn|;gcp|;gcs|1;gcw|3;gd1|4;gd7|;gd9|7;gdi|;gdl|;gdn|;gdr|2;gdv|2;gdz|5;ge6|1;ge9|;ged|1;geg|3;gel|5;get|2;gex|1;gf0|1;gf3|5;gfb|;gfe|;gfg|1;gfj|5;gfr|2;gfv|a;gg7|3;ggc|2;ggh|3;ggn|;ggq|;ggs|5;ggz|1;gh2|1;gh5|;gh8|9;ghj|2;ghn|4;ghu|;ghw|;gi2|;gi6|1;gia|2;gie|4;gik|4;giq|;gis|a;gj4|;gj6|;gj8|;gja|;gjd|;gjf|;gjl|2;gjp|;gjs|5;gk0|2;gk4|;gk6|5;gkf|7;gko|b;gl1|3;gl7|1;gla|;gld|;glf|1;gli|e;gly|;gm0|9;gmb|m;gmz|8;gn9|3;gne|5;gno|;go0|d;gof|9;goq|8;gp0|4;gp7|d;gpm|;gpo|;gpq|;gps|k;gqe|j;gqz|5;gra|;gre|;gri|;grk|b;grx|2;gs1|2;gs7|1;gsa|3;gsf|;gsh|j;gt3|1;gt6|;gta|;gtf|;gth|3;gtm|f;gu3|1;gu6|3;gub|8;gul|6;gut|2;gv0|3;gv5|5;gvd|2;gvl|2;gvp|2;gvt|;gvv|9;gw6|f;gwo|2;gws|1;gwv|;gwx|d;gxc|5;gxl|3;gxr|w;gyp|9;gz0|;gz2|4;gz9|2;gzd|9;gzo|2;gzs|1;gzw|b;h0b|8;h0l|;h0n|;h0p|1;h0s|4;h0y|9;h19|6;h1h|1;h1k|2;h1o|4;h1u|2;h1z|3;h25|1;h28|6;h2g|c;h2u|6;h32|9;h3d|7;h3m|1;h3p|;h3r|3;h3w|3;h41|;h44|4;h4a|5;h4h|6;h4p|;h4s|7;h51|1;h54|5;h5d|;h5f|1;h5i|1;h5m|1;h5p|5;h5w|1;h5z|;h62|1;h65|4;h6f|;h6h|2;h6l|;h6n|5;h6v|6;h76|4;h7c|;h7e|6;h7m|1;h7s|2;h7w|4;h82|2;h8b|;h8d|6;h8l|2;h8p|9;h90|;h93|;h97|;h9b|;h9d|1;h9g|;h9i|5;h9p|;h9r|8;ha2|6;haa|1;hag|;hai|3;han|1;har|2;hav|e;hbb|;hbe|;hbi|;hbn|3;hbs|7;hc1|3;hc6|2;hcb|1;hce|2;hci|;hck|1;hcn|;hcs|b;hd5|;hd8|i;hds|e;he8|;hea|;hec|;heg|1;hej|3;heo|a;hf0|f;hfh|;hfj|1;hfo|;hfr|8;hg1|4;hg7|8;hgi|3;hgo|1;hgr|2;hgv|;hgx|5;hh5|a;hhh|6;hhq|6;hhy|;hi0|2;hi4|5;hib|;hid|7;him|3;hir|;hit|1;hiy|5;hj5|1;hj9|4;hjf|;hji|8;hjs|8;hk2|2;hk7|2;hkb|1;hkf|1;hki|2;hkp|6;hky|5;hl6|;hl8|3;hld|1;hlg|3;hll|1;hlo|1;hlr|1;hlu|;hlw|1;hlz|;hm1|6;hm9|1;hmc|;hmf|1;hmk|;hmm|;hmo|;hms|1;hmv|3;hn2|3;hn7|2;hnb|1;hne|;hng|;hnk|2;hnp|;hnr|;hnt|5;ho0|9;hob|a;hop|1;hot|3;hoy|2;hp2|4;hp9|b;hpo|;hpq|j;hqb|h;hqu|;hqw|6;hr4|1;hr7|3;hrc|r;hs9|4;hsf|;hsh|2;hsl|7;hsu|3;hsz|2;ht3|;ht5|5;htf|;hth|4;hto|2;hts|a;hu4|1;hu8|u;hv4|1;hvb|8;hvl|3;hvq|;hvs|;hvu|2;hvy|9;hw9|9;hwk|3;hwp|3;hwu|m;hxi|9;hxt|;hxv|;hxx|h;hyg|6;hyo|;hyq|9;hz1|2;hz5|2;hz9|;hzb|2;hzf|2;hzj|2;hzn|4;hzt|2;hzx|4;i03|5;i0a|6;i0i|;i0k|;i0o|;i0s|5;i0z|5;i16|7;i1f|5;i1m|3;i1r|;i1u|4;i20|1;i23|3;i28|8;i2i|3;i2n|6;i2v|2;i2z|1;i32|2;i36|1;i39|a;i3m|6;i3u|;i3w|2;i40|;i43|6;i4f|8;i4q|4;i4w|9;i57|;i5a|e;i5q|5;i5x|1;i60|;i62|;i67|;i69|;i6b|2;i6f|f;i6y|;i70|;i72|2;i76|3;i7c|;i7e|;i7g|;i7k|1;i7n|;i7r|5;i7y|3;i84|d;i8j|3;i8o|1;i8s|2;i8w|;i8y|3;i93|3;i98|3;i9d|;i9f|1;i9k|4;i9q|;i9x|1;ia0|5;ia7|6;iah|1;iak|l;ib7|;ib9|3;ibe|;ibl|1;ibq|6;iby|d;ice|1;icl|;ico|2;ics|5;id0|5;id7|2;idb|2;idi|1;idn|7;idw|7;ie5|3;iea|7;iek|;iem|c;if0|7;if9|7;ifi|;ifk|2;ifp|2;ift|;ifv|;ify|;ig2|1;ig5|;ig7|2;igb|1;igf|3;igk|;ign|b;ih0|7;ih9|1;ihe|3;ihj|;ihl|1;iho|6;ihw|;ihz|b;iic|6;iik|1;iio|3;iiu|1;iix|;iiz|;ij1|;ij3|;ij5|1;ij8|4;ijf|;ijh|5;ijp|3;ijv|;ijy|;ik0|5;ik7|;ik9|;ikd|2;iki|2;ikm|;ikp|3;iku|;ikx|1;il0|7;il9|;ilb|6;ilk|1;iln|;ilp|1;ilv|1;ily|2;im5|1;im8|5;img|;imi|5;imr|2;imv|2;imz|8;ina|a;inm|4;ins|8;io2|2;io6|7;iof|;ioi|;iol|2;iop|3;iow|;ioy|6;ip6|4;ipc|9;ipp|1;ipt|1;ipw|a;iq8|j;iqt|4;ir0|;ir2|1;ir5|3;ira|6;iri|1;irl|1;iro|1;irr|1;iru|5;is2|3;is7|1;isa|1;isd|;isf|;isi|7;ist|1;isw|1;isz|;it1|3;it6|2;itc|;itf|3;itk|9;itw|;ity|3;iu4|2;iu9|4;iuf|;iuh|4;iun|5;iuu|3;iuz|8;iv9|7;ivk|2;ivq|3;ivv|1;ivy|3;iw4|b;iwh|1;iwl|2;iwp|c;ix5|;ix8|1;ixb|3;ixg|5;ixn|;ixp|4;ixv|2;iy0|;iy2|1;iy5|2;iy9|;iyb|2;iyf|1;iyi|1;iyl|;iyn|1;iyx|e;izd|5;izk|f;j01|4;j07|;j09|;j0b|;j0g|7;j0p|4;j0w|;j0y|3;j14|3;j19|2;j1e|e;j1u|;j1x|;j1z|;j26|3;j2b|7;j2k|2;j2o|;j2q|;j2s|3;j2y|6;j36|2;j3a|2;j3k|h;j43|c;j4h|;j4j|2;j4n|d;j52|3;j5c|h;j5v|d;j6a|4;j6g|5;j6n|1;j6q|1;j6v|2;j6z|1;j72|2;j76|;j78|;j7a|1;j7f|;j7h|5;j7o|c;j82|4;j88|g;j8q|2;j8u|9;j95|1;j98|2;j9c|3;j9j|;j9l|5;j9s|6;ja0|5;ja7|;ja9|1;jac|;jaf|j;jb0|;jb2|5;jb9|8;jbj|1;jbn|;jbq|;jbs|;jbu|;jby|2;jc2|9;jcd|1;jcg|2;jcl|c;jcz|1;jd3|3;jd8|2;jdc|2;jdg|2;jdl|2;jdr|6;jdz|;je1|5;je8|;jea|2;jee|1;jeh|1;jel|6;jeu|8;jf4|4;jfc|4;jfi|;jfk|6;jfs|;jfx|7;jg6|1;jg9|h;jgs|;jgu|a;jh9|;jhg|;jhi|;jhk|9;jhv|3;ji0|1;ji3|4;ji9|r;jj3|;jj9|;jjf|o;jk7|2;jkb|6;jkj|3;jko|;jl4|7;jld|d;jls|h;jmc|6;jml|;jms|1;jmv|2;jmz|7;jn9|8;jnj|6;jnr|b;jo4|;jo6|3;job|a;jon|a;jp5|;jp9|1;jpc|j;jpx|m;jql|9;jqw|1;jqz|1;jr2|;jra|1;jrd|7;jrm|6;jru|2;jry|a;jsa|6;jsi|9;jst|4;jsz|;jt7|;jt9|1;jtc|4;jtk|9;jtx|4;ju3|i;jun|;juq|;jut|;juv|6;jv3|4;jv9|5;jvg|4;jvm|4;jvt|;jvv|9;jw6|;jwb|a;jwn|;jwp|2;jwt|3;jwy|2;jx2|5;jx9|;jxc|d;jxr|5;jxz|1;jy2|7;jyb|1;jye|1;jyh|1;jyk|5;jyr|6;jyz|b;jzd|7;jzm|7;jzv|;jzx|2;k01|;k03|;k05|1;k08|2;k0d|;k0f|;k0h|;k0j|7;k0s|3;k0y|6;k16|3;k1b|;k1e|a;k1r|a;k23|1;k28|2;k2c|3;k2h|;k2j|7;k2s|1;k2v|1;k2y|2;k32|2;k36|1;k39|4;k3f|4;k3l|5;k3v|9;k46|1;k4a|1;k4d|6;k4l|1;k4o|1;k4s|9;k56|3;k5b|1;k5e|j;k60|;k64|c;k6j|;k6l|9;k6x|1;k75|4;k7b|6;k7j|;k7l|2;k7r|;k7t|f;k8a|2;k8e|6;k8m|8;k8w|;k90|a;k9c|2;k9g|6;k9p|;k9r|3;k9w|;ka0|3;ka5|e;kal|3;kas|;kau|9;kb6|;kba|;kbc|6;kbk|;kbn|1;kbq|3;kbv|3;kc0|4;kc6|3;kcc|;kce|7;kco|8;kcy|7;kd7|;kd9|6;kdh|3;kdm|4;kdt|;kdv|3;ke0|7;kec|5;kej|6;ker|;ket|2;kex|1;kf0|6;kfb|;kfe|l;kg1|6;kg9|;kgb|a;kgn|3;kgs|1;kgv|1;kh0|;kh8|;kha|d;khr|7;ki0|c;kie|9;kiq|5;kix|h;kjg|;kji|6;kjx|;kk0|;kk2|2;kk6|2;kka|8;kkl|1;kko|3;kkt|2;kkx|d;klc|h;klv|3;km5|;kmd|;kmj|;kml|2;kmp|1;kms|5;kmz|h;knj|5;knq|2;knv|2;knz|5;ko6|g;kop|;kot|;kox|;koz|b;kpc|8;kpm|;kpo|5;kpv|1;kpy|6;kq6|f;kqo|l;krb|4;krp|;kru|;krw|;krz|1;ks2|7;ksb|b;kso|4;ksu|1;ksx|16;ku8|;kua|1;kud|1;kui|;kul|1;kuo|1;kur|9;kv2|p;kvt|;kvv|9;kw6|;kw9|8;kwj|3;kwp|;kwx|1;kx0|5;kx7|3;kxd|3;kxi|n;ky7|;ky9|;kyb|e;kyr|;kyt|4;kyz|2;kz6|3;kzc|9;kzn|6;kzv|g;l0d|e;l0t|;l0v|;l0x|;l10|;l12|;l16|;l1a|7;l1j|;l1l|1;l1o|b;l21|f;l2j|4;l2p|a;l31|1;l36|1;l39|8;l3j|2;l3n|1;l3s|9;l45|;l47|1;l4a|2;l4e|3;l4j|;l4m|;l4o|4;l4w|;l4y|3;l54|3;l5b|4;l5i|4;l5p|1;l5s|1;l5v|;l5x|;l60|;l64|1;l67|;l69|e;l6p|2;l6t|9;l74|2;l78|3;l7d|;l7f|1;l7i|9;l7u|;l7x|;l7z|;l82|;l84|;l86|5;l8e|6;l8m|;l8o|2;l8s|3;l8x|;l90|5;l97|;l9a|2;l9e|5;l9m|1;l9p|3;l9u|1;l9x|2;la2|;la4|1;la7|2;lab|a;lan|1;laq|2;lau|2;lay|2;lb2|;lb4|4;lba|2;lbe|2;lbj|1;lbm|1;lbr|f;lc8|1;lcb|2;lcf|2;lcj|3;lco|5;lcv|2;lcz|5;ld6|2;lda|d;ldp|6;ldy|;le1|7;lea|;lec|1;lef|a;let|6;lf1|9;lfc|3;lfh|j;lg2|4;lg8|5;lgf|;lgi|;lgq|a;lh2|h;lhl|e;li1|a;lid|;lif|c;lit|;lix|;lj3|j;ljq|5;ljx|3;lk2|;lk4|u;lla|;llj|5;llq|c;lm4|6;lmc|10;lne|;lno|1;lnu|2;lny|1;lo1|4;lo7|9;loi|;lok|9;lov|n;lpk|f;lq1|5;lq8|;lqa|3;lqi|;lqn|;lqt|;lqw|5;lr3|n;lrs|9;ls3|4;ls9|2;lsd|s;lt7|;lta|1;ltd|3;lti|3;lto|;lty|;lu0|1;lu3|;lu5|3;lua|2;lue|h;luy|1;lv2|14;lw8|5;lwi|;lwo|1;lwr|4;lwx|1;lx0|r;lxu|8;ly4|;ly6|9;lyh|o;lz7|1;lzi|a;lzu|a;m06|1;m09|7;m0i|2;m0m|c;m10|a;m1c|;m1e|5;m1p|p;m2g|c;m2u|9;m37|2;m3c|c;m3q|3;m3v|7;m44|;m46|2;m4a|2;m4e|3;m4j|4;m4p|6;m4x|;m50|g;m5i|6;m5r|6;m5z|5;m66|8;m6g|5;m6o|2;m6s|4;m6y|i;m7i|3;m7o|6;m7w|3;m81|5;m89|2;m8e|1;m8h|5;m8o|2;m8v|2;m8z|4;m95|;m97|6;m9f|2;m9j|7;m9s|;m9w|4;ma2|g;mak|6;mas|;mb3|2;mb7|d;mbm|;mbo|2;mbt|5;mc0|;mc3|;mc7|;mc9|a;mcl|1;mco|1;mcr|1;mcu|8;md6|1;mda|;mdc|7;mdl|b;mdy|4;me4|g;mem|;meo|8;mey|4;mf4|2;mf8|6;mfg|;mfi|4;mfo|;mfq|f;mg7|3;mgc|1;mgf|6;mgn|3;mgs|f;mha|4;mhg|2;mhk|5;mhr|3;mhw|4;mi3|3;mi8|2;mic|2;mig|1;mij|8;mit|2;mix|1;mj0|4;mj7|4;mjd|2;mjh|2;mjm|c;mk0|;mk5|1;mk8|3;mkd|5;mkk|;mkm|6;mkv|1;mky|1;ml1|e;mli|1;mll|1;mlo|;mlq|2;mlu|2;mly|3;mm3|7;mmc|5;mmj|d;mmy|1;mn1|2;mn5|9;mng|4;mnm|;mno|1;mnu|;mnx|;mnz|7;mo9|5;mog|2;mok|;mom|4;mos|;mov|5;mp2|;mp4|3;mpf|1;mpi|c;mpw|;mpz|1;mq2|2;mq7|4;mqe|3;mqj|3;mqq|1;mqt|9;mr4|c;mri|7;mrs|2;mrw|6;ms7|4;msd|5;msl|7;msu|a;mt6|i;mtq|1;mtu|6;mu4|6;muc|9;muq|a;mv2|2;mv6|e;mvm|c;mw0|b;mwd|2;mwj|q;mxd|1;mxg|3;mxl|d;my0|i;myk|;myn|o;mzd|c;mzr|f;n09|1;n0c|7;n0l|8;n0w|;n0y|;n10|1;n13|a;n1f|8;n1p|;n1r|3;n1w|7;n25|6;n2d|1;n2g|;n2i|2;n2n|1;n2r|m;n3g|;n3i|;n3k|2;n3o|4;n3v|;n3x|3;n42|3;n47|1;n4b|f;n4s|3;n4x|1;n51|1;n54|d;n5j|4;n5p|3;n5u|;n5y|2;n62|5;n69|;n6b|2;n6h|4;n6n|1;n6q|5;n6y|6;n76|;n7a|4;n7h|3;n7n|1;n7q|1;n7u|8;n84|1;n88|2;n8d|1;n8i|3;n8n|;n8q|1;n8w|6;n94|d;n9j|1;n9m|8;n9w|1;n9z|d;nae|1;nal|;nan|k;nbb|6;nbj|2;nbn|3;nbt|g;ncc|1;ncf|6;nco|;ncq|3;ncw|;ncy|1;nd2|3;nd8|8;ndi|4;ndo|;ndr|3;ndw|3;ne1|1;ne4|a;neg|7;nep|1;nes|;neu|5;nf2|2;nf6|1;nf9|1;nfd|5;nfl|;nfo|2;nfu|1;nfx|3;ng4|1;ng7|1;nga|1;ngd|2;ngi|4;ngo|2;ngs|2;ngy|2;nh2|;nh5|6;nhd|;nhf|4;nhl|1;nho|9;nhz|5;ni6|;ni9|;nib|2;nif|5;nim|5;nit|;nix|2;nj1|3;nj6|7;njf|;njh|;njj|;njl|d;nk0|;nk3|4;nka|5;nki|;nkk|2;nko|4;nku|5;nl1|a;nle|;nlj|e;nlz|2;nm3|4;nm9|;nmb|;nmd|;nmf|c;nmt|;nmv|1;nmy|3;nn3|8;nnd|6;nnm|3;nnr|;nnt|7;no3|2;no7|7;nog|;noi|1;nol|4;nos|8;np3|7;npe|1;nph|1;npk|1;npo|8;nq0|;nq4|7;nqd|g;nqv|2;nr0|1;nr6|3;nrb|7;nrk|4;nrw|2;ns0|;ns2|;ns4|2;ns8|9;nsp|3;nsu|3;nsz|6;nt8|3;ntd|;ntf|7;ntq|7;ntz|6;nu7|5;nue|;nug|4;num|;nup|;nur|2;nuv|e;nvb|1;nve|1;nvh|8;nvr|3;nvw|9;nw7|;nw9|6;nwh|1;nwk|2;nwp|;nws|;nwu|;nww|4;nx3|;nx5|;nx7|3;nxd|;nxf|c;nxt|5;ny0|a;nyc|8;nyn|m;nzb|4;nzh|;nzk|4;nzt|1;nzw|7;o06|2;o0a|1;o0d|g;o0v|3;o10|a;o1c|4;o1i|5;o1p|4;o1w|2;o20|a;o2c|2;o2g|;o2k|4;o2q|2;o2u|1;o2x|5;o35|;o38|;o3a|2;o3e|1;o3k|;o3m|4;o3s|;o3u|4;o40|5;o47|5;o4e|2;o4i|;o4m|;o4o|;o4q|8;o53|;o55|7;o5f|b;o5w|;o5y|2;o62|2;o67|3;o6d|;o6f|2;o6j|3;o6o|2;o6s|2;o6w|3;o71|4;o77|9;o7j|a;o7y|2;o82|1;o88|4;o8e|a;o8q|2;o8u|7;o93|4;o9b|;o9d|;o9f|;o9k|5;o9r|1;o9u|5;oa1|2;oa5|2;oae|1;oah|8;oas|2;oaw|4;ob2|6;obc|3;obh|3;obm|j;oc8|1;ocb|;ocg|;oci|g;od0|2;od4|;odc|7;odl|;odo|c;oe3|;oea|;oec|1;oef|1;oei|8;oes|9;of4|4;ofg|3;ofl|1;ofo|1;ofr|2;ofy|;og0|1;og4|3;og9|3;oge|2;ogk|1;ogo|k;ohc|4;ohj|c;ohx|2;oi1|9;oid|;oih|;oij|8;oit|8;oj4|;oj7|;oj9|;ojb|2;ojf|5;ojm|3;ojr|3;ojw|1;ok0|1;ok3|1;ok6|1;ok9|4;okf|1;okj|4;okp|7;oky|3;ol4|9;olf|3;olk|2;olo|2;olt|1;olw|4;om4|;om6|1;om9|2;omd|3;omk|;omm|1;omp|4;omw|7;on6|1;on9|;onb|7;onk|7;ont|1;onw|4;oo2|;oo6|2;ooa|;ooc|d;oor|3;oow|y;opx|;oq0|1;oq3|1;oq6|5;oqd|1;oqg|f;oqy|;or1|9;orc|;ore|5;orl|2;orq|5;orx|6;os9|4;osf|2;osj|3;oso|1;osr|4;osx|6;ot8|8;oti|f;otz|b;ouc|3;ouh|7;ouq|2;ouv|a;ov7|7;ovg|;ovi|9;ovt|5;ow3|;ow7|g;owq|b;ox3|;ox5|2;ox9|s;oy4|;oy8|c;oym|5;oyt|;oyv|9;oz6|g;ozq|2;ozu|5;p01|b;p0f|;p0k|;p0s|;p16|;p1j|;p1r|;p27|;p3a|;p4m|4;p4t|4;p4z|2;p53|e;p5k|;p5n|6;p5v|;p5x|9;p68|3;p6d|a;p6r|;p6t|a;p75|6;p7e|4;p7k|9;p7w|n;p8l|;p8n|;p8p|9;p90|1;p93|;p97|8;p9h|g;p9z|h;paj|7;pas|5;paz|6;pb8|2;pbc|2;pbg|;pbi|3;pbn|4;pbt|;pbv|4;pc3|;pc6|2;pca|;pcf|3;pck|;pcm|;pco|;pcq|4;pcx|3;pd2|1;pd8|;pdb|4;pdh|4;pdp|3;pdu|;pdw|3;pe1|3;pe7|1;pea|1;ped|1;peg|5;pen|;pep|2;pet|;pev|;pex|2;pf1|2;pf5|1;pf8|4;pfe|;pfg|1;pfm|8;pfw|5;pg4|a;pgg|1;pgj|3;pgp|;pgs|1;pgv|7;ph4|6;phc|3;phh|5;pho|;phq|;phu|;phw|7;pi5|2;pi9|4;pif|;pih|4;pin|3;pis|;piv|;pix|1;pj1|1;pj6|2;pja|2;pje|c;pjt|3;pjy|;pk0|2;pk4|3;pk9|;pkb|9;pkm|4;pks|1;pkv|1;pky|2;pl2|7;plb|;plf|;plh|;plj|9;plu|1;plx|7;pm6|;pm8|7;pmh|h;pn0|1;pn3|3;pn9|;pnb|4;pnh|d;pnw|3;po2|2;po6|6;poe|4;pok|1;pon|6;pow|2;pp0|2;pp4|;pp6|8;pph|1;ppk|5;ppr|;ppu|8;pq4|4;pqa|;pqc|1;pqf|;pqh|;pqj|;pqm|e;pr2|1;pr5|5;prc|1;prf|4;prl|1;pro|c;ps3|2;ps7|;psa|1;psd|7;pso|3;pst|k;ptf|d;ptu|2;pu2|;pu7|a;puj|1;pum|a;puy|v;pvv|2;pw6|8;pwg|;pwi|;pwk|9;pwv|;pwx|c;pxb|6;pxj|d;pxy|1;pya|1;pye|;pyn|;pyr|5;pyy|5;pz5|;pz7|;pz9|p;q00|;q02|a;q0e|2;q0p|;q0t|i;q1d|;q1f|6;q1n|a;q1z|f;q2g|7;q2p|;q2r|4;q2x|b;q3a|;q3c|;q3f|1;q3k|1;q3n|1;q3q|;q3t|;q3v|l;q4i|c;q4w|p;q5n|f;q65|3;q6a|;q6c|;q6e|;q6g|;q6l|7;q6u|e;q7b|b;q7o|;q7q|;q7s|a;q84|3;q89|b;q8m|1;q8q|1;q8u|;q8x|1;q90|1;q93|5;q9a|6;q9i|a;q9u|o;qak|5;qar|e;qb7|1;qbc|;qbf|;qbh|1;qbk|e;qc1|a;qcd|k;qcz|;qd1|7;qda|;qdc|h;qdv|h;qee|4;qen|2;qer|7;qf1|c;qff|;qfh|5;qfp|5;qfw|a;qg8|a;qgk|;qgm|c;qh0|3;qh5|4;qhb|2;qhf|1;qhi|6;qhq|c;qi4|3;qi9|5;qig|4;qim|2;qiq|1;qit|3;qiz|3;qj4|;qj6|4;qjd|;qjf|1;qji|1;qjl|4;qjr|d;qk7|;qk9|3;qke|;qkl|2;qkq|4;qkw|a;ql8|2;qlc|5;qlj|3;qlp|;qlr|q;qmj|1;qmo|1;qmr|1;qmu|9;qn6|2;qna|;qnc|5;qnj|;qnp|6;qny|;qo0|e;qoh|2;qol|;qoo|4;qou|;qow|a;qp8|2;qpc|5;qpj|1;qpm|2;qpq|5;qpy|;qq4|11;qr7|8;qrh|;qrl|8;qrv|2;qrz|5;qs6|2;qsa|5;qsi|3;qsp|t;qtk|4;qtq|;qtt|3;qty|i;qui|5;quq|5;qux|3;qv2|8;qvc|5;qvj|2;qvn|6;qvv|2;qvz|k;qwl|4;qwr|b;qx4|;qx6|5;qxe|1;qxh|2;qxl|2;qxp|1;qxs|5;qxz|4;qy5|5;qyc|3;qyh|;qyk|8;qyv|2;qyz|8;qz9|d;qzo|;qzr|1;qzu|2;qzy|;r01|1;r04|6;r0c|6;r0l|;r0n|;r0p|7;r0y|;r10|b;r1d|;r1i|2;r1n|1;r1q|k;r2d|2;r2h|3;r2m|;r2o|a;r32|1;r35|6;r3d|a;r3p|3;r3v|3;r41|3;r46|1;r49|;r4b|2;r4f|5;r4m|g;r55|6;r5d|3;r5i|1;r5l|3;r5q|5;r5x|6;r67|;r69|;r6b|5;r6j|4;r6p|6;r6x|1;r70|3;r76|;r7a|1;r7d|1;r7g|5;r7q|;r82|4;r89|4;r8f|a;r8r|2;r8w|4;r92|2;r96|2;r9a|2;r9e|2;r9j|1;r9m|;r9o|;r9q|5;r9x|3;ra3|4;raa|1;rad|;raf|;rah|4;rao|1;ras|;rau|;raw|9;rb8|2;rbc|2;rbg|6;rbo|5;rbv|;rby|;rc0|3;rc6|3;rcb|3;rcg|7;rcp|3;rcu|1;rcx|6;rd7|2;rdb|7;rdk|2;rdo|;rdq|;rds|1;rdv|9;re7|1;rea|;rec|;ree|;reg|8;req|7;rez|2;rf3|;rf5|h;rfo|;rfq|2;rfu|1;rfx|f;rge|4;rgk|4;rgq|m;rhe|6;rhm|7;rhv|;rhx|2;ri1|a;rid|l;rj0|4;rj6|1;rj9|8;rjj|1;rjo|;rjr|4;rjx|9;rk8|;rka|2;rke|2;rki|4;rko|4;rku|2;rlq|;rmq|;rp3|;rp5|;rp7|4;rpd|2;rph|c;rpw|3;rq2|;rq4|1;rq7|;rq9|1;rqc|2;rqg|5;rqn|4;rqt|6;rr1|;rr4|2;rr8|2;rrd|1;rrg|1;rrj|6;rrr|e;rs7|6;rsf|1;rsi|j;rt3|1;rt6|;rt8|1;rtb|;rtd|6;rtl|l;ru8|5;ruf|7;ruo|;ruq|b;rv3|a;rvf|2;rxg|;rxi|3;rxn|5;rxu|2;rxy|5;ry5|;ry8|2;ryc|1;ryh|1;ryk|a;ryx|;ryz|1;rz3|2;rz7|;rz9|a;rzm|5;rzt|1;rzw|;rzy|5;s05|3;s0b|6;s0j|a;s0v|5;s12|6;s1a|6;s1m|;s1o|b;s21|1;s25|u;s31|1;s34|1;s37|3;s3c|2;s3g|6;s3o|c;s43|4;s49|h;s4s|1;s4v|;s4x|7;s56|2;s5a|;s5c|2;s5g|a;s5s|8;s62|;s65|4;s6b|a;s6o|;s6q|;s6u|;s6x|1;s70|1;s74|;s76|1;s7d|6;s7l|3;s7r|1;s7u|8;s84|5;s8b|4;s8h|1;s8k|8;s8u|5;s91|6;s99|1;s9c|g;s9v|3;sa1|1;sa4|4;saa|7;saj|1;sam|d;sb1|n;sbq|1;sby|;scz|;sd7|1;sdb|1;sdf|;sdh|3;sdp|f;se6|1;se9|1;sec|2;seh|e;sey|;sf4|6;sfc|;sfe|1;sfh|1;sfk|;sfo|i;sg8|;sgb|2;sgf|3;sgk|3;sgp|b;sh9|2;shd|7;sho|3;sht|1;shw|;shy|1;si1|d;sig|1;sij|3;sio|4;siv|2;siz|5;sj6|m;sju|1;sjx|;sjz|2;sk4|1;sk7|2;skb|;ske|5;skl|3;skq|;sku|8;sl4|;sl7|;sl9|2;sld|;slf|2;slj|1;slm|1;slq|;slw|9;sm7|6;smg|5;smn|6;smx|g;snf|;snh|5;sno|;snq|e;so6|g;soo|3;sou|3;soz|g;sph|5;spo|;spq|7;spz|3;sq4|;sq6|2;sqa|8;sqk|;sqo|7;sqx|a;sra|;srd|a;srp|;srr|g;ss9|5;ssg|7;ssp|;ssr|6;ssz|7;st8|1;stb|;ste|c;stt|;stv|7;su5|d;suk|e;sv0|;sv2|;sv5|;sv7|5;sve|1;svh|1;svk|a;svw|5;sw4|2;sw8|g;swq|1;swt|a;sx7|5;sxe|;sxi|p;sy9|;syb|a;syo|c;sz2|;sz5|6;szd|3;szi|n;t07|2;t0b|;t0d|4;t0j|h;t12|e;t1i|3;t1n|5;t1u|4;t20|3;t25|k;t2r|3;t2w|1;t30|;t34|i;t3o|8;t3y|g;t4g|1;t4j|b;t4w|a;t58|6;t5g|m;t64|9;t6f|1;t6j|;t6l|;t6n|1;t6q|2;t6u|2;t6y|q;t7q|2;t7w|;t7y|;t80|1;t83|e;t8j|1;t8m|j;t97|;t99|;t9c|;t9g|f;t9x|b;taa|b;tan|3;tas|1;tav|1;taz|;tb1|1;tb4|;tb6|3;tbb|i;tbv|8;tc5|;tcv|;tcy|;tdt|;tdv|;tek|;tfa|;tgt|;thj|;tiv|1;tiy|3;tj3|1;tj6|1;tj9|1;tjc|1;tjf|9;tjq|3;tjv|1;tjy|g;tkg|2;tkl|2;tkp|7;tkz|;tl1|8;tlc|6;tlm|2;tlq|7;tm0|;tmc|;tng|2;tnk|4;tns|;tnu|;tnw|7;to8|5;tof|6;toq|7;toz|1;tp2|;tp4|;tp7|4;tpd|3;tpl|4;tpr|9;tq3|3;tq8|1;tqb|8;tql|2;tqp|8;tqz|1;tr2|;tr5|4;trb|3;trg|;tri|;trk|1;trn|1;trq|;trs|1;trv|2;trz|f;tsi|d;tsx|2;tt1|;tt4|2;ttb|3;ttg|7;ttp|;ttr|1;ttu|7;tu3|;tu5|6;tue|;tug|1;tuj|h;tv2|4;tv8|2;tvc|2;tvh|7;tvq|5;tw1|1;tw5|3;twa|8;twm|;two|2;tws|2;tww|4;tx2|2;tx6|b;txj|4;txp|2;txw|;txz|f;tyg|;tyi|4;typ|3;tyu|5;tz1|c;tzf|5;tzm|7;tzw|5;u03|;u05|1;u0d|1;u0g|3;u0l|1;u0o|3;u0t|b;u16|;u18|c;u1n|6;u1v|1;u1y|3;u23|;u25|3;u2a|3;u2f|2;u2j|;u2p|;u2r|g;u3a|3;u3f|5;u3m|a;u3z|6;u5k|1;u5o|3;u5t|3;u5y|e;u6e|6;u6m|;u6z|1;u72|5;u79|2;u7d|4;u7j|;u7l|1;u7o|2;u7t|1;u7w|2;u80|;u82|1;u85|;u87|3;u8c|;u8e|;u8g|c;u8u|1;u8x|;u90|1;u93|c;u9h|;u9j|c;u9x|;u9z|7;ua8|9;uaj|4;uap|2;uc6|3;ucb|3;uch|;ucj|5;ucq|b;ud4|5;udd|4;udj|;udl|;udn|i;ue7|8;ueh|1;uek|2;ueo|1;ues|b;uf5|6;ufd|8;ufo|2;uft|e;ug9|9;ugk|i;uh4|2;uh8|4;uhe|a;uhq|2;uhu|a;uj3|;ujs|;ujv|;ujx|;ujz|5;uk6|c;ukm|1;ukq|;ukt|;ukv|9;ul8|;ulb|4;uli|1;uln|4;ult|3;uly|1;um1|6;um9|5;umg|a;ums|6;un2|2;un6|3;unb|4;unh|2;unl|4;unr|;unt|3;uny|8;uo8|;uoa|8;uok|2;uoo|3;uov|2;up0|;up2|3;up8|;upb|2;upg|3;upm|9;upx|3;uq3|;uq5|6;uqd|;uqf|;uqi|1;uql|5;uqs|2;uqw|;uqy|1;ur1|3;ur9|1;urc|1;urh|;urj|2;urn|1;urq|4;urz|;us3|4;us9|5;usg|2;usk|9;usw|1;ut0|;ut3|1;ut9|;utb|;ute|;uth|9;uts|;utu|3;utz|;uu3|2;uu7|2;uub|3;uug|1;uuj|2;uun|;uup|6;uux|8;uv8|c;uvm|7;uvx|3;uw2|1;uw6|2;uwd|1;uwh|4;uwn|5;uzp|2;uzt|1;uzx|;v01|6;v09|4;v0f|1;v0i|7;v0s|;v0w|;v0y|;v10|5;v17|;v19|6;v1h|1;v1k|1;v1p|4;v1v|1;v1y|3;v23|;v25|8;v2h|3;v2m|6;v2u|b;v3b|e;v3r|2;v3v|h;v4g|;v4i|2;v4m|n;v5b|;v5d|k;v5z|o;v6p|5;v6w|1;v6z|5;v76|l;v7t|c;v87|8;vat|;vax|4;vb3|f;vbk|i;vc4|d;vck|3;vcr|9;vd2|2;vd8|5;vdf|3;vdk|;vdm|6;vdu|;vdw|4;ve3|;ve5|l;veu|4;vf2|2;vf6|1;vf9|7;vfi|;vfk|;vfm|n;vgb|;vgd|1;vgg|g;vgy|l;vhl|3;vhq|4;vhw|7;vi6|1;vil|1;vio|2;vis|5;vj0|;vj3|1;vj6|;vj8|f;vk7|4;vkg|;1d6o|3;1d6t|2;1d6z|;1d71|;1d79|;1d7b|;1d7e|;1d7m|;1d7x|;1d81|;1d87|;1d89|1;1d8j|;1d8n|1;1d8q|;1d8y|;1d9a|;1d9e|;1d9h|;1d9j|;1d9u|;1d9y|;1da0|1;1da6|;1da8|;1dae|;1dai|;1dam|;1dat|;1db0|;1db3|;1dbp|;1dbv|;1dbx|;1dc5|1;1dc8|;1dco|;1dcs|2;1dcw|;1dd0|;1dd3|;1dd5|;1ddg|1;1ddm|;1ddp|;1ddr|;1ddu|;1ddx|3;1de2|;1de4|1;1df7|2;1dfe|;1dft|;1dfv|;1dgd|1;1dkw|4;1e6o|9;1e7k|y;1e8k|i;1e94|3;1edd|4e;1eht|t;1eiq|5;1eiy|5;1ej6|5;1eje|2;1ejk|6;1ejs|6;2q68|c;2q6o|2k;2q9c|1o;2qdc|2;2qds|17;2qf4|8;2qfk|1;2t5t|;2t6m|;2t6u|;2t72|;2t7s|;2t8m|1;2t8q|;2t90|;2tai|3;2tap|;2tbi|;2tcc|;2tce|;2tco|;2tgk|;2tgp|;2tgr|;2thd|;2thw|;2tiq|;2tj8|;2tjg|;2tjo|;2tkp|;2tln|;2tmc|1;2tnd|;2tni|;2tnk|;2to7|;2tof|1;2tph|;2tqi|;2tr9|;2ts1|;2ts5|2;2ttq|2;2tuo|;2tuv|;2tv9|;2tvt|;2tvv|;2tx1|;2tx8|;2txv|1;2ty7|;2u05|;2u13|;2u1a|;2u1d|1;2u1v|;2u3b|;2u4c|;2u4e|;2u6f|;2u8e|;2u91|;2u9f|;2u9v|;2ua2|;2ua8|;2uad|;2uan|1;2uaz|;2uc1|;2uc5|;2uc9|1;2uco|;2ucw|;2udy|;2ueu|;2uj2|;2uk1|;2um1|;2ur0|;2usz|;2uvp|;2uxi|;2uxv|;2uz8|;2v09|;2v3b|;2v4h|;2v68|;2v73|;2v7u|;2v90|;2v9e|;2v9p|;2vbh|;2vf3|;2vfj|;2vfs|1;2vgf|;2vgm|;2vgr|;2vhe|;2vhn|;2vi3|;2vi7|;2vij|;2vil|;2vj4|;2vjo|;2vju|1;2vk1|2;2vkj|;2vl1|;2vlj|1;2vlo|;2vm5|;2vme|;2vmk|;2vn9|;2vnc|;2vnz|;2vo3|3;2vod|;2vot|;2vpb|;2vpx|;2vqg|;2vqp|1;2vra|3;2vrg|2;2vsf|;2vsh|;2vsk|;2vss|;2vsu|1;2vti|;2vto|;2vtz|;2vua|;2vuw|;2vwk|;2vwp|1;2vwt|4;2vx2|;2vx9|;2vyk|;2vzh|;2vzn|;2vzp|6;2w0c|;2w0m|;2w0o|;2w0t|;2w0y|;2w16|2;2w1i|;2w2f|1;2w2l|;2w3c|3;2w4d|;2w4m|;2w4t|1;2w4w|1;2w57|;2w5o|;2w6c|;2w7h|;2w7k|;2w8d|;2w8k|2;2w8s|;2w9r|;2wa2|3;2wb8|;2wbh|1;2wcv|;2wd8|;2wdr|;2wdx|3;2we3|;2weg|;2weu|;2wf1|;2wfo|;2wfz|2;2wg7|2;2wgf|;2wgj|;2wh0|;2whg|2;2wj3|;2wjf|;2wjh|;2wjp|;2wjs|;2wjz|;2wlc|;2wlj|;2wnt|;2wqk|;2wr3|;2wsc|;2wtk|1;2wts|;2wv7|;2wvy|;2ww2|3;2wxi|;2wxm|;2wz9|1;2wzy|;2x08|;2x0c|;2x1h|1;2x2l|;2x32|;2x3n|;2x3q|;2x44|;2x4v|;2x5e|;2x5g|1;2x6y|;2x7b|;2x86|;2x9k|;2xa5|;2xdj|;2xdu|;2xee|;2xhm|;2xhv|;2xi1|;2xj2|;2xk1|;2xle|;2xmg|;2xmi|;2xmo|2;2xn7|;2xn9|;2xnj|;2xnq|2;2xoa|2;2xoe|;2xot|;2xow|;2xpi|;2xq2|2;2xqv|;2xrg|5;2xrn|1;2xt7|;2xtc|5;2xtv|;2xtz|;2xuh|3;2xun|;2xv3|;2xv9|1;2xvc|4;2xwg|;2xwo|2;2xwt|;2xx5|2;2xxc|;2xxh|;2xxu|;2xy6|;2xy9|3;2xyv|;2xyz|;2xz7|2;2xzy|4;2y0u|1;2y1d|;2y1i|3;2y2i|;2y2r|2;2y34|2;2y39|;2y3g|;2y3m|;2y3r|;2y4b|;2y4k|;2y54|;2y5m|;2y64|;2y68|;2y6b|;2y6g|;2y6u|;2y8r|;2y9f|;2yb1|;2yb8|;2ybp|;2ybv|;2ycj|;2yis|;2ym9|1;2yp6|;2yr4|;2ysi|;2ysl|;2yss|;2yx2|;2yxf|;2yxq|;2yz4|;2z06|;2z0a|;2z0q|;2z0x|;2z1n|;2z21|;2z30|;2z37|;2z3r|;2z3x|;2z61|;2z6s|;2z6w|;2z7s|;2z85|;2z9r|;2z9x|;2zca|;2zdq|;2zdt|;2zfs|;2zid|;2zih|;2zjy|;2zkq|;2zlz|;2zng|;2zoq|;2zq3|;2zqr|;2zqy|;2zs1|;2zsx|;2zsz|;2zuw|;2zy4|;302p|;302t|;3071|;307k|;307r|;308q|;30bp|;30c1|;30cr|;30cx|;30ds|;30e4|;30e9|;30eh|;30ek|;30fh|;30gj|;30gr|;30hc|;30ic|;30jx|;30kv|;30la|;30nv|1;30ob|;30q0|;30qi|;30ra|;30rc|;30tw|2;30uq|;30us|;30uz|;30v3|;30ve|;30xh|;30xt|;30ye|;30z8|1;30zx|;311f|;313z|1;314h|;3165|;316p|;3187|;319i|;31a1|;31an|;31bb|;31bf|;31c0|;31cj|;31ie|;31lb|;31lh|;31ly|;31m0|;31n2|;31nm|;31of|;31oj|;31pm|;31sa|;31se|;31uu|1;31vc|;31vw|;31w1|;31w5|;31wi|;31xk|;31y3|;31y9|;31yh|;31yq|;31yv|;31z6|;31za|;31zd|;3213|1;321e|;322s|;3230|;323r|;324t|;3251|;325c|;325f|1;325z|;327i|;328d|;329i|;329u|;32bc|;32bv|;32cz|;32en|;32ic|;32ks|;32lf|;32nn|;32o4|;32ob|;32p2|;32pp|1;32q6|;32rb|;32rg|;32sa|;32tf|;32v1|;32wt|;32wy|;32xw|1;32yb|;32yw|1;32zu|;3307|2;330v|;331h|;331r|;331t|3;332u|;3332|;3336|;3341|;3349|1;3357|2;336a|;336o|1;337k|;337u|;338f|;33ck|;33d8|;33dq|;33dy|;33ec|1;33eh|1;33em|;33eo|;33gf|;33gw|;33hr|;33hu|;33l1|;33mh|;33n4|;33o1|;33oa|;33on|;33px|;33q1|;33q4|;33qz|;33rh|2;33sj|;33sw|;33tj|;33tm|;33uk|;33uo|;33vd|;33vj|;33w7|;33wu|;33xa|;33xi|;33xp|;33y2|;33z3|;33zi|;3403|;340m|;340w|;3419|;341b|;341r|;342u|;343l|;344i|;3458|;345e|;345x|2;348q|;34jm|;34pz|;34rf|;34ry|;34sa|;34t6|;34uy|;352b|;353t|2;354l|;354n|;3553|2;356k|3;358g|;3597|;35a6|;35an|;35bq|7;35cz|;35dk|;35dy|;35e9|;35f0|5;35fd|;35hk|3;35ix|;35j3|;35jr|;35kn|5;35md|;35mp|;35my|;35nl|;35of|3;35ov|;35pw|;35pz|;35q8|;35qd|;35rf|5;35sh|;35tl|4;35uf|;35vp|;35vv|2;35w1|;35xl|;35y9|;35yk|;35z8|;35zj|;35zt|;360v|1;3610|;361a|;361h|2;361o|;361r|;361t|;362f|;362i|;363n|2;363w|;3645|;364t|;365e|;3664|;366z|;368b|;368m|;368p|;369i|2;369w|;36ab|;36ad|;36at|;36bj|;36bl|;36bt|1;36cu|;36d6|;36dp|;36e2|;36es|;36fc|;36g2|3;36h8|;36hi|;36ho|;36il|;36ip|;36jt|1;36k2|;36k8|;36kk|;36lx|1;36my|1;36nn|;36o7|1;36pl|;36po|;36q6|;36qb|;36qe|;36rp|;36sh|;36uw|;36x4|;36zc|;36zu|;371h|;371w|;372v|;374k|;375y|;376t|;3773|;379r|;37c0|;37de|;37dv|;37gi|;37jd|;37jk|3;37jv|;37jz|2;37kc|;37km|1;37kp|;37lb|;37lf|1;37lq|5;37mq|1;37n8|2;37nf|;37nj|;37nm|;37ns|7;37o4|;37ok|;37on|;37op|;37or|2;37p3|4;37ph|;37ps|;37q2|;37q6|1;37qb|;37qd|;37qk|1;37qu|3;37qz|;37ri|;37rm|1;37rp|;37s1|9;37su|;37sy|;37t1|;37t6|;37ta|3;37tp|;37tx|2;37u9|;37uf|3;37v0|;37v7|3;37vo|3;37w1|2;37wa|2;37wg|;37wn|;37wq|;37wx|;37xb|;37xe|;37xl|;37yn|;381a|;3851|;385l|;389q|1;38ax|;38bd|;38cm|;38cz|;38hk|;38iy|1;38l7|;38ls|;38o5|;38o7|;38r2|;38t8|;38ua|;38ue|;38uv|;38uy|;38vd|;38vs|;38w2|;38z0|;3902|;3925|;3963|;396w|;398d|1;39al|;39b7|;39ba|1;39cw|1;39e8|;39g9|;39hj|;39i0|;39ji|;39jl|;39jn|;39qx|;39r9|;39rj|1;39s6|;39t8|;39ta|;39ui|;39yp|;39yt|;39z3|;39zv|3;3a02|;3a05|1;3a0x|;3a10|;3a1b|;3a2h|;3a39|;3a3f|;3a3k|;3a4l|;3a5x|;3a6p|;3a83|;3a8l|;3aar|;3aba|;3abq|;3acd|;3acl|;3ad9|;3aeq|;3ah3|;3ahr|2;3al3|;3al9|;3alu|;3ao8|;3aou|;3aox|;3apv|;3arq|;3as6|;3auk|;3avg|;3az8|;3b11|;3b18|;3b1q|1;3b2v|;3b3d|;3b78|;3b7t|;3b8z|1;3b9i|;3bac|;3bag|;3bb5|;3bba|;3bc1|;3bd6|;3bdx|;3bf5|;3bfo|;3bgg|1;3bi6|;3bj4|;3bjk|;3bk3|;3bmh|;3bnd|;3bpq|;3brd|;3bsx|2;3bty|;3buk|;3bvb|1;3bx6|;3byj|;3c2p|1;3c4h|;3c4p|;3c5k|;3c6c|;3c77|;3c7r|;3c84|1;3caq|;3cbl|;3cd5|3;3cfh|1;3cfm|;3cgt|;3ck8|;3ckh|;3ckq|1;3cnk|;3cqd|;3cqz|1;3cr5|;3cu6|;3cvp|;3cvs|;3cw2|;3cwg|2;3cy2|;3cyx|;3czo|;3czs|1;3czx|;3d08|;3d3m|;3d6a|;3d7k|;3d7x|;3d8f|;3daq|;3dba|;3df3|;3df5|;3df9|;3dga|;3dgo|;3dh8|;3dhy|;3dj5|;3dll|;3dmb|1;3dn0|;3dp8|;3dqe|;3dr2|;3dri|;3ds8|;3dsa|;3dsj|;3dtz|;3dvy|;3dw1|;3dwm|;3dx5|;3dxt|;3e08|;3e0l|;3e2a|;3e2i|;3e3x|1;3e44|;3e4i|;3e4x|1;3e9x|;3ea2|;3eab|;3ead|;3ear|;3eaw|;3ec0|3;3ecb|;3ed1|;3ede|;3edy|1;3ee5|;3eer|;3ef4|;3egn|;3eht|;3eio|1;3eiu|;3eke|4;3elg|;3elz|1;3em5|;3em8|;3emb|;3emp|;3eoy|8;3eq9|;3er8|;3esg|7;3esu|;3eu4|;3eui|1;3euo|;3ev4|;3ev9|;3evb|;3evm|;3ewy|3;3ey6|;3eya|;3eyf|;3eys|;3eyw|;3eyz|;3ezd|;3f0w|7;3f3a|;3f5f|1;3f6n|;3f6p|;3f7i|;3f8e|1;3f9q|;3fbf|;3fbm|1;3fd4|;3fe5|2;3ff1|;3ff6|;3fg0|;3fg8|;3fgp|;3fgs|1;3fhi|1;3fj8|1;3fjp|;3fm5|;3fob|;3fqf|;3fr4|;3fr9|;3frf|;3fsi|;3fsm|;3fty|;3fwy|;3fyy|;3g1r|;3g2q|;3g40|;3g5g|;3g5i|;3gc4|;3gdf|;3gf4|;3gf8|;3gfx|1;3gg7|;3ggc|;3ghe|;3ghl|;3gid|2;3gk4|;3gnj|;3gol|1;3gox|;3gpq|;3gqs|1;3gss|;3gwo|;3gxc|;3gyl|;3gz6|;3gzs|;3h2c|;3h47|;3h4q|;3h5s|;3h7h|;3h8d|;3h8q|;3h8u|;3ha6|;3har|;3hax|;3hbt|;3hc4|;3hdp|1;3hf8|;3hfq|;3hfv|;3hg8|;3hh4|2;3hhk|;3hid|;3hm7|;3hmc|;3hn6|;3hpo|;3hrl|;3hs5|;3hv3|;3hw3|1;3hwm|;3hwz|;3hxg|;3hxr|;3hy0|;3hz1|;3hzw|;3i31|;3i33|;3i9a|;3id3|;3iex|;3if6|;3ifd|;3ify|;3ig3|1;3ih4|;3iir|;3ij4|;3ikd|1;3ilk|1;3ilw|;3ini|;3iof|;3iot|;3ipb|;3iq1|;3ir3|;3irg|;3itj|;3iu0|;3iu2|;3ivq|;3iws|;3ixn|;3iz1|;3izm|;3j0m|;3j14|;3j1r|;3j22|;3j39|;3j3h|;3j3x|;3j4a|;3j82|;3jag|;3jak|;3jar|;3jb6|;3jep|;3jgc|1;3jho|;3jl4|;3jlg|;3jls|;3jm3|;3jmt|;3jnf|;3jqi|1;3jqq|;3jr0|;3jrs|;3js6|;3jtb|;3jtf|;3k04|;3k17|;3k7h|;3k8j|;3k94|1;3k9i|;3k9w|;3ka0|;3ka4|1;3kam|;3kax|;3kbs|;3kbu|1;3kc8|;3kcc|;3kcg|;3kd8|;3kda|;3kdd|;3kdf|1;3kdj|1;3ke1|3;3ken|;3keu|;3kf9|;3kfd|;3kfm|;3kfq|;3kg4|7;3kgp|1;3kht|2;3kii|2;3kjk|;3kjq|;3kjv|1;3kjy|;3kke|5;3kkl|;3kkq|;3kl8|;3klo|;3klv|;3km9|1;3kmj|2;3kmn|;3kna|;3kng|;3kni|;3knk|;3ko3|3;3koc|;3kpb|;3kpl|;3kpo|1;3kqh|;3kqq|;3kqt|;3kr8|;3krb|;3krd|1;3krr|5;3ks5|;3ksf|;3ksj|;3ksp|;3kt8|1;3ktf|;3kti|;3ktn|;3kts|;3ku1|;3ku3|;3ky2|;3ky5|;3kya|;3l10|;3l3t|;3l4p|;3l73|;3l86|;3l89|;3l9h|1;3lav|;3lbg|;3lbm|1;3lcp|;3ld3|;3lj9|;3lo9|;3loo|;3lor|;3loz|;3lpr|2;3lq8|;3lr8|1;3lrg|1;3lsd|;3lsg|;3lto|;3lu5|;3luj|;3lum|;3lv4|;3lwc|;3lwo|;3lxx|;3lyj|;3me5|;3me8|;3mer|;3mf3|;3mfc|;3mj4|;3mjd|1;3mjp|;3mjr|;3mou|;3mpc|;3mpk|;3mqf|;3mqx|;3mr8|;3mv3|;3mzk|;3n02|;3n4k|;3n68|;3n87|;3nac|;3nbl|;3nca|;3nch|;3ncq|;3ncz|;3nd1|;3ne7|;3net|;3nev|2;3nfh|;3nfu|;3nh9|;3nib|;3nih|;3nl4|;3nm5|;3nr9|;3nri|;3nx1|;3o1f|;3o31|;3o72|;3o7u|;3o8s|;3o9k|;3o9n|;3oc6|;3ocm|;3odp|;3ofc|;3oh8|;3ohc|;3ohv|;3ojc|;3okj|;3okw|;3oon|;3opq|;3or8|;3ouf|;3ovt|;3owx|;3ox9|;3oxf|;3oxk|;3oxq|;3oxz|;3oyr|;3oz7|1;3p00|;3p1u|1;3p2j|;3p2s|1;3p3z|;3p4l|;3p5s|;3p6b|;3p8z|;3p9b|;3p9u|;3p9w|;3p9y|;3pa2|;3pa5|;3pb3|;3pbz|;3pe9|;3pgp|;3pil|;3pkk|;3pln|;3pvq|;3pvv|;3pxd|;3pyq|;3pze|;3pzv|;3q21|;3ri7|;3z9g|;465h|;4663|;4668|;467s|;468k|;4692|;46a5|;46aj|;46fo|;46gi|;46gs|;46hg|;4an1|1;4ay4|;")) +r.push(new A.al("Noto Sans Tagalog","notosanstagalog/v18/J7aFnoNzCnFcV9ZI-sUYuvote1R0wwEAA8jHexnL.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ct|1;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;4jk|l;4kf|;4l1|1;60w|5;61q|;642|1;6bv|2;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6jm|;6qa|;7gs|;")) +r.push(new A.al("Noto Sans Tagbanwa","notosanstagbanwa/v18/Y4GWYbB8VTEp4t3MKJSMmQdIKjRtt_nZRjQEaYpGoQ.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ct|1;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;4l1|1;4m8|c;4mm|2;4mq|1;60w|5;61q|;642|1;6bv|2;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6jm|;6qa|;7gs|;")) +r.push(new A.al("Noto Sans Tai Le","notosanstaile/v17/vEFK2-VODB8RrNDvZSUmVxEATwR58tK1W77HtMo.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ct|1;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;37k|9;500|t;50w|4;60w|5;61q|;642|1;6bv|2;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6jm|;6qa|;7gs|;9hd|1;9hk|3;")) +r.push(new A.al("Noto Sans Tai Tham","notosanstaitham/v19/kJEbBv0U4hgtwxDUw2x9q7tbjLIfbPGHBoaVSAZ3MdLJBCUbPgquyaRGKMw.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ct|1;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;55s|1q;57k|s;58f|a;58w|9;59c|d;60w|5;61q|;642|1;6bv|2;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6jm|;6qa|;6qh|;")) +r.push(new A.al("Noto Sans Tai Viet","notosanstaiviet/v16/8QIUdj3HhN_lv4jf9vsE-9GMOLsaSPZr644fWsRO9w.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;60w|5;61q|;642|1;6bv|2;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6jm|;6qa|;7gs|;x3f|1;xog|1u;xqz|4;")) +r.push(new A.al("Noto Sans Takri","notosanstakri/v21/TuGJUVpzXI5FBtUq5a8bnKIOdTwQNO_W3khJXg.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ct|1;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;1us|1;60w|5;61q|;642|1;6bw|1;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6jm|;6qa|;7gs|;x80|9;1j0g|1k;1j28|9;")) +r.push(new A.al("Noto Sans Tamil","notosanstamil/v27/ieVc2YdFI3GCY6SyQy1KfStzYKZgzN1z4LKDbeZce-0429tBManUktuex7vGo70RqKDt_EvT.ttf","w|2m;4g|3;4l|;4n|4;4t|3;4y|2;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;1u9|1;1us|1;29u|1;29x|5;2a6|2;2aa|3;2ah|1;2ak|;2am|1;2ar|1;2aw|2;2b2|b;2bi|4;2bq|2;2bu|3;2c0|;2c7|;2cm|k;5p6|;60w|5;61q|;642|1;6bv|2;6c0|;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6es|;6f6|2;6gc|;6gp|;6jm|;6qa|;7gs|;xdf|;1ibl|;1ibn|;1id7|1;")) +r.push(new A.al("Noto Sans Tamil Supplement","notosanstamilsupplement/v19/DdTz78kEtnooLS5rXF1DaruiCd_bFp_Ph4sGcn7ax_vsAeMkeq1x.ttf","1ku8|1d;1kvz|;")) +r.push(new A.al("Noto Sans Telugu","notosanstelugu/v25/0FlxVOGZlE2Rrtr-HmgkMWJNjJ5_RyT8o8c7fHkeg-esVC5dzHkHIJQqrEntezbqQUbf-3v37w.ttf","w|2m;4g|3;4l|;4n|4;4t|3;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;1u9|1;1us|1;2dc|c;2dq|2;2du|m;2ei|f;2f1|7;2fa|2;2fe|3;2fp|1;2fs|2;2g0|3;2g6|9;2gn|8;5p6|;5pu|;60w|5;61q|;642|1;6bv|2;6c0|;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6gp|;6jm|;6qa|;7gs|;")) +r.push(new A.al("Noto Sans Thaana","notosansthaana/v23/C8c14dM-vnz-s-3jaEsxlxHkBH-WZOETXfoQrfQ9Y4XrbhLhnu4-tbNu.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ct|1;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;170|;17f|;17j|;19c|c;1hc|1d;60w|5;61q|;642|1;6bv|4;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6jm|;6qa|;7gs|;1e5u|;1e65|;")) +r.push(new A.al("Noto Sans Thai","notosansthai/v20/iJWnBXeUZi_OHPqn4wq6hQ2_hbJ1xyN9wd43SofNWcd1MKVQt_So_9CdU5RtpzF-QRvzzXg.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ct|1;ew|3;fr|;jg|;jq|1;jt|;k7|6;lc|4;li|2;lm|2;lu|;me|2;mp|;2rl|1l;2tb|s;60w|5;61q|;642|1;6bv|2;6c0|;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6jm|;6qa|;7gs|;")) +r.push(new A.al("Noto Sans Tifinagh","notosanstifinagh/v17/I_uzMoCduATTei9eI8dawkHIwvmhCvbn6rnEcXfs4Q.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|6;lu|;mb|;me|2;mp|;60w|5;61q|;642|1;6bw|1;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6cu|;6d5|1;6gc|;6jm|;6qa|;7gs|;8xc|1j;8z3|1;8zj|;")) +r.push(new A.al("Noto Sans Tirhuta","notosanstirhuta/v15/t5t6IQYRNJ6TWjahPR6X-M-apUyby7uGUBsTrn5P.ttf","w|;4g|;1u9|1;1us|1;1ys|3;5pu|;6bw|1;7gs|;x80|9;1im8|1z;1iog|9;")) +r.push(new A.al("Noto Sans Ugaritic","notosansugaritic/v15/3qTwoiqhnSyU8TNFIdhZVCwbjCpkAXXkMhoIkiazfg.ttf","w|;4g|;1f9c|t;1fa7|;")) +r.push(new A.al("Noto Sans Vai","notosansvai/v17/NaPecZTSBuhTirw6IaFn_UrURMTsDIRSfr0.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ct|1;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;60w|5;61q|;642|1;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6jm|;6qa|;wlc|8b;")) +r.push(new A.al("Noto Sans Wancho","notosanswancho/v17/zrf-0GXXyfn6Fs0lH9P4cUubP0GBqAPopiRfKp8.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ct|1;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;60w|5;61q|;642|1;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6jm|;6qa|;7gs|;2ncw|1l;2nen|;")) +r.push(new A.al("Noto Sans Warang Citi","notosanswarangciti/v17/EYqtmb9SzL1YtsZSScyKDXIeOv3w-zgsNvKRpeVCCXzdgA.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ct|1;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;60w|5;61q|;642|1;6bw|1;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6jm|;6qa|;1jfk|2a;1ji7|;")) +r.push(new A.al("Noto Sans Yi","notosansyi/v19/sJoD3LFXjsSdcnzn071rO3apxVDJNVgSNg.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ct|1;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;60w|5;61q|;642|1;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6jm|;6qa|;9hd|1;9hk|9;9hw|7;9ob|;vls|wc;wi8|1i;1edd|;1edo|;1ee2|1;1ee7|;1eg1|4;")) +r.push(new A.al("Noto Sans Zanabazar Square","notosanszanabazarsquare/v16/Cn-jJsuGWQxOjaGwMQ6fOicyxLBEMRfDtkzl4uagQtJxOCEgN0Gc.ttf","w|2m;4g|3;4l|;4n|4;4u|2;50|;52|2;56|1;5b|20;7e|9;7q|5;7y|5;86|1;8a|1;8e|5;8m|1;8p|5;8x|7;96|3;9c|b;9q|3;9w|1;a2|k;ew|3;fr|;jq|1;jt|;k8|5;lc|4;li|2;lm|2;lu|;me|2;60w|5;61q|;642|1;6c3|1;6c8|2;6cc|2;6ci|;6cm|;6d5|1;6gc|;6jm|;6qa|;7gs|;1jpc|1z;")) +q=this.b=A.bG8(new A.aTp(this),r)}return q}, +az8(){var s,r,q,p,o,n=this,m=n.r +if(m!=null){m.delete() +n.r=null +m=n.w +if(m!=null)m.delete() +n.w=null}n.r=$.cM.cB().TypefaceFontProvider.Make() +m=$.cM.cB().FontCollection.Make() +n.w=m +m.enableFontFallback() +n.w.setDefaultFontManager(n.r) +m=n.f +m.ab(0) +for(s=n.d,r=s.length,q=0;q"),s=new A.d1(s,r),s=new A.bZ(s,s.gt(s),r.h("bZ")),r=r.h("ax.E"),q=B.hW;s.u();){p=s.d +if(p==null)p=r.a(p) +switch(p.a.a){case 0:p=p.b +p.toString +o=p +break +case 1:p=p.c +o=new A.I(p.a,p.b,p.c,p.d) +break +case 2:p=p.d.a +p===$&&A.b() +p=p.a.getBounds() +o=new A.I(p[0],p[1],p[2],p[3]) +break +default:continue $label0$1}q=q.he(o)}return q}} +A.aLi.prototype={} +A.B2.prototype={ +tD(a,b){this.b=this.xE(a,b)}, +xE(a,b){var s,r,q,p,o,n +for(s=this.c,r=s.length,q=B.Y,p=0;p=q.c||q.b>=q.d)q=o.b +else{n=o.b +if(!(n.a>=n.c||n.b>=n.d))q=q.oH(n)}}return q}, +tC(a){var s,r,q,p,o +for(s=this.c,r=s.length,q=0;q=o.c||o.b>=o.d))p.lo(a)}}} +A.a7K.prototype={ +lo(a){this.tC(a)}} +A.Xl.prototype={ +tD(a,b){this.b=this.xE(a,b).oH(a.gaGF())}, +lo(a){var s,r,q=this,p=A.Yi() +p.swB(q.r) +s=a.a +s.NN(q.b,q.f,p) +r=p.b +r===$&&A.b() +r.m() +q.tC(a) +s.dq(0)}, +$iasB:1} +A.Yo.prototype={ +tD(a,b){var s,r,q=null,p=this.f,o=a.c.a +o.push(new A.mY(B.a9L,q,q,p,q,q)) +s=this.xE(a,b) +p=p.a +p===$&&A.b() +r=A.bSC(p.a.getBounds()) +if(s.FP(r))this.b=s.he(r) +o.pop()}, +lo(a){var s,r=this,q=a.a +q.eb(0) +s=r.r +q.aFp(0,r.f,s!==B.E) +s=s===B.eW +if(s)q.lF(r.b,null) +r.tC(a) +if(s)q.dq(0) +q.dq(0)}, +$iaw1:1} +A.Yr.prototype={ +tD(a,b){var s,r=null,q=this.f,p=a.c.a +p.push(new A.mY(B.a9J,q,r,r,r,r)) +s=this.xE(a,b) +if(s.FP(q))this.b=s.he(q) +p.pop()}, +lo(a){var s,r,q=a.a +q.eb(0) +s=this.f +r=this.r +q.aFt(s,B.eV,r!==B.E) +r=r===B.eW +if(r)q.lF(s,null) +this.tC(a) +if(r)q.dq(0) +q.dq(0)}, +$iaw4:1} +A.Yq.prototype={ +tD(a,b){var s,r,q,p,o=null,n=this.f,m=a.c.a +m.push(new A.mY(B.a9K,o,n,o,o,o)) +s=this.xE(a,b) +r=n.a +q=n.b +p=n.c +n=n.d +if(s.FP(new A.I(r,q,p,n)))this.b=s.he(new A.I(r,q,p,n)) +m.pop()}, +lo(a){var s,r=this,q=a.a +q.eb(0) +s=r.r +q.aFr(r.f,s!==B.E) +s=s===B.eW +if(s)q.lF(r.b,null) +r.tC(a) +if(s)q.dq(0) +q.dq(0)}, +$iaw3:1} +A.a5F.prototype={ +tD(a,b){var s,r,q,p,o=this,n=null,m=new A.ds(new Float32Array(16)) +m.cd(b) +s=o.r +r=s.a +s=s.b +m.bj(0,r,s) +q=A.h8() +q.vK(r,s,0) +p=a.c.a +p.push(A.bqO(q)) +p.push(new A.mY(B.a9N,n,n,n,n,o.f)) +o.agI(a,m) +p.pop() +p.pop() +o.b=o.b.bj(0,r,s)}, +lo(a){var s,r,q,p=this,o=A.Yi() +o.sa5(0,A.K(p.f,0,0,0)) +s=a.a +s.eb(0) +r=p.r +q=r.a +r=r.b +s.bj(0,q,r) +s.lF(p.b.dw(new A.l(-q,-r)),o) +r=o.b +r===$&&A.b() +r.m() +p.tC(a) +s.dq(0) +s.dq(0)}, +$iaKS:1} +A.OY.prototype={ +tD(a,b){var s=this.f,r=b.M6(s),q=a.c.a +q.push(A.bqO(s)) +this.b=A.bgF(s,this.xE(a,r)) +q.pop()}, +lo(a){var s=a.a +s.eb(0) +s.a_(0,this.f.a) +this.tC(a) +s.dq(0)}, +$iaan:1} +A.a5D.prototype={$iaKQ:1} +A.a8s.prototype={ +lo(a){var s,r,q,p,o,n=this,m=a.a +m.lF(n.b,null) +n.tC(a) +s=A.Yi() +s.sCl(n.f) +s.swB(n.w) +s.sv2(n.x) +r=a.b.a +B.e.an(r.save()) +q=n.r +p=q.a +o=q.b +r.translate(p,o) +r.drawRect(A.iN(new A.I(0,0,0+(q.c-p),0+(q.d-o))),s.a) +o=s.b +o===$&&A.b() +o.m() +r.restore() +m.dq(0)}, +$iaSH:1} +A.a6j.prototype={ +tD(a,b){this.b=this.c.b.dw(this.d)}, +lo(a){var s,r=a.b.a +B.e.an(r.save()) +s=this.d +r.translate(s.a,s.b) +s=this.c.a +s===$&&A.b() +s=s.a +s.toString +r.drawPicture(s) +r.restore()}} +A.a2x.prototype={ +m(){}} +A.aGH.prototype={ +a6B(a,b,c,d){var s,r=this.b +r===$&&A.b() +s=new A.a6j(t.Bn.a(b),a,B.Y) +s.a=r +r.c.push(s)}, +a6E(a){var s=this.b +s===$&&A.b() +t.L6.a(a) +a.a=s +s.c.push(a)}, +aP(){return new A.a2x(new A.aGI(this.a,$.eg().gnt()))}, +ik(){var s=this.b +s===$&&A.b() +if(s===this.a)return +s=s.a +s.toString +this.b=s}, +abZ(a,b,c){return this.vo(new A.Xl(a,b,A.a([],t.k5),B.Y))}, +ac_(a,b,c){return this.vo(new A.Yo(t.E_.a(a),b,A.a([],t.k5),B.Y))}, +ac0(a,b,c){return this.vo(new A.Yq(a,b,A.a([],t.k5),B.Y))}, +ac1(a,b,c){return this.vo(new A.Yr(a,b,A.a([],t.k5),B.Y))}, +Ww(a,b,c){var s=A.h8() +s.vK(a,b,0) +return this.vo(new A.a5D(s,A.a([],t.k5),B.Y))}, +ac2(a,b,c){return this.vo(new A.a5F(a,b,A.a([],t.k5),B.Y))}, +ac4(a,b,c,d){return this.vo(new A.a8s(a,b,c,B.hh,A.a([],t.k5),B.Y))}, +FZ(a,b){return this.vo(new A.OY(new A.ds(A.aqj(a)),A.a([],t.k5),B.Y))}, +aN_(a){var s=this.b +s===$&&A.b() +a.a=s +s.c.push(a) +return this.b=a}, +vo(a){return this.aN_(a,t.vn)}} +A.aGI.prototype={} +A.aCF.prototype={ +aN4(a,b){A.bgD("preroll_frame",new A.aCM(this,a,!0)) +A.bgD("apply_frame",new A.aCN(this,a,!0)) +return!0}} +A.aCM.prototype={ +$0(){var s=this.b.a +s.b=s.xE(new A.aM2(new A.Lz(A.a([],t.YE))),A.h8())}, +$S:0} +A.aCN.prototype={ +$0(){var s=this.a,r=A.a([],t.SJ),q=new A.Yh(r),p=s.a +r.push(p) +s.c.aeJ().af(0,q.gaE5()) +q.aFl(0,B.u) +s=this.b.a +r=s.b +if(!r.gai(r))s.tC(new A.aLi(q,p))}, +$S:0} +A.awn.prototype={} +A.avS.prototype={} +A.Yh.prototype={ +aE6(a){this.a.push(a)}, +eb(a){var s,r,q +for(s=this.a,r=0,q=0;q0))p.ax=null +else{r=a.a +q=new A.avS(r,s) +s=$.cM.cB().MaskFilter.MakeBlur($.bB2()[r.a],s,!0) +s.toString +r=new A.iD(o,t.gA) +r.pj(q,s,o,t.e) +q.c!==$&&A.cl() +q.c=r +p.ax=q}s=p.ax +if(s==null)s=null +else{s=s.c +s===$&&A.b() +s=s.a +s.toString}p.a.setMaskFilter(s)}, +sv2(a){var s,r=this +if(r.ay===a)return +r.ay=a +s=r.as +s=s==null?null:s.XJ(a) +r.a.setShader(s)}, +sa7C(a){var s,r=this +if(r.ch===a)return +r.ch=a +r.Q=null +s=A.bRo(a) +s.toString +s=r.CW=A.aHt(s) +if(r.z){r.Q=s +s=r.CW=A.aHt(new A.AO($.bgX(),s))}s=s.b +s===$&&A.b() +s=s.a +s.toString +r.a.setColorFilter(s)}, +$iD4:1} +A.Iy.prototype={ +gAy(){return this.b}, +sAy(a){var s +if(this.b===a)return +this.b=a +s=this.a +s===$&&A.b() +s=s.a +s.toString +s.setFillType($.aqG()[a.a])}, +wv(a,b,c){var s=this.a +s===$&&A.b() +s=s.a +s.toString +s.addArc(A.iN(a),b*57.29577951308232,c*57.29577951308232)}, +zh(a){var s=this.a +s===$&&A.b() +s=s.a +s.toString +s.addOval(A.iN(a),!1,1)}, +SZ(a,b,c){var s,r,q=A.h8() +q.vK(c.a,c.b,0) +s=A.bm2(q.a) +t.E_.a(b) +q=this.a +q===$&&A.b() +q=q.a +q.toString +r=b.a +r===$&&A.b() +r=r.a +r.toString +A.ca(q,"addPath",[r,s[0],s[1],s[2],s[3],s[4],s[5],s[6],s[7],s[8],!1])}, +fT(a){var s=this.a +s===$&&A.b() +s=s.a +s.toString +s.addRRect(A.W8(a),!1)}, +oy(a){var s=this.a +s===$&&A.b() +s=s.a +s.toString +s.addRect(A.iN(a))}, +wy(a,b,c,d,e){var s=this.a +s===$&&A.b() +s=s.a +s.toString +s.arcToOval(A.iN(b),c*57.29577951308232,d*57.29577951308232,e)}, +a6R(a,b){var s=this.a +s===$&&A.b() +s=s.a +s.toString +A.ca(s,"arcToRotated",[b.a,b.b,0,!0,!1,a.a,a.b])}, +ad(a){var s=this.a +s===$&&A.b() +s.a.close()}, +n(a,b){var s=this.a +s===$&&A.b() +return s.a.contains(b.a,b.b)}, +ku(a){var s=this.a +s===$&&A.b() +s=s.a.getBounds() +return new A.I(s[0],s[1],s[2],s[3])}, +d7(a,b,c){var s=this.a +s===$&&A.b() +s.a.lineTo(b,c)}, +fo(a,b,c){var s=this.a +s===$&&A.b() +s.a.moveTo(b,c)}, +km(a){var s +this.b=B.d1 +s=this.a +s===$&&A.b() +s.a.reset()}, +dw(a){var s,r=this.a +r===$&&A.b() +s=r.a.copy() +A.ca(s,"transform",[1,0,a.a,0,1,a.b,0,0,1]) +r=this.b +s.setFillType($.aqG()[r.a]) +return A.bhT(s,r)}, +$iD6:1} +A.Yl.prototype={ +m(){this.c=!0 +var s=this.a +s===$&&A.b() +s.m()}, +aOr(a,b){var s,r,q,p,o=A.oV(),n=o.c +if(n===$){s=A.c4(self.document,"flt-canvas-container") +o.c!==$&&A.am() +n=o.c=new A.oU(s)}o=n.TX(new A.V(a,b)).a +s=o.getCanvas() +s.clear(A.bld($.bh2(),B.u)) +r=this.a +r===$&&A.b() +r=r.a +r.toString +s.drawPicture(r) +q=o.makeImageSnapshot() +o=$.cM.cB().AlphaType.Premul +r=$.cM.cB().ColorType.RGBA_8888 +p=A.bK5(o,self.window.flutterCanvasKit.ColorSpace.SRGB,r,b,a) +r=q.readPixels(0,0,p) +r=$.cM.cB().MakeImage(p,r,4*a) +if(r==null)throw A.c(A.R("Unable to convert image pixels into SkImage.")) +return A.avR(r,null)}} +A.ta.prototype={ +E6(a){var s +this.a=a +s=new globalThis.window.flutterCanvasKit.PictureRecorder() +this.b=s +return this.c=new A.kU(s.beginRecording(A.iN(a)))}, +EH(){var s,r,q,p=this.b +if(p==null)throw A.c(A.R("PictureRecorder is not recording")) +s=p.finishRecordingAsPicture() +p.delete() +this.b=null +r=new A.Yl(this.a) +q=new A.iD("Picture",t.gA) +q.pj(r,s,"Picture",t.e) +r.a!==$&&A.cl() +r.a=q +return r}, +gaaQ(){return this.b!=null}} +A.aN6.prototype={ +aHh(a){var s,r,q,p +try{p=a.b +if(p.gai(p))return +s=A.oV().a.a6v(p) +$.bgP().x=p +r=new A.kU(s.a.a.getCanvas()) +q=new A.aCF(r,null,$.bgP()) +q.aN4(a,!0) +p=A.oV().a +if(!p.ax)$.fN.cB().c.prepend(p.x) +p.ax=!0 +J.bCH(s) +$.bgP().agk(0)}finally{this.azQ()}}, +azQ(){var s,r +for(s=this.b,r=0;!1;++r)s[r].$0() +for(s=$.mu,r=0;rq.a||a.b>q.b +else r=!1 +if(r){p=a.au(0,1.4) +r=j.a +if(r!=null)r.m() +j.a=null +r=j.y +r.toString +o=p.a +A.Bl(r,o) +r=j.y +r.toString +n=p.b +A.Bk(r,n) +j.ay=p +j.z=B.e.eU(o) +j.Q=B.e.eU(n) +j.JE()}}if(j.b||j.ay==null){r=j.a +if(r!=null)r.m() +j.a=null +j.ax=!1 +r=j.f +if(r!=null)r.releaseResourcesAndAbandonContext() +r=j.f +if(r!=null)r.delete() +j.f=null +r=j.y +if(r!=null){A.hS(r,i,j.e,!1) +r=j.y +r.toString +A.hS(r,h,j.d,!1) +j.y.remove() +j.d=j.e=null}j.z=B.e.eU(a.a) +r=B.e.eU(a.b) +j.Q=r +m=j.y=A.VU(r,j.z) +r=A.b0("true") +if(r==null)r=t.K.a(r) +m.setAttribute("aria-hidden",r) +A.Q(m.style,"position","absolute") +j.JE() +r=t.e +j.e=r.a(A.cA(j.gaox())) +o=r.a(A.cA(j.gaov())) +j.d=o +A.dU(m,h,o,!1) +A.dU(m,i,j.e,!1) +j.c=j.b=!1 +o=$.lw +if((o==null?$.lw=A.Hb():o)!==-1){o=$.e3 +o=!(o==null?$.e3=A.jA(self.window.flutterConfiguration):o).ga7s()}else o=!1 +if(o){o=$.cM.cB() +n=$.lw +if(n==null)n=$.lw=A.Hb() +l=j.r=B.e.an(o.GetWebGLContext(m,r.a({antialias:0,majorVersion:n}))) +if(l!==0){j.f=$.cM.cB().MakeGrContext(l) +if(j.as===-1||j.at===-1){r=j.y +r.toString +o=$.lw +k=A.bF2(r,o==null?$.lw=A.Hb():o) +j.as=B.e.an(k.getParameter(B.e.an(k.SAMPLES))) +j.at=B.e.an(k.getParameter(B.e.an(k.STENCIL_BITS)))}j.a4M()}}j.x.append(m) +j.ay=a}else{r=$.eg().x +if(r==null){r=self.window.devicePixelRatio +if(r===0)r=1}if(r!==j.CW)j.JE()}r=$.eg().x +if(r==null){r=self.window.devicePixelRatio +if(r===0)r=1}j.CW=r +j.ch=a +j.a5q() +r=j.a +if(r!=null)r.m() +return j.a=j.aoM(a)}, +JE(){var s,r,q=this.z,p=$.eg(),o=p.x +if(o==null){o=self.window.devicePixelRatio +if(o===0)o=1}s=this.Q +p=p.x +if(p==null){p=self.window.devicePixelRatio +if(p===0)p=1}r=this.y.style +A.Q(r,"width",A.h(q/o)+"px") +A.Q(r,"height",A.h(s/p)+"px")}, +a5q(){var s=B.e.eU(this.ch.b),r=this.Q,q=$.eg().x +if(q==null){q=self.window.devicePixelRatio +if(q===0)q=1}A.Q(this.y.style,"transform","translate(0, -"+A.h((r-s)/q)+"px)")}, +aoy(a){this.c=!1 +$.bL().Vr() +a.stopPropagation() +a.preventDefault()}, +aow(a){var s=this,r=A.oV() +s.c=!0 +if(r.aKt(s)){s.b=!0 +a.preventDefault()}else s.m()}, +aoM(a){var s,r=this,q=$.lw +if((q==null?$.lw=A.Hb():q)===-1){q=r.y +q.toString +return r.IA(q,"WebGL support not detected")}else{q=$.e3 +if((q==null?$.e3=A.jA(self.window.flutterConfiguration):q).ga7s()){q=r.y +q.toString +return r.IA(q,"CPU rendering forced by application")}else if(r.r===0){q=r.y +q.toString +return r.IA(q,"Failed to initialize WebGL context")}else{q=$.cM.cB() +s=r.f +s.toString +s=A.ca(q,"MakeOnScreenGLSurface",[s,B.e.Bv(a.a),B.e.Bv(a.b),self.window.flutterCanvasKit.ColorSpace.SRGB,r.as,r.at]) +if(s==null){q=r.y +q.toString +return r.IA(q,"Failed to initialize WebGL surface")}return new A.Ym(s,r.r)}}}, +IA(a,b){if(!$.bsk){$.h0().$1("WARNING: Falling back to CPU-only rendering. "+b+".") +$.bsk=!0}return new A.Ym($.cM.cB().MakeSWCanvasSurface(a),null)}, +m(){var s=this,r=s.y +if(r!=null)A.hS(r,"webglcontextlost",s.d,!1) +r=s.y +if(r!=null)A.hS(r,"webglcontextrestored",s.e,!1) +s.e=s.d=null +s.x.remove() +r=s.a +if(r!=null)r.m()}} +A.aWI.prototype={ +$2(a,b){this.a.a.a.flush() +return!0}, +$S:603} +A.Ym.prototype={ +m(){if(this.c)return +this.a.dispose() +this.c=!0}} +A.a9H.prototype={ +aeZ(){var s,r=this,q=r.e,p=q.length +if(p!==0){s=q.pop() +r.d.push(s) +return s}else{q=r.d +if(q.length+p+1>>0 +if((s|2)===s)r=(r|B.e.an($.cM.cB().OverlineDecoration))>>>0 +if((s|4)===s)r=(r|B.e.an($.cM.cB().LineThroughDecoration))>>>0 +b0.decoration=r}if(b!=null)b0.decorationThickness=b +if(d!=null){s=A.Hi(d) +b0.decorationColor=s}if(c!=null)b0.decorationStyle=$.bBc()[c.a] +if(a0!=null)b0.textBaseline=$.bmM()[a0.a] +if(a1!=null)A.bs2(b0,a1) +if(a2!=null)b0.letterSpacing=a2 +if(a3!=null)b0.wordSpacing=a3 +if(a4!=null)A.bs4(b0,a4) +switch(g.ax){case null:case void 0:break +case B.W:A.bs3(b0,!0) +break +case B.p4:A.bs3(b0,!1) +break}q=g.dx +if(q===$){p=A.bl6(g.x,g.y) +g.dx!==$&&A.am() +g.dx=p +q=p}A.bs1(b0,q) +if(a!=null||!1)b0.fontStyle=A.bm1(a,g.r) +if(a6!=null){g=A.Hi(new A.M(a6.y)) +b0.foregroundColor=g}if(a7!=null){o=A.a([],t.A) +for(g=a7.length,n=0;n")),r=r.h("ac.E");p.u();){q=p.d +if(q==null)q=r.a(q) +if(s>=q.startIndex&&s<=q.endIndex)return new A.d8(B.e.an(q.startIndex),B.e.an(q.endIndex))}return B.c0}, +zG(){var s,r,q,p=this.a +p===$&&A.b() +p=J.iP(p.a.getLineMetrics(),t.e) +s=A.a([],t.ER) +for(r=A.k(p),p=new A.bZ(p,p.gt(p),r.h("bZ")),r=r.h("ac.E");p.u();){q=p.d +s.push(new A.Yg(q==null?r.a(q):q))}return s}, +m(){var s=this.a +s===$&&A.b() +s.m() +this.as=!0}} +A.Yg.prototype={ +ga6Y(){return this.a.ascent}, +gU8(){return this.a.descent}, +gadi(){return this.a.ascent}, +gaa2(){return this.a.isHardBreak}, +gqw(){return this.a.baseline}, +gdm(a){var s=this.a +return B.e.bi(s.ascent+s.descent)}, +goU(a){return this.a.left}, +gf3(a){return this.a.width}, +gVI(a){return B.e.an(this.a.lineNumber)}, +$iu1:1} +A.avT.prototype={ +DW(a,b,c,d,e,f){var s;++this.c +this.d.push(f) +s=e==null?b:e +A.ca(this.a,"addPlaceholder",[a*f,b*f,$.bB6()[c.a],$.bmM()[0],s*f])}, +a6D(a,b,c,d,e){return this.DW(a,b,c,d,e,1)}, +a6C(a,b,c,d){return this.DW(a,b,c,null,null,d)}, +DY(a){var s=A.a([],t.s),r=B.b.ga1(this.e),q=r.x +if(q!=null)s.push(q) +q=r.y +if(q!=null)B.b.I(s,q) +$.as().gF1().gUV().aHt(a,s) +this.a.addText(a)}, +aP(){var s,r,q,p,o,n,m,l,k,j="Paragraph" +if($.bAe()){s=this.a +r=B.O.hu(0,new A.hQ(s.getText())) +q=A.bJM($.bBL(),r) +p=q==null +o=p?null:q.i(0,r) +if(o!=null)n=o +else{m=A.bwy(r,B.tV) +l=A.bwy(r,B.tU) +n=new A.ak3(A.bSv(r),l,m)}if(!p){p=q.c +k=p.i(0,r) +if(k==null)q.ZA(0,r,n) +else{m=k.d +if(!J.i(m.b,n)){k.er(0) +q.ZA(0,r,n)}else{k.er(0) +l=q.b +l.K_(m) +l=l.a.b.HG() +l.toString +p.p(0,r,l)}}}s.setWordsUtf16(n.c) +s.setGraphemeBreaksUtf16(n.b) +s.setLineBreaksUtf16(n.a)}s=this.a +n=s.build() +s.delete() +s=new A.Yj(this.b) +r=new A.iD(j,t.gA) +r.pj(s,n,j,t.e) +s.a!==$&&A.cl() +s.a=r +return s}, +gabQ(){return this.c}, +ik(){var s=this.e +if(s.length<=1)return +s.pop() +this.a.pop()}, +Bm(a4){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2=this.e,a3=B.b.ga1(a2) +t.BQ.a(a4) +s=a4.a +if(s==null)s=a3.a +r=a4.b +if(r==null)r=a3.b +q=a4.c +if(q==null)q=a3.c +p=a4.d +if(p==null)p=a3.d +o=a4.e +if(o==null)o=a3.e +n=a4.f +if(n==null)n=a3.f +m=a4.w +if(m==null)m=a3.w +l=a4.x +if(l==null)l=a3.x +k=a4.y +if(k==null)k=a3.y +j=a4.z +if(j==null)j=a3.z +i=a4.Q +if(i==null)i=a3.Q +h=a4.as +if(h==null)h=a3.as +g=a4.at +if(g==null)g=a3.at +f=a4.ax +if(f==null)f=a3.ax +e=a4.ch +if(e==null)e=a3.ch +d=a4.CW +if(d==null)d=a3.CW +c=a4.cx +if(c==null)c=a3.cx +b=a4.db +if(b==null)b=a3.db +a=A.bhV(e,s,r,q,p,o,l,k,a3.cy,j,a3.r,b,n,d,g,f,i,a3.ay,c,m,h) +a2.push(a) +a2=a.CW +s=a2==null +if(!s||a.ch!=null){a0=s?null:a2.a +if(a0==null){a0=$.byi() +a2=a.a +a2=a2==null?null:a2.gk(a2) +if(a2==null)a2=4278190080 +a0.setColorInt(a2)}a2=a.ch +a1=a2==null?null:a2.a +if(a1==null)a1=$.byh() +this.a.pushPaintStyle(a.gYu(),a0,a1)}else this.a.pushStyle(a.gYu())}} +A.bdS.prototype={ +$1(a){return this.a===a}, +$S:10} +A.Ky.prototype={ +K(){return"IntlSegmenterGranularity."+this.b}} +A.XS.prototype={ +j(a){return"CanvasKitError: "+this.a}} +A.Yt.prototype={ +aft(a,b){var s={} +s.a=!1 +this.a.Cg(0,A.ae(J.b3(a.b,"text"))).b9(new A.awb(s,b),t.P).me(new A.awc(s,b))}, +aeq(a){this.b.GN(0).b9(new A.aw9(a),t.P).me(new A.awa(this,a))}} +A.awb.prototype={ +$1(a){var s=this.b +if(a){s.toString +s.$1(B.aK.e4([!0]))}else{s.toString +s.$1(B.aK.e4(["copy_fail","Clipboard.setData failed",null])) +this.a.a=!0}}, +$S:131} +A.awc.prototype={ +$1(a){var s +if(!this.a.a){s=this.b +s.toString +s.$1(B.aK.e4(["copy_fail","Clipboard.setData failed",null]))}}, +$S:29} +A.aw9.prototype={ +$1(a){var s=A.ap(["text",a],t.N,t.z),r=this.a +r.toString +r.$1(B.aK.e4([s]))}, +$S:408} +A.awa.prototype={ +$1(a){var s +if(a instanceof A.F2){A.BQ(B.F,null,t.H).b9(new A.aw8(this.b),t.P) +return}s=this.b +A.rM("Could not get text from clipboard: "+A.h(a)) +s.toString +s.$1(B.aK.e4(["paste_fail","Clipboard.getData failed",null]))}, +$S:29} +A.aw8.prototype={ +$1(a){var s=this.a +if(s!=null)s.$1(null)}, +$S:20} +A.aw5.prototype={ +Cg(a,b){return this.afs(0,b)}, +afs(a,b){var s=0,r=A.y(t.y),q,p=2,o,n,m,l,k +var $async$Cg=A.u(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:p=4 +m=self.window.navigator.clipboard +m.toString +b.toString +s=7 +return A.t(A.ly(m.writeText(b),t.z),$async$Cg) +case 7:p=2 +s=6 +break +case 4:p=3 +k=o +n=A.ai(k) +A.rM("copy is not successful "+A.h(n)) +m=A.d3(!1,t.y) +q=m +s=1 +break +s=6 +break +case 3:s=2 +break +case 6:q=A.d3(!0,t.y) +s=1 +break +case 1:return A.w(q,r) +case 2:return A.v(o,r)}}) +return A.x($async$Cg,r)}} +A.aw6.prototype={ +GN(a){var s=0,r=A.y(t.N),q +var $async$GN=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:q=A.ly(self.window.navigator.clipboard.readText(),t.N) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$GN,r)}} +A.aAP.prototype={ +Cg(a,b){return A.d3(this.aAN(b),t.y)}, +aAN(a){var s,r,q,p,o="-99999px",n="transparent",m=A.c4(self.document,"textarea"),l=m.style +A.Q(l,"position","absolute") +A.Q(l,"top",o) +A.Q(l,"left",o) +A.Q(l,"opacity","0") +A.Q(l,"color",n) +A.Q(l,"background-color",n) +A.Q(l,"background",n) +self.document.body.append(m) +s=m +A.bp0(s,a) +s.focus() +s.select() +r=!1 +try{r=self.document.execCommand("copy") +if(!r)A.rM("copy is not successful")}catch(p){q=A.ai(p) +A.rM("copy is not successful "+A.h(q))}finally{s.remove()}return r}} +A.aAQ.prototype={ +GN(a){return A.oi(new A.F2("Paste is not implemented for this browser."),null,t.N)}} +A.awk.prototype={ +K(){return"ColorFilterType."+this.b}} +A.aAi.prototype={} +A.aBY.prototype={ +ga7s(){var s=this.b +if(s==null)s=null +else{s=s.canvasKitForceCpuOnly +if(s==null)s=null}return s===!0}, +gaGN(){var s=this.b +if(s==null)s=null +else{s=s.debugShowSemanticsNodes +if(s==null)s=null}return s===!0}, +gacz(){var s=this.b +if(s==null)s=null +else{s=s.renderer +if(s==null)s=null}if(s==null){s=self.window.flutterWebRenderer +if(s==null)s=null}return s}} +A.ayi.prototype={ +$1(a){return this.a.warn(a)}, +$S:11} +A.ayk.prototype={ +$1(a){a.toString +return A.bs(a)}, +$S:478} +A.a1R.prototype={ +gaL(a){return B.e.an(this.b.status)}, +gaFK(){var s=this.b.headers,r=s.get("Content-Length") +if(r==null)r=null +if(r==null)return null +return A.lW(r,null)}, +gLy(){var s=this.b,r=B.e.an(s.status)>=200&&B.e.an(s.status)<300,q=B.e.an(s.status),p=B.e.an(s.status),o=B.e.an(s.status)>307&&B.e.an(s.status)<400 +return r||q===0||p===304||o}, +gBi(){var s=this +if(!s.gLy())throw A.c(new A.a1Q(s.a,s.gaL(s))) +return new A.aFe(s.b)}, +$ibq2:1} +A.aFe.prototype={ +aa(a,b,c){var s=0,r=A.y(t.H),q=this,p,o,n +var $async$aa=A.u(function(d,e){if(d===1)return A.v(e,r) +while(true)switch(s){case 0:n=q.a.body.getReader() +p=t.e +case 2:if(!!0){s=3 +break}s=4 +return A.t(A.ly(n.read(),p),$async$aa) +case 4:o=e +if(o.done){s=3 +break}b.$1(c.a(o.value)) +s=2 +break +case 3:return A.w(null,r)}}) +return A.x($async$aa,r)}, +wz(){var s=0,r=A.y(t.pI),q,p=this,o +var $async$wz=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:s=3 +return A.t(A.ly(p.a.arrayBuffer(),t.X),$async$wz) +case 3:o=b +o.toString +q=t.pI.a(o) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$wz,r)}} +A.a1Q.prototype={ +j(a){return'Flutter Web engine failed to fetch "'+this.a+'". HTTP request succeeded, but the server responded with HTTP status '+this.b+"."}, +$icm:1} +A.Kj.prototype={ +j(a){return'Flutter Web engine failed to complete HTTP request to fetch "'+this.a+'": '+A.h(this.b)}, +$icm:1} +A.a0e.prototype={} +A.Jk.prototype={} +A.beM.prototype={ +$2(a,b){this.a.$2(J.iP(a,t.e),b)}, +$S:492} +A.bej.prototype={ +$1(a){var s=A.dH(a,0,null) +if(B.ad9.n(0,B.b.ga1(s.gBh())))return s.j(0) +self.window.console.error("URL rejected by TrustedTypes policy flutter-engine: "+a+"(download prevented)") +return null}, +$S:497} +A.afk.prototype={ +u(){var s=++this.b,r=this.a +if(s>r.length)throw A.c(A.R("Iterator out of bounds")) +return s"))}, +gt(a){return B.e.an(this.a.length)}} +A.afp.prototype={ +u(){var s=++this.b,r=this.a +if(s>r.length)throw A.c(A.R("Iterator out of bounds")) +return s"))}, +gt(a){return B.e.an(this.a.length)}} +A.a0d.prototype={ +gH(a){var s=this.b +s===$&&A.b() +return s}, +u(){var s=this.a.next() +if(s.done)return!1 +this.b=this.$ti.c.a(s.value) +return!0}} +A.a15.prototype={ +a6G(a){var s,r=this +if(!J.i(a,r.e)){s=r.e +if(s!=null)s.remove() +r.e=a +s=r.b +s.toString +a.toString +s.append(a)}}, +garr(){var s=this.w +s===$&&A.b() +return s}, +ado(){var s=this.d.style,r=$.eg().x +if(r==null){r=self.window.devicePixelRatio +if(r===0)r=1}A.Q(s,"transform","scale("+A.h(1/r)+")")}, +awd(a){var s +this.ado() +s=$.fI() +if(!B.oD.n(0,s)&&!$.eg().aKw()&&$.aqR().c){$.eg().a7K(!0) +$.bL().Vr()}else{s=$.eg() +s.zH() +s.a7K(!1) +$.bL().Vr()}}, +afA(a){var s,r,q,p,o,n=self.window.screen +if(n!=null){s=n.orientation +if(s!=null){p=J.ak(a) +if(p.gai(a)){s.unlock() +return A.d3(!0,t.y)}else{r=A.bG6(A.ae(p.gN(a))) +if(r!=null){q=new A.aD(new A.a8($.a9,t.tq),t.VY) +try{A.ly(s.lock(r),t.z).b9(new A.aC2(q),t.P).me(new A.aC3(q))}catch(o){p=A.d3(!1,t.y) +return p}return q.a}}}}return A.d3(!1,t.y)}, +aEc(a){var s,r=this,q=$.dv(),p=r.c +if(p==null){s=A.c4(self.document,"flt-svg-filters") +A.Q(s.style,"visibility","hidden") +if(q===B.ah){q=r.f +q===$&&A.b() +r.a.a71(s,q)}else{q=r.w +q===$&&A.b() +q.insertBefore(s,q.firstChild)}r.c=s +q=s}else q=p +q.append(a)}, +MT(a){if(a==null)return +a.remove()}} +A.aC2.prototype={ +$1(a){this.a.cM(0,!0)}, +$S:29} +A.aC3.prototype={ +$1(a){this.a.cM(0,!1)}, +$S:29} +A.aAh.prototype={} +A.a7Y.prototype={} +A.yA.prototype={} +A.al_.prototype={} +A.aQz.prototype={ +eb(a){var s,r,q=this,p=q.EY$ +p=p.length===0?q.a:B.b.ga1(p) +s=q.th$ +r=new A.ds(new Float32Array(16)) +r.cd(s) +q.a9l$.push(new A.al_(p,r))}, +dq(a){var s,r,q,p=this,o=p.a9l$ +if(o.length===0)return +s=o.pop() +p.th$=s.b +o=p.EY$ +r=s.a +q=p.a +while(!0){if(!!J.i(o.length===0?q:B.b.ga1(o),r))break +o.pop()}}, +bj(a,b,c){this.th$.bj(0,b,c)}, +hF(a,b,c){this.th$.hF(0,b,c)}, +tJ(a,b){this.th$.acN(0,B.Jb,b)}, +a_(a,b){this.th$.f_(0,new A.ds(b))}} +A.bgk.prototype={ +$1(a){$.bl3=!1 +$.bL().pK("flutter/system",$.bAn(),new A.bgj())}, +$S:46} +A.bgj.prototype={ +$1(a){}, +$S:48} +A.aCe.prototype={ +aHt(a,b){var s,r,q,p,o,n=this,m=A.aY(t.S) +for(s=new A.aQs(a),r=n.d,q=n.c;s.u();){p=s.d +if(!(p<160||r.n(0,p)||q.n(0,p)))m.G(0,p)}if(m.a===0)return +o=A.aa(m,!0,m.$ti.c) +if(n.a.aeF(o,b).length!==0)n.aE9(o)}, +aE9(a){var s=this +s.ax.I(0,a) +if(!s.ay){s.ay=!0 +s.as=A.BQ(B.F,new A.aCl(s),t.H)}}, +apT(){var s,r +this.ay=!1 +s=this.ax +if(s.a===0)return +r=A.aa(s,!0,A.k(s).c) +s.ab(0) +this.aHV(r)}, +aHV(a){var s,r,q,p,o,n,m,l=this,k=A.aY(t.Te),j=t.S,i=A.aY(j),h=A.aY(j) +for(s=a.length,r=l.f,q=r.$ti.h("G<1>"),r=r.a,p=0;p"),q=A.k(b1),p=q.h("mp<1>"),q=q.c,s=s.c,o=a7.r,n=a7.Q,m=b0==="ko",l=b0==="ja",k=b0==="zh-HK",j=b0!=="zh-Hant",i=b0!=="zh-Hans",h=b0!=="zh-CN",g=b0!=="zh-SG",f=b0==="zh-MY",e=b0!=="zh-TW",b0=b0==="zh-MO",d=a7.z,c=a7.y,b=a7.x,a=a7.w;b1.a!==0;){a0={} +B.b.ab(a9) +for(a1=new A.mp(b2,b2.r,r),a1.c=b2.e,a2=0;a1.u();){a3=a1.d +if(a3==null)a3=s.a(a3) +for(a4=new A.mp(b1,b1.r,p),a4.c=b1.e,a5=0;a4.u();){a6=a4.d +if(a3.n(0,a6==null?q.a(a6):a6))++a5}if(a5>a2){B.b.ab(a9) +a9.push(a3) +a2=a5}else if(a5===a2)a9.push(a3)}if(a2===0)break +a0.a=B.b.gN(a9) +if(a9.length>1)if(B.b.a9a(a9,new A.aCn(a7))){if(!i||!h||!g||f){if(B.b.n(a9,o))a0.a=o}else if(!j||!e||b0){if(B.b.n(a9,a))a0.a=a}else if(k){if(B.b.n(a9,b))a0.a=b}else if(l){if(B.b.n(a9,c))a0.a=c}else if(m){if(B.b.n(a9,d))a0.a=d}else if(B.b.n(a9,o))a0.a=o}else if(B.b.n(a9,n))a0.a=n +else if(B.b.n(a9,o))a0.a=o +b1.a0E(new A.aCo(a0),!0) +a8.G(0,a0.a)}return a8}} +A.aCf.prototype={ +$1(a){return a.a==="Noto Sans SC"}, +$S:65} +A.aCg.prototype={ +$1(a){return a.a==="Noto Sans TC"}, +$S:65} +A.aCh.prototype={ +$1(a){return a.a==="Noto Sans HK"}, +$S:65} +A.aCi.prototype={ +$1(a){return a.a==="Noto Sans JP"}, +$S:65} +A.aCj.prototype={ +$1(a){return a.a==="Noto Sans KR"}, +$S:65} +A.aCk.prototype={ +$1(a){return a.a==="Noto Sans Symbols"}, +$S:65} +A.aCm.prototype={ +$0(){return A.a([],t.oR)}, +$S:617} +A.aCl.prototype={ +$0(){var s=0,r=A.y(t.H),q=this,p +var $async$$0=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:p=q.a +p.apT() +p.ay=!1 +p=p.b +p===$&&A.b() +s=2 +return A.t(p.aPg(),$async$$0) +case 2:return A.w(null,r)}}) +return A.x($async$$0,r)}, +$S:2} +A.aCn.prototype={ +$1(a){var s=this.a +return a===s.r||a===s.w||a===s.x||a===s.y||a===s.z}, +$S:65} +A.aCo.prototype={ +$1(a){return this.a.a.n(0,a)}, +$S:56} +A.a0S.prototype={ +aPg(){var s=this.f +if(s==null)return A.d3(null,t.H) +else return s.a}, +G(a,b){var s,r,q=this +if(q.c.n(0,b)||q.d.ao(0,b.b))return +s=q.d +r=s.a +s.p(0,b.b,b) +if(q.f==null)q.f=new A.aD(new A.a8($.a9,t.b),t.gR) +if(r===0)A.d2(B.F,q.gO5())}, +u1(){var s=0,r=A.y(t.H),q=this,p,o,n,m,l,k,j,i +var $async$u1=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:j=A.F(t.N,t.uz) +i=A.a([],t.s) +for(p=q.d,o=p.gbw(p),n=A.k(o),n=n.h("@<1>").S(n.z[1]),o=new A.c2(J.ao(o.a),o.b,n.h("c2<1,2>")),m=t.H,n=n.z[1];o.u();){l=o.a +if(l==null)l=n.a(l) +j.p(0,l.b,A.BP(new A.aBd(q,l,i),m))}s=2 +return A.t(A.q8(j.gbw(j),m),$async$u1) +case 2:B.b.oh(i) +for(o=i.length,n=q.a,m=n.at,k=0;k").S(s.z[1]),o=new A.c2(J.ao(o.a),o.b,s.h("c2<1,2>")),s=s.z[1];o.u();){r=o.a +for(r=J.ao(r==null?s.a(r):r);r.u();){q=r.gH(r) +q.b.$1(q.a)}}p.b=p.a +p.a=null}, +ZM(a,b){var s,r=this,q=r.a +if(q==null)q=r.a=A.F(t.N,r.$ti.h("e>")) +s=q.i(0,a) +if(s==null){s=A.a([],r.$ti.h("G>")) +q.p(0,a,s) +q=s}else q=s +q.push(b)}, +aO1(a){var s,r,q=this.b +if(q==null)return null +s=q.i(0,a) +if(s==null||s.length===0)return null +r=(s&&B.b).jO(s,0) +this.ZM(a,r) +return r.a}} +A.Fy.prototype={} +A.M9.prototype={ +gkX(){return this.cx}, +zj(a){var s=this +s.Hm(a) +s.cx=a.cx +s.cy=a.cy +s.db=a.db +a.cx=null}, +bJ(a){var s,r=this,q="transform-origin",p=r.wL("flt-backdrop") +A.Q(p.style,q,"0 0 0") +s=A.c4(self.document,"flt-backdrop-interior") +r.cx=s +A.Q(s.style,"position","absolute") +s=r.wL("flt-backdrop-filter") +r.cy=s +A.Q(s.style,q,"0 0 0") +s=r.cy +s.toString +p.append(s) +s=r.cx +s.toString +p.append(s) +return p}, +py(){var s=this +s.Cv() +$.hm.MT(s.db) +s.cy=s.cx=s.db=null}, +i4(){var s,r,q,p,o,n,m,l,k,j,i,h,g=this,f=t.m1.a(g.CW) +$.hm.MT(g.db) +g.db=null +s=g.fr +r=g.f +if(s!=r){r.toString +q=new A.ds(new Float32Array(16)) +if(q.k0(r)===0)A.q(A.eR(r,"other","Matrix cannot be inverted")) +g.dy=q +g.fr=g.f}s=$.eg() +p=s.x +if(p==null){r=self.window.devicePixelRatio +p=r===0?1:r}r=g.dy +r===$&&A.b() +o=A.bgF(r,new A.I(0,0,s.gnt().a*p,s.gnt().b*p)) +n=o.a +m=o.b +l=o.c-n +k=o.d-m +j=g.e +for(;j!=null;){if(j.gFj()){i=g.dx=j.w +n=i.a +m=i.b +l=i.c-n +k=i.d-m +break}j=j.e}h=g.cy.style +A.Q(h,"position","absolute") +A.Q(h,"left",A.h(n)+"px") +A.Q(h,"top",A.h(m)+"px") +A.Q(h,"width",A.h(l)+"px") +A.Q(h,"height",A.h(k)+"px") +s=$.dv() +if(s===B.cP){A.Q(h,"background-color","#000") +A.Q(h,"opacity","0.2")}else{if(s===B.ah){s=g.cy +s.toString +A.hn(s,"-webkit-backdrop-filter",f.gUP())}s=g.cy +s.toString +A.hn(s,"backdrop-filter",f.gUP())}}, +c_(a,b){var s=this +s.u3(0,b) +if(!s.CW.l(0,b.CW))s.i4() +else s.a_p()}, +a_p(){var s=this.e +for(;s!=null;){if(s.gFj()){if(!J.i(s.w,this.dx))this.i4() +break}s=s.e}}, +rf(){this.ahE() +this.a_p()}, +$iasB:1} +A.pE.prototype={ +srX(a,b){var s,r,q=this +q.a=b +s=B.e.eA(b.a)-1 +r=B.e.eA(q.a.b)-1 +if(q.z!==s||q.Q!==r){q.z=s +q.Q=r +q.a5Y()}}, +a5Y(){A.Q(this.c.style,"transform","translate("+this.z+"px, "+this.Q+"px)")}, +a4o(){var s=this,r=s.a,q=r.a +r=r.b +s.d.bj(0,-q+(q-1-s.z)+1,-r+(r-1-s.Q)+1)}, +a8V(a,b){return this.r>=A.att(a.c-a.a)&&this.w>=A.ats(a.d-a.b)&&this.ay===b}, +ab(a){var s,r,q,p,o,n=this +n.at=!1 +n.d.ab(0) +s=n.f +r=s.length +for(q=n.c,p=0;po){l=o +o=p +p=l}if(n>m){l=m +m=n +n=l}k=Math.abs(a2.r) +j=Math.abs(a2.e) +i=Math.abs(a2.w) +h=Math.abs(a2.f) +g=Math.abs(a2.z) +f=Math.abs(a2.x) +e=Math.abs(a2.Q) +d=Math.abs(a2.y) +b.beginPath() +b.moveTo(p+k,n) +a=o-k +b.lineTo(a,n) +A.VW(b,a,n+i,k,i,0,4.71238898038469,6.283185307179586,!1) +a=m-d +b.lineTo(o,a) +A.VW(b,o-f,a,f,d,0,0,1.5707963267948966,!1) +a=p+g +b.lineTo(a,m) +A.VW(b,a,m-e,g,e,0,1.5707963267948966,3.141592653589793,!1) +a=n+h +b.lineTo(p,a) +A.VW(b,p+j,a,j,h,0,3.141592653589793,4.71238898038469,!1) +a1.geu().lo(c) +a1.geu().tK()}}, +Af(a,b){var s,r,q,p,o,n,m=this.d +if(this.JK(b)){a=A.VQ(a,b) +s=A.VR(a,b,"draw-oval",m.c) +m=a.a +r=a.b +this.CS(s,new A.l(m,r),b) +A.Q(s.style,"border-radius",A.h((a.c-m)/2)+"px / "+A.h((a.d-r)/2)+"px")}else{m.geu().rv(b,a) +r=b.b +m.gca(m).beginPath() +q=m.geu().Q +p=q==null +o=p?a.gbH().a:a.gbH().a-q.a +n=p?a.gbH().b:a.gbH().b-q.b +A.VW(m.gca(m),o,n,(a.c-a.a)/2,(a.d-a.b)/2,0,0,6.283185307179586,!1) +m.geu().lo(r) +m.geu().tK()}}, +ha(a,b,c){var s,r,q,p,o,n,m,l,k=this +if(k.SH(c)){s=A.VQ(A.oL(a,b),c) +r=A.VR(s,c,"draw-circle",k.d.c) +k.CS(r,new A.l(s.a,s.b),c) +A.Q(r.style,"border-radius","50%")}else{q=c.w!=null?A.oL(a,b):null +p=k.d +p.geu().rv(c,q) +q=c.b +p.gca(p).beginPath() +o=p.geu().Q +n=o==null +m=a.a +m=n?m:m-o.a +l=a.b +l=n?l:l-o.b +A.VW(p.gca(p),m,l,b,b,0,0,6.283185307179586,!1) +p.geu().lo(q) +p.geu().tK()}}, +dV(a,b){var s,r,q,p,o,n,m,l,k,j,i,h=this +if(h.JK(b)){s=h.d +r=s.c +t.Ci.a(a) +q=a.a.XH() +if(q!=null){h.el(q,b) +return}p=a.a +o=p.ax?p.a1d():null +if(o!=null){h.de(o,b) +return}n=A.bwk() +p=A.b0("visible") +if(p==null)p=t.K.a(p) +n.setAttribute("overflow",p) +p=self.document.createElementNS("http://www.w3.org/2000/svg","path") +n.append(p) +m=b.b +if(m!==B.aj)if(m!==B.bl){m=b.c +m=m!==0&&m!=null}else m=!1 +else m=!0 +l=b.r +if(m){m=A.b0(A.f8(l)) +if(m==null)m=t.K.a(m) +p.setAttribute("stroke",m) +m=b.c +m=A.b0(A.h(m==null?1:m)) +if(m==null)m=t.K.a(m) +p.setAttribute("stroke-width",m) +m=b.d +if(m!=null){m=A.b0(A.h(A.bxv(m))) +if(m==null)m=t.K.a(m) +p.setAttribute("stroke-linecap",m)}m=A.b0("none") +if(m==null)m=t.K.a(m) +p.setAttribute("fill",m)}else{m=A.b0(A.f8(l)) +if(m==null)m=t.K.a(m) +p.setAttribute("fill",m)}if(a.b===B.fr){m=A.b0("evenodd") +if(m==null)m=t.K.a(m) +p.setAttribute("fill-rule",m)}m=A.b0(A.bxb(a.a,0,0)) +if(m==null)m=t.K.a(m) +p.setAttribute("d",m) +if(s.b==null){k=n.style +A.Q(k,"position","absolute") +if(!r.Fl(0)){A.Q(k,"transform",A.nQ(r.a)) +A.Q(k,"transform-origin","0 0 0")}}if(b.x!=null){s=b.b +j=A.f8(b.r) +i=b.x.b +p=$.dv() +if(p===B.ah&&s!==B.aj)A.Q(n.style,"box-shadow","0px 0px "+A.h(i*2)+"px "+j) +else A.Q(n.style,"filter","blur("+A.h(i)+"px)")}h.CS(n,B.i,b)}else{s=b.w!=null?a.ku(0):null +p=h.d +p.geu().rv(b,s) +s=b.b +if(s==null&&b.c!=null)p.dV(a,B.aj) +else p.dV(a,s) +p.geu().tK()}}, +wV(a,b,c,d){var s,r,q,p,o,n=this.d,m=A.bRd(a.ku(0),c) +if(m!=null){s=(B.e.bi(0.3*(b.gk(b)>>>24&255))&255)<<24|b.gk(b)&16777215 +r=A.bR6(s>>>16&255,s>>>8&255,s&255,255) +n.gca(n).save() +q=n.gca(n) +q.globalAlpha=(s>>>24&255)/255 +if(d){s=$.dv() +s=s!==B.ah}else s=!1 +q=m.b +p=m.a +o=q.a +q=q.b +if(s){n.gca(n).translate(o,q) +A.bik(n.gca(n),A.bx_(new A.xI(B.a2,p))) +A.ayh(n.gca(n),"") +A.ayg(n.gca(n),r)}else{A.bik(n.gca(n),"none") +A.ayh(n.gca(n),"") +A.ayg(n.gca(n),r) +n.gca(n).shadowBlur=p +A.bil(n.gca(n),r) +A.bim(n.gca(n),o) +A.bin(n.gca(n),q)}n.z_(n.gca(n),a) +A.ayf(n.gca(n),null) +n.gca(n).restore()}}, +S1(a){var s,r,q,p=a.a,o=A.bio(p) +o.toString +s=this.b +if(s!=null){r=s.aO1(o) +if(r!=null)return r}if(!a.b){a.b=!0 +A.Q(p.style,"position","absolute")}q=A.ayl(p,!0) +p=this.b +if(p!=null)p.ZM(o,new A.Fy(q,A.bOL(),p.$ti.h("Fy<1>"))) +return q}, +a0o(a,b,c){var s,r,q,p,o,n,m,l,k,j,i,h=this +t.gc.a(a) +s=c.a +r=A.bRs(c.z) +if(r instanceof A.Lu)q=h.aoL(a,r.b,r.c,c) +else if(r instanceof A.aID){p=A.bVM(r.b) +o=p.b +h.c.append(o) +h.f.push(o) +q=h.S1(a) +A.Q(q.style,"filter","url(#"+p.a+")")}else q=h.S1(a) +o=q.style +n=A.bew(s) +A.Q(o,"mix-blend-mode",n==null?"":n) +if(h.ax&&!0){o=h.d +o.geu().rv(c,null) +o.gca(o).drawImage(q,b.a,b.b) +o.geu().tK()}else{o=h.d +if(o.b!=null){n=q.style +n.removeProperty("width") +n.removeProperty("height") +n=o.b +n.toString +m=A.bkX(n,q,b,o.c) +for(o=m.length,n=h.c,l=h.f,k=0;k1){s=q.a +s.y=s.r.pop() +r=s.w.pop() +if(r!=null){s.Q=r.a +s.as=r.b +s.at=r.c +s.ax=r.d +s.z=!0}else if(s.z)s.z=!1}s=q.c +if(s.length!==0&&B.b.ga1(s) instanceof A.M2)s.pop() +else s.push(B.O_);--q.r}, +bj(a,b,c){var s=this.a,r=s.a +if(b!==0||c!==0)r.x=!1 +r.y.bj(0,b,c) +s.c.push(new A.a68(b,c))}, +hF(a,b,c){var s=c==null?b:c,r=this.a,q=r.a +if(b!==1||s!==1)q.x=!1 +q.y.rq(0,b,s,1) +r.c.push(new A.a66(b,s)) +return null}, +tJ(a,b){var s,r,q,p,o,n,m,l,k,j,i,h=this.a,g=h.a +if(b!==0)g.x=!1 +g=g.y +s=Math.cos(b) +r=Math.sin(b) +g=g.a +q=g[0] +p=g[4] +o=g[1] +n=g[5] +m=g[2] +l=g[6] +k=g[3] +j=g[7] +i=-r +g[0]=q*s+p*r +g[1]=o*s+n*r +g[2]=m*s+l*r +g[3]=k*s+j*r +g[4]=q*i+p*s +g[5]=o*i+n*s +g[6]=m*i+l*s +g[7]=k*i+j*s +h.c.push(new A.a65(b))}, +a_(a,b){var s=A.aqj(b),r=this.a,q=r.a +q.y.f_(0,new A.ds(s)) +q.x=q.y.Fl(0) +r.c.push(new A.a67(s))}, +Ec(a,b,c){this.a.t0(a,b)}, +a7A(a,b){return this.Ec(a,B.eV,b)}, +uD(a){return this.Ec(a,B.eV,!0)}, +Kr(a,b){var s=this.a,r=new A.a5S(a) +s.a.t0(new A.I(a.a,a.b,a.c,a.d),r) +s.d.c=!0 +s.c.push(r)}, +wE(a){return this.Kr(a,!0)}, +Kq(a,b,c){var s,r=this.a +t.Ci.a(b) +s=new A.a5R(b) +r.a.t0(b.ku(0),s) +r.d.c=!0 +r.c.push(s)}, +mr(a,b){return this.Kq(a,b,!0)}, +jF(a,b,c){var s,r,q,p,o,n,m=this.a +t.Vh.a(c) +s=Math.max(A.Hc(c),1) +c.b=!0 +r=new A.a5X(a,b,c.a) +q=a.a +p=b.a +o=a.b +n=b.b +m.a.y4(Math.min(q,p)-s,Math.min(o,n)-s,Math.max(q,p)+s,Math.max(o,n)+s,r) +m.e=m.d.c=!0 +m.c.push(r)}, +Ag(a){var s,r,q=this.a +t.Vh.a(a) +a.b=q.e=q.d.c=!0 +s=new A.a5Z(a.a) +r=q.a +r.tV(r.a,s) +q.c.push(s)}, +el(a,b){this.a.el(a,t.Vh.a(b))}, +de(a,b){this.a.de(a,t.Vh.a(b))}, +Ae(a,b,c){this.a.Ae(a,b,t.Vh.a(c))}, +Af(a,b){var s,r,q,p=this.a +t.Vh.a(b) +p.e=p.d.c=!0 +s=A.Hc(b) +b.b=!0 +r=new A.a5Y(a,b.a) +q=p.a +if(s!==0)q.tV(a.dZ(s),r) +else q.tV(a,r) +p.c.push(r)}, +ha(a,b,c){var s,r,q,p,o,n=this.a +t.Vh.a(c) +n.e=n.d.c=!0 +s=A.Hc(c) +c.b=!0 +r=new A.a5U(a,b,c.a) +q=b+s +p=a.a +o=a.b +n.a.y4(p-q,o-q,p+q,o+q,r) +n.c.push(r)}, +Up(a,b,c,d,e){var s,r=$.as().cZ() +if(c<=-6.283185307179586){r.wy(0,a,b,-3.141592653589793,!0) +b-=3.141592653589793 +r.wy(0,a,b,-3.141592653589793,!1) +b-=3.141592653589793 +c+=6.283185307179586 +s=!1}else s=!0 +for(;c>=6.283185307179586;s=!1){r.wy(0,a,b,3.141592653589793,s) +b+=3.141592653589793 +r.wy(0,a,b,3.141592653589793,!1) +b+=3.141592653589793 +c-=6.283185307179586}r.wy(0,a,b,c,s) +this.a.dV(r,t.Vh.a(e))}, +dV(a,b){this.a.dV(a,t.Vh.a(b))}, +t9(a,b,c,d){var s,r,q=this.a +t.Vh.a(d) +s=q.d +d.b=q.e=s.a=s.c=!0 +r=new A.a5W(a,b,c,d.a) +q.a.tV(c,r) +q.c.push(r)}, +uO(a,b){this.a.uO(a,b)}, +wV(a,b,c,d){var s,r,q=this.a +q.e=q.d.c=!0 +s=A.bRb(a.ku(0),c) +r=new A.a63(t.Ci.a(a),b,c,d) +q.a.tV(s,r) +q.c.push(r)}} +A.Qx.prototype={ +gkX(){return this.l5$}, +bJ(a){var s=this.wL("flt-clip"),r=A.c4(self.document,"flt-clip-interior") +this.l5$=r +A.Q(r.style,"position","absolute") +r=this.l5$ +r.toString +s.append(r) +return s}, +a6P(a,b){var s +if(b!==B.l){s=a.style +A.Q(s,"overflow","hidden") +A.Q(s,"z-index","0")}}} +A.Mb.prototype={ +pZ(){var s=this +s.f=s.e.f +if(s.CW!==B.l)s.w=s.cx +else s.w=null +s.r=null}, +bJ(a){var s=this.Zp(0),r=A.b0("rect") +if(r==null)r=t.K.a(r) +s.setAttribute("clip-type",r) +return s}, +i4(){var s,r=this,q=r.d.style,p=r.cx,o=p.a +A.Q(q,"left",A.h(o)+"px") +s=p.b +A.Q(q,"top",A.h(s)+"px") +A.Q(q,"width",A.h(p.c-o)+"px") +A.Q(q,"height",A.h(p.d-s)+"px") +p=r.d +p.toString +r.a6P(p,r.CW) +p=r.l5$.style +A.Q(p,"left",A.h(-o)+"px") +A.Q(p,"top",A.h(-s)+"px")}, +c_(a,b){var s=this +s.u3(0,b) +if(!s.cx.l(0,b.cx)||s.CW!==b.CW){s.w=null +s.i4()}}, +gFj(){return!0}, +$iaw4:1} +A.a6d.prototype={ +pZ(){var s,r=this +r.f=r.e.f +if(r.cx!==B.l){s=r.CW +r.w=new A.I(s.a,s.b,s.c,s.d)}else r.w=null +r.r=null}, +bJ(a){var s=this.Zp(0),r=A.b0("rrect") +if(r==null)r=t.K.a(r) +s.setAttribute("clip-type",r) +return s}, +i4(){var s,r=this,q=r.d.style,p=r.CW,o=p.a +A.Q(q,"left",A.h(o)+"px") +s=p.b +A.Q(q,"top",A.h(s)+"px") +A.Q(q,"width",A.h(p.c-o)+"px") +A.Q(q,"height",A.h(p.d-s)+"px") +A.Q(q,"border-top-left-radius",A.h(p.e)+"px") +A.Q(q,"border-top-right-radius",A.h(p.r)+"px") +A.Q(q,"border-bottom-right-radius",A.h(p.x)+"px") +A.Q(q,"border-bottom-left-radius",A.h(p.z)+"px") +p=r.d +p.toString +r.a6P(p,r.cx) +p=r.l5$.style +A.Q(p,"left",A.h(-o)+"px") +A.Q(p,"top",A.h(-s)+"px")}, +c_(a,b){var s=this +s.u3(0,b) +if(!s.CW.l(0,b.CW)||s.cx!==b.cx){s.w=null +s.i4()}}, +gFj(){return!0}, +$iaw3:1} +A.Ma.prototype={ +bJ(a){return this.wL("flt-clippath")}, +pZ(){var s=this +s.ahD() +if(s.cx!==B.l){if(s.w==null)s.w=s.CW.ku(0)}else s.w=null}, +i4(){var s=this,r=s.cy +if(r!=null)r.remove() +r=s.d +r.toString +r=A.bwl(r,s.CW) +s.cy=r +s.d.append(r)}, +c_(a,b){var s,r=this +r.u3(0,b) +if(b.CW!==r.CW){r.w=null +s=b.cy +if(s!=null)s.remove() +r.i4()}else r.cy=b.cy +b.cy=null}, +py(){var s=this.cy +if(s!=null)s.remove() +this.cy=null +this.Cv()}, +gFj(){return!0}, +$iaw1:1} +A.aWK.prototype={ +H3(a,b){var s,r,q,p,o=self.document.createElementNS("http://www.w3.org/2000/svg","feColorMatrix"),n=o.type +n.toString +A.aQt(n,1) +n=o.result +n.toString +A.uz(n,b) +n=o.values.baseVal +n.toString +for(s=this.b,r=0;r<20;++r){q=s.createSVGNumber() +p=a[r] +q.value=p +n.appendItem(q)}this.c.append(o)}, +ya(a,b,c){var s=self.document.createElementNS("http://www.w3.org/2000/svg","feFlood"),r=A.b0(a) +if(r==null)r=t.K.a(r) +s.setAttribute("flood-color",r) +r=A.b0(b) +if(r==null)r=t.K.a(r) +s.setAttribute("flood-opacity",r) +r=s.result +r.toString +A.uz(r,c) +this.c.append(s)}, +H2(a,b,c){var s=self.document.createElementNS("http://www.w3.org/2000/svg","feBlend"),r=s.in1 +r.toString +A.uz(r,a) +r=s.in2 +r.toString +A.uz(r,b) +r=s.mode +r.toString +A.aQt(r,c) +this.c.append(s)}, +vI(a,b,c,d,e,f,g,h){var s=self.document.createElementNS("http://www.w3.org/2000/svg","feComposite"),r=s.in1 +r.toString +A.uz(r,a) +r=s.in2 +r.toString +A.uz(r,b) +r=s.operator +r.toString +A.aQt(r,g) +if(c!=null){r=s.k1 +r.toString +A.aQu(r,c)}if(d!=null){r=s.k2 +r.toString +A.aQu(r,d)}if(e!=null){r=s.k3 +r.toString +A.aQu(r,e)}if(f!=null){r=s.k4 +r.toString +A.aQu(r,f)}r=s.result +r.toString +A.uz(r,h) +this.c.append(s)}, +Ch(a,b,c,d){return this.vI(a,b,null,null,null,null,c,d)}, +vJ(a,b,c,d){var s=self.document.createElementNS("http://www.w3.org/2000/svg","feImage"),r=s.href +r.toString +A.uz(r,b) +r=s.result +r.toString +A.uz(r,c) +r=$.dv() +if(r!==B.ah){s.x.baseVal.newValueSpecifiedUnits(1,0) +s.y.baseVal.newValueSpecifiedUnits(1,0) +s.width.baseVal.newValueSpecifiedUnits(1,d) +s.height.baseVal.newValueSpecifiedUnits(1,a)}this.c.append(s)}, +aP(){var s=this.b +s.append(this.c) +return new A.aWJ(this.a,s)}} +A.aWJ.prototype={} +A.ayd.prototype={ +t0(a,b){throw A.c(A.cL(null))}, +wE(a){throw A.c(A.cL(null))}, +mr(a,b){throw A.c(A.cL(null))}, +jF(a,b,c){throw A.c(A.cL(null))}, +Ag(a){throw A.c(A.cL(null))}, +el(a,b){var s +a=A.VQ(a,b) +s=this.EY$ +s=s.length===0?this.a:B.b.ga1(s) +s.append(A.VR(a,b,"draw-rect",this.th$))}, +de(a,b){var s,r=A.VR(A.VQ(new A.I(a.a,a.b,a.c,a.d),b),b,"draw-rrect",this.th$) +A.bw2(r.style,a) +s=this.EY$ +s=s.length===0?this.a:B.b.ga1(s) +s.append(r)}, +Af(a,b){throw A.c(A.cL(null))}, +ha(a,b,c){throw A.c(A.cL(null))}, +dV(a,b){throw A.c(A.cL(null))}, +wV(a,b,c,d){throw A.c(A.cL(null))}, +t9(a,b,c,d){throw A.c(A.cL(null))}, +uO(a,b){var s=A.bwq(a,b,this.th$),r=this.EY$ +r=r.length===0?this.a:B.b.ga1(r) +r.append(s)}, +Ak(){}} +A.Mc.prototype={ +pZ(){var s,r,q=this,p=q.e.f +q.f=p +s=q.CW +if(s!==0||q.cx!==0){p.toString +r=new A.ds(new Float32Array(16)) +r.cd(p) +q.f=r +r.bj(0,s,q.cx)}q.r=null}, +gFu(){var s=this,r=s.cy +if(r==null){r=A.h8() +r.vK(-s.CW,-s.cx,0) +s.cy=r}return r}, +bJ(a){var s=A.c4(self.document,"flt-offset") +A.hn(s,"position","absolute") +A.hn(s,"transform-origin","0 0 0") +return s}, +i4(){A.Q(this.d.style,"transform","translate("+A.h(this.CW)+"px, "+A.h(this.cx)+"px)")}, +c_(a,b){var s=this +s.u3(0,b) +if(b.CW!==s.CW||b.cx!==s.cx)s.i4()}, +$iaKQ:1} +A.Md.prototype={ +pZ(){var s,r,q,p=this,o=p.e.f +p.f=o +s=p.cx +r=s.a +q=s.b +if(r!==0||q!==0){o.toString +s=new A.ds(new Float32Array(16)) +s.cd(o) +p.f=s +s.bj(0,r,q)}p.r=null}, +gFu(){var s,r=this.cy +if(r==null){r=this.cx +s=A.h8() +s.vK(-r.a,-r.b,0) +this.cy=s +r=s}return r}, +bJ(a){var s=A.c4(self.document,"flt-opacity") +A.hn(s,"position","absolute") +A.hn(s,"transform-origin","0 0 0") +return s}, +i4(){var s,r=this.d +r.toString +A.hn(r,"opacity",A.h(this.CW/255)) +s=this.cx +A.Q(r.style,"transform","translate("+A.h(s.a)+"px, "+A.h(s.b)+"px)")}, +c_(a,b){var s=this +s.u3(0,b) +if(s.CW!==b.CW||!s.cx.l(0,b.cx))s.i4()}, +$iaKS:1} +A.Ex.prototype={ +swB(a){var s=this +if(s.b){s.a=s.a.ht(0) +s.b=!1}s.a.a=a}, +gcK(a){var s=this.a.b +return s==null?B.bl:s}, +scK(a,b){var s=this +if(s.b){s.a=s.a.ht(0) +s.b=!1}s.a.b=b}, +gfB(){var s=this.a.c +return s==null?0:s}, +sfB(a){var s=this +if(s.b){s.a=s.a.ht(0) +s.b=!1}s.a.c=a}, +svS(a){var s=this +if(s.b){s.a=s.a.ht(0) +s.b=!1}s.a.d=a}, +sOa(a){var s=this +if(s.b){s.a=s.a.ht(0) +s.b=!1}s.a.e=a}, +sLO(a){var s=this +if(s.b){s.a=s.a.ht(0) +s.b=!1}s.a.f=!1}, +ga5(a){return new A.M(this.a.r)}, +sa5(a,b){var s=this +if(s.b){s.a=s.a.ht(0) +s.b=!1}s.a.r=b.gk(b)}, +sLK(a){}, +sCl(a){var s=this +if(s.b){s.a=s.a.ht(0) +s.b=!1}s.a.w=a}, +sM_(a){var s=this +if(s.b){s.a=s.a.ht(0) +s.b=!1}s.a.x=a}, +sv2(a){var s=this +if(s.b){s.a=s.a.ht(0) +s.b=!1}s.a.y=a}, +sa7C(a){var s=this +if(s.b){s.a=s.a.ht(0) +s.b=!1}s.a.z=a}, +j(a){var s,r,q=""+"Paint(",p=this.a.b,o=p==null +if((o?B.bl:p)===B.aj){q+=(o?B.bl:p).j(0) +p=this.a +o=p.c +s=o==null +if((s?0:o)!==0)q+=" "+A.h(s?0:o) +else q+=" hairline" +p=p.d +o=p==null +if((o?B.dW:p)!==B.dW)q+=" "+(o?B.dW:p).j(0) +r="; "}else r="" +p=this.a +if(!p.f){q+=r+"antialias off" +r="; "}p=p.r +q=(p!==4278190080?q+(r+new A.M(p).j(0)):q)+")" +return q.charCodeAt(0)==0?q:q}, +$iD4:1} +A.a9I.prototype={ +ht(a){var s=this,r=new A.a9I() +r.a=s.a +r.y=s.y +r.x=s.x +r.w=s.w +r.f=s.f +r.r=s.r +r.z=s.z +r.c=s.c +r.b=s.b +r.e=s.e +r.d=s.d +return r}, +j(a){return this.e0(0)}} +A.kd.prototype={ +X_(){var s,r,q,p,o,n,m,l,k,j=this,i=A.a([],t.yv),h=j.aor(0.25),g=B.f.aB_(1,h) +i.push(new A.l(j.a,j.b)) +if(h===5){s=new A.aef() +j.a_z(s) +r=s.a +r.toString +q=s.b +q.toString +p=r.c +if(p===r.e&&r.d===r.f&&q.a===q.c&&q.b===q.d){o=new A.l(p,r.d) +i.push(o) +i.push(o) +i.push(o) +i.push(new A.l(q.e,q.f)) +g=2 +n=!0}else n=!1}else n=!1 +if(!n)A.bhZ(j,h,i) +m=2*g+1 +k=0 +while(!0){if(!(k=0)s.c=-r +s.e=s.d=-1}, +oy(a){this.K3(a,0,0)}, +Im(){var s,r=this.a,q=r.w +for(r=r.r,s=0;s359){j=c4<0?-0.001953125:0.001953125 +i=p +do{i-=j +m=Math.cos(i) +l=Math.sin(i)}while(o===m&&n===l)}}h=c4>0?0:1 +g=c0/2 +f=(c2.d-c2.b)/2 +e=c2.gbH().a+g*Math.cos(p) +d=c2.gbH().b+f*Math.sin(p) +if(o===m&&n===l){if(c5)b9.fo(0,e,d) +else b9.R3(e,d) +return}c=o*m+n*l +b=o*l-n*m +if(Math.abs(b)<=0.000244140625)if(c>0)if(!(b>=0&&h===0))c0=b<=0&&h===1 +else c0=!0 +else c0=!1 +else c0=!1 +if(c0){if(c5)b9.fo(0,e,d) +else b9.R3(e,d) +return}c0=h===1 +if(c0)b=-b +if(0===b)a=2 +else if(0===c)a=b>0?1:3 +else{r=b<0 +a=r?2:0 +if(c<0!==r)++a}a0=A.a([],t.td) +for(a1=0;a11){d=Math.sqrt(d) +l*=d +k*=d}c=(q*h+p*g)/l +b=(p*h-q*g)/k +a=(n*h+m*g)/l +a0=(m*h-n*g)/k +a1=a-c +a2=a0-b +a3=Math.sqrt(Math.max(1/(a1*a1+a2*a2)-0.25,0)) +a4=(c+a)/2-a2*a3 +a5=(b+a0)/2+a1*a3 +a6=Math.atan2(b-a5,c-a4) +a7=Math.atan2(a0-a5,a-a4)-a6 +if(a7<0)a7+=6.283185307179586 +if(Math.abs(a7)<0.0000031415926535897933){c2.d7(0,n,m) +return}a8=B.e.eU(Math.abs(a7/2.0943951023931953)) +a9=a7/a8 +b0=Math.tan(a9/2) +if(!isFinite(b0))return +b1=Math.sqrt(0.5+Math.cos(a9)*0.5) +b2=Math.abs(1.5707963267948966-Math.abs(a9)-0)<0.000244140625&&B.e.eA(l)===l&&B.e.eA(k)===k&&B.e.eA(n)===n&&B.e.eA(m)===m +for(b3=a6,b4=0;b4=6.283185307179586||c<=-6.283185307179586){s=b/1.5707963267948966 +r=Math.floor(s+0.5) +if(Math.abs(s-r-0)<0.000244140625){q=r+1 +if(q<0)q+=4 +p=c>0?0:1 +this.OQ(a,p,B.e.an(q)) +return}}this.wy(0,a,b,c,!0)}, +fT(a1){var s,r,q,p,o,n,m,l,k,j,i,h,g=this,f=g.Im(),e=a1.a,d=a1.b,c=a1.c,b=a1.d,a=new A.I(e,d,c,b),a0=a1.e +if(a0===0||a1.f===0)if(a1.r===0||a1.w===0)if(a1.z===0||a1.Q===0)s=a1.x===0||a1.y===0 +else s=!1 +else s=!1 +else s=!1 +if(s||e>=c||d>=b)g.K3(a,0,3) +else if(A.bTj(a1))g.OQ(a,0,3) +else{r=c-e +q=b-d +p=Math.max(0,a0) +o=Math.max(0,a1.r) +n=Math.max(0,a1.z) +m=Math.max(0,a1.x) +l=Math.max(0,a1.f) +k=Math.max(0,a1.w) +j=Math.max(0,a1.Q) +i=Math.max(0,a1.y) +h=A.bdh(j,i,q,A.bdh(l,k,q,A.bdh(n,m,r,A.bdh(p,o,r,1)))) +a0=b-h*j +g.fo(0,e,a0) +g.d7(0,e,d+h*l) +g.k_(e,d,e+h*p,d,0.707106781) +g.d7(0,c-h*o,d) +g.k_(c,d,c,d+h*k,0.707106781) +g.d7(0,c,b-h*i) +g.k_(c,b,c-h*m,b,0.707106781) +g.d7(0,e+h*n,b) +g.k_(e,b,e,a0,0.707106781) +g.ad(0) +g.e=f?0:-1 +e=g.a +e.ax=f +e.ch=!1 +e.CW=6}}, +SZ(a,b,c){this.aEa(b,c.a,c.b,null,0)}, +aEa(b4,b5,b6,b7,b8){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=this +t.Ci.a(b4) +s=b4.a +if(s.w===0)return +if(s.l(0,b3.a)){s=A.bjs() +r=b3.a +q=r.w +p=r.d +o=r.z +s.Q=!0 +s.cx=0 +s.O6() +s.RX(p) +s.RY(q) +s.RW(o) +B.L.q8(s.r,0,r.r) +B.hN.q8(s.f,0,r.f) +n=r.y +if(n==null)s.y=null +else{m=s.y +m.toString +B.hN.q8(m,0,n)}n=r.Q +s.Q=n +if(!n){s.a=r.a +s.b=r.b +s.as=r.as}s.cx=r.cx +s.at=r.at +s.ax=r.ax +s.ay=r.ay +s.ch=r.ch +s.CW=r.CW +l=new A.uP(s,B.d1) +l.Pz(b3)}else l=b4 +s=b3.a +k=s.d +if(b8===0)if(b7!=null)r=b7[15]===1&&b7[14]===0&&b7[11]===0&&b7[10]===1&&b7[9]===0&&b7[8]===0&&b7[7]===0&&b7[6]===0&&b7[3]===0&&b7[2]===0 +else r=!0 +else r=!1 +n=l.a +if(r)s.Ka(0,n) +else{j=new A.uh(n) +j.yu(n) +i=new Float32Array(8) +for(s=b7==null,h=2*(k-1),g=h+1,r=k===0,f=!0;e=j.fp(0,i),e!==6;f=!1)switch(e){case 0:if(s){m=i[0] +d=m+b5}else{m=b7[0] +c=i[0] +d=m*(c+b5)+b7[4]*(i[1]+b6)+b7[12] +m=c}if(s){c=i[1] +b=c+b6}else{c=b7[1] +a=b7[5] +a0=i[1] +b=c*(m+b5)+a*(a0+b6)+b7[13]+b6 +c=a0}if(f&&b3.a.w!==0){b3.D5() +if(r){a1=0 +a2=0}else{m=b3.a.f +a1=m[h] +a2=m[g]}if(b3.c<=0||!r||a1!==d||a2!==b)b3.d7(0,i[0],i[1])}else{a3=b3.a.od(0,0) +b3.c=a3+1 +a4=a3*2 +a=b3.a.f +a[a4]=m +a[a4+1]=c +b3.e=b3.d=-1}break +case 1:b3.d7(0,i[2],i[3]) +break +case 2:m=i[2] +c=i[3] +a=i[4] +a0=i[5] +a3=b3.a.od(2,0) +a4=a3*2 +a5=b3.a.f +a5[a4]=m +a5[a4+1]=c +a4=(a3+1)*2 +a5[a4]=a +a5[a4+1]=a0 +b3.e=b3.d=-1 +break +case 3:b3.k_(i[2],i[3],i[4],i[5],n.y[j.b]) +break +case 4:m=i[2] +c=i[3] +a=i[4] +a0=i[5] +a5=i[6] +a6=i[7] +b3.D5() +a3=b3.a.od(4,0) +a4=a3*2 +a7=b3.a.f +a7[a4]=m +a7[a4+1]=c +a4=(a3+1)*2 +a7[a4]=a +a7[a4+1]=a0 +a4=(a3+2)*2 +a7[a4]=a5 +a7[a4+1]=a6 +b3.e=b3.d=-1 +break +case 5:b3.ad(0) +break}}s=l.c +if(s>=0)b3.c=k+s +s=b3.a +a8=s.d +a9=s.f +for(b0=k*2,s=a8*2,r=b7==null;b0s.c||q>s.d)return!1 +p=a3.a +o=new A.aLr(p,r,q,new Float32Array(18)) +o.aDK() +n=B.fr===a3.b +m=o.d +if((n?m&1:m)!==0)return!0 +l=o.e +if(l<=1)return l!==0 +p=(l&1)===0 +if(!p||n)return!p +k=A.bre(a3.a,!0) +j=new Float32Array(18) +i=A.a([],t.yv) +p=k.a +h=!1 +do{g=i.length +switch(k.fp(0,j)){case 0:case 5:break +case 1:A.bVQ(j,r,q,i) +break +case 2:A.bVR(j,r,q,i) +break +case 3:f=k.f +A.bVO(j,r,q,p.y[f],i) +break +case 4:A.bVP(j,r,q,i) +break +case 6:h=!0 +break}f=i.length +if(f>g){e=f-1 +d=i[e] +c=d.a +b=d.b +if(Math.abs(c*c+b*b-0)<0.000244140625)B.b.jO(i,e) +else for(a=0;a0?1:0 +if(f<=0){f=b*a1 +if(f<0)f=-1 +else f=f>0?1:0 +f=f<=0}else f=!1}else f=!1 +if(f){a2=B.b.jO(i,e) +if(a!==i.length)i[a]=a2 +break}}}}while(!h) +return i.length!==0}, +dw(a){var s,r=a.a,q=a.b,p=this.a,o=A.bIn(p,r,q),n=p.e,m=new Uint8Array(n) +B.L.q8(m,0,p.r) +o=new A.D7(o,m) +n=p.x +o.x=n +o.z=p.z +s=p.y +if(s!=null){n=new Float32Array(n) +o.y=n +B.hN.q8(n,0,s)}o.e=p.e +o.w=p.w +o.c=p.c +o.d=p.d +n=p.Q +o.Q=n +if(!n){o.a=p.a.bj(0,r,q) +n=p.b +o.b=n==null?null:n.bj(0,r,q) +o.as=p.as}o.cx=p.cx +o.at=p.at +o.ax=p.ax +o.ay=p.ay +o.ch=p.ch +o.CW=p.CW +r=new A.uP(o,B.d1) +r.Pz(this) +return r}, +ku(e2){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,d1,d2,d3,d4,d5,d6,d7,d8,d9,e0=this,e1=e0.a +if((e1.ax?e1.CW:-1)===-1)s=(e1.at?e1.CW:-1)!==-1 +else s=!0 +if(s)return e1.ku(0) +if(!e1.Q&&e1.b!=null){e1=e1.b +e1.toString +return e1}r=new A.uh(e1) +r.yu(e1) +q=e0.a.f +for(p=!1,o=0,n=0,m=0,l=0,k=0,j=0,i=0,h=0,g=null,f=null,e=null;d=r.aLE(),d!==6;){c=r.e +switch(d){case 0:j=q[c] +h=q[c+1] +i=h +k=j +break +case 1:j=q[c+2] +h=q[c+3] +i=h +k=j +break +case 2:if(f==null)f=new A.aMM() +b=c+1 +a=q[c] +a0=b+1 +a1=q[b] +b=a0+1 +a2=q[a0] +a0=b+1 +a3=q[b] +a4=q[a0] +a5=q[a0+1] +s=f.a=Math.min(a,a4) +a6=f.b=Math.min(a1,a5) +a7=f.c=Math.max(a,a4) +a8=f.d=Math.max(a1,a5) +a9=a-2*a2+a4 +if(Math.abs(a9)>0.000244140625){b0=(a-a2)/a9 +if(b0>=0&&b0<=1){b1=1-b0 +b2=b1*b1 +b3=2*b0*b1 +b0*=b0 +b4=b2*a+b3*a2+b0*a4 +b5=b2*a1+b3*a3+b0*a5 +s=Math.min(s,b4) +f.a=s +a7=Math.max(a7,b4) +f.c=a7 +a6=Math.min(a6,b5) +f.b=a6 +a8=Math.max(a8,b5) +f.d=a8}}a9=a1-2*a3+a5 +if(Math.abs(a9)>0.000244140625){b6=(a1-a3)/a9 +if(b6>=0&&b6<=1){b7=1-b6 +b2=b7*b7 +b3=2*b6*b7 +b6*=b6 +b8=b2*a+b3*a2+b6*a4 +b9=b2*a1+b3*a3+b6*a5 +s=Math.min(s,b8) +f.a=s +a7=Math.max(a7,b8) +f.c=a7 +a6=Math.min(a6,b9) +f.b=a6 +a8=Math.max(a8,b9) +f.d=a8}h=a8 +j=a7 +i=a6 +k=s}else{h=a8 +j=a7 +i=a6 +k=s}break +case 3:if(e==null)e=new A.awp() +s=e1.y[r.b] +b=c+1 +a=q[c] +a0=b+1 +a1=q[b] +b=a0+1 +a2=q[a0] +a0=b+1 +a3=q[b] +a4=q[a0] +a5=q[a0+1] +e.a=Math.min(a,a4) +e.b=Math.min(a1,a5) +e.c=Math.max(a,a4) +e.d=Math.max(a1,a5) +c0=new A.qI() +c1=a4-a +c2=s*(a2-a) +if(c0.v3(s*c1-c1,c1-2*c2,c2)!==0){a6=c0.a +a6.toString +if(a6>=0&&a6<=1){c3=2*(s-1) +a9=(-c3*a6+c3)*a6+1 +c4=a2*s +b4=(((a4-2*c4+a)*a6+2*(c4-a))*a6+a)/a9 +c4=a3*s +b5=(((a5-2*c4+a1)*a6+2*(c4-a1))*a6+a1)/a9 +e.a=Math.min(e.a,b4) +e.c=Math.max(e.c,b4) +e.b=Math.min(e.b,b5) +e.d=Math.max(e.d,b5)}}c5=a5-a1 +c6=s*(a3-a1) +if(c0.v3(s*c5-c5,c5-2*c6,c6)!==0){a6=c0.a +a6.toString +if(a6>=0&&a6<=1){c3=2*(s-1) +a9=(-c3*a6+c3)*a6+1 +c4=a2*s +b8=(((a4-2*c4+a)*a6+2*(c4-a))*a6+a)/a9 +c4=a3*s +b9=(((a5-2*c4+a1)*a6+2*(c4-a1))*a6+a1)/a9 +e.a=Math.min(e.a,b8) +e.c=Math.max(e.c,b8) +e.b=Math.min(e.b,b9) +e.d=Math.max(e.d,b9)}}k=e.a +i=e.b +j=e.c +h=e.d +break +case 4:if(g==null)g=new A.awS() +b=c+1 +c7=q[c] +a0=b+1 +c8=q[b] +b=a0+1 +c9=q[a0] +a0=b+1 +d0=q[b] +b=a0+1 +d1=q[a0] +a0=b+1 +d2=q[b] +d3=q[a0] +d4=q[a0+1] +s=Math.min(c7,d3) +g.a=s +g.c=Math.min(c8,d4) +a6=Math.max(c7,d3) +g.b=a6 +g.d=Math.max(c8,d4) +if(!(c7c9&&c9>d1&&d1>d3 +else a7=!0 +if(!a7){a7=-c7 +d5=a7+3*(c9-d1)+d3 +d6=2*(c7-2*c9+d1) +d7=d6*d6-4*d5*(a7+c9) +if(d7>=0&&Math.abs(d5)>0.000244140625){a7=-d6 +a8=2*d5 +if(d7===0){d8=a7/a8 +b1=1-d8 +if(d8>=0&&d8<=1){a7=3*b1 +b4=b1*b1*b1*c7+a7*b1*d8*c9+a7*d8*d8*d1+d8*d8*d8*d3 +g.a=Math.min(b4,s) +g.b=Math.max(b4,a6)}}else{d7=Math.sqrt(d7) +d8=(a7-d7)/a8 +b1=1-d8 +if(d8>=0&&d8<=1){s=3*b1 +b4=b1*b1*b1*c7+s*b1*d8*c9+s*d8*d8*d1+d8*d8*d8*d3 +g.a=Math.min(b4,g.a) +g.b=Math.max(b4,g.b)}d8=(a7+d7)/a8 +b1=1-d8 +if(d8>=0&&d8<=1){s=3*b1 +b4=b1*b1*b1*c7+s*b1*d8*c9+s*d8*d8*d1+d8*d8*d8*d3 +g.a=Math.min(b4,g.a) +g.b=Math.max(b4,g.b)}}}}if(!(c8d0&&d0>d2&&d2>d4 +else s=!0 +if(!s){s=-c8 +d5=s+3*(d0-d2)+d4 +d6=2*(c8-2*d0+d2) +d7=d6*d6-4*d5*(s+d0) +if(d7>=0&&Math.abs(d5)>0.000244140625){s=-d6 +a6=2*d5 +if(d7===0){d8=s/a6 +b1=1-d8 +if(d8>=0&&d8<=1){s=3*b1 +b5=b1*b1*b1*c8+s*b1*d8*d0+s*d8*d8*d2+d8*d8*d8*d4 +g.c=Math.min(b5,g.c) +g.d=Math.max(b5,g.d)}}else{d7=Math.sqrt(d7) +d8=(s-d7)/a6 +b1=1-d8 +if(d8>=0&&d8<=1){a7=3*b1 +b5=b1*b1*b1*c8+a7*b1*d8*d0+a7*d8*d8*d2+d8*d8*d8*d4 +g.c=Math.min(b5,g.c) +g.d=Math.max(b5,g.d)}s=(s+d7)/a6 +b7=1-s +if(s>=0&&s<=1){a6=3*b7 +b5=b7*b7*b7*c8+a6*b7*s*d0+a6*s*s*d2+s*s*s*d4 +g.c=Math.min(b5,g.c) +g.d=Math.max(b5,g.d)}}}}k=g.a +i=g.c +j=g.b +h=g.d +break}if(!p){l=h +m=j +n=i +o=k +p=!0}else{o=Math.min(o,k) +m=Math.max(m,j) +n=Math.min(n,i) +l=Math.max(l,h)}}d9=p?new A.I(o,n,m,l):B.Y +e0.a.ku(0) +return e0.a.b=d9}, +j(a){return this.e0(0)}, +$iD6:1} +A.aLp.prototype={ +P_(a){var s=this,r=s.r,q=s.x +if(r!==q||s.w!==s.y){if(isNaN(r)||isNaN(s.w)||isNaN(q)||isNaN(s.y))return 5 +a[0]=r +a[1]=s.w +a[2]=q +r=s.y +a[3]=r +s.r=q +s.w=r +return 1}else{a[0]=q +a[1]=s.y +return 5}}, +HR(){var s,r,q=this +if(q.e===1){q.e=2 +return new A.l(q.x,q.y)}s=q.a.f +r=q.Q +return new A.l(s[r-2],s[r-1])}, +fp(a,b){var s,r,q,p,o,n,m=this,l=m.z,k=m.a +if(l===k.w){if(m.d&&m.e===2){if(1===m.P_(b))return 1 +m.d=!1 +return 5}return 6}s=m.z=l+1 +r=k.r[l] +switch(r){case 0:if(m.d){m.z=s-1 +q=m.P_(b) +if(q===5)m.d=!1 +return q}if(s===m.c)return 6 +l=k.f +k=m.Q +s=m.Q=k+1 +p=l[k] +m.Q=s+1 +o=l[s] +m.x=p +m.y=o +b[0]=p +b[1]=o +m.e=1 +m.r=p +m.w=o +m.d=!0 +break +case 1:n=m.HR() +l=k.f +k=m.Q +s=m.Q=k+1 +p=l[k] +m.Q=s+1 +o=l[s] +b[0]=n.a +b[1]=n.b +b[2]=p +b[3]=o +m.r=p +m.w=o +break +case 3:++m.f +n=m.HR() +b[0]=n.a +b[1]=n.b +l=k.f +k=m.Q +s=m.Q=k+1 +b[2]=l[k] +k=m.Q=s+1 +b[3]=l[s] +s=m.Q=k+1 +k=l[k] +b[4]=k +m.r=k +m.Q=s+1 +s=l[s] +b[5]=s +m.w=s +break +case 2:n=m.HR() +b[0]=n.a +b[1]=n.b +l=k.f +k=m.Q +s=m.Q=k+1 +b[2]=l[k] +k=m.Q=s+1 +b[3]=l[s] +s=m.Q=k+1 +k=l[k] +b[4]=k +m.r=k +m.Q=s+1 +s=l[s] +b[5]=s +m.w=s +break +case 4:n=m.HR() +b[0]=n.a +b[1]=n.b +l=k.f +k=m.Q +s=m.Q=k+1 +b[2]=l[k] +k=m.Q=s+1 +b[3]=l[s] +s=m.Q=k+1 +b[4]=l[k] +k=m.Q=s+1 +b[5]=l[s] +s=m.Q=k+1 +k=l[k] +b[6]=k +m.r=k +m.Q=s+1 +s=l[s] +b[7]=s +m.w=s +break +case 5:r=m.P_(b) +if(r===1)--m.z +else{m.d=!1 +m.e=0}m.r=m.x +m.w=m.y +break +case 6:break +default:throw A.c(A.cJ("Unsupport Path verb "+r,null,null))}return r}} +A.D7.prototype={ +oe(a,b,c){var s=a*2,r=this.f +r[s]=b +r[s+1]=c}, +m8(a){var s=this.f,r=a*2 +return new A.l(s[r],s[r+1])}, +XH(){var s=this +if(s.ay)return new A.I(s.m8(0).a,s.m8(0).b,s.m8(1).a,s.m8(2).b) +else return s.w===4?s.ap0():null}, +ku(a){var s +if(this.Q)this.Pu() +s=this.a +s.toString +return s}, +ap0(){var s,r,q,p,o,n,m,l,k=this,j=null,i=k.m8(0).a,h=k.m8(0).b,g=k.m8(1).a,f=k.m8(1).b +if(k.r[1]!==1||f!==h)return j +s=g-i +r=k.m8(2).a +q=k.m8(2).b +if(k.r[2]!==1||r!==g)return j +p=q-f +o=k.m8(3) +n=k.m8(3).b +if(k.r[3]!==1||n!==q)return j +if(r-o.a!==s||n-h!==p)return j +m=Math.min(i,g) +l=Math.min(h,q) +return new A.I(m,l,m+Math.abs(s),l+Math.abs(p))}, +aeY(){var s,r,q,p,o +if(this.w===2){s=this.r +s=s[0]!==0||s[1]!==1}else s=!0 +if(s)return null +s=this.f +r=s[0] +q=s[1] +p=s[2] +o=s[3] +if(q===o||r===p)return new A.I(r,q,p,o) +return null}, +a1d(){var s,r,q,p,o,n,m,l,k,j,i,h={},g=this.ku(0),f=A.a([],t.kG),e=new A.uh(this) +e.yu(this) +s=new Float32Array(8) +h.a=e.fp(0,s) +h.b=0 +for(;r=h.a=e.fp(0,s),r!==6;)if(3===r){q=s[2] +p=s[3] +o=q-s[0] +n=p-s[1] +m=s[4] +l=s[5] +if(o!==0){k=Math.abs(o) +j=Math.abs(l-p)}else{j=Math.abs(n) +k=n!==0?Math.abs(m-q):Math.abs(o)}f.push(new A.bq(k,j));++h.b}m=f[0] +l=f[1] +i=f[2] +return A.a6J(g,f[3],i,m,l)}, +l(a,b){if(b==null)return!1 +if(this===b)return!0 +if(J.a1(b)!==A.o(this))return!1 +return b instanceof A.D7&&this.aHw(b)}, +gv(a){var s=this +return A.X(s.cx,s.f,s.y,s.r,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +aHw(a){var s,r,q,p,o,n,m,l=this +if(l.cx!==a.cx)return!1 +s=l.d +if(s!==a.d)return!1 +r=s*2 +for(q=l.f,p=a.f,o=0;oq.c){s=a+10 +q.c=s +r=new Float32Array(s*2) +B.hN.q8(r,0,q.f) +q.f=r}q.d=a}, +RY(a){var s,r,q=this +if(a>q.e){s=a+8 +q.e=s +r=new Uint8Array(s) +B.L.q8(r,0,q.r) +q.r=r}q.w=a}, +RW(a){var s,r,q=this +if(a>q.x){s=a+4 +q.x=s +r=new Float32Array(s) +s=q.y +if(s!=null)B.hN.q8(r,0,s) +q.y=r}q.z=a}, +Ka(a,b){var s,r,q,p,o,n,m,l,k,j,i=this,h=b.d,g=i.d+h +i.O6() +i.RX(g) +s=b.f +for(r=h*2-1,q=g*2-1,p=i.f;r>=0;--r,--q)p[q]=s[r] +o=i.w +n=b.w +i.RY(o+n) +for(p=i.r,m=b.r,l=0;lm){l.a=m +l.b=s}else if(s===m)return 1}return o}} +A.aTo.prototype={ +a98(a){return(this.a*a+this.c)*a+this.e}, +a99(a){return(this.b*a+this.d)*a+this.f}} +A.aLr.prototype={ +aDK(){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=this,d=e.a,c=A.bre(d,!0) +for(s=e.f,r=t.td;q=c.fp(0,s),q!==6;)switch(q){case 0:case 5:break +case 1:e.aon() +break +case 2:p=!A.brf(s)?A.bIo(s):0 +o=e.a_S(s[0],s[1],s[2],s[3],s[4],s[5]) +e.d+=p>0?o+e.a_S(s[4],s[5],s[6],s[7],s[8],s[9]):o +break +case 3:n=d.y[c.f] +m=s[0] +l=s[1] +k=s[2] +j=s[3] +i=s[4] +h=s[5] +g=A.brf(s) +f=A.a([],r) +new A.kd(m,l,k,j,i,h,n).aFg(f) +e.a_R(f[0]) +if(!g&&f.length===2)e.a_R(f[1]) +break +case 4:e.aoj() +break}}, +aon(){var s,r,q,p,o,n=this,m=n.f,l=m[0],k=m[1],j=m[2],i=m[3] +if(k>i){s=k +r=i +q=-1}else{s=i +r=k +q=1}m=n.c +if(ms)return +p=n.b +if(A.aLs(p,m,l,k,j,i)){++n.e +return}if(m===s)return +o=(j-l)*(m-k)-(i-k)*(p-l) +if(o===0){if(p!==j||m!==i)++n.e +q=0}else if(A.bJy(o)===q)q=0 +n.d+=q}, +a_S(a,b,c,d,e,f){var s,r,q,p,o,n,m,l,k=this +if(b>f){s=b +r=f +q=-1}else{s=f +r=b +q=1}p=k.c +if(ps)return 0 +o=k.b +if(A.aLs(o,p,a,b,e,f)){++k.e +return 0}if(p===s)return 0 +n=new A.qI() +if(0===n.v3(b-2*d+f,2*(d-b),b-p))m=q===1?a:e +else{l=n.a +l.toString +m=((e-2*c+a)*l+2*(c-a))*l+a}if(Math.abs(m-o)<0.000244140625)if(o!==e||p!==f){++k.e +return 0}return mg){s=h +r=g +q=-1}else{s=g +r=h +q=1}p=i.c +if(ps)return +o=i.b +if(A.aLs(o,p,a.a,h,a.e,g)){++i.e +return}if(p===s)return +n=a.r +m=a.d*n-p*n+p +l=new A.qI() +if(0===l.v3(g+(h-2*m),2*(m-h),h-p))k=q===1?a.a:a.e +else{j=l.a +j.toString +k=A.bDX(a.a,a.c,a.e,n,j)/A.bDW(n,j)}if(Math.abs(k-o)<0.000244140625)if(o!==a.e||p!==a.f){++i.e +return}p=i.d +i.d=p+(kq){p=b +o=q +n=-1}else{p=q +o=b +n=1}m=g.c +if(mp)return +l=g.b +if(A.aLs(l,m,d,b,r,q)){++g.e +return}if(m===p)return +k=Math.min(d,Math.min(a,Math.min(s,r))) +j=Math.max(d,Math.max(a,Math.max(s,r))) +if(lj){g.d+=n +return}i=A.bw8(f,a0,m) +if(i==null)return +h=A.bws(d,a,s,r,i) +if(Math.abs(h-l)<0.000244140625)if(l!==r||m!==q){++g.e +return}f=g.d +g.d=f+(h1,o=null,n=1/0,m=0;m<$.rD.length;++m){l=$.rD[m] +k=self.window.devicePixelRatio +if(k===0)k=1 +if(l.y!==k)continue +k=l.a +j=k.c-k.a +k=k.d-k.b +i=j*k +h=c.dy +g=self.window.devicePixelRatio +if(l.r>=B.e.eU(s*(g===0?1:g))+2){g=self.window.devicePixelRatio +f=l.w>=B.e.eU(r*(g===0?1:g))+2&&l.ay===h}else f=!1 +e=i4)){if(j===b&&k===a){o=l +break}n=i +o=l}}if(o!=null){B.b.F($.rD,o) +o.srX(0,a0) +o.b=c.fx +return o}d=A.bDd(a0,c.cy.b.d,c.dy) +d.b=c.fx +return d}, +a_0(){A.Q(this.d.style,"transform","translate("+A.h(this.CW)+"px, "+A.h(this.cx)+"px)")}, +i4(){this.a_0() +this.HF(null)}, +aP(){this.Pv(null) +this.fr=!0 +this.Z1()}, +c_(a,b){var s,r,q=this +q.Z5(0,b) +q.fx=b.fx +if(b!==q)b.fx=null +if(q.CW!==b.CW||q.cx!==b.cx)q.a_0() +q.Pv(b) +if(q.cy===b.cy){s=q.ch +r=s instanceof A.pE&&q.dy!==s.ay +if(q.fr||r)q.HF(b) +else q.ch=b.ch}else q.HF(b)}, +rf(){var s=this +s.Z4() +s.Pv(s) +if(s.fr)s.HF(s)}, +py(){A.apZ(this.ch) +this.ch=null +this.Z2()}} +A.aLv.prototype={ +$0(){var s,r=this.a,q=r.fy +q.toString +s=r.ch=r.aqo(q) +s.b=r.fx +q=r.d +q.toString +A.blR(q) +r.d.append(s.c) +s.ab(0) +q=r.cy.b +q.toString +r=r.fy +r.toString +q.T9(s,r) +s.Ak()}, +$S:0} +A.aOy.prototype={ +T9(a,b){var s,r,q,p,o,n,m,l,k,j +try{m=this.b +m.toString +m=A.bxn(b,m) +l=this.c +k=l.length +if(m){s=k +for(r=0;rq*q+p*p||g*g+f*f>o*o+n*n||e*e+d*d>m*m+l*l||c*c+b*b>k*k+j*j)return +a3.e=a3.d.c=!0 +a=A.Hc(b2) +b2.b=!0 +a0=new A.a5V(b0,b1,b2.a) +q=$.as().cZ() +q.sAy(B.fr) +q.fT(b0) +q.fT(b1) +q.ad(0) +a0.x=q +a1=Math.min(a5,a7) +a2=Math.max(a5,a7) +a3.a.y4(a1-a,Math.min(a6,a8)-a,a2+a,Math.max(a6,a8)+a,a0) +a3.c.push(a0)}, +dV(a,a0){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b=this +if(a0.a.w==null){t.Ci.a(a) +s=a.a.XH() +if(s!=null){b.el(s,a0) +return}r=a.a +q=r.ax?r.a1d():null +if(q!=null){b.de(q,a0) +return}p=a.a.aeY() +if(p!=null){r=a0.a.c +r=(r==null?0:r)===0}else r=!1 +if(r){r=p.a +o=p.c +n=Math.min(r,o) +m=p.b +l=p.d +k=Math.min(m,l) +r=o-r +j=Math.abs(r) +m=l-m +i=Math.abs(m) +h=m===0?1:i +g=r===0?1:j +a0.scK(0,B.bl) +b.el(new A.I(n,k,n+g,k+h),a0) +return}}t.Ci.a(a) +if(a.a.w!==0){b.e=b.d.c=!0 +f=a.ku(0) +e=A.Hc(a0) +if(e!==0)f=f.dZ(e) +r=a.a +o=new A.D7(r.f,r.r) +o.e=r.e +o.w=r.w +o.c=r.c +o.d=r.d +o.x=r.x +o.z=r.z +o.y=r.y +m=r.Q +o.Q=m +if(!m){o.a=r.a +o.b=r.b +o.as=r.as}o.cx=r.cx +o.at=r.at +o.ax=r.ax +o.ay=r.ay +o.ch=r.ch +o.CW=r.CW +d=new A.uP(o,B.d1) +d.Pz(a) +a0.b=!0 +c=new A.a60(d,a0.a) +b.a.tV(f,c) +d.b=a.b +b.c.push(c)}}, +uO(a,b){var s,r,q,p,o=this +t.zI.a(a) +if(!a.e)return +o.e=!0 +s=o.d +s.c=!0 +s.b=!0 +r=new A.a6_(a,b) +q=a.gjt().z +s=b.a +p=b.b +o.a.y4(s+q.a,p+q.b,s+q.c,p+q.d,r) +o.c.push(r)}} +A.f6.prototype={} +A.Jr.prototype={ +aKs(a){var s=this +if(s.a)return!0 +return s.ea.d||s.da.c}} +A.M2.prototype={ +hr(a){a.eb(0)}, +j(a){return this.e0(0)}} +A.a64.prototype={ +hr(a){a.dq(0)}, +j(a){return this.e0(0)}} +A.a68.prototype={ +hr(a){a.bj(0,this.a,this.b)}, +j(a){return this.e0(0)}} +A.a66.prototype={ +hr(a){a.hF(0,this.a,this.b)}, +j(a){return this.e0(0)}} +A.a65.prototype={ +hr(a){a.tJ(0,this.a)}, +j(a){return this.e0(0)}} +A.a67.prototype={ +hr(a){a.a_(0,this.a)}, +j(a){return this.e0(0)}} +A.a5T.prototype={ +hr(a){a.t0(this.f,this.r)}, +j(a){return this.e0(0)}} +A.a5S.prototype={ +hr(a){a.wE(this.f)}, +j(a){return this.e0(0)}} +A.a5R.prototype={ +hr(a){a.mr(0,this.f)}, +j(a){return this.e0(0)}} +A.a5X.prototype={ +hr(a){a.jF(this.f,this.r,this.w)}, +j(a){return this.e0(0)}} +A.a5Z.prototype={ +hr(a){a.Ag(this.f)}, +j(a){return this.e0(0)}} +A.a62.prototype={ +hr(a){a.el(this.f,this.r)}, +j(a){return this.e0(0)}} +A.a61.prototype={ +hr(a){a.de(this.f,this.r)}, +j(a){return this.e0(0)}} +A.a5V.prototype={ +hr(a){var s=this.w +if(s.b==null)s.b=B.bl +a.dV(this.x,s)}, +j(a){return this.e0(0)}} +A.a5Y.prototype={ +hr(a){a.Af(this.f,this.r)}, +j(a){return this.e0(0)}} +A.a5U.prototype={ +hr(a){a.ha(this.f,this.r,this.w)}, +j(a){return this.e0(0)}} +A.a60.prototype={ +hr(a){a.dV(this.f,this.r)}, +j(a){return this.e0(0)}} +A.a63.prototype={ +hr(a){var s=this +a.wV(s.f,s.r,s.w,s.x)}, +j(a){return this.e0(0)}} +A.a5W.prototype={ +hr(a){var s=this +a.t9(s.f,s.r,s.w,s.x)}, +j(a){return this.e0(0)}} +A.a6_.prototype={ +hr(a){a.uO(this.f,this.r)}, +j(a){return this.e0(0)}} +A.b7J.prototype={ +t0(a,b){var s,r,q,p,o=this,n=a.a,m=a.b,l=a.c,k=a.d +if(!o.x){s=$.bmx() +s[0]=n +s[1]=m +s[2]=l +s[3]=k +A.bm3(o.y,s) +n=s[0] +m=s[1] +l=s[2] +k=s[3]}if(!o.z){o.Q=n +o.as=m +o.at=l +o.ax=k +o.z=!0 +r=k +q=l +p=m +s=n}else{s=o.Q +if(n>s){o.Q=n +s=n}p=o.as +if(m>p){o.as=m +p=m}q=o.at +if(l=q||p>=r)b.a=!0 +else{b.b=s +b.c=p +b.d=q +b.e=r}}, +tV(a,b){this.y4(a.a,a.b,a.c,a.d,b)}, +y4(a,b,c,d,e){var s,r,q,p,o,n,m,l,k,j=this +if(a===c||b===d){e.a=!0 +return}if(!j.x){s=$.bmx() +s[0]=a +s[1]=b +s[2]=c +s[3]=d +A.bm3(j.y,s) +r=s[0] +q=s[1] +p=s[2] +o=s[3]}else{o=d +p=c +q=b +r=a}if(j.z){n=j.at +if(r>=n){e.a=!0 +return}m=j.Q +if(p<=m){e.a=!0 +return}l=j.ax +if(q>=l){e.a=!0 +return}k=j.as +if(o<=k){e.a=!0 +return}if(rn)p=n +if(ql)o=l}e.b=r +e.c=q +e.d=p +e.e=o +if(j.b){j.c=Math.min(Math.min(j.c,r),p) +j.e=Math.max(Math.max(j.e,r),p) +j.d=Math.min(Math.min(j.d,q),o) +j.f=Math.max(Math.max(j.f,q),o)}else{j.c=Math.min(r,p) +j.e=Math.max(r,p) +j.d=Math.min(q,o) +j.f=Math.max(q,o)}j.b=!0}, +XX(){var s=this,r=s.y,q=new A.ds(new Float32Array(16)) +q.cd(r) +s.r.push(q) +r=s.z?new A.I(s.Q,s.as,s.at,s.ax):null +s.w.push(r)}, +aFD(){var s,r,q,p,o,n,m,l,k,j,i=this +if(!i.b)return B.Y +s=i.a +r=s.a +if(isNaN(r))r=-1/0 +q=s.c +if(isNaN(q))q=1/0 +p=s.b +if(isNaN(p))p=-1/0 +o=s.d +if(isNaN(o))o=1/0 +s=i.c +n=i.e +m=Math.min(s,n) +l=Math.max(s,n) +n=i.d +s=i.f +k=Math.min(n,s) +j=Math.max(n,s) +if(l1;)s.pop() +t.IF.a(B.b.gN(s)).xD(new A.aM3())}, +$S:0} +A.aWG.prototype={ +$0(){var s,r,q=t.IF,p=this.a.a +if($.aWE==null)q.a(B.b.gN(p)).aP() +else{s=q.a(B.b.gN(p)) +r=$.aWE +r.toString +s.c_(0,r)}A.bR8(q.a(B.b.gN(p))) +$.aWE=q.a(B.b.gN(p)) +return new A.Ey(q.a(B.b.gN(p)).d)}, +$S:942} +A.Mf.prototype={ +zj(a){this.Hm(a) +this.CW=a.CW +this.dy=a.dy +a.dy=a.CW=null}, +gkX(){return this.CW}, +py(){var s=this +s.Cv() +$.hm.MT(s.dy) +s.CW=s.dy=null}, +xD(a){++a.b +this.ahC(a);--a.b}, +bJ(a){var s=this.wL("flt-shader-mask"),r=A.c4(self.document,"flt-mask-interior") +A.Q(r.style,"position","absolute") +this.CW=r +s.append(r) +return s}, +i4(){var s,r,q,p,o,n=this +$.hm.MT(n.dy) +n.dy=null +s=n.d +s=s.style +r=n.cy +q=r.a +A.Q(s,"left",A.h(q)+"px") +p=r.b +A.Q(s,"top",A.h(p)+"px") +o=r.c-q +A.Q(s,"width",A.h(o)+"px") +r=r.d-p +A.Q(s,"height",A.h(r)+"px") +s=n.CW.style +A.Q(s,"left",A.h(-q)+"px") +A.Q(s,"top",A.h(-p)+"px") +if(o>0&&r>0)n.amx() +return}, +amx(){var s,r,q,p,o,n,m,l=this,k="filter",j=l.cx +if(j instanceof A.BY){s=l.cy +r=s.a +q=s.b +p=A.bs(j.TW(s.bj(0,-r,-q),1,!0)) +o=l.db +switch(o.a){case 0:case 8:case 7:j=l.CW +if(j!=null)A.Q(j.style,"visibility","hidden") +return +case 2:case 6:A.Q(l.d.style,k,"") +return +case 3:o=B.iC +break +case 1:case 4:case 5:case 9:case 10:case 11:case 12:case 13:case 14:case 15:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:case 27:case 28:break}n=A.bVN(p,o,s.c-r,s.d-q) +l.dy=n.b +j="url(#"+n.a +if(l.fr)A.Q(l.CW.style,k,j+")") +else A.Q(l.d.style,k,j+")") +m=$.hm +m.toString +j=l.dy +j.toString +m.aEc(j)}}, +c_(a,b){var s=this +s.u3(0,b) +if(s.cx!==b.cx||!s.cy.l(0,b.cy)||s.db!==b.db)s.i4()}, +$iaSH:1} +A.aKE.prototype={ +afJ(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g,f=this +for(s=f.d,r=f.c,q=a.a,p=f.b,o=b.a,n=0;n>>24&255)<1}, +$S:1006} +A.aSJ.prototype={} +A.aAl.prototype={} +A.BY.prototype={ +aGB(a,b,c){var s,r,q,p,o,n,m,l,k,j,i=this,h=i.f +if(h===B.cK||h===B.KS){s=i.r +r=b.a +q=b.b +p=i.b +o=i.c +n=p.a +m=o.a +p=p.b +o=o.b +if(s!=null){l=(n+m)/2-r +k=(p+o)/2-q +s.ade(0,n-l,p-k) +p=s.b +n=s.c +s.ade(0,m-l,o-k) +j=a.createLinearGradient(p+l-r,n+k-q,s.b+l-r,s.c+k-q)}else j=a.createLinearGradient(n-r,p-q,m-r,o-q) +A.bNL(j,i.d,i.e,h===B.KS) +return j}else{h=a.createPattern(i.TW(b,c,!1),"no-repeat") +h.toString +return h}}, +TW(c6,c7,c8){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=this,c0="premultipliedAlpha",c1="u_resolution",c2="m_gradient",c3="attachShader",c4=c6.c,c5=c6.a +c4-=c5 +s=B.e.eU(c4) +r=c6.d +q=c6.b +r-=q +p=B.e.eU(r) +if($.blD==null)$.blD=new A.bcF() +o=$.bmJ() +o.b=!0 +n=o.a +if(n==null){n=new A.aKP(s,p) +if(A.br2())n.a=new globalThis.OffscreenCanvas(s,p) +else{m=n.b=A.VU(p,s) +m.className="gl-canvas" +n.a5z(m)}o.a=n}else if(s!==n.c&&p!==n.d){n.c=s +n.d=p +m=n.a +if(m!=null){m.width=s +n=n.a +n.toString +n.height=p}else{m=n.b +if(m!=null){A.Bl(m,s) +m=n.b +m.toString +A.Bk(m,p) +m=n.b +m.toString +n.a5z(m)}}}o=o.a +o.toString +if(A.br2()){o=o.a +o.toString +n=t.N +m=A.bFa(o,"webgl2",A.ap([c0,!1],n,t.z)) +m.toString +l=new A.a1o(m) +$.aDJ.b=A.F(n,t.eS) +l.dy=o +o=$.aDJ}else{o=o.b +o.toString +n=$.lw +n=(n==null?$.lw=A.Hb():n)===1?"webgl":"webgl2" +m=t.N +n=A.pR(o,n,A.ap([c0,!1],m,t.z)) +n.toString +l=new A.a1o(n) +$.aDJ.b=A.F(m,t.eS) +l.dy=o +o=$.aDJ}l.fr=s +l.fx=p +k=A.bIc(b9.d,b9.e) +n=$.bt7 +if(n==null){n=$.lw +if(n==null)n=$.lw=A.Hb() +m=A.a([],t.vU) +j=A.a([],t.fe) +i=new A.a8r(n,m,j,n===2,!1,new A.cV("")) +i.SX(11,"position") +i.SX(11,"color") +i.uy(14,"u_ctransform") +i.uy(11,"u_scale") +i.uy(11,"u_shift") +m.push(new A.yP("v_color",11,3)) +n=A.a([],t.s) +j.push(new A.ND("main",n)) +n.push("gl_Position = ((u_ctransform * position) * u_scale) + u_shift;") +n.push("v_color = color.zyxw;") +n=$.bt7=i.aP()}m=b9.f +j=$.lw +if(j==null)j=$.lw=A.Hb() +h=A.a([],t.vU) +g=A.a([],t.fe) +f=j===2 +i=new A.a8r(j,h,g,f,!0,new A.cV("")) +i.e=1 +i.SX(11,"v_color") +i.uy(9,c1) +i.uy(14,c2) +e=i.Q +if(e==null)e=i.Q=new A.yP(f?"gFragColor":"gl_FragColor",11,3) +j=A.a([],t.s) +d=new A.ND("main",j) +g.push(d) +j.push("vec4 localCoord = m_gradient * vec4(gl_FragCoord.x, u_resolution.y - gl_FragCoord.y, 0, 1);") +j.push("float st = localCoord.x;") +j.push(e.a+" = "+A.bQt(i,d,k,m)+" * scale + bias;") +c=i.aP() +b=n+"||"+c +a=J.b3(o.cB(),b) +if(a==null){a0=l.a7E(0,"VERTEX_SHADER",n) +a1=l.a7E(0,"FRAGMENT_SHADER",c) +n=l.a +j=n.createProgram() +A.ca(n,c3,[j,a0]) +A.ca(n,c3,[j,a1]) +A.ca(n,"linkProgram",[j]) +h=l.ay +if(!A.ca(n,"getProgramParameter",[j,h==null?l.ay=n.LINK_STATUS:h]))A.q(A.cR(A.ca(n,"getProgramInfoLog",[j]))) +a=new A.a1p(j) +J.ie(o.cB(),b,a)}o=l.a +n=a.a +A.ca(o,"useProgram",[n]) +j=b9.b +a2=j.a +a3=j.b +j=b9.c +a4=j.a +a5=j.b +a6=a4-a2 +a7=a5-a3 +a8=Math.sqrt(a6*a6+a7*a7) +j=a8<11920929e-14 +a9=j?0:-a7/a8 +b0=j?1:a6/a8 +b1=m!==B.cK +b2=b1?c4/2:(a2+a4)/2-c5 +b3=b1?r/2:(a3+a5)/2-q +b4=A.h8() +b4.vK(-b2,-b3,0) +b5=A.h8() +b6=b5.a +b6[0]=b0 +b6[1]=a9 +b6[4]=-a9 +b6[5]=b0 +b7=A.h8() +b7.aOP(0,0.5) +if(a8>11920929e-14)b7.cl(0,1/a8) +c4=b9.r +if(c4!=null){c4=c4.a +b7.hF(0,1,-1) +b7.bj(0,-c6.gbH().a,-c6.gbH().b) +b7.f_(0,new A.ds(c4)) +b7.bj(0,c6.gbH().a,c6.gbH().b) +b7.hF(0,1,-1)}b7.f_(0,b5) +b7.f_(0,b4) +k.afJ(l,a) +A.ca(o,"uniformMatrix4fv",[l.y0(0,n,c2),!1,b7.a]) +A.ca(o,"uniform2f",[l.y0(0,n,c1),s,p]) +b8=new A.aE1(c8,c6,l,a,k,s,p).$0() +$.bmJ().b=!1 +return b8}} +A.aE1.prototype={ +$0(){var s,r,q,p=this,o="bindBuffer",n=$.blD,m=p.b,l=p.c,k=p.d,j=p.e,i=p.f,h=p.r,g=m.c,f=m.a,e=m.d +m=m.b +s=l.a +if(p.a){n.a8Z(new A.I(0,0,0+(g-f),0+(e-m)),l,k,j,i,h) +n=l.fr +r=A.VU(l.fx,n) +n=A.pR(r,"2d",null) +n.toString +l.a8Y(0,t.e.a(n),0,0) +n=r.toDataURL("image/png") +A.Bl(r,0) +A.Bk(r,0) +A.ca(s,o,[l.gAS(),null]) +A.ca(s,o,[l.gLU(),null]) +return n}else{n.a8Z(new A.I(0,0,0+(g-f),0+(e-m)),l,k,j,i,h) +q=l.aNh(j.e) +A.ca(s,o,[l.gAS(),null]) +A.ca(s,o,[l.gLU(),null]) +q.toString +return q}}, +$S:253} +A.pW.prototype={ +gUP(){return""}} +A.PQ.prototype={ +gUP(){return"blur("+A.h((this.a+this.b)*0.5)+"px)"}, +l(a,b){var s=this +if(b==null)return!1 +if(J.a1(b)!==A.o(s))return!1 +return b instanceof A.PQ&&b.c===s.c&&b.a===s.a&&b.b===s.b}, +gv(a){return A.X(this.a,this.b,this.c,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){return"ImageFilter.blur("+this.a+", "+this.b+", "+this.c.j(0)+")"}} +A.RR.prototype={ +l(a,b){if(b==null)return!1 +if(J.a1(b)!==A.o(this))return!1 +return b instanceof A.RR&&b.b===this.b&&A.vF(b.a,this.a)}, +gv(a){return A.X(A.dt(this.a),this.b,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){return"ImageFilter.matrix("+A.h(this.a)+", "+this.b.j(0)+")"}} +A.a0B.prototype={$ipW:1} +A.Lu.prototype={} +A.aID.prototype={} +A.a8r.prototype={ +SX(a,b){var s=new A.yP(b,a,1) +this.b.push(s) +return s}, +uy(a,b){var s=new A.yP(b,a,2) +this.b.push(s) +return s}, +a6s(a,b){var s,r,q=this,p="varying ",o=b.c +switch(o){case 0:q.as.a+="const " +break +case 1:if(q.y)s="in " +else s=q.z?p:"attribute " +q.as.a+=s +break +case 2:q.as.a+="uniform " +break +case 3:s=q.y?"out ":p +q.as.a+=s +break}s=q.as +r=s.a+=A.bJY(b.b)+" "+b.a +if(o===0)o=s.a=r+" = " +else o=r +s.a=o+";\n"}, +aP(){var s,r,q,p,o,n=this,m=n.y +if(m)n.as.a+="#version 300 es\n" +s=n.e +if(s!=null){if(s===0)s="lowp" +else s=s===1?"mediump":"highp" +n.as.a+="precision "+s+" float;\n"}if(m&&n.Q!=null){m=n.Q +m.toString +n.a6s(n.as,m)}for(m=n.b,s=m.length,r=n.as,q=0;q=0;--r,p=n){a.toString +o=B.b.eX(a,r)!==-1&&B.b.n(m,r) +n=s[r].d +n.toString +if(!o)if(p==null)q.append(n) +else q.insertBefore(n,p)}}, +avZ(a0){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=this.x,d=e.length,c=a0.x,b=c.length,a=A.a([],t.cD) +for(s=0;s");s.u();){p=s.gH(s) +o=p.a +p=p.b +r.push(new A.ol(a,o,p,p,q))}}, +$S(){return this.b.h("~(0,e)")}} +A.aG6.prototype={ +$2(a,b){return a.b-b.b}, +$S(){return this.a.h("m(ol<0>,ol<0>)")}} +A.aG8.prototype={ +$1(a){var s,r,q=a.length +if(q===0)return null +if(q===1)return B.b.gaI(a) +s=q/2|0 +r=a[s] +r.e=this.$1(B.b.d2(a,0,s)) +r.f=this.$1(B.b.fs(a,s+1)) +return r}, +$S(){return this.a.h("ol<0>?(e>)")}} +A.aG7.prototype={ +$1(a){var s,r=this,q=a.e,p=q==null +if(p&&a.f==null)a.d=a.c +else if(p){q=a.f +q.toString +r.$1(q) +a.d=Math.max(a.c,a.f.d)}else{p=a.f +s=a.c +if(p==null){r.$1(q) +a.d=Math.max(s,a.e.d)}else{r.$1(p) +q=a.e +q.toString +r.$1(q) +a.d=Math.max(s,Math.max(a.e.d,a.f.d))}}}, +$S(){return this.a.h("~(ol<0>)")}} +A.ol.prototype={ +NQ(a,b){var s,r=this +if(a>r.d)return +s=r.e +if(s!=null)s.NQ(a,b) +s=r.b +if(s<=a&&a<=r.c)b.push(r.a) +if(a1&&e.charCodeAt(0)<127&&e.charCodeAt(1)<127) +o=A.bO4(new A.aGv(h,e,a,p,q),t.S) +if(f.type!=="keydown")if(h.b){r=A.wy(f) +r.toString +r=r==="CapsLock" +n=r}else n=!1 +else n=!0 +if(h.b){r=A.wy(f) +r.toString +r=r==="CapsLock"}else r=!1 +if(r){h.a3N(B.F,new A.aGw(s,q,o),new A.aGx(h,q)) +m=B.cV}else if(n){r=h.f +if(r.i(0,q)!=null){l=f.repeat +if(l==null)l=g +if(l===!0)m=B.VK +else{l=h.d +l.toString +l.$1(new A.ko(s,B.c9,q,o.$0(),g,!0)) +r.F(0,q) +m=B.cV}}else m=B.cV}else{if(h.f.i(0,q)==null){f.preventDefault() +return}m=B.c9}r=h.f +k=r.i(0,q) +switch(m.a){case 0:j=o.$0() +break +case 1:j=g +break +case 2:j=k +break +default:j=g}l=j==null +if(l)r.F(0,q) +else r.p(0,q,j) +$.bAE().af(0,new A.aGy(h,o,a,s)) +if(p)if(!l)h.aBp(q,o.$0(),s) +else{r=h.r.F(0,q) +if(r!=null)r.$0()}if(p)i=e +else i=g +e=k==null?o.$0():k +r=m===B.c9?g:i +if(h.d.$1(new A.ko(s,m,q,e,r,!1)))f.preventDefault()}, +kb(a){var s=this,r={} +r.a=!1 +s.d=new A.aGD(r,s) +try{s.ash(a)}finally{if(!r.a)s.d.$1(B.VJ) +s.d=null}}, +OE(a,b,c,d,e){var s=this,r=$.bAK(),q=$.bAL(),p=$.bmC() +s.Jq(r,q,p,a?B.cV:B.c9,e) +r=$.bn1() +q=$.bn2() +p=$.bmD() +s.Jq(r,q,p,b?B.cV:B.c9,e) +r=$.bAM() +q=$.bAN() +p=$.bmE() +s.Jq(r,q,p,c?B.cV:B.c9,e) +r=$.bAO() +q=$.bAP() +p=$.bmF() +s.Jq(r,q,p,d?B.cV:B.c9,e)}, +Jq(a,b,c,d,e){var s,r=this,q=r.f,p=q.ao(0,a),o=q.ao(0,b),n=p||o,m=d===B.cV&&!n,l=d===B.c9&&n +if(m){r.a.$1(new A.ko(A.bl1(e),B.cV,a,c,null,!0)) +q.p(0,a,c)}if(l&&p){s=q.i(0,a) +s.toString +r.a4P(e,a,s)}if(l&&o){q=q.i(0,b) +q.toString +r.a4P(e,b,q)}}, +a4P(a,b,c){this.a.$1(new A.ko(A.bl1(a),B.c9,b,c,null,!0)) +this.f.F(0,b)}} +A.aGz.prototype={ +$1(a){var s=this +if(!s.a.a&&!s.b.e){s.c.$0() +s.b.a.$1(s.d.$0())}}, +$S:20} +A.aGA.prototype={ +$0(){this.a.a=!0}, +$S:0} +A.aGB.prototype={ +$0(){return new A.ko(new A.bk(this.a.a+2e6),B.c9,this.b,this.c,null,!0)}, +$S:221} +A.aGC.prototype={ +$0(){this.a.f.F(0,this.b)}, +$S:0} +A.aGv.prototype={ +$0(){var s,r,q,p,o,n=this,m=n.b,l=B.a6P.i(0,m) +if(l!=null)return l +s=n.c.a +if(B.F8.ao(0,A.oa(s))){m=A.oa(s) +m.toString +m=B.F8.i(0,m) +r=m==null?null:m[B.e.an(s.location)] +r.toString +return r}if(n.d){q=n.a.c.aew(A.wy(s),A.oa(s),B.e.an(s.keyCode)) +if(q!=null)return q}if(m==="Dead"){m=s.altKey +p=s.ctrlKey +o=s.shiftKey +s=s.metaKey +m=m?1073741824:0 +p=p?268435456:0 +o=o?536870912:0 +s=s?2147483648:0 +return n.e+(m+p+o+s)+98784247808}return B.c.gv(m)+98784247808}, +$S:74} +A.aGw.prototype={ +$0(){return new A.ko(this.a,B.c9,this.b,this.c.$0(),null,!0)}, +$S:221} +A.aGx.prototype={ +$0(){this.a.f.F(0,this.b)}, +$S:0} +A.aGy.prototype={ +$2(a,b){var s,r,q=this +if(J.i(q.b.$0(),a))return +s=q.a +r=s.f +if(r.aFJ(0,a)&&!b.$1(q.c))r.G9(r,new A.aGu(s,a,q.d))}, +$S:498} +A.aGu.prototype={ +$2(a,b){var s=this.b +if(b!==s)return!1 +this.a.d.$1(new A.ko(this.c,B.c9,a,s,null,!0)) +return!0}, +$S:200} +A.aGD.prototype={ +$1(a){this.a.a=!0 +return this.b.a.$1(a)}, +$S:139} +A.aJo.prototype={} +A.atL.prototype={ +gaCV(){var s=this.a +s===$&&A.b() +return s}, +m(){var s=this +if(s.c||s.gvw()==null)return +s.c=!0 +s.aCW()}, +EM(){var s=0,r=A.y(t.H),q=this +var $async$EM=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:s=q.gvw()!=null?2:3 +break +case 2:s=4 +return A.t(q.ri(),$async$EM) +case 4:s=5 +return A.t(q.gvw().y3(0,-1),$async$EM) +case 5:case 3:return A.w(null,r)}}) +return A.x($async$EM,r)}, +gt4(){var s=this.gvw() +s=s==null?null:s.aeL() +return s==null?"/":s}, +gR(){var s=this.gvw() +return s==null?null:s.XM(0)}, +aCW(){return this.gaCV().$0()}} +A.Ly.prototype={ +alC(a){var s,r=this,q=r.d +if(q==null)return +r.a=q.T_(r.gWb(r)) +if(!r.QP(r.gR())){s=t.z +q.xH(0,A.ap(["serialCount",0,"state",r.gR()],s,s),"flutter",r.gt4())}r.e=r.gPG()}, +gPG(){if(this.QP(this.gR())){var s=this.gR() +s.toString +return B.e.an(A.pt(J.b3(t.f.a(s),"serialCount")))}return 0}, +QP(a){return t.f.b(a)&&J.b3(a,"serialCount")!=null}, +H5(a,b,c){var s,r,q=this.d +if(q!=null){s=t.z +r=this.e +if(b){r===$&&A.b() +s=A.ap(["serialCount",r,"state",c],s,s) +a.toString +q.xH(0,s,"flutter",a)}else{r===$&&A.b();++r +this.e=r +s=A.ap(["serialCount",r,"state",c],s,s) +a.toString +q.ac5(0,s,"flutter",a)}}}, +Yi(a){return this.H5(a,!1,null)}, +Wc(a,b){var s,r,q,p,o=this +if(!o.QP(b)){s=o.d +s.toString +r=o.e +r===$&&A.b() +q=t.z +s.xH(0,A.ap(["serialCount",r+1,"state",b],q,q),"flutter",o.gt4())}o.e=o.gPG() +s=$.bL() +r=o.gt4() +t.Xx.a(b) +q=b==null?null:J.b3(b,"state") +p=t.z +s.pK("flutter/navigation",B.bL.pA(new A.lP("pushRouteInformation",A.ap(["location",r,"state",q],p,p))),new A.aJH())}, +ri(){var s=0,r=A.y(t.H),q,p=this,o,n,m +var $async$ri=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:p.m() +if(p.b||p.d==null){s=1 +break}p.b=!0 +o=p.gPG() +s=o>0?3:4 +break +case 3:s=5 +return A.t(p.d.y3(0,-o),$async$ri) +case 5:case 4:n=p.gR() +n.toString +t.f.a(n) +m=p.d +m.toString +m.xH(0,J.b3(n,"state"),"flutter",p.gt4()) +case 1:return A.w(q,r)}}) +return A.x($async$ri,r)}, +gvw(){return this.d}} +A.aJH.prototype={ +$1(a){}, +$S:48} +A.NK.prototype={ +alL(a){var s,r=this,q=r.d +if(q==null)return +r.a=q.T_(r.gWb(r)) +s=r.gt4() +if(!A.bjI(A.bp1(self.window.history))){q.xH(0,A.ap(["origin",!0,"state",r.gR()],t.N,t.z),"origin","") +r.aAY(q,s)}}, +H5(a,b,c){var s=this.d +if(s!=null)this.Sa(s,a,!0)}, +Yi(a){return this.H5(a,!1,null)}, +Wc(a,b){var s,r=this,q="flutter/navigation" +if(A.brX(b)){s=r.d +s.toString +r.aAX(s) +$.bL().pK(q,B.bL.pA(B.a9D),new A.aT9())}else if(A.bjI(b)){s=r.f +s.toString +r.f=null +$.bL().pK(q,B.bL.pA(new A.lP("pushRoute",s)),new A.aTa())}else{r.f=r.gt4() +r.d.y3(0,-1)}}, +Sa(a,b,c){var s +if(b==null)b=this.gt4() +s=this.e +if(c)a.xH(0,s,"flutter",b) +else a.ac5(0,s,"flutter",b)}, +aAY(a,b){return this.Sa(a,b,!1)}, +aAX(a){return this.Sa(a,null,!1)}, +ri(){var s=0,r=A.y(t.H),q,p=this,o,n +var $async$ri=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:p.m() +if(p.b||p.d==null){s=1 +break}p.b=!0 +o=p.d +s=3 +return A.t(o.y3(0,-1),$async$ri) +case 3:n=p.gR() +n.toString +o.xH(0,J.b3(t.f.a(n),"state"),"flutter",p.gt4()) +case 1:return A.w(q,r)}}) +return A.x($async$ri,r)}, +gvw(){return this.d}} +A.aT9.prototype={ +$1(a){}, +$S:48} +A.aTa.prototype={ +$1(a){}, +$S:48} +A.al.prototype={ +gRJ(){var s,r=this,q=r.d +if(q===$){s=A.bQp(r.c) +r.d!==$&&A.am() +r.d=s +q=s}return q}, +n(a,b){var s,r,q,p=this.gRJ().length-1 +for(s=0;s<=p;){r=B.f.cY(s+p,2) +q=this.gRJ()[r] +if(q.a>b)p=r-1 +else{if(q.b>=b)return!0 +s=r+1}}return!1}} +A.pN.prototype={ +l(a,b){if(b==null)return!1 +if(!(b instanceof A.pN))return!1 +return b.a===this.a&&b.b===this.b}, +gv(a){return A.X(this.a,this.b,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){return"["+this.a+", "+this.b+"]"}} +A.aK3.prototype={} +A.a0D.prototype={ +E6(a){var s +this.b=a +this.c=!0 +s=A.a([],t.EO) +return this.a=new A.aOy(new A.b7J(a,A.a([],t.Xr),A.a([],t.cA),A.h8()),s,new A.aPB())}, +gaaQ(){return this.c}, +EH(){var s,r=this +if(!r.c)r.E6(B.hW) +r.c=!1 +s=r.a +s.b=s.a.aFD() +s.f=!0 +s=r.a +r.b===$&&A.b() +return new A.a0C(s)}} +A.a0C.prototype={ +m(){this.a=!0}} +A.a1E.prototype={ +ga2Q(){var s,r=this,q=r.c +if(q===$){s=t.e.a(A.cA(r.gaxa())) +r.c!==$&&A.am() +r.c=s +q=s}return q}, +axb(a){var s,r,q,p=A.bp2(a) +p.toString +for(s=this.a,r=s.length,q=0;q>>0)) +g.ji(c,B.aK.e4([!0])) +return +case"SystemChrome.setSystemUIOverlayStyle":l=A.bv(J.b3(t.xE.a(s.b),"statusBarColor")) +A.bxu(l==null?null:new A.M(l>>>0)) +g.ji(c,B.aK.e4([!0])) +return +case"SystemChrome.setPreferredOrientations":o=t.j.a(s.b) +$.hm.afA(o).b9(new A.aAs(g,c),t.P) +return +case"SystemSound.play":g.ji(c,B.aK.e4([!0])) +return +case"Clipboard.setData":new A.Yt(A.bov(),A.brc()).aft(s,c) +return +case"Clipboard.getData":new A.Yt(A.bov(),A.brc()).aeq(c) +return}break +case"flutter/service_worker":q=self.window +k=self.document.createEvent("Event") +k.initEvent("flutter-first-frame",!0,!0) +q.dispatchEvent(k) +return +case"flutter/textinput":q=$.aqR() +q.gfW(q).aJn(b,c) +return +case"flutter/contextmenu":switch(B.bL.oE(b).a){case"enableContextMenu":$.hm.a.a92() +g.ji(c,B.aK.e4([!0])) +return +case"disableContextMenu":$.hm.a.a8P() +g.ji(c,B.aK.e4([!0])) +return}return +case"flutter/mousecursor":s=B.eT.oE(b) +o=t.f.a(s.b) +switch(s.a){case"activateSystemCursor":$.bji.toString +q=A.ae(J.b3(o,"kind")) +k=$.hm.f +k===$&&A.b() +q=B.a6L.i(0,q) +A.hn(k,"cursor",q==null?"default":q) +break}return +case"flutter/web_test_e2e":g.ji(c,B.aK.e4([A.bPi(B.bL,b)])) +return +case"flutter/platform_views":q=g.cy +if(q==null)q=g.cy=new A.aLJ($.bhg(),new A.aAt()) +c.toString +q.aIY(b,c) +return +case"flutter/accessibility":q=$.hm.y +q===$&&A.b() +k=t.f +j=k.a(J.b3(k.a(B.ds.k5(b)),"data")) +i=A.ae(J.b3(j,"message")) +if(i!=null&&i.length!==0){h=A.bj_(j,"assertiveness") +q.a6M(i,B.Yx[h==null?0:h])}g.ji(c,B.ds.e4(!0)) +return +case"flutter/navigation":g.d.i(0,0).V2(b).b9(new A.aAu(g,c),t.P) +g.ry="/" +return}q=$.bxe +if(q!=null){q.$3(a,b,c) +return}g.ji(c,null)}, +D3(a,b){return this.ask(a,b)}, +ask(a,b){var s=0,r=A.y(t.H),q=1,p,o=this,n,m,l,k,j,i +var $async$D3=A.u(function(c,d){if(c===1){p=d +s=q}while(true)switch(s){case 0:q=3 +i=t.Lk +s=6 +return A.t(A.A0($.vy.xS(a)),$async$D3) +case 6:n=i.a(d) +s=7 +return A.t(n.gBi().wz(),$async$D3) +case 7:m=d +o.ji(b,A.ks(m,0,null)) +q=1 +s=5 +break +case 3:q=2 +j=p +l=A.ai(j) +$.h0().$1("Error while trying to load an asset: "+A.h(l)) +o.ji(b,null) +s=5 +break +case 2:s=1 +break +case 5:return A.w(null,r) +case 1:return A.v(p,r)}}) +return A.x($async$D3,r)}, +ar2(a){switch(a){case"HapticFeedbackType.lightImpact":return 10 +case"HapticFeedbackType.mediumImpact":return 20 +case"HapticFeedbackType.heavyImpact":return 30 +case"HapticFeedbackType.selectionClick":return 10 +default:return 50}}, +rs(){var s=$.bxs +if(s==null)throw A.c(A.cR("scheduleFrameCallback must be initialized first.")) +s.$0()}, +amc(){var s=this +if(s.dy!=null)return +s.a=s.a.a7W(A.biu()) +s.dy=A.eG(self.window,"languagechange",new A.aAq(s))}, +am8(){var s,r,q,p=new globalThis.MutationObserver(A.cA(new A.aAp(this))) +this.fy=p +s=self.document.documentElement +s.toString +r=A.a(["style"],t.s) +q=A.F(t.N,t.z) +q.p(0,"attributes",!0) +q.p(0,"attributeFilter",r) +r=A.b0(q) +if(r==null)r=t.K.a(r) +p.observe(s,r)}, +a5T(a){var s=this,r=s.a +if(r.d!==a){s.a=r.aG2(a) +A.rG(null,null) +A.rG(s.k3,s.k4)}}, +aD3(a){var s=this.a,r=s.a +if((r.a&32)!==0!==a){this.a=s.a7P(r.aFZ(a)) +A.rG(null,null)}}, +am3(){var s,r=this,q=r.k1 +r.a5T(q.matches?B.am:B.aB) +s=t.e.a(A.cA(new A.aAo(r))) +r.k2=s +q.addListener(s)}, +qR(a,b,c){A.VZ(this.p4,this.R8,new A.E0(b,0,a,c))}, +gKM(){var s=this.ry +return s==null?this.ry=this.d.i(0,0).gKe().gt4():s}, +ji(a,b){A.BQ(B.F,null,t.H).b9(new A.aAx(a,b),t.P)}} +A.aAw.prototype={ +$0(){return this.a.$1(this.b.$1(this.c))}, +$S:0} +A.aAv.prototype={ +$1(a){this.a.xL(this.b,a)}, +$S:48} +A.aAr.prototype={ +$1(a){this.a.ji(this.b,B.aK.e4([!0]))}, +$S:20} +A.aAs.prototype={ +$1(a){this.a.ji(this.b,B.aK.e4([a]))}, +$S:131} +A.aAt.prototype={ +$1(a){var s=$.hm.r +s===$&&A.b() +s.append(a)}, +$S:3} +A.aAu.prototype={ +$1(a){var s=this.b +if(a)this.a.ji(s,B.aK.e4([!0])) +else if(s!=null)s.$1(null)}, +$S:131} +A.aAq.prototype={ +$1(a){var s=this.a +s.a=s.a.a7W(A.biu()) +A.rG(s.fr,s.fx)}, +$S:3} +A.aAp.prototype={ +$2(a,b){var s,r,q,p,o,n,m,l=null +for(s=J.ao(a),r=t.e,q=this.a;s.u();){p=s.gH(s) +p.toString +r.a(p) +o=p.type +if((o==null?l:o)==="attributes"){o=p.attributeName +o=(o==null?l:o)==="style"}else o=!1 +if(o){o=self.document.documentElement +o.toString +n=A.bU4(o) +m=(n==null?16:n)/16 +o=q.a +if(o.e!==m){q.a=o.zK(m) +A.rG(l,l) +A.rG(q.go,q.id)}}}}, +$S:503} +A.aAo.prototype={ +$1(a){var s=A.bp2(a) +s.toString +s=s?B.am:B.aB +this.a.a5T(s)}, +$S:3} +A.aAx.prototype={ +$1(a){var s=this.a +if(s!=null)s.$1(this.b)}, +$S:20} +A.bfH.prototype={ +$0(){this.a.$2(this.b,this.c)}, +$S:0} +A.aaV.prototype={ +j(a){return A.o(this).j(0)+"[view: null, geometry: "+B.Y.j(0)+"]"}} +A.a6n.prototype={ +Eo(a,b,c,d,e){var s=this,r=a==null?s.a:a,q=d==null?s.c:d,p=c==null?s.d:c,o=e==null?s.e:e,n=b==null?s.f:b +return new A.a6n(r,!1,q,p,o,n,s.r,s.w)}, +a7P(a){return this.Eo(a,null,null,null,null)}, +a7W(a){return this.Eo(null,a,null,null,null)}, +zK(a){return this.Eo(null,null,null,null,a)}, +aG2(a){return this.Eo(null,null,a,null,null)}, +aG3(a){return this.Eo(null,null,null,a,null)}} +A.aLH.prototype={ +aNr(a,b,c){var s=this.a +if(s.ao(0,a))return!1 +s.p(0,a,b) +this.c.G(0,a) +return!0}, +aNF(a,b,c){this.d.p(0,b,a) +return this.b.cJ(0,b,new A.aLI(this,"flt-pv-slot-"+b,a,b,c))}, +azT(a){var s,r,q +if(a==null)return +s=$.dv() +if(s!==B.ah){a.remove() +return}s=a.getAttribute("slot") +r="tombstone-"+A.h(s==null?null:s) +q=A.c4(self.document,"slot") +A.Q(q.style,"display","none") +s=A.b0(r) +if(s==null)s=t.K.a(s) +q.setAttribute("name",s) +s=$.hm.w +s===$&&A.b() +s.append(q) +s=A.b0(r) +if(s==null)s=t.K.a(s) +a.setAttribute("slot",s) +a.remove() +q.remove()}} +A.aLI.prototype={ +$0(){var s,r,q,p,o=this,n=A.c4(self.document,"flt-platform-view"),m=A.b0(o.b) +if(m==null)m=t.K.a(m) +n.setAttribute("slot",m) +m=o.c +s=o.a.a.i(0,m) +s.toString +r=o.d +q=t.e +if(t._a.b(s))p=q.a(s.$2$params(r,o.e)) +else{t.xA.a(s) +p=q.a(s.$1(r))}if(p.style.getPropertyValue("height").length===0){$.h0().$1("Height of Platform View type: ["+m+"] may not be set. Defaulting to `height: 100%`.\nSet `style.height` to any appropriate value to stop this message.") +A.Q(p.style,"height","100%")}if(p.style.getPropertyValue("width").length===0){$.h0().$1("Width of Platform View type: ["+m+"] may not be set. Defaulting to `width: 100%`.\nSet `style.width` to any appropriate value to stop this message.") +A.Q(p.style,"width","100%")}n.append(p) +return n}, +$S:121} +A.aLJ.prototype={ +aoP(a,b){var s=t.f.a(a.b),r=J.ak(s),q=B.e.an(A.nM(r.i(s,"id"))),p=A.bs(r.i(s,"viewType")),o=r.i(s,"params") +r=this.b +if(!r.a.ao(0,p)){b.$1(B.eT.wY("unregistered_view_type","If you are the author of the PlatformView, make sure `registerViewFactory` is invoked.","A HtmlElementView widget is trying to create a platform view with an unregistered type: <"+p+">.")) +return}if(r.b.ao(0,q)){b.$1(B.eT.wY("recreating_view","view id: "+q,"trying to create an already created view")) +return}this.c.$1(r.aNF(p,q,o)) +b.$1(B.eT.EG(null))}, +aIY(a,b){var s,r=B.eT.oE(a) +switch(r.a){case"create":this.aoP(r,b) +return +case"dispose":s=this.b +s.azT(s.b.F(0,A.fY(r.b))) +b.$1(B.eT.EG(null)) +return}b.$1(null)}} +A.aQx.prototype={ +aPi(){A.dU(self.document,"touchstart",t.e.a(A.cA(new A.aQy())),null)}} +A.aQy.prototype={ +$1(a){}, +$S:3} +A.a6s.prototype={ +aoF(){var s,r=this +if("PointerEvent" in self.window){s=new A.b7M(A.F(t.S,t.ZW),A.a([],t.he),r.a,r.gRv(),r.c,r.d) +s.Ck() +return s}if("TouchEvent" in self.window){s=new A.bcc(A.aY(t.S),A.a([],t.he),r.a,r.gRv(),r.c,r.d) +s.Ck() +return s}if("MouseEvent" in self.window){s=new A.b6M(new A.zy(),A.a([],t.he),r.a,r.gRv(),r.c,r.d) +s.Ck() +return s}throw A.c(A.a7("This browser does not support pointer, touch, or mouse events."))}, +axi(a){var s=A.a(a.slice(0),A.ab(a)),r=$.bL() +A.VZ(r.Q,r.as,new A.Mj(s))}} +A.aLU.prototype={ +j(a){return"pointers:"+("PointerEvent" in self.window)+", touch:"+("TouchEvent" in self.window)+", mouse:"+("MouseEvent" in self.window)}} +A.RJ.prototype={} +A.b0B.prototype={ +SV(a,b,c,d,e){var s=t.e.a(A.cA(new A.b0C(d))) +A.dU(b,c,s,e) +this.a.push(new A.RJ(c,b,s,e,!1))}, +zg(a,b,c,d){return this.SV(a,b,c,d,!0)}} +A.b0C.prototype={ +$1(a){var s=$.hx +if((s==null?$.hx=A.pX():s).acc(a))this.a.$1(a)}, +$S:3} +A.anV.prototype={ +a27(a,b){if(b==null)return!1 +return Math.abs(b- -3*a)>1}, +avh(a){var s,r,q,p,o,n=this,m=$.dv() +if(m===B.cP)return!1 +if(n.a27(a.deltaX,A.bp8(a))||n.a27(a.deltaY,A.bp9(a)))return!1 +if(!(B.e.aH(a.deltaX,120)===0&&B.e.aH(a.deltaY,120)===0)){m=A.bp8(a) +if(B.e.aH(m==null?1:m,120)===0){m=A.bp9(a) +m=B.e.aH(m==null?1:m,120)===0}else m=!1}else m=!0 +if(m){m=a.deltaX +s=n.f +r=s==null +q=r?null:s.deltaX +p=Math.abs(m-(q==null?0:q)) +m=a.deltaY +q=r?null:s.deltaY +o=Math.abs(m-(q==null?0:q)) +if(!r)if(!(p===0&&o===0))m=!(p<20&&o<20) +else m=!0 +else m=!0 +if(m){if(A.jw(a)!=null)m=(r?null:A.jw(s))!=null +else m=!1 +if(m){m=A.jw(a) +m.toString +s.toString +s=A.jw(s) +s.toString +if(m-s<50&&n.r)return!0}return!1}}return!0}, +aoC(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d=this +if(d.avh(a)){s=B.bF +r=-2}else{s=B.bY +r=-1}q=a.deltaX +p=a.deltaY +switch(B.e.an(a.deltaMode)){case 1:o=$.buK +if(o==null){n=A.c4(self.document,"div") +o=n.style +A.Q(o,"font-size","initial") +A.Q(o,"display","none") +self.document.body.append(n) +o=A.bir(self.window,n).getPropertyValue("font-size") +if(B.c.n(o,"px"))m=A.brq(A.eC(o,"px","")) +else m=null +n.remove() +o=$.buK=m==null?16:m/4}q*=o +p*=o +break +case 2:o=$.eg() +q*=o.gnt().a +p*=o.gnt().b +break +case 0:o=$.fI() +if(o===B.d0){o=$.dv() +if(o!==B.ah)o=o===B.cP +else o=!0}else o=!1 +if(o){o=$.eg() +l=o.x +if(l==null){l=self.window.devicePixelRatio +if(l===0)l=1}q*=l +o=o.x +if(o==null){o=self.window.devicePixelRatio +if(o===0)o=1}p*=o}break +default:break}k=A.a([],t.D9) +j=A.blt(a,d.b) +o=$.fI() +if(o===B.d0){o=$.aGr +o=o==null?null:o.gCP().f.ao(0,$.bn1()) +if(o!==!0){o=$.aGr +o=o==null?null:o.gCP().f.ao(0,$.bn2()) +i=o===!0}else i=!0}else i=!1 +o=a.ctrlKey&&!i +l=d.d +h=j.a +if(o){o=A.jw(a) +o.toString +o=A.zw(o) +g=$.eg() +f=g.x +if(f==null){f=self.window.devicePixelRatio +if(f===0)f=1}g=g.x +if(g==null){g=self.window.devicePixelRatio +if(g===0)g=1}e=A.mK(a) +e.toString +l.aFP(k,B.e.an(e),B.eq,r,s,h*f,j.b*g,1,1,Math.exp(-p/200),B.abR,o)}else{o=A.jw(a) +o.toString +o=A.zw(o) +g=$.eg() +f=g.x +if(f==null){f=self.window.devicePixelRatio +if(f===0)f=1}g=g.x +if(g==null){g=self.window.devicePixelRatio +if(g===0)g=1}e=A.mK(a) +e.toString +l.aFR(k,B.e.an(e),B.eq,r,s,h*f,j.b*g,1,1,q,p,B.abQ,o)}d.f=a +d.r=s===B.bF +return k}, +ZO(a){var s=this.b,r=t.e.a(A.cA(a)),q=t.K,p=A.b0(A.ap(["capture",!1,"passive",!1],t.N,q)) +q=p==null?q.a(p):p +s.addEventListener("wheel",r,q) +this.a.push(new A.RJ("wheel",s,r,!1,!0))}, +a1O(a){this.c.$1(this.aoC(a)) +a.preventDefault()}} +A.pl.prototype={ +j(a){return A.o(this).j(0)+"(change: "+this.a.j(0)+", buttons: "+this.b+")"}} +A.zy.prototype={ +XR(a,b){var s +if(this.a!==0)return this.NM(b) +s=(b===0&&a>-1?A.bRg(a):b)&1073741823 +this.a=s +return new A.pl(B.J1,s)}, +NM(a){var s=a&1073741823,r=this.a +if(r===0&&s!==0)return new A.pl(B.eq,r) +this.a=s +return new A.pl(s===0?B.eq:B.hU,s)}, +GY(a){if(this.a!==0&&(a&1073741823)===0){this.a=0 +return new A.pl(B.o9,0)}return null}, +XS(a){if((a&1073741823)===0){this.a=0 +return new A.pl(B.eq,0)}return null}, +XU(a){var s +if(this.a===0)return null +s=this.a=(a==null?0:a)&1073741823 +if(s===0)return new A.pl(B.o9,s) +else return new A.pl(B.hU,s)}} +A.b7M.prototype={ +PY(a){return this.w.cJ(0,a,new A.b7O())}, +a3x(a){if(A.biq(a)==="touch")this.w.F(0,A.bp4(a))}, +OT(a,b,c,d,e){this.SV(0,a,b,new A.b7N(this,d,c),e)}, +OS(a,b,c){return this.OT(a,b,c,!0,!0)}, +amd(a,b,c,d){return this.OT(a,b,c,d,!0)}, +Ck(){var s=this,r=s.b +s.OS(r,"pointerdown",new A.b7P(s)) +s.OS(self.window,"pointermove",new A.b7Q(s)) +s.OT(r,"pointerleave",new A.b7R(s),!1,!1) +s.OS(self.window,"pointerup",new A.b7S(s)) +s.amd(r,"pointercancel",new A.b7T(s),!1) +s.ZO(new A.b7U(s))}, +kF(a,b,c){var s,r,q,p,o,n,m,l,k=this,j=A.biq(c) +j.toString +s=k.a3d(j) +j=A.bp5(c) +j.toString +r=A.bp6(c) +r.toString +j=Math.abs(j)>Math.abs(r)?A.bp5(c):A.bp6(c) +j.toString +r=A.jw(c) +r.toString +q=A.zw(r) +p=c.pressure +if(p==null)p=null +o=A.blt(c,k.b) +r=k.yL(c) +n=$.eg() +m=n.x +if(m==null){m=self.window.devicePixelRatio +if(m===0)m=1}n=n.x +if(n==null){n=self.window.devicePixelRatio +if(n===0)n=1}l=p==null?0:p +k.d.aFQ(a,b.b,b.a,r,s,o.a*m,o.b*n,l,1,B.fy,j/180*3.141592653589793,q)}, +aq1(a){var s,r +if("getCoalescedEvents" in a){s=t.e +r=J.iP(a.getCoalescedEvents(),s).jZ(0,s) +if(!r.gai(r))return r}return A.a([a],t.A)}, +a3d(a){switch(a){case"mouse":return B.bY +case"pen":return B.cq +case"touch":return B.b8 +default:return B.d2}}, +yL(a){var s=A.biq(a) +s.toString +if(this.a3d(s)===B.bY)s=-1 +else{s=A.bp4(a) +s.toString +s=B.e.an(s)}return s}} +A.b7O.prototype={ +$0(){return new A.zy()}, +$S:510} +A.b7N.prototype={ +$1(a){var s,r,q,p,o +if(this.b){s=a.getModifierState("Alt") +r=a.getModifierState("Control") +q=a.getModifierState("Meta") +p=a.getModifierState("Shift") +o=A.jw(a) +o.toString +this.a.e.OE(s,r,q,p,o)}this.c.$1(a)}, +$S:3} +A.b7P.prototype={ +$1(a){var s,r,q=this.a,p=q.yL(a),o=A.a([],t.D9),n=q.PY(p),m=A.mK(a) +m.toString +s=n.GY(B.e.an(m)) +if(s!=null)q.kF(o,s,a) +m=B.e.an(a.button) +r=A.mK(a) +r.toString +q.kF(o,n.XR(m,B.e.an(r)),a) +q.c.$1(o)}, +$S:32} +A.b7Q.prototype={ +$1(a){var s,r,q,p,o=this.a,n=o.PY(o.yL(a)),m=A.a([],t.D9) +for(s=J.ao(o.aq1(a));s.u();){r=s.gH(s) +q=r.buttons +if(q==null)q=null +q.toString +p=n.GY(B.e.an(q)) +if(p!=null)o.kF(m,p,r) +q=r.buttons +if(q==null)q=null +q.toString +o.kF(m,n.NM(B.e.an(q)),r)}o.c.$1(m)}, +$S:32} +A.b7R.prototype={ +$1(a){var s,r=this.a,q=r.PY(r.yL(a)),p=A.a([],t.D9),o=A.mK(a) +o.toString +s=q.XS(B.e.an(o)) +if(s!=null){r.kF(p,s,a) +r.c.$1(p)}}, +$S:32} +A.b7S.prototype={ +$1(a){var s,r,q,p=this.a,o=p.yL(a),n=p.w +if(n.ao(0,o)){s=A.a([],t.D9) +n=n.i(0,o) +n.toString +r=A.mK(a) +q=n.XU(r==null?null:B.e.an(r)) +p.a3x(a) +if(q!=null){p.kF(s,q,a) +p.c.$1(s)}}}, +$S:32} +A.b7T.prototype={ +$1(a){var s,r=this.a,q=r.yL(a),p=r.w +if(p.ao(0,q)){s=A.a([],t.D9) +p=p.i(0,q) +p.toString +p.a=0 +r.a3x(a) +r.kF(s,new A.pl(B.o7,0),a) +r.c.$1(s)}}, +$S:32} +A.b7U.prototype={ +$1(a){this.a.a1O(a)}, +$S:3} +A.bcc.prototype={ +HA(a,b,c){this.zg(0,a,b,new A.bcd(this,!0,c))}, +Ck(){var s=this,r=s.b +s.HA(r,"touchstart",new A.bce(s)) +s.HA(r,"touchmove",new A.bcf(s)) +s.HA(r,"touchend",new A.bcg(s)) +s.HA(r,"touchcancel",new A.bch(s))}, +HT(a,b,c,d,e){var s,r,q,p,o,n=A.bFc(e) +n.toString +n=B.e.an(n) +s=e.clientX +r=$.eg() +q=r.x +if(q==null){q=self.window.devicePixelRatio +if(q===0)q=1}p=e.clientY +r=r.x +if(r==null){r=self.window.devicePixelRatio +if(r===0)r=1}o=c?1:0 +this.d.aFN(b,o,a,n,s*q,p*r,1,1,B.fy,d)}} +A.bcd.prototype={ +$1(a){var s=a.altKey,r=a.ctrlKey,q=a.metaKey,p=a.shiftKey,o=A.jw(a) +o.toString +this.a.e.OE(s,r,q,p,o) +this.c.$1(a)}, +$S:3} +A.bce.prototype={ +$1(a){var s,r,q,p,o,n,m,l=A.jw(a) +l.toString +s=A.zw(l) +r=A.a([],t.D9) +for(l=t.e,q=t.VA,q=A.dx(new A.re(a.changedTouches,q),q.h("z.E"),l),l=A.dx(q.a,A.k(q).c,l),q=J.ao(l.a),l=A.k(l),l=l.h("@<1>").S(l.z[1]).z[1],p=this.a;q.u();){o=l.a(q.gH(q)) +n=o.identifier +if(n==null)n=null +n.toString +m=p.w +if(!m.n(0,B.e.an(n))){n=o.identifier +if(n==null)n=null +n.toString +m.G(0,B.e.an(n)) +p.HT(B.J1,r,!0,s,o)}}p.c.$1(r)}, +$S:32} +A.bcf.prototype={ +$1(a){var s,r,q,p,o,n,m +a.preventDefault() +s=A.jw(a) +s.toString +r=A.zw(s) +q=A.a([],t.D9) +for(s=t.e,p=t.VA,p=A.dx(new A.re(a.changedTouches,p),p.h("z.E"),s),s=A.dx(p.a,A.k(p).c,s),p=J.ao(s.a),s=A.k(s),s=s.h("@<1>").S(s.z[1]).z[1],o=this.a;p.u();){n=s.a(p.gH(p)) +m=n.identifier +if(m==null)m=null +m.toString +if(o.w.n(0,B.e.an(m)))o.HT(B.hU,q,!0,r,n)}o.c.$1(q)}, +$S:32} +A.bcg.prototype={ +$1(a){var s,r,q,p,o,n,m,l +a.preventDefault() +s=A.jw(a) +s.toString +r=A.zw(s) +q=A.a([],t.D9) +for(s=t.e,p=t.VA,p=A.dx(new A.re(a.changedTouches,p),p.h("z.E"),s),s=A.dx(p.a,A.k(p).c,s),p=J.ao(s.a),s=A.k(s),s=s.h("@<1>").S(s.z[1]).z[1],o=this.a;p.u();){n=s.a(p.gH(p)) +m=n.identifier +if(m==null)m=null +m.toString +l=o.w +if(l.n(0,B.e.an(m))){m=n.identifier +if(m==null)m=null +m.toString +l.F(0,B.e.an(m)) +o.HT(B.o9,q,!1,r,n)}}o.c.$1(q)}, +$S:32} +A.bch.prototype={ +$1(a){var s,r,q,p,o,n,m,l=A.jw(a) +l.toString +s=A.zw(l) +r=A.a([],t.D9) +for(l=t.e,q=t.VA,q=A.dx(new A.re(a.changedTouches,q),q.h("z.E"),l),l=A.dx(q.a,A.k(q).c,l),q=J.ao(l.a),l=A.k(l),l=l.h("@<1>").S(l.z[1]).z[1],p=this.a;q.u();){o=l.a(q.gH(q)) +n=o.identifier +if(n==null)n=null +n.toString +m=p.w +if(m.n(0,B.e.an(n))){n=o.identifier +if(n==null)n=null +n.toString +m.F(0,B.e.an(n)) +p.HT(B.o7,r,!1,s,o)}}p.c.$1(r)}, +$S:32} +A.b6M.prototype={ +ZJ(a,b,c,d){this.SV(0,a,b,new A.b6N(this,!0,c),d)}, +OO(a,b,c){return this.ZJ(a,b,c,!0)}, +Ck(){var s=this,r=s.b +s.OO(r,"mousedown",new A.b6O(s)) +s.OO(self.window,"mousemove",new A.b6P(s)) +s.ZJ(r,"mouseleave",new A.b6Q(s),!1) +s.OO(self.window,"mouseup",new A.b6R(s)) +s.ZO(new A.b6S(s))}, +kF(a,b,c){var s,r,q=A.blt(c,this.b),p=A.jw(c) +p.toString +p=A.zw(p) +s=$.eg() +r=s.x +if(r==null){r=self.window.devicePixelRatio +if(r===0)r=1}s=s.x +if(s==null){s=self.window.devicePixelRatio +if(s===0)s=1}this.d.aFO(a,b.b,b.a,-1,B.bY,q.a*r,q.b*s,1,1,B.fy,p)}} +A.b6N.prototype={ +$1(a){var s=a.getModifierState("Alt"),r=a.getModifierState("Control"),q=a.getModifierState("Meta"),p=a.getModifierState("Shift"),o=A.jw(a) +o.toString +this.a.e.OE(s,r,q,p,o) +this.c.$1(a)}, +$S:3} +A.b6O.prototype={ +$1(a){var s,r,q=A.a([],t.D9),p=this.a,o=p.w,n=A.mK(a) +n.toString +s=o.GY(B.e.an(n)) +if(s!=null)p.kF(q,s,a) +n=B.e.an(a.button) +r=A.mK(a) +r.toString +p.kF(q,o.XR(n,B.e.an(r)),a) +p.c.$1(q)}, +$S:32} +A.b6P.prototype={ +$1(a){var s,r=A.a([],t.D9),q=this.a,p=q.w,o=A.mK(a) +o.toString +s=p.GY(B.e.an(o)) +if(s!=null)q.kF(r,s,a) +o=A.mK(a) +o.toString +q.kF(r,p.NM(B.e.an(o)),a) +q.c.$1(r)}, +$S:32} +A.b6Q.prototype={ +$1(a){var s,r=A.a([],t.D9),q=this.a,p=A.mK(a) +p.toString +s=q.w.XS(B.e.an(p)) +if(s!=null){q.kF(r,s,a) +q.c.$1(r)}}, +$S:32} +A.b6R.prototype={ +$1(a){var s,r=A.a([],t.D9),q=this.a,p=A.mK(a) +p=p==null?null:B.e.an(p) +s=q.w.XU(p) +if(s!=null){q.kF(r,s,a) +q.c.$1(r)}}, +$S:32} +A.b6S.prototype={ +$1(a){this.a.a1O(a)}, +$S:3} +A.Gs.prototype={} +A.aLM.prototype={ +HZ(a,b,c){return this.a.cJ(0,a,new A.aLN(b,c))}, +w8(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,a0,a1,a2,a3,a4,a5,a6,a7,a8){var s,r,q=this.a.i(0,c) +q.toString +s=q.b +r=q.c +q.b=i +q.c=j +q=q.a +if(q==null)q=0 +return A.bri(a,b,c,d,e,f,!1,h,i-s,j-r,i,j,k,q,l,m,n,o,p,a0,a1,a2,a3,a4,a5,a6,!1,a7,a8)}, +Rb(a,b,c){var s=this.a.i(0,a) +s.toString +return s.b!==b||s.c!==c}, +uq(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,a0,a1,a2,a3,a4,a5,a6,a7){var s,r,q=this.a.i(0,c) +q.toString +s=q.b +r=q.c +q.b=i +q.c=j +q=q.a +if(q==null)q=0 +return A.bri(a,b,c,d,e,f,!1,h,i-s,j-r,i,j,k,q,l,m,n,o,p,a0,a1,a2,a3,a4,B.fy,a5,!0,a6,a7)}, +Eh(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){var s,r,q,p=this +if(m===B.fy)switch(c.a){case 1:p.HZ(d,f,g) +a.push(p.w8(b,c,d,0,0,e,!1,0,f,g,0,h,i,0,0,0,0,0,j,k,l,m,0,n,o)) +break +case 3:s=p.a.ao(0,d) +p.HZ(d,f,g) +if(!s)a.push(p.uq(b,B.o8,d,0,0,e,!1,0,f,g,0,h,i,0,0,0,0,0,j,k,l,0,n,o)) +a.push(p.w8(b,c,d,0,0,e,!1,0,f,g,0,h,i,0,0,0,0,0,j,k,l,m,0,n,o)) +p.b=b +break +case 4:s=p.a.ao(0,d) +p.HZ(d,f,g).a=$.btZ=$.btZ+1 +if(!s)a.push(p.uq(b,B.o8,d,0,0,e,!1,0,f,g,0,h,i,0,0,0,0,0,j,k,l,0,n,o)) +if(p.Rb(d,f,g))a.push(p.uq(0,B.eq,d,0,0,e,!1,0,f,g,0,0,i,0,0,0,0,0,j,k,l,0,n,o)) +a.push(p.w8(b,c,d,0,0,e,!1,0,f,g,0,h,i,0,0,0,0,0,j,k,l,m,0,n,o)) +p.b=b +break +case 5:a.push(p.w8(b,c,d,0,0,e,!1,0,f,g,0,h,i,0,0,0,0,0,j,k,l,m,0,n,o)) +p.b=b +break +case 6:case 0:r=p.a +q=r.i(0,d) +q.toString +if(c===B.o7){f=q.b +g=q.c}if(p.Rb(d,f,g))a.push(p.uq(p.b,B.hU,d,0,0,e,!1,0,f,g,0,h,i,0,0,0,0,0,j,k,l,0,n,o)) +a.push(p.w8(b,c,d,0,0,e,!1,0,f,g,0,h,i,0,0,0,0,0,j,k,l,m,0,n,o)) +if(e===B.b8){a.push(p.uq(0,B.abP,d,0,0,e,!1,0,f,g,0,0,i,0,0,0,0,0,j,k,l,0,n,o)) +r.F(0,d)}break +case 2:r=p.a +q=r.i(0,d) +q.toString +a.push(p.w8(b,c,d,0,0,e,!1,0,q.b,q.c,0,h,i,0,0,0,0,0,j,k,l,m,0,n,o)) +r.F(0,d) +break +case 7:case 8:case 9:break}else switch(m.a){case 1:case 2:case 3:s=p.a.ao(0,d) +p.HZ(d,f,g) +if(!s)a.push(p.uq(b,B.o8,d,0,0,e,!1,0,f,g,0,h,i,0,0,0,0,0,j,k,l,0,n,o)) +if(p.Rb(d,f,g))if(b!==0)a.push(p.uq(b,B.hU,d,0,0,e,!1,0,f,g,0,h,i,0,0,0,0,0,j,k,l,0,n,o)) +else a.push(p.uq(b,B.eq,d,0,0,e,!1,0,f,g,0,h,i,0,0,0,0,0,j,k,l,0,n,o)) +a.push(p.w8(b,c,d,0,0,e,!1,0,f,g,0,h,i,0,0,0,0,0,j,k,l,m,0,n,o)) +break +case 0:break +case 4:break}}, +aFP(a,b,c,d,e,f,g,h,i,j,k,l){return this.Eh(a,b,c,d,e,f,g,h,i,j,0,0,k,0,l)}, +aFR(a,b,c,d,e,f,g,h,i,j,k,l,m){return this.Eh(a,b,c,d,e,f,g,h,i,1,j,k,l,0,m)}, +aFO(a,b,c,d,e,f,g,h,i,j,k){return this.Eh(a,b,c,d,e,f,g,h,i,1,0,0,j,0,k)}, +aFN(a,b,c,d,e,f,g,h,i,j){return this.Eh(a,b,c,d,B.b8,e,f,g,h,1,0,0,i,0,j)}, +aFQ(a,b,c,d,e,f,g,h,i,j,k,l){return this.Eh(a,b,c,d,e,f,g,h,i,1,0,0,j,k,l)}} +A.aLN.prototype={ +$0(){return new A.Gs(this.a,this.b)}, +$S:532} +A.bjw.prototype={} +A.aN9.prototype={ +alH(a){var s=this,r=t.e +s.b=r.a(A.cA(new A.aNa(s))) +A.dU(self.window,"keydown",s.b,null) +s.c=r.a(A.cA(new A.aNb(s))) +A.dU(self.window,"keyup",s.c,null) +$.vA.push(new A.aNc(s))}, +m(){var s,r,q=this +A.hS(self.window,"keydown",q.b,null) +A.hS(self.window,"keyup",q.c,null) +for(s=q.a,r=A.i1(s,s.r,A.k(s).c);r.u();)s.i(0,r.d).aQ(0) +s.ab(0) +$.bjz=q.c=q.b=null}, +a1F(a){var s,r,q,p,o,n,m=this,l=globalThis.KeyboardEvent +if(!(l!=null&&a instanceof l))return +s=new A.oh(a) +r=A.wy(a) +r.toString +if(a.type==="keydown"&&A.oa(a)==="Tab"&&a.isComposing)return +q=A.oa(a) +q.toString +if(!(q==="Meta"||q==="Shift"||q==="Alt"||q==="Control")&&m.e){q=m.a +p=q.i(0,r) +if(p!=null)p.aQ(0) +if(a.type==="keydown")p=a.ctrlKey||a.shiftKey||a.altKey||a.metaKey +else p=!1 +if(p)q.p(0,r,A.d2(B.e4,new A.aNe(m,r,s))) +else q.F(0,r)}o=a.getModifierState("Shift")?1:0 +if(a.getModifierState("Alt")||a.getModifierState("AltGraph"))o|=2 +if(a.getModifierState("Control"))o|=4 +if(a.getModifierState("Meta"))o|=8 +m.d=o +if(a.type==="keydown")if(A.oa(a)==="CapsLock"){r=o|32 +m.d=r}else if(A.wy(a)==="NumLock"){r=o|16 +m.d=r}else if(A.oa(a)==="ScrollLock"){r=o|64 +m.d=r}else{if(A.oa(a)==="Meta"){r=$.fI() +r=r===B.o2}else r=!1 +if(r){r=o|8 +m.d=r}else r=o}else r=o +n=A.ap(["type",a.type,"keymap","web","code",A.wy(a),"key",A.oa(a),"location",B.e.an(a.location),"metaState",r,"keyCode",B.e.an(a.keyCode)],t.N,t.z) +$.bL().pK("flutter/keyevent",B.aK.e4(n),new A.aNf(s))}} +A.aNa.prototype={ +$1(a){this.a.a1F(a)}, +$S:3} +A.aNb.prototype={ +$1(a){this.a.a1F(a)}, +$S:3} +A.aNc.prototype={ +$0(){this.a.m()}, +$S:0} +A.aNe.prototype={ +$0(){var s,r,q=this.a +q.a.F(0,this.b) +s=this.c.a +r=A.ap(["type","keyup","keymap","web","code",A.wy(s),"key",A.oa(s),"location",B.e.an(s.location),"metaState",q.d,"keyCode",B.e.an(s.keyCode)],t.N,t.z) +$.bL().pK("flutter/keyevent",B.aK.e4(r),A.bOM())}, +$S:0} +A.aNf.prototype={ +$1(a){if(a==null)return +if(A.vx(J.b3(t.a.a(B.aK.k5(a)),"handled")))this.a.a.preventDefault()}, +$S:48} +A.a1p.prototype={} +A.a1o.prototype={ +a8Y(a,b,c,d){var s=this.dy,r=this.fr,q=this.fx +A.ca(b,"drawImage",[s,0,0,r,q,c,d,r,q])}, +a7E(a,b,c){var s,r=this.a,q=r.createShader(r[b]) +if(q==null)throw A.c(A.cR(A.bO8(r,"getError"))) +A.ca(r,"shaderSource",[q,c]) +A.ca(r,"compileShader",[q]) +s=this.c +if(!A.ca(r,"getShaderParameter",[q,s==null?this.c=r.COMPILE_STATUS:s]))throw A.c(A.cR("Shader compilation failed: "+A.h(A.ca(r,"getShaderInfoLog",[q])))) +return q}, +gAS(){var s=this.d +return s==null?this.d=this.a.ARRAY_BUFFER:s}, +gLU(){var s=this.e +return s==null?this.e=this.a.ELEMENT_ARRAY_BUFFER:s}, +gVE(){var s=this.f +return s==null?this.f=this.a.STATIC_DRAW:s}, +y0(a,b,c){var s=A.ca(this.a,"getUniformLocation",[b,c]) +if(s==null)throw A.c(A.cR(c+" not found")) +else return s}, +aNh(a){var s,r,q=this +if("transferToImageBitmap" in q.dy&&a){q.dy.getContext("webgl2") +return q.dy.transferToImageBitmap()}else{s=q.fr +r=A.VU(q.fx,s) +s=A.pR(r,"2d",null) +s.toString +q.a8Y(0,t.e.a(s),0,0) +return r}}} +A.aKP.prototype={ +a5z(a){var s,r,q,p=this.c,o=self.window.devicePixelRatio +if(o===0)o=1 +s=this.d +r=self.window.devicePixelRatio +if(r===0)r=1 +q=a.style +A.Q(q,"position","absolute") +A.Q(q,"width",A.h(p/o)+"px") +A.Q(q,"height",A.h(s/r)+"px")}} +A.HQ.prototype={ +K(){return"Assertiveness."+this.b}} +A.ara.prototype={ +aEu(a){switch(a.a){case 0:return this.a +case 1:return this.b}}, +a6M(a,b){var s=this.aEu(b),r=A.c4(self.document,"div") +A.bp3(r,a) +s.append(r) +A.d2(B.bt,new A.arb(r))}} +A.arb.prototype={ +$0(){return this.a.remove()}, +$S:0} +A.Q4.prototype={ +K(){return"_CheckableKind."+this.b}} +A.avP.prototype={ +ff(a){var s,r,q,p,o=this,n="true" +o.u4(0) +s=o.b +if((s.k3&1)!==0){switch(o.e.a){case 0:r=A.b0("checkbox") +if(r==null)r=t.K.a(r) +s.k2.setAttribute("role",r) +break +case 1:r=A.b0("radio") +if(r==null)r=t.K.a(r) +s.k2.setAttribute("role",r) +break +case 2:r=A.b0("switch") +if(r==null)r=t.K.a(r) +s.k2.setAttribute("role",r) +break}if(s.Uu()===B.j5){q=s.k2 +r=A.b0(n) +if(r==null)r=t.K.a(r) +q.setAttribute("aria-disabled",r) +r=A.b0(n) +if(r==null)r=t.K.a(r) +q.setAttribute("disabled",r)}else o.a3t() +r=s.a +p=A.b0((r&2)!==0||(r&131072)!==0?n:"false") +r=p==null?t.K.a(p):p +s.k2.setAttribute("aria-checked",r)}}, +m(){this.Cw() +this.a3t()}, +a3t(){var s=this.b.k2 +s.removeAttribute("aria-disabled") +s.removeAttribute("disabled")}} +A.a07.prototype={ +ff(a){var s,r,q +this.u4(0) +s=this.b +if((s.a&4096)!==0){r=s.z +s=s.k2 +q=A.b0(r==null?"":r) +if(q==null)q=t.K.a(q) +s.setAttribute("aria-label",q) +q=A.b0("dialog") +if(q==null)q=t.K.a(q) +s.setAttribute("role",q)}}, +a8F(a){var s,r=this.b +if((r.a&4096)!==0)return +r=r.k2 +s=A.b0("dialog") +if(s==null)s=t.K.a(s) +r.setAttribute("role",s) +s=A.b0(a.b.k2.id) +if(s==null)s=t.K.a(s) +r.setAttribute("aria-describedby",s)}} +A.a7S.prototype={ +ff(a){var s,r=this,q=r.b +if((q.k3&1024)!==0){s=r.d +if(s!=null)s.a8F(r) +else q.k1.e.push(new A.aQm(r))}}, +avQ(){var s,r,q=this.b.ok +while(!0){s=q!=null +if(s){r=q.p2 +r=(r==null?null:r.a)!==B.kJ}else r=!1 +if(!r)break +q=q.ok}if(s){s=q.p2 +s=(s==null?null:s.a)===B.kJ}else s=!1 +if(s){s=q.p2 +s.toString +this.d=t.JX.a(s)}}} +A.aQm.prototype={ +$0(){var s,r=this.a +if(!r.c){r.avQ() +s=r.d +if(s!=null)s.a8F(r)}}, +$S:0} +A.a1a.prototype={ +ff(a){var s=this.b.a +if((s&32)!==0)s=(s&64)===0||(s&128)!==0 +else s=!1 +this.d.a7t(s)}} +A.Wv.prototype={ +abc(a,b){var s,r,q=this,p=q.b,o=p==null +if(b===(o?null:p.a[2])){o=p.a +if(a===o[3])return +s=o[2] +r=o[1] +q.b=new A.Sx([o[0],r,s,a]) +return}if(!o)q.YA() +o=t.e +s=o.a(A.cA(new A.ard(q))) +s=[o.a(A.cA(new A.are(q))),s,b,a] +q.b=new A.Sx(s) +b.tabIndex=0 +A.dU(b,"focus",s[1],null) +A.dU(b,"blur",s[0],null)}, +YA(){var s,r=this.b +if(r==null)return +s=r.a +A.hS(s[2],"focus",s[1],null) +A.hS(s[2],"blur",s[0],null) +this.b=null}, +a4f(a){var s,r,q=this.b +if(q==null)return +s=$.bL() +r=q.a[3] +s.qR(r,a?B.Ju:B.Jw,null)}, +a7t(a){var s=this.b +if(s==null)return +this.a.e.push(new A.arc(this,s,a))}} +A.ard.prototype={ +$1(a){return this.a.a4f(!0)}, +$S:3} +A.are.prototype={ +$1(a){return this.a.a4f(!1)}, +$S:3} +A.arc.prototype={ +$0(){var s=this.b +if(!J.i(this.a.b,s))return +s=s.a +if(this.c)s[2].focus() +else s[2].blur()}, +$S:0} +A.aFG.prototype={ +ff(a){var s,r,q,p=this +p.u4(0) +s=p.b +if(s.gVC()){r=s.dy +r=r!=null&&!B.hO.gai(r)}else r=!1 +if(r){if(p.e==null){p.e=A.c4(self.document,"flt-semantics-img") +r=s.dy +if(r!=null&&!B.hO.gai(r)){r=p.e.style +A.Q(r,"position","absolute") +A.Q(r,"top","0") +A.Q(r,"left","0") +q=s.y +A.Q(r,"width",A.h(q.c-q.a)+"px") +q=s.y +A.Q(r,"height",A.h(q.d-q.b)+"px")}A.Q(p.e.style,"font-size","6px") +r=p.e +r.toString +s.k2.append(r)}s=p.e +s.toString +r=A.b0("img") +if(r==null)r=t.K.a(r) +s.setAttribute("role",r) +p.a4h(p.e)}else{r=s.k2 +if(s.gVC()){s=A.b0("img") +if(s==null)s=t.K.a(s) +r.setAttribute("role",s) +p.a4h(r) +p.Pk()}else{p.Pk() +r.removeAttribute("aria-label")}}}, +a4h(a){var s=this.b.z +if(s!=null&&s.length!==0){a.toString +s.toString +s=A.b0(s) +if(s==null)s=t.K.a(s) +a.setAttribute("aria-label",s)}}, +Pk(){var s=this.e +if(s!=null){s.remove() +this.e=null}}, +m(){this.Cw() +this.Pk() +this.b.k2.removeAttribute("aria-label")}} +A.aFP.prototype={ +alA(a){var s,r,q=this +q.K2() +q.T0() +q.a6z() +s=q.e +a.k2.append(s) +A.ayj(s,"range") +r=A.b0("slider") +if(r==null)r=t.K.a(r) +s.setAttribute("role",r) +A.dU(s,"change",t.e.a(A.cA(new A.aFQ(q,a))),null) +r=new A.aFR(q) +q.w=r +a.k1.as.push(r) +q.f.abc(a.id,s)}, +ff(a){var s,r=this +r.u4(0) +s=r.b +switch(s.k1.z.a){case 1:r.apL() +r.aD5() +break +case 0:r.a0e() +break}r.f.a7t((s.a&32)!==0)}, +apL(){var s=this.e,r=A.bip(s) +r.toString +if(!r)return +A.boZ(s,!1)}, +aD5(){var s,r,q,p,o,n,m,l=this +if(!l.x){s=l.b.k3 +r=(s&4096)!==0||(s&8192)!==0||(s&16384)!==0}else r=!0 +if(!r)return +l.x=!1 +q=""+l.r +s=l.e +A.bp_(s,q) +p=A.b0(q) +if(p==null)p=t.K.a(p) +s.setAttribute("aria-valuenow",p) +p=l.b +o=p.ax +o.toString +o=A.b0(o) +if(o==null)o=t.K.a(o) +s.setAttribute("aria-valuetext",o) +n=p.ch.length!==0?""+(l.r+1):q +s.max=n +o=A.b0(n) +if(o==null)o=t.K.a(o) +s.setAttribute("aria-valuemax",o) +m=p.cx.length!==0?""+(l.r-1):q +s.min=m +p=A.b0(m) +if(p==null)p=t.K.a(p) +s.setAttribute("aria-valuemin",p)}, +a0e(){var s=this.e,r=A.bip(s) +r.toString +if(r)return +A.boZ(s,!0)}, +m(){var s=this +s.Cw() +s.f.YA() +B.b.F(s.b.k1.as,s.w) +s.w=null +s.a0e() +s.e.remove()}} +A.aFQ.prototype={ +$1(a){var s,r=null,q=this.a,p=q.e,o=A.bip(p) +o.toString +if(o)return +q.x=!0 +p=A.boY(p) +p.toString +s=A.ef(p,r,r) +p=q.r +if(s>p){q.r=p+1 +$.bL().qR(this.b.id,B.Jv,r)}else if(sq){s=s.b +s.toString +if((s&32)!==0||(s&16)!==0)$.bL().qR(p,B.i2,n) +else $.bL().qR(p,B.i4,n)}else{s=s.b +s.toString +if((s&32)!==0||(s&16)!==0)$.bL().qR(p,B.i3,n) +else $.bL().qR(p,B.i5,n)}}}, +ff(a){var s,r,q,p=this +p.u4(0) +s=p.b +r=s.k1 +r.e.push(new A.aRu(p)) +if(p.r==null){s=s.k2 +A.Q(s.style,"touch-action","none") +p.a0U() +q=new A.aRv(p) +p.e=q +r.as.push(q) +q=t.e.a(A.cA(new A.aRw(p))) +p.r=q +A.dU(s,"scroll",q,null)}}, +ga0m(){var s=this.b,r=s.b +r.toString +r=(r&32)!==0||(r&16)!==0 +s=s.k2 +if(r)return B.e.an(s.scrollTop) +else return B.e.an(s.scrollLeft)}, +a2H(){var s,r,q,p,o=this,n="transform",m=o.b,l=m.k2,k=m.y +if(k==null){$.h0().$1("Warning! the rect attribute of semanticsObject is null") +return}s=m.b +s.toString +s=(s&32)!==0||(s&16)!==0 +r=o.f +q=k.d-k.b +p=k.c-k.a +if(s){s=B.e.eU(q) +r=r.style +A.Q(r,n,"translate(0px,"+(s+10)+"px)") +A.Q(r,"width",""+B.e.bi(p)+"px") +A.Q(r,"height","10px") +l.scrollTop=10 +m.p3=o.w=B.e.an(l.scrollTop) +m.p4=0}else{s=B.e.eU(p) +r=r.style +A.Q(r,n,"translate("+(s+10)+"px,0px)") +A.Q(r,"width","10px") +A.Q(r,"height",""+B.e.bi(q)+"px") +l.scrollLeft=10 +q=B.e.an(l.scrollLeft) +o.w=q +m.p3=0 +m.p4=q}}, +a0U(){var s="overflow-y",r="overflow-x",q=this.b,p=q.k2 +switch(q.k1.z.a){case 1:q=q.b +q.toString +if((q&32)!==0||(q&16)!==0)A.Q(p.style,s,"scroll") +else A.Q(p.style,r,"scroll") +break +case 0:q=q.b +q.toString +if((q&32)!==0||(q&16)!==0)A.Q(p.style,s,"hidden") +else A.Q(p.style,r,"hidden") +break}}, +m(){var s,r,q,p,o=this +o.Cw() +s=o.b +r=s.k2 +q=r.style +q.removeProperty("overflowY") +q.removeProperty("overflowX") +q.removeProperty("touch-action") +p=o.r +if(p!=null)A.hS(r,"scroll",p,null) +B.b.F(s.k1.as,o.e) +o.e=null}} +A.aRu.prototype={ +$0(){var s=this.a +s.a2H() +s.b.WH()}, +$S:0} +A.aRv.prototype={ +$1(a){this.a.a0U()}, +$S:194} +A.aRw.prototype={ +$1(a){this.a.az2()}, +$S:3} +A.BA.prototype={ +j(a){var s=A.a([],t.s),r=this.a +if((r&1)!==0)s.push("accessibleNavigation") +if((r&2)!==0)s.push("invertColors") +if((r&4)!==0)s.push("disableAnimations") +if((r&8)!==0)s.push("boldText") +if((r&16)!==0)s.push("reduceMotion") +if((r&32)!==0)s.push("highContrast") +if((r&64)!==0)s.push("onOffSwitchLabels") +return"AccessibilityFeatures"+A.h(s)}, +l(a,b){if(b==null)return!1 +if(J.a1(b)!==A.o(this))return!1 +return b instanceof A.BA&&b.a===this.a}, +gv(a){return B.f.gv(this.a)}, +a81(a,b){var s=(a==null?(this.a&1)!==0:a)?1:0,r=this.a +s=(r&2)!==0?s|2:s&4294967293 +s=(r&4)!==0?s|4:s&4294967291 +s=(r&8)!==0?s|8:s&4294967287 +s=(r&16)!==0?s|16:s&4294967279 +s=(b==null?(r&32)!==0:b)?s|32:s&4294967263 +return new A.BA((r&64)!==0?s|64:s&4294967231)}, +aFZ(a){return this.a81(null,a)}, +aFU(a){return this.a81(a,null)}} +A.aAc.prototype={ +saJz(a){var s=this.a +this.a=a?s|32:s&4294967263}, +aP(){return new A.BA(this.a)}} +A.a8k.prototype={$ibjH:1} +A.a8i.prototype={} +A.oI.prototype={ +K(){return"PrimaryRole."+this.b}} +A.yy.prototype={ +K(){return"Role."+this.b}} +A.a6v.prototype={ +Hx(a,b){var s=this +s.SW() +s.K2() +s.T0() +s.a6z() +s.a6I()}, +SW(){var s,r=this.b +if((r.a&2097152)!==0){s=new A.Wv(r.k1) +s.abc(r.id,r.k2) +this.DX(new A.a1a(s,B.acc,r))}}, +K2(){var s=this.b,r=s.a +if((r&32768)!==0&&(r&8192)===0)this.DX(new A.a2N(B.acf,s))}, +T0(){var s=this.b +if((s.a&4096)!==0)this.DX(new A.a7S(B.acg,s))}, +a6z(){var s=this.b,r=s.z +if(!(r!=null&&r.length!==0)){r=s.ax +if(!(r!=null&&r.length!==0)){r=s.fy +r=r!=null&&r.length!==0}else r=!0}else r=!0 +if(r)this.DX(new A.a2r(B.ace,s))}, +a6I(){var s=this.b,r=s.b +r.toString +if((r&1)!==0)this.DX(new A.a9W(B.acd,s))}, +DX(a){var s=this.c;(s==null?this.c=A.a([],t.VM):s).push(a)}, +ff(a){var s,r,q=this.c +if(q==null)return +for(s=q.length,r=0;r1)for(p=0;p=0;--p){g=l[p] +s=g.id +if(!B.b.n(a0,s)){k=g.k2 +if(a1==null)m.append(k) +else m.insertBefore(k,a1) +g.ok=a2 +q.c.p(0,s,a2)}a1=g.k2}a2.p1=l}, +arh(){var s,r,q=this +if((q.a&16)!==0)return B.J6 +else{s=q.b +s.toString +if((s&64)!==0||(s&128)!==0)return B.J5 +else if(q.gVC())return B.J7 +else{s=q.a +if((s&1)!==0||(s&65536)!==0)return B.oe +else if((s&8)!==0)return B.od +else{r=q.b +r.toString +if((r&32)!==0||(r&16)!==0||(r&4)!==0||(r&8)!==0)return B.oc +else if((s&2048)!==0)return B.kJ +else return B.ob}}}}, +aoQ(a){var s,r,q,p=this +switch(a.a){case 4:s=new A.aXd(B.J6,p) +s.aAW() +break +case 2:s=A.c4(self.document,"flt-semantics-scroll-overflow") +r=new A.aRn(s,B.oc,p) +r.Hx(B.oc,p) +q=s.style +A.Q(q,"position","absolute") +A.Q(q,"transform-origin","0 0 0") +A.Q(q,"pointer-events","none") +p.k2.append(s) +s=r +break +case 1:s=A.bGF(p) +break +case 3:s=new A.au4(B.od,p) +s.Hx(B.od,p) +r=A.b0("button") +if(r==null)r=t.K.a(r) +p.k2.setAttribute("role",r) +break +case 5:s=new A.avP(A.bOe(p),B.oe,p) +s.Hx(B.oe,p) +break +case 7:s=new A.a07(B.kJ,p) +s.SW() +s.K2() +break +case 6:s=new A.aFG(B.J7,p) +s.SW() +s.K2() +s.T0() +s.a6I() +break +case 0:s=new A.aDi(B.ob,p) +s.Hx(B.ob,p) +break +default:s=null}return s}, +aDh(){var s=this,r=s.p2,q=s.arh() +if(r!=null)if(r.a===q){r.ff(0) +return}else{r.m() +r=s.p2=null}if(r==null){r=s.aoQ(q) +s.p2=r +r.ff(0)}}, +WH(){var s,r,q,p,o,n,m,l,k,j,i=this,h=i.k2,g=h.style,f=i.y +A.Q(g,"width",A.h(f.c-f.a)+"px") +f=i.y +A.Q(g,"height",A.h(f.d-f.b)+"px") +g=i.dy +s=g!=null&&!B.hO.gai(g)?i.XE():null +g=i.y +r=g.b===0&&g.a===0 +q=i.dx +g=q==null +p=g||A.bgE(q)===B.KT +if(r&&p&&i.p3===0&&i.p4===0){A.aS7(h) +if(s!=null)A.aS7(s) +return}o=A.b4("effectiveTransform") +if(!r)if(g){g=i.y +n=g.a +m=g.b +g=A.h8() +g.vK(n,m,0) +o.b=g +l=n===0&&m===0}else{g=new A.ds(new Float32Array(16)) +g.cd(new A.ds(q)) +f=i.y +g.bj(0,f.a,f.b) +o.b=g +l=J.bCn(o.aF())}else if(!p){o.b=new A.ds(q) +l=!1}else l=!0 +if(!l){h=h.style +A.Q(h,"transform-origin","0 0 0") +A.Q(h,"transform",A.nQ(o.aF().a))}else A.aS7(h) +if(s!=null)if(!r||i.p3!==0||i.p4!==0){h=i.y +g=h.a +f=i.p4 +h=h.b +k=i.p3 +j=s.style +A.Q(j,"top",A.h(-h+k)+"px") +A.Q(j,"left",A.h(-g+f)+"px")}else A.aS7(s)}, +adt(a){var s +a.$1(this) +s=this.p1 +if(s!=null)B.b.af(s,new A.aS8(a))}, +j(a){return this.e0(0)}} +A.aS8.prototype={ +$1(a){a.adt(this.a)}, +$S:240} +A.arf.prototype={ +K(){return"AccessibilityMode."+this.b}} +A.x_.prototype={ +K(){return"GestureMode."+this.b}} +A.NB.prototype={ +K(){return"SemanticsUpdatePhase."+this.b}} +A.aAy.prototype={ +alu(){$.vA.push(new A.aAz(this))}, +aqe(){var s,r,q,p,o,n,m,l,k,j,i,h=this +for(r=h.d,q=r.length,p=h.b,o=t.Qo,n=0;n>>0}n=m.cx +if(l.ax!==n){l.ax=n +l.k3=(l.k3|4096)>>>0}n=m.cy +if(l.ay!==n){l.ay=n +l.k3=(l.k3|4096)>>>0}n=m.ax +if(l.z!==n){l.z=n +l.k3=(l.k3|1024)>>>0}n=m.ay +if(l.Q!==n){l.Q=n +l.k3=(l.k3|1024)>>>0}n=m.at +if(!J.i(l.y,n)){l.y=n +l.k3=(l.k3|512)>>>0}n=m.go +if(l.dx!==n){l.dx=n +l.k3=(l.k3|65536)>>>0}n=m.z +if(l.r!==n){l.r=n +l.k3=(l.k3|64)>>>0}n=m.c +if(l.b!==n){l.b=n +l.k3=(l.k3|2)>>>0}n=m.f +if(l.c!==n){l.c=n +l.k3=(l.k3|4)>>>0}n=m.r +if(l.d!==n){l.d=n +l.k3=(l.k3|8)>>>0}n=m.x +if(l.e!==n){l.e=n +l.k3=(l.k3|16)>>>0}n=m.y +if(l.f!==n){l.f=n +l.k3=(l.k3|32)>>>0}n=m.Q +if(l.w!==n){l.w=n +l.k3=(l.k3|128)>>>0}n=m.as +if(l.x!==n){l.x=n +l.k3=(l.k3|256)>>>0}n=m.ch +if(l.as!==n){l.as=n +l.k3=(l.k3|2048)>>>0}n=m.CW +if(l.at!==n){l.at=n +l.k3=(l.k3|2048)>>>0}n=m.db +if(l.ch!==n){l.ch=n +l.k3=(l.k3|8192)>>>0}n=m.dx +if(l.CW!==n){l.CW=n +l.k3=(l.k3|8192)>>>0}n=m.dy +if(l.cx!==n){l.cx=n +l.k3=(l.k3|16384)>>>0}n=m.fr +if(l.cy!==n){l.cy=n +l.k3=(l.k3|16384)>>>0}n=m.fx +if(l.fy!==n){l.fy=n +l.k3=(l.k3|4194304)>>>0}n=m.fy +if(l.db!=n){l.db=n +l.k3=(l.k3|32768)>>>0}n=m.k1 +if(l.fr!==n){l.fr=n +l.k3=(l.k3|1048576)>>>0}n=m.id +if(l.dy!==n){l.dy=n +l.k3=(l.k3|524288)>>>0}n=m.k2 +if(l.fx!==n){l.fx=n +l.k3=(l.k3|2097152)>>>0}n=m.w +if(l.go!==n){l.go=n +l.k3=(l.k3|8388608)>>>0}l.aDh() +n=l.k3 +if((n&512)!==0||(n&65536)!==0||(n&64)!==0)l.WH() +n=l.dy +n=!(n!=null&&!B.hO.gai(n))&&l.go===-1 +k=l.k2 +if(n){n=k.style +n.setProperty("pointer-events","all","")}else{n=k.style +n.setProperty("pointer-events","none","")}}for(o=0;o=20)return i.d=!0 +if(!B.ad4.n(0,a.type))return!0 +if(i.a!=null)return!1 +r=A.b4("activationPoint") +switch(a.type){case"click":r.sdX(new A.Jk(a.offsetX,a.offsetY)) +break +case"touchstart":case"touchend":s=t.VA +s=A.dx(new A.re(a.changedTouches,s),s.h("z.E"),t.e) +s=A.k(s).z[1].a(J.jo(s.a)) +r.sdX(new A.Jk(s.clientX,s.clientY)) +break +case"pointerdown":case"pointerup":r.sdX(new A.Jk(a.clientX,a.clientY)) +break +default:return!0}q=i.b.getBoundingClientRect() +s=q.left +p=q.right +o=q.left +n=q.top +m=q.bottom +l=q.top +k=r.aF().a-(s+(p-o)/2) +j=r.aF().b-(n+(m-l)/2) +if(k*k+j*j<1&&!0){i.d=!0 +i.a=A.d2(B.bt,new A.aJd(i)) +return!1}return!0}, +abT(){var s,r=this.b=A.c4(self.document,"flt-semantics-placeholder") +A.dU(r,"click",t.e.a(A.cA(new A.aJc(this))),!0) +s=A.b0("button") +if(s==null)s=t.K.a(s) +r.setAttribute("role",s) +s=A.b0("Enable accessibility") +if(s==null)s=t.K.a(s) +r.setAttribute("aria-label",s) +s=r.style +A.Q(s,"position","absolute") +A.Q(s,"left","0") +A.Q(s,"top","0") +A.Q(s,"right","0") +A.Q(s,"bottom","0") +return r}, +m(){var s=this.b +if(s!=null)s.remove() +this.a=this.b=null}} +A.aJd.prototype={ +$0(){this.a.m() +var s=$.hx;(s==null?$.hx=A.pX():s).sNS(!0)}, +$S:0} +A.aJc.prototype={ +$1(a){this.a.Ne(a)}, +$S:3} +A.au4.prototype={ +ff(a){var s,r +this.u4(0) +s=this.b +r=s.k2 +if(s.Uu()===B.j5){s=A.b0("true") +if(s==null)s=t.K.a(s) +r.setAttribute("aria-disabled",s)}else r.removeAttribute("aria-disabled")}} +A.a9W.prototype={ +ff(a){var s,r=this,q=r.b +if(q.Uu()!==B.j5){s=q.b +s.toString +s=(s&1)===0}else s=!0 +if(s)r.aBv() +else if(r.d==null){s=t.e.a(A.cA(new A.aX6(r))) +r.d=s +A.dU(q.k2,"click",s,null)}}, +aBv(){var s=this.d +if(s==null)return +A.hS(this.b.k2,"click",s,null) +this.d=null}} +A.aX6.prototype={ +$1(a){var s=this.a.b +if(s.k1.z!==B.f5)return +$.bL().qR(s.id,B.ey,null)}, +$S:3} +A.aSe.prototype={ +Ut(a,b,c,d){this.CW=b +this.x=d +this.y=c}, +aDY(a){var s,r,q=this,p=q.ch +if(p===a)return +else if(p!=null)q.px(0) +q.ch=a +q.c=a.e +q.a4O() +p=q.CW +p.toString +s=q.x +s.toString +r=q.y +r.toString +q.agN(0,p,r,s)}, +px(a){var s,r,q,p=this +if(!p.b)return +p.b=!1 +p.w=p.r=null +for(s=p.z,r=0;r=this.b)throw A.c(A.a21(b,this,null,null,null)) +return this.a[b]}, +p(a,b,c){if(b>=this.b)throw A.c(A.a21(b,this,null,null,null)) +this.a[b]=c}, +st(a,b){var s,r,q,p=this,o=p.b +if(bo){if(o===0)q=new Uint8Array(b) +else q=p.HU(b) +B.L.di(q,0,p.b,p.a) +p.a=q}}p.b=b}, +is(a,b){var s=this,r=s.b +if(r===s.a.length)s.ZB(r) +s.a[s.b++]=b}, +G(a,b){var s=this,r=s.b +if(r===s.a.length)s.ZB(r) +s.a[s.b++]=b}, +JW(a,b,c,d){A.fA(c,"start") +if(d!=null&&c>d)throw A.c(A.cK(d,c,null,"end",null)) +this.am1(b,c,d)}, +I(a,b){return this.JW(a,b,0,null)}, +am1(a,b,c){var s,r,q,p=this +if(A.k(p).h("e").b(a))c=c==null?a.length:c +if(c!=null){p.av2(p.b,a,b,c) +return}for(s=J.ao(a),r=0;s.u();){q=s.gH(s) +if(r>=b)p.is(0,q);++r}if(ro.gt(b)||d>o.gt(b))throw A.c(A.R("Too few elements")) +s=d-c +r=p.b+s +p.apS(r) +o=p.a +q=a+s +B.L.cA(o,q,p.b+s,o,a) +B.L.cA(p.a,a,q,b,c) +p.b=r}, +fu(a,b,c){var s,r,q,p=this +if(b<0||b>p.b)throw A.c(A.cK(b,0,p.b,null,null)) +s=p.b +r=p.a +if(ss)throw A.c(A.cK(c,0,s,null,null)) +s=this.a +if(A.k(this).h("ps").b(d))B.L.cA(s,b,c,d.a,e) +else B.L.cA(s,b,c,d,e)}, +di(a,b,c,d){return this.cA(a,b,c,d,0)}} +A.agZ.prototype={} +A.aas.prototype={} +A.lP.prototype={ +j(a){return A.o(this).j(0)+"("+this.a+", "+A.h(this.b)+")"}} +A.aGb.prototype={ +e4(a){return A.ks(B.cv.cN(B.at.l2(a)).buffer,0,null)}, +k5(a){if(a==null)return a +return B.at.hu(0,B.cL.cN(A.dF(a.buffer,0,null)))}} +A.aGd.prototype={ +pA(a){return B.aK.e4(A.ap(["method",a.a,"args",a.b],t.N,t.z))}, +oE(a){var s,r,q,p=null,o=B.aK.k5(a) +if(!t.f.b(o))throw A.c(A.cJ("Expected method call Map, got "+A.h(o),p,p)) +s=J.ak(o) +r=s.i(o,"method") +q=s.i(o,"args") +if(typeof r=="string")return new A.lP(r,q) +throw A.c(A.cJ("Invalid method call: "+A.h(o),p,p))}} +A.aVR.prototype={ +e4(a){var s=A.bkb() +this.ip(0,s,!0) +return s.uM()}, +k5(a){var s,r +if(a==null)return null +s=new A.a6N(a) +r=this.jc(0,s) +if(s.b=b.a.byteLength)throw A.c(B.c7) +return this.tG(b.xZ(0),b)}, +tG(a,b){var s,r,q,p,o,n,m,l,k=this +switch(a){case 0:s=null +break +case 1:s=!0 +break +case 2:s=!1 +break +case 3:r=b.a.getInt32(b.b,B.bi===$.fH()) +b.b+=4 +s=r +break +case 4:s=b.NC(0) +break +case 5:q=k.jb(b) +s=A.ef(B.cL.cN(b.y_(q)),null,16) +break +case 6:b.u6(8) +r=b.a.getFloat64(b.b,B.bi===$.fH()) +b.b+=8 +s=r +break +case 7:q=k.jb(b) +s=B.cL.cN(b.y_(q)) +break +case 8:s=b.y_(k.jb(b)) +break +case 9:q=k.jb(b) +b.u6(4) +p=b.a +o=A.bqR(p.buffer,p.byteOffset+b.b,q) +b.b=b.b+4*q +s=o +break +case 10:s=b.ND(k.jb(b)) +break +case 11:q=k.jb(b) +b.u6(8) +p=b.a +o=A.bqP(p.buffer,p.byteOffset+b.b,q) +b.b=b.b+8*q +s=o +break +case 12:q=k.jb(b) +s=[] +for(p=b.a,n=0;n=p.byteLength)A.q(B.c7) +b.b=m+1 +s.push(k.tG(p.getUint8(m),b))}break +case 13:q=k.jb(b) +p=t.z +s=A.F(p,p) +for(p=b.a,n=0;n=p.byteLength)A.q(B.c7) +b.b=m+1 +m=k.tG(p.getUint8(m),b) +l=b.b +if(l>=p.byteLength)A.q(B.c7) +b.b=l+1 +s.p(0,m,k.tG(p.getUint8(l),b))}break +default:throw A.c(B.c7)}return s}, +kr(a,b){var s,r,q +if(b<254)a.b.is(0,b) +else{s=a.b +r=a.c +q=a.d +if(b<=65535){s.is(0,254) +r.setUint16(0,b,B.bi===$.fH()) +s.JW(0,q,0,2)}else{s.is(0,255) +r.setUint32(0,b,B.bi===$.fH()) +s.JW(0,q,0,4)}}}, +jb(a){var s=a.xZ(0) +switch(s){case 254:s=a.a.getUint16(a.b,B.bi===$.fH()) +a.b+=2 +return s +case 255:s=a.a.getUint32(a.b,B.bi===$.fH()) +a.b+=4 +return s +default:return s}}} +A.aVT.prototype={ +$2(a,b){var s=this.a,r=this.b +s.ip(0,r,a) +s.ip(0,r,b)}, +$S:58} +A.aVV.prototype={ +oE(a){var s,r,q +a.toString +s=new A.a6N(a) +r=B.ds.jc(0,s) +q=B.ds.jc(0,s) +if(typeof r=="string"&&s.b>=a.byteLength)return new A.lP(r,q) +else throw A.c(B.ta)}, +EG(a){var s=A.bkb() +s.b.is(0,0) +B.ds.ip(0,s,a) +return s.uM()}, +wY(a,b,c){var s=A.bkb() +s.b.is(0,1) +B.ds.ip(0,s,a) +B.ds.ip(0,s,c) +B.ds.ip(0,s,b) +return s.uM()}} +A.b_0.prototype={ +u6(a){var s,r,q=this.b,p=B.f.aH(q.b,a) +if(p!==0)for(s=a-p,r=0;r0)b=c +else{f=$.eg().x +if(f==null){f=self.window.devicePixelRatio +if(f===0)f=1}b=1/f}f=d==null?a8:A.f8(d.gk(d)) +b0.setProperty("-webkit-text-stroke",A.h(b)+"px "+A.h(f),"")}else if(d!=null){f=A.f8(d.gk(d)) +b0.setProperty("color",f,"")}f=g.cx +a=f==null?a8:f.ga5(f) +if(a!=null){f=A.f8(a.a) +b0.setProperty("background-color",f,"")}a0=g.at +if(a0!=null){f=B.e.eA(a0) +b0.setProperty("font-size",""+f+"px","")}f=g.f +if(f!=null){f=A.bww(f) +f.toString +b0.setProperty("font-weight",f,"")}f=A.beC(g.y) +f.toString +b0.setProperty("font-family",f,"") +f=g.ax +if(f!=null)b0.setProperty("letter-spacing",A.h(f)+"px","") +f=g.ay +if(f!=null)b0.setProperty("word-spacing",A.h(f)+"px","") +f=g.b +e=f!=null +a1=e&&!0 +a2=g.db +if(a2!=null){a3=A.bQ9(a2) +b0.setProperty("text-shadow",a3,"")}if(a1)if(e){e=g.d +f=f.a +a3=(f|1)===f?""+"underline ":"" +if((f|2)===f)a3+="overline " +f=(f|4)===f?a3+"line-through ":a3 +if(e!=null)f+=A.h(A.bOy(e)) +a4=f.length===0?a8:f.charCodeAt(0)==0?f:f +if(a4!=null){f=$.dv() +if(f===B.ah){f=h.style +f.setProperty("-webkit-text-decoration",a4,"")}else b0.setProperty("text-decoration",a4,"") +a5=g.c +if(a5!=null){f=A.f8(a5.gk(a5)) +b0.setProperty("text-decoration-color",f,"")}}}a6=g.as +if(a6!=null&&a6.length!==0){g=A.bOX(a6) +b0.setProperty("font-variation-settings",g,"")}g=j.ad_() +f=g.a +e=g.b +a3=h.style +a3.setProperty("position","absolute","") +a3.setProperty("top",A.h(e)+"px","") +a3.setProperty("left",A.h(f)+"px","") +a3.setProperty("width",A.h(g.c-f)+"px","") +a3.setProperty("line-height",A.h(g.d-e)+"px","") +h.append(self.document.createTextNode(i)) +a9.append(h)}++q}return a9}, +GI(){return this.gjt().GI()}, +GJ(a,b,c,d){return this.gjt().ael(a,b,c,d)}, +Nt(a,b,c){return this.GJ(a,b,c,B.bK)}, +hE(a){return this.gjt().hE(a)}, +rp(a){var s,r +switch(a.b.a){case 0:s=a.a-1 +break +case 1:s=a.a +break +default:s=null}r=this.c +r===$&&A.b() +return new A.d8(A.btc(B.anS,r,s+1),A.btc(B.anR,r,s))}, +NE(a){var s,r,q,p,o,n=this,m=a.a,l=t.OB,k=0 +while(!0){s=n.r +if(s===$){r=A.a([],l) +n.r!==$&&A.am() +q=n.r=new A.uS(n,r,B.Y) +p=q +s=p}else p=s +if(!(k=o.b&&m") +return A.aa(new A.ad(s,new A.auF(),r),!0,r.h("ax.E"))}, +m(){this.y=!0}} +A.auF.prototype={ +$1(a){return a.a}, +$S:628} +A.xY.prototype={ +gcK(a){return this.a}, +gcf(a){return this.c}} +A.Da.prototype={$ixY:1, +gcK(a){return this.f}, +gcf(a){return this.w}} +A.Ev.prototype={ +WS(){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b=this,a=b.a +if(a==null){s=b.gPp(b) +r=b.gPK() +q=b.gPL() +p=b.gPM() +o=b.gPN() +n=b.gQg(b) +m=b.gQe(b) +l=b.gSk() +k=b.gQa(b) +j=b.gQb() +i=b.gQc() +h=b.gQf() +g=b.gQd(b) +f=b.gR2(b) +e=b.gSO(b) +d=b.gOI(b) +c=b.gRa() +e=b.a=A.bps(b.gP0(b),s,r,q,p,o,k,j,i,g,m,h,n,b.gI3(),d,f,c,b.gSb(),l,e) +return e}return a}} +A.Y7.prototype={ +gPp(a){var s=this.c.a +if(s==null)if(this.gI3()==null){s=this.b +s=s.gPp(s)}else s=null +return s}, +gPK(){var s=this.c.b +return s==null?this.b.gPK():s}, +gPL(){var s=this.c.c +return s==null?this.b.gPL():s}, +gPM(){var s=this.c.d +return s==null?this.b.gPM():s}, +gPN(){var s=this.c.e +return s==null?this.b.gPN():s}, +gQg(a){var s=this.c.f +if(s==null){s=this.b +s=s.gQg(s)}return s}, +gQe(a){var s=this.b +s=s.gQe(s) +return s}, +gSk(){var s=this.c.w +return s==null?this.b.gSk():s}, +gQb(){var s=this.c.z +return s==null?this.b.gQb():s}, +gQc(){var s=this.b.gQc() +return s}, +gQf(){var s=this.c.as +return s==null?this.b.gQf():s}, +gQd(a){var s=this.c.at +if(s==null){s=this.b +s=s.gQd(s)}return s}, +gR2(a){var s=this.c.ax +if(s==null){s=this.b +s=s.gR2(s)}return s}, +gSO(a){var s=this.c.ay +if(s==null){s=this.b +s=s.gSO(s)}return s}, +gOI(a){var s=this.c.ch +if(s==null){s=this.b +s=s.gOI(s)}return s}, +gRa(){var s=this.c.CW +return s==null?this.b.gRa():s}, +gP0(a){var s=this.c.cx +if(s==null){s=this.b +s=s.gP0(s)}return s}, +gI3(){var s=this.c.cy +return s==null?this.b.gI3():s}, +gSb(){var s=this.c.db +return s==null?this.b.gSb():s}, +gQa(a){var s=this.c +if(s.x)s=s.y +else{s=this.b +s=s.gQa(s)}return s}} +A.a7M.prototype={ +gPp(a){return null}, +gPK(){return null}, +gPL(){return null}, +gPM(){return null}, +gPN(){return null}, +gQg(a){return this.b.c}, +gQe(a){return this.b.d}, +gSk(){return null}, +gQa(a){var s=this.b.f +return s==null?"sans-serif":s}, +gQb(){return null}, +gQc(){return null}, +gQf(){return null}, +gQd(a){var s=this.b.r +return s==null?14:s}, +gR2(a){return null}, +gSO(a){return null}, +gOI(a){return this.b.w}, +gRa(){return this.b.Q}, +gP0(a){return null}, +gI3(){return null}, +gSb(){return null}} +A.auE.prototype={ +gPH(){var s=this.d,r=s.length +return r===0?this.e:s[r-1]}, +gabQ(){return this.f}, +DW(a,b,c,d,e,f){var s,r=this,q=r.a,p=q.a,o=p+$.bBH() +q.a=o +s=r.gPH().WS() +r.a5y(s);++r.f +r.r.push(f) +q=e==null?b:e +r.c.push(new A.Da(s,p.length,o.length,a*f,b*f,c,q*f))}, +a6D(a,b,c,d,e){return this.DW(a,b,c,d,e,1)}, +a6C(a,b,c,d){return this.DW(a,b,c,null,null,d)}, +Bm(a){this.d.push(new A.Y7(this.gPH(),t.Q4.a(a)))}, +ik(){var s=this.d +if(s.length!==0)s.pop()}, +DY(a){var s,r=this,q=r.a,p=q.a,o=p+a +q.a=o +s=r.gPH().WS() +r.a5y(s) +r.c.push(new A.xY(s,p.length,o.length))}, +a5y(a){var s,r,q +if(!this.w)return +s=a.b +if(s!=null){r=s.a +r=B.k.a!==r}else r=!1 +if(r){this.w=!1 +return}q=a.as +if(q!=null&&q.length!==0){this.w=!1 +return}}, +aP(){var s,r=this,q=r.c +if(q.length===0)q.push(new A.xY(r.e.WS(),0,0)) +s=r.a.a +return new A.XU(q,r.b,s.charCodeAt(0)==0?s:s,r.w)}} +A.aES.prototype={ +ts(a){return this.aL0(a)}, +aL0(a0){var s=0,r=A.y(t.S7),q,p=this,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a +var $async$ts=A.u(function(a1,a2){if(a1===1)return A.v(a2,r) +while(true)switch(s){case 0:b=A.a([],t.Rh) +for(o=a0.a,n=o.length,m=0;m")) +b.u() +e=A.bOj(e) +d=A.ab(e) +s=new J.e6(e,e.length,d.h("e6<1>")) +s.u() +e=this.b +r=A.ab(e) +q=new J.e6(e,e.length,r.h("e6<1>")) +q.u() +p=b.d +if(p==null)p=c.c.a(p) +o=s.d +if(o==null)o=d.c.a(o) +n=q.d +if(n==null)n=r.c.a(n) +for(e=c.c,d=d.c,r=r.c,m=0;!0;m=k){c=p.b +l=o.b +k=Math.min(c,Math.min(l,n.gcf(n))) +j=c-k +i=j===0?p.c:B.U +h=k-m +f.push(A.bj0(m,k,i,o.c,o.d,n,A.vB(p.d-j,0,h),A.vB(p.e-j,0,h))) +if(c===k)if(b.u()){p=b.d +if(p==null)p=e.a(p) +g=!0}else g=!1 +else g=!1 +if(l===k)if(s.u()){o=s.d +if(o==null)o=d.a(o) +g=!0}if(n.gcf(n)===k)if(q.u()){n=q.d +if(n==null)n=r.a(n) +g=!0}if(!g)break}return f}} +A.b1Z.prototype={ +gv(a){var s=this +return A.X(s.a,s.b,s.c,s.d,s.e,s.f,s.r,s.w,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +l(a,b){var s=this +if(b==null)return!1 +return b instanceof A.mT&&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}} +A.mT.prototype={ +gt(a){return this.b-this.a}, +gVB(){return this.b-this.a===this.w}, +gtq(){return this.f instanceof A.Da}, +NJ(a){var s=a.c +s===$&&A.b() +return B.c.U(s,this.a,this.b-this.r)}, +rA(a,b){var s,r,q,p,o,n,m,l,k,j=this,i=j.a +if(i===b)return A.a([null,j],t.tZ) +s=j.b +if(s===b)return A.a([j,null],t.tZ) +r=s-b +q=j.r +p=Math.min(q,r) +o=j.w +n=Math.min(o,r) +m=j.d +l=j.e +k=j.f +return A.a([A.bj0(i,b,B.U,m,l,k,q-p,o-n),A.bj0(b,s,j.c,m,l,k,p,n)],t.cN)}, +j(a){var s=this +return B.akd.j(0)+"("+s.a+", "+s.b+", "+s.c.j(0)+", "+A.h(s.d)+")"}} +A.b4g.prototype={ +H4(a,b,c,d,e){var s=this +s.qI$=a +s.uR$=b +s.uS$=c +s.uT$=d +s.iw$=e}} +A.b4h.prototype={ +goU(a){var s,r,q=this,p=q.k8$ +p===$&&A.b() +s=q.At$ +if(p.x===B.j){s===$&&A.b() +p=s}else{s===$&&A.b() +r=q.iw$ +r===$&&A.b() +r=p.a.f-(s+(r+q.ix$)) +p=r}return p}, +gBt(a){var s,r=this,q=r.k8$ +q===$&&A.b() +s=r.At$ +if(q.x===B.j){s===$&&A.b() +q=r.iw$ +q===$&&A.b() +q=s+(q+r.ix$)}else{s===$&&A.b() +q=q.a.f-s}return q}, +aKG(a){var s,r,q=this,p=q.k8$ +p===$&&A.b() +s=p.e +if(q.b>p.c-s)return +r=q.w +if(r===0)return +q.ix$=(a-p.a.f)/(p.f-s)*r}} +A.b4f.prototype={ +ga4Z(){var s,r,q,p,o,n,m,l,k=this,j=k.L8$ +if(j===$){s=k.k8$ +s===$&&A.b() +r=k.goU(k) +q=k.k8$.a +p=k.uR$ +p===$&&A.b() +o=k.gBt(k) +n=k.k8$ +m=k.uS$ +m===$&&A.b() +l=k.d +l.toString +k.L8$!==$&&A.am() +j=k.L8$=new A.hf(s.a.r+r,q.w-p,q.r+o,n.a.w+m,l)}return j}, +ad_(){var s,r,q,p,o,n,m,l,k,j,i=this,h=i.k8$ +h===$&&A.b() +if(i.b>h.c-h.e){s=i.d +s.toString +h=h.a.r +if(s===B.j){s=i.goU(i) +r=i.k8$.a +q=i.uR$ +q===$&&A.b() +p=i.gBt(i) +o=i.iw$ +o===$&&A.b() +n=i.ix$ +m=i.uT$ +m===$&&A.b() +l=i.k8$ +k=i.uS$ +k===$&&A.b() +j=i.d +j.toString +j=new A.hf(h+s,r.w-q,r.r+p-(o+n-m),l.a.w+k,j) +h=j}else{s=i.goU(i) +r=i.iw$ +r===$&&A.b() +q=i.ix$ +p=i.uT$ +p===$&&A.b() +o=i.k8$.a +n=i.uR$ +n===$&&A.b() +m=i.gBt(i) +l=i.k8$ +k=i.uS$ +k===$&&A.b() +j=i.d +j.toString +j=new A.hf(h+s+(r+q-p),o.w-n,o.r+m,l.a.w+k,j) +h=j}return h}return i.ga4Z()}, +ad2(a,b){var s,r,q,p,o,n,m,l,k,j=this +if(b==null)b=j.a +if(a==null)a=j.b +s=j.a +r=b<=s +if(r&&a>=j.b-j.r)return j.ga4Z() +if(r)q=0 +else{r=j.qI$ +r===$&&A.b() +r.swK(j.f) +r=j.qI$ +p=$.Aa() +o=r.a.c +o===$&&A.b() +r=r.c +q=A.vG(p,o,s,b,r.gcK(r).ax)}s=j.b-j.r +if(a>=s)n=0 +else{r=j.qI$ +r===$&&A.b() +r.swK(j.f) +r=j.qI$ +p=$.Aa() +o=r.a.c +o===$&&A.b() +r=r.c +n=A.vG(p,o,a,s,r.gcK(r).ax)}s=j.d +s.toString +if(s===B.j){m=j.goU(j)+q +l=j.gBt(j)-n}else{m=j.goU(j)+n +l=j.gBt(j)-q}s=j.k8$ +s===$&&A.b() +s=s.a +r=s.r +s=s.w +p=j.uR$ +p===$&&A.b() +o=j.uS$ +o===$&&A.b() +k=j.d +k.toString +return new A.hf(r+m,s-p,r+l,s+o,k)}, +aOy(){return this.ad2(null,null)}, +aeM(a){var s,r,q,p,o,n,m,l,k,j=this +a=j.avU(a) +s=j.a +r=j.b-j.r +q=r-s +if(q===0)return new A.bR(s,B.q) +if(q===1){p=j.iw$ +p===$&&A.b() +return aq.c;){if(q.gaF_()){q.aK2() +s.push(q.aP()) +a0.x=!0 +break $label0$0}if(q.gaKm())q.aO4() +else q.aIb() +n+=q.aEr(o,n+1) +s.push(q.aP()) +q=q.abo()}a1=q.a +if(a1.length!==0){a1=B.b.ga1(a1).c +a1=a1===B.dA||a1===B.dB}else a1=!1 +if(a1){s.push(q.aP()) +q=q.abo()}}a1=r.b +l=a1.e +if(l!=null&&s.length>l){a0.x=!0 +B.b.q0(s,l,s.length)}for(r=s.length,k=1/0,j=-1/0,i=0;ij)j=c}a0.z=new A.I(k,0,j,a0.c) +if(r!==0)if(isFinite(a0.b)&&a1.a===B.l8)for(n=0;n=d;--s){q=o[s] +q.At$=e+r +if(q.d==null)q.d=a +p=q.iw$ +p===$&&A.b() +r+=p+q.ix$}return r}, +GI(){var s,r,q,p,o,n,m,l=A.a([],t.Lx) +for(s=this.y,r=s.length,q=0;q=b||a<0||b<0)return A.a([],t.Lx) +s=this.a.c +s===$&&A.b() +r=s.length +if(a>r||b>r)return A.a([],t.Lx) +q=A.a([],t.Lx) +for(s=this.y,p=s.length,o=0;o=j+l.r)return new A.bR(l.c-l.d,B.aQ) +s=k-j +for(k=l.w,j=k.length,r=0;r1 +return this.as>0}, +gaEk(){var s=this.c-this.w,r=this.d.b +switch(r.a.a){case 2:return s/2 +case 1:return s +case 4:r=r.b +return(r==null?B.j:r)===B.ab?s:0 +case 5:r=r.b +return(r==null?B.j:r)===B.ab?0:s +default:return 0}}, +gaF_(){var s,r=this.d.b +if(r.z==null)return!1 +s=r.e +return s==null||s===this.f+1}, +ganz(){var s=this.a +if(s.length!==0){s=B.b.ga1(s).c +s=s===B.dA||s===B.dB}else s=!1 +if(s)return!1 +s=this.b +s=s==null?null:s.length!==0 +if(s===!0)return!1 +return!0}, +a6x(a){var s=this +s.JF(a) +if(a.c!==B.U)s.Q=s.a.length +B.b.G(s.a,a)}, +JF(a){var s,r=this,q=a.w +r.at=r.at+q +if(a.gVB())r.ax+=q +else{r.ax=q +q=r.x +s=a.uT$ +s===$&&A.b() +r.w=q+s}q=r.x +s=a.iw$ +s===$&&A.b() +r.x=q+(s+a.ix$) +if(a.gtq())r.amj(a) +if(a.c!==B.U)++r.as +q=r.y +s=a.uR$ +s===$&&A.b() +r.y=Math.max(q,s) +s=r.z +q=a.uS$ +q===$&&A.b() +r.z=Math.max(s,q)}, +amj(a){var s,r,q,p,o,n=this,m=t.lO.a(a.f) +switch(m.c.a){case 3:s=n.y +r=m.b-s +break +case 4:r=n.z +s=m.b-r +break +case 5:q=n.y +p=n.z +o=m.b/2-(q+p)/2 +s=q+o +r=p+o +break +case 1:s=m.b +r=0 +break +case 2:r=m.b +s=0 +break +case 0:s=m.d +r=m.b-s +break +default:s=null +r=null}q=a.uT$ +q===$&&A.b() +p=a.iw$ +p===$&&A.b() +a.H4(n.e,s,r,q,p+a.ix$)}, +Dt(){var s,r=this,q=r.as=r.ax=r.at=r.z=r.y=r.x=r.w=0 +r.Q=-1 +for(s=r.a;q1||a +q=B.b.ga1(s) +if(q.gtq()){if(r){p=g.b +p.toString +B.b.fu(p,0,B.b.hj(s)) +g.Dt()}return}p=g.e +p.swK(q.f) +o=g.x +n=q.iw$ +n===$&&A.b() +m=q.ix$ +l=q.b-q.r +k=p.a9C(q.a,l,r,b-(o-(n+m))) +if(k===l)return +B.b.hj(s) +g.Dt() +j=q.rA(0,k) +i=B.b.gN(j) +if(i!=null){p.VO(i) +g.a6x(i)}h=B.b.ga1(j) +if(h!=null){p.VO(h) +s=g.b +s.toString +B.b.fu(s,0,h)}}, +aIb(){return this.a9D(!1,null)}, +aK2(){var s,r,q,p,o,n,m,l,k,j,i,h,g=this,f=g.d.b.z +f.toString +g.b=A.a([],t.cN) +s=g.e +r=g.a +s.swK(B.b.ga1(r).f) +q=$.Aa() +p=f.length +o=A.vG(q,f,0,p,null) +n=g.c +m=Math.max(0,n-o) +while(!0){if(r.length>1){l=g.x +k=B.b.ga1(r) +j=k.iw$ +j===$&&A.b() +k=l-(j+k.ix$) +l=k}else l=0 +if(!(l>m))break +l=g.b +l.toString +B.b.fu(l,0,B.b.hj(r)) +g.Dt() +s.swK(B.b.ga1(r).f) +o=A.vG(q,f,0,p,null) +m=n-o}i=B.b.ga1(r) +g.a9D(!0,m) +f=g.ga96() +h=new A.a0u($,$,$,$,$,$,$,$,0,B.dB,null,B.mX,i.f,0,0,f,f) +f=i.uR$ +f===$&&A.b() +r=i.uS$ +r===$&&A.b() +h.H4(s,f,r,o,o) +g.a6x(h)}, +aO4(){var s,r=this.a,q=r.length,p=q-2 +for(;r[p].c===B.U;)--p +s=p+1 +A.dZ(s,q,q,null,null) +this.b=A.fE(r,s,q,A.ab(r).c).fL(0) +B.b.q0(r,s,r.length) +this.Dt()}, +aEr(a,b){var s,r=this,q=r.a,p=b +while(!0){if(r.ganz())if(p1;){p=B.f.cY(q+r,2) +o=$.Aa() +s===$&&A.b() +n=this.c +m=A.vG(o,s,a,p,n.gcK(n).ax) +if(md?q:p +r=p}}return q===a&&!c?q+1:q}} +A.u0.prototype={ +K(){return"LineBreakType."+this.b}} +A.aBa.prototype={ +Lm(){return A.bOl(this.a)}} +A.aZL.prototype={ +Lm(){var s=this.a +return A.bw5(s,s,this.b)}} +A.u_.prototype={ +gv(a){var s=this +return A.X(s.a,s.b,s.c,s.d,s.e,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +l(a,b){var s=this +if(b==null)return!1 +return b instanceof A.u_&&b.a===s.a&&b.b===s.b&&b.c===s.c&&b.d===s.d&&b.e===s.e}, +j(a){return"LineBreakFragment("+this.a+", "+this.b+", "+this.c.j(0)+")"}} +A.bdg.prototype={ +$2(a,b){var s=this,r=a===B.dB?s.b.length:s.a.f,q=s.a,p=q.a +if(p===B.f7)++q.d +else if(p===B.ho||p===B.jm||p===B.jq){++q.e;++q.d}if(a===B.U)return +p=q.c +s.c.push(new A.u_(a,q.e,q.d,p,r)) +q.c=q.f +q.d=q.e=0 +q.a=q.b=null}, +$S:684} +A.a7U.prototype={ +m(){this.a.remove()}} +A.aXO.prototype={ +aD(a,b){var s,r,q,p,o,n,m,l=this.a.gjt().y +for(s=l.length,r=0;rthis.b)return B.anz +return B.any}} +A.r3.prototype={ +Lh(a,b,c){var s=A.VY(b,c) +return s==null?this.b:this.AA(s)}, +AA(a){var s,r,q,p,o=this +if(a==null)return o.b +s=o.c +r=s.i(0,a) +if(r!=null)return r +q=o.amF(a) +p=q===-1?o.b:o.a[q].c +s.p(0,a,p) +return p}, +amF(a){var s,r,q=this.a,p=q.length +for(s=0;s")).af(0,new A.aAe(this,r)) +return r}} +A.aAg.prototype={ +$1(a){a.preventDefault()}, +$S:3} +A.aAe.prototype={ +$1(a){var s=this.a,r=s.b.i(0,a) +r.toString +this.b.push(A.eG(r,"input",new A.aAf(s,a,r)))}, +$S:25} +A.aAf.prototype={ +$1(a){var s,r=this.a.c,q=this.b +if(r.i(0,q)==null)throw A.c(A.R("AutofillInfo must have a valid uniqueIdentifier.")) +else{r=r.i(0,q) +r.toString +s=A.bpj(this.c) +$.bL().pK("flutter/textinput",B.bL.pA(new A.lP(u.n,[0,A.ap([r.b,s.acX()],t.v,t.z)])),A.apV())}}, +$S:3} +A.Xf.prototype={ +a6Q(a,b){var s,r,q="password",p=this.d,o=this.e,n=globalThis.HTMLInputElement +if(n!=null&&a instanceof n){if(o!=null)a.placeholder=o +s=p==null +if(!s){a.name=p +a.id=p +if(B.c.n(p,q))A.ayj(a,q) +else A.ayj(a,"text")}s=s?"on":p +a.autocomplete=s}else{n=globalThis.HTMLTextAreaElement +if(n!=null&&a instanceof n){if(o!=null)a.placeholder=o +s=p==null +if(!s){a.name=p +a.id=p}r=A.b0(s?"on":p) +s=r==null?t.K.a(r):r +a.setAttribute("autocomplete",s)}}}, +jA(a){return this.a6Q(a,!1)}} +A.EI.prototype={} +A.Bw.prototype={ +gM5(){return Math.min(this.b,this.c)}, +gM0(){return Math.max(this.b,this.c)}, +acX(){var s=this +return A.ap(["text",s.a,"selectionBase",s.b,"selectionExtent",s.c,"composingBase",s.d,"composingExtent",s.e],t.N,t.z)}, +gv(a){var s=this +return A.X(s.a,s.b,s.c,s.d,s.e,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(A.o(s)!==J.a1(b))return!1 +return b instanceof A.Bw&&b.a==s.a&&b.gM5()===s.gM5()&&b.gM0()===s.gM0()&&b.d===s.d&&b.e===s.e}, +j(a){return this.e0(0)}, +jA(a){var s,r,q=this,p=globalThis.HTMLInputElement +if(p!=null&&a instanceof p){a.toString +A.bp_(a,q.a) +s=q.gM5() +r=q.gM0() +a.setSelectionRange(s,r)}else{p=globalThis.HTMLTextAreaElement +if(p!=null&&a instanceof p){a.toString +A.bp0(a,q.a) +s=q.gM5() +r=q.gM0() +a.setSelectionRange(s,r)}else{s=a==null?null:A.bF6(a) +throw A.c(A.a7("Unsupported DOM element type: <"+A.h(s)+"> ("+J.a1(a).j(0)+")"))}}}} +A.aFV.prototype={} +A.a1u.prototype={ +pU(){var s,r=this,q=r.w +if(q!=null){s=r.c +s.toString +q.jA(s)}q=r.d +q===$&&A.b() +if(q.w!=null){r.FU() +q=r.e +if(q!=null)q.jA(r.c) +r.ga9B().focus() +r.c.focus()}}} +A.a7W.prototype={ +pU(){var s,r=this,q=r.w +if(q!=null){s=r.c +s.toString +q.jA(s)}q=r.d +q===$&&A.b() +if(q.w!=null)A.d2(B.F,new A.aQw(r))}, +Fe(){if(this.w!=null)this.pU() +this.c.focus()}} +A.aQw.prototype={ +$0(){var s,r=this.a +r.FU() +r.ga9B().focus() +r.c.focus() +s=r.e +if(s!=null){r=r.c +r.toString +s.jA(r)}}, +$S:0} +A.Ja.prototype={ +gpz(){var s=null,r=this.f +if(r==null){r=this.e.a +r.toString +r=this.f=new A.EI(r,"",-1,-1,s,s,s,s)}return r}, +ga9B(){var s=this.d +s===$&&A.b() +s=s.w +return s==null?null:s.a}, +AR(a,b,c){var s,r,q,p=this,o="none",n="transparent" +p.c=a.a.TV() +p.Ta(a) +s=p.c +s.classList.add("flt-text-editing") +r=s.style +A.Q(r,"forced-color-adjust",o) +A.Q(r,"white-space","pre-wrap") +A.Q(r,"align-content","center") +A.Q(r,"position","absolute") +A.Q(r,"top","0") +A.Q(r,"left","0") +A.Q(r,"padding","0") +A.Q(r,"opacity","1") +A.Q(r,"color",n) +A.Q(r,"background-color",n) +A.Q(r,"background",n) +A.Q(r,"caret-color",n) +A.Q(r,"outline",o) +A.Q(r,"border",o) +A.Q(r,"resize",o) +A.Q(r,"text-shadow",o) +A.Q(r,"overflow","hidden") +A.Q(r,"transform-origin","0 0 0") +q=$.dv() +if(q!==B.dr)q=q===B.ah +else q=!0 +if(q)s.classList.add("transparentTextEditing") +s=p.r +if(s!=null){q=p.c +q.toString +s.jA(q)}s=p.d +s===$&&A.b() +if(s.w==null){s=$.hm.x +s===$&&A.b() +q=p.c +q.toString +s.append(q) +p.Q=!1}p.Fe() +p.b=!0 +p.x=c +p.y=b}, +Ta(a){var s,r,q,p,o,n=this +n.d=a +s=n.c +if(a.c){s.toString +r=A.b0("readonly") +if(r==null)r=t.K.a(r) +s.setAttribute("readonly",r)}else s.removeAttribute("readonly") +if(a.d){s=n.c +s.toString +r=A.b0("password") +if(r==null)r=t.K.a(r) +s.setAttribute("type",r)}if(a.a===B.qp){s=n.c +s.toString +r=A.b0("none") +if(r==null)r=t.K.a(r) +s.setAttribute("inputmode",r)}q=A.bFC(a.b) +s=n.c +s.toString +q.aFE(s) +p=a.r +s=n.c +if(p!=null){s.toString +p.a6Q(s,!0)}else{s.toString +r=A.b0("off") +if(r==null)r=t.K.a(r) +s.setAttribute("autocomplete",r)}o=a.e?"on":"off" +s=n.c +s.toString +r=A.b0(o) +if(r==null)r=t.K.a(r) +s.setAttribute("autocorrect",r)}, +Fe(){this.pU()}, +DT(){var s,r,q=this,p=q.d +p===$&&A.b() +p=p.w +if(p!=null)B.b.I(q.z,p.DU()) +p=q.z +s=q.c +s.toString +r=q.gF2() +p.push(A.eG(s,"input",r)) +s=q.c +s.toString +p.push(A.eG(s,"keydown",q.gFB())) +p.push(A.eG(self.document,"selectionchange",r)) +r=q.c +r.toString +A.dU(r,"beforeinput",t.e.a(A.cA(q.gLn())),null) +r=q.c +r.toString +q.JZ(r) +r=q.c +r.toString +p.push(A.eG(r,"blur",new A.axi(q))) +q.ML()}, +X8(a){this.w=a +if(this.b)this.pU()}, +X9(a){var s +this.r=a +if(this.b){s=this.c +s.toString +a.jA(s)}}, +px(a){var s,r,q,p=this,o=null +p.b=!1 +p.w=p.r=p.f=p.e=null +for(s=p.z,r=0;r=0&&a.c>=0) +else s=!0 +if(s)return +a.jA(this.c)}, +pU(){this.c.focus()}, +FU(){var s,r,q=this.d +q===$&&A.b() +q=q.w +q.toString +s=this.c +s.toString +r=q.a +r.insertBefore(s,q.d) +q=$.hm.x +q===$&&A.b() +q.append(r) +this.Q=!0}, +a9O(a){var s,r,q=this,p=q.c +p.toString +s=q.aH2(A.bpj(p)) +p=q.d +p===$&&A.b() +if(p.f){q.gpz().r=s.d +q.gpz().w=s.e +r=A.bKF(s,q.e,q.gpz())}else r=null +if(!s.l(0,q.e)){q.e=s +q.f=r +q.x.$2(s,r) +q.f=null}}, +aIo(a){var s=this,r=A.ae(a.data),q=A.ae(a.inputType) +if(q!=null)if(B.c.n(q,"delete")){s.gpz().b="" +s.gpz().d=s.e.c}else if(q==="insertLineBreak"){s.gpz().b="\n" +s.gpz().c=s.e.c +s.gpz().d=s.e.c}else if(r!=null){s.gpz().b=r +s.gpz().c=s.e.c +s.gpz().d=s.e.c}}, +aLm(a){var s,r,q=globalThis.KeyboardEvent +if(q!=null&&a instanceof q)if(a.keyCode===13){s=this.y +s.toString +r=this.d +r===$&&A.b() +s.$1(r.b) +if(!(this.d.a instanceof A.a5h))a.preventDefault()}}, +Ut(a,b,c,d){var s,r=this +r.AR(b,c,d) +r.DT() +s=r.e +if(s!=null)r.Yb(s) +r.c.focus()}, +ML(){var s=this,r=s.z,q=s.c +q.toString +r.push(A.eG(q,"mousedown",new A.axj())) +q=s.c +q.toString +r.push(A.eG(q,"mouseup",new A.axk())) +q=s.c +q.toString +r.push(A.eG(q,"mousemove",new A.axl()))}} +A.axi.prototype={ +$1(a){this.a.c.focus()}, +$S:3} +A.axj.prototype={ +$1(a){a.preventDefault()}, +$S:3} +A.axk.prototype={ +$1(a){a.preventDefault()}, +$S:3} +A.axl.prototype={ +$1(a){a.preventDefault()}, +$S:3} +A.aFk.prototype={ +AR(a,b,c){var s,r=this +r.Oh(a,b,c) +s=r.c +s.toString +a.a.a7M(s) +s=r.d +s===$&&A.b() +if(s.w!=null)r.FU() +s=r.c +s.toString +a.x.Y7(s)}, +Fe(){A.Q(this.c.style,"transform","translate(-9999px, -9999px)") +this.p1=!1}, +DT(){var s,r,q,p=this,o=p.d +o===$&&A.b() +o=o.w +if(o!=null)B.b.I(p.z,o.DU()) +o=p.z +s=p.c +s.toString +r=p.gF2() +o.push(A.eG(s,"input",r)) +s=p.c +s.toString +o.push(A.eG(s,"keydown",p.gFB())) +o.push(A.eG(self.document,"selectionchange",r)) +r=p.c +r.toString +A.dU(r,"beforeinput",t.e.a(A.cA(p.gLn())),null) +r=p.c +r.toString +p.JZ(r) +r=p.c +r.toString +o.push(A.eG(r,"focus",new A.aFn(p))) +p.amf() +q=new A.Ep() +$.Wd() +q.vP(0) +r=p.c +r.toString +o.push(A.eG(r,"blur",new A.aFo(p,q)))}, +X8(a){var s=this +s.w=a +if(s.b&&s.p1)s.pU()}, +px(a){var s +this.agM(0) +s=this.ok +if(s!=null)s.aQ(0) +this.ok=null}, +amf(){var s=this.c +s.toString +this.z.push(A.eG(s,"click",new A.aFl(this)))}, +a3R(){var s=this.ok +if(s!=null)s.aQ(0) +this.ok=A.d2(B.b_,new A.aFm(this))}, +pU(){var s,r +this.c.focus() +s=this.w +if(s!=null){r=this.c +r.toString +s.jA(r)}}} +A.aFn.prototype={ +$1(a){this.a.a3R()}, +$S:3} +A.aFo.prototype={ +$1(a){var s=A.dC(this.b.gUs(),0,0).a<2e5,r=self.document.hasFocus()&&s,q=this.a +if(r)q.c.focus() +else q.a.NT()}, +$S:3} +A.aFl.prototype={ +$1(a){var s=this.a +if(s.p1){s.Fe() +s.a3R()}}, +$S:3} +A.aFm.prototype={ +$0(){var s=this.a +s.p1=!0 +s.pU()}, +$S:0} +A.arq.prototype={ +AR(a,b,c){var s,r,q=this +q.Oh(a,b,c) +s=q.c +s.toString +a.a.a7M(s) +s=q.d +s===$&&A.b() +if(s.w!=null)q.FU() +else{s=$.hm.x +s===$&&A.b() +r=q.c +r.toString +s.append(r)}s=q.c +s.toString +a.x.Y7(s)}, +DT(){var s,r,q=this,p=q.d +p===$&&A.b() +p=p.w +if(p!=null)B.b.I(q.z,p.DU()) +p=q.z +s=q.c +s.toString +r=q.gF2() +p.push(A.eG(s,"input",r)) +s=q.c +s.toString +p.push(A.eG(s,"keydown",q.gFB())) +p.push(A.eG(self.document,"selectionchange",r)) +r=q.c +r.toString +A.dU(r,"beforeinput",t.e.a(A.cA(q.gLn())),null) +r=q.c +r.toString +q.JZ(r) +r=q.c +r.toString +p.push(A.eG(r,"blur",new A.arr(q))) +q.ML()}, +pU(){var s,r +this.c.focus() +s=this.w +if(s!=null){r=this.c +r.toString +s.jA(r)}}} +A.arr.prototype={ +$1(a){var s=this.a +if(self.document.hasFocus())s.c.focus() +else s.a.NT()}, +$S:3} +A.aBO.prototype={ +AR(a,b,c){var s +this.Oh(a,b,c) +s=this.d +s===$&&A.b() +if(s.w!=null)this.FU()}, +DT(){var s,r,q=this,p=q.d +p===$&&A.b() +p=p.w +if(p!=null)B.b.I(q.z,p.DU()) +p=q.z +s=q.c +s.toString +r=q.gF2() +p.push(A.eG(s,"input",r)) +s=q.c +s.toString +p.push(A.eG(s,"keydown",q.gFB())) +s=q.c +s.toString +A.dU(s,"beforeinput",t.e.a(A.cA(q.gLn())),null) +s=q.c +s.toString +q.JZ(s) +s=q.c +s.toString +p.push(A.eG(s,"keyup",new A.aBQ(q))) +s=q.c +s.toString +p.push(A.eG(s,"select",r)) +r=q.c +r.toString +p.push(A.eG(r,"blur",new A.aBR(q))) +q.ML()}, +ayI(){A.d2(B.F,new A.aBP(this))}, +pU(){var s,r,q=this +q.c.focus() +s=q.w +if(s!=null){r=q.c +r.toString +s.jA(r)}s=q.e +if(s!=null){r=q.c +r.toString +s.jA(r)}}} +A.aBQ.prototype={ +$1(a){this.a.a9O(a)}, +$S:3} +A.aBR.prototype={ +$1(a){this.a.ayI()}, +$S:3} +A.aBP.prototype={ +$0(){this.a.c.focus()}, +$S:0} +A.aXs.prototype={} +A.aXz.prototype={ +ko(a){var s=a.b +if(s!=null&&s!==this.a&&a.c){a.c=!1 +a.goj().px(0)}a.b=this.a +a.d=this.b}} +A.aXG.prototype={ +ko(a){var s=a.goj(),r=a.d +r.toString +s.Ta(r)}} +A.aXB.prototype={ +ko(a){a.goj().Yb(this.a)}} +A.aXE.prototype={ +ko(a){if(!a.c)a.aBo()}} +A.aXA.prototype={ +ko(a){a.goj().X8(this.a)}} +A.aXD.prototype={ +ko(a){a.goj().X9(this.a)}} +A.aXq.prototype={ +ko(a){if(a.c){a.c=!1 +a.goj().px(0)}}} +A.aXw.prototype={ +ko(a){if(a.c){a.c=!1 +a.goj().px(0)}}} +A.aXC.prototype={ +ko(a){}} +A.aXy.prototype={ +ko(a){}} +A.aXx.prototype={ +ko(a){}} +A.aXv.prototype={ +ko(a){a.NT() +if(this.a)A.bVd() +A.bR3()}} +A.bgi.prototype={ +$2(a,b){var s=t.qr +s=A.dx(new A.hL(b.getElementsByClassName("submitBtn"),s),s.h("z.E"),t.e) +A.k(s).z[1].a(J.jo(s.a)).click()}, +$S:692} +A.aXa.prototype={ +aJn(a,b){var s,r,q,p,o,n,m,l,k=B.bL.oE(a) +switch(k.a){case"TextInput.setClient":s=k.b +r=J.ak(s) +q=new A.aXz(A.fY(r.i(s,0)),A.bqc(t.a.a(r.i(s,1)))) +break +case"TextInput.updateConfig":this.a.d=A.bqc(t.a.a(k.b)) +q=B.Ot +break +case"TextInput.setEditingState":q=new A.aXB(A.bpk(t.a.a(k.b))) +break +case"TextInput.show":q=B.Or +break +case"TextInput.setEditableSizeAndTransform":q=new A.aXA(A.bFn(t.a.a(k.b))) +break +case"TextInput.setStyle":s=t.a.a(k.b) +r=J.ak(s) +p=A.fY(r.i(s,"textAlignIndex")) +o=A.fY(r.i(s,"textDirectionIndex")) +n=A.bv(r.i(s,"fontWeightIndex")) +m=n!=null?A.bwv(n):"normal" +l=A.bd_(r.i(s,"fontSize")) +if(l==null)l=null +q=new A.aXD(new A.azU(l,m,A.ae(r.i(s,"fontFamily")),B.a2K[p],B.wR[o])) +break +case"TextInput.clearClient":q=B.Om +break +case"TextInput.hide":q=B.On +break +case"TextInput.requestAutofill":q=B.Oo +break +case"TextInput.finishAutofillContext":q=new A.aXv(A.vx(k.b)) +break +case"TextInput.setMarkedTextRect":q=B.Oq +break +case"TextInput.setCaretRect":q=B.Op +break +default:$.bL().ji(b,null) +return}q.ko(this.a) +new A.aXb(b).$0()}} +A.aXb.prototype={ +$0(){$.bL().ji(this.a,B.aK.e4([!0]))}, +$S:0} +A.aFh.prototype={ +gfW(a){var s=this.a +if(s===$){s!==$&&A.am() +s=this.a=new A.aXa(this)}return s}, +goj(){var s,r,q,p,o=this,n=null,m=o.f +if(m===$){s=$.hx +if((s==null?$.hx=A.pX():s).x){s=A.bJR(o) +r=s}else{s=$.dv() +if(s===B.ah){q=$.fI() +q=q===B.bx}else q=!1 +if(q)p=new A.aFk(o,A.a([],t.Up),$,$,$,n) +else if(s===B.ah)p=new A.a7W(o,A.a([],t.Up),$,$,$,n) +else{if(s===B.dr){q=$.fI() +q=q===B.ky}else q=!1 +if(q)p=new A.arq(o,A.a([],t.Up),$,$,$,n) +else p=s===B.cP?new A.aBO(o,A.a([],t.Up),$,$,$,n):A.bGq(o)}r=p}o.f!==$&&A.am() +m=o.f=r}return m}, +aBo(){var s,r,q=this +q.c=!0 +s=q.goj() +r=q.d +r.toString +s.Ut(0,r,new A.aFi(q),new A.aFj(q))}, +NT(){var s,r=this +if(r.c){r.c=!1 +r.goj().px(0) +r.gfW(r) +s=r.b +$.bL().pK("flutter/textinput",B.bL.pA(new A.lP("TextInputClient.onConnectionClosed",[s])),A.apV())}}} +A.aFj.prototype={ +$2(a,b){var s,r,q="flutter/textinput",p=this.a +if(p.d.f){p.gfW(p) +p=p.b +s=t.N +r=t.z +$.bL().pK(q,B.bL.pA(new A.lP(u.f,[p,A.ap(["deltas",A.a([A.ap(["oldText",b.a,"deltaText",b.b,"deltaStart",b.c,"deltaEnd",b.d,"selectionBase",b.e,"selectionExtent",b.f,"composingBase",b.r,"composingExtent",b.w],s,r)],t.H7)],s,r)])),A.apV())}else{p.gfW(p) +p=p.b +$.bL().pK(q,B.bL.pA(new A.lP("TextInputClient.updateEditingState",[p,a.acX()])),A.apV())}}, +$S:708} +A.aFi.prototype={ +$1(a){var s=this.a +s.gfW(s) +s=s.b +$.bL().pK("flutter/textinput",B.bL.pA(new A.lP("TextInputClient.performAction",[s,a])),A.apV())}, +$S:43} +A.azU.prototype={ +jA(a){var s=this,r=a.style +A.Q(r,"text-align",A.bVS(s.d,s.e)) +A.Q(r,"font",s.b+" "+A.h(s.a)+"px "+A.h(A.beC(s.c)))}} +A.azi.prototype={ +jA(a){var s=A.nQ(this.c),r=a.style +A.Q(r,"width",A.h(this.a)+"px") +A.Q(r,"height",A.h(this.b)+"px") +A.Q(r,"transform",s)}} +A.azj.prototype={ +$1(a){return A.nM(a)}, +$S:798} +A.bfr.prototype={ +$1(a){var s="operation failed" +if(a==null)if(this.a.a)throw A.c(A.cR(s)) +else this.b.ms(new A.FP(s)) +else this.b.cM(0,a)}, +$S(){return this.c.h("~(0?)")}} +A.OZ.prototype={ +K(){return"TransformKind."+this.b}} +A.beB.prototype={ +$1(a){return"0x"+B.c.eM(B.f.o0(a,16),2,"0")}, +$S:318} +A.a2R.prototype={ +gt(a){return this.b.b}, +i(a,b){var s=this.c.i(0,b) +return s==null?null:s.d.b}, +ZA(a,b,c){var s,r,q,p=this.b +p.K_(new A.ak1(b,c)) +s=this.c +r=p.a +q=r.b.HG() +q.toString +s.p(0,b,q) +if(p.b>this.a){s.F(0,r.a.gEF().a) +p.hj(0)}}} +A.ds.prototype={ +cd(a){var s=a.a,r=this.a +r[15]=s[15] +r[14]=s[14] +r[13]=s[13] +r[12]=s[12] +r[11]=s[11] +r[10]=s[10] +r[9]=s[9] +r[8]=s[8] +r[7]=s[7] +r[6]=s[6] +r[5]=s[5] +r[4]=s[4] +r[3]=s[3] +r[2]=s[2] +r[1]=s[1] +r[0]=s[0]}, +i(a,b){return this.a[b]}, +p(a,b,c){this.a[b]=c}, +bj(a,b,a0){var s=this.a,r=s[0],q=s[4],p=s[8],o=s[12],n=s[1],m=s[5],l=s[9],k=s[13],j=s[2],i=s[6],h=s[10],g=s[14],f=s[3],e=s[7],d=s[11],c=s[15] +s[12]=r*b+q*a0+p*0+o +s[13]=n*b+m*a0+l*0+k +s[14]=j*b+i*a0+h*0+g +s[15]=f*b+e*a0+d*0+c}, +aOP(a,b){return this.bj(a,b,0)}, +rq(a,b,c,d){var s=c==null?b:c,r=d==null?b:d,q=this.a +q[15]=q[15] +q[0]=q[0]*b +q[1]=q[1]*b +q[2]=q[2]*b +q[3]=q[3]*b +q[4]=q[4]*s +q[5]=q[5]*s +q[6]=q[6]*s +q[7]=q[7]*s +q[8]=q[8]*r +q[9]=q[9]*r +q[10]=q[10]*r +q[11]=q[11]*r +q[12]=q[12] +q[13]=q[13] +q[14]=q[14]}, +hF(a,b,c){return this.rq(a,b,c,null)}, +cl(a,b){return this.rq(a,b,null,null)}, +FT(a,b,c){var s=this.a,r=s[0],q=s[4],p=s[8],o=s[12],n=s[1],m=s[5],l=s[9],k=s[13],j=s[2],i=s[6],h=s[10],g=s[14],f=1/(s[3]*a+s[7]*b+s[11]*c+s[15]) +return new A.Sw((r*a+q*b+p*c+o)*f,(n*a+m*b+l*c+k)*f,(j*a+i*b+h*c+g)*f)}, +Fl(a){var s=this.a +return s[0]===1&&s[1]===0&&s[2]===0&&s[3]===0&&s[4]===0&&s[5]===1&&s[6]===0&&s[7]===0&&s[8]===0&&s[9]===0&&s[10]===1&&s[11]===0&&s[12]===0&&s[13]===0&&s[14]===0&&s[15]===1}, +acN(b0,b1,b2){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a=b1.a,a0=b1.b,a1=b1.c,a2=Math.sqrt(a*a+a0*a0+a1*a1),a3=a/a2,a4=a0/a2,a5=a1/a2,a6=Math.cos(b2),a7=Math.sin(b2),a8=1-a6,a9=a3*a3*a8+a6 +a1=a5*a7 +s=a3*a4*a8-a1 +a0=a4*a7 +r=a3*a5*a8+a0 +q=a4*a3*a8+a1 +p=a4*a4*a8+a6 +a1=a3*a7 +o=a4*a5*a8-a1 +n=a5*a3*a8-a0 +m=a5*a4*a8+a1 +l=a5*a5*a8+a6 +a1=this.a +a0=a1[0] +a=a1[4] +k=a1[8] +j=a1[1] +i=a1[5] +h=a1[9] +g=a1[2] +f=a1[6] +e=a1[10] +d=a1[3] +c=a1[7] +b=a1[11] +a1[0]=a0*a9+a*q+k*n +a1[1]=j*a9+i*q+h*n +a1[2]=g*a9+f*q+e*n +a1[3]=d*a9+c*q+b*n +a1[4]=a0*s+a*p+k*m +a1[5]=j*s+i*p+h*m +a1[6]=g*s+f*p+e*m +a1[7]=d*s+c*p+b*m +a1[8]=a0*r+a*o+k*l +a1[9]=j*r+i*o+h*l +a1[10]=g*r+f*o+e*l +a1[11]=d*r+c*o+b*l}, +vK(a,b,c){var s=this.a +s[14]=c +s[13]=b +s[12]=a}, +k0(b5){var s,r,q,p,o=b5.a,n=o[0],m=o[1],l=o[2],k=o[3],j=o[4],i=o[5],h=o[6],g=o[7],f=o[8],e=o[9],d=o[10],c=o[11],b=o[12],a=o[13],a0=o[14],a1=o[15],a2=n*i-m*j,a3=n*h-l*j,a4=n*g-k*j,a5=m*h-l*i,a6=m*g-k*i,a7=l*g-k*h,a8=f*a-e*b,a9=f*a0-d*b,b0=f*a1-c*b,b1=e*a0-d*a,b2=e*a1-c*a,b3=d*a1-c*a0,b4=a2*b3-a3*b2+a4*b1+a5*b0-a6*a9+a7*a8 +if(b4===0){this.cd(b5) +return 0}s=1/b4 +r=this.a +r[0]=(i*b3-h*b2+g*b1)*s +r[1]=(-m*b3+l*b2-k*b1)*s +r[2]=(a*a7-a0*a6+a1*a5)*s +r[3]=(-e*a7+d*a6-c*a5)*s +q=-j +r[4]=(q*b3+h*b0-g*a9)*s +r[5]=(n*b3-l*b0+k*a9)*s +p=-b +r[6]=(p*a7+a0*a4-a1*a3)*s +r[7]=(f*a7-d*a4+c*a3)*s +r[8]=(j*b2-i*b0+g*a8)*s +r[9]=(-n*b2+m*b0-k*a8)*s +r[10]=(b*a6-a*a4+a1*a2)*s +r[11]=(-f*a6+e*a4-c*a2)*s +r[12]=(q*b1+i*a9-h*a8)*s +r[13]=(n*b1-m*a9+l*a8)*s +r[14]=(p*a5+a*a3-a0*a2)*s +r[15]=(f*a5-e*a3+d*a2)*s +return b4}, +f_(b5,b6){var s=this.a,r=s[15],q=s[0],p=s[4],o=s[8],n=s[12],m=s[1],l=s[5],k=s[9],j=s[13],i=s[2],h=s[6],g=s[10],f=s[14],e=s[3],d=s[7],c=s[11],b=b6.a,a=b[15],a0=b[0],a1=b[4],a2=b[8],a3=b[12],a4=b[1],a5=b[5],a6=b[9],a7=b[13],a8=b[2],a9=b[6],b0=b[10],b1=b[14],b2=b[3],b3=b[7],b4=b[11] +s[0]=q*a0+p*a4+o*a8+n*b2 +s[4]=q*a1+p*a5+o*a9+n*b3 +s[8]=q*a2+p*a6+o*b0+n*b4 +s[12]=q*a3+p*a7+o*b1+n*a +s[1]=m*a0+l*a4+k*a8+j*b2 +s[5]=m*a1+l*a5+k*a9+j*b3 +s[9]=m*a2+l*a6+k*b0+j*b4 +s[13]=m*a3+l*a7+k*b1+j*a +s[2]=i*a0+h*a4+g*a8+f*b2 +s[6]=i*a1+h*a5+g*a9+f*b3 +s[10]=i*a2+h*a6+g*b0+f*b4 +s[14]=i*a3+h*a7+g*b1+f*a +s[3]=e*a0+d*a4+c*a8+r*b2 +s[7]=e*a1+d*a5+c*a9+r*b3 +s[11]=e*a2+d*a6+c*b0+r*b4 +s[15]=e*a3+d*a7+c*b1+r*a}, +M6(a){var s=new A.ds(new Float32Array(16)) +s.cd(this) +s.f_(0,a) +return s}, +adf(a){var s=a[0],r=a[1],q=this.a +a[0]=q[0]*s+q[4]*r+q[12] +a[1]=q[1]*s+q[5]*r+q[13]}, +j(a){return this.e0(0)}} +A.aBe.prototype={ +ade(a,b,c){var s=this.a +this.b=s[12]+s[0]*b+s[4]*c +this.c=s[13]+s[1]*b+s[5]*c}} +A.a_F.prototype={ +alr(a){var s=A.bRr(new A.ax1(this)) +this.b=s +s.observe(this.a)}, +amM(a){this.c.G(0,a)}, +ad(a){var s=this.b +s===$&&A.b() +s.disconnect() +this.c.ad(0)}, +gabB(a){var s=this.c +return new A.iG(s,A.k(s).h("iG<1>"))}, +zH(){var s,r=$.eg().x +if(r==null){s=self.window.devicePixelRatio +r=s===0?1:s}s=this.a +return new A.V(s.clientWidth*r,s.clientHeight*r)}, +a7H(a,b){return B.ij}} +A.ax1.prototype={ +$2(a,b){new A.ad(a,new A.ax0(),A.k(a).h("ad")).af(0,this.a.gamL())}, +$S:874} +A.ax0.prototype={ +$1(a){return new A.V(a.contentRect.width,a.contentRect.height)}, +$S:877} +A.axs.prototype={} +A.a1i.prototype={ +axI(a){this.b.G(0,null)}, +ad(a){var s=this.a +s===$&&A.b() +s.b.removeEventListener(s.a,s.c) +this.b.ad(0)}, +gabB(a){var s=this.b +return new A.iG(s,A.k(s).h("iG<1>"))}, +zH(){var s,r,q=A.b4("windowInnerWidth"),p=A.b4("windowInnerHeight"),o=self.window.visualViewport,n=$.eg().x +if(n==null){s=self.window.devicePixelRatio +n=s===0?1:s}if(o!=null){s=$.fI() +if(s===B.bx){s=self.document.documentElement.clientWidth +r=self.document.documentElement.clientHeight +q.b=s*n +p.b=r*n}else{s=o.width +if(s==null)s=null +s.toString +q.b=s*n +s=A.bp7(o) +s.toString +p.b=s*n}}else{s=self.window.innerWidth +if(s==null)s=null +s.toString +q.b=s*n +s=A.bpa(self.window) +s.toString +p.b=s*n}return new A.V(q.aF(),p.aF())}, +a7H(a,b){var s,r,q,p=$.eg().x +if(p==null){s=self.window.devicePixelRatio +p=s===0?1:s}r=self.window.visualViewport +q=A.b4("windowInnerHeight") +if(r!=null){s=$.fI() +if(s===B.bx&&!b)q.b=self.document.documentElement.clientHeight*p +else{s=A.bp7(r) +s.toString +q.b=s*p}}else{s=A.bpa(self.window) +s.toString +q.b=s*p}return new A.aaW(0,0,0,a-q.aF())}} +A.ax2.prototype={ +aal(a,b){var s +b.gdW(b).af(0,new A.ax3(this)) +s=A.b0("custom-element") +if(s==null)s=t.K.a(s) +this.d.setAttribute("flt-embedding",s)}, +a70(a){A.Q(a.style,"width","100%") +A.Q(a.style,"height","100%") +A.Q(a.style,"display","block") +A.Q(a.style,"overflow","hidden") +A.Q(a.style,"position","relative") +this.d.appendChild(a) +this.G7(a)}, +a71(a,b){this.d.insertBefore(a,b) +this.G7(a)}, +a8P(){return this.a8Q(this.d)}, +a92(){return this.a93(this.d)}} +A.ax3.prototype={ +$1(a){var s=A.b0(a.b) +if(s==null)s=t.K.a(s) +this.a.d.setAttribute(a.a,s)}, +$S:316} +A.aA6.prototype={ +G7(a){}} +A.b23.prototype={ +a8Q(a){if(!this.Q$)return +A.dU(a,"contextmenu",this.as$,null) +this.Q$=!1}, +a93(a){if(this.Q$)return +A.hS(a,"contextmenu",this.as$,null) +this.Q$=!0}} +A.aej.prototype={ +$1(a){a.preventDefault()}, +$S:3} +A.aCR.prototype={ +aal(a,b){var s,r,q="0",p="none" +b.gdW(b).af(0,new A.aCS(this)) +s=self.document.body +s.toString +r=A.b0("full-page") +if(r==null)r=t.K.a(r) +s.setAttribute("flt-embedding",r) +this.amy() +r=self.document.body +r.toString +A.hn(r,"position","fixed") +A.hn(r,"top",q) +A.hn(r,"right",q) +A.hn(r,"bottom",q) +A.hn(r,"left",q) +A.hn(r,"overflow","hidden") +A.hn(r,"padding",q) +A.hn(r,"margin",q) +A.hn(r,"user-select",p) +A.hn(r,"-webkit-user-select",p) +A.hn(r,"touch-action",p)}, +a70(a){var s=a.style +A.Q(s,"position","absolute") +A.Q(s,"top","0") +A.Q(s,"right","0") +A.Q(s,"bottom","0") +A.Q(s,"left","0") +self.document.body.append(a) +this.G7(a)}, +a71(a,b){self.document.body.insertBefore(a,b) +this.G7(a)}, +a8P(){return this.a8Q(self.window)}, +a92(){return this.a93(self.window)}, +amy(){var s,r,q +for(s=t.qr,s=A.dx(new A.hL(self.document.head.querySelectorAll('meta[name="viewport"]'),s),s.h("z.E"),t.e),r=J.ao(s.a),s=A.k(s),s=s.h("@<1>").S(s.z[1]).z[1];r.u();)s.a(r.gH(r)).remove() +q=A.c4(self.document,"meta") +s=A.b0("") +if(s==null)s=t.K.a(s) +q.setAttribute("flt-viewport",s) +q.name="viewport" +q.content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" +self.document.head.append(q) +this.G7(q)}} +A.aCS.prototype={ +$1(a){var s,r=self.document.body +r.toString +s=A.b0(a.b) +if(s==null)s=t.K.a(s) +r.setAttribute(a.a,s)}, +$S:316} +A.a0A.prototype={ +als(a,b){var s=this,r=s.b,q=s.a +r.d.p(0,q,s) +r.e.p(0,q,B.qz) +$.vA.push(new A.aAj(s))}, +gKe(){var s=this.c +if(s==null){s=$.bh1() +s=this.c=A.blv(s)}return s}, +DP(){var s=0,r=A.y(t.H),q,p=this,o,n +var $async$DP=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:n=p.c +if(n==null){n=$.bh1() +n=p.c=A.blv(n)}if(n instanceof A.NK){s=1 +break}o=n.gvw() +n=p.c +s=3 +return A.t(n==null?null:n.ri(),$async$DP) +case 3:p.c=A.brW(o) +case 1:return A.w(q,r)}}) +return A.x($async$DP,r)}, +JL(){var s=0,r=A.y(t.H),q,p=this,o,n +var $async$JL=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:n=p.c +if(n==null){n=$.bh1() +n=p.c=A.blv(n)}if(n instanceof A.Ly){s=1 +break}o=n.gvw() +n=p.c +s=3 +return A.t(n==null?null:n.ri(),$async$JL) +case 3:p.c=A.bqM(o) +case 1:return A.w(q,r)}}) +return A.x($async$JL,r)}, +DQ(a){return this.aDJ(a)}, +aDJ(a){var s=0,r=A.y(t.y),q,p=2,o,n=[],m=this,l,k,j +var $async$DQ=A.u(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:k=m.d +j=new A.aD(new A.a8($.a9,t.b),t.gR) +m.d=j.a +s=3 +return A.t(k,$async$DQ) +case 3:l=!1 +p=4 +s=7 +return A.t(a.$0(),$async$DQ) +case 7:l=c +n.push(6) +s=5 +break +case 4:n=[2] +case 5:p=2 +J.bnt(j) +s=n.pop() +break +case 6:q=l +s=1 +break +case 1:return A.w(q,r) +case 2:return A.v(o,r)}}) +return A.x($async$DQ,r)}, +V2(a){return this.aIT(a)}, +aIT(a){var s=0,r=A.y(t.y),q,p=this +var $async$V2=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:q=p.DQ(new A.aAk(p,a)) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$V2,r)}, +gwu(){var s=this.b.e.i(0,this.a) +return s==null?B.qz:s}, +gnt(){if(this.r==null)this.zH() +var s=this.r +s.toString +return s}, +zH(){var s=this.e +s===$&&A.b() +this.r=s.zH()}, +a7K(a){var s=this.e +s===$&&A.b() +this.f=s.a7H(this.r.b,a)}, +aKw(){var s,r,q,p +if(this.r!=null){s=this.e +s===$&&A.b() +r=s.zH() +s=this.r +q=s.b +p=r.b +if(q!==p&&s.a!==r.a){s=s.a +if(!(q>s&&pq&&r.a

").S(b).h("ik<1,2>"))}, +G(a,b){if(!!a.fixed$length)A.q(A.a7("add")) +a.push(b)}, +jO(a,b){if(!!a.fixed$length)A.q(A.a7("removeAt")) +if(b<0||b>=a.length)throw A.c(A.aN4(b,null)) +return a.splice(b,1)[0]}, +fu(a,b,c){if(!!a.fixed$length)A.q(A.a7("insert")) +if(b<0||b>a.length)throw A.c(A.aN4(b,null)) +a.splice(b,0,c)}, +Ff(a,b,c){var s,r +if(!!a.fixed$length)A.q(A.a7("insertAll")) +A.aN5(b,0,a.length,"index") +if(!t.Ee.b(c))c=J.fJ(c) +s=J.aZ(c) +a.length=a.length+s +r=b+s +this.cA(a,r,a.length,a,b) +this.di(a,b,r,c)}, +hj(a){if(!!a.fixed$length)A.q(A.a7("removeLast")) +if(a.length===0)throw A.c(A.Hg(a,-1)) +return a.pop()}, +F(a,b){var s +if(!!a.fixed$length)A.q(A.a7("remove")) +for(s=0;s"))}, +I(a,b){var s +if(!!a.fixed$length)A.q(A.a7("addAll")) +if(Array.isArray(b)){this.am2(a,b) +return}for(s=J.ao(b);s.u();)a.push(s.gH(s))}, +am2(a,b){var s,r=b.length +if(r===0)return +if(a===b)throw A.c(A.cB(a)) +for(s=0;s").S(c).h("ad<1,2>"))}, +cq(a,b){var s,r=A.aT(a.length,"",!1,t.N) +for(s=0;s=0;--s){r=a[s] +if(b.$1(r))return r +if(q!==a.length)throw A.c(A.cB(a))}if(c!=null)return c.$0() +throw A.c(A.cf())}, +aKK(a,b){return this.pP(a,b,null)}, +Cp(a,b,c){var s,r,q,p,o=a.length +for(s=null,r=!1,q=0;qa.length)throw A.c(A.cK(b,0,a.length,"start",null)) +if(c==null)c=a.length +else if(ca.length)throw A.c(A.cK(c,b,a.length,"end",null)) +if(b===c)return A.a([],A.ab(a)) +return A.a(a.slice(b,c),A.ab(a))}, +fs(a,b){return this.d2(a,b,null)}, +C3(a,b,c){A.dZ(b,c,a.length,null,null) +return A.fE(a,b,c,A.ab(a).c)}, +gN(a){if(a.length>0)return a[0] +throw A.c(A.cf())}, +ga1(a){var s=a.length +if(s>0)return a[s-1] +throw A.c(A.cf())}, +gaI(a){var s=a.length +if(s===1)return a[0] +if(s===0)throw A.c(A.cf()) +throw A.c(A.mQ())}, +q0(a,b,c){if(!!a.fixed$length)A.q(A.a7("removeRange")) +A.dZ(b,c,a.length,null,null) +a.splice(b,c-b)}, +cA(a,b,c,d,e){var s,r,q,p,o +if(!!a.immutable$list)A.q(A.a7("setRange")) +A.dZ(b,c,a.length,null,null) +s=c-b +if(s===0)return +A.fA(e,"skipCount") +if(t.j.b(d)){r=d +q=e}else{r=J.aqU(d,e).hl(0,!1) +q=0}p=J.ak(r) +if(q+s>p.gt(r))throw A.c(A.bqg()) +if(q=0;--o)a[b+o]=p.i(r,q+o) +else for(o=0;o=r){o=s-r +n=p-o +m.di(a,b,q,d) +if(o!==0){m.cA(a,q,n,a,c) +m.st(a,n)}}else{n=p+(r-s) +a.length=n +m.cA(a,q,n,a,c) +m.di(a,b,q,d)}}, +ed(a,b){var s,r=a.length +for(s=0;s=r)return-1 +for(s=c;s=r +for(s=q;s>=0;--s)if(J.i(a[s],b))return s +return-1}, +xk(a,b){return this.AW(a,b,null)}, +n(a,b){var s +for(s=0;s"))}, +gv(a){return A.cU(a)}, +gt(a){return a.length}, +st(a,b){if(!!a.fixed$length)A.q(A.a7("set length")) +if(b<0)throw A.c(A.cK(b,0,null,"newLength",null)) +if(b>a.length)A.ab(a).c.a(null) +a.length=b}, +i(a,b){if(!(b>=0&&b=0&&b"))}, +T(a,b){var s=A.aa(a,!0,A.ab(a).c) +this.I(s,b) +return s}, +AQ(a,b,c){var s +if(c>=a.length)return-1 +for(s=c;s=0;--s)if(b.$1(a[s]))return s +return-1}, +ab0(a,b){return this.aKI(a,b,null)}, +gfK(a){return A.ck(A.ab(a))}, +$ici:1, +$ian:1, +$iz:1, +$ie:1} +J.aGf.prototype={} +J.e6.prototype={ +gH(a){var s=this.d +return s==null?this.$ti.c.a(s):s}, +u(){var s,r=this,q=r.a,p=q.length +if(r.b!==p)throw A.c(A.Z(q)) +s=r.c +if(s>=p){r.d=null +return!1}r.d=q[s] +r.c=s+1 +return!0}} +J.tT.prototype={ +bM(a,b){var s +if(ab)return 1 +else if(a===b){if(a===0){s=this.gd6(b) +if(this.gd6(a)===s)return 0 +if(this.gd6(a))return-1 +return 1}return 0}else if(isNaN(a)){if(isNaN(b))return 0 +return 1}else return-1}, +gd6(a){return a===0?1/a<0:a<0}, +gO2(a){var s +if(a>0)s=1 +else s=a<0?-1:a +return s}, +an(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.c(A.a7(""+a+".toInt()"))}, +eU(a){var s,r +if(a>=0){if(a<=2147483647){s=a|0 +return a===s?s:s+1}}else if(a>=-2147483648)return a|0 +r=Math.ceil(a) +if(isFinite(r))return r +throw A.c(A.a7(""+a+".ceil()"))}, +eA(a){var s,r +if(a>=0){if(a<=2147483647)return a|0}else if(a>=-2147483648){s=a|0 +return a===s?s:s-1}r=Math.floor(a) +if(isFinite(r))return r +throw A.c(A.a7(""+a+".floor()"))}, +bi(a){if(a>0){if(a!==1/0)return Math.round(a)}else if(a>-1/0)return 0-Math.round(0-a) +throw A.c(A.a7(""+a+".round()"))}, +Bv(a){if(a<0)return-Math.round(-a) +else return Math.round(a)}, +hs(a,b,c){if(this.bM(b,c)>0)throw A.c(A.pv(b)) +if(this.bM(a,b)<0)return b +if(this.bM(a,c)>0)return c +return a}, +az(a,b){var s +if(b>20)throw A.c(A.cK(b,0,20,"fractionDigits",null)) +s=a.toFixed(b) +if(a===0&&this.gd6(a))return"-"+s +return s}, +aOx(a,b){var s +if(b<1||b>21)throw A.c(A.cK(b,1,21,"precision",null)) +s=a.toPrecision(b) +if(a===0&&this.gd6(a))return"-"+s +return s}, +o0(a,b){var s,r,q,p +if(b<2||b>36)throw A.c(A.cK(b,2,36,"radix",null)) +s=a.toString(b) +if(s.charCodeAt(s.length-1)!==41)return s +r=/^([\da-z]+)(?:\.([\da-z]+))?\(e\+(\d+)\)$/.exec(s) +if(r==null)A.q(A.a7("Unexpected toString result: "+s)) +s=r[1] +q=+r[3] +p=r[2] +if(p!=null){s+=p +q-=p.length}return s+B.c.au("0",q)}, +j(a){if(a===0&&1/a<0)return"-0.0" +else return""+a}, +gv(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}, +T(a,b){return a+b}, +a2(a,b){return a-b}, +au(a,b){return a*b}, +aH(a,b){var s=a%b +if(s===0)return 0 +if(s>0)return s +if(b<0)return s-b +else return s+b}, +js(a,b){if((a|0)===a)if(b>=1||b<-1)return a/b|0 +return this.a4X(a,b)}, +cY(a,b){return(a|0)===a?a/b|0:this.a4X(a,b)}, +a4X(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.c(A.a7("Result of truncating division is "+A.h(s)+": "+A.h(a)+" ~/ "+A.h(b)))}, +yb(a,b){if(b<0)throw A.c(A.pv(b)) +return b>31?0:a<>>0}, +aB_(a,b){return b>31?0:a<>>0}, +dz(a,b){var s +if(a>0)s=this.a4v(a,b) +else{s=b>31?31:b +s=a>>s>>>0}return s}, +Jg(a,b){if(0>b)throw A.c(A.pv(b)) +return this.a4v(a,b)}, +a4v(a,b){return b>31?0:a>>>b}, +z6(a,b){if(b>31)return 0 +return a>>>b}, +gfK(a){return A.ck(t.Jy)}, +$icu:1, +$iY:1, +$id9:1} +J.Cg.prototype={ +gO2(a){var s +if(a>0)s=1 +else s=a<0?-1:a +return s}, +ga76(a){var s,r=a<0?-a-1:a,q=r +for(s=32;q>=4294967296;){q=this.cY(q,4294967296) +s+=32}return s-Math.clz32(q)}, +gfK(a){return A.ck(t.S)}, +$ie1:1, +$im:1} +J.KB.prototype={ +gfK(a){return A.ck(t.i)}, +$ie1:1} +J.qi.prototype={ +oD(a,b){if(b<0)throw A.c(A.Hg(a,b)) +if(b>=a.length)A.q(A.Hg(a,b)) +return a.charCodeAt(b)}, +E_(a,b,c){var s=b.length +if(c>s)throw A.c(A.cK(c,0,s,null,null)) +return new A.amc(b,a,c)}, +rT(a,b){return this.E_(a,b,0)}, +qX(a,b,c){var s,r,q=null +if(c<0||c>b.length)throw A.c(A.cK(c,0,b.length,q,q)) +s=a.length +if(c+s>b.length)return q +for(r=0;rr)return!1 +return b===this.cv(a,r-s)}, +acw(a,b,c,d){A.aN5(d,0,a.length,"startIndex") +return A.bVK(a,b,c,d)}, +vt(a,b,c){return this.acw(a,b,c,0)}, +rA(a,b){if(typeof b=="string")return A.a(a.split(b),t.s) +else if(b instanceof A.mR&&b.ga2D().exec("").length-2===0)return A.a(a.split(b.b),t.s) +else return this.aoZ(a,b)}, +iG(a,b,c,d){var s=A.dZ(b,c,a.length,null,null) +return A.bm_(a,b,s,d)}, +aoZ(a,b){var s,r,q,p,o,n,m=A.a([],t.s) +for(s=J.aqS(b,a),s=s.gaj(s),r=0,q=1;s.u();){p=s.gH(s) +o=p.gc0(p) +n=p.gcf(p) +q=n-o +if(q===0&&r===o)continue +m.push(this.U(a,r,o)) +r=n}if(r0)m.push(this.cv(a,r)) +return m}, +eG(a,b,c){var s +if(c<0||c>a.length)throw A.c(A.cK(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.bnE(b,a,c)!=null}, +c8(a,b){return this.eG(a,b,0)}, +U(a,b,c){return a.substring(b,A.dZ(b,c,a.length,null,null))}, +cv(a,b){return this.U(a,b,null)}, +BB(a){return a.toLowerCase()}, +dI(a){var s,r,q,p=a.trim(),o=p.length +if(o===0)return p +if(p.charCodeAt(0)===133){s=J.biU(p,1) +if(s===o)return""}else s=0 +r=o-1 +q=p.charCodeAt(r)===133?J.biV(p,r):o +if(s===0&&q===o)return p +return p.substring(s,q)}, +aOS(a){var s,r +if(typeof a.trimLeft!="undefined"){s=a.trimLeft() +if(s.length===0)return s +r=s.charCodeAt(0)===133?J.biU(s,1):0}else{r=J.biU(a,0) +s=a}if(r===0)return s +if(r===s.length)return"" +return s.substring(r)}, +X3(a){var s,r,q +if(typeof a.trimRight!="undefined"){s=a.trimRight() +r=s.length +if(r===0)return s +q=r-1 +if(s.charCodeAt(q)===133)r=J.biV(s,q)}else{r=J.biV(a,a.length) +s=a}if(r===s.length)return s +if(r===0)return"" +return s.substring(0,r)}, +au(a,b){var s,r +if(0>=b)return"" +if(b===1||a.length===0)return a +if(b!==b>>>0)throw A.c(B.NY) +for(s=a,r="";!0;){if((b&1)===1)r=s+r +b=b>>>1 +if(b===0)break +s+=s}return r}, +eM(a,b,c){var s=b-a.length +if(s<=0)return a +return this.au(c,s)+a}, +aMt(a,b){return this.eM(a,b," ")}, +Mv(a,b){var s=b-a.length +if(s<=0)return a +return a+this.au(" ",s)}, +h0(a,b,c){var s,r,q,p +if(c<0||c>a.length)throw A.c(A.cK(c,0,a.length,null,null)) +if(typeof b=="string")return a.indexOf(b,c) +if(b instanceof A.mR){s=b.Q0(a,c) +return s==null?-1:s.b.index}for(r=a.length,q=J.mv(b),p=c;p<=r;++p)if(q.qX(b,a,p)!=null)return p +return-1}, +eX(a,b){return this.h0(a,b,0)}, +AW(a,b,c){var s,r,q +if(c==null)c=a.length +else if(c<0||c>a.length)throw A.c(A.cK(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.mv(b),q=c;q>=0;--q)if(s.qX(b,a,q)!=null)return q +return-1}, +xk(a,b){return this.AW(a,b,null)}, +Kv(a,b,c){var s=a.length +if(c>s)throw A.c(A.cK(c,0,s,null,null)) +return A.aqi(a,b,c)}, +n(a,b){return this.Kv(a,b,0)}, +bM(a,b){var s +if(a===b)s=0 +else s=a>6}r=r+((r&67108863)<<3)&536870911 +r^=r>>11 +return r+((r&16383)<<15)&536870911}, +gfK(a){return A.ck(t.N)}, +gt(a){return a.length}, +i(a,b){if(!(b>=0&&b").S(r.z[1]).h("AG<1,2>")) +s.j9(r.gawW()) +r.j9(a) +r.vj(0,d) +return r}, +h2(a,b,c){return this.ci(a,null,b,c)}, +n_(a,b,c){return this.ci(a,b,c,null)}} +A.AG.prototype={ +aQ(a){return this.a.aQ(0)}, +j9(a){this.c=a==null?null:a}, +vj(a,b){var s=this +s.a.vj(0,b) +if(b==null)s.d=null +else if(t.hK.b(b))s.d=s.b.G6(b) +else if(t.mX.b(b))s.d=b +else throw A.c(A.bU(u.y,null))}, +awX(a){var s,r,q,p,o,n=this,m=n.c +if(m==null)return +s=null +try{s=n.$ti.z[1].a(a)}catch(o){r=A.ai(o) +q=A.aH(o) +p=n.d +if(p==null)A.lx(r,q) +else{m=n.b +if(t.hK.b(p))m.rg(p,r,q) +else m.xL(t.mX.a(p),r)}return}n.b.xL(m,s)}, +jM(a,b){this.a.jM(0,b)}, +jL(a){return this.jM(a,null)}, +jk(a){this.a.jk(0)}, +$ilo:1} +A.b1n.prototype={ +G(a,b){this.b.push(b) +this.a=this.a+b.length}, +aOh(){var s,r,q,p,o,n,m,l=this,k=l.a +if(k===0)return $.bzK() +s=l.b +r=s.length +if(r===1){q=s[0] +l.a=0 +B.b.ab(s) +return q}q=new Uint8Array(k) +for(p=0,o=0;o").S(s.z[1]).h("XX<1,2>"))}, +gt(a){return J.aZ(this.gjw())}, +gai(a){return J.ce(this.gjw())}, +gdn(a){return J.jp(this.gjw())}, +lL(a,b){var s=A.k(this) +return A.dx(J.aqU(this.gjw(),b),s.c,s.z[1])}, +q2(a,b){var s=A.k(this) +return A.dx(J.bnL(this.gjw(),b),s.c,s.z[1])}, +ct(a,b){return A.k(this).z[1].a(J.rR(this.gjw(),b))}, +gN(a){return A.k(this).z[1].a(J.jo(this.gjw()))}, +ga1(a){return A.k(this).z[1].a(J.rT(this.gjw()))}, +gaI(a){return A.k(this).z[1].a(J.Wq(this.gjw()))}, +n(a,b){return J.rQ(this.gjw(),b)}, +pP(a,b,c){var s=this,r=s.gjw(),q=c==null?null:new A.b1s(s,c) +return A.k(s).z[1].a(J.bnD(r,new A.b1t(s,b),q))}, +j(a){return J.cI(this.gjw())}} +A.b1t.prototype={ +$1(a){return this.b.$1(A.k(this.a).z[1].a(a))}, +$S(){return A.k(this.a).h("p(1)")}} +A.b1s.prototype={ +$0(){return A.k(this.a).c.a(this.b.$0())}, +$S(){return A.k(this.a).h("1()")}} +A.XX.prototype={ +u(){return this.a.u()}, +gH(a){var s=this.a +return this.$ti.z[1].a(s.gH(s))}} +A.w7.prototype={ +jZ(a,b){return A.dx(this.a,A.k(this).c,b)}, +gjw(){return this.a}} +A.QM.prototype={$ian:1} +A.Q3.prototype={ +i(a,b){return this.$ti.z[1].a(J.b3(this.a,b))}, +p(a,b,c){J.ie(this.a,b,this.$ti.c.a(c))}, +st(a,b){J.bCF(this.a,b)}, +G(a,b){J.fu(this.a,this.$ti.c.a(b))}, +I(a,b){var s=this.$ti +J.nU(this.a,A.dx(b,s.z[1],s.c))}, +fz(a,b){var s=b==null?null:new A.b1u(this,b) +J.bhy(this.a,s)}, +fu(a,b,c){J.bhx(this.a,b,this.$ti.c.a(c))}, +F(a,b){return J.pA(this.a,b)}, +hj(a){return this.$ti.z[1].a(J.bnG(this.a))}, +C3(a,b,c){var s=this.$ti +return A.dx(J.bCk(this.a,b,c),s.c,s.z[1])}, +cA(a,b,c,d,e){var s=this.$ti +J.bCG(this.a,b,c,A.dx(d,s.z[1],s.c),e)}, +di(a,b,c,d){return this.cA(a,b,c,d,0)}, +$ian:1, +$ie:1} +A.b1u.prototype={ +$2(a,b){var s=this.a.$ti.z[1] +return this.b.$2(s.a(a),s.a(b))}, +$S(){return this.a.$ti.h("m(1,1)")}} +A.ik.prototype={ +jZ(a,b){return new A.ik(this.a,this.$ti.h("@<1>").S(b).h("ik<1,2>"))}, +gjw(){return this.a}} +A.pL.prototype={ +jZ(a,b){return new A.pL(this.a,this.b,this.$ti.h("@<1>").S(b).h("pL<1,2>"))}, +G(a,b){return this.a.G(0,this.$ti.c.a(b))}, +I(a,b){var s=this.$ti +this.a.I(0,A.dx(b,s.z[1],s.c))}, +F(a,b){return this.a.F(0,b)}, +Fh(a,b){var s,r=this +if(r.b!=null)return r.aos(b,!0) +s=r.$ti +return new A.pL(r.a.Fh(0,b),null,s.h("@<1>").S(s.z[1]).h("pL<1,2>"))}, +aos(a,b){var s,r=this.b,q=this.$ti,p=q.z[1],o=r==null?A.lN(p):r.$1$0(p) +for(p=this.a,p=p.gaj(p),q=q.z[1];p.u();){s=q.a(p.gH(p)) +if(b===a.n(0,s))o.G(0,s)}return o}, +ao8(){var s=this.b,r=this.$ti.z[1],q=s==null?A.lN(r):s.$1$0(r) +q.I(0,this) +return q}, +kp(a){var s=this.b,r=this.$ti.z[1],q=s==null?A.lN(r):s.$1$0(r) +q.I(0,this) +return q}, +$ian:1, +$ibz:1, +gjw(){return this.a}} +A.pJ.prototype={ +uC(a,b,c){var s=this.$ti +return new A.pJ(this.a,s.h("@<1>").S(s.z[1]).S(b).S(c).h("pJ<1,2,3,4>"))}, +ao(a,b){return J.jn(this.a,b)}, +i(a,b){return this.$ti.h("4?").a(J.b3(this.a,b))}, +p(a,b,c){var s=this.$ti +J.ie(this.a,s.c.a(b),s.z[1].a(c))}, +cJ(a,b,c){var s=this.$ti +return s.z[3].a(J.Hs(this.a,s.c.a(b),new A.auK(this,c)))}, +I(a,b){var s=this.$ti +J.nU(this.a,new A.pJ(b,s.h("@<3>").S(s.z[3]).S(s.c).S(s.z[1]).h("pJ<1,2,3,4>")))}, +F(a,b){return this.$ti.h("4?").a(J.pA(this.a,b))}, +af(a,b){J.f9(this.a,new A.auJ(this,b))}, +gcP(a){var s=this.$ti +return A.dx(J.jq(this.a),s.c,s.z[2])}, +gbw(a){var s=this.$ti +return A.dx(J.bhv(this.a),s.z[1],s.z[3])}, +gt(a){return J.aZ(this.a)}, +gai(a){return J.ce(this.a)}, +gdn(a){return J.jp(this.a)}, +gdW(a){var s=J.Wp(this.a) +return s.ig(s,new A.auI(this),this.$ti.h("aU<3,4>"))}} +A.auK.prototype={ +$0(){return this.a.$ti.z[1].a(this.b.$0())}, +$S(){return this.a.$ti.h("2()")}} +A.auJ.prototype={ +$2(a,b){var s=this.a.$ti +this.b.$2(s.z[2].a(a),s.z[3].a(b))}, +$S(){return this.a.$ti.h("~(1,2)")}} +A.auI.prototype={ +$1(a){var s=this.a.$ti,r=s.z[3] +return new A.aU(s.z[2].a(a.a),r.a(a.b),s.h("@<3>").S(r).h("aU<1,2>"))}, +$S(){return this.a.$ti.h("aU<3,4>(aU<1,2>)")}} +A.pK.prototype={ +jZ(a,b){return new A.pK(this.a,this.$ti.h("@<1>").S(b).h("pK<1,2>"))}, +$ian:1, +gjw(){return this.a}} +A.l7.prototype={ +j(a){return"LateInitializationError: "+this.a}} +A.hQ.prototype={ +gt(a){return this.a.length}, +i(a,b){return this.a.charCodeAt(b)}} +A.bfY.prototype={ +$0(){return A.d3(null,t.P)}, +$S:52} +A.aSh.prototype={} +A.an.prototype={} +A.ax.prototype={ +gaj(a){var s=this +return new A.bZ(s,s.gt(s),A.k(s).h("bZ"))}, +af(a,b){var s,r=this,q=r.gt(r) +for(s=0;s1)throw A.c(A.mQ()) +return s.ct(0,0)}, +n(a,b){var s,r=this,q=r.gt(r) +for(s=0;s=0;--s){r=q.ct(0,s) +if(b.$1(r))return r +if(p!==q.gt(q))throw A.c(A.cB(q))}if(c!=null)return c.$0() +throw A.c(A.cf())}, +pg(a,b){var s,r,q,p=this,o=p.gt(p),n=A.b4("match") +for(s=!1,r=0;r").S(c).h("ad<1,2>"))}, +lr(a,b){var s,r,q=this,p=q.gt(q) +if(p===0)throw A.c(A.cf()) +s=q.ct(0,0) +for(r=1;rs)throw A.c(A.cK(r,0,s,"start",null))}}, +gapQ(){var s=J.aZ(this.a),r=this.c +if(r==null||r>s)return s +return r}, +gaBq(){var s=J.aZ(this.a),r=this.b +if(r>s)return s +return r}, +gt(a){var s,r=J.aZ(this.a),q=this.b +if(q>=r)return 0 +s=this.c +if(s==null||s>=r)return r-q +return s-q}, +ct(a,b){var s=this,r=s.gaBq()+b +if(b<0||r>=s.gapQ())throw A.c(A.f4(b,s.gt(s),s,null,"index")) +return J.rR(s.a,r)}, +lL(a,b){var s,r,q=this +A.fA(b,"count") +s=q.b+b +r=q.c +if(r!=null&&s>=r)return new A.jy(q.$ti.h("jy<1>")) +return A.fE(q.a,s,r,q.$ti.c)}, +q2(a,b){var s,r,q,p=this +A.fA(b,"count") +s=p.c +r=p.b +q=r+b +if(s==null)return A.fE(p.a,r,q,p.$ti.c) +else{if(s=o){r.d=null +return!1}r.d=p.ct(q,s);++r.c +return!0}} +A.en.prototype={ +gaj(a){var s=A.k(this) +return new A.c2(J.ao(this.a),this.b,s.h("@<1>").S(s.z[1]).h("c2<1,2>"))}, +gt(a){return J.aZ(this.a)}, +gai(a){return J.ce(this.a)}, +gN(a){return this.b.$1(J.jo(this.a))}, +ga1(a){return this.b.$1(J.rT(this.a))}, +gaI(a){return this.b.$1(J.Wq(this.a))}, +ct(a,b){return this.b.$1(J.rR(this.a,b))}} +A.pV.prototype={$ian:1} +A.c2.prototype={ +u(){var s=this,r=s.b +if(r.u()){s.a=s.c.$1(r.gH(r)) +return!0}s.a=null +return!1}, +gH(a){var s=this.a +return s==null?this.$ti.z[1].a(s):s}} +A.ad.prototype={ +gt(a){return J.aZ(this.a)}, +ct(a,b){return this.b.$1(J.rR(this.a,b))}} +A.be.prototype={ +gaj(a){return new A.jc(J.ao(this.a),this.b,this.$ti.h("jc<1>"))}, +ig(a,b,c){return new A.en(this,b,this.$ti.h("@<1>").S(c).h("en<1,2>"))}} +A.jc.prototype={ +u(){var s,r +for(s=this.a,r=this.b;s.u();)if(r.$1(s.gH(s)))return!0 +return!1}, +gH(a){var s=this.a +return s.gH(s)}} +A.ip.prototype={ +gaj(a){var s=this.$ti +return new A.a0M(J.ao(this.a),this.b,B.qm,s.h("@<1>").S(s.z[1]).h("a0M<1,2>"))}} +A.a0M.prototype={ +gH(a){var s=this.d +return s==null?this.$ti.z[1].a(s):s}, +u(){var s,r,q=this,p=q.c +if(p==null)return!1 +for(s=q.a,r=q.b;!p.u();){q.d=null +if(s.u()){q.c=null +p=J.ao(r.$1(s.gH(s))) +q.c=p}else return!1}p=q.c +q.d=p.gH(p) +return!0}} +A.z6.prototype={ +gaj(a){return new A.a9S(J.ao(this.a),this.b,A.k(this).h("a9S<1>"))}} +A.Jy.prototype={ +gt(a){var s=J.aZ(this.a),r=this.b +if(s>r)return r +return s}, +$ian:1} +A.a9S.prototype={ +u(){if(--this.b>=0)return this.a.u() +this.b=-1 +return!1}, +gH(a){var s +if(this.b<0){this.$ti.c.a(null) +return null}s=this.a +return s.gH(s)}} +A.qR.prototype={ +lL(a,b){A.bf(b,"count") +A.fA(b,"count") +return new A.qR(this.a,this.b+b,A.k(this).h("qR<1>"))}, +gaj(a){return new A.a8I(J.ao(this.a),this.b,A.k(this).h("a8I<1>"))}} +A.Bx.prototype={ +gt(a){var s=J.aZ(this.a)-this.b +if(s>=0)return s +return 0}, +lL(a,b){A.bf(b,"count") +A.fA(b,"count") +return new A.Bx(this.a,this.b+b,this.$ti)}, +$ian:1} +A.a8I.prototype={ +u(){var s,r +for(s=this.a,r=0;r"))}} +A.a8J.prototype={ +u(){var s,r,q=this +if(!q.c){q.c=!0 +for(s=q.a,r=q.b;s.u();)if(!r.$1(s.gH(s)))return!0}return q.a.u()}, +gH(a){var s=this.a +return s.gH(s)}} +A.jy.prototype={ +gaj(a){return B.qm}, +af(a,b){}, +gai(a){return!0}, +gt(a){return 0}, +gN(a){throw A.c(A.cf())}, +ga1(a){throw A.c(A.cf())}, +gaI(a){throw A.c(A.cf())}, +ct(a,b){throw A.c(A.cK(b,0,0,"index",null))}, +n(a,b){return!1}, +ed(a,b){return!1}, +pP(a,b,c){if(c!=null)return c.$0() +throw A.c(A.cf())}, +pg(a,b){throw A.c(A.cf())}, +cq(a,b){return""}, +jm(a,b){return this}, +ig(a,b,c){return new A.jy(c.h("jy<0>"))}, +lr(a,b){throw A.c(A.cf())}, +lL(a,b){A.fA(b,"count") +return this}, +q2(a,b){A.fA(b,"count") +return this}, +hl(a,b){var s=this.$ti.c +return b?J.Cf(0,s):J.a2e(0,s)}, +fL(a){return this.hl(a,!0)}, +kp(a){return A.lN(this.$ti.c)}} +A.a0w.prototype={ +u(){return!1}, +gH(a){throw A.c(A.cf())}} +A.q5.prototype={ +gaj(a){return new A.a1b(J.ao(this.a),this.b,A.k(this).h("a1b<1>"))}, +gt(a){return J.aZ(this.a)+J.aZ(this.b)}, +gai(a){return J.ce(this.a)&&J.ce(this.b)}, +gdn(a){return J.jp(this.a)||J.jp(this.b)}, +n(a,b){return J.rQ(this.a,b)||J.rQ(this.b,b)}, +gN(a){var s=J.ao(this.a) +if(s.u())return s.gH(s) +return J.jo(this.b)}, +ga1(a){var s,r=J.ao(this.b) +if(r.u()){s=r.gH(r) +for(;r.u();)s=r.gH(r) +return s}return J.rT(this.a)}} +A.Jx.prototype={ +ct(a,b){var s=this.a,r=J.ak(s),q=r.gt(s) +if(b"))}} +A.p4.prototype={ +u(){var s,r +for(s=this.a,r=this.$ti.c;s.u();)if(r.b(s.gH(s)))return!0 +return!1}, +gH(a){var s=this.a +return this.$ti.c.a(s.gH(s))}} +A.JQ.prototype={ +st(a,b){throw A.c(A.a7("Cannot change the length of a fixed-length list"))}, +G(a,b){throw A.c(A.a7("Cannot add to a fixed-length list"))}, +fu(a,b,c){throw A.c(A.a7("Cannot add to a fixed-length list"))}, +I(a,b){throw A.c(A.a7("Cannot add to a fixed-length list"))}, +F(a,b){throw A.c(A.a7("Cannot remove from a fixed-length list"))}, +hj(a){throw A.c(A.a7("Cannot remove from a fixed-length list"))}} +A.aaB.prototype={ +p(a,b,c){throw A.c(A.a7("Cannot modify an unmodifiable list"))}, +st(a,b){throw A.c(A.a7("Cannot change the length of an unmodifiable list"))}, +G(a,b){throw A.c(A.a7("Cannot add to an unmodifiable list"))}, +fu(a,b,c){throw A.c(A.a7("Cannot add to an unmodifiable list"))}, +I(a,b){throw A.c(A.a7("Cannot add to an unmodifiable list"))}, +F(a,b){throw A.c(A.a7("Cannot remove from an unmodifiable list"))}, +fz(a,b){throw A.c(A.a7("Cannot modify an unmodifiable list"))}, +hj(a){throw A.c(A.a7("Cannot remove from an unmodifiable list"))}, +cA(a,b,c,d,e){throw A.c(A.a7("Cannot modify an unmodifiable list"))}, +di(a,b,c,d){return this.cA(a,b,c,d,0)}} +A.F4.prototype={} +A.d1.prototype={ +gt(a){return J.aZ(this.a)}, +ct(a,b){var s=this.a,r=J.ak(s) +return r.ct(s,r.gt(s)-1-b)}} +A.qV.prototype={ +gv(a){var s=this._hashCode +if(s!=null)return s +s=664597*B.c.gv(this.a)&536870911 +this._hashCode=s +return s}, +j(a){return'Symbol("'+this.a+'")'}, +l(a,b){if(b==null)return!1 +return b instanceof A.qV&&this.a===b.a}, +$iOj:1} +A.UY.prototype={} +A.nH.prototype={$r:"+(1,2)",$s:1} +A.Gw.prototype={$r:"+cacheSize,maxTextLength(1,2)",$s:2} +A.Sv.prototype={$r:"+closeStream,stream(1,2)",$s:3} +A.ak0.prototype={$r:"+first,second(1,2)",$s:4} +A.ak1.prototype={$r:"+key,value(1,2)",$s:5} +A.ak2.prototype={$r:"+mangaList,source(1,2)",$s:6} +A.ak3.prototype={$r:"+breaks,graphemes,words(1,2,3)",$s:7} +A.ak4.prototype={$r:"+large,medium,small(1,2,3)",$s:8} +A.Sw.prototype={$r:"+x,y,z(1,2,3)",$s:9} +A.Sx.prototype={$r:"+domBlurListener,domFocusListener,element,semanticsNodeId(1,2,3,4)",$s:10} +A.wd.prototype={} +A.B0.prototype={ +uC(a,b,c){var s=A.k(this) +return A.bjb(this,s.c,s.z[1],b,c)}, +gai(a){return this.gt(this)===0}, +gdn(a){return this.gt(this)!==0}, +j(a){return A.aIq(this)}, +p(a,b,c){A.awq()}, +cJ(a,b,c){A.awq()}, +F(a,b){A.awq()}, +I(a,b){A.awq()}, +gdW(a){return new A.k4(this.aHu(0),A.k(this).h("k4>"))}, +aHu(a){var s=this +return function(){var r=a +var q=0,p=1,o,n,m,l +return function $async$gdW(b,c,d){if(c===1){o=d +q=p}while(true)switch(q){case 0:n=s.gcP(s),n=n.gaj(n),m=A.k(s),m=m.h("@<1>").S(m.z[1]).h("aU<1,2>") +case 2:if(!n.u()){q=3 +break}l=n.gH(n) +q=4 +return b.b=new A.aU(l,s.i(0,l),m),1 +case 4:q=2 +break +case 3:return 0 +case 1:return b.c=o,3}}}}, +tu(a,b,c,d){var s=A.F(c,d) +this.af(0,new A.awr(this,b,s)) +return s}, +$ia6:1} +A.awr.prototype={ +$2(a,b){var s=this.b.$2(a,b) +this.c.p(0,s.a,s.b)}, +$S(){return A.k(this.a).h("~(1,2)")}} +A.a2.prototype={ +gt(a){return this.b.length}, +ga2d(){var s=this.$keys +if(s==null){s=Object.keys(this.a) +this.$keys=s}return s}, +ao(a,b){if(typeof b!="string")return!1 +if("__proto__"===b)return!1 +return this.a.hasOwnProperty(b)}, +i(a,b){if(!this.ao(0,b))return null +return this.b[this.a[b]]}, +af(a,b){var s,r,q=this.ga2d(),p=this.b +for(s=q.length,r=0;r"))}, +gbw(a){return new A.zH(this.b,this.$ti.h("zH<2>"))}} +A.zH.prototype={ +gt(a){return this.a.length}, +gai(a){return 0===this.a.length}, +gdn(a){return 0!==this.a.length}, +gaj(a){var s=this.a +return new A.vd(s,s.length,this.$ti.h("vd<1>"))}} +A.vd.prototype={ +gH(a){var s=this.d +return s==null?this.$ti.c.a(s):s}, +u(){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}} +A.dm.prototype={ +ud(){var s,r=this,q=r.$map +if(q==null){s=r.$ti +q=new A.xk(s.h("@<1>").S(s.z[1]).h("xk<1,2>")) +A.bwu(r.a,q) +r.$map=q}return q}, +ao(a,b){return this.ud().ao(0,b)}, +i(a,b){return this.ud().i(0,b)}, +af(a,b){this.ud().af(0,b)}, +gcP(a){var s=this.ud() +return new A.c9(s,A.k(s).h("c9<1>"))}, +gbw(a){var s=this.ud() +return s.gbw(s)}, +gt(a){return this.ud().a}} +A.II.prototype={ +G(a,b){A.bi0()}, +I(a,b){A.bi0()}, +F(a,b){A.bi0()}} +A.ke.prototype={ +gt(a){return this.b}, +gai(a){return this.b===0}, +gdn(a){return this.b!==0}, +gaj(a){var s,r=this,q=r.$keys +if(q==null){q=Object.keys(r.a) +r.$keys=q}s=q +return new A.vd(s,s.length,r.$ti.h("vd<1>"))}, +n(a,b){if(typeof b!="string")return!1 +if("__proto__"===b)return!1 +return this.a.hasOwnProperty(b)}, +kp(a){return A.i2(this,this.$ti.c)}} +A.h6.prototype={ +gt(a){return this.a.length}, +gai(a){return this.a.length===0}, +gdn(a){return this.a.length!==0}, +gaj(a){var s=this.a +return new A.vd(s,s.length,this.$ti.h("vd<1>"))}, +ud(){var s,r,q,p,o=this,n=o.$map +if(n==null){s=o.$ti +n=new A.xk(s.h("@<1>").S(s.c).h("xk<1,2>")) +for(s=o.a,r=s.length,q=0;q")}} +A.cs.prototype={ +$0(){return this.a.$1$0(this.$ti.z[0])}, +$1(a){return this.a.$1$1(a,this.$ti.z[0])}, +$2(a,b){return this.a.$1$2(a,b,this.$ti.z[0])}, +$S(){return A.bT9(A.aq4(this.a),this.$ti)}} +A.KA.prototype={ +gaLo(){var s=this.a +if(s instanceof A.qV)return s +return this.a=new A.qV(s)}, +gaMR(){var s,r,q,p,o,n=this +if(n.c===1)return B.xO +s=n.d +r=J.ak(s) +q=r.gt(s)-J.aZ(n.e)-n.f +if(q===0)return B.xO +p=[] +for(o=0;o>>0}, +j(a){return"Closure '"+this.$_name+"' of "+("Instance of '"+A.aMa(this.a)+"'")}} +A.aeV.prototype={ +j(a){return"Reading static variable '"+this.a+"' during its initialization"}} +A.a7V.prototype={ +j(a){return"RuntimeError: "+this.a}} +A.b9x.prototype={} +A.j_.prototype={ +gt(a){return this.a}, +gai(a){return this.a===0}, +gdn(a){return this.a!==0}, +gcP(a){return new A.c9(this,A.k(this).h("c9<1>"))}, +gbw(a){var s=A.k(this) +return A.mV(new A.c9(this,s.h("c9<1>")),new A.aGi(this),s.c,s.z[1])}, +ao(a,b){var s,r +if(typeof b=="string"){s=this.b +if(s==null)return!1 +return s[b]!=null}else if(typeof b=="number"&&(b&0x3fffffff)===b){r=this.c +if(r==null)return!1 +return r[b]!=null}else return this.aaA(b)}, +aaA(a){var s=this.d +if(s==null)return!1 +return this.xh(s[this.xg(a)],a)>=0}, +aFJ(a,b){return new A.c9(this,A.k(this).h("c9<1>")).ed(0,new A.aGh(this,b))}, +I(a,b){J.f9(b,new A.aGg(this))}, +i(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.aaC(b)}, +aaC(a){var s,r,q=this.d +if(q==null)return null +s=q[this.xg(a)] +r=this.xh(s,a) +if(r<0)return null +return s[r].b}, +p(a,b,c){var s,r,q=this +if(typeof b=="string"){s=q.b +q.ZI(s==null?q.b=q.Rn():s,b,c)}else if(typeof b=="number"&&(b&0x3fffffff)===b){r=q.c +q.ZI(r==null?q.c=q.Rn():r,b,c)}else q.aaE(b,c)}, +aaE(a,b){var s,r,q,p=this,o=p.d +if(o==null)o=p.d=p.Rn() +s=p.xg(a) +r=o[s] +if(r==null)o[s]=[p.Ro(a,b)] +else{q=p.xh(r,a) +if(q>=0)r[q].b=b +else r.push(p.Ro(a,b))}}, +cJ(a,b,c){var s,r,q=this +if(q.ao(0,b)){s=q.i(0,b) +return s==null?A.k(q).z[1].a(s):s}r=c.$0() +q.p(0,b,r) +return r}, +F(a,b){var s=this +if(typeof b=="string")return s.a3v(s.b,b) +else if(typeof b=="number"&&(b&0x3fffffff)===b)return s.a3v(s.c,b) +else return s.aaD(b)}, +aaD(a){var s,r,q,p,o=this,n=o.d +if(n==null)return null +s=o.xg(a) +r=n[s] +q=o.xh(r,a) +if(q<0)return null +p=r.splice(q,1)[0] +o.a5t(p) +if(r.length===0)delete n[s] +return p.b}, +ab(a){var s=this +if(s.a>0){s.b=s.c=s.d=s.e=s.f=null +s.a=0 +s.Rl()}}, +af(a,b){var s=this,r=s.e,q=s.r +for(;r!=null;){b.$2(r.a,r.b) +if(q!==s.r)throw A.c(A.cB(s)) +r=r.c}}, +ZI(a,b,c){var s=a[b] +if(s==null)a[b]=this.Ro(b,c) +else s.b=c}, +a3v(a,b){var s +if(a==null)return null +s=a[b] +if(s==null)return null +this.a5t(s) +delete a[b] +return s.b}, +Rl(){this.r=this.r+1&1073741823}, +Ro(a,b){var s,r=this,q=new A.aHa(a,b) +if(r.e==null)r.e=r.f=q +else{s=r.f +s.toString +q.d=s +r.f=s.c=q}++r.a +r.Rl() +return q}, +a5t(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.Rl()}, +xg(a){return J.T(a)&1073741823}, +xh(a,b){var s,r +if(a==null)return-1 +s=a.length +for(r=0;r"]=s +delete s[""] +return s}} +A.aGi.prototype={ +$1(a){var s=this.a,r=s.i(0,a) +return r==null?A.k(s).z[1].a(r):r}, +$S(){return A.k(this.a).h("2(1)")}} +A.aGh.prototype={ +$1(a){return J.i(this.a.i(0,a),this.b)}, +$S(){return A.k(this.a).h("p(1)")}} +A.aGg.prototype={ +$2(a,b){this.a.p(0,a,b)}, +$S(){return A.k(this.a).h("~(1,2)")}} +A.aHa.prototype={} +A.c9.prototype={ +gt(a){return this.a.a}, +gai(a){return this.a.a===0}, +gaj(a){var s=this.a,r=new A.Cv(s,s.r,this.$ti.h("Cv<1>")) +r.c=s.e +return r}, +n(a,b){return this.a.ao(0,b)}, +af(a,b){var s=this.a,r=s.e,q=s.r +for(;r!=null;){b.$1(r.a) +if(q!==s.r)throw A.c(A.cB(s)) +r=r.c}}} +A.Cv.prototype={ +gH(a){return this.d}, +u(){var s,r=this,q=r.a +if(r.b!==q.r)throw A.c(A.cB(q)) +s=r.c +if(s==null){r.d=null +return!1}else{r.d=s.a +r.c=s.c +return!0}}} +A.KD.prototype={ +xg(a){return A.rL(a)&1073741823}, +xh(a,b){var s,r,q +if(a==null)return-1 +s=a.length +for(r=0;r0;){--q;--s +j[q]=r[s]}}return A.i3(j,k)}} +A.ajY.prototype={ +I6(){return[this.a,this.b]}, +l(a,b){if(b==null)return!1 +return b instanceof A.ajY&&this.$s===b.$s&&J.i(this.a,b.a)&&J.i(this.b,b.b)}, +gv(a){return A.X(this.$s,this.a,this.b,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}} +A.ajZ.prototype={ +I6(){return[this.a,this.b,this.c]}, +l(a,b){var s=this +if(b==null)return!1 +return b instanceof A.ajZ&&s.$s===b.$s&&J.i(s.a,b.a)&&J.i(s.b,b.b)&&J.i(s.c,b.c)}, +gv(a){var s=this +return A.X(s.$s,s.a,s.b,s.c,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}} +A.ak_.prototype={ +I6(){return this.a}, +l(a,b){if(b==null)return!1 +return b instanceof A.ak_&&this.$s===b.$s&&A.bN7(this.a,b.a)}, +gv(a){return A.X(this.$s,A.dt(this.a),B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}} +A.mR.prototype={ +j(a){return"RegExp/"+this.a+"/"+this.b.flags}, +ga2E(){var s=this,r=s.c +if(r!=null)return r +r=s.b +return s.c=A.biW(s.a,r.multiline,!r.ignoreCase,r.unicode,r.dotAll,!0)}, +ga2D(){var s=this,r=s.d +if(r!=null)return r +r=s.b +return s.d=A.biW(s.a+"|()",r.multiline,!r.ignoreCase,r.unicode,r.dotAll,!0)}, +l7(a){var s=this.b.exec(a) +if(s==null)return null +return new A.Gd(s)}, +agi(a){var s=this.l7(a) +if(s!=null)return s.b[0] +return null}, +E_(a,b,c){var s=b.length +if(c>s)throw A.c(A.cK(c,0,s,null,null)) +return new A.ad2(this,b,c)}, +rT(a,b){return this.E_(a,b,0)}, +Q0(a,b){var s,r=this.ga2E() +r.lastIndex=b +s=r.exec(a) +if(s==null)return null +return new A.Gd(s)}, +apZ(a,b){var s,r=this.ga2D() +r.lastIndex=b +s=r.exec(a) +if(s==null)return null +if(s.pop()!=null)return null +return new A.Gd(s)}, +qX(a,b,c){if(c<0||c>b.length)throw A.c(A.cK(c,0,b.length,null,null)) +return this.apZ(b,c)}, +aLg(a,b){return this.qX(a,b,0)}, +$ibrz:1} +A.Gd.prototype={ +gc0(a){return this.b.index}, +gcf(a){var s=this.b +return s.index+s[0].length}, +i(a,b){return this.b[b]}, +aLB(a){var s,r=this.b.groups +if(r!=null){s=r[a] +if(s!=null||a in r)return s}throw A.c(A.eR(a,"name","Not a capture group name"))}, +$ixJ:1, +$ia71:1} +A.ad2.prototype={ +gaj(a){return new A.r8(this.a,this.b,this.c)}} +A.r8.prototype={ +gH(a){var s=this.d +return s==null?t.Qz.a(s):s}, +u(){var s,r,q,p,o,n=this,m=n.b +if(m==null)return!1 +s=n.c +r=m.length +if(s<=r){q=n.a +p=q.Q0(m,s) +if(p!=null){n.d=p +o=p.gcf(p) +if(p.b.index===o){if(q.b.unicode){s=n.c +q=s+1 +if(q=55296&&s<=56319){s=m.charCodeAt(q) +s=s>=56320&&s<=57343}else s=!1}else s=!1}else s=!1 +o=(s?o+1:o)+1}n.c=o +return!0}}n.b=n.d=null +return!1}} +A.Et.prototype={ +gcf(a){return this.a+this.c.length}, +i(a,b){if(b!==0)A.q(A.aN4(b,null)) +return this.c}, +$ixJ:1, +gc0(a){return this.a}} +A.amc.prototype={ +gaj(a){return new A.baZ(this.a,this.b,this.c)}, +gN(a){var s=this.b,r=this.a.indexOf(s,this.c) +if(r>=0)return new A.Et(r,s) +throw A.c(A.cf())}} +A.baZ.prototype={ +u(){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.Et(s,o) +q.c=r===q.c?r+1:r +return!0}, +gH(a){var s=this.d +s.toString +return s}} +A.b1v.prototype={ +aF(){var s=this.b +if(s===this)throw A.c(new A.l7("Local '"+this.a+"' has not been initialized.")) +return s}, +cB(){var s=this.b +if(s===this)throw A.c(A.qk(this.a)) +return s}, +sdX(a){var s=this +if(s.b!==s)throw A.c(new A.l7("Local '"+s.a+"' has already been initialized.")) +s.b=a}} +A.b5a.prototype={ +RK(){var s=this,r=s.b +return r===s?s.b=s.c.$0():r}, +b1(){var s,r=this,q=r.b +if(q===r){s=r.c.$0() +if(r.b!==r)throw A.c(new A.l7("Local '"+r.a+u.W)) +r.b=s +q=s}return q}} +A.xO.prototype={ +gfK(a){return B.ajU}, +a6V(a,b,c){throw A.c(A.a7("Int64List not supported by dart2js."))}, +aEw(a,b,c){A.VJ(a,b,c) +return c==null?new DataView(a,b):new DataView(a,b,c)}, +aEv(a){return this.aEw(a,0,null)}, +$ie1:1, +$ixO:1, +$iXP:1} +A.h9.prototype={ +av7(a,b,c,d){var s=A.cK(b,0,c,d,null) +throw A.c(s)}, +a_s(a,b,c,d){if(b>>>0!==b||b>c)this.av7(a,b,c,d)}, +$ih9:1, +$ifh:1} +A.LA.prototype={ +gfK(a){return B.ajV}, +Xv(a,b,c){throw A.c(A.a7("Int64 accessor not supported by dart2js."))}, +Yf(a,b,c,d){throw A.c(A.a7("Int64 accessor not supported by dart2js."))}, +$ie1:1, +$idK:1} +A.CR.prototype={ +gt(a){return a.length}, +a4j(a,b,c,d,e){var s,r,q=a.length +this.a_s(a,b,q,"start") +this.a_s(a,c,q,"end") +if(b>c)throw A.c(A.cK(b,0,c,null,null)) +s=c-b +if(e<0)throw A.c(A.bU(e,null)) +r=d.length +if(r-e0){s=Date.now()-r.c +if(s>(p+1)*o)p=B.f.js(s,o)}q.c=p +r.d.$1(q)}, +$S:5} +A.PA.prototype={ +cM(a,b){var s,r=this +if(b==null)b=r.$ti.c.a(b) +if(!r.b)r.a.lR(b) +else{s=r.a +if(r.$ti.h("U<1>").b(b))s.a_e(b) +else s.w1(b)}}, +f6(a,b){var s=this.a +if(this.b)s.it(a,b) +else s.yx(a,b)}, +$iIG:1} +A.bd4.prototype={ +$1(a){return this.a.$2(0,a)}, +$S:31} +A.bd5.prototype={ +$2(a,b){this.a.$2(1,new A.JH(a,b))}, +$S:412} +A.bem.prototype={ +$2(a,b){this.a(a,b)}, +$S:433} +A.bd2.prototype={ +$0(){var s,r=this.a,q=r.a +q===$&&A.b() +s=q.b +if((s&1)!==0?(q.gkK().e&4)!==0:(s&2)===0){r.b=!0 +return}this.b.$2(0,null)}, +$S:0} +A.bd3.prototype={ +$1(a){var s=this.a.c!=null?2:0 +this.b.$2(s,null)}, +$S:29} +A.adm.prototype={ +alP(a,b){var s=new A.b0o(a) +this.a=A.ln(new A.b0q(this,a),new A.b0r(s),new A.b0s(this,s),!1,b)}} +A.b0o.prototype={ +$0(){A.h_(new A.b0p(this.a))}, +$S:5} +A.b0p.prototype={ +$0(){this.a.$2(0,null)}, +$S:0} +A.b0r.prototype={ +$0(){this.a.$0()}, +$S:0} +A.b0s.prototype={ +$0(){var s=this.a +if(s.b){s.b=!1 +this.b.$0()}}, +$S:0} +A.b0q.prototype={ +$0(){var s=this.a,r=s.a +r===$&&A.b() +if((r.b&4)===0){s.c=new A.a8($.a9,t.LR) +if(s.b){s.b=!1 +A.h_(new A.b0n(this.b))}return s.c}}, +$S:442} +A.b0n.prototype={ +$0(){this.a.$2(2,null)}, +$S:0} +A.RB.prototype={ +j(a){return"IterationMarker("+this.b+", "+A.h(this.a)+")"}} +A.po.prototype={ +gH(a){return this.b}, +azA(a,b){var s,r,q +a=a +b=b +s=this.a +for(;!0;)try{r=s(this,a,b) +return r}catch(q){b=q +a=1}}, +u(){var s,r,q,p,o=this,n=null,m=0 +for(;!0;){s=o.d +if(s!=null)try{if(s.u()){o.b=J.bC8(s) +return!0}else o.d=null}catch(r){n=r +m=1 +o.d=null}q=o.azA(m,n) +if(1===q)return!0 +if(0===q){o.b=null +p=o.e +if(p==null||p.length===0){o.a=A.bua +return!1}o.a=p.pop() +m=0 +n=null +continue}if(2===q){m=0 +n=null +continue}if(3===q){n=o.c +o.c=null +p=o.e +if(p==null||p.length===0){o.b=null +o.a=A.bua +throw n +return!1}o.a=p.pop() +m=1 +continue}throw A.c(A.R("sync*"))}return!1}, +SQ(a){var s,r,q=this +if(a instanceof A.k4){s=a.a() +r=q.e +if(r==null)r=q.e=[] +r.push(q.a) +q.a=s +return 2}else{q.d=J.ao(a) +return 2}}} +A.k4.prototype={ +gaj(a){return new A.po(this.a(),this.$ti.h("po<1>"))}} +A.X7.prototype={ +j(a){return A.h(this.a)}, +$id0:1, +gjU(){return this.b}} +A.iG.prototype={ +gh1(){return!0}} +A.zx.prototype={ +qh(){}, +qi(){}} +A.mi.prototype={ +sWa(a,b){throw A.c(A.a7(u.X))}, +sWe(a,b){throw A.c(A.a7(u.X))}, +gvR(a){return new A.iG(this,A.k(this).h("iG<1>"))}, +gwc(){return this.c<4}, +CU(){var s=this.r +return s==null?this.r=new A.a8($.a9,t.b):s}, +a3w(a){var s=a.CW,r=a.ch +if(s==null)this.d=r +else s.ch=r +if(r==null)this.e=s +else r.CW=s +a.CW=a +a.ch=a}, +Jp(a,b,c,d){var s,r,q,p,o,n,m,l=this +if((l.c&4)!==0)return A.bkp(c,A.k(l).c) +s=$.a9 +r=d?1:0 +q=A.adI(s,a) +p=A.adJ(s,b) +o=c==null?A.beu():c +n=new A.zx(l,q,p,o,s,r,A.k(l).h("zx<1>")) +n.CW=n +n.ch=n +n.ay=l.c&1 +m=l.e +l.e=n +n.ch=null +n.CW=m +if(m==null)l.d=n +else m.ch=n +if(l.d===n)A.aq_(l.a) +return n}, +a3k(a){var s,r=this +A.k(r).h("zx<1>").a(a) +if(a.ch===a)return null +s=a.ay +if((s&2)!==0)a.ay=s|4 +else{r.a3w(a) +if((r.c&2)===0&&r.d==null)r.CG()}return null}, +a3l(a){}, +a3m(a){}, +vY(){if((this.c&4)!==0)return new A.iA("Cannot add new events after calling close") +return new A.iA("Cannot add new events while doing an addStream")}, +G(a,b){if(!this.gwc())throw A.c(this.vY()) +this.ov(b)}, +dO(a,b){A.fj(a,"error",t.K) +if(!this.gwc())throw A.c(this.vY()) +if(b==null)b=A.nY(a) +this.qk(a,b)}, +pp(a){return this.dO(a,null)}, +ad(a){var s,r,q=this +if((q.c&4)!==0){s=q.r +s.toString +return s}if(!q.gwc())throw A.c(q.vY()) +q.c|=4 +r=q.CU() +q.qj() +return r}, +gaHf(){return this.CU()}, +jV(a,b){this.qk(a,b)}, +rI(){var s=this.f +s.toString +this.f=null +this.c&=4294967287 +s.a.lR(null)}, +Qh(a){var s,r,q,p=this,o=p.c +if((o&2)!==0)throw A.c(A.R(u.c)) +s=p.d +if(s==null)return +r=o&1 +p.c=o^3 +for(;s!=null;){o=s.ay +if((o&1)===r){s.ay=o|2 +a.$1(s) +o=s.ay^=1 +q=s.ch +if((o&4)!==0)p.a3w(s) +s.ay&=4294967293 +s=q}else s=s.ch}p.c&=4294967293 +if(p.d==null)p.CG()}, +CG(){if((this.c&4)!==0){var s=this.r +if((s.a&30)===0)s.lR(null)}A.aq_(this.b)}, +$idL:1, +sW8(a){return this.a=a}, +sVV(a,b){return this.b=b}} +A.nL.prototype={ +gwc(){return A.mi.prototype.gwc.call(this)&&(this.c&2)===0}, +vY(){if((this.c&2)!==0)return new A.iA(u.c) +return this.aj3()}, +ov(a){var s=this,r=s.d +if(r==null)return +if(r===s.e){s.c|=2 +r.on(0,a) +s.c&=4294967293 +if(s.d==null)s.CG() +return}s.Qh(new A.bbj(s,a))}, +qk(a,b){if(this.d==null)return +this.Qh(new A.bbl(this,a,b))}, +qj(){var s=this +if(s.d!=null)s.Qh(new A.bbk(s)) +else s.r.lR(null)}} +A.bbj.prototype={ +$1(a){a.on(0,this.b)}, +$S(){return A.k(this.a).h("~(hl<1>)")}} +A.bbl.prototype={ +$1(a){a.jV(this.b,this.c)}, +$S(){return A.k(this.a).h("~(hl<1>)")}} +A.bbk.prototype={ +$1(a){a.rI()}, +$S(){return A.k(this.a).h("~(hl<1>)")}} +A.ls.prototype={ +ov(a){var s,r +for(s=this.d,r=this.$ti.h("iI<1>");s!=null;s=s.ch)s.rG(new A.iI(a,r))}, +qk(a,b){var s +for(s=this.d;s!=null;s=s.ch)s.rG(new A.zC(a,b))}, +qj(){var s=this.d +if(s!=null)for(;s!=null;s=s.ch)s.rG(B.fY) +else this.r.lR(null)}} +A.Fr.prototype={ +OR(a){var s=this.ax;(s==null?this.ax=new A.pj(this.$ti.h("pj<1>")):s).G(0,a)}, +G(a,b){var s=this,r=s.c +if((r&4)===0&&(r&2)!==0){s.OR(new A.iI(b,s.$ti.h("iI<1>"))) +return}s.aj5(0,b) +s.a0M()}, +dO(a,b){var s,r=this +A.fj(a,"error",t.K) +if(b==null)b=A.nY(a) +s=r.c +if((s&4)===0&&(s&2)!==0){r.OR(new A.zC(a,b)) +return}if(!(A.mi.prototype.gwc.call(r)&&(r.c&2)===0))throw A.c(r.vY()) +r.qk(a,b) +r.a0M()}, +pp(a){return this.dO(a,null)}, +a0M(){var s,r,q=this.ax +if(q!=null)for(;q.c!=null;){s=q.b +r=s.gnh(s) +q.b=r +if(r==null)q.c=null +s.MD(this)}}, +ad(a){var s=this,r=s.c +if((r&4)===0&&(r&2)!==0){s.OR(B.fY) +s.c|=4 +return A.mi.prototype.gaHf.call(s)}return s.aj6(0)}, +CG(){var s=this.ax +if(s!=null){if(s.a===1)s.a=3 +this.ax=s.b=s.c=null}this.aj4()}} +A.aD7.prototype={ +$0(){var s,r,q +try{this.a.os(this.b.$0())}catch(q){s=A.ai(q) +r=A.aH(q) +A.apS(this.a,s,r)}}, +$S:0} +A.aD6.prototype={ +$0(){var s,r,q +try{this.a.os(this.b.$0())}catch(q){s=A.ai(q) +r=A.aH(q) +A.apS(this.a,s,r)}}, +$S:0} +A.aD5.prototype={ +$0(){var s,r,q,p=this,o=p.a +if(o==null){p.c.a(null) +p.b.os(null)}else try{p.b.os(o.$0())}catch(q){s=A.ai(q) +r=A.aH(q) +A.apS(p.b,s,r)}}, +$S:0} +A.aDd.prototype={ +$2(a,b){var s=this,r=s.a,q=--r.b +if(r.a!=null){r.a=null +if(r.b===0||s.c)s.d.it(a,b) +else{s.e.b=a +s.f.b=b}}else if(q===0&&!s.c)s.d.it(s.e.aF(),s.f.aF())}, +$S:13} +A.aDc.prototype={ +$1(a){var s,r=this,q=r.a;--q.b +s=q.a +if(s!=null){J.ie(s,r.b,a) +if(q.b===0)r.c.w1(A.hz(s,!0,r.w))}else if(q.b===0&&!r.e)r.c.it(r.f.aF(),r.r.aF())}, +$S(){return this.w.h("aE(0)")}} +A.aD9.prototype={ +$1(a){var s=this.a +if((s.a.a&30)===0)s.cM(0,a)}, +$S(){return this.b.h("~(0)")}} +A.aD8.prototype={ +$2(a,b){var s=this.a +if((s.a.a&30)===0)s.f6(a,b)}, +$S:13} +A.aDb.prototype={ +$0(){var s,r,q=this.a +if(!q.u())return!1 +s=q.d +q=s==null?q.$ti.c.a(s):s +r=this.b.$1(q) +if(t.L0.b(r))return r.b9(A.bQH(),t.y) +return!0}, +$S:474} +A.aDa.prototype={ +$1(a){var s,r,q,p,o,n,m,l,k=this +for(p=t.wF,o=k.a;a;){s=null +try{s=o.$0()}catch(n){r=A.ai(n) +q=A.aH(n) +p=r +m=q +q=m==null?A.nY(p):m +k.b.yx(p,q) +return}if(p.b(s)){p=s +o=k.c +l=o.b +if(l===o)A.q(A.i0(o.a)) +p.fe(l,k.b.gyz(),t.H) +return}a=s}k.b.os(null)}, +$S:7} +A.aCU.prototype={ +$2(a,b){var s +if(this.a.b(a))s=!1 +else s=!0 +if(s)throw A.c(a) +return this.c.$2(a,b)}, +$S(){return this.d.h("0/(B,cz)")}} +A.aCT.prototype={ +$1(a){return a}, +$S(){return this.a.h("0(0)")}} +A.zA.prototype={ +f6(a,b){A.fj(a,"error",t.K) +if((this.a.a&30)!==0)throw A.c(A.R("Future already completed")) +if(b==null)b=A.nY(a) +this.it(a,b)}, +ms(a){return this.f6(a,null)}, +$iIG:1} +A.aD.prototype={ +cM(a,b){var s=this.a +if((s.a&30)!==0)throw A.c(A.R("Future already completed")) +s.lR(b)}, +fj(a){return this.cM(a,null)}, +it(a,b){this.a.yx(a,b)}} +A.rt.prototype={ +cM(a,b){var s=this.a +if((s.a&30)!==0)throw A.c(A.R("Future already completed")) +s.os(b)}, +it(a,b){this.a.it(a,b)}} +A.mm.prototype={ +aLi(a){if((this.c&15)!==6)return!0 +return this.b.b.Gg(this.d,a.a)}, +aIw(a){var s,r=this.e,q=null,p=a.a,o=this.b.b +if(t.Hg.b(r))q=o.acQ(r,p,a.b) +else q=o.Gg(r,p) +try{p=q +return p}catch(s){if(t.ns.b(A.ai(s))){if((this.c&1)!==0)throw A.c(A.bU("The error handler of Future.then must return a value of the returned future's type","onError")) +throw A.c(A.bU("The error handler of Future.catchError must return a value of the future's type","onError"))}else throw s}}} +A.a8.prototype={ +a4d(a){this.a=this.a&1|4 +this.c=a}, +fe(a,b,c){var s,r,q=$.a9 +if(q===B.b7){if(b!=null&&!t.Hg.b(b)&&!t.C_.b(b))throw A.c(A.eR(b,"onError",u.l))}else if(b!=null)b=A.bvy(b,q) +s=new A.a8(q,c.h("a8<0>")) +r=b==null?1:3 +this.yw(new A.mm(s,r,a,b,this.$ti.h("@<1>").S(c).h("mm<1,2>"))) +return s}, +b9(a,b){return this.fe(a,null,b)}, +a58(a,b,c){var s=new A.a8($.a9,c.h("a8<0>")) +this.yw(new A.mm(s,3,a,b,this.$ti.h("@<1>").S(c).h("mm<1,2>"))) +return s}, +zx(a,b){var s=this.$ti,r=$.a9,q=new A.a8(r,s) +if(r!==B.b7)a=A.bvy(a,r) +this.yw(new A.mm(q,2,b,a,s.h("@<1>").S(s.c).h("mm<1,2>"))) +return q}, +me(a){return this.zx(a,null)}, +fv(a){var s=this.$ti,r=new A.a8($.a9,s) +this.yw(new A.mm(r,8,a,null,s.h("@<1>").S(s.c).h("mm<1,2>"))) +return r}, +aAP(a){this.a=this.a&1|16 +this.c=a}, +HO(a){this.a=a.a&30|this.a&1 +this.c=a.c}, +yw(a){var s=this,r=s.a +if(r<=3){a.a=s.c +s.c=a}else{if((r&4)!==0){r=s.c +if((r.a&24)===0){r.yw(a) +return}s.HO(r)}A.nO(null,null,s.b,new A.b4k(s,a))}}, +RE(a){var s,r,q,p,o,n=this,m={} +m.a=a +if(a==null)return +s=n.a +if(s<=3){r=n.c +n.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){s=n.c +if((s.a&24)===0){s.RE(a) +return}n.HO(s)}m.a=n.J2(a) +A.nO(null,null,n.b,new A.b4r(m,n))}}, +IY(){var s=this.c +this.c=null +return this.J2(s)}, +J2(a){var s,r,q +for(s=a,r=null;s!=null;r=s,s=q){q=s.a +s.a=r}return r}, +Pc(a){var s,r,q,p=this +p.a^=2 +try{a.fe(new A.b4o(p),new A.b4p(p),t.P)}catch(q){s=A.ai(q) +r=A.aH(q) +A.h_(new A.b4q(p,s,r))}}, +os(a){var s,r=this,q=r.$ti +if(q.h("U<1>").b(a))if(q.b(a))A.bkq(a,r) +else r.Pc(a) +else{s=r.IY() +r.a=8 +r.c=a +A.FX(r,s)}}, +w1(a){var s=this,r=s.IY() +s.a=8 +s.c=a +A.FX(s,r)}, +it(a,b){var s=this.IY() +this.aAP(A.arP(a,b)) +A.FX(this,s)}, +lR(a){if(this.$ti.h("U<1>").b(a)){this.a_e(a) +return}this.a_1(a)}, +a_1(a){this.a^=2 +A.nO(null,null,this.b,new A.b4m(this,a))}, +a_e(a){if(this.$ti.b(a)){A.bMv(a,this) +return}this.Pc(a)}, +yx(a,b){this.a^=2 +A.nO(null,null,this.b,new A.b4l(this,a,b))}, +$iU:1} +A.b4k.prototype={ +$0(){A.FX(this.a,this.b)}, +$S:0} +A.b4r.prototype={ +$0(){A.FX(this.b,this.a.a)}, +$S:0} +A.b4o.prototype={ +$1(a){var s,r,q,p=this.a +p.a^=2 +try{p.w1(p.$ti.c.a(a))}catch(q){s=A.ai(q) +r=A.aH(q) +p.it(s,r)}}, +$S:29} +A.b4p.prototype={ +$2(a,b){this.a.it(a,b)}, +$S:23} +A.b4q.prototype={ +$0(){this.a.it(this.b,this.c)}, +$S:0} +A.b4n.prototype={ +$0(){A.bkq(this.a.a,this.b)}, +$S:0} +A.b4m.prototype={ +$0(){this.a.w1(this.b)}, +$S:0} +A.b4l.prototype={ +$0(){this.a.it(this.b,this.c)}, +$S:0} +A.b4u.prototype={ +$0(){var s,r,q,p,o,n,m=this,l=null +try{q=m.a.a +l=q.b.b.ko(q.d)}catch(p){s=A.ai(p) +r=A.aH(p) +q=m.c&&m.b.a.c.a===s +o=m.a +if(q)o.c=m.b.a.c +else o.c=A.arP(s,r) +o.b=!0 +return}if(l instanceof A.a8&&(l.a&24)!==0){if((l.a&16)!==0){q=m.a +q.c=l.c +q.b=!0}return}if(t.L0.b(l)){n=m.b.a +q=m.a +q.c=l.b9(new A.b4v(n),t.z) +q.b=!1}}, +$S:0} +A.b4v.prototype={ +$1(a){return this.a}, +$S:491} +A.b4t.prototype={ +$0(){var s,r,q,p,o +try{q=this.a +p=q.a +q.c=p.b.b.Gg(p.d,this.b)}catch(o){s=A.ai(o) +r=A.aH(o) +q=this.a +q.c=A.arP(s,r) +q.b=!0}}, +$S:0} +A.b4s.prototype={ +$0(){var s,r,q,p,o,n,m=this +try{s=m.a.a.c +p=m.b +if(p.a.aLi(s)&&p.a.e!=null){p.c=p.a.aIw(s) +p.b=!1}}catch(o){r=A.ai(o) +q=A.aH(o) +p=m.a.a.c +n=m.b +if(p.a===r)n.c=p +else n.c=A.arP(r,q) +n.b=!0}}, +$S:0} +A.adl.prototype={} +A.bA.prototype={ +gh1(){return!1}, +zp(a,b){var s=A.k(this),r=new A.Fq(this,null,a,$.a9,s.h("Fq")) +r.e=new A.Fr(r.gamC(),r.gawR(),s.h("Fr")) +return r}, +Td(a){return this.zp(a,null)}, +ig(a,b,c){return new A.nF(b,this,A.k(this).h("@").S(c).h("nF<1,2>"))}, +a6Z(a,b){var s,r=null,q={} +q.a=null +s=this.gh1()?q.a=new A.nL(r,r,b.h("nL<0>")):q.a=new A.pp(r,r,r,r,b.h("pp<0>")) +s.sW8(new A.aWh(q,this,a,b)) +q=q.a +return q.gvR(q)}, +aMO(a){return a.aEd(0,this).b9(new A.aWv(a),t.z)}, +af(a,b){var s=new A.a8($.a9,t.LR),r=this.ci(null,!0,new A.aWr(s),s.gyz()) +r.j9(new A.aWs(this,b,r,s)) +return s}, +gt(a){var s={},r=new A.a8($.a9,t.wJ) +s.a=0 +this.ci(new A.aWt(s,this),!0,new A.aWu(s,r),r.gyz()) +return r}, +fL(a){var s=A.k(this),r=A.a([],s.h("G")),q=new A.a8($.a9,s.h("a8>")) +this.ci(new A.aWw(this,r),!0,new A.aWx(q,r),q.gyz()) +return q}, +gN(a){var s=new A.a8($.a9,A.k(this).h("a8")),r=this.ci(null,!0,new A.aWn(s),s.gyz()) +r.j9(new A.aWo(this,r,s)) +return s}, +Lj(a,b){var s=new A.a8($.a9,A.k(this).h("a8")),r=this.ci(null,!0,new A.aWl(null,s),s.gyz()) +r.j9(new A.aWm(this,b,r,s)) +return s}} +A.aWb.prototype={ +$1(a){var s=this.a +s.on(0,a) +s.CK()}, +$S(){return this.b.h("aE(0)")}} +A.aWc.prototype={ +$2(a,b){var s=this.a +s.jV(a,b) +s.CK()}, +$S:120} +A.aWe.prototype={ +$1(a){var s,r,q,p,o,n={} +n.a=null +try{q=this.a +n.a=new J.e6(q,q.length,A.ab(q).h("e6<1>"))}catch(p){s=A.ai(p) +r=A.aH(p) +a.dO(s,r) +a.ad(0) +return}o=$.a9 +n.b=!0 +q=new A.aWf(n,a,o) +a.f=new A.aWd(n,o,q) +A.nO(null,null,o,q)}, +$S(){return this.b.h("~(a5g<0>)")}} +A.aWf.prototype={ +$0(){var s,r,q,p,o,n,m,l,k=this,j=k.b +if((j.b&1)!==0)n=(j.gkK().e&4)!==0 +else n=!0 +if(n){k.a.b=!1 +return}s=null +try{s=k.a.a.u()}catch(m){r=A.ai(m) +q=A.aH(m) +j.ST(r,q) +j.TC() +return}if(s){try{n=k.a.a +l=n.d +j.a6H(l==null?n.$ti.c.a(l):l)}catch(m){p=A.ai(m) +o=A.aH(m) +j.ST(p,o)}if((j.b&1)!==0){j=j.gkK().e +j=(j&4)===0}else j=!1 +if(j)A.nO(null,null,k.c,k) +else k.a.b=!1}else j.TC()}, +$S:0} +A.aWd.prototype={ +$0(){var s=this.a +if(!s.b){s.b=!0 +A.nO(null,null,this.b,this.c)}}, +$S:0} +A.aWh.prototype={ +$0(){var s,r,q=this,p=q.b,o=q.a,n=o.a.gHz(),m=o.a,l=p.h2(null,m.gdU(m),n) +n=q.d +s=o.a.gHz() +r=l.gh4(l) +l.j9(new A.aWg(o,p,q.c,n,l,new A.aWi(o,n),s,r)) +o.a.sVV(0,l.gdP(l)) +if(!p.gh1()){p=o.a +p.sWa(0,l.gij(l)) +p.sWe(0,r)}}, +$S:0} +A.aWi.prototype={ +$1(a){this.a.a.G(0,a)}, +$S(){return this.b.h("U?(0)")}} +A.aWg.prototype={ +$1(a){var s,r,q,p=this,o=null +try{o=p.c.$1(a)}catch(q){s=A.ai(q) +r=A.aH(q) +p.a.a.dO(s,r) +return}if(p.d.h("U<0>").b(o)){p.e.jL(0) +o.fe(p.f,p.r,t.P).fv(p.w)}else p.a.a.G(0,o)}, +$S(){return A.k(this.b).h("~(bA.T)")}} +A.aWv.prototype={ +$1(a){return this.a.ad(0)}, +$S:176} +A.aWr.prototype={ +$0(){this.a.os(null)}, +$S:0} +A.aWs.prototype={ +$1(a){A.bvE(new A.aWp(this.b,a),new A.aWq(),A.buT(this.c,this.d))}, +$S(){return A.k(this.a).h("~(bA.T)")}} +A.aWp.prototype={ +$0(){return this.a.$1(this.b)}, +$S:0} +A.aWq.prototype={ +$1(a){}, +$S:20} +A.aWt.prototype={ +$1(a){++this.a.a}, +$S(){return A.k(this.b).h("~(bA.T)")}} +A.aWu.prototype={ +$0(){this.b.os(this.a.a)}, +$S:0} +A.aWw.prototype={ +$1(a){this.b.push(a)}, +$S(){return A.k(this.a).h("~(bA.T)")}} +A.aWx.prototype={ +$0(){this.a.os(this.b)}, +$S:0} +A.aWn.prototype={ +$0(){var s,r,q,p +try{q=A.cf() +throw A.c(q)}catch(p){s=A.ai(p) +r=A.aH(p) +A.apS(this.a,s,r)}}, +$S:0} +A.aWo.prototype={ +$1(a){A.buU(this.b,this.c,a)}, +$S(){return A.k(this.a).h("~(bA.T)")}} +A.aWl.prototype={ +$0(){var s,r,q,p +try{q=A.cf() +throw A.c(q)}catch(p){s=A.ai(p) +r=A.aH(p) +A.apS(this.b,s,r)}}, +$S:0} +A.aWm.prototype={ +$1(a){var s=this.c,r=this.d +A.bvE(new A.aWj(this.b,a),new A.aWk(s,r,a),A.buT(s,r))}, +$S(){return A.k(this.a).h("~(bA.T)")}} +A.aWj.prototype={ +$0(){return this.a.$1(this.b)}, +$S:17} +A.aWk.prototype={ +$1(a){if(a)A.buU(this.a,this.b,this.c)}, +$S:131} +A.z0.prototype={ +gh1(){return this.a.gh1()}, +zp(a,b){return this.a.zp(a,b)}, +Td(a){return this.zp(a,null)}, +ci(a,b,c,d){return this.a.ci(a,b,c,d)}, +h2(a,b,c){return this.ci(a,null,b,c)}, +n_(a,b,c){return this.ci(a,b,c,null)}} +A.a9B.prototype={} +A.vt.prototype={ +gvR(a){return new A.d_(this,A.k(this).h("d_<1>"))}, +gay7(){if((this.b&8)===0)return this.a +return this.a.c}, +yG(){var s,r,q=this +if((q.b&8)===0){s=q.a +return s==null?q.a=new A.pj(A.k(q).h("pj<1>")):s}r=q.a +s=r.c +return s==null?r.c=new A.pj(A.k(q).h("pj<1>")):s}, +gkK(){var s=this.a +return(this.b&8)!==0?s.c:s}, +qd(){if((this.b&4)!==0)return new A.iA("Cannot add event after closing") +return new A.iA("Cannot add event while adding a stream")}, +aEe(a,b,c){var s,r,q,p=this,o=p.b +if(o>=4)throw A.c(p.qd()) +if((o&2)!==0){o=new A.a8($.a9,t.LR) +o.lR(null) +return o}o=p.a +s=c===!0 +r=new A.a8($.a9,t.LR) +q=s?A.bLX(p):p.gHz() +q=b.ci(p.gamz(p),s,p.gao9(),q) +s=p.b +if((s&1)!==0?(p.gkK().e&4)!==0:(s&2)===0)q.jL(0) +p.a=new A.TC(o,r,q,A.k(p).h("TC<1>")) +p.b|=8 +return r}, +CU(){var s=this.c +if(s==null)s=this.c=(this.b&2)!==0?$.rO():new A.a8($.a9,t.b) +return s}, +G(a,b){if(this.b>=4)throw A.c(this.qd()) +this.on(0,b)}, +dO(a,b){A.fj(a,"error",t.K) +if(this.b>=4)throw A.c(this.qd()) +if(b==null)b=A.nY(a) +this.jV(a,b)}, +pp(a){return this.dO(a,null)}, +ad(a){var s=this,r=s.b +if((r&4)!==0)return s.CU() +if(r>=4)throw A.c(s.qd()) +s.CK() +return s.CU()}, +CK(){var s=this.b|=4 +if((s&1)!==0)this.qj() +else if((s&3)===0)this.yG().G(0,B.fY)}, +on(a,b){var s=this,r=s.b +if((r&1)!==0)s.ov(b) +else if((r&3)===0)s.yG().G(0,new A.iI(b,A.k(s).h("iI<1>")))}, +jV(a,b){var s=this.b +if((s&1)!==0)this.qk(a,b) +else if((s&3)===0)this.yG().G(0,new A.zC(a,b))}, +rI(){var s=this.a +this.a=s.c +this.b&=4294967287 +s.a.lR(null)}, +Jp(a,b,c,d){var s,r,q,p,o=this +if((o.b&3)!==0)throw A.c(A.R("Stream has already been listened to.")) +s=A.bMf(o,a,b,c,d,A.k(o).c) +r=o.gay7() +q=o.b|=1 +if((q&8)!==0){p=o.a +p.c=s +p.b.jk(0)}else o.a=s +s.aAQ(r) +s.Qo(new A.baW(o)) +return s}, +a3k(a){var s,r,q,p,o,n,m,l=this,k=null +if((l.b&8)!==0)k=l.a.aQ(0) +l.a=null +l.b=l.b&4294967286|2 +s=l.r +if(s!=null)if(k==null)try{r=s.$0() +if(t.uz.b(r))k=r}catch(o){q=A.ai(o) +p=A.aH(o) +n=new A.a8($.a9,t.b) +n.yx(q,p) +k=n}else k=k.fv(s) +m=new A.baV(l) +if(k!=null)k=k.fv(m) +else m.$0() +return k}, +a3l(a){if((this.b&8)!==0)this.a.b.jL(0) +A.aq_(this.e)}, +a3m(a){if((this.b&8)!==0)this.a.b.jk(0) +A.aq_(this.f)}, +$idL:1, +sW8(a){return this.d=a}, +sWa(a,b){return this.e=b}, +sWe(a,b){return this.f=b}, +sVV(a,b){return this.r=b}} +A.baW.prototype={ +$0(){A.aq_(this.a.d)}, +$S:0} +A.baV.prototype={ +$0(){var s=this.a.c +if(s!=null&&(s.a&30)===0)s.lR(null)}, +$S:0} +A.amn.prototype={ +ov(a){this.gkK().on(0,a)}, +qk(a,b){this.gkK().jV(a,b)}, +qj(){this.gkK().rI()}} +A.PB.prototype={ +ov(a){this.gkK().rG(new A.iI(a,A.k(this).h("iI<1>")))}, +qk(a,b){this.gkK().rG(new A.zC(a,b))}, +qj(){this.gkK().rG(B.fY)}} +A.mg.prototype={} +A.pp.prototype={} +A.d_.prototype={ +gv(a){return(A.cU(this.a)^892482866)>>>0}, +l(a,b){if(b==null)return!1 +if(this===b)return!0 +return b instanceof A.d_&&b.a===this.a}} +A.v8.prototype={ +yV(){return this.w.a3k(this)}, +qh(){this.w.a3l(this)}, +qi(){this.w.a3m(this)}} +A.zV.prototype={ +G(a,b){this.a.G(0,b)}, +dO(a,b){this.a.dO(a,b)}, +ad(a){return this.a.ad(0)}, +$idL:1} +A.ad1.prototype={ +aQ(a){var s=this.b.aQ(0) +return s.fv(new A.b_S(this))}} +A.b_T.prototype={ +$2(a,b){var s=this.a +s.jV(a,b) +s.rI()}, +$S:23} +A.b_S.prototype={ +$0(){this.a.a.lR(null)}, +$S:5} +A.TC.prototype={} +A.hl.prototype={ +aAQ(a){var s=this +if(a==null)return +s.r=a +if(a.c!=null){s.e=(s.e|64)>>>0 +a.GZ(s)}}, +j9(a){this.a=A.adI(this.d,a)}, +vj(a,b){this.b=A.adJ(this.d,b)}, +jM(a,b){var s,r=this,q=r.e +if((q&8)!==0)return +r.e=(q+128|4)>>>0 +if(b!=null)b.fv(r.gh4(r)) +if(q<128){s=r.r +if(s!=null)if(s.a===1)s.a=3}if((q&4)===0&&(r.e&32)===0)r.Qo(r.gDi())}, +jL(a){return this.jM(a,null)}, +jk(a){var s=this,r=s.e +if((r&8)!==0)return +if(r>=128){r=s.e=r-128 +if(r<128)if((r&64)!==0&&s.r.c!=null)s.r.GZ(s) +else{r=(r&4294967291)>>>0 +s.e=r +if((r&32)===0)s.Qo(s.gDj())}}}, +aQ(a){var s=this,r=(s.e&4294967279)>>>0 +s.e=r +if((r&8)===0)s.P7() +r=s.f +return r==null?$.rO():r}, +P7(){var s,r=this,q=r.e=(r.e|8)>>>0 +if((q&64)!==0){s=r.r +if(s.a===1)s.a=3}if((q&32)===0)r.r=null +r.f=r.yV()}, +on(a,b){var s=this,r=s.e +if((r&8)!==0)return +if(r<32)s.ov(b) +else s.rG(new A.iI(b,A.k(s).h("iI")))}, +jV(a,b){var s=this.e +if((s&8)!==0)return +if(s<32)this.qk(a,b) +else this.rG(new A.zC(a,b))}, +rI(){var s=this,r=s.e +if((r&8)!==0)return +r=(r|2)>>>0 +s.e=r +if(r<32)s.qj() +else s.rG(B.fY)}, +qh(){}, +qi(){}, +yV(){return null}, +rG(a){var s,r=this,q=r.r +if(q==null)q=r.r=new A.pj(A.k(r).h("pj")) +q.G(0,a) +s=r.e +if((s&64)===0){s=(s|64)>>>0 +r.e=s +if(s<128)q.GZ(r)}}, +ov(a){var s=this,r=s.e +s.e=(r|32)>>>0 +s.d.xL(s.a,a) +s.e=(s.e&4294967263)>>>0 +s.Pg((r&4)!==0)}, +qk(a,b){var s,r=this,q=r.e,p=new A.b0T(r,a,b) +if((q&1)!==0){r.e=(q|16)>>>0 +r.P7() +s=r.f +if(s!=null&&s!==$.rO())s.fv(p) +else p.$0()}else{p.$0() +r.Pg((q&4)!==0)}}, +qj(){var s,r=this,q=new A.b0S(r) +r.P7() +r.e=(r.e|16)>>>0 +s=r.f +if(s!=null&&s!==$.rO())s.fv(q) +else q.$0()}, +Qo(a){var s=this,r=s.e +s.e=(r|32)>>>0 +a.$0() +s.e=(s.e&4294967263)>>>0 +s.Pg((r&4)!==0)}, +Pg(a){var s,r,q=this,p=q.e +if((p&64)!==0&&q.r.c==null){p=q.e=(p&4294967231)>>>0 +if((p&4)!==0)if(p<128){s=q.r +s=s==null?null:s.c==null +s=s!==!1}else s=!1 +else s=!1 +if(s){p=(p&4294967291)>>>0 +q.e=p}}for(;!0;a=r){if((p&8)!==0){q.r=null +return}r=(p&4)!==0 +if(a===r)break +q.e=(p^32)>>>0 +if(r)q.qh() +else q.qi() +p=(q.e&4294967263)>>>0 +q.e=p}if((p&64)!==0&&p<128)q.r.GZ(q)}, +$ilo:1} +A.b0T.prototype={ +$0(){var s,r,q=this.a,p=q.e +if((p&8)!==0&&(p&16)===0)return +q.e=(p|32)>>>0 +s=q.b +p=this.b +r=q.d +if(t.hK.b(s))r.rg(s,p,this.c) +else r.xL(s,p) +q.e=(q.e&4294967263)>>>0}, +$S:0} +A.b0S.prototype={ +$0(){var s=this.a,r=s.e +if((r&16)===0)return +s.e=(r|42)>>>0 +s.d.Gf(s.c) +s.e=(s.e&4294967263)>>>0}, +$S:0} +A.GS.prototype={ +ci(a,b,c,d){return this.a.Jp(a,d,c,b===!0)}, +B0(a){return this.ci(a,null,null,null)}, +h2(a,b,c){return this.ci(a,null,b,c)}, +aKW(a,b){return this.ci(a,null,b,null)}, +n_(a,b,c){return this.ci(a,b,c,null)}, +ab5(a,b){return this.ci(a,null,null,b)}} +A.af9.prototype={ +gnh(a){return this.a}, +snh(a,b){return this.a=b}} +A.iI.prototype={ +MD(a){a.ov(this.b)}} +A.zC.prototype={ +MD(a){a.qk(this.b,this.c)}} +A.b2I.prototype={ +MD(a){a.qj()}, +gnh(a){return null}, +snh(a,b){throw A.c(A.R("No events after a done."))}} +A.pj.prototype={ +GZ(a){var s=this,r=s.a +if(r===1)return +if(r>=1){s.a=1 +return}A.h_(new A.b7K(s,a)) +s.a=1}, +G(a,b){var s=this,r=s.c +if(r==null)s.b=s.c=b +else{r.snh(0,b) +s.c=b}}, +aIU(a){var s=this.b,r=s.gnh(s) +this.b=r +if(r==null)this.c=null +s.MD(a)}} +A.b7K.prototype={ +$0(){var s=this.a,r=s.a +s.a=0 +if(r===3)return +s.aIU(this.b)}, +$S:0} +A.FG.prototype={ +a3L(){var s=this +if((s.b&2)!==0)return +A.nO(null,null,s.a,s.gaAG()) +s.b=(s.b|2)>>>0}, +j9(a){}, +vj(a,b){}, +jM(a,b){this.b+=4 +if(b!=null)b.fv(this.gh4(this))}, +jL(a){return this.jM(a,null)}, +jk(a){var s=this.b +if(s>=4){s=this.b=s-4 +if(s<4&&(s&1)===0)this.a3L()}}, +aQ(a){return $.rO()}, +qj(){var s,r=this,q=r.b=(r.b&4294967293)>>>0 +if(q>=4)return +r.b=(q|1)>>>0 +s=r.c +if(s!=null)r.a.Gf(s)}, +$ilo:1} +A.Fq.prototype={ +gh1(){return!0}, +ci(a,b,c,d){var s,r,q=this,p=q.e +if(p==null||(p.c&4)!==0)return A.bkp(c,q.$ti.c) +if(q.f==null){s=p.gjx(p) +r=p.gww() +q.f=q.a.h2(s,p.gdU(p),r)}return p.Jp(a,d,c,b===!0)}, +h2(a,b,c){return this.ci(a,null,b,c)}, +n_(a,b,c){return this.ci(a,b,c,null)}, +yV(){var s,r=this,q=r.e,p=q==null||(q.c&4)!==0,o=r.c +if(o!=null)r.d.Gg(o,new A.v5(r,r.$ti.h("v5<1>"))) +if(p){s=r.f +if(s!=null){s.aQ(0) +r.f=null}}}, +amD(){var s=this,r=s.b +if(r!=null)s.d.Gg(r,new A.v5(s,s.$ti.h("v5<1>")))}} +A.v5.prototype={ +j9(a){throw A.c(A.a7(u.J))}, +vj(a,b){throw A.c(A.a7(u.J))}, +jM(a,b){var s=this.a.f +if(s!=null)s.jM(0,b)}, +jL(a){return this.jM(a,null)}, +jk(a){var s=this.a.f +if(s!=null)s.jk(0)}, +aQ(a){var s=this.a,r=s.f +if(r!=null){s.e=s.f=null +r.aQ(0)}return $.rO()}, +$ilo:1} +A.nK.prototype={ +gH(a){if(this.c)return this.b +return null}, +u(){var s,r=this,q=r.a +if(q!=null){if(r.c){s=new A.a8($.a9,t.tq) +r.b=s +r.c=!1 +q.jk(0) +return s}throw A.c(A.R("Already waiting for next."))}return r.auR()}, +auR(){var s,r,q=this,p=q.b +if(p!=null){s=new A.a8($.a9,t.tq) +q.b=s +r=p.ci(q.gamA(),!0,q.gawY(),q.gax3()) +if(q.b!=null)q.a=r +return s}return $.byD()}, +aQ(a){var s=this,r=s.a,q=s.b +s.b=null +if(r!=null){s.a=null +if(!s.c)q.lR(!1) +else s.c=!1 +return r.aQ(0)}return $.rO()}, +amB(a){var s,r,q=this +if(q.a==null)return +s=q.b +q.b=a +q.c=!0 +s.os(!0) +if(q.c){r=q.a +if(r!=null)r.jL(0)}}, +ax4(a,b){var s=this,r=s.a,q=s.b +s.b=s.a=null +if(r!=null)q.it(a,b) +else q.yx(a,b)}, +awZ(){var s=this,r=s.a,q=s.b +s.b=s.a=null +if(r!=null)q.w1(!1) +else q.a_1(!1)}} +A.QQ.prototype={ +gh1(){return!0}, +ci(a,b,c,d){return A.bkp(c,this.$ti.c)}, +B0(a){return this.ci(a,null,null,null)}, +h2(a,b,c){return this.ci(a,null,b,c)}, +n_(a,b,c){return this.ci(a,b,c,null)}} +A.zL.prototype={ +ci(a,b,c,d){var s=null,r=new A.RY(s,s,s,s,this.$ti.h("RY<1>")) +r.d=new A.b6U(this,r) +return r.Jp(a,d,c,b===!0)}, +h2(a,b,c){return this.ci(a,null,b,c)}, +n_(a,b,c){return this.ci(a,b,c,null)}, +gh1(){return this.a}} +A.b6U.prototype={ +$0(){this.a.b.$1(this.b)}, +$S:0} +A.RY.prototype={ +a6H(a){var s=this.b +if(s>=4)throw A.c(this.qd()) +if((s&1)!==0)this.gkK().on(0,a)}, +ST(a,b){var s=this.b +if(s>=4)throw A.c(this.qd()) +if((s&1)!==0){s=this.gkK() +s.jV(a,b==null?B.pK:b)}}, +TC(){var s=this,r=s.b +if((r&4)!==0)return +if(r>=4)throw A.c(s.qd()) +r|=4 +s.b=r +if((r&1)!==0)s.gkK().rI()}, +gvR(a){throw A.c(A.a7("Not available"))}, +$ia5g:1} +A.bd9.prototype={ +$0(){return this.a.it(this.b,this.c)}, +$S:0} +A.bd8.prototype={ +$2(a,b){A.bOa(this.a,this.b,a,b)}, +$S:13} +A.bda.prototype={ +$0(){return this.a.os(this.b)}, +$S:0} +A.R4.prototype={ +gh1(){return this.a.gh1()}, +ci(a,b,c,d){var s=this.$ti,r=$.a9,q=b===!0?1:0,p=A.adI(r,a),o=A.adJ(r,d),n=c==null?A.beu():c +s=new A.FV(this,p,o,n,r,q,s.h("@<1>").S(s.z[1]).h("FV<1,2>")) +s.x=this.a.h2(s.gQs(),s.gQu(),s.gQA()) +return s}, +B0(a){return this.ci(a,null,null,null)}, +h2(a,b,c){return this.ci(a,null,b,c)}, +n_(a,b,c){return this.ci(a,b,c,null)}} +A.FV.prototype={ +on(a,b){if((this.e&2)!==0)return +this.Cz(0,b)}, +jV(a,b){if((this.e&2)!==0)return +this.yr(a,b)}, +qh(){var s=this.x +if(s!=null)s.jL(0)}, +qi(){var s=this.x +if(s!=null)s.jk(0)}, +yV(){var s=this.x +if(s!=null){this.x=null +return s.aQ(0)}return null}, +Qt(a){this.w.arX(a,this)}, +QB(a,b){this.jV(a,b)}, +Qv(){this.rI()}} +A.nF.prototype={ +arX(a,b){var s,r,q,p=null +try{p=this.b.$1(a)}catch(q){s=A.ai(q) +r=A.aH(q) +b.jV(s,r) +return}b.on(0,p)}} +A.QS.prototype={ +G(a,b){var s=this.a +if((s.e&2)!==0)A.q(A.R("Stream is already closed")) +s.Cz(0,b)}, +dO(a,b){var s=this.a,r=b==null?A.nY(a):b +if((s.e&2)!==0)A.q(A.R("Stream is already closed")) +s.yr(a,r)}, +pp(a){return this.dO(a,null)}, +ad(a){var s=this.a +if((s.e&2)!==0)A.q(A.R("Stream is already closed")) +s.OB()}, +$idL:1} +A.GK.prototype={ +qh(){var s=this.x +if(s!=null)s.jL(0)}, +qi(){var s=this.x +if(s!=null)s.jk(0)}, +yV(){var s=this.x +if(s!=null){this.x=null +return s.aQ(0)}return null}, +Qt(a){var s,r,q,p +try{q=this.w +q===$&&A.b() +q.G(0,a)}catch(p){s=A.ai(p) +r=A.aH(p) +if((this.e&2)!==0)A.q(A.R("Stream is already closed")) +this.yr(s,r)}}, +QB(a,b){var s,r,q,p,o=this,n="Stream is already closed" +try{q=o.w +q===$&&A.b() +q.dO(a,b)}catch(p){s=A.ai(p) +r=A.aH(p) +if(s===a){if((o.e&2)!==0)A.q(A.R(n)) +o.yr(a,b)}else{if((o.e&2)!==0)A.q(A.R(n)) +o.yr(s,r)}}}, +Qv(){var s,r,q,p,o=this +try{o.x=null +q=o.w +q===$&&A.b() +q.ad(0)}catch(p){s=A.ai(p) +r=A.aH(p) +if((o.e&2)!==0)A.q(A.R("Stream is already closed")) +o.yr(s,r)}}} +A.TE.prototype={ +qx(a){var s=this.$ti +return new A.PU(this.a,a,s.h("@<1>").S(s.z[1]).h("PU<1,2>"))}} +A.PU.prototype={ +gh1(){return this.b.gh1()}, +ci(a,b,c,d){var s=this.$ti,r=$.a9,q=b===!0?1:0,p=A.adI(r,a),o=A.adJ(r,d),n=c==null?A.beu():c,m=new A.GK(p,o,n,r,q,s.h("@<1>").S(s.z[1]).h("GK<1,2>")) +m.w=this.a.$1(new A.QS(m,s.h("QS<2>"))) +m.x=this.b.h2(m.gQs(),m.gQu(),m.gQA()) +return m}, +h2(a,b,c){return this.ci(a,null,b,c)}, +n_(a,b,c){return this.ci(a,b,c,null)}} +A.G_.prototype={ +G(a,b){var s=this.d +if(s==null)throw A.c(A.R("Sink is closed")) +this.a.$2(b,s)}, +dO(a,b){var s +A.fj(a,"error",t.K) +s=this.d +if(s==null)throw A.c(A.R("Sink is closed")) +s.dO(a,b==null?A.nY(a):b)}, +ad(a){var s,r=this.d +if(r==null)return +this.d=null +s=r.a +if((s.e&2)!==0)A.q(A.R("Stream is already closed")) +s.OB()}, +$idL:1} +A.TD.prototype={ +qx(a){return this.ak9(a)}} +A.baX.prototype={ +$1(a){var s=this +return new A.G_(s.a,s.b,s.c,a,s.e.h("@<0>").S(s.d).h("G_<1,2>"))}, +$S(){return this.e.h("@<0>").S(this.d).h("G_<1,2>(dL<2>)")}} +A.bcN.prototype={} +A.bec.prototype={ +$0(){A.biv(this.a,this.b)}, +$S:0} +A.akT.prototype={ +Gf(a){var s,r,q +try{if(B.b7===$.a9){a.$0() +return}A.bvA(null,null,this,a)}catch(q){s=A.ai(q) +r=A.aH(q) +A.lx(s,r)}}, +aOf(a,b){var s,r,q +try{if(B.b7===$.a9){a.$1(b) +return}A.bvC(null,null,this,a,b)}catch(q){s=A.ai(q) +r=A.aH(q) +A.lx(s,r)}}, +xL(a,b){return this.aOf(a,b,t.z)}, +aOc(a,b,c){var s,r,q +try{if(B.b7===$.a9){a.$2(b,c) +return}A.bvB(null,null,this,a,b,c)}catch(q){s=A.ai(q) +r=A.aH(q) +A.lx(s,r)}}, +rg(a,b,c){return this.aOc(a,b,c,t.z,t.z)}, +aED(a,b,c,d){return new A.b9B(this,a,c,d,b)}, +Tk(a){return new A.b9C(this,a)}, +Tl(a,b){return new A.b9D(this,a,b)}, +i(a,b){return null}, +aJq(a,b){A.lx(a,b)}, +aO9(a){if($.a9===B.b7)return a.$0() +return A.bvA(null,null,this,a)}, +ko(a){return this.aO9(a,t.z)}, +aOe(a,b){if($.a9===B.b7)return a.$1(b) +return A.bvC(null,null,this,a,b)}, +Gg(a,b){return this.aOe(a,b,t.z,t.z)}, +aOb(a,b,c){if($.a9===B.b7)return a.$2(b,c) +return A.bvB(null,null,this,a,b,c)}, +acQ(a,b,c){return this.aOb(a,b,c,t.z,t.z,t.z)}, +aNq(a){return a}, +G6(a){return this.aNq(a,t.z,t.z,t.z)}} +A.b9B.prototype={ +$2(a,b){return this.a.acQ(this.b,a,b)}, +$S(){return this.e.h("@<0>").S(this.c).S(this.d).h("1(2,3)")}} +A.b9C.prototype={ +$0(){return this.a.Gf(this.b)}, +$S:0} +A.b9D.prototype={ +$1(a){return this.a.xL(this.b,a)}, +$S(){return this.c.h("~(0)")}} +A.rh.prototype={ +gt(a){return this.a}, +gai(a){return this.a===0}, +gdn(a){return this.a!==0}, +gcP(a){return new A.ri(this,A.k(this).h("ri<1>"))}, +gbw(a){var s=A.k(this) +return A.mV(new A.ri(this,s.h("ri<1>")),new A.b4C(this),s.c,s.z[1])}, +ao(a,b){var s,r +if(typeof b=="string"&&b!=="__proto__"){s=this.b +return s==null?!1:s[b]!=null}else if(typeof b=="number"&&(b&1073741823)===b){r=this.c +return r==null?!1:r[b]!=null}else return this.yA(b)}, +yA(a){var s=this.d +if(s==null)return!1 +return this.kI(this.a0X(s,a),a)>=0}, +I(a,b){J.f9(b,new A.b4B(this))}, +i(a,b){var s,r,q +if(typeof b=="string"&&b!=="__proto__"){s=this.b +r=s==null?null:A.bkr(s,b) +return r}else if(typeof b=="number"&&(b&1073741823)===b){q=this.c +r=q==null?null:A.bkr(q,b) +return r}else return this.a0V(0,b)}, +a0V(a,b){var s,r,q=this.d +if(q==null)return null +s=this.a0X(q,b) +r=this.kI(s,b) +return r<0?null:s[r+1]}, +p(a,b,c){var s,r,q=this +if(typeof b=="string"&&b!=="__proto__"){s=q.b +q.a_H(s==null?q.b=A.bks():s,b,c)}else if(typeof b=="number"&&(b&1073741823)===b){r=q.c +q.a_H(r==null?q.c=A.bks():r,b,c)}else q.a4c(b,c)}, +a4c(a,b){var s,r,q,p=this,o=p.d +if(o==null)o=p.d=A.bks() +s=p.lU(a) +r=o[s] +if(r==null){A.bkt(o,s,[a,b]);++p.a +p.e=null}else{q=p.kI(r,a) +if(q>=0)r[q+1]=b +else{r.push(a,b);++p.a +p.e=null}}}, +cJ(a,b,c){var s,r,q=this +if(q.ao(0,b)){s=q.i(0,b) +return s==null?A.k(q).z[1].a(s):s}r=c.$0() +q.p(0,b,r) +return r}, +F(a,b){var s=this +if(typeof b=="string"&&b!=="__proto__")return s.u8(s.b,b) +else if(typeof b=="number"&&(b&1073741823)===b)return s.u8(s.c,b) +else return s.rQ(0,b)}, +rQ(a,b){var s,r,q,p,o=this,n=o.d +if(n==null)return null +s=o.lU(b) +r=n[s] +q=o.kI(r,b) +if(q<0)return null;--o.a +o.e=null +p=r.splice(q,2)[1] +if(0===r.length)delete n[s] +return p}, +ab(a){var s=this +if(s.a>0){s.b=s.c=s.d=s.e=null +s.a=0}}, +af(a,b){var s,r,q,p,o,n=this,m=n.HP() +for(s=m.length,r=A.k(n).z[1],q=0;q"))}, +n(a,b){return this.a.ao(0,b)}, +af(a,b){var s,r,q=this.a,p=q.HP() +for(s=p.length,r=0;r=r.length){s.d=null +return!1}else{s.d=r[q] +s.c=q+1 +return!0}}} +A.RH.prototype={ +i(a,b){if(!this.y.$1(b))return null +return this.ah7(b)}, +p(a,b,c){this.ah9(b,c)}, +ao(a,b){if(!this.y.$1(b))return!1 +return this.ah6(b)}, +F(a,b){if(!this.y.$1(b))return null +return this.ah8(b)}, +xg(a){return this.x.$1(a)&1073741823}, +xh(a,b){var s,r,q +if(a==null)return-1 +s=a.length +for(r=this.w,q=0;q"))}, +Dh(a){return new A.ph(a.h("ph<0>"))}, +Rq(){return this.Dh(t.z)}, +gaj(a){return new A.mo(this,this.CO(),A.k(this).h("mo<1>"))}, +gt(a){return this.a}, +gai(a){return this.a===0}, +gdn(a){return this.a!==0}, +n(a,b){var s,r +if(typeof b=="string"&&b!=="__proto__"){s=this.b +return s==null?!1:s[b]!=null}else if(typeof b=="number"&&(b&1073741823)===b){r=this.c +return r==null?!1:r[b]!=null}else return this.Px(b)}, +Px(a){var s=this.d +if(s==null)return!1 +return this.kI(s[this.lU(a)],a)>=0}, +G(a,b){var s,r,q=this +if(typeof b=="string"&&b!=="__proto__"){s=q.b +return q.CL(s==null?q.b=A.bku():s,b)}else if(typeof b=="number"&&(b&1073741823)===b){r=q.c +return q.CL(r==null?q.c=A.bku():r,b)}else return q.iP(0,b)}, +iP(a,b){var s,r,q=this,p=q.d +if(p==null)p=q.d=A.bku() +s=q.lU(b) +r=p[s] +if(r==null)p[s]=[b] +else{if(q.kI(r,b)>=0)return!1 +r.push(b)}++q.a +q.e=null +return!0}, +I(a,b){var s +for(s=J.ao(b);s.u();)this.G(0,s.gH(s))}, +F(a,b){var s=this +if(typeof b=="string"&&b!=="__proto__")return s.u8(s.b,b) +else if(typeof b=="number"&&(b&1073741823)===b)return s.u8(s.c,b) +else return s.rQ(0,b)}, +rQ(a,b){var s,r,q,p=this,o=p.d +if(o==null)return!1 +s=p.lU(b) +r=o[s] +q=p.kI(r,b) +if(q<0)return!1;--p.a +p.e=null +r.splice(q,1) +if(0===r.length)delete o[s] +return!0}, +ab(a){var s=this +if(s.a>0){s.b=s.c=s.d=s.e=null +s.a=0}}, +CO(){var s,r,q,p,o,n,m,l,k,j,i=this,h=i.e +if(h!=null)return h +h=A.aT(i.a,null,!1,t.z) +s=i.b +if(s!=null){r=Object.getOwnPropertyNames(s) +q=r.length +for(p=0,o=0;o=r.length){s.d=null +return!1}else{s.d=r[q] +s.c=q+1 +return!0}}} +A.kI.prototype={ +yU(){return new A.kI(A.k(this).h("kI<1>"))}, +Dh(a){return new A.kI(a.h("kI<0>"))}, +Rq(){return this.Dh(t.z)}, +gaj(a){var s=this,r=new A.mp(s,s.r,A.k(s).h("mp<1>")) +r.c=s.e +return r}, +gt(a){return this.a}, +gai(a){return this.a===0}, +gdn(a){return this.a!==0}, +n(a,b){var s,r +if(typeof b=="string"&&b!=="__proto__"){s=this.b +if(s==null)return!1 +return s[b]!=null}else if(typeof b=="number"&&(b&1073741823)===b){r=this.c +if(r==null)return!1 +return r[b]!=null}else return this.Px(b)}, +Px(a){var s=this.d +if(s==null)return!1 +return this.kI(s[this.lU(a)],a)>=0}, +af(a,b){var s=this,r=s.e,q=s.r +for(;r!=null;){b.$1(r.a) +if(q!==s.r)throw A.c(A.cB(s)) +r=r.b}}, +gN(a){var s=this.e +if(s==null)throw A.c(A.R("No elements")) +return s.a}, +ga1(a){var s=this.f +if(s==null)throw A.c(A.R("No elements")) +return s.a}, +G(a,b){var s,r,q=this +if(typeof b=="string"&&b!=="__proto__"){s=q.b +return q.CL(s==null?q.b=A.bkx():s,b)}else if(typeof b=="number"&&(b&1073741823)===b){r=q.c +return q.CL(r==null?q.c=A.bkx():r,b)}else return q.iP(0,b)}, +iP(a,b){var s,r,q=this,p=q.d +if(p==null)p=q.d=A.bkx() +s=q.lU(b) +r=p[s] +if(r==null)p[s]=[q.Po(b)] +else{if(q.kI(r,b)>=0)return!1 +r.push(q.Po(b))}return!0}, +F(a,b){var s=this +if(typeof b=="string"&&b!=="__proto__")return s.u8(s.b,b) +else if(typeof b=="number"&&(b&1073741823)===b)return s.u8(s.c,b) +else return s.rQ(0,b)}, +rQ(a,b){var s,r,q,p,o=this,n=o.d +if(n==null)return!1 +s=o.lU(b) +r=n[s] +q=o.kI(r,b) +if(q<0)return!1 +p=r.splice(q,1)[0] +if(0===r.length)delete n[s] +o.a_I(p) +return!0}, +a0E(a,b){var s,r,q,p,o=this,n=o.e +for(;n!=null;n=r){s=n.a +r=n.b +q=o.r +p=a.$1(s) +if(q!==o.r)throw A.c(A.cB(o)) +if(!0===p)o.F(0,s)}}, +ab(a){var s=this +if(s.a>0){s.b=s.c=s.d=s.e=s.f=null +s.a=0 +s.Pn()}}, +CL(a,b){if(a[b]!=null)return!1 +a[b]=this.Po(b) +return!0}, +u8(a,b){var s +if(a==null)return!1 +s=a[b] +if(s==null)return!1 +this.a_I(s) +delete a[b] +return!0}, +Pn(){this.r=this.r+1&1073741823}, +Po(a){var s,r=this,q=new A.b63(a) +if(r.e==null)r.e=r.f=q +else{s=r.f +s.toString +q.c=s +r.f=s.b=q}++r.a +r.Pn() +return q}, +a_I(a){var s=this,r=a.c,q=a.b +if(r==null)s.e=q +else r.b=q +if(q==null)s.f=r +else q.c=r;--s.a +s.Pn()}, +lU(a){return J.T(a)&1073741823}, +kI(a,b){var s,r +if(a==null)return-1 +s=a.length +for(r=0;r"))}, +gt(a){return J.aZ(this.a)}, +i(a,b){return J.rR(this.a,b)}} +A.aEb.prototype={ +$2(a,b){this.a.p(0,this.b.a(a),this.c.a(b))}, +$S:58} +A.aHc.prototype={ +$2(a,b){this.a.p(0,this.b.a(a),this.c.a(b))}, +$S:58} +A.jF.prototype={ +F(a,b){if(b.i6$!==this)return!1 +this.Sv(b) +return!0}, +n(a,b){return t.or.b(b)&&this===b.i6$}, +gaj(a){var s=this +return new A.G9(s,s.a,s.c,s.$ti.h("G9<1>"))}, +gt(a){return this.b}, +ab(a){var s,r,q,p=this;++p.a +if(p.b===0)return +s=p.c +s.toString +r=s +do{q=r.hy$ +q.toString +r.hy$=r.i7$=r.i6$=null +if(q!==s){r=q +continue}else break}while(!0) +p.c=null +p.b=0}, +gN(a){var s +if(this.b===0)throw A.c(A.R("No such element")) +s=this.c +s.toString +return s}, +ga1(a){var s +if(this.b===0)throw A.c(A.R("No such element")) +s=this.c.i7$ +s.toString +return s}, +gaI(a){var s=this.b +if(s===0)throw A.c(A.R("No such element")) +if(s>1)throw A.c(A.R("Too many elements")) +s=this.c +s.toString +return s}, +af(a,b){var s,r,q=this,p=q.a +if(q.b===0)return +s=q.c +s.toString +r=s +do{b.$1(r) +if(p!==q.a)throw A.c(A.cB(q)) +s=r.hy$ +s.toString +if(s!==q.c){r=s +continue}else break}while(!0)}, +gai(a){return this.b===0}, +yO(a,b,c){var s,r,q=this +if(b.i6$!=null)throw A.c(A.R("LinkedListEntry is already in a LinkedList"));++q.a +b.i6$=q +s=q.b +if(s===0){b.hy$=b +q.c=b.i7$=b +q.b=s+1 +return}r=a.i7$ +r.toString +b.i7$=r +b.hy$=a +a.i7$=r.hy$=b +if(c&&a==q.c)q.c=b +q.b=s+1}, +Sv(a){var s,r,q=this;++q.a +s=a.hy$ +s.i7$=a.i7$ +a.i7$.hy$=s +r=--q.b +a.i6$=a.hy$=a.i7$=null +if(r===0)q.c=null +else if(a===q.c)q.c=s}} +A.G9.prototype={ +gH(a){var s=this.c +return s==null?this.$ti.c.a(s):s}, +u(){var s=this,r=s.a +if(s.b!==r.a)throw A.c(A.cB(s)) +if(r.b!==0)r=s.e&&s.d===r.gN(r) +else r=!0 +if(r){s.c=null +return!1}s.e=!0 +r=s.d +s.c=r +s.d=r.hy$ +return!0}} +A.j1.prototype={ +gnh(a){var s=this.i6$ +if(s==null||s.gN(s)===this.hy$)return null +return this.hy$}, +gBj(){var s=this.i6$ +if(s==null||this===s.gN(s))return null +return this.i7$}} +A.ac.prototype={ +gaj(a){return new A.bZ(a,this.gt(a),A.ch(a).h("bZ"))}, +ct(a,b){return this.i(a,b)}, +af(a,b){var s,r=this.gt(a) +for(s=0;s1)throw A.c(A.mQ()) +return this.i(a,0)}, +n(a,b){var s,r=this.gt(a) +for(s=0;s=0;--s){r=this.i(a,s) +if(b.$1(r))return r +if(q!==this.gt(a))throw A.c(A.cB(a))}if(c!=null)return c.$0() +throw A.c(A.cf())}, +Cp(a,b,c){var s,r,q,p=this.gt(a),o=A.b4("match") +for(s=!1,r=0;r"))}, +Nn(a,b){return new A.es(a,b.h("es<0>"))}, +ig(a,b,c){return new A.ad(a,b,A.ch(a).h("@").S(c).h("ad<1,2>"))}, +lL(a,b){return A.fE(a,b,null,A.ch(a).h("ac.E"))}, +q2(a,b){return A.fE(a,0,A.fj(b,"count",t.S),A.ch(a).h("ac.E"))}, +hl(a,b){var s,r,q,p,o=this +if(o.gai(a)){s=A.ch(a).h("ac.E") +return b?J.Cf(0,s):J.a2e(0,s)}r=o.i(a,0) +q=A.aT(o.gt(a),r,b,A.ch(a).h("ac.E")) +for(p=1;p").S(b).h("ik<1,2>"))}, +hj(a){var s,r=this +if(r.gt(a)===0)throw A.c(A.cf()) +s=r.i(a,r.gt(a)-1) +r.st(a,r.gt(a)-1) +return s}, +fz(a,b){A.bsb(a,b==null?A.bR4():b)}, +T(a,b){var s=A.aa(a,!0,A.ch(a).h("ac.E")) +B.b.I(s,b) +return s}, +d2(a,b,c){var s=this.gt(a) +if(c==null)c=s +A.dZ(b,c,s,null,null) +return A.hz(this.C3(a,b,c),!0,A.ch(a).h("ac.E"))}, +fs(a,b){return this.d2(a,b,null)}, +C3(a,b,c){A.dZ(b,c,this.gt(a),null,null) +return A.fE(a,b,c,A.ch(a).h("ac.E"))}, +q0(a,b,c){A.dZ(b,c,this.gt(a),null,null) +if(c>b)this.a_F(a,b,c)}, +aHS(a,b,c,d){var s +A.dZ(b,c,this.gt(a),null,null) +for(s=b;s").b(d)){r=e +q=d}else{p=J.aqU(d,e) +q=p.hl(p,!1) +r=0}p=J.ak(q) +if(r+s>p.gt(q))throw A.c(A.bqg()) +if(r=0;--o)this.p(a,b+o,p.i(q,r+o)) +else for(o=0;o"))}, +tu(a,b,c,d){var s,r,q,p,o,n=A.F(c,d) +for(s=J.ao(this.gcP(a)),r=A.ch(a).h("bg.V");s.u();){q=s.gH(s) +p=this.i(a,q) +o=b.$2(q,p==null?r.a(p):p) +n.p(0,o.a,o.b)}return n}, +a6w(a,b){var s,r +for(s=b.gaj(b);s.u();){r=s.gH(s) +this.p(a,r.a,r.b)}}, +G9(a,b){var s,r,q,p,o=A.ch(a),n=A.a([],o.h("G")) +for(s=J.ao(this.gcP(a)),o=o.h("bg.V");s.u();){r=s.gH(s) +q=this.i(a,r) +if(b.$2(r,q==null?o.a(q):q))n.push(r)}for(o=n.length,p=0;p").S(s.h("bg.V")).h("RL<1,2>"))}, +j(a){return A.aIq(a)}, +$ia6:1} +A.aIo.prototype={ +$2(a,b){J.ie(this.a,a,b)}, +$S(){return A.ch(this.a).h("~(bg.K,bg.V)")}} +A.aIp.prototype={ +$1(a){var s=this.a,r=J.b3(s,a) +if(r==null)r=A.ch(s).h("bg.V").a(r) +s=A.ch(s) +return new A.aU(a,r,s.h("@").S(s.h("bg.V")).h("aU<1,2>"))}, +$S(){return A.ch(this.a).h("aU(bg.K)")}} +A.aIr.prototype={ +$2(a,b){var s,r=this.a +if(!r.a)this.b.a+=", " +r.a=!1 +r=this.b +s=r.a+=A.h(a) +r.a=s+": " +r.a+=A.h(b)}, +$S:85} +A.RL.prototype={ +gt(a){return J.aZ(this.a)}, +gai(a){return J.ce(this.a)}, +gdn(a){return J.jp(this.a)}, +gN(a){var s=this.a,r=J.bK(s) +s=r.i(s,J.jo(r.gcP(s))) +return s==null?this.$ti.z[1].a(s):s}, +gaI(a){var s=this.a,r=J.bK(s) +s=r.i(s,J.Wq(r.gcP(s))) +return s==null?this.$ti.z[1].a(s):s}, +ga1(a){var s=this.a,r=J.bK(s) +s=r.i(s,J.rT(r.gcP(s))) +return s==null?this.$ti.z[1].a(s):s}, +gaj(a){var s=this.a,r=this.$ti +return new A.ahZ(J.ao(J.jq(s)),s,r.h("@<1>").S(r.z[1]).h("ahZ<1,2>"))}} +A.ahZ.prototype={ +u(){var s=this,r=s.a +if(r.u()){s.c=J.b3(s.b,r.gH(r)) +return!0}s.c=null +return!1}, +gH(a){var s=this.c +return s==null?this.$ti.z[1].a(s):s}} +A.H2.prototype={ +p(a,b,c){throw A.c(A.a7("Cannot modify unmodifiable map"))}, +I(a,b){throw A.c(A.a7("Cannot modify unmodifiable map"))}, +F(a,b){throw A.c(A.a7("Cannot modify unmodifiable map"))}, +cJ(a,b,c){throw A.c(A.a7("Cannot modify unmodifiable map"))}} +A.xH.prototype={ +uC(a,b,c){return J.aqT(this.a,b,c)}, +i(a,b){return J.b3(this.a,b)}, +p(a,b,c){J.ie(this.a,b,c)}, +I(a,b){J.nU(this.a,b)}, +cJ(a,b,c){return J.Hs(this.a,b,c)}, +ao(a,b){return J.jn(this.a,b)}, +af(a,b){J.f9(this.a,b)}, +gai(a){return J.ce(this.a)}, +gdn(a){return J.jp(this.a)}, +gt(a){return J.aZ(this.a)}, +gcP(a){return J.jq(this.a)}, +F(a,b){return J.pA(this.a,b)}, +j(a){return J.cI(this.a)}, +gbw(a){return J.bhv(this.a)}, +gdW(a){return J.Wp(this.a)}, +tu(a,b,c,d){return J.Wr(this.a,b,c,d)}, +$ia6:1} +A.md.prototype={ +uC(a,b,c){return new A.md(J.aqT(this.a,b,c),b.h("@<0>").S(c).h("md<1,2>"))}} +A.Qz.prototype={ +R4(a,b){var s=this +s.b=b +s.a=a +if(a!=null)a.b=s +if(b!=null)b.a=s}, +aCQ(){var s,r=this,q=r.a +if(q!=null)q.b=r.b +s=r.b +if(s!=null)s.a=q +r.a=r.b=null}} +A.rf.prototype={ +RM(a){var s,r,q=this +q.c=null +s=q.a +if(s!=null)s.b=q.b +r=q.b +if(r!=null)r.a=s +q.a=q.b=null +return q.d}, +er(a){var s=this,r=s.c +if(r!=null)--r.b +s.c=null +s.aCQ() +return s.d}, +HG(){return this}, +$ibpc:1, +gEF(){return this.d}} +A.zD.prototype={ +HG(){return null}, +RM(a){throw A.c(A.cf())}, +gEF(){throw A.c(A.cf())}} +A.wz.prototype={ +jZ(a,b){return new A.pK(this,this.$ti.h("@<1>").S(b).h("pK<1,2>"))}, +gt(a){return this.b}, +K_(a){var s=this.a +new A.rf(this,a,s.$ti.h("rf<1>")).R4(s,s.b);++this.b}, +G(a,b){var s=this.a +new A.rf(this,b,s.$ti.h("rf<1>")).R4(s.a,s);++this.b}, +hj(a){var s=this.a.a.RM(0);--this.b +return s}, +gN(a){return this.a.b.gEF()}, +ga1(a){return this.a.a.gEF()}, +gaI(a){var s=this.a,r=s.b +if(r==s.a)return r.gEF() +throw A.c(A.mQ())}, +gai(a){var s=this.a +return s.b===s}, +gaj(a){return new A.afr(this,this.a.b,this.$ti.h("afr<1>"))}, +j(a){return A.Ce(this,"{","}")}, +$ian:1} +A.afr.prototype={ +u(){var s=this,r=s.b,q=r==null?null:r.HG() +if(q==null){s.a=s.b=s.c=null +return!1}r=s.a +if(r!=q.c)throw A.c(A.cB(r)) +s.c=q.d +s.b=q.b +return!0}, +gH(a){var s=this.c +return s==null?this.$ti.c.a(s):s}} +A.KQ.prototype={ +jZ(a,b){return new A.pK(this,this.$ti.h("@<1>").S(b).h("pK<1,2>"))}, +gaj(a){var s=this +return new A.ahD(s,s.c,s.d,s.b,s.$ti.h("ahD<1>"))}, +af(a,b){var s,r,q,p=this,o=p.d +for(s=p.b,r=p.$ti.c;s!==p.c;s=(s+1&p.a.length-1)>>>0){q=p.a[s] +b.$1(q==null?r.a(q):q) +if(o!==p.d)A.q(A.cB(p))}}, +gai(a){return this.b===this.c}, +gt(a){return(this.c-this.b&this.a.length-1)>>>0}, +gN(a){var s=this,r=s.b +if(r===s.c)throw A.c(A.cf()) +r=s.a[r] +return r==null?s.$ti.c.a(r):r}, +ga1(a){var s=this,r=s.b,q=s.c +if(r===q)throw A.c(A.cf()) +r=s.a +r=r[(q-1&r.length-1)>>>0] +return r==null?s.$ti.c.a(r):r}, +gaI(a){var s,r=this +if(r.b===r.c)throw A.c(A.cf()) +if(r.gt(r)>1)throw A.c(A.mQ()) +s=r.a[r.b] +return s==null?r.$ti.c.a(s):s}, +ct(a,b){var s,r=this +A.biS(b,r.gt(r),r,null,null) +s=r.a +s=s[(r.b+b&s.length-1)>>>0] +return s==null?r.$ti.c.a(s):s}, +hl(a,b){var s,r,q,p,o,n,m=this,l=m.a.length-1,k=(m.c-m.b&l)>>>0 +if(k===0){s=m.$ti.c +return b?J.Cf(0,s):J.a2e(0,s)}s=m.$ti.c +r=A.aT(k,m.gN(m),b,s) +for(q=m.a,p=m.b,o=0;o>>0] +r[o]=n==null?s.a(n):n}return r}, +fL(a){return this.hl(a,!0)}, +I(a,b){var s,r,q,p,o,n,m,l,k=this,j=k.$ti +if(j.h("e<1>").b(b)){s=b.length +r=k.gt(k) +q=r+s +p=k.a +o=p.length +if(q>=o){n=A.aT(A.bqs(q+(q>>>1)),null,!1,j.h("1?")) +k.c=k.aDW(n) +k.a=n +k.b=0 +B.b.cA(n,r,q,b,0) +k.c+=s}else{j=k.c +m=o-j +if(s>>0)s[p]=null +q.b=q.c=0;++q.d}}, +j(a){return A.Ce(this,"{","}")}, +K_(a){var s=this,r=s.b,q=s.a +r=s.b=(r-1&q.length-1)>>>0 +q[r]=a +if(r===s.c)s.a1u();++s.d}, +Bo(){var s,r,q=this,p=q.b +if(p===q.c)throw A.c(A.cf());++q.d +s=q.a +r=s[p] +if(r==null)r=q.$ti.c.a(r) +s[p]=null +q.b=(p+1&s.length-1)>>>0 +return r}, +hj(a){var s,r=this,q=r.b,p=r.c +if(q===p)throw A.c(A.cf());++r.d +q=r.a +p=r.c=(p-1&q.length-1)>>>0 +s=q[p] +if(s==null)s=r.$ti.c.a(s) +q[p]=null +return s}, +iP(a,b){var s=this,r=s.a,q=s.c +r[q]=b +r=(q+1&r.length-1)>>>0 +s.c=r +if(s.b===r)s.a1u();++s.d}, +a1u(){var s=this,r=A.aT(s.a.length*2,null,!1,s.$ti.h("1?")),q=s.a,p=s.b,o=q.length-p +B.b.cA(r,0,o,q,p) +B.b.cA(r,o,o+s.b,s.a,0) +s.b=0 +s.c=s.a.length +s.a=r}, +aDW(a){var s,r,q=this,p=q.b,o=q.c,n=q.a +if(p<=o){s=o-p +B.b.cA(a,0,s,n,p) +return s}else{r=n.length-p +B.b.cA(a,0,r,n,p) +B.b.cA(a,r,r+q.c,q.a,0) +return q.c+r}}} +A.ahD.prototype={ +gH(a){var s=this.e +return s==null?this.$ti.c.a(s):s}, +u(){var s,r=this,q=r.a +if(r.c!==q.d)A.q(A.cB(q)) +s=r.d +if(s===r.b){r.e=null +return!1}q=q.a +r.e=q[s] +r.d=(s+1&q.length-1)>>>0 +return!0}} +A.m4.prototype={ +gai(a){return this.gt(this)===0}, +gdn(a){return this.gt(this)!==0}, +jZ(a,b){return A.aSz(this,null,A.k(this).c,b)}, +I(a,b){var s +for(s=J.ao(b);s.u();)this.G(0,s.gH(s))}, +ack(a){var s,r +for(s=a.length,r=0;r").S(c).h("pV<1,2>"))}, +gaI(a){var s,r=this +if(r.gt(r)>1)throw A.c(A.mQ()) +s=r.gaj(r) +if(!s.u())throw A.c(A.cf()) +return s.gH(s)}, +j(a){return A.Ce(this,"{","}")}, +jm(a,b){return new A.be(this,b,A.k(this).h("be<1>"))}, +af(a,b){var s +for(s=this.gaj(this);s.u();)b.$1(s.gH(s))}, +cq(a,b){var s,r,q=this.gaj(this) +if(!q.u())return"" +s=J.cI(q.gH(q)) +if(!q.u())return s +if(b.length===0){r=s +do r+=A.h(q.gH(q)) +while(q.u())}else{r=s +do r=r+b+A.h(q.gH(q)) +while(q.u())}return r.charCodeAt(0)==0?r:r}, +ed(a,b){var s +for(s=this.gaj(this);s.u();)if(b.$1(s.gH(s)))return!0 +return!1}, +q2(a,b){return A.aX_(this,b,A.k(this).c)}, +lL(a,b){return A.bjK(this,b,A.k(this).c)}, +gN(a){var s=this.gaj(this) +if(!s.u())throw A.c(A.cf()) +return s.gH(s)}, +ga1(a){var s,r=this.gaj(this) +if(!r.u())throw A.c(A.cf()) +do s=r.gH(r) +while(r.u()) +return s}, +pP(a,b,c){var s,r,q=this.gaj(this) +do{if(!q.u()){if(c!=null)return c.$0() +throw A.c(A.cf())}s=q.gH(q)}while(!b.$1(s)) +for(;q.u();){r=q.gH(q) +if(b.$1(r))s=r}return s}, +ct(a,b){var s,r +A.fA(b,"index") +s=this.gaj(this) +for(r=b;s.u();){if(r===0)return s.gH(s);--r}throw A.c(A.f4(b,b-r,this,null,"index"))}, +$ian:1, +$iz:1, +$ibz:1} +A.GH.prototype={ +jZ(a,b){return A.aSz(this,this.gRp(),A.k(this).c,b)}, +wR(a){var s,r,q=this.yU() +for(s=this.gaj(this);s.u();){r=s.gH(s) +if(!a.n(0,r))q.G(0,r)}return q}, +Fh(a,b){var s,r,q=this.yU() +for(s=this.gaj(this);s.u();){r=s.gH(s) +if(b.n(0,r))q.G(0,r)}return q}, +kp(a){var s=this.yU() +s.I(0,this) +return s}} +A.am6.prototype={} +A.k3.prototype={} +A.jh.prototype={ +azn(a){var s=this,r=s.$ti +r=new A.jh(a,s.a,r.h("@<1>").S(r.z[1]).h("jh<1,2>")) +r.b=s.b +r.c=s.c +return r}} +A.am5.prototype={ +po(a){var s,r,q,p,o,n,m,l,k,j,i,h=this,g=null,f=h.ghq() +if(f==null){h.Ps(a,a) +return-1}s=h.gPr() +for(r=g,q=f,p=r,o=p,n=o,m=n;!0;){r=s.$2(q.a,a) +if(r>0){l=q.b +if(l==null)break +r=s.$2(l.a,a) +if(r>0){q.b=l.c +l.c=q +k=l.b +if(k==null){q=l +break}q=l +l=k}if(m==null)n=q +else m.b=q +m=q +q=l}else{if(r<0){j=q.c +if(j==null)break +r=s.$2(j.a,a) +if(r<0){q.c=j.b +j.b=q +i=j.c +if(i==null){q=j +break}q=j +j=i}if(o==null)p=q +else o.c=q}else break +o=q +q=j}}if(o!=null){o.c=q.b +q.b=p}if(m!=null){m.b=q.c +q.c=n}if(h.ghq()!==q){h.shq(q);++h.c}return r}, +aBm(a){var s,r,q=a.b +for(s=a;q!=null;s=q,q=r){s.b=q.c +q.c=s +r=q.b}return s}, +a4A(a){var s,r,q=a.c +for(s=a;q!=null;s=q,q=r){s.c=q.b +q.b=s +r=q.c}return s}, +rQ(a,b){var s,r,q,p,o=this +if(o.ghq()==null)return null +if(o.po(b)!==0)return null +s=o.ghq() +r=s.b;--o.a +q=s.c +if(r==null)o.shq(q) +else{p=o.a4A(r) +p.c=q +o.shq(p)}++o.b +return s}, +OP(a,b){var s,r=this;++r.a;++r.b +s=r.ghq() +if(s==null){r.shq(a) +return}if(b<0){a.b=s +a.c=s.c +s.c=null}else{a.c=s +a.b=s.b +s.b=null}r.shq(a)}, +ga0I(){var s=this,r=s.ghq() +if(r==null)return null +s.shq(s.aBm(r)) +return s.ghq()}, +ga2e(){var s=this,r=s.ghq() +if(r==null)return null +s.shq(s.a4A(r)) +return s.ghq()}, +yA(a){return this.SI(a)&&this.po(a)===0}, +Ps(a,b){return this.gPr().$2(a,b)}, +SI(a){return this.gaPG().$1(a)}} +A.O4.prototype={ +i(a,b){var s=this +if(!s.f.$1(b))return null +if(s.d!=null)if(s.po(b)===0)return s.d.d +return null}, +F(a,b){var s +if(!this.f.$1(b))return null +s=this.rQ(0,b) +if(s!=null)return s.d +return null}, +p(a,b,c){var s,r=this,q=r.po(b) +if(q===0){r.d=r.d.azn(c);++r.c +return}s=r.$ti +r.OP(new A.jh(c,b,s.h("@<1>").S(s.z[1]).h("jh<1,2>")),q)}, +cJ(a,b,c){var s,r,q,p,o=this,n=o.po(b) +if(n===0)return o.d.d +s=o.b +r=o.c +q=c.$0() +if(s!==o.b)throw A.c(A.cB(o)) +if(r!==o.c)n=o.po(b) +p=o.$ti +o.OP(new A.jh(q,b,p.h("@<1>").S(p.z[1]).h("jh<1,2>")),n) +return q}, +I(a,b){J.f9(b,new A.aVJ(this))}, +gai(a){return this.d==null}, +gdn(a){return this.d!=null}, +af(a,b){var s,r,q=this.$ti +q=q.h("@<1>").S(q.z[1]) +s=new A.zT(this,A.a([],q.h("G>")),this.c,q.h("zT<1,2>")) +for(;s.u();){r=s.gH(s) +b.$2(r.a,r.b)}}, +gt(a){return this.a}, +ao(a,b){return this.yA(b)}, +gcP(a){var s=this.$ti +return new A.rq(this,s.h("@<1>").S(s.h("jh<1,2>")).h("rq<1,2>"))}, +gbw(a){var s=this.$ti +return new A.zU(this,s.h("@<1>").S(s.z[1]).h("zU<1,2>"))}, +gdW(a){var s=this.$ti +return new A.Tt(this,s.h("@<1>").S(s.z[1]).h("Tt<1,2>"))}, +aI0(){if(this.d==null)return null +return this.ga0I().a}, +ab1(){if(this.d==null)return null +return this.ga2e().a}, +aKJ(a){var s,r,q,p=this +if(p.d==null)return null +if(p.po(a)<0)return p.d.a +s=p.d.b +if(s==null)return null +r=s.c +for(;r!=null;s=r,r=q)q=r.c +return s.a}, +aI1(a){var s,r,q,p=this +if(p.d==null)return null +if(p.po(a)>0)return p.d.a +s=p.d.c +if(s==null)return null +r=s.b +for(;r!=null;s=r,r=q)q=r.b +return s.a}, +$ia6:1, +Ps(a,b){return this.e.$2(a,b)}, +SI(a){return this.f.$1(a)}, +ghq(){return this.d}, +gPr(){return this.e}, +shq(a){return this.d=a}} +A.aVK.prototype={ +$1(a){return this.a.b(a)}, +$S:87} +A.aVJ.prototype={ +$2(a,b){this.a.p(0,a,b)}, +$S(){return this.a.$ti.h("~(1,2)")}} +A.pm.prototype={ +gH(a){var s=this.b +if(s.length===0){A.k(this).h("pm.T").a(null) +return null}return this.Ql(B.b.ga1(s))}, +az_(a){var s,r,q=this.b +B.b.ab(q) +s=this.a +s.po(a) +r=s.ghq() +r.toString +q.push(r) +this.d=s.c}, +u(){var s,r,q=this,p=q.c,o=q.a,n=o.b +if(p!==n){if(p==null){q.c=n +s=o.ghq() +for(p=q.b;s!=null;){p.push(s) +s=s.b}return p.length!==0}throw A.c(A.cB(o))}p=q.b +if(p.length===0)return!1 +if(q.d!==o.c)q.az_(B.b.ga1(p).a) +s=B.b.ga1(p) +r=s.c +if(r!=null){for(;r!=null;){p.push(r) +r=r.b}return!0}p.pop() +while(!0){if(!(p.length!==0&&B.b.ga1(p).c===s))break +s=p.pop()}return p.length!==0}} +A.rq.prototype={ +gt(a){return this.a.a}, +gai(a){return this.a.a===0}, +gaj(a){var s=this.a,r=this.$ti +return new A.rr(s,A.a([],r.h("G<2>")),s.c,r.h("@<1>").S(r.z[1]).h("rr<1,2>"))}, +n(a,b){return this.a.yA(b)}, +kp(a){var s=this.a,r=this.$ti,q=A.a9u(s.e,s.f,r.c) +q.a=s.a +q.d=q.a0_(s.d,r.z[1]) +return q}} +A.zU.prototype={ +gt(a){return this.a.a}, +gai(a){return this.a.a===0}, +gaj(a){var s=this.a,r=this.$ti +r=r.h("@<1>").S(r.z[1]) +return new A.Tx(s,A.a([],r.h("G>")),s.c,r.h("Tx<1,2>"))}} +A.Tt.prototype={ +gt(a){return this.a.a}, +gai(a){return this.a.a===0}, +gaj(a){var s=this.a,r=this.$ti +r=r.h("@<1>").S(r.z[1]) +return new A.zT(s,A.a([],r.h("G>")),s.c,r.h("zT<1,2>"))}} +A.rr.prototype={ +Ql(a){return a.a}} +A.Tx.prototype={ +Ql(a){return a.d}} +A.zT.prototype={ +Ql(a){var s=this.$ti +return new A.aU(a.a,a.d,s.h("@<1>").S(s.z[1]).h("aU<1,2>"))}} +A.Em.prototype={ +a2I(a){return A.a9u(new A.aVM(this,a),this.f,a)}, +yU(){return this.a2I(t.z)}, +jZ(a,b){return A.aSz(this,this.gawD(),this.$ti.c,b)}, +gaj(a){var s=this.$ti +return new A.rr(this,A.a([],s.h("G>")),this.c,s.h("@<1>").S(s.h("k3<1>")).h("rr<1,2>"))}, +gt(a){return this.a}, +gai(a){return this.d==null}, +gdn(a){return this.d!=null}, +gN(a){if(this.a===0)throw A.c(A.cf()) +return this.ga0I().a}, +ga1(a){if(this.a===0)throw A.c(A.cf()) +return this.ga2e().a}, +gaI(a){var s=this.a +if(s===0)throw A.c(A.cf()) +if(s>1)throw A.c(A.mQ()) +return this.d.a}, +n(a,b){return this.f.$1(b)&&this.po(this.$ti.c.a(b))===0}, +G(a,b){return this.iP(0,b)}, +iP(a,b){var s=this.po(b) +if(s===0)return!1 +this.OP(new A.k3(b,this.$ti.h("k3<1>")),s) +return!0}, +F(a,b){if(!this.f.$1(b))return!1 +return this.rQ(0,this.$ti.c.a(b))!=null}, +I(a,b){var s +for(s=J.ao(b);s.u();)this.iP(0,s.gH(s))}, +Fh(a,b){var s,r=this,q=r.$ti,p=A.a9u(r.e,r.f,q.c) +for(q=new A.rr(r,A.a([],q.h("G>")),r.c,q.h("@<1>").S(q.h("k3<1>")).h("rr<1,2>"));q.u();){s=q.gH(q) +if(b.n(0,s))p.iP(0,s)}return p}, +a0_(a,b){var s +if(a==null)return null +s=new A.k3(a.a,this.$ti.h("k3<1>")) +new A.aVL(this,b).$2(a,s) +return s}, +kp(a){var s=this,r=s.$ti,q=A.a9u(s.e,s.f,r.c) +q.a=s.a +q.d=s.a0_(s.d,r.h("k3<1>")) +return q}, +j(a){return A.Ce(this,"{","}")}, +$ian:1, +$ibz:1, +Ps(a,b){return this.e.$2(a,b)}, +SI(a){return this.f.$1(a)}, +ghq(){return this.d}, +gPr(){return this.e}, +shq(a){return this.d=a}} +A.aVN.prototype={ +$1(a){return this.a.b(a)}, +$S:87} +A.aVM.prototype={ +$2(a,b){var s=this.a,r=s.$ti.c +r.a(a) +r.a(b) +return s.e.$2(a,b)}, +$S(){return this.b.h("m(0,0)")}} +A.aVL.prototype={ +$2(a,b){var s,r,q,p,o,n=this.a.$ti.h("k3<1>") +do{s=a.b +r=a.c +if(s!=null){q=new A.k3(s.a,n) +b.b=q +this.$2(s,q)}p=r!=null +if(p){o=new A.k3(r.a,n) +b.c=o +b=o +a=r}}while(p)}, +$S(){return this.a.$ti.S(this.b).h("~(1,k3<2>)")}} +A.Tu.prototype={} +A.Tv.prototype={} +A.Tw.prototype={} +A.Ud.prototype={} +A.bdl.prototype={ +$1(a){var s,r,q,p,o,n,m=this +if(a==null||typeof a!="object")return a +if(Object.getPrototypeOf(a)===Array.prototype){for(s=m.a,r=0;r0}, +gcP(a){var s +if(this.b==null){s=this.c +return new A.c9(s,A.k(s).h("c9<1>"))}return new A.ah7(this)}, +gbw(a){var s,r=this +if(r.b==null){s=r.c +return s.gbw(s)}return A.mV(r.w3(),new A.b5M(r),t.N,t.z)}, +p(a,b,c){var s,r,q=this +if(q.b==null)q.c.p(0,b,c) +else if(q.ao(0,b)){s=q.b +s[b]=c +r=q.a +if(r==null?s!=null:r!==s)r[b]=null}else q.a6a().p(0,b,c)}, +I(a,b){J.f9(b,new A.b5L(this))}, +ao(a,b){if(this.b==null)return this.c.ao(0,b) +if(typeof b!="string")return!1 +return Object.prototype.hasOwnProperty.call(this.a,b)}, +cJ(a,b,c){var s +if(this.ao(0,b))return this.i(0,b) +s=c.$0() +this.p(0,b,s) +return s}, +F(a,b){if(this.b!=null&&!this.ao(0,b))return null +return this.a6a().F(0,b)}, +af(a,b){var s,r,q,p,o=this +if(o.b==null)return o.c.af(0,b) +s=o.w3() +for(r=0;r"))}return s}, +n(a,b){return this.a.ao(0,b)}} +A.RC.prototype={ +ad(a){var s,r,q=this +q.aka(0) +s=q.a +r=s.a +s.a="" +s=q.c +s.G(0,A.apY(r.charCodeAt(0)==0?r:r,q.b)) +s.ad(0)}} +A.aZI.prototype={ +$0(){var s,r +try{s=new TextDecoder("utf-8",{fatal:true}) +return s}catch(r){}return null}, +$S:308} +A.aZH.prototype={ +$0(){var s,r +try{s=new TextDecoder("utf-8",{fatal:false}) +return s}catch(r){}return null}, +$S:308} +A.X_.prototype={ +l2(a){return B.pV.cN(a)}, +hu(a,b){var s=B.Ly.cN(b) +return s}, +gfY(){return B.pV}} +A.anF.prototype={ +cN(a){var s,r,q,p=A.dZ(0,null,a.length,null,null)-0,o=new Uint8Array(p) +for(s=~this.a,r=0;r>>0!==0){if(!this.a)throw A.c(A.cJ("Invalid value in input: "+A.h(q),p,p)) +return this.aoz(a,0,n)}}return A.ja(a,0,n)}, +aoz(a,b,c){var s,r,q,p,o +for(s=~this.b,r=J.ak(a),q=b,p="";q>>0!==0?65533:o)}return p.charCodeAt(0)==0?p:p}} +A.X0.prototype={ +kD(a){var s=t.NC.b(a)?a:new A.zW(a) +if(this.a)return new A.b3c(s.Kc(!1)) +else return new A.baC(s)}} +A.b3c.prototype={ +ad(a){this.a.ad(0)}, +G(a,b){this.fD(b,0,J.aZ(b),!1)}, +fD(a,b,c,d){var s,r,q=J.ak(a) +A.dZ(b,c,q.gt(a),null,null) +for(s=this.a,r=b;r>>0!==0){if(r>b)s.fD(a,b,r,!1) +s.G(0,B.Ws) +b=r+1}if(b>>0!==0)throw A.c(A.cJ("Source contains non-ASCII bytes.",null,null)) +this.a.G(0,A.ja(b,0,null))}, +fD(a,b,c,d){var s=a.length +A.dZ(b,c,s,null,null) +if(b=0){i=u.U.charCodeAt(h) +if(i===k)continue +k=i}else{if(h===-1){if(o<0){g=p==null?c:p.a.length +if(g==null)g=0 +o=g+(r-q) +n=r}++m +if(k===61)continue}k=i}if(h!==-2){if(p==null){p=new A.cV("") +g=p}else g=p +g.a+=B.c.U(a0,q,r) +g.a+=A.ep(k) +q=l +continue}}throw A.c(A.cJ("Invalid base64 data",a0,r))}if(p!=null){g=p.a+=B.c.U(a0,q,a2) +f=g.length +if(o>=0)A.bo1(a0,n,a2,o,m,f) +else{e=B.f.aH(f-1,4)+1 +if(e===1)throw A.c(A.cJ(b,a0,a2)) +for(;e<4;){g+="=" +p.a=g;++e}}g=p.a +return B.c.iG(a0,a1,a2,g.charCodeAt(0)==0?g:g)}d=a2-a1 +if(o>=0)A.bo1(a0,n,a2,o,m,d) +else{e=B.f.aH(d,4) +if(e===1)throw A.c(A.cJ(b,a0,a2)) +if(e>1)a0=B.c.iG(a0,a2,a2,e===2?"==":"=")}return a0}} +A.Xq.prototype={ +cN(a){var s=J.ak(a) +if(s.gai(a))return"" +s=new A.PM(u.U).Uv(a,0,s.gt(a),!0) +s.toString +return A.ja(s,0,null)}, +kD(a){var s,r=u.U +if(t.NC.b(a)){s=a.Kc(!1) +return new A.bcv(s,new A.PM(r))}return new A.b0f(a,new A.b0R(r))}} +A.PM.prototype={ +a8c(a,b){return new Uint8Array(b)}, +Uv(a,b,c,d){var s,r=this,q=(r.a&3)+(c-b),p=B.f.cY(q,3),o=p*4 +if(d&&q-p*3>0)o+=4 +s=r.a8c(0,o) +r.a=A.bM4(r.b,a,b,c,d,s,0,r.a) +if(o>0)return s +return null}} +A.b0R.prototype={ +a8c(a,b){var s=this.c +if(s==null||s.lengthp.length-o){p=q.b +s=n.gt(b)+p.length-1 +s|=B.f.dz(s,1) +s|=s>>>2 +s|=s>>>4 +s|=s>>>8 +r=new Uint8Array((((s|s>>>16)>>>0)+1)*2) +p=q.b +B.L.di(r,0,p.length,p) +q.b=r}p=q.b +o=q.c +B.L.di(p,o,o+n.gt(b),b) +q.c=q.c+n.gt(b)}, +ad(a){this.a.$1(B.L.d2(this.b,0,this.c))}} +A.Y9.prototype={} +A.alD.prototype={ +G(a,b){this.b.push(b)}, +ad(a){this.a.$1(this.b)}} +A.mH.prototype={ +l2(a){return this.gfY().cN(a)}} +A.cr.prototype={ +aIm(a,b){var s=A.k(this) +return new A.R5(this,a,s.h("@").S(s.h("cr.T")).S(b).h("R5<1,2,3>"))}, +kD(a){throw A.c(A.a7("This converter does not support chunked conversions: "+this.j(0)))}} +A.R5.prototype={ +cN(a){return this.b.cN(this.a.cN(a))}, +kD(a){return this.a.kD(this.b.kD(a))}} +A.mM.prototype={} +A.Ci.prototype={ +j(a){var s=A.wF(this.a) +return(this.b!=null?"Converting object to an encodable object failed:":"Converting object did not return an encodable object:")+" "+s}} +A.a2h.prototype={ +j(a){return"Cyclic error in JSON stringify"}} +A.a2g.prototype={ +uK(a,b,c){if(c==null)c=null +if(c==null)return A.apY(b,this.ga8x().a) +return A.apY(b,c)}, +hu(a,b){return this.uK(a,b,null)}, +wX(a,b){if(b==null)b=null +if(b==null)return A.b5Q(a,this.gfY().b,null) +return A.b5Q(a,b,null)}, +l2(a){return this.wX(a,null)}, +gfY(){return B.VG}, +ga8x(){return B.tY}} +A.a2j.prototype={ +cN(a){var s,r=new A.cV("") +A.bkw(a,r,this.b,null) +s=r.a +return s.charCodeAt(0)==0?s:s}, +kD(a){var s +if(a instanceof A.Um)return new A.ah8(a.d,A.bH1(null),this.b,256) +s=t.NC.b(a)?a:new A.zW(a) +return new A.b5K(null,this.b,s)}} +A.b5K.prototype={ +G(a,b){var s,r=this +if(r.d)throw A.c(A.R("Only one call to add allowed")) +r.d=!0 +s=r.c.a6X() +A.bkw(b,s,r.b,r.a) +s.ad(0)}, +ad(a){}} +A.ah8.prototype={ +am5(a,b,c){this.a.fD(a,b,c,!1)}, +G(a,b){var s=this +if(s.e)throw A.c(A.R("Only one call to add allowed")) +s.e=!0 +A.bMJ(b,s.b,s.c,s.d,s.gam4()) +s.a.ad(0)}, +ad(a){if(!this.e){this.e=!0 +this.a.ad(0)}}} +A.a2i.prototype={ +kD(a){return new A.RC(this.a,a,new A.cV(""))}, +cN(a){return A.apY(a,this.a)}} +A.b5R.prototype={ +Xm(a){var s,r,q,p,o,n=this,m=a.length +for(s=0,r=0;r92){if(q>=55296){p=q&64512 +if(p===55296){o=r+1 +o=!(o=0&&(a.charCodeAt(p)&64512)===55296)}else p=!1 +else p=!0 +if(p){if(r>s)n.BT(a,s,r) +s=r+1 +n.fN(92) +n.fN(117) +n.fN(100) +p=q>>>8&15 +n.fN(p<10?48+p:87+p) +p=q>>>4&15 +n.fN(p<10?48+p:87+p) +p=q&15 +n.fN(p<10?48+p:87+p)}}continue}if(q<32){if(r>s)n.BT(a,s,r) +s=r+1 +n.fN(92) +switch(q){case 8:n.fN(98) +break +case 9:n.fN(116) +break +case 10:n.fN(110) +break +case 12:n.fN(102) +break +case 13:n.fN(114) +break +default:n.fN(117) +n.fN(48) +n.fN(48) +p=q>>>4&15 +n.fN(p<10?48+p:87+p) +p=q&15 +n.fN(p<10?48+p:87+p) +break}}else if(q===34||q===92){if(r>s)n.BT(a,s,r) +s=r+1 +n.fN(92) +n.fN(q)}}if(s===0)n.eO(a) +else if(s>>6|192)>>>0) +s.lA(a&63|128) +return}if(a<=65535){s.lA((a>>>12|224)>>>0) +s.lA(a>>>6&63|128) +s.lA(a&63|128) +return}s.adz(a)}, +adz(a){var s=this +s.lA((a>>>18|240)>>>0) +s.lA(a>>>12&63|128) +s.lA(a>>>6&63|128) +s.lA(a&63|128)}, +lA(a){var s,r=this,q=r.f,p=r.e +if(q===p.length){r.d.$3(p,0,q) +q=r.e=new Uint8Array(r.c) +p=r.f=0}else{s=p +p=q +q=s}r.f=p+1 +q[p]=a}} +A.b5T.prototype={ +GD(a){var s,r,q,p,o,n=this,m=n.x,l=J.ak(m),k=l.gt(m) +if(k===1){s=l.i(m,0) +for(;a>0;){n.lA(s);--a}return}for(;a>0;){--a +r=n.f +q=r+k +p=n.e +if(q<=p.length){B.L.di(p,r,q,m) +n.f=q}else for(o=0;o255||r<0){if(s>b){q=p.a +q.toString +q.G(0,A.ja(a,b,s))}q=p.a +q.toString +q.G(0,A.ja(B.XG,0,1)) +b=s+1}}if(b16)this.Q6()}, +ea(a,b){if(this.a.a.length!==0)this.Q6() +this.b.G(0,b)}, +Q6(){var s=this.a,r=s.a +s.a="" +this.b.G(0,r.charCodeAt(0)==0?r:r)}} +A.GU.prototype={ +ad(a){}, +fD(a,b,c,d){var s,r +if(b!==0||c!==a.length)for(s=this.a,r=b;r>>18|240 +q=o.b=p+1 +r[p]=s>>>12&63|128 +p=o.b=q+1 +r[q]=s>>>6&63|128 +o.b=p+1 +r[p]=s&63|128 +return!0}else{o.JQ() +return!1}}, +a0D(a,b,c){var s,r,q,p,o,n,m,l=this +if(b!==c&&(a.charCodeAt(c-1)&64512)===55296)--c +for(s=l.c,r=s.length,q=b;q=r)break +l.b=o+1 +s[o]=p}else{o=p&64512 +if(o===55296){if(l.b+4>r)break +n=q+1 +if(l.a6r(p,a.charCodeAt(n)))q=n}else if(o===56320){if(l.b+3>r)break +l.JQ()}else if(p<=2047){o=l.b +m=o+1 +if(m>=r)break +l.b=m +s[o]=p>>>6|192 +l.b=m+1 +s[m]=p&63|128}else{o=l.b +if(o+2>=r)break +m=l.b=o+1 +s[o]=p>>>12|224 +o=l.b=m+1 +s[m]=p>>>6&63|128 +l.b=o+1 +s[o]=p&63|128}}}return q}} +A.Um.prototype={ +ad(a){if(this.a!==0){this.fD("",0,0,!0) +return}this.d.ad(0)}, +fD(a,b,c,d){var s,r,q,p,o,n=this +n.b=0 +s=b===c +if(s&&!d)return +r=n.a +if(r!==0){if(n.a6r(r,!s?a.charCodeAt(b):0))++b +n.a=0}s=n.d +r=n.c +q=c-1 +p=r.length-3 +do{b=n.a0D(a,b,c) +o=d&&b===c +if(b===q&&(a.charCodeAt(b)&64512)===55296){if(d&&n.b1000){s=B.f.cY(b+c,2) +r=q.Py(a,b,s,!1) +if((q.b&1)!==0)return r +return r+q.Py(a,s,c,d)}return q.aGO(a,b,c,d)}, +a9v(a,b){var s=this.b +this.b=0 +if(s<=32)return +if(this.a)b.a+=A.ep(65533) +else throw A.c(A.cJ(A.buI(77),null,null))}, +aGO(a,b,c,d){var s,r,q,p,o,n,m,l=this,k=65533,j=l.b,i=l.c,h=new A.cV(""),g=b+1,f=a[b] +$label0$0:for(s=l.a;!0;){for(;!0;g=p){r="AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFFFFFFFFFFFFFFFFGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHHHHHHHHHHHHIHHHJEEBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBKCCCCCCCCCCCCDCLONNNMEEEEEEEEEEE".charCodeAt(f)&31 +i=j<=32?f&61694>>>r:(f&63|i<<6)>>>0 +j=" \x000:XECCCCCN:lDb \x000:XECCCCCNvlDb \x000:XECCCCCN:lDb AAAAA\x00\x00\x00\x00\x00AAAAA00000AAAAA:::::AAAAAGG000AAAAA00KKKAAAAAG::::AAAAA:IIIIAAAAA000\x800AAAAA\x00\x00\x00\x00 AAAAA".charCodeAt(j+r) +if(j===0){h.a+=A.ep(i) +if(g===c)break $label0$0 +break}else if((j&1)!==0){if(s)switch(j){case 69:case 67:h.a+=A.ep(k) +break +case 65:h.a+=A.ep(k);--g +break +default:q=h.a+=A.ep(k) +h.a=q+A.ep(k) +break}else{l.b=j +l.c=g-1 +return""}j=0}if(g===c)break $label0$0 +p=g+1 +f=a[g]}p=g+1 +f=a[g] +if(f<128){while(!0){if(!(p=128){o=n-1 +p=n +break}p=n}if(o-g<20)for(m=g;m32)if(s)h.a+=A.ep(k) +else{l.b=77 +l.c=c +return""}l.b=j +l.c=i +s=h.a +return s.charCodeAt(0)==0?s:s}} +A.aoz.prototype={} +A.apN.prototype={} +A.iF.prototype={ +tW(a){var s,r,q=this,p=q.c +if(p===0)return q +s=!q.a +r=q.b +p=A.mh(p,r) +return new A.iF(p===0?!1:s,r,p)}, +apr(a){var s,r,q,p,o,n,m,l=this,k=l.c +if(k===0)return $.rP() +s=k-a +if(s<=0)return l.a?$.bmq():$.rP() +r=l.b +q=new Uint16Array(s) +for(p=a;p>>0!==0)return l.a2(0,$.aqv()) +for(k=0;k=0)return q.Hy(b,r) +return b.Hy(q,!r)}, +a2(a,b){var s,r,q=this,p=q.c +if(p===0)return b.tW(0) +s=b.c +if(s===0)return q +r=q.a +if(r!==b.a)return q.OJ(b,r) +if(A.b0F(q.b,p,b.b,s)>=0)return q.Hy(b,r) +return b.Hy(q,!r)}, +au(a,b){var s,r,q,p,o,n,m,l=this.c,k=b.c +if(l===0||k===0)return $.rP() +s=l+k +r=this.b +q=b.b +p=new Uint16Array(s) +for(o=0;o0?p.tW(0):p}, +azc(a){var s,r,q,p=this +if(p.c0)q=q.afV(0,$.bki.cB()) +return p.a&&q.c>0?q.tW(0):q}, +a0k(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d=this,c=d.c +if(c===$.btz&&a.c===$.btB&&d.b===$.bty&&a.b===$.btA)return +s=a.b +r=a.c +q=16-B.f.ga76(s[r-1]) +if(q>0){p=new Uint16Array(r+5) +o=A.btx(s,r,q,p) +n=new Uint16Array(c+5) +m=A.btx(d.b,c,q,n)}else{n=A.bkj(d.b,0,c,c+2) +o=r +p=s +m=c}l=p[o-1] +k=m-o +j=new Uint16Array(m) +i=A.bkk(p,o,k,j) +h=m+1 +if(A.b0F(n,m,j,i)>=0){n[m]=1 +A.adz(n,h,j,i,n)}else n[m]=0 +g=new Uint16Array(o+2) +g[o]=1 +A.adz(g,o+1,p,o,g) +f=m-1 +for(;k>0;){e=A.bM6(l,n,f);--k +A.btC(e,g,0,n,k,o) +if(n[f]1;){q=$.bmp() +if(q.c===0)A.q(B.NL) +p=r.azc(q).j(0) +s.push(p) +o=p.length +if(o===1)s.push("000") +if(o===2)s.push("00") +if(o===3)s.push("0") +r=r.apk(q)}s.push(B.f.j(r.b[0])) +if(m)s.push("-") +return new A.d1(s,t.Rr).pO(0)}, +$iI2:1, +$icu:1} +A.b0G.prototype={ +$2(a,b){a=a+b&536870911 +a=a+((a&524287)<<10)&536870911 +return a^a>>>6}, +$S:172} +A.b0H.prototype={ +$1(a){a=a+((a&67108863)<<3)&536870911 +a^=a>>>11 +return a+((a&16383)<<15)&536870911}, +$S:90} +A.aKA.prototype={ +$2(a,b){var s=this.b,r=this.a,q=s.a+=r.a +q+=a.a +s.a=q +s.a=q+": " +s.a+=A.wF(b) +r.a=", "}, +$S:534} +A.dl.prototype={ +G(a,b){return A.bi8(this.a+B.f.cY(b.a,1000),this.b)}, +l(a,b){if(b==null)return!1 +return b instanceof A.dl&&this.a===b.a&&this.b===b.b}, +bM(a,b){return B.f.bM(this.a,b.a)}, +Hv(a,b){var s,r=this.a +if(Math.abs(r)<=864e13)s=!1 +else s=!0 +if(s)throw A.c(A.bU("DateTime is outside valid range: "+r,null)) +A.fj(this.b,"isUtc",t.y)}, +gv(a){var s=this.a +return(s^B.f.dz(s,30))&1073741823}, +N6(){if(this.b)return this +return A.bi8(this.a,!0)}, +j(a){var s=this,r=A.bEv(A.Dl(s)),q=A.a_L(A.ku(s)),p=A.a_L(A.yc(s)),o=A.a_L(A.qG(s)),n=A.a_L(A.aM7(s)),m=A.a_L(A.aM8(s)),l=A.bEw(A.brp(s)),k=r+"-"+q +if(s.b)return k+"-"+p+" "+o+":"+n+":"+m+"."+l+"Z" +else return k+"-"+p+" "+o+":"+n+":"+m+"."+l}, +$icu:1} +A.bk.prototype={ +T(a,b){return new A.bk(this.a+b.a)}, +a2(a,b){return new A.bk(this.a-b.a)}, +au(a,b){return new A.bk(B.e.bi(this.a*b))}, +l(a,b){if(b==null)return!1 +return b instanceof A.bk&&this.a===b.a}, +gv(a){return B.f.gv(this.a)}, +bM(a,b){return B.f.bM(this.a,b.a)}, +j(a){var s,r,q,p,o,n=this.a,m=B.f.cY(n,36e8),l=n%36e8 +if(n<0){m=0-m +n=0-l +s="-"}else{n=l +s=""}r=B.f.cY(n,6e7) +n%=6e7 +q=r<10?"0":"" +p=B.f.cY(n,1e6) +o=p<10?"0":"" +return s+m+":"+q+r+":"+o+p+"."+B.c.eM(B.f.j(n%1e6),6,"0")}, +$icu:1} +A.b3b.prototype={ +j(a){return this.K()}} +A.d0.prototype={ +gjU(){return A.aH(this.$thrownJsError)}} +A.vS.prototype={ +j(a){var s=this.a +if(s!=null)return"Assertion failed: "+A.wF(s) +return"Assertion failed"}, +gFD(a){return this.a}} +A.r0.prototype={} +A.kQ.prototype={ +gQ_(){return"Invalid argument"+(!this.a?"(s)":"")}, +gPZ(){return""}, +j(a){var s=this,r=s.c,q=r==null?"":" ("+r+")",p=s.d,o=p==null?"":": "+A.h(p),n=s.gQ_()+q+o +if(!s.a)return n +return n+s.gPZ()+": "+A.wF(s.gVn())}, +gVn(){return this.b}} +A.Dt.prototype={ +gVn(){return this.b}, +gQ_(){return"RangeError"}, +gPZ(){var s,r=this.e,q=this.f +if(r==null)s=q!=null?": Not less than or equal to "+A.h(q):"" +else if(q==null)s=": Not greater than or equal to "+A.h(r) +else if(q>r)s=": Not in inclusive range "+A.h(r)+".."+A.h(q) +else s=qe.length +else s=!1 +if(s)f=null +if(f==null){if(e.length>78)e=B.c.U(e,0,75)+"..." +return g+"\n"+e}for(r=1,q=0,p=!1,o=0;o1?g+(" (at line "+r+", character "+(f-q+1)+")\n"):g+(" (at character "+(f+1)+")\n") +m=e.length +for(o=f;o78)if(f-q<75){l=q+75 +k=q +j="" +i="..."}else{if(m-f<75){k=m-75 +l=m +i=""}else{k=f-36 +l=f+36 +i="..."}j="..."}else{l=m +k=q +j="" +i=""}return g+j+B.c.U(e,k,l)+i+"\n"+B.c.au(" ",f-k+j.length)+"^\n"}else return f!=null?g+(" (at offset "+A.h(f)+")"):g}, +$icm:1, +gFD(a){return this.a}, +gfS(a){return this.b}, +gc6(a){return this.c}} +A.a27.prototype={ +gjU(){return null}, +j(a){return"IntegerDivisionByZeroException"}, +$id0:1, +$icm:1} +A.z.prototype={ +jZ(a,b){return A.dx(this,A.ch(this).h("z.E"),b)}, +UU(a,b){var s=this,r=A.ch(s) +if(r.h("an").b(s))return A.bpD(s,b,r.h("z.E")) +return new A.q5(s,b,r.h("q5"))}, +ig(a,b,c){return A.mV(this,b,A.ch(this).h("z.E"),c)}, +jm(a,b){return new A.be(this,b,A.ch(this).h("be"))}, +Nn(a,b){return new A.es(this,b.h("es<0>"))}, +n(a,b){var s +for(s=this.gaj(this);s.u();)if(J.i(s.gH(s),b))return!0 +return!1}, +af(a,b){var s +for(s=this.gaj(this);s.u();)b.$1(s.gH(s))}, +lr(a,b){var s,r=this.gaj(this) +if(!r.u())throw A.c(A.cf()) +s=r.gH(r) +for(;r.u();)s=b.$2(s,r.gH(r)) +return s}, +F0(a,b,c){var s,r +for(s=this.gaj(this),r=b;s.u();)r=c.$2(r,s.gH(s)) +return r}, +oM(a,b,c){return this.F0(a,b,c,t.z)}, +cq(a,b){var s,r,q=this.gaj(this) +if(!q.u())return"" +s=J.cI(q.gH(q)) +if(!q.u())return s +if(b.length===0){r=s +do r+=J.cI(q.gH(q)) +while(q.u())}else{r=s +do r=r+b+J.cI(q.gH(q)) +while(q.u())}return r.charCodeAt(0)==0?r:r}, +pO(a){return this.cq(a,"")}, +ed(a,b){var s +for(s=this.gaj(this);s.u();)if(b.$1(s.gH(s)))return!0 +return!1}, +hl(a,b){return A.aa(this,b,A.ch(this).h("z.E"))}, +fL(a){return this.hl(a,!0)}, +kp(a){return A.i2(this,A.ch(this).h("z.E"))}, +gt(a){var s,r=this.gaj(this) +for(s=0;r.u();)++s +return s}, +gai(a){return!this.gaj(this).u()}, +gdn(a){return!this.gai(this)}, +q2(a,b){return A.aX_(this,b,A.ch(this).h("z.E"))}, +lL(a,b){return A.bjK(this,b,A.ch(this).h("z.E"))}, +ag0(a,b){return new A.yT(this,b,A.ch(this).h("yT"))}, +gN(a){var s=this.gaj(this) +if(!s.u())throw A.c(A.cf()) +return s.gH(s)}, +ga1(a){var s,r=this.gaj(this) +if(!r.u())throw A.c(A.cf()) +do s=r.gH(r) +while(r.u()) +return s}, +gaI(a){var s,r=this.gaj(this) +if(!r.u())throw A.c(A.cf()) +s=r.gH(r) +if(r.u())throw A.c(A.mQ()) +return s}, +AC(a,b,c){var s,r +for(s=this.gaj(this);s.u();){r=s.gH(s) +if(b.$1(r))return r}return c.$0()}, +pP(a,b,c){var s,r,q=this.gaj(this) +do{if(!q.u()){if(c!=null)return c.$0() +throw A.c(A.cf())}s=q.gH(q)}while(!b.$1(s)) +for(;q.u();){r=q.gH(q) +if(b.$1(r))s=r}return s}, +Cp(a,b,c){var s,r=this.gaj(this) +do{if(!r.u())throw A.c(A.cf()) +s=r.gH(r)}while(!b.$1(s)) +for(;r.u();)if(b.$1(r.gH(r)))throw A.c(A.mQ()) +return s}, +pg(a,b){return this.Cp(a,b,null)}, +ct(a,b){var s,r +A.fA(b,"index") +s=this.gaj(this) +for(r=b;s.u();){if(r===0)return s.gH(s);--r}throw A.c(A.f4(b,b-r,this,null,"index"))}, +j(a){return A.bqh(this,"(",")")}, +afZ(a){return this.gaI(this).$0()}} +A.R6.prototype={ +ct(a,b){A.biS(b,this.a,this,null,null) +return this.b.$1(b)}, +gt(a){return this.a}} +A.a2d.prototype={} +A.aU.prototype={ +j(a){return"MapEntry("+A.h(this.a)+": "+A.h(this.b)+")"}} +A.aE.prototype={ +gv(a){return A.B.prototype.gv.call(this,this)}, +j(a){return"null"}} +A.B.prototype={$iB:1, +l(a,b){return this===b}, +gv(a){return A.cU(this)}, +j(a){return"Instance of '"+A.aMa(this)+"'"}, +D(a,b){throw A.c(A.bqY(this,b))}, +gfK(a){return A.o(this)}, +toString(){return this.j(this)}, +$0(){return this.D(this,A.D("$0","$0",0,[],[],0))}, +$1(a){return this.D(this,A.D("$1","$1",0,[a],[],0))}, +$2(a,b){return this.D(this,A.D("$2","$2",0,[a,b],[],0))}, +$1$2$onError(a,b,c){return this.D(this,A.D("$1$2$onError","$1$2$onError",0,[a,b,c],["onError"],1))}, +$3(a,b,c){return this.D(this,A.D("$3","$3",0,[a,b,c],[],0))}, +$4(a,b,c,d){return this.D(this,A.D("$4","$4",0,[a,b,c,d],[],0))}, +$1$1(a,b){return this.D(this,A.D("$1$1","$1$1",0,[a,b],[],1))}, +$1$hostElementAttributes(a){return this.D(this,A.D("$1$hostElementAttributes","$1$hostElementAttributes",0,[a],["hostElementAttributes"],0))}, +$1$highContrast(a){return this.D(this,A.D("$1$highContrast","$1$highContrast",0,[a],["highContrast"],0))}, +$1$accessibilityFeatures(a){return this.D(this,A.D("$1$accessibilityFeatures","$1$accessibilityFeatures",0,[a],["accessibilityFeatures"],0))}, +$3$replace$state(a,b,c){return this.D(this,A.D("$3$replace$state","$3$replace$state",0,[a,b,c],["replace","state"],0))}, +$2$path(a,b){return this.D(this,A.D("$2$path","$2$path",0,[a,b],["path"],0))}, +$1$growable(a){return this.D(this,A.D("$1$growable","$1$growable",0,[a],["growable"],0))}, +$2$params(a,b){return this.D(this,A.D("$2$params","$2$params",0,[a,b],["params"],0))}, +$3$onAction$onChange(a,b,c){return this.D(this,A.D("$3$onAction$onChange","$3$onAction$onChange",0,[a,b,c],["onAction","onChange"],0))}, +$1$0(a){return this.D(this,A.D("$1$0","$1$0",0,[a],[],1))}, +$1$locales(a){return this.D(this,A.D("$1$locales","$1$locales",0,[a],["locales"],0))}, +$1$textScaleFactor(a){return this.D(this,A.D("$1$textScaleFactor","$1$textScaleFactor",0,[a],["textScaleFactor"],0))}, +$1$platformBrightness(a){return this.D(this,A.D("$1$platformBrightness","$1$platformBrightness",0,[a],["platformBrightness"],0))}, +$12$buttons$change$device$kind$physicalX$physicalY$pressure$pressureMax$scale$signalKind$timeStamp(a,b,c,d,e,f,g,h,i,j,k,l){return this.D(this,A.D("$12$buttons$change$device$kind$physicalX$physicalY$pressure$pressureMax$scale$signalKind$timeStamp","$12$buttons$change$device$kind$physicalX$physicalY$pressure$pressureMax$scale$signalKind$timeStamp",0,[a,b,c,d,e,f,g,h,i,j,k,l],["buttons","change","device","kind","physicalX","physicalY","pressure","pressureMax","scale","signalKind","timeStamp"],0))}, +$13$buttons$change$device$kind$physicalX$physicalY$pressure$pressureMax$scrollDeltaX$scrollDeltaY$signalKind$timeStamp(a,b,c,d,e,f,g,h,i,j,k,l,m){return this.D(this,A.D("$13$buttons$change$device$kind$physicalX$physicalY$pressure$pressureMax$scrollDeltaX$scrollDeltaY$signalKind$timeStamp","$13$buttons$change$device$kind$physicalX$physicalY$pressure$pressureMax$scrollDeltaX$scrollDeltaY$signalKind$timeStamp",0,[a,b,c,d,e,f,g,h,i,j,k,l,m],["buttons","change","device","kind","physicalX","physicalY","pressure","pressureMax","scrollDeltaX","scrollDeltaY","signalKind","timeStamp"],0))}, +$11$buttons$change$device$kind$physicalX$physicalY$pressure$pressureMax$signalKind$timeStamp(a,b,c,d,e,f,g,h,i,j,k){return this.D(this,A.D("$11$buttons$change$device$kind$physicalX$physicalY$pressure$pressureMax$signalKind$timeStamp","$11$buttons$change$device$kind$physicalX$physicalY$pressure$pressureMax$signalKind$timeStamp",0,[a,b,c,d,e,f,g,h,i,j,k],["buttons","change","device","kind","physicalX","physicalY","pressure","pressureMax","signalKind","timeStamp"],0))}, +$10$buttons$change$device$physicalX$physicalY$pressure$pressureMax$signalKind$timeStamp(a,b,c,d,e,f,g,h,i,j){return this.D(this,A.D("$10$buttons$change$device$physicalX$physicalY$pressure$pressureMax$signalKind$timeStamp","$10$buttons$change$device$physicalX$physicalY$pressure$pressureMax$signalKind$timeStamp",0,[a,b,c,d,e,f,g,h,i,j],["buttons","change","device","physicalX","physicalY","pressure","pressureMax","signalKind","timeStamp"],0))}, +$4$checkModifiers(a,b,c,d){return this.D(this,A.D("$4$checkModifiers","$4$checkModifiers",0,[a,b,c,d],["checkModifiers"],0))}, +$12$buttons$change$device$kind$physicalX$physicalY$pressure$pressureMax$signalKind$tilt$timeStamp(a,b,c,d,e,f,g,h,i,j,k,l){return this.D(this,A.D("$12$buttons$change$device$kind$physicalX$physicalY$pressure$pressureMax$signalKind$tilt$timeStamp","$12$buttons$change$device$kind$physicalX$physicalY$pressure$pressureMax$signalKind$tilt$timeStamp",0,[a,b,c,d,e,f,g,h,i,j,k,l],["buttons","change","device","kind","physicalX","physicalY","pressure","pressureMax","signalKind","tilt","timeStamp"],0))}, +$1$accessibleNavigation(a){return this.D(this,A.D("$1$accessibleNavigation","$1$accessibleNavigation",0,[a],["accessibleNavigation"],0))}, +$1$semanticsEnabled(a){return this.D(this,A.D("$1$semanticsEnabled","$1$semanticsEnabled",0,[a],["semanticsEnabled"],0))}, +$4$cancelOnError$onDone$onError(a,b,c,d){return this.D(this,A.D("$4$cancelOnError$onDone$onError","$4$cancelOnError$onDone$onError",0,[a,b,c,d],["cancelOnError","onDone","onError"],0))}, +$2$priority$scheduler(a,b){return this.D(this,A.D("$2$priority$scheduler","$2$priority$scheduler",0,[a,b],["priority","scheduler"],0))}, +$2$position(a,b){return this.D(this,A.D("$2$position","$2$position",0,[a,b],["position"],0))}, +$1$style(a){return this.D(this,A.D("$1$style","$1$style",0,[a],["style"],0))}, +$21$background$color$decoration$decorationColor$decorationStyle$decorationThickness$fontFamily$fontFamilyFallback$fontFeatures$fontSize$fontStyle$fontVariations$fontWeight$foreground$height$leadingDistribution$letterSpacing$locale$shadows$textBaseline$wordSpacing(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1){return this.D(this,A.D("$21$background$color$decoration$decorationColor$decorationStyle$decorationThickness$fontFamily$fontFamilyFallback$fontFeatures$fontSize$fontStyle$fontVariations$fontWeight$foreground$height$leadingDistribution$letterSpacing$locale$shadows$textBaseline$wordSpacing","$21$background$color$decoration$decorationColor$decorationStyle$decorationThickness$fontFamily$fontFamilyFallback$fontFeatures$fontSize$fontStyle$fontVariations$fontWeight$foreground$height$leadingDistribution$letterSpacing$locale$shadows$textBaseline$wordSpacing",0,[a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1],["background","color","decoration","decorationColor","decorationStyle","decorationThickness","fontFamily","fontFamilyFallback","fontFeatures","fontSize","fontStyle","fontVariations","fontWeight","foreground","height","leadingDistribution","letterSpacing","locale","shadows","textBaseline","wordSpacing"],0))}, +$12$ellipsis$fontFamily$fontSize$fontStyle$fontWeight$height$locale$maxLines$strutStyle$textAlign$textDirection$textHeightBehavior(a,b,c,d,e,f,g,h,i,j,k,l){return this.D(this,A.D("$12$ellipsis$fontFamily$fontSize$fontStyle$fontWeight$height$locale$maxLines$strutStyle$textAlign$textDirection$textHeightBehavior","$12$ellipsis$fontFamily$fontSize$fontStyle$fontWeight$height$locale$maxLines$strutStyle$textAlign$textDirection$textHeightBehavior",0,[a,b,c,d,e,f,g,h,i,j,k,l],["ellipsis","fontFamily","fontSize","fontStyle","fontWeight","height","locale","maxLines","strutStyle","textAlign","textDirection","textHeightBehavior"],0))}, +$2$aspect(a,b){return this.D(this,A.D("$2$aspect","$2$aspect",0,[a,b],["aspect"],0))}, +$2$indicatorColor$tabBarTheme(a,b){return this.D(this,A.D("$2$indicatorColor$tabBarTheme","$2$indicatorColor$tabBarTheme",0,[a,b],["indicatorColor","tabBarTheme"],0))}, +$3$bodyColor$decorationColor$displayColor(a,b,c){return this.D(this,A.D("$3$bodyColor$decorationColor$displayColor","$3$bodyColor$decorationColor$displayColor",0,[a,b,c],["bodyColor","decorationColor","displayColor"],0))}, +$25$background$backgroundColor$color$debugLabel$decoration$decorationColor$decorationStyle$decorationThickness$fontFamily$fontFamilyFallback$fontFeatures$fontSize$fontStyle$fontVariations$fontWeight$foreground$height$leadingDistribution$letterSpacing$locale$overflow$package$shadows$textBaseline$wordSpacing(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5){return this.D(this,A.D("$25$background$backgroundColor$color$debugLabel$decoration$decorationColor$decorationStyle$decorationThickness$fontFamily$fontFamilyFallback$fontFeatures$fontSize$fontStyle$fontVariations$fontWeight$foreground$height$leadingDistribution$letterSpacing$locale$overflow$package$shadows$textBaseline$wordSpacing","$25$background$backgroundColor$color$debugLabel$decoration$decorationColor$decorationStyle$decorationThickness$fontFamily$fontFamilyFallback$fontFeatures$fontSize$fontStyle$fontVariations$fontWeight$foreground$height$leadingDistribution$letterSpacing$locale$overflow$package$shadows$textBaseline$wordSpacing",0,[a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5],["background","backgroundColor","color","debugLabel","decoration","decorationColor","decorationStyle","decorationThickness","fontFamily","fontFamilyFallback","fontFeatures","fontSize","fontStyle","fontVariations","fontWeight","foreground","height","leadingDistribution","letterSpacing","locale","overflow","package","shadows","textBaseline","wordSpacing"],0))}, +$1$matches(a){return this.D(this,A.D("$1$matches","$1$matches",0,[a],["matches"],0))}, +$1$path(a){return this.D(this,A.D("$1$path","$1$path",0,[a],["path"],0))}, +$3$imperativeMatches(a,b,c){return this.D(this,A.D("$3$imperativeMatches","$3$imperativeMatches",0,[a,b,c],["imperativeMatches"],0))}, +$3$pageKey(a,b,c){return this.D(this,A.D("$3$pageKey","$3$pageKey",0,[a,b,c],["pageKey"],0))}, +$3$sigmaX$sigmaY$tileMode(a,b,c){return this.D(this,A.D("$3$sigmaX$sigmaY$tileMode","$3$sigmaX$sigmaY$tileMode",0,[a,b,c],["sigmaX","sigmaY","tileMode"],0))}, +$2$after(a,b){return this.D(this,A.D("$2$after","$2$after",0,[a,b],["after"],0))}, +$1$range(a){return this.D(this,A.D("$1$range","$1$range",0,[a],["range"],0))}, +$1$paragraphWidth(a){return this.D(this,A.D("$1$paragraphWidth","$1$paragraphWidth",0,[a],["paragraphWidth"],0))}, +$9$fontFamily$fontFamilyFallback$fontSize$fontStyle$fontWeight$forceStrutHeight$height$leading$leadingDistribution(a,b,c,d,e,f,g,h,i){return this.D(this,A.D("$9$fontFamily$fontFamilyFallback$fontSize$fontStyle$fontWeight$forceStrutHeight$height$leading$leadingDistribution","$9$fontFamily$fontFamilyFallback$fontSize$fontStyle$fontWeight$forceStrutHeight$height$leading$leadingDistribution",0,[a,b,c,d,e,f,g,h,i],["fontFamily","fontFamilyFallback","fontSize","fontStyle","fontWeight","forceStrutHeight","height","leading","leadingDistribution"],0))}, +$4$boxHeightStyle$boxWidthStyle(a,b,c,d){return this.D(this,A.D("$4$boxHeightStyle$boxWidthStyle","$4$boxHeightStyle$boxWidthStyle",0,[a,b,c,d],["boxHeightStyle","boxWidthStyle"],0))}, +$2$end$start(a,b){return this.D(this,A.D("$2$end$start","$2$end$start",0,[a,b],["end","start"],0))}, +$3$dimensions$textScaleFactor(a,b,c){return this.D(this,A.D("$3$dimensions$textScaleFactor","$3$dimensions$textScaleFactor",0,[a,b,c],["dimensions","textScaleFactor"],0))}, +$3$boxHeightStyle(a,b,c){return this.D(this,A.D("$3$boxHeightStyle","$3$boxHeightStyle",0,[a,b,c],["boxHeightStyle"],0))}, +$3$includePlaceholders$includeSemanticsLabels(a,b,c){return this.D(this,A.D("$3$includePlaceholders$includeSemanticsLabels","$3$includePlaceholders$includeSemanticsLabels",0,[a,b,c],["includePlaceholders","includeSemanticsLabels"],0))}, +$9$category$categoryManga$categoryMangaChapter$chapter$globalSearch$helpText$manga$source$sourceSearch(a,b,c,d,e,f,g,h,i){return this.D(this,A.D("$9$category$categoryManga$categoryMangaChapter$chapter$globalSearch$helpText$manga$source$sourceSearch","$9$category$categoryManga$categoryMangaChapter$chapter$globalSearch$helpText$manga$source$sourceSearch",0,[a,b,c,d,e,f,g,h,i],["category","categoryManga","categoryMangaChapter","chapter","globalSearch","helpText","manga","source","sourceSearch"],0))}, +$3$color$letterSpacing$wordSpacing(a,b,c){return this.D(this,A.D("$3$color$letterSpacing$wordSpacing","$3$color$letterSpacing$wordSpacing",0,[a,b,c],["color","letterSpacing","wordSpacing"],0))}, +$1$color(a){return this.D(this,A.D("$1$color","$1$color",0,[a],["color"],0))}, +$2$color$fontSize(a,b){return this.D(this,A.D("$2$color$fontSize","$2$color$fontSize",0,[a,b],["color","fontSize"],0))}, +$2$padding$viewPadding(a,b){return this.D(this,A.D("$2$padding$viewPadding","$2$padding$viewPadding",0,[a,b],["padding","viewPadding"],0))}, +$8$color$fill$grade$opacity$opticalSize$shadows$size$weight(a,b,c,d,e,f,g,h){return this.D(this,A.D("$8$color$fill$grade$opacity$opticalSize$shadows$size$weight","$8$color$fill$grade$opacity$opticalSize$shadows$size$weight",0,[a,b,c,d,e,f,g,h],["color","fill","grade","opacity","opticalSize","shadows","size","weight"],0))}, +$5(a,b,c,d,e){return this.D(this,A.D("$5","$5",0,[a,b,c,d,e],[],0))}, +$1$tailVisitor(a){return this.D(this,A.D("$1$tailVisitor","$1$tailVisitor",0,[a],["tailVisitor"],0))}, +$2$withDrive(a,b){return this.D(this,A.D("$2$withDrive","$2$withDrive",0,[a,b],["withDrive"],0))}, +$2$data$error(a,b){return this.D(this,A.D("$2$data$error","$2$data$error",0,[a,b],["data","error"],0))}, +$2$elementVisitor$notifierVisitor(a,b){return this.D(this,A.D("$2$elementVisitor$notifierVisitor","$2$elementVisitor$notifierVisitor",0,[a,b],["elementVisitor","notifierVisitor"],0))}, +$1$didChangeDependency(a){return this.D(this,A.D("$1$didChangeDependency","$1$didChangeDependency",0,[a],["didChangeDependency"],0))}, +$4$onDependencyMayHaveChanged$onError(a,b,c,d){return this.D(this,A.D("$4$onDependencyMayHaveChanged$onError","$4$onDependencyMayHaveChanged$onError",0,[a,b,c,d],["onDependencyMayHaveChanged","onError"],0))}, +$5$fireImmediately$onDependencyMayHaveChanged$onError(a,b,c,d,e){return this.D(this,A.D("$5$fireImmediately$onDependencyMayHaveChanged$onError","$5$fireImmediately$onDependencyMayHaveChanged$onError",0,[a,b,c,d,e],["fireImmediately","onDependencyMayHaveChanged","onError"],0))}, +$1$3$listener$onError(a,b,c,d){return this.D(this,A.D("$1$3$listener$onError","$1$3$listener$onError",0,[a,b,c,d],["listener","onError"],1))}, +$2$terse(a,b){return this.D(this,A.D("$2$terse","$2$terse",0,[a,b],["terse"],0))}, +$3$initial$key(a,b,c){return this.D(this,A.D("$3$initial$key","$3$initial$key",0,[a,b,c],["initial","key"],0))}, +$2$origin$override(a,b){return this.D(this,A.D("$2$origin$override","$2$origin$override",0,[a,b],["origin","override"],0))}, +$1$queryParameters(a){return this.D(this,A.D("$1$queryParameters","$1$queryParameters",0,[a],["queryParameters"],0))}, +$2$query(a,b){return this.D(this,A.D("$2$query","$2$query",0,[a,b],["query"],0))}, +$2$isRefresh(a,b){return this.D(this,A.D("$2$isRefresh","$2$isRefresh",0,[a,b],["isRefresh"],0))}, +$4$data$done$error$last(a,b,c,d){return this.D(this,A.D("$4$data$done$error$last","$4$data$done$error$last",0,[a,b,c,d],["data","done","error","last"],0))}, +$3$data$error$loading(a,b,c){return this.D(this,A.D("$3$data$error$loading","$3$data$error$loading",0,[a,b,c],["data","error","loading"],0))}, +$1$cancelToken(a){return this.D(this,A.D("$1$cancelToken","$1$cancelToken",0,[a],["cancelToken"],0))}, +$2$3$cancelToken$decoder(a,b,c,d,e){return this.D(this,A.D("$2$3$cancelToken$decoder","$2$3$cancelToken$decoder",0,[a,b,c,d,e],["cancelToken","decoder"],2))}, +$6$addPort$authType$baseUrl$credentials$hiveCacheStore$port(a,b,c,d,e,f){return this.D(this,A.D("$6$addPort$authType$baseUrl$credentials$hiveCacheStore$port","$6$addPort$authType$baseUrl$credentials$hiveCacheStore$port",0,[a,b,c,d,e,f],["addPort","authType","baseUrl","credentials","hiveCacheStore","port"],0))}, +$1$6$cancelToken$data$onReceiveProgress$options$queryParameters(a,b,c,d,e,f,g){return this.D(this,A.D("$1$6$cancelToken$data$onReceiveProgress$options$queryParameters","$1$6$cancelToken$data$onReceiveProgress$options$queryParameters",0,[a,b,c,d,e,f,g],["cancelToken","data","onReceiveProgress","options","queryParameters"],1))}, +$2$writeTypeId(a,b){return this.D(this,A.D("$2$writeTypeId","$2$writeTypeId",0,[a,b],["writeTypeId"],0))}, +$2$notify(a,b){return this.D(this,A.D("$2$notify","$2$notify",0,[a,b],["notify"],0))}, +$3$onDone$onError(a,b,c){return this.D(this,A.D("$3$onDone$onError","$3$onDone$onError",0,[a,b,c],["onDone","onError"],0))}, +$2$2(a,b,c,d){return this.D(this,A.D("$2$2","$2$2",0,[a,b,c,d],[],2))}, +$3$error$options(a,b,c){return this.D(this,A.D("$3$error$options","$3$error$options",0,[a,b,c],["error","options"],0))}, +$2$lazy(a,b){return this.D(this,A.D("$2$lazy","$2$lazy",0,[a,b],["lazy"],0))}, +$2$content$headers(a,b){return this.D(this,A.D("$2$content$headers","$2$content$headers",0,[a,b],["content","headers"],0))}, +$1$end(a){return this.D(this,A.D("$1$end","$1$end",0,[a],["end"],0))}, +$1$text(a){return this.D(this,A.D("$1$text","$1$text",0,[a],["text"],0))}, +$1$line(a){return this.D(this,A.D("$1$line","$1$line",0,[a],["line"],0))}, +$2$color(a,b){return this.D(this,A.D("$2$color","$2$color",0,[a,b],["color"],0))}, +$3$options$response(a,b,c){return this.D(this,A.D("$3$options$response","$3$options$response",0,[a,b,c],["options","response"],0))}, +$2$options(a,b){return this.D(this,A.D("$2$options","$2$options",0,[a,b],["options"],0))}, +$1$maxStale(a){return this.D(this,A.D("$1$maxStale","$1$maxStale",0,[a],["maxStale"],0))}, +$2$cancelToken$mangaId(a,b){return this.D(this,A.D("$2$cancelToken$mangaId","$2$cancelToken$mangaId",0,[a,b],["cancelToken","mangaId"],0))}, +$2$1(a,b,c){return this.D(this,A.D("$2$1","$2$1",0,[a,b,c],[],2))}, +$3$category$query(a,b,c){return this.D(this,A.D("$3$category$query","$3$category$query",0,[a,b,c],["category","query"],0))}, +$2$cancelToken$categoryId(a,b){return this.D(this,A.D("$2$cancelToken$categoryId","$2$cancelToken$categoryId",0,[a,b],["cancelToken","categoryId"],0))}, +$2$2$decoder(a,b,c,d){return this.D(this,A.D("$2$2$decoder","$2$2$decoder",0,[a,b,c,d],["decoder"],2))}, +$3$cancelToken$mangaId$onlineFetch(a,b,c){return this.D(this,A.D("$3$cancelToken$mangaId$onlineFetch","$3$cancelToken$mangaId$onlineFetch",0,[a,b,c],["cancelToken","mangaId","onlineFetch"],0))}, +$3$textDirection(a,b,c){return this.D(this,A.D("$3$textDirection","$3$textDirection",0,[a,b,c],["textDirection"],0))}, +$2$textDirection(a,b){return this.D(this,A.D("$2$textDirection","$2$textDirection",0,[a,b],["textDirection"],0))}, +$2$cause$from(a,b){return this.D(this,A.D("$2$cause$from","$2$cause$from",0,[a,b],["cause","from"],0))}, +$1$composing(a){return this.D(this,A.D("$1$composing","$1$composing",0,[a],["composing"],0))}, +$2$ignoreCurrentFocus(a,b){return this.D(this,A.D("$2$ignoreCurrentFocus","$2$ignoreCurrentFocus",0,[a,b],["ignoreCurrentFocus"],0))}, +$2$alignmentPolicy(a,b){return this.D(this,A.D("$2$alignmentPolicy","$2$alignmentPolicy",0,[a,b],["alignmentPolicy"],0))}, +$6$alignment$alignmentPolicy$curve$duration$targetRenderObject(a,b,c,d,e,f){return this.D(this,A.D("$6$alignment$alignmentPolicy$curve$duration$targetRenderObject","$6$alignment$alignmentPolicy$curve$duration$targetRenderObject",0,[a,b,c,d,e,f],["alignment","alignmentPolicy","curve","duration","targetRenderObject"],0))}, +$1$selection(a){return this.D(this,A.D("$1$selection","$1$selection",0,[a],["selection"],0))}, +$1$rect(a){return this.D(this,A.D("$1$rect","$1$rect",0,[a],["rect"],0))}, +$4$curve$descendant$duration$rect(a,b,c,d){return this.D(this,A.D("$4$curve$descendant$duration$rect","$4$curve$descendant$duration$rect",0,[a,b,c,d],["curve","descendant","duration","rect"],0))}, +$3$rect(a,b,c){return this.D(this,A.D("$3$rect","$3$rect",0,[a,b,c],["rect"],0))}, +$3$context$style$withComposing(a,b,c){return this.D(this,A.D("$3$context$style$withComposing","$3$context$style$withComposing",0,[a,b,c],["context","style","withComposing"],0))}, +$5$baseline$baselineOffset(a,b,c,d,e){return this.D(this,A.D("$5$baseline$baselineOffset","$5$baseline$baselineOffset",0,[a,b,c,d,e],["baseline","baselineOffset"],0))}, +$4$scale(a,b,c,d){return this.D(this,A.D("$4$scale","$4$scale",0,[a,b,c,d],["scale"],0))}, +$1$bottom(a){return this.D(this,A.D("$1$bottom","$1$bottom",0,[a],["bottom"],0))}, +$3$curve$duration$rect(a,b,c){return this.D(this,A.D("$3$curve$duration$rect","$3$curve$duration$rect",0,[a,b,c],["curve","duration","rect"],0))}, +$1$affinity(a){return this.D(this,A.D("$1$affinity","$1$affinity",0,[a],["affinity"],0))}, +$1$findFirstFocus(a){return this.D(this,A.D("$1$findFirstFocus","$1$findFirstFocus",0,[a],["findFirstFocus"],0))}, +$3$code$details$message(a,b,c){return this.D(this,A.D("$3$code$details$message","$3$code$details$message",0,[a,b,c],["code","details","message"],0))}, +$2$code$message(a,b){return this.D(this,A.D("$2$code$message","$2$code$message",0,[a,b],["code","message"],0))}, +$3$debugReport(a,b,c){return this.D(this,A.D("$3$debugReport","$3$debugReport",0,[a,b,c],["debugReport"],0))}, +$3$cancel$down$reason(a,b,c){return this.D(this,A.D("$3$cancel$down$reason","$3$cancel$down$reason",0,[a,b,c],["cancel","down","reason"],0))}, +$2$down$up(a,b){return this.D(this,A.D("$2$down$up","$2$down$up",0,[a,b],["down","up"],0))}, +$1$down(a){return this.D(this,A.D("$1$down","$1$down",0,[a],["down"],0))}, +$2$primaryTextTheme$textTheme(a,b){return this.D(this,A.D("$2$primaryTextTheme$textTheme","$2$primaryTextTheme$textTheme",0,[a,b],["primaryTextTheme","textTheme"],0))}, +$2$composing$selection(a,b){return this.D(this,A.D("$2$composing$selection","$2$composing$selection",0,[a,b],["composing","selection"],0))}, +$3$composing$selection$text(a,b,c){return this.D(this,A.D("$3$composing$selection$text","$3$composing$selection$text",0,[a,b,c],["composing","selection","text"],0))}, +$2$reversed(a,b){return this.D(this,A.D("$2$reversed","$2$reversed",0,[a,b],["reversed"],0))}, +$2$minHeight$minWidth(a,b){return this.D(this,A.D("$2$minHeight$minWidth","$2$minHeight$minWidth",0,[a,b],["minHeight","minWidth"],0))}, +$2$viewInsets$viewPadding(a,b){return this.D(this,A.D("$2$viewInsets$viewPadding","$2$viewInsets$viewPadding",0,[a,b],["viewInsets","viewPadding"],0))}, +$8$enableDomStorage$enableJavaScript$headers$universalLinksOnly$useSafariVC$useWebView$webOnlyWindowName(a,b,c,d,e,f,g,h){return this.D(this,A.D("$8$enableDomStorage$enableJavaScript$headers$universalLinksOnly$useSafariVC$useWebView$webOnlyWindowName","$8$enableDomStorage$enableJavaScript$headers$universalLinksOnly$useSafariVC$useWebView$webOnlyWindowName",0,[a,b,c,d,e,f,g,h],["enableDomStorage","enableJavaScript","headers","universalLinksOnly","useSafariVC","useWebView","webOnlyWindowName"],0))}, +$2$2$cancelToken(a,b,c,d){return this.D(this,A.D("$2$2$cancelToken","$2$2$cancelToken",0,[a,b,c,d],["cancelToken"],2))}, +$2$bottom$top(a,b){return this.D(this,A.D("$2$bottom$top","$2$bottom$top",0,[a,b],["bottom","top"],0))}, +$2$left$right(a,b){return this.D(this,A.D("$2$left$right","$2$left$right",0,[a,b],["left","right"],0))}, +$1$padding(a){return this.D(this,A.D("$1$padding","$1$padding",0,[a],["padding"],0))}, +$2$hitTest$paintTransform(a,b){return this.D(this,A.D("$2$hitTest$paintTransform","$2$hitTest$paintTransform",0,[a,b],["hitTest","paintTransform"],0))}, +$3$crossAxisPosition$mainAxisPosition(a,b,c){return this.D(this,A.D("$3$crossAxisPosition$mainAxisPosition","$3$crossAxisPosition$mainAxisPosition",0,[a,b,c],["crossAxisPosition","mainAxisPosition"],0))}, +$2$hitTest$paintOffset(a,b){return this.D(this,A.D("$2$hitTest$paintOffset","$2$hitTest$paintOffset",0,[a,b],["hitTest","paintOffset"],0))}, +$1$mangaId(a){return this.D(this,A.D("$1$mangaId","$1$mangaId",0,[a],["mangaId"],0))}, +$1$5$cancelToken$data$options$queryParameters(a,b,c,d,e,f){return this.D(this,A.D("$1$5$cancelToken$data$options$queryParameters","$1$5$cancelToken$data$options$queryParameters",0,[a,b,c,d,e,f],["cancelToken","data","options","queryParameters"],1))}, +$2$3$cancelToken$data(a,b,c,d,e){return this.D(this,A.D("$2$3$cancelToken$data","$2$3$cancelToken$data",0,[a,b,c,d,e],["cancelToken","data"],2))}, +$1$categoryId(a){return this.D(this,A.D("$1$categoryId","$1$categoryId",0,[a],["categoryId"],0))}, +$1$letterSpacing(a){return this.D(this,A.D("$1$letterSpacing","$1$letterSpacing",0,[a],["letterSpacing"],0))}, +$3$chapterIndex$mangaId$patch(a,b,c){return this.D(this,A.D("$3$chapterIndex$mangaId$patch","$3$chapterIndex$mangaId$patch",0,[a,b,c],["chapterIndex","mangaId","patch"],0))}, +$2$2$data(a,b,c,d){return this.D(this,A.D("$2$2$data","$2$2$data",0,[a,b,c,d],["data"],2))}, +$1$batch(a){return this.D(this,A.D("$1$batch","$1$batch",0,[a],["batch"],0))}, +$3$onError(a,b,c){return this.D(this,A.D("$3$onError","$3$onError",0,[a,b,c],["onError"],0))}, +$3$isAdd(a,b,c){return this.D(this,A.D("$3$isAdd","$3$isAdd",0,[a,b,c],["isAdd"],0))}, +$3$isRemove(a,b,c){return this.D(this,A.D("$3$isRemove","$3$isRemove",0,[a,b,c],["isRemove"],0))}, +$3$isError(a,b,c){return this.D(this,A.D("$3$isError","$3$isError",0,[a,b,c],["isError"],0))}, +$1$onCancel(a){return this.D(this,A.D("$1$onCancel","$1$onCancel",0,[a],["onCancel"],0))}, +$2$authType$credentials(a,b){return this.D(this,A.D("$2$authType$credentials","$2$authType$credentials",0,[a,b],["authType","credentials"],0))}, +$2$onDone(a,b){return this.D(this,A.D("$2$onDone","$2$onDone",0,[a,b],["onDone"],0))}, +$1$chapter(a){return this.D(this,A.D("$1$chapter","$1$chapter",0,[a],["chapter"],0))}, +$2$chapterIndex$mangaId(a,b){return this.D(this,A.D("$2$chapterIndex$mangaId","$2$chapterIndex$mangaId",0,[a,b],["chapterIndex","mangaId"],0))}, +$2$chapter$manga(a,b){return this.D(this,A.D("$2$chapter$manga","$2$chapter$manga",0,[a,b],["chapter","manga"],0))}, +$2$allowedExtensions$type(a,b){return this.D(this,A.D("$2$allowedExtensions$type","$2$allowedExtensions$type",0,[a,b],["allowedExtensions","type"],0))}, +$2$file(a,b){return this.D(this,A.D("$2$file","$2$file",0,[a,b],["file"],0))}, +$5$fileFilter$initialDirectory$multipleFiles$pickDirectory(a,b,c,d,e){return this.D(this,A.D("$5$fileFilter$initialDirectory$multipleFiles$pickDirectory","$5$fileFilter$initialDirectory$multipleFiles$pickDirectory",0,[a,b,c,d,e],["fileFilter","initialDirectory","multipleFiles","pickDirectory"],0))}, +$1$2(a,b,c){return this.D(this,A.D("$1$2","$1$2",0,[a,b,c],[],1))}, +$1$bottomSheetTheme(a){return this.D(this,A.D("$1$bottomSheetTheme","$1$bottomSheetTheme",0,[a],["bottomSheetTheme"],0))}, +$3$key$mangaId$value(a,b,c){return this.D(this,A.D("$3$key$mangaId$value","$3$key$mangaId$value",0,[a,b,c],["key","mangaId","value"],0))}, +$3$cancelOnError$onDone(a,b,c){return this.D(this,A.D("$3$cancelOnError$onDone","$3$cancelOnError$onDone",0,[a,b,c],["cancelOnError","onDone"],0))}, +$1$fontWeight(a){return this.D(this,A.D("$1$fontWeight","$1$fontWeight",0,[a],["fontWeight"],0))}, +$2$onCancel$onListen(a,b){return this.D(this,A.D("$2$onCancel$onListen","$2$onCancel$onListen",0,[a,b],["onCancel","onListen"],0))}, +$1$url(a){return this.D(this,A.D("$1$url","$1$url",0,[a],["url"],0))}, +$1$recursive(a){return this.D(this,A.D("$1$recursive","$1$recursive",0,[a],["recursive"],0))}, +$3$eTag$relativePath$validTill(a,b,c){return this.D(this,A.D("$3$eTag$relativePath$validTill","$3$eTag$relativePath$validTill",0,[a,b,c],["eTag","relativePath","validTill"],0))}, +$1$length(a){return this.D(this,A.D("$1$length","$1$length",0,[a],["length"],0))}, +$2$createChild$followTailLink(a,b){return this.D(this,A.D("$2$createChild$followTailLink","$2$createChild$followTailLink",0,[a,b],["createChild","followTailLink"],0))}, +$3$async(a,b,c){return this.D(this,A.D("$3$async","$3$async",0,[a,b,c],["async"],0))}, +$2$withMicrotask(a,b){return this.D(this,A.D("$2$withMicrotask","$2$withMicrotask",0,[a,b],["withMicrotask"],0))}, +$2$orElse(a,b){return this.D(this,A.D("$2$orElse","$2$orElse",0,[a,b],["orElse"],0))}, +$4$pageNum$query$sourceId$sourceType(a,b,c,d){return this.D(this,A.D("$4$pageNum$query$sourceId$sourceType","$4$pageNum$query$sourceId$sourceType",0,[a,b,c,d],["pageNum","query","sourceId","sourceType"],0))}, +$1$sourceId(a){return this.D(this,A.D("$1$sourceId","$1$sourceId",0,[a],["sourceId"],0))}, +$1$currentValue(a){return this.D(this,A.D("$1$currentValue","$1$currentValue",0,[a],["currentValue"],0))}, +$1$sourcePreferenceProp(a){return this.D(this,A.D("$1$sourcePreferenceProp","$1$sourcePreferenceProp",0,[a],["sourcePreferenceProp"],0))}, +$2$sourcePreferenceProp$type(a,b){return this.D(this,A.D("$2$sourcePreferenceProp$type","$2$sourcePreferenceProp$type",0,[a,b],["sourcePreferenceProp","type"],0))}, +$1$key(a){return this.D(this,A.D("$1$key","$1$key",0,[a],["key"],0))}, +$2$preference$sourceId(a,b){return this.D(this,A.D("$2$preference$sourceId","$2$preference$sourceId",0,[a,b],["preference","sourceId"],0))}, +$2$cancelToken$sourceId(a,b){return this.D(this,A.D("$2$cancelToken$sourceId","$2$cancelToken$sourceId",0,[a,b],["cancelToken","sourceId"],0))}, +$1$source(a){return this.D(this,A.D("$1$source","$1$source",0,[a],["source"],0))}, +$25$artist$author$chapterCount$chaptersLastFetchedAt$description$downloadCount$freshData$genre$id$inLibrary$inLibraryAt$initialized$lastChapterRead$lastFetchedAt$lastReadAt$meta$realUrl$source$sourceId$status$thumbnailUrl$thumbnailUrlLastFetched$title$unreadCount$url(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5){return this.D(this,A.D("$25$artist$author$chapterCount$chaptersLastFetchedAt$description$downloadCount$freshData$genre$id$inLibrary$inLibraryAt$initialized$lastChapterRead$lastFetchedAt$lastReadAt$meta$realUrl$source$sourceId$status$thumbnailUrl$thumbnailUrlLastFetched$title$unreadCount$url","$25$artist$author$chapterCount$chaptersLastFetchedAt$description$downloadCount$freshData$genre$id$inLibrary$inLibraryAt$initialized$lastChapterRead$lastFetchedAt$lastReadAt$meta$realUrl$source$sourceId$status$thumbnailUrl$thumbnailUrlLastFetched$title$unreadCount$url",0,[a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5],["artist","author","chapterCount","chaptersLastFetchedAt","description","downloadCount","freshData","genre","id","inLibrary","inLibraryAt","initialized","lastChapterRead","lastFetchedAt","lastReadAt","meta","realUrl","source","sourceId","status","thumbnailUrl","thumbnailUrlLastFetched","title","unreadCount","url"],0))}, +$1$inLibrary(a){return this.D(this,A.D("$1$inLibrary","$1$inLibrary",0,[a],["inLibrary"],0))}, +$1$state(a){return this.D(this,A.D("$1$state","$1$state",0,[a],["state"],0))}, +$1$filterState(a){return this.D(this,A.D("$1$filterState","$1$filterState",0,[a],["filterState"],0))}, +$2$filterState$type(a,b){return this.D(this,A.D("$2$filterState$type","$2$filterState$type",0,[a,b],["filterState","type"],0))}, +$1$name(a){return this.D(this,A.D("$1$name","$1$name",0,[a],["name"],0))}, +$1$index(a){return this.D(this,A.D("$1$index","$1$index",0,[a],["index"],0))}, +$2$ascending$index(a,b){return this.D(this,A.D("$2$ascending$index","$2$ascending$index",0,[a,b],["ascending","index"],0))}, +$1$ascending(a){return this.D(this,A.D("$1$ascending","$1$ascending",0,[a],["ascending"],0))}, +$2$defaultCategory$name(a,b){return this.D(this,A.D("$2$defaultCategory$name","$2$defaultCategory$name",0,[a,b],["defaultCategory","name"],0))}, +$4$defaultCategory$id$name$order(a,b,c,d){return this.D(this,A.D("$4$defaultCategory$id$name$order","$4$defaultCategory$id$name$order",0,[a,b,c,d],["defaultCategory","id","name","order"],0))}, +$1$category(a){return this.D(this,A.D("$1$category","$1$category",0,[a],["category"],0))}, +$1$errorText(a){return this.D(this,A.D("$1$errorText","$1$errorText",0,[a],["errorText"],0))}, +$30$alignLabelWithHint$border$constraints$contentPadding$counterStyle$disabledBorder$enabledBorder$errorBorder$errorMaxLines$errorStyle$fillColor$filled$floatingLabelAlignment$floatingLabelBehavior$floatingLabelStyle$focusColor$focusedBorder$focusedErrorBorder$helperMaxLines$helperStyle$hintStyle$hoverColor$iconColor$isCollapsed$isDense$labelStyle$prefixIconColor$prefixStyle$suffixIconColor$suffixStyle(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,b0){return this.D(this,A.D("$30$alignLabelWithHint$border$constraints$contentPadding$counterStyle$disabledBorder$enabledBorder$errorBorder$errorMaxLines$errorStyle$fillColor$filled$floatingLabelAlignment$floatingLabelBehavior$floatingLabelStyle$focusColor$focusedBorder$focusedErrorBorder$helperMaxLines$helperStyle$hintStyle$hoverColor$iconColor$isCollapsed$isDense$labelStyle$prefixIconColor$prefixStyle$suffixIconColor$suffixStyle","$30$alignLabelWithHint$border$constraints$contentPadding$counterStyle$disabledBorder$enabledBorder$errorBorder$errorMaxLines$errorStyle$fillColor$filled$floatingLabelAlignment$floatingLabelBehavior$floatingLabelStyle$focusColor$focusedBorder$focusedErrorBorder$helperMaxLines$helperStyle$hintStyle$hoverColor$iconColor$isCollapsed$isDense$labelStyle$prefixIconColor$prefixStyle$suffixIconColor$suffixStyle",0,[a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,b0],["alignLabelWithHint","border","constraints","contentPadding","counterStyle","disabledBorder","enabledBorder","errorBorder","errorMaxLines","errorStyle","fillColor","filled","floatingLabelAlignment","floatingLabelBehavior","floatingLabelStyle","focusColor","focusedBorder","focusedErrorBorder","helperMaxLines","helperStyle","hintStyle","hoverColor","iconColor","isCollapsed","isDense","labelStyle","prefixIconColor","prefixStyle","suffixIconColor","suffixStyle"],0))}, +$2$3$data$decoder(a,b,c,d,e){return this.D(this,A.D("$2$3$data$decoder","$2$3$data$decoder",0,[a,b,c,d,e],["data","decoder"],2))}, +$1$scrollbars(a){return this.D(this,A.D("$1$scrollbars","$1$scrollbars",0,[a],["scrollbars"],0))}, +$3$isDiscrete$parentBox$sliderTheme(a,b,c){return this.D(this,A.D("$3$isDiscrete$parentBox$sliderTheme","$3$isDiscrete$parentBox$sliderTheme",0,[a,b,c],["isDiscrete","parentBox","sliderTheme"],0))}, +$1$task(a){return this.D(this,A.D("$1$task","$1$task",0,[a],["task"],0))}, +$1$oldWidget(a){return this.D(this,A.D("$1$oldWidget","$1$oldWidget",0,[a],["oldWidget"],0))}, +$2$defaultColor(a,b){return this.D(this,A.D("$2$defaultColor","$2$defaultColor",0,[a,b],["defaultColor"],0))}, +$2$child$context(a,b){return this.D(this,A.D("$2$child$context","$2$child$context",0,[a,b],["child","context"],0))}, +$1$side(a){return this.D(this,A.D("$1$side","$1$side",0,[a],["side"],0))}, +$3$color$defaultColor$disabledColor(a,b,c){return this.D(this,A.D("$3$color$defaultColor$disabledColor","$3$color$defaultColor$disabledColor",0,[a,b,c],["color","defaultColor","disabledColor"],0))}, +$3$backgroundColor$color$defaultColor(a,b,c){return this.D(this,A.D("$3$backgroundColor$color$defaultColor","$3$backgroundColor$color$defaultColor",0,[a,b,c],["backgroundColor","color","defaultColor"],0))}, +$3$color$defaultColor$selectedColor(a,b,c){return this.D(this,A.D("$3$color$defaultColor$selectedColor","$3$color$defaultColor$selectedColor",0,[a,b,c],["color","defaultColor","selectedColor"],0))}, +$5$autofocus$focusNode$mouseCursor$painter$size(a,b,c,d,e){return this.D(this,A.D("$5$autofocus$focusNode$mouseCursor$painter$size","$5$autofocus$focusNode$mouseCursor$painter$size",0,[a,b,c,d,e],["autofocus","focusNode","mouseCursor","painter","size"],0))}, +$2$tabCount$tabIndex(a,b){return this.D(this,A.D("$2$tabCount$tabIndex","$2$tabCount$tabIndex",0,[a,b],["tabCount","tabIndex"],0))}, +$1$overscroll(a){return this.D(this,A.D("$1$overscroll","$1$overscroll",0,[a],["overscroll"],0))}, +$3$foregroundColor$iconSize$overlayColor(a,b,c){return this.D(this,A.D("$3$foregroundColor$iconSize$overlayColor","$3$foregroundColor$iconSize$overlayColor",0,[a,b,c],["foregroundColor","iconSize","overlayColor"],0))}, +$4$overscroll$physics$platform$scrollbars(a,b,c,d){return this.D(this,A.D("$4$overscroll$physics$platform$scrollbars","$4$overscroll$physics$platform$scrollbars",0,[a,b,c,d],["overscroll","physics","platform","scrollbars"],0))}, +$4$displayFeatures$padding$viewInsets$viewPadding(a,b,c,d){return this.D(this,A.D("$4$displayFeatures$padding$viewInsets$viewPadding","$4$displayFeatures$padding$viewInsets$viewPadding",0,[a,b,c,d],["displayFeatures","padding","viewInsets","viewPadding"],0))}, +$2$isClosing(a,b){return this.D(this,A.D("$2$isClosing","$2$isClosing",0,[a,b],["isClosing"],0))}, +$1$withDelay(a){return this.D(this,A.D("$1$withDelay","$1$withDelay",0,[a],["withDelay"],0))}, +$1$opacity(a){return this.D(this,A.D("$1$opacity","$1$opacity",0,[a],["opacity"],0))}, +$1$inherit(a){return this.D(this,A.D("$1$inherit","$1$inherit",0,[a],["inherit"],0))}, +$8$removeBottomInset$removeBottomPadding$removeLeftPadding$removeRightPadding$removeTopPadding(a,b,c,d,e,f,g,h){return this.D(this,A.D("$8$removeBottomInset$removeBottomPadding$removeLeftPadding$removeRightPadding$removeTopPadding","$8$removeBottomInset$removeBottomPadding$removeLeftPadding$removeRightPadding$removeTopPadding",0,[a,b,c,d,e,f,g,h],["removeBottomInset","removeBottomPadding","removeLeftPadding","removeRightPadding","removeTopPadding"],0))}, +$7$removeBottomPadding$removeLeftPadding$removeRightPadding$removeTopPadding(a,b,c,d,e,f,g){return this.D(this,A.D("$7$removeBottomPadding$removeLeftPadding$removeRightPadding$removeTopPadding","$7$removeBottomPadding$removeLeftPadding$removeRightPadding$removeTopPadding",0,[a,b,c,d,e,f,g],["removeBottomPadding","removeLeftPadding","removeRightPadding","removeTopPadding"],0))}, +$8$maintainBottomViewPadding$removeBottomPadding$removeLeftPadding$removeRightPadding$removeTopPadding(a,b,c,d,e,f,g,h){return this.D(this,A.D("$8$maintainBottomViewPadding$removeBottomPadding$removeLeftPadding$removeRightPadding$removeTopPadding","$8$maintainBottomViewPadding$removeBottomPadding$removeLeftPadding$removeRightPadding$removeTopPadding",0,[a,b,c,d,e,f,g,h],["maintainBottomViewPadding","removeBottomPadding","removeLeftPadding","removeRightPadding","removeTopPadding"],0))}, +$1$floatingActionButtonScale(a){return this.D(this,A.D("$1$floatingActionButtonScale","$1$floatingActionButtonScale",0,[a],["floatingActionButtonScale"],0))}, +$1$removeBottom(a){return this.D(this,A.D("$1$removeBottom","$1$removeBottom",0,[a],["removeBottom"],0))}, +$2$overscroll$scrollbars(a,b){return this.D(this,A.D("$2$overscroll$scrollbars","$2$overscroll$scrollbars",0,[a,b],["overscroll","scrollbars"],0))}, +$2$baseOffset$extentOffset(a,b){return this.D(this,A.D("$2$baseOffset$extentOffset","$2$baseOffset$extentOffset",0,[a,b],["baseOffset","extentOffset"],0))}, +$2$0(a,b){return this.D(this,A.D("$2$0","$2$0",0,[a,b],[],2))}, +$2$affinity$extentOffset(a,b){return this.D(this,A.D("$2$affinity$extentOffset","$2$affinity$extentOffset",0,[a,b],["affinity","extentOffset"],0))}, +$9$ascent$baseline$descent$hardBreak$height$left$lineNumber$unscaledAscent$width(a,b,c,d,e,f,g,h,i){return this.D(this,A.D("$9$ascent$baseline$descent$hardBreak$height$left$lineNumber$unscaledAscent$width","$9$ascent$baseline$descent$hardBreak$height$left$lineNumber$unscaledAscent$width",0,[a,b,c,d,e,f,g,h,i],["ascent","baseline","descent","hardBreak","height","left","lineNumber","unscaledAscent","width"],0))}, +$1$extentOffset(a){return this.D(this,A.D("$1$extentOffset","$1$extentOffset",0,[a],["extentOffset"],0))}, +$1$spellCheckService(a){return this.D(this,A.D("$1$spellCheckService","$1$spellCheckService",0,[a],["spellCheckService"],0))}, +$1$height(a){return this.D(this,A.D("$1$height","$1$height",0,[a],["height"],0))}, +$1$borderSide(a){return this.D(this,A.D("$1$borderSide","$1$borderSide",0,[a],["borderSide"],0))}, +$2$enabled$hintMaxLines(a,b){return this.D(this,A.D("$2$enabled$hintMaxLines","$2$enabled$hintMaxLines",0,[a,b],["enabled","hintMaxLines"],0))}, +$4$counterStyle$counterText$errorText$semanticCounterText(a,b,c,d){return this.D(this,A.D("$4$counterStyle$counterText$errorText$semanticCounterText","$4$counterStyle$counterText$errorText$semanticCounterText",0,[a,b,c,d],["counterStyle","counterText","errorText","semanticCounterText"],0))}, +$2$counterText$semanticCounterText(a,b){return this.D(this,A.D("$2$counterText$semanticCounterText","$2$counterText$semanticCounterText",0,[a,b],["counterText","semanticCounterText"],0))}, +$3$context$exception$stack(a,b,c){return this.D(this,A.D("$3$context$exception$stack","$3$context$exception$stack",0,[a,b,c],["context","exception","stack"],0))}, +$2$decodeDeprecated(a,b){return this.D(this,A.D("$2$decodeDeprecated","$2$decodeDeprecated",0,[a,b],["decodeDeprecated"],0))}, +$4$allowUpscaling$targetHeight$targetWidth(a,b,c,d){return this.D(this,A.D("$4$allowUpscaling$targetHeight$targetWidth","$4$allowUpscaling$targetHeight$targetWidth",0,[a,b,c,d],["allowUpscaling","targetHeight","targetWidth"],0))}, +$2$decodeBufferDeprecated(a,b){return this.D(this,A.D("$2$decodeBufferDeprecated","$2$decodeBufferDeprecated",0,[a,b],["decodeBufferDeprecated"],0))}, +$2$onError(a,b){return this.D(this,A.D("$2$onError","$2$onError",0,[a,b],["onError"],0))}, +$2$chunkCallback(a,b){return this.D(this,A.D("$2$chunkCallback","$2$chunkCallback",0,[a,b],["chunkCallback"],0))}, +$3$authHeaders$key(a,b,c){return this.D(this,A.D("$3$authHeaders$key","$3$authHeaders$key",0,[a,b,c],["authHeaders","key"],0))}, +$2$decode(a,b){return this.D(this,A.D("$2$decode","$2$decode",0,[a,b],["decode"],0))}, +$2$maxWidth$minWidth(a,b){return this.D(this,A.D("$2$maxWidth$minWidth","$2$maxWidth$minWidth",0,[a,b],["maxWidth","minWidth"],0))}, +$2$maxHeight$minHeight(a,b){return this.D(this,A.D("$2$maxHeight$minHeight","$2$maxHeight$minHeight",0,[a,b],["maxHeight","minHeight"],0))}, +$2$value(a,b){return this.D(this,A.D("$2$value","$2$value",0,[a,b],["value"],0))}, +$1$details(a){return this.D(this,A.D("$1$details","$1$details",0,[a],["details"],0))}, +$11$borderRadius$color$containedInkWell$controller$customBorder$onRemoved$position$radius$rectCallback$referenceBox$textDirection(a,b,c,d,e,f,g,h,i,j,k){return this.D(this,A.D("$11$borderRadius$color$containedInkWell$controller$customBorder$onRemoved$position$radius$rectCallback$referenceBox$textDirection","$11$borderRadius$color$containedInkWell$controller$customBorder$onRemoved$position$radius$rectCallback$referenceBox$textDirection",0,[a,b,c,d,e,f,g,h,i,j,k],["borderRadius","color","containedInkWell","controller","customBorder","onRemoved","position","radius","rectCallback","referenceBox","textDirection"],0))}, +$1$context(a){return this.D(this,A.D("$1$context","$1$context",0,[a],["context"],0))}, +$2$initialRestore(a,b){return this.D(this,A.D("$2$initialRestore","$2$initialRestore",0,[a,b],["initialRestore"],0))}, +$1$direction(a){return this.D(this,A.D("$1$direction","$1$direction",0,[a],["direction"],0))}, +$1$2$arguments(a,b,c){return this.D(this,A.D("$1$2$arguments","$1$2$arguments",0,[a,b,c],["arguments"],1))}, +$2$type(a,b){return this.D(this,A.D("$2$type","$2$type",0,[a,b],["type"],0))}, +$5$arguments$child$key$name$restorationId(a,b,c,d,e){return this.D(this,A.D("$5$arguments$child$key$name$restorationId","$5$arguments$child$key$name$restorationId",0,[a,b,c,d,e],["arguments","child","key","name","restorationId"],0))}, +$1$removeTop(a){return this.D(this,A.D("$1$removeTop","$1$removeTop",0,[a],["removeTop"],0))}, +$1$viewInsets(a){return this.D(this,A.D("$1$viewInsets","$1$viewInsets",0,[a],["viewInsets"],0))}, +$1$top(a){return this.D(this,A.D("$1$top","$1$top",0,[a],["top"],0))}, +$2$padding$viewInsets(a,b){return this.D(this,A.D("$2$padding$viewInsets","$2$padding$viewInsets",0,[a,b],["padding","viewInsets"],0))}, +$1$5(a,b,c,d,e,f){return this.D(this,A.D("$1$5","$1$5",0,[a,b,c,d,e,f],[],1))}, +$1$reversed(a){return this.D(this,A.D("$1$reversed","$1$reversed",0,[a],["reversed"],0))}, +$5$elevationAdjustment$parentPaintClipRect$parentSemanticsClipRect$result$siblingNodes(a,b,c,d,e){return this.D(this,A.D("$5$elevationAdjustment$parentPaintClipRect$parentSemanticsClipRect$result$siblingNodes","$5$elevationAdjustment$parentPaintClipRect$parentSemanticsClipRect$result$siblingNodes",0,[a,b,c,d,e],["elevationAdjustment","parentPaintClipRect","parentSemanticsClipRect","result","siblingNodes"],0))}, +$1$config(a){return this.D(this,A.D("$1$config","$1$config",0,[a],["config"],0))}, +$2$descendant$rect(a,b){return this.D(this,A.D("$2$descendant$rect","$2$descendant$rect",0,[a,b],["descendant","rect"],0))}, +$2$ignoreRasterCache(a,b){return this.D(this,A.D("$2$ignoreRasterCache","$2$ignoreRasterCache",0,[a,b],["ignoreRasterCache"],0))}, +$1$3$onlyFirst(a,b,c,d){return this.D(this,A.D("$1$3$onlyFirst","$1$3$onlyFirst",0,[a,b,c,d],["onlyFirst"],1))}, +$1$includeChildren(a){return this.D(this,A.D("$1$includeChildren","$1$includeChildren",0,[a],["includeChildren"],0))}, +$1$oldLayer(a){return this.D(this,A.D("$1$oldLayer","$1$oldLayer",0,[a],["oldLayer"],0))}, +$3$oldLayer(a,b,c){return this.D(this,A.D("$3$oldLayer","$3$oldLayer",0,[a,b,c],["oldLayer"],0))}, +$3$offset$oldLayer(a,b,c){return this.D(this,A.D("$3$offset$oldLayer","$3$offset$oldLayer",0,[a,b,c],["offset","oldLayer"],0))}, +$3$clipBehavior$oldLayer(a,b,c){return this.D(this,A.D("$3$clipBehavior$oldLayer","$3$clipBehavior$oldLayer",0,[a,b,c],["clipBehavior","oldLayer"],0))}, +$4$isComplexHint$willChangeHint(a,b,c,d){return this.D(this,A.D("$4$isComplexHint$willChangeHint","$4$isComplexHint$willChangeHint",0,[a,b,c,d],["isComplexHint","willChangeHint"],0))}, +$2$doAntiAlias(a,b){return this.D(this,A.D("$2$doAntiAlias","$2$doAntiAlias",0,[a,b],["doAntiAlias"],0))}, +$2$oldLayer(a,b){return this.D(this,A.D("$2$oldLayer","$2$oldLayer",0,[a,b],["oldLayer"],0))}, +$4$textDirection(a,b,c,d){return this.D(this,A.D("$4$textDirection","$4$textDirection",0,[a,b,c,d],["textDirection"],0))}, +$4$in1$in2$operator$result(a,b,c,d){return this.D(this,A.D("$4$in1$in2$operator$result","$4$in1$in2$operator$result",0,[a,b,c,d],["in1","in2","operator","result"],0))}, +$6(a,b,c,d,e,f){return this.D(this,A.D("$6","$6",0,[a,b,c,d,e,f],[],0))}, +$5$borderRadius$shape$textDirection(a,b,c,d,e){return this.D(this,A.D("$5$borderRadius$shape$textDirection","$5$borderRadius$shape$textDirection",0,[a,b,c,d,e],["borderRadius","shape","textDirection"],0))}, +$4$oldLayer(a,b,c,d){return this.D(this,A.D("$4$oldLayer","$4$oldLayer",0,[a,b,c,d],["oldLayer"],0))}, +$2$nextTo(a,b){return this.D(this,A.D("$2$nextTo","$2$nextTo",0,[a,b],["nextTo"],0))}, +$6$oldLayer(a,b,c,d,e,f){return this.D(this,A.D("$6$oldLayer","$6$oldLayer",0,[a,b,c,d,e,f],["oldLayer"],0))}, +$6$gapExtent$gapPercentage$gapStart$textDirection(a,b,c,d,e,f){return this.D(this,A.D("$6$gapExtent$gapPercentage$gapStart$textDirection","$6$gapExtent$gapPercentage$gapStart$textDirection",0,[a,b,c,d,e,f],["gapExtent","gapPercentage","gapStart","textDirection"],0))}, +$2$radius(a,b){return this.D(this,A.D("$2$radius","$2$radius",0,[a,b],["radius"],0))}, +$4$isDiscrete$offset$parentBox$sliderTheme(a,b,c,d){return this.D(this,A.D("$4$isDiscrete$offset$parentBox$sliderTheme","$4$isDiscrete$offset$parentBox$sliderTheme",0,[a,b,c,d],["isDiscrete","offset","parentBox","sliderTheme"],0))}, +$12$activationAnimation$enableAnimation$isDiscrete$labelPainter$parentBox$sizeWithOverflow$sliderTheme$textDirection$textScaleFactor$value(a,b,c,d,e,f,g,h,i,j,k,l){return this.D(this,A.D("$12$activationAnimation$enableAnimation$isDiscrete$labelPainter$parentBox$sizeWithOverflow$sliderTheme$textDirection$textScaleFactor$value","$12$activationAnimation$enableAnimation$isDiscrete$labelPainter$parentBox$sizeWithOverflow$sliderTheme$textDirection$textScaleFactor$value",0,[a,b,c,d,e,f,g,h,i,j,k,l],["activationAnimation","enableAnimation","isDiscrete","labelPainter","parentBox","sizeWithOverflow","sliderTheme","textDirection","textScaleFactor","value"],0))}, +$3$blendMode$oldLayer(a,b,c){return this.D(this,A.D("$3$blendMode$oldLayer","$3$blendMode$oldLayer",0,[a,b,c],["blendMode","oldLayer"],0))}, +$2$filterQuality(a,b){return this.D(this,A.D("$2$filterQuality","$2$filterQuality",0,[a,b],["filterQuality"],0))}, +$1$maxWidth(a){return this.D(this,A.D("$1$maxWidth","$1$maxWidth",0,[a],["maxWidth"],0))}, +$1$maxHeight(a){return this.D(this,A.D("$1$maxHeight","$1$maxHeight",0,[a],["maxHeight"],0))}, +$2$parentUsesSize(a,b){return this.D(this,A.D("$2$parentUsesSize","$2$parentUsesSize",0,[a,b],["parentUsesSize"],0))}, +$1$width(a){return this.D(this,A.D("$1$width","$1$width",0,[a],["width"],0))}, +$4$isScrolling$newPosition$oldPosition$velocity(a,b,c,d){return this.D(this,A.D("$4$isScrolling$newPosition$oldPosition$velocity","$4$isScrolling$newPosition$oldPosition$velocity",0,[a,b,c,d],["isScrolling","newPosition","oldPosition","velocity"],0))}, +$2$bottomNavigationBarTop$floatingActionButtonArea(a,b){return this.D(this,A.D("$2$bottomNavigationBarTop$floatingActionButtonArea","$2$bottomNavigationBarTop$floatingActionButtonArea",0,[a,b],["bottomNavigationBarTop","floatingActionButtonArea"],0))}, +$2$maxExtent$minExtent(a,b){return this.D(this,A.D("$2$maxExtent$minExtent","$2$maxExtent$minExtent",0,[a,b],["maxExtent","minExtent"],0))}, +$3$treeSanitizer$validator(a,b,c){return this.D(this,A.D("$3$treeSanitizer$validator","$3$treeSanitizer$validator",0,[a,b,c],["treeSanitizer","validator"],0))}, +$2$treeSanitizer(a,b){return this.D(this,A.D("$2$treeSanitizer","$2$treeSanitizer",0,[a,b],["treeSanitizer"],0))}, +i(a,b){return this.D(a,A.D("i","i",0,[b],[],0))}, +af(a,b){return this.D(a,A.D("af","af",0,[b],[],0))}, +ao(a,b){return this.D(a,A.D("ao","ao",0,[b],[],0))}, +p(a,b,c){return this.D(a,A.D("p","p",0,[b,c],[],0))}, +b7(){return this.D(this,A.D("b7","b7",0,[],[],0))}, +SQ(a){return this.D(this,A.D("SQ","SQ",0,[a],[],0))}, +IW(a){return this.D(this,A.D("IW","IW",0,[a],[],0))}, +a2(a,b){return this.D(a,A.D("a2","a2",0,[b],[],0))}, +xP(a){return this.D(this,A.D("xP","xP",0,[a],[],0))}, +cL(){return this.D(this,A.D("cL","cL",0,[],[],0))}, +wP(){return this.D(this,A.D("wP","wP",0,[],[],0))}, +au(a,b){return this.D(a,A.D("au","au",0,[b],[],0))}, +T(a,b){return this.D(a,A.D("T","T",0,[b],[],0))}, +BB(a){return this.D(a,A.D("BB","BB",0,[],[],0))}, +gt(a){return this.D(a,A.D("gt","gt",1,[],[],0))}, +gfh(a){return this.D(a,A.D("gfh","gfh",1,[],[],0))}, +glY(){return this.D(this,A.D("glY","glY",1,[],[],0))}, +gec(){return this.D(this,A.D("gec","gec",1,[],[],0))}, +gou(){return this.D(this,A.D("gou","gou",1,[],[],0))}, +gd8(a){return this.D(a,A.D("gd8","gd8",1,[],[],0))}, +geB(a){return this.D(a,A.D("geB","geB",1,[],[],0))}, +gzr(a){return this.D(a,A.D("gzr","gzr",1,[],[],0))}, +slY(a){return this.D(this,A.D("slY","slY",2,[a],[],0))}, +sec(a){return this.D(this,A.D("sec","sec",2,[a],[],0))}, +sou(a){return this.D(this,A.D("sou","sou",2,[a],[],0))}, +sfh(a,b){return this.D(a,A.D("sfh","sfh",2,[b],[],0))}, +sd8(a,b){return this.D(a,A.D("sd8","sd8",2,[b],[],0))}} +A.pn.prototype={ +j(a){return this.a}, +$icz:1} +A.Ep.prototype={ +gUs(){var s,r=this.b +if(r==null)r=$.Mp.$0() +s=r-this.a +if($.Wd()===1e6)return s +return s*1000}, +vP(a){var s=this,r=s.b +if(r!=null){s.a=s.a+($.Mp.$0()-r) +s.b=null}}, +km(a){var s=this.b +this.a=s==null?$.Mp.$0():s}} +A.aQs.prototype={ +gH(a){return this.d}, +u(){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}s=n.charCodeAt(o) +r=o+1 +if((s&64512)===55296&&r4)this.a.$2("an IPv6 part can only contain a maximum of 4 hex digits",a) +s=A.ef(B.c.U(this.b,a,b),null,16) +if(s<0||s>65535)this.a.$2("each part must be in the range of `0x0..0xFFFF`",a) +return s}, +$S:172} +A.Ug.prototype={ +gwq(){var s,r,q,p,o=this,n=o.w +if(n===$){s=o.a +r=s.length!==0?""+s+":":"" +q=o.c +p=q==null +if(!p||s==="file"){s=r+"//" +r=o.b +if(r.length!==0)s=s+r+"@" +if(!p)s+=q +r=o.d +if(r!=null)s=s+":"+A.h(r)}else s=r +s+=o.e +r=o.f +if(r!=null)s=s+"?"+r +r=o.r +if(r!=null)s=s+"#"+r +n!==$&&A.am() +n=o.w=s.charCodeAt(0)==0?s:s}return n}, +gBh(){var s,r,q=this,p=q.x +if(p===$){s=q.e +if(s.length!==0&&s.charCodeAt(0)===47)s=B.c.cv(s,1) +r=s.length===0?B.bU:A.i3(new A.ad(A.a(s.split("/"),t.s),A.bRk(),t.cj),t.N) +q.x!==$&&A.am() +p=q.x=r}return p}, +gv(a){var s,r=this,q=r.y +if(q===$){s=B.c.gv(r.gwq()) +r.y!==$&&A.am() +r.y=s +q=s}return q}, +gr9(){var s,r=this,q=r.z +if(q===$){s=r.f +s=A.bsX(s==null?"":s) +r.z!==$&&A.am() +q=r.z=new A.md(s,t.G5)}return q}, +gtF(){var s,r,q=this,p=q.Q +if(p===$){s=q.f +r=A.bNC(s==null?"":s) +q.Q!==$&&A.am() +q.Q=r +p=r}return p}, +gGy(){return this.b}, +gpJ(a){var s=this.c +if(s==null)return"" +if(B.c.c8(s,"["))return B.c.U(s,1,s.length-1) +return s}, +gxC(a){var s=this.d +return s==null?A.buv(this.a):s}, +gr8(a){var s=this.f +return s==null?"":s}, +goP(){var s=this.r +return s==null?"":s}, +VA(a){var s=this.a +if(a.length!==s.length)return!1 +return A.buV(a,s,0)>=0}, +Gb(a,b,c){var s,r,q,p,o=this,n=o.a,m=n==="file",l=o.b,k=o.d,j=o.c +if(!(j!=null))j=l.length!==0||k!=null||m?"":null +s=j!=null +r=b==null +if(!r||!1)b=A.bcp(b,0,r?0:b.length,null,n,s) +else{q=o.e +if(!m)r=s&&q.length!==0 +else r=!0 +if(r&&!B.c.c8(q,"/"))q="/"+q +b=q}if(c!=null)p=A.bcr(null,0,0,c) +else p=o.f +return A.Uh(n,l,j,k,b,p,o.r)}, +WP(a,b){return this.Gb(a,b,null)}, +acv(a,b){return this.Gb(a,null,b)}, +abp(){var s=this,r=s.e,q=A.buE(r,s.a,s.c!=null) +if(q===r)return s +return s.WP(0,q)}, +a2y(a,b){var s,r,q,p,o,n +for(s=0,r=0;B.c.eG(b,"../",r);){r+=3;++s}q=B.c.xk(a,"/") +while(!0){if(!(q>0&&s>0))break +p=B.c.AW(a,"/",q-1) +if(p<0)break +o=q-p +n=o!==2 +if(!n||o===3)if(a.charCodeAt(p+1)===46)n=!n||a.charCodeAt(p+2)===46 +else n=!1 +else n=!1 +if(n)break;--s +q=p}return B.c.iG(a,q+1,null,B.c.cv(b,r-3*s))}, +L(a){return this.Gd(A.dH(a,0,null))}, +Gd(a){var s,r,q,p,o,n,m,l,k,j,i=this,h=null +if(a.gfg().length!==0){s=a.gfg() +if(a.gF4()){r=a.gGy() +q=a.gpJ(a) +p=a.gAI()?a.gxC(a):h}else{p=h +q=p +r=""}o=A.rw(a.gdN(a)) +n=a.gAJ()?a.gr8(a):h}else{s=i.a +if(a.gF4()){r=a.gGy() +q=a.gpJ(a) +p=A.bkR(a.gAI()?a.gxC(a):h,s) +o=A.rw(a.gdN(a)) +n=a.gAJ()?a.gr8(a):h}else{r=i.b +q=i.c +p=i.d +o=i.e +if(a.gdN(a)==="")n=a.gAJ()?a.gr8(a):i.f +else{m=A.bNI(i,o) +if(m>0){l=B.c.U(o,0,m) +o=a.gLx()?l+A.rw(a.gdN(a)):l+A.rw(i.a2y(B.c.cv(o,l.length),a.gdN(a)))}else if(a.gLx())o=A.rw(a.gdN(a)) +else if(o.length===0)if(q==null)o=s.length===0?a.gdN(a):A.rw(a.gdN(a)) +else o=A.rw("/"+a.gdN(a)) +else{k=i.a2y(o,a.gdN(a)) +j=s.length===0 +if(!j||q!=null||B.c.c8(o,"/"))o=A.rw(k) +else o=A.bkT(k,!j||q!=null)}n=a.gAJ()?a.gr8(a):h}}}return A.Uh(s,r,q,p,o,n,a.gVc()?a.goP():h)}, +gaa7(){return this.a.length!==0}, +gF4(){return this.c!=null}, +gAI(){return this.d!=null}, +gAJ(){return this.f!=null}, +gVc(){return this.r!=null}, +gaa4(){return this.e.length===0}, +gLx(){return B.c.c8(this.e,"/")}, +gBe(a){var s,r,q=this,p=q.a +if(p==="")throw A.c(A.R("Cannot use origin without a scheme: "+q.j(0))) +if(p!=="http"&&p!=="https")throw A.c(A.R("Origin is only applicable schemes http and https: "+q.j(0))) +s=q.c +if(s==null||s==="")throw A.c(A.R("A "+p+u.M+q.j(0))) +r=q.d +if(r==null)return p+"://"+A.h(s) +return p+"://"+A.h(s)+":"+A.h(r)}, +WX(){var s,r=this,q=r.a +if(q!==""&&q!=="file")throw A.c(A.a7("Cannot extract a file path from a "+q+" URI")) +q=r.f +if((q==null?"":q)!=="")throw A.c(A.a7(u.z)) +q=r.r +if((q==null?"":q)!=="")throw A.c(A.a7(u.F)) +q=$.bmy() +if(q)q=A.buH(r) +else{if(r.c!=null&&r.gpJ(r)!=="")A.q(A.a7(u.Q)) +s=r.gBh() +A.bNA(s,!1) +q=A.a9C(B.c.c8(r.e,"/")?""+"/":"",s,"/") +q=q.charCodeAt(0)==0?q:q}return q}, +j(a){return this.gwq()}, +l(a,b){var s,r,q=this +if(b==null)return!1 +if(q===b)return!0 +if(t.Xu.b(b))if(q.a===b.gfg())if(q.c!=null===b.gF4())if(q.b===b.gGy())if(q.gpJ(q)===b.gpJ(b))if(q.gxC(q)===b.gxC(b))if(q.e===b.gdN(b)){s=q.f +r=s==null +if(!r===b.gAJ()){if(r)s="" +if(s===b.gr8(b)){s=q.r +r=s==null +if(!r===b.gVc()){if(r)s="" +s=s===b.goP()}else s=!1}else s=!1}else s=!1}else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +return s}, +$iaaG:1, +gfg(){return this.a}, +gdN(a){return this.e}} +A.bcq.prototype={ +$1(a){return A.k6(B.a0R,a,B.O,!1)}, +$S:19} +A.bct.prototype={ +$2(a,b){var s=this.b,r=this.a +s.a+=r.a +r.a="&" +r=s.a+=A.k6(B.fd,a,B.O,!0) +if(b!=null&&b.length!==0){s.a=r+"=" +s.a+=A.k6(B.fd,b,B.O,!0)}}, +$S:315} +A.bcs.prototype={ +$2(a,b){var s,r +if(b==null||typeof b=="string")this.a.$2(a,b) +else for(s=J.ao(b),r=this.a;s.u();)r.$2(a,s.gH(s))}, +$S:37} +A.bcu.prototype={ +$3(a,b,c){var s,r,q,p +if(a===c)return +s=this.a +r=this.b +if(b<0){q=A.lv(s,a,c,r,!0) +p=""}else{q=A.lv(s,a,b,r,!0) +p=A.lv(s,b+1,c,r,!0)}J.fu(this.c.cJ(0,q,A.bRm()),p)}, +$S:577} +A.aaH.prototype={ +ghm(){var s,r,q,p,o=this,n=null,m=o.c +if(m==null){m=o.a +s=o.b[0]+1 +r=B.c.h0(m,"?",s) +q=m.length +if(r>=0){p=A.Uj(m,r+1,q,B.hx,!1,!1) +q=r}else p=n +m=o.c=new A.aeY("data","",n,n,A.Uj(m,s,q,B.xb,!1,!1),p,n)}return m}, +j(a){var s=this.a +return this.b[0]===-1?"data:"+s:s}} +A.bdo.prototype={ +$2(a,b){var s=this.a[a] +B.L.aHS(s,0,96,b) +return s}, +$S:578} +A.bdp.prototype={ +$3(a,b,c){var s,r +for(s=b.length,r=0;r>>0]=c}, +$S:303} +A.mq.prototype={ +gaa7(){return this.b>0}, +gF4(){return this.c>0}, +gAI(){return this.c>0&&this.d+1=0}, +gfg(){var s=this.w +return s==null?this.w=this.aop():s}, +aop(){var s,r=this,q=r.b +if(q<=0)return"" +s=q===4 +if(s&&B.c.c8(r.a,"http"))return"http" +if(q===5&&B.c.c8(r.a,"https"))return"https" +if(s&&B.c.c8(r.a,"file"))return"file" +if(q===7&&B.c.c8(r.a,"package"))return"package" +return B.c.U(r.a,0,q)}, +gGy(){var s=this.c,r=this.b+3 +return s>r?B.c.U(this.a,r,s-1):""}, +gpJ(a){var s=this.c +return s>0?B.c.U(this.a,s,this.d):""}, +gxC(a){var s,r=this +if(r.gAI())return A.ef(B.c.U(r.a,r.d+1,r.e),null,null) +s=r.b +if(s===4&&B.c.c8(r.a,"http"))return 80 +if(s===5&&B.c.c8(r.a,"https"))return 443 +return 0}, +gdN(a){return B.c.U(this.a,this.e,this.f)}, +gr8(a){var s=this.f,r=this.r +return s=s.r)return B.fl +return new A.md(A.bsX(s.gr8(s)),t.G5)}, +gtF(){var s,r=this +if(r.f>=r.r)return B.F_ +s=A.buG(r.gr8(r)) +s.adj(s,A.bwe()) +return A.bi_(s,t.N,t.yp)}, +a29(a){var s=this.d+1 +return s+a.length===this.e&&B.c.eG(this.a,a,s)}, +abp(){return this}, +aNA(){var s=this,r=s.r,q=s.a +if(r>=q.length)return s +return new A.mq(B.c.U(q,0,r),s.b,s.c,s.d,s.e,s.f,r,s.w)}, +Gb(a,b,c){var s,r,q,p,o,n=this,m=null,l=n.gfg(),k=l==="file",j=n.c,i=j>0?B.c.U(n.a,n.b+3,j):"",h=n.gAI()?n.gxC(n):m +j=n.c +if(j>0)s=B.c.U(n.a,j,n.d) +else s=i.length!==0||h!=null||k?"":m +r=s!=null +j=b==null +if(!j||!1)b=A.bcp(b,0,j?0:b.length,m,l,r) +else{b=B.c.U(n.a,n.e,n.f) +if(!k)j=r&&b.length!==0 +else j=!0 +if(j&&!B.c.c8(b,"/"))b="/"+b}if(c!=null)q=A.bcr(m,0,0,c) +else{j=n.f +p=n.r +q=j0)return b +s=b.c +if(s>0){r=a.b +if(r<=0)return b +q=r===4 +if(q&&B.c.c8(a.a,"file"))p=b.e!==b.f +else if(q&&B.c.c8(a.a,"http"))p=!b.a29("80") +else p=!(r===5&&B.c.c8(a.a,"https"))||!b.a29("443") +if(p){o=r+1 +return new A.mq(B.c.U(a.a,0,o)+B.c.cv(b.a,c+1),r,s+o,b.d+o,b.e+o,b.f+o,b.r+o,a.w)}else return this.a5d().Gd(b)}n=b.e +c=b.f +if(n===c){s=b.r +if(c0?l:m +o=k-n +return new A.mq(B.c.U(a.a,0,k)+B.c.cv(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){for(;B.c.eG(s,"../",n);)n+=3 +o=j-n+1 +return new A.mq(B.c.U(a.a,0,j)+"/"+B.c.cv(s,n),a.b,a.c,a.d,j,c+o,b.r+o,a.w)}h=a.a +l=A.bu8(this) +if(l>=0)g=l +else for(g=j;B.c.eG(h,"../",g);)g+=3 +f=0 +while(!0){e=n+3 +if(!(e<=c&&B.c.eG(s,"../",n)))break;++f +n=e}for(d="";i>g;){--i +if(h.charCodeAt(i)===47){if(f===0){d="/" +break}--f +d="/"}}if(i===g&&a.b<=0&&!B.c.eG(h,"/",j)){n-=f*3 +d=""}o=i-n+d.length +return new A.mq(B.c.U(h,0,i)+d+B.c.cv(s,n),a.b,a.c,a.d,j,c+o,b.r+o,a.w)}, +WX(){var s,r,q=this,p=q.b +if(p>=0){s=!(p===4&&B.c.c8(q.a,"file")) +p=s}else p=!1 +if(p)throw A.c(A.a7("Cannot extract a file path from a "+q.gfg()+" URI")) +p=q.f +s=q.a +if(p0?s.gpJ(s):r,n=s.gAI()?s.gxC(s):r,m=s.a,l=s.f,k=B.c.U(m,s.e,l),j=s.r +l=l>>0!==b||b>=s +r.toString +if(r)throw A.c(A.f4(b,s,a,null,null)) +s=a[b] +s.toString +return s}, +p(a,b,c){throw A.c(A.a7("Cannot assign element of immutable List."))}, +st(a,b){throw A.c(A.a7("Cannot resize immutable List."))}, +gN(a){var s +if(a.length>0){s=a[0] +s.toString +return s}throw A.c(A.R("No elements"))}, +ga1(a){var s,r=a.length +if(r>0){s=a[r-1] +s.toString +return s}throw A.c(A.R("No elements"))}, +gaI(a){var s,r=a.length +if(r===1){s=a[0] +s.toString +return s}if(r===0)throw A.c(A.R("No elements")) +throw A.c(A.R("More than one element"))}, +ct(a,b){return a[b]}, +$ici:1, +$ian:1, +$icy:1, +$iz:1, +$ie:1} +A.Jm.prototype={ +j(a){var s,r=a.left +r.toString +s=a.top +s.toString +return"Rectangle ("+A.h(r)+", "+A.h(s)+") "+A.h(this.gf3(a))+" x "+A.h(this.gdm(a))}, +l(a,b){var s,r +if(b==null)return!1 +if(t.Bb.b(b)){s=a.left +s.toString +r=J.bK(b) +if(s===r.goU(b)){s=a.top +s.toString +s=s===r.gBG(b)&&this.gf3(a)===r.gf3(b)&&this.gdm(a)===r.gdm(b)}else s=!1}else s=!1 +return s}, +gv(a){var s,r=a.left +r.toString +s=a.top +s.toString +return A.X(r,s,this.gf3(a),this.gdm(a),B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +ga1S(a){return a.height}, +gdm(a){var s=this.ga1S(a) +s.toString +return s}, +goU(a){var s=a.left +s.toString +return s}, +gBG(a){var s=a.top +s.toString +return s}, +ga6m(a){return a.width}, +gf3(a){var s=this.ga6m(a) +s.toString +return s}, +$ili:1} +A.Jn.prototype={ +gt(a){var s=a.length +s.toString +return s}, +i(a,b){var s=a.length,r=b>>>0!==b||b>=s +r.toString +if(r)throw A.c(A.f4(b,s,a,null,null)) +s=a[b] +s.toString +return s}, +p(a,b,c){throw A.c(A.a7("Cannot assign element of immutable List."))}, +st(a,b){throw A.c(A.a7("Cannot resize immutable List."))}, +gN(a){var s +if(a.length>0){s=a[0] +s.toString +return s}throw A.c(A.R("No elements"))}, +ga1(a){var s,r=a.length +if(r>0){s=a[r-1] +s.toString +return s}throw A.c(A.R("No elements"))}, +gaI(a){var s,r=a.length +if(r===1){s=a[0] +s.toString +return s}if(r===0)throw A.c(A.R("No elements")) +throw A.c(A.R("More than one element"))}, +ct(a,b){return a[b]}, +$ici:1, +$ian:1, +$icy:1, +$iz:1, +$ie:1} +A.a0f.prototype={ +gt(a){var s=a.length +s.toString +return s}} +A.ae4.prototype={ +n(a,b){return J.rQ(this.b,b)}, +gai(a){return this.a.firstElementChild==null}, +gt(a){return this.b.length}, +i(a,b){return t.lU.a(this.b[b])}, +p(a,b,c){this.a.replaceChild(c,this.b[b]).toString}, +st(a,b){throw A.c(A.a7("Cannot resize element lists"))}, +G(a,b){this.a.appendChild(b).toString +return b}, +gaj(a){var s=this.fL(this) +return new J.e6(s,s.length,A.ab(s).h("e6<1>"))}, +I(a,b){A.bMc(this.a,b)}, +fz(a,b){throw A.c(A.a7("Cannot sort element lists"))}, +cA(a,b,c,d,e){throw A.c(A.cL(null))}, +di(a,b,c,d){return this.cA(a,b,c,d,0)}, +F(a,b){return A.bMd(this.a,b)}, +fu(a,b,c){var s,r,q=this +if(b<0||b>q.b.length)throw A.c(A.cK(b,0,q.gt(q),null,null)) +s=q.b +r=q.a +if(b===s.length)r.appendChild(c).toString +else r.insertBefore(c,t.lU.a(s[b])).toString}, +ab(a){J.bnq(this.a)}, +hj(a){var s=this.ga1(this) +this.a.removeChild(s).toString +return s}, +gN(a){return A.btD(this.a)}, +ga1(a){var s=this.a.lastElementChild +if(s==null)throw A.c(A.R("No elements")) +return s}, +gaI(a){if(this.b.length>1)throw A.c(A.R("More than one element")) +return A.btD(this.a)}} +A.cv.prototype={ +gzr(a){return new A.QN(a)}, +szr(a,b){var s,r,q +new A.QN(a).ab(0) +for(s=A.i1(b,b.r,A.k(b).c);s.u();){r=s.d +q=b.i(0,r) +q.toString +a.setAttribute(r,q)}}, +ghK(a){var s=a.children +s.toString +return new A.ae4(a,s)}, +j(a){var s=a.localName +s.toString +return s}, +qD(a,b,c,d){var s,r,q,p +if(c==null){s=$.bpm +if(s==null){s=A.a([],t.qF) +r=new A.LN(s) +s.push(A.btQ(null)) +s.push(A.buk()) +$.bpm=r +d=r}else d=s +s=$.bpl +if(s==null){d.toString +s=new A.anO(d) +$.bpl=s +c=s}else{d.toString +s.a=d +c=s}}if($.tr==null){s=document +r=s.implementation.createHTMLDocument("") +r.toString +$.tr=r +r=r.createRange() +r.toString +$.bit=r +r=$.tr.createElement("base") +t.N3.a(r) +s=s.baseURI +s.toString +r.href=s +$.tr.head.appendChild(r).toString}s=$.tr +if(s.body==null){r=s.createElement("body") +s.body=t.C4.a(r)}s=$.tr +if(t.C4.b(a)){s=s.body +s.toString +q=s}else{s.toString +r=a.tagName +r.toString +q=s.createElement(r) +$.tr.body.appendChild(q).toString}s="createContextualFragment" in window.Range.prototype +s.toString +if(s){s=a.tagName +s.toString +s=!B.b.n(B.a_n,s)}else s=!1 +if(s){$.bit.selectNodeContents(q) +s=$.bit +s=s.createContextualFragment(b) +s.toString +p=s}else{q.innerHTML=b +s=$.tr.createDocumentFragment() +s.toString +for(;r=q.firstChild,r!=null;)s.appendChild(r).toString +p=s}if(q!==$.tr.body)J.Ht(q) +c.XT(p) +document.adoptNode(p).toString +return p}, +aGA(a,b,c){return this.qD(a,b,c,null)}, +afw(a,b){a.textContent=null +a.appendChild(this.qD(a,b,null,null)).toString}, +$icv:1} +A.azW.prototype={ +$1(a){return t.lU.b(a)}, +$S:294} +A.aX.prototype={$iaX:1} +A.aJ.prototype={ +zg(a,b,c,d){if(c!=null)this.auH(a,b,c,d)}, +SU(a,b,c){return this.zg(a,b,c,null)}, +acm(a,b,c,d){if(c!=null)this.azf(a,b,c,d)}, +aNz(a,b,c){return this.acm(a,b,c,null)}, +auH(a,b,c,d){return a.addEventListener(b,A.rF(c,1),d)}, +azf(a,b,c,d){return a.removeEventListener(b,A.rF(c,1),d)}} +A.hV.prototype={$ihV:1} +A.BG.prototype={ +gt(a){var s=a.length +s.toString +return s}, +i(a,b){var s=a.length,r=b>>>0!==b||b>=s +r.toString +if(r)throw A.c(A.f4(b,s,a,null,null)) +s=a[b] +s.toString +return s}, +p(a,b,c){throw A.c(A.a7("Cannot assign element of immutable List."))}, +st(a,b){throw A.c(A.a7("Cannot resize immutable List."))}, +gN(a){var s +if(a.length>0){s=a[0] +s.toString +return s}throw A.c(A.R("No elements"))}, +ga1(a){var s,r=a.length +if(r>0){s=a[r-1] +s.toString +return s}throw A.c(A.R("No elements"))}, +gaI(a){var s,r=a.length +if(r===1){s=a[0] +s.toString +return s}if(r===0)throw A.c(A.R("No elements")) +throw A.c(A.R("More than one element"))}, +ct(a,b){return a[b]}, +$ici:1, +$ian:1, +$icy:1, +$iz:1, +$ie:1, +$iBG:1} +A.JK.prototype={ +gtI(a){var s=a.result +if(t.pI.b(s))return A.dF(s,0,null) +return s}} +A.a0W.prototype={ +gt(a){return a.length}} +A.a1c.prototype={ +af(a,b){return a.forEach(A.rF(b,3))}} +A.a1e.prototype={ +gt(a){return a.length}} +A.jB.prototype={$ijB:1} +A.a1F.prototype={ +gt(a){var s=a.length +s.toString +return s}} +A.x3.prototype={ +gt(a){var s=a.length +s.toString +return s}, +i(a,b){var s=a.length,r=b>>>0!==b||b>=s +r.toString +if(r)throw A.c(A.f4(b,s,a,null,null)) +s=a[b] +s.toString +return s}, +p(a,b,c){throw A.c(A.a7("Cannot assign element of immutable List."))}, +st(a,b){throw A.c(A.a7("Cannot resize immutable List."))}, +gN(a){var s +if(a.length>0){s=a[0] +s.toString +return s}throw A.c(A.R("No elements"))}, +ga1(a){var s,r=a.length +if(r>0){s=a[r-1] +s.toString +return s}throw A.c(A.R("No elements"))}, +gaI(a){var s,r=a.length +if(r===1){s=a[0] +s.toString +return s}if(r===0)throw A.c(A.R("No elements")) +throw A.c(A.R("More than one element"))}, +ct(a,b){return a[b]}, +$ici:1, +$ian:1, +$icy:1, +$iz:1, +$ie:1} +A.tI.prototype={ +gacF(a){var s,r,q,p,o,n,m=t.N,l=A.F(m,m),k=a.getAllResponseHeaders(),j=k.split("\r\n") +for(m=j.length,s=0;s>>0!==b||b>=s +r.toString +if(r)throw A.c(A.f4(b,s,a,null,null)) +s=a[b] +s.toString +return s}, +p(a,b,c){throw A.c(A.a7("Cannot assign element of immutable List."))}, +st(a,b){throw A.c(A.a7("Cannot resize immutable List."))}, +gN(a){var s +if(a.length>0){s=a[0] +s.toString +return s}throw A.c(A.R("No elements"))}, +ga1(a){var s,r=a.length +if(r>0){s=a[r-1] +s.toString +return s}throw A.c(A.R("No elements"))}, +gaI(a){var s,r=a.length +if(r===1){s=a[0] +s.toString +return s}if(r===0)throw A.c(A.R("No elements")) +throw A.c(A.R("More than one element"))}, +ct(a,b){return a[b]}, +$ici:1, +$ian:1, +$icy:1, +$iz:1, +$ie:1} +A.iH.prototype={ +gN(a){var s=this.a.firstChild +if(s==null)throw A.c(A.R("No elements")) +return s}, +ga1(a){var s=this.a.lastChild +if(s==null)throw A.c(A.R("No elements")) +return s}, +gaI(a){var s=this.a,r=s.childNodes.length +if(r===0)throw A.c(A.R("No elements")) +if(r>1)throw A.c(A.R("More than one element")) +s=s.firstChild +s.toString +return s}, +G(a,b){this.a.appendChild(b).toString}, +I(a,b){var s,r,q,p,o +if(b instanceof A.iH){s=b.a +r=this.a +if(s!==r)for(q=s.childNodes.length,p=0;pq.a.childNodes.length)throw A.c(A.cK(b,0,q.gt(q),null,null)) +s=q.a +r=s.childNodes +if(b===r.length)s.appendChild(c).toString +else s.insertBefore(c,r[b]).toString}, +hj(a){var s=this.ga1(this) +this.a.removeChild(s).toString +return s}, +F(a,b){return!1}, +p(a,b,c){var s=this.a +s.replaceChild(c,s.childNodes[b]).toString}, +gaj(a){var s=this.a.childNodes +return new A.BI(s,s.length,A.ch(s).h("BI"))}, +fz(a,b){throw A.c(A.a7("Cannot sort Node list"))}, +cA(a,b,c,d,e){throw A.c(A.a7("Cannot setRange on Node list"))}, +di(a,b,c,d){return this.cA(a,b,c,d,0)}, +gt(a){return this.a.childNodes.length}, +st(a,b){throw A.c(A.a7("Cannot set length on immutable List."))}, +i(a,b){return this.a.childNodes[b]}} +A.br.prototype={ +er(a){var s=a.parentNode +if(s!=null)s.removeChild(a).toString}, +aNK(a,b){var s,r,q +try{r=a.parentNode +r.toString +s=r +J.bBX(s,b,a)}catch(q){}return a}, +ao5(a){var s +for(;s=a.firstChild,s!=null;)a.removeChild(s).toString}, +j(a){var s=a.nodeValue +return s==null?this.ah4(a):s}, +azj(a,b,c){var s=a.replaceChild(b,c) +s.toString +return s}, +$ibr:1} +A.LM.prototype={ +gt(a){var s=a.length +s.toString +return s}, +i(a,b){var s=a.length,r=b>>>0!==b||b>=s +r.toString +if(r)throw A.c(A.f4(b,s,a,null,null)) +s=a[b] +s.toString +return s}, +p(a,b,c){throw A.c(A.a7("Cannot assign element of immutable List."))}, +st(a,b){throw A.c(A.a7("Cannot resize immutable List."))}, +gN(a){var s +if(a.length>0){s=a[0] +s.toString +return s}throw A.c(A.R("No elements"))}, +ga1(a){var s,r=a.length +if(r>0){s=a[r-1] +s.toString +return s}throw A.c(A.R("No elements"))}, +gaI(a){var s,r=a.length +if(r===1){s=a[0] +s.toString +return s}if(r===0)throw A.c(A.R("No elements")) +throw A.c(A.R("More than one element"))}, +ct(a,b){return a[b]}, +$ici:1, +$ian:1, +$icy:1, +$iz:1, +$ie:1} +A.a5v.prototype={ +geB(a){return a.icon}} +A.jK.prototype={ +gt(a){return a.length}, +$ijK:1} +A.a6q.prototype={ +gt(a){var s=a.length +s.toString +return s}, +i(a,b){var s=a.length,r=b>>>0!==b||b>=s +r.toString +if(r)throw A.c(A.f4(b,s,a,null,null)) +s=a[b] +s.toString +return s}, +p(a,b,c){throw A.c(A.a7("Cannot assign element of immutable List."))}, +st(a,b){throw A.c(A.a7("Cannot resize immutable List."))}, +gN(a){var s +if(a.length>0){s=a[0] +s.toString +return s}throw A.c(A.R("No elements"))}, +ga1(a){var s,r=a.length +if(r>0){s=a[r-1] +s.toString +return s}throw A.c(A.R("No elements"))}, +gaI(a){var s,r=a.length +if(r===1){s=a[0] +s.toString +return s}if(r===0)throw A.c(A.R("No elements")) +throw A.c(A.R("More than one element"))}, +ct(a,b){return a[b]}, +$ici:1, +$ian:1, +$icy:1, +$iz:1, +$ie:1} +A.lg.prototype={$ilg:1} +A.a7T.prototype={ +I(a,b){throw A.c(A.a7("Not supported"))}, +ao(a,b){return A.ms(a.get(b))!=null}, +i(a,b){return A.ms(a.get(b))}, +af(a,b){var s,r,q=a.entries() +for(;!0;){s=q.next() +r=s.done +r.toString +if(r)return +r=s.value[0] +r.toString +b.$2(r,A.ms(s.value[1]))}}, +gcP(a){var s=A.a([],t.s) +this.af(a,new A.aQq(s)) +return s}, +gbw(a){var s=A.a([],t.n4) +this.af(a,new A.aQr(s)) +return s}, +gt(a){var s=a.size +s.toString +return s}, +gai(a){var s=a.size +s.toString +return s===0}, +gdn(a){var s=a.size +s.toString +return s!==0}, +p(a,b,c){throw A.c(A.a7("Not supported"))}, +cJ(a,b,c){throw A.c(A.a7("Not supported"))}, +F(a,b){throw A.c(A.a7("Not supported"))}, +$ia6:1} +A.aQq.prototype={ +$2(a,b){return this.a.push(a)}, +$S:37} +A.aQr.prototype={ +$2(a,b){return this.a.push(b)}, +$S:37} +A.Nf.prototype={} +A.a8a.prototype={ +gt(a){return a.length}} +A.E8.prototype={$iE8:1} +A.jP.prototype={$ijP:1} +A.a94.prototype={ +gt(a){var s=a.length +s.toString +return s}, +i(a,b){var s=a.length,r=b>>>0!==b||b>=s +r.toString +if(r)throw A.c(A.f4(b,s,a,null,null)) +s=a[b] +s.toString +return s}, +p(a,b,c){throw A.c(A.a7("Cannot assign element of immutable List."))}, +st(a,b){throw A.c(A.a7("Cannot resize immutable List."))}, +gN(a){var s +if(a.length>0){s=a[0] +s.toString +return s}throw A.c(A.R("No elements"))}, +ga1(a){var s,r=a.length +if(r>0){s=a[r-1] +s.toString +return s}throw A.c(A.R("No elements"))}, +gaI(a){var s,r=a.length +if(r===1){s=a[0] +s.toString +return s}if(r===0)throw A.c(A.R("No elements")) +throw A.c(A.R("More than one element"))}, +ct(a,b){return a[b]}, +$ici:1, +$ian:1, +$icy:1, +$iz:1, +$ie:1} +A.jS.prototype={$ijS:1} +A.a9t.prototype={ +gt(a){var s=a.length +s.toString +return s}, +i(a,b){var s=a.length,r=b>>>0!==b||b>=s +r.toString +if(r)throw A.c(A.f4(b,s,a,null,null)) +s=a[b] +s.toString +return s}, +p(a,b,c){throw A.c(A.a7("Cannot assign element of immutable List."))}, +st(a,b){throw A.c(A.a7("Cannot resize immutable List."))}, +gN(a){var s +if(a.length>0){s=a[0] +s.toString +return s}throw A.c(A.R("No elements"))}, +ga1(a){var s,r=a.length +if(r>0){s=a[r-1] +s.toString +return s}throw A.c(A.R("No elements"))}, +gaI(a){var s,r=a.length +if(r===1){s=a[0] +s.toString +return s}if(r===0)throw A.c(A.R("No elements")) +throw A.c(A.R("More than one element"))}, +ct(a,b){return a[b]}, +$ici:1, +$ian:1, +$icy:1, +$iz:1, +$ie:1} +A.jT.prototype={ +gt(a){return a.length}, +$ijT:1} +A.Oa.prototype={ +I(a,b){J.f9(b,new A.aW4(a))}, +ao(a,b){return a.getItem(A.bs(b))!=null}, +i(a,b){return a.getItem(A.bs(b))}, +p(a,b,c){a.setItem(b,c)}, +cJ(a,b,c){var s +if(a.getItem(b)==null)a.setItem(b,c.$0()) +s=a.getItem(b) +return s==null?A.bs(s):s}, +F(a,b){var s +A.bs(b) +s=a.getItem(b) +a.removeItem(b) +return s}, +af(a,b){var s,r,q +for(s=0;!0;++s){r=a.key(s) +if(r==null)return +q=a.getItem(r) +q.toString +b.$2(r,q)}}, +gcP(a){var s=A.a([],t.s) +this.af(a,new A.aW5(s)) +return s}, +gbw(a){var s=A.a([],t.s) +this.af(a,new A.aW6(s)) +return s}, +gt(a){var s=a.length +s.toString +return s}, +gai(a){return a.key(0)==null}, +gdn(a){return a.key(0)!=null}, +$ia6:1} +A.aW4.prototype={ +$2(a,b){this.a.setItem(a,b)}, +$S:83} +A.aW5.prototype={ +$2(a,b){return this.a.push(a)}, +$S:83} +A.aW6.prototype={ +$2(a,b){return this.a.push(b)}, +$S:83} +A.iB.prototype={$iiB:1} +A.Oo.prototype={ +qD(a,b,c,d){var s,r="createContextualFragment" in window.Range.prototype +r.toString +if(r)return this.Oi(a,b,c,d) +s=A.bFq(""+b+"
",c,d) +r=document.createDocumentFragment() +r.toString +new A.iH(r).I(0,new A.iH(s)) +return r}} +A.a9Q.prototype={ +qD(a,b,c,d){var s,r="createContextualFragment" in window.Range.prototype +r.toString +if(r)return this.Oi(a,b,c,d) +r=document +s=r.createDocumentFragment() +s.toString +r=r.createElement("table") +r.toString +r=new A.iH(B.Kv.qD(r,b,c,d)) +r=new A.iH(r.gaI(r)) +new A.iH(s).I(0,new A.iH(r.gaI(r))) +return s}} +A.a9R.prototype={ +qD(a,b,c,d){var s,r="createContextualFragment" in window.Range.prototype +r.toString +if(r)return this.Oi(a,b,c,d) +r=document +s=r.createDocumentFragment() +s.toString +r=r.createElement("table") +r.toString +r=new A.iH(B.Kv.qD(r,b,c,d)) +new A.iH(s).I(0,new A.iH(r.gaI(r))) +return s}} +A.EE.prototype={$iEE:1} +A.jY.prototype={$ijY:1} +A.iC.prototype={$iiC:1} +A.aac.prototype={ +gt(a){var s=a.length +s.toString +return s}, +i(a,b){var s=a.length,r=b>>>0!==b||b>=s +r.toString +if(r)throw A.c(A.f4(b,s,a,null,null)) +s=a[b] +s.toString +return s}, +p(a,b,c){throw A.c(A.a7("Cannot assign element of immutable List."))}, +st(a,b){throw A.c(A.a7("Cannot resize immutable List."))}, +gN(a){var s +if(a.length>0){s=a[0] +s.toString +return s}throw A.c(A.R("No elements"))}, +ga1(a){var s,r=a.length +if(r>0){s=a[r-1] +s.toString +return s}throw A.c(A.R("No elements"))}, +gaI(a){var s,r=a.length +if(r===1){s=a[0] +s.toString +return s}if(r===0)throw A.c(A.R("No elements")) +throw A.c(A.R("More than one element"))}, +ct(a,b){return a[b]}, +$ici:1, +$ian:1, +$icy:1, +$iz:1, +$ie:1} +A.aad.prototype={ +gt(a){var s=a.length +s.toString +return s}, +i(a,b){var s=a.length,r=b>>>0!==b||b>=s +r.toString +if(r)throw A.c(A.f4(b,s,a,null,null)) +s=a[b] +s.toString +return s}, +p(a,b,c){throw A.c(A.a7("Cannot assign element of immutable List."))}, +st(a,b){throw A.c(A.a7("Cannot resize immutable List."))}, +gN(a){var s +if(a.length>0){s=a[0] +s.toString +return s}throw A.c(A.R("No elements"))}, +ga1(a){var s,r=a.length +if(r>0){s=a[r-1] +s.toString +return s}throw A.c(A.R("No elements"))}, +gaI(a){var s,r=a.length +if(r===1){s=a[0] +s.toString +return s}if(r===0)throw A.c(A.R("No elements")) +throw A.c(A.R("More than one element"))}, +ct(a,b){return a[b]}, +$ici:1, +$ian:1, +$icy:1, +$iz:1, +$ie:1} +A.aag.prototype={ +gt(a){var s=a.length +s.toString +return s}} +A.jZ.prototype={$ijZ:1} +A.aal.prototype={ +gt(a){var s=a.length +s.toString +return s}, +i(a,b){var s=a.length,r=b>>>0!==b||b>=s +r.toString +if(r)throw A.c(A.f4(b,s,a,null,null)) +s=a[b] +s.toString +return s}, +p(a,b,c){throw A.c(A.a7("Cannot assign element of immutable List."))}, +st(a,b){throw A.c(A.a7("Cannot resize immutable List."))}, +gN(a){var s +if(a.length>0){s=a[0] +s.toString +return s}throw A.c(A.R("No elements"))}, +ga1(a){var s,r=a.length +if(r>0){s=a[r-1] +s.toString +return s}throw A.c(A.R("No elements"))}, +gaI(a){var s,r=a.length +if(r===1){s=a[0] +s.toString +return s}if(r===0)throw A.c(A.R("No elements")) +throw A.c(A.R("More than one element"))}, +ct(a,b){return a[b]}, +$ici:1, +$ian:1, +$icy:1, +$iz:1, +$ie:1} +A.aam.prototype={ +gt(a){return a.length}} +A.aaJ.prototype={ +j(a){var s=String(a) +s.toString +return s}} +A.aaS.prototype={ +gt(a){return a.length}} +A.Fa.prototype={ +iM(a,b){return a.send(b)}} +A.v0.prototype={ +aMk(a,b,c,d){var s=A.bMh(a.open(b,c,d)) +return s}, +$iv0:1} +A.p5.prototype={$ip5:1} +A.Ft.prototype={$iFt:1} +A.aeC.prototype={ +gt(a){var s=a.length +s.toString +return s}, +i(a,b){var s=a.length,r=b>>>0!==b||b>=s +r.toString +if(r)throw A.c(A.f4(b,s,a,null,null)) +s=a[b] +s.toString +return s}, +p(a,b,c){throw A.c(A.a7("Cannot assign element of immutable List."))}, +st(a,b){throw A.c(A.a7("Cannot resize immutable List."))}, +gN(a){var s +if(a.length>0){s=a[0] +s.toString +return s}throw A.c(A.R("No elements"))}, +ga1(a){var s,r=a.length +if(r>0){s=a[r-1] +s.toString +return s}throw A.c(A.R("No elements"))}, +gaI(a){var s,r=a.length +if(r===1){s=a[0] +s.toString +return s}if(r===0)throw A.c(A.R("No elements")) +throw A.c(A.R("More than one element"))}, +ct(a,b){return a[b]}, +$ici:1, +$ian:1, +$icy:1, +$iz:1, +$ie:1} +A.Qy.prototype={ +j(a){var s,r,q,p=a.left +p.toString +s=a.top +s.toString +r=a.width +r.toString +q=a.height +q.toString +return"Rectangle ("+A.h(p)+", "+A.h(s)+") "+A.h(r)+" x "+A.h(q)}, +l(a,b){var s,r +if(b==null)return!1 +if(t.Bb.b(b)){s=a.left +s.toString +r=J.bK(b) +if(s===r.goU(b)){s=a.top +s.toString +if(s===r.gBG(b)){s=a.width +s.toString +if(s===r.gf3(b)){s=a.height +s.toString +r=s===r.gdm(b) +s=r}else s=!1}else s=!1}else s=!1}else s=!1 +return s}, +gv(a){var s,r,q,p=a.left +p.toString +s=a.top +s.toString +r=a.width +r.toString +q=a.height +q.toString +return A.X(p,s,r,q,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +ga1S(a){return a.height}, +gdm(a){var s=a.height +s.toString +return s}, +ga6m(a){return a.width}, +gf3(a){var s=a.width +s.toString +return s}} +A.agn.prototype={ +gt(a){var s=a.length +s.toString +return s}, +i(a,b){var s=a.length,r=b>>>0!==b||b>=s +r.toString +if(r)throw A.c(A.f4(b,s,a,null,null)) +return a[b]}, +p(a,b,c){throw A.c(A.a7("Cannot assign element of immutable List."))}, +st(a,b){throw A.c(A.a7("Cannot resize immutable List."))}, +gN(a){if(a.length>0)return a[0] +throw A.c(A.R("No elements"))}, +ga1(a){var s=a.length +if(s>0)return a[s-1] +throw A.c(A.R("No elements"))}, +gaI(a){var s=a.length +if(s===1)return a[0] +if(s===0)throw A.c(A.R("No elements")) +throw A.c(A.R("More than one element"))}, +ct(a,b){return a[b]}, +$ici:1, +$ian:1, +$icy:1, +$iz:1, +$ie:1} +A.RZ.prototype={ +gt(a){var s=a.length +s.toString +return s}, +i(a,b){var s=a.length,r=b>>>0!==b||b>=s +r.toString +if(r)throw A.c(A.f4(b,s,a,null,null)) +s=a[b] +s.toString +return s}, +p(a,b,c){throw A.c(A.a7("Cannot assign element of immutable List."))}, +st(a,b){throw A.c(A.a7("Cannot resize immutable List."))}, +gN(a){var s +if(a.length>0){s=a[0] +s.toString +return s}throw A.c(A.R("No elements"))}, +ga1(a){var s,r=a.length +if(r>0){s=a[r-1] +s.toString +return s}throw A.c(A.R("No elements"))}, +gaI(a){var s,r=a.length +if(r===1){s=a[0] +s.toString +return s}if(r===0)throw A.c(A.R("No elements")) +throw A.c(A.R("More than one element"))}, +ct(a,b){return a[b]}, +$ici:1, +$ian:1, +$icy:1, +$iz:1, +$ie:1} +A.am4.prototype={ +gt(a){var s=a.length +s.toString +return s}, +i(a,b){var s=a.length,r=b>>>0!==b||b>=s +r.toString +if(r)throw A.c(A.f4(b,s,a,null,null)) +s=a[b] +s.toString +return s}, +p(a,b,c){throw A.c(A.a7("Cannot assign element of immutable List."))}, +st(a,b){throw A.c(A.a7("Cannot resize immutable List."))}, +gN(a){var s +if(a.length>0){s=a[0] +s.toString +return s}throw A.c(A.R("No elements"))}, +ga1(a){var s,r=a.length +if(r>0){s=a[r-1] +s.toString +return s}throw A.c(A.R("No elements"))}, +gaI(a){var s,r=a.length +if(r===1){s=a[0] +s.toString +return s}if(r===0)throw A.c(A.R("No elements")) +throw A.c(A.R("More than one element"))}, +ct(a,b){return a[b]}, +$ici:1, +$ian:1, +$icy:1, +$iz:1, +$ie:1} +A.amg.prototype={ +gt(a){var s=a.length +s.toString +return s}, +i(a,b){var s=a.length,r=b>>>0!==b||b>=s +r.toString +if(r)throw A.c(A.f4(b,s,a,null,null)) +s=a[b] +s.toString +return s}, +p(a,b,c){throw A.c(A.a7("Cannot assign element of immutable List."))}, +st(a,b){throw A.c(A.a7("Cannot resize immutable List."))}, +gN(a){var s +if(a.length>0){s=a[0] +s.toString +return s}throw A.c(A.R("No elements"))}, +ga1(a){var s,r=a.length +if(r>0){s=a[r-1] +s.toString +return s}throw A.c(A.R("No elements"))}, +gaI(a){var s,r=a.length +if(r===1){s=a[0] +s.toString +return s}if(r===0)throw A.c(A.R("No elements")) +throw A.c(A.R("More than one element"))}, +ct(a,b){return a[b]}, +$ici:1, +$ian:1, +$icy:1, +$iz:1, +$ie:1} +A.adn.prototype={ +I(a,b){J.f9(b,new A.b0t(this))}, +uC(a,b,c){var s=t.N +return A.bjb(this,s,s,b,c)}, +cJ(a,b,c){var s=this.a,r=s.hasAttribute(b) +r.toString +if(!r)s.setAttribute(b,c.$0()) +s=s.getAttribute(b) +return s==null?A.bs(s):s}, +ab(a){var s,r,q,p,o +for(s=this.gcP(this),r=s.length,q=this.a,p=0;p"))}, +G(a,b){throw A.c(A.a7("Cannot add to immutable List."))}, +I(a,b){throw A.c(A.a7("Cannot add to immutable List."))}, +fz(a,b){throw A.c(A.a7("Cannot sort immutable List."))}, +fu(a,b,c){throw A.c(A.a7("Cannot add to immutable List."))}, +hj(a){throw A.c(A.a7("Cannot remove from immutable List."))}, +F(a,b){throw A.c(A.a7("Cannot remove from immutable List."))}, +cA(a,b,c,d,e){throw A.c(A.a7("Cannot setRange on immutable List."))}, +di(a,b,c,d){return this.cA(a,b,c,d,0)}} +A.LN.prototype={ +zk(a){return B.b.ed(this.a,new A.aKD(a))}, +uz(a,b,c){return B.b.ed(this.a,new A.aKC(a,b,c))}, +$ioA:1} +A.aKD.prototype={ +$1(a){return a.zk(this.a)}, +$S:293} +A.aKC.prototype={ +$1(a){return a.uz(this.a,this.b,this.c)}, +$S:293} +A.Tn.prototype={ +alW(a,b,c,d){var s,r,q +this.a.I(0,c) +s=b.jm(0,new A.baD()) +r=b.jm(0,new A.baE()) +this.b.I(0,s) +q=this.c +q.I(0,B.bU) +q.I(0,r)}, +zk(a){return this.a.n(0,A.Jz(a))}, +uz(a,b,c){var s,r=this,q=A.Jz(a),p=r.c,o=q+"::"+b +if(p.n(0,o))return r.d.aEm(c) +else{s="*::"+b +if(p.n(0,s))return r.d.aEm(c) +else{p=r.b +if(p.n(0,o))return!0 +else if(p.n(0,s))return!0 +else if(p.n(0,q+"::*"))return!0 +else if(p.n(0,"*::*"))return!0}}return!1}, +$ioA:1} +A.baD.prototype={ +$1(a){return!B.b.n(B.nm,a)}, +$S:10} +A.baE.prototype={ +$1(a){return B.b.n(B.nm,a)}, +$S:10} +A.amD.prototype={ +uz(a,b,c){if(this.ak8(a,b,c))return!0 +if(b==="template"&&c==="")return!0 +if(a.getAttribute("template")==="")return this.e.n(0,b) +return!1}} +A.bbA.prototype={ +$1(a){return"TEMPLATE::"+a}, +$S:19} +A.amh.prototype={ +zk(a){var s +if(t.MF.b(a))return!1 +s=t.ry.b(a) +if(s&&A.Jz(a)==="foreignObject")return!1 +if(s)return!0 +return!1}, +uz(a,b,c){if(b==="is"||B.c.c8(b,"on"))return!1 +return this.zk(a)}, +$ioA:1} +A.BI.prototype={ +u(){var s=this,r=s.c+1,q=s.b +if(r") +return}if(!l.a.zk(a)){l.Dv(a,b) +window.toString +s=A.h(b) +r=typeof console!="undefined" +r.toString +if(r)window.console.warn("Removing disallowed element <"+e+"> from "+s) +return}if(g!=null)if(!l.a.uz(a,"is",g)){l.Dv(a,b) +window.toString +s=typeof console!="undefined" +s.toString +if(s)window.console.warn("Removing disallowed type extension <"+e+' is="'+g+'">') +return}s=f.gcP(f) +q=A.a(s.slice(0),A.ab(s)) +for(p=f.gcP(f).length-1,s=f.a,r="Removing disallowed attribute <"+e+" ";p>=0;--p){o=q[p] +n=l.a +m=J.bCK(o) +A.bs(o) +if(!n.uz(a,m,s.getAttribute(o))){window.toString +n=s.getAttribute(o) +m=typeof console!="undefined" +m.toString +if(m)window.console.warn(r+o+'="'+A.h(n)+'">') +s.removeAttribute(o)}}if(t.aW.b(a)){s=a.content +s.toString +l.XT(s)}}, +af3(a,b){var s=a.nodeType +s.toString +switch(s){case 1:this.azV(a,b) +break +case 8:case 11:case 3:case 4:break +default:this.Dv(a,b)}}} +A.bcz.prototype={ +$2(a,b){var s,r,q,p,o,n=this.a +n.af3(a,b) +s=a.lastChild +for(;s!=null;){r=null +try{r=s.previousSibling +if(r!=null){q=r.nextSibling +p=s +p=q==null?p!=null:q!==p +q=p}else q=!1 +if(q){q=A.R("Corrupt HTML") +throw A.c(q)}}catch(o){q=s;++n.b +p=q.parentNode +if(a!==p){if(p!=null)p.removeChild(q).toString}else a.removeChild(q).toString +s=null +r=a.lastChild}if(s!=null)this.$2(s,a) +s=r}}, +$S:644} +A.aeD.prototype={} +A.afl.prototype={} +A.afm.prototype={} +A.afn.prototype={} +A.afo.prototype={} +A.afX.prototype={} +A.afY.prototype={} +A.agE.prototype={} +A.agF.prototype={} +A.aid.prototype={} +A.aie.prototype={} +A.aif.prototype={} +A.aig.prototype={} +A.aiz.prototype={} +A.aiA.prototype={} +A.aj3.prototype={} +A.aj4.prototype={} +A.akZ.prototype={} +A.Tr.prototype={} +A.Ts.prototype={} +A.am2.prototype={} +A.am3.prototype={} +A.ama.prototype={} +A.an_.prototype={} +A.an0.prototype={} +A.TX.prototype={} +A.TY.prototype={} +A.anc.prototype={} +A.and.prototype={} +A.aof.prototype={} +A.aog.prototype={} +A.aot.prototype={} +A.aou.prototype={} +A.aoK.prototype={} +A.aoL.prototype={} +A.apm.prototype={} +A.apn.prototype={} +A.app.prototype={} +A.apq.prototype={} +A.bb2.prototype={ +AB(a){var s,r=this.a,q=r.length +for(s=0;s")),new A.aBL(),r.h("en"))}, +af(a,b){B.b.af(A.hz(this.gqf(),!1,t.lU),b)}, +p(a,b,c){var s=this.gqf() +J.bCC(s.b.$1(J.rR(s.a,b)),c)}, +st(a,b){var s=J.aZ(this.gqf().a) +if(b>=s)return +else if(b<0)throw A.c(A.bU("Invalid list length",null)) +this.q0(0,b,s)}, +G(a,b){this.b.a.appendChild(b).toString}, +I(a,b){var s,r +for(s=J.ao(b),r=this.b.a;s.u();)r.appendChild(s.gH(s)).toString}, +n(a,b){if(!t.lU.b(b))return!1 +return b.parentNode===this.a}, +fz(a,b){throw A.c(A.a7("Cannot sort filtered list"))}, +cA(a,b,c,d,e){throw A.c(A.a7("Cannot setRange on filtered list"))}, +di(a,b,c,d){return this.cA(a,b,c,d,0)}, +q0(a,b,c){var s=this.gqf() +s=A.bjK(s,b,s.$ti.h("z.E")) +B.b.af(A.hz(A.aX_(s,c-b,A.k(s).h("z.E")),!0,t.lU),new A.aBM())}, +ab(a){J.bnq(this.b.a)}, +hj(a){var s=this.gqf(),r=s.b.$1(J.rT(s.a)) +J.Ht(r) +return r}, +fu(a,b,c){var s,r +if(b===J.aZ(this.gqf().a))this.b.a.appendChild(c).toString +else{s=this.gqf() +r=s.b.$1(J.rR(s.a,b)) +r.parentNode.insertBefore(c,r).toString}}, +F(a,b){return!1}, +gt(a){return J.aZ(this.gqf().a)}, +i(a,b){var s=this.gqf() +return s.b.$1(J.rR(s.a,b))}, +gaj(a){var s=A.hz(this.gqf(),!1,t.lU) +return new J.e6(s,s.length,A.ab(s).h("e6<1>"))}} +A.aBK.prototype={ +$1(a){return t.lU.b(a)}, +$S:294} +A.aBL.prototype={ +$1(a){return t.lU.a(a)}, +$S:668} +A.aBM.prototype={ +$1(a){return J.Ht(a)}, +$S:674} +A.J0.prototype={} +A.o6.prototype={$io6:1} +A.wo.prototype={ +a8h(a,b){var s=t.z +return this.aoN(a,b,A.F(s,s))}, +aoN(a,b,c){var s=a.createObjectStore(b,A.bwc(c)) +s.toString +return s}, +$iwo:1} +A.Kn.prototype={ +abH(a,b,c,d){var s,r,q,p,o,n=null +try{s=null +p=a.open(b,d) +p.toString +s=p +p=s +A.je(p,"upgradeneeded",c,!1,t.mv) +if(n!=null)A.je(s,"blocked",n,!1,t.I3) +p=A.bde(s,t.Bk) +return p}catch(o){r=A.ai(o) +q=A.aH(o) +p=A.oi(r,q,t.Bk) +return p}}} +A.bdf.prototype={ +$1(a){this.b.cM(0,new A.nz([],[]).t1(this.a.result,!1))}, +$S:57} +A.Ck.prototype={$iCk:1} +A.LQ.prototype={ +zT(a,b){var s,r,q,p +try{q=a.delete(b) +q.toString +q=A.bde(q,t.z) +return q}catch(p){s=A.ai(p) +r=A.aH(p) +q=A.oi(s,r,t.z) +return q}}, +Wx(a,b,c){var s,r,q,p,o +try{s=null +if(c!=null)s=this.a3h(a,b,c) +else s=this.ayS(a,b) +p=A.bde(s,t.z) +return p}catch(o){r=A.ai(o) +q=A.aH(o) +p=A.oi(r,q,t.z) +return p}}, +aeG(a,b){var s,r,q,p,o +try{p=a.get(b) +p.toString +s=p +p=A.bde(s,t.z) +return p}catch(o){r=A.ai(o) +q=A.aH(o) +p=A.oi(r,q,t.z) +return p}}, +abI(a,b){var s=a.openCursor(null) +s.toString +return A.bId(s,!0,t.WS)}, +a3h(a,b,c){var s +if(c!=null){s=a.put(new A.TH([],[]).rk(b),new A.TH([],[]).rk(c)) +s.toString +return s}s=a.put(new A.TH([],[]).rk(b)) +s.toString +return s}, +ayS(a,b){return this.a3h(a,b,null)}} +A.aKO.prototype={ +$1(a){var s=new A.nz([],[]).t1(this.a.result,!1),r=this.b +if(s==null)r.ad(0) +else{r.G(0,s) +r=r.b +if((r&1)!==0)s.continue()}}, +$S:57} +A.v_.prototype={$iv_:1} +A.qr.prototype={ +j(a){var s=""+"OS Error",r=this.a +if(r.length!==0){s=s+": "+r +r=this.b +if(r!==-1)s=s+", errno = "+B.f.j(r)}else{r=this.b +if(r!==-1)s=s+": errno = "+B.f.j(r)}return s.charCodeAt(0)==0?s:s}, +$icm:1} +A.wN.prototype={} +A.iV.prototype={ +Jw(a){var s=this,r=""+a,q=s.a +if(q.length!==0){r=r+(": "+q)+(", path = '"+s.b+"'") +q=s.c +if(q!=null)r+=" ("+q.j(0)+")"}else{q=s.c +if(q!=null)r=r+(": "+q.j(0))+(", path = '"+s.b+"'") +else r+=": "+s.b}return r.charCodeAt(0)==0?r:r}, +j(a){return this.Jw("FileSystemException")}, +$icm:1} +A.M6.prototype={ +j(a){return this.Jw("PathAccessException")}} +A.M7.prototype={ +j(a){return this.Jw("PathExistsException")}} +A.M8.prototype={ +j(a){return this.Jw("PathNotFoundException")}} +A.ag_.prototype={ +ci(a,b,c,d){var s=this,r=s.a=A.ln(new A.b3C(s),s.gava(s),s.gayY(),!0,t.E) +return new A.d_(r,A.k(r).h("d_<1>")).ci(a,b,c,d)}, +h2(a,b,c){return this.ci(a,null,b,c)}, +n_(a,b,c){return this.ci(a,b,c,null)}, +yy(){var s,r,q=this +if(q.w||q.x)return q.f.a +q.x=!0 +s=q.c.ad(0) +r=q.a +r===$&&A.b() +s.me(r.gww()).fv(new A.b3v(q)) +return q.f.a}, +RL(){var s=this +if(s.w)return +if(s.y){s.yy() +return}s.w=!0 +s.c.hB(0,65536).b9(new A.b3w(s),t.P).me(new A.b3x(s))}, +avb(a){var s=this,r=new A.b3y(s,new A.b3A(s)),q=new A.b3B(s),p=s.c +if(p!=null)r.$1(p) +else A.bpv(s.b).abG(0,B.mN).fe(r,q,t.H)}} +A.b3C.prototype={ +$0(){var s=this.a +s.r=!0 +return s.yy()}, +$S:36} +A.b3v.prototype={ +$0(){var s=this.a +s.f.fj(0) +s=s.a +s===$&&A.b() +s.ad(0)}, +$S:0} +A.b3w.prototype={ +$1(a){var s,r,q,p=this.a +p.w=!1 +if(p.r){p.yy() +return}s=a.length +p.d=p.d+s +if(s!==0)r=!1 +else r=!0 +if(r)p.y=!0 +if(!p.y){r=p.a +r===$&&A.b() +q=r.b +r=!((q&1)!==0?(r.gkK().e&4)!==0:(q&2)===0)}else r=!1 +if(r)p.RL() +if(s>0){s=p.a +s===$&&A.b() +s.G(0,a)}if(p.y)p.yy()}, +$S:291} +A.b3x.prototype={ +$2(a,b){var s,r=this.a +if(!r.r){s=r.a +s===$&&A.b() +s.dO(a,b) +r.yy() +r.r=!0}}, +$S:120} +A.b3A.prototype={ +$1(a){var s=this.a +s.c=a +s.w=!1 +s.RL()}, +$S:290} +A.b3y.prototype={ +$1(a){var s=this.a,r=s.d,q=this.b +if(r>0)a.afz(0,r).fe(q,new A.b3z(s),t.H) +else q.$1(a)}, +$S:290} +A.b3z.prototype={ +$2(a,b){var s=this.a,r=s.a +r===$&&A.b() +r.dO(a,b) +s.w=!1 +s.yy()}, +$S:120} +A.b3B.prototype={ +$2(a,b){var s=this.a,r=s.a +r===$&&A.b() +r.dO(a,b) +s.a.ad(0) +s.f.fj(0)}, +$S:58} +A.QV.prototype={ +gdN(a){return this.a}, +L2(){A.bMp(A.btR(),this.b)}, +abG(a,b){if(b!==B.mN&&b!==B.mO&&b!==B.Sx&&b!==B.t1&&b!==B.Sy)return A.oi(new A.kQ(!1,null,null,"Invalid file mode for this operation"),null,t.YK) +return A.btJ(5,[null,this.b,b.a]).b9(new A.b3E(this),t.YK)}, +r_(a){return this.abG(a,B.mN)}, +vf(a){return A.btJ(12,[null,this.b]).b9(new A.b3D(this),t.S)}, +aKQ(){A.bMq(A.btR(),this.b)}, +G3(){return this.r_(0).b9(new A.b3G(new A.b3K(),new A.b3H()),t.E)}, +j(a){return"File: '"+this.a+"'"}, +$iJJ:1} +A.b3E.prototype={ +$1(a){var s=this.a.a +A.VI(a,"Cannot open file",s) +return A.bN3(a,s)}, +$S:289} +A.b3D.prototype={ +$1(a){A.VI(a,"Cannot retrieve length of file",this.a.a) +return a}, +$S:71} +A.b3K.prototype={ +$1(a){var s=A.a([],t.XE),r=new A.a8($.a9,t.Qy) +new A.b3L(a,new A.b1n(s),new A.aD(r,t.gI)).$0() +return r}, +$S:287} +A.b3L.prototype={ +$0(){var s=this,r=s.c +s.a.hB(0,65536).fe(new A.b3M(s.b,s,r),r.gKs(),t.P)}, +$S:0} +A.b3M.prototype={ +$1(a){var s=this.a +if(a.length>0){s.G(0,a) +this.b.$0()}else this.c.cM(0,s.aOh())}, +$S:291} +A.b3H.prototype={ +$2(a,b){var s,r={} +r.a=new Uint8Array(b) +r.b=0 +s=new A.a8($.a9,t.Qy) +new A.b3I(r,a,b,new A.aD(s,t.gI)).$0() +return s}, +$S:711} +A.b3I.prototype={ +$0(){var s=this,r=s.a,q=r.a,p=r.b,o=s.c,n=s.d +s.b.aNd(q,p,Math.min(p+16777216,o)).fe(new A.b3J(r,s,o,n),n.gKs(),t.P)}, +$S:0} +A.b3J.prototype={ +$1(a){var s,r,q=this +if(a>0){q.a.b+=a +q.b.$0()}else{s=q.a +r=s.b +if(r")),!0,t.z) +return A.bkY(s[a].apply(s,r))}, +aEZ(a){return this.zw(a,null)}, +gv(a){return 0}} +A.KC.prototype={} +A.xj.prototype={ +a_q(a){var s=this,r=a<0||a>=s.gt(s) +if(r)throw A.c(A.cK(a,0,s.gt(s),null,null))}, +i(a,b){if(A.iK(b))this.a_q(b) +return this.aha(0,b)}, +p(a,b,c){if(A.iK(b))this.a_q(b) +this.Zq(0,b,c)}, +gt(a){var s=this.a.length +if(typeof s==="number"&&s>>>0===s)return s +throw A.c(A.R("Bad JsArray length"))}, +st(a,b){this.Zq(0,"length",b)}, +G(a,b){this.zw("push",[b])}, +I(a,b){this.zw("push",b instanceof Array?b:A.hz(b,!0,t.z))}, +fu(a,b,c){var s=this,r=b<0||b>=s.gt(s)+1 +if(r)A.q(A.cK(b,0,s.gt(s),null,null)) +s.zw("splice",[b,0,c])}, +hj(a){if(this.gt(this)===0)throw A.c(A.c6(-1)) +return this.aEZ("pop")}, +cA(a,b,c,d,e){var s,r +A.bH0(b,c,this.gt(this)) +s=c-b +if(s===0)return +if(e<0)throw A.c(A.bU(e,null)) +r=[b,s] +B.b.I(r,J.aqU(d,e).q2(0,s)) +this.zw("splice",r)}, +di(a,b,c,d){return this.cA(a,b,c,d,0)}, +fz(a,b){this.zw("sort",b==null?[]:[b])}, +$ian:1, +$iz:1, +$ie:1} +A.G7.prototype={ +p(a,b,c){return this.ahb(0,b,c)}} +A.bfI.prototype={ +$1(a){var s,r,q,p,o +if(A.bvv(a))return a +s=this.a +if(s.ao(0,a))return s.i(0,a) +if(t.pE.b(a)){r={} +s.p(0,a,r) +for(s=J.bK(a),q=J.ao(s.gcP(a));q.u();){p=q.gH(q) +r[p]=this.$1(s.i(a,p))}return r}else if(t.VG.b(a)){o=[] +s.p(0,a,o) +B.b.I(o,J.co(a,this,t.z)) +return o}else return a}, +$S:123} +A.bga.prototype={ +$1(a){return this.a.cM(0,a)}, +$S:31} +A.bgb.prototype={ +$1(a){if(a==null)return this.a.ms(new A.a5x(a===undefined)) +return this.a.ms(a)}, +$S:31} +A.beP.prototype={ +$1(a){var s,r,q,p,o,n,m,l,k,j,i +if(A.bvu(a))return a +s=this.a +a.toString +if(s.ao(0,a))return s.i(0,a) +if(a instanceof Date)return A.mJ(a.getTime(),!0) +if(a instanceof RegExp)throw A.c(A.bU("structured clone of RegExp",null)) +if(typeof Promise!="undefined"&&a instanceof Promise)return A.ly(a,t.X) +r=Object.getPrototypeOf(a) +if(r===Object.prototype||r===null){q=t.X +p=A.F(q,q) +s.p(0,a,p) +o=Object.keys(a) +n=[] +for(s=J.cn(o),q=s.gaj(o);q.u();)n.push(A.blw(q.gH(q))) +for(m=0;m4294967296)throw A.c(A.c6(u.E+a)) +return Math.random()*a>>>0}, +abn(){return Math.random()<0.5}} +A.b8q.prototype={ +alU(a){var s,r,q,p,o,n,m,l=this,k=4294967296,j=a<0?-1:0 +do{s=a>>>0 +a=B.f.cY(a-s,k) +r=a>>>0 +a=B.f.cY(a-r,k) +q=(~s>>>0)+(s<<21>>>0) +p=q>>>0 +r=(~r>>>0)+((r<<21|s>>>11)>>>0)+B.f.cY(q-p,k)>>>0 +q=((p^(p>>>24|r<<8))>>>0)*265 +s=q>>>0 +r=((r^r>>>24)>>>0)*265+B.f.cY(q-s,k)>>>0 +q=((s^(s>>>14|r<<18))>>>0)*21 +s=q>>>0 +r=((r^r>>>14)>>>0)*21+B.f.cY(q-s,k)>>>0 +s=(s^(s>>>28|r<<4))>>>0 +r=(r^r>>>28)>>>0 +q=(s<<31>>>0)+s +p=q>>>0 +o=B.f.cY(q-p,k) +q=l.a*1037 +n=l.a=q>>>0 +m=l.b*1037+B.f.cY(q-n,k)>>>0 +l.b=m +n=(n^p)>>>0 +l.a=n +o=(m^r+((r<<31|s>>>1)>>>0)+o>>>0)>>>0 +l.b=o}while(a!==j) +if(o===0&&n===0)l.a=23063 +l.wg() +l.wg() +l.wg() +l.wg()}, +wg(){var s=this,r=s.a,q=4294901760*r,p=q>>>0,o=55905*r,n=o>>>0,m=n+p+s.b +r=m>>>0 +s.a=r +s.b=B.f.cY(o-n+(q-p)+(m-r),4294967296)>>>0}, +xu(a){var s,r,q,p=this +if(a<=0||a>4294967296)throw A.c(A.c6(u.E+a)) +s=a-1 +if((a&s)>>>0===0){p.wg() +return(p.a&s)>>>0}do{p.wg() +r=p.a +q=r%a}while(r-q+a>=4294967296) +return q}, +abn(){this.wg() +return(this.a&1)===0}} +A.b5I.prototype={ +alS(){var s=self.crypto +if(s!=null)if(s.getRandomValues!=null)return +throw A.c(A.a7("No source of cryptographically secure random numbers available."))}, +xu(a){var s,r,q,p,o,n,m,l,k +if(a<=0||a>4294967296)throw A.c(A.c6(u.E+a)) +if(a>255)if(a>65535)s=a>16777215?4:3 +else s=2 +else s=1 +r=this.a +r.setUint32(0,0,!1) +q=4-s +p=A.fY(Math.pow(256,s)) +for(o=a-1,n=(a&o)===0;!0;){m=r.buffer +m=new Uint8Array(m,q,s) +crypto.getRandomValues(m) +l=r.getUint32(0,!1) +if(n)return(l&o)>>>0 +k=l%a +if(l-k+a>>0!==b||b>=s +s.toString +if(s)throw A.c(A.f4(b,this.gt(a),a,null,null)) +s=a.getItem(b) +s.toString +return s}, +p(a,b,c){throw A.c(A.a7("Cannot assign element of immutable List."))}, +st(a,b){throw A.c(A.a7("Cannot resize immutable List."))}, +gN(a){var s=a.length +s.toString +if(s>0){s=a[0] +s.toString +return s}throw A.c(A.R("No elements"))}, +ga1(a){var s=a.length +s.toString +if(s>0){s=a[s-1] +s.toString +return s}throw A.c(A.R("No elements"))}, +gaI(a){var s=a.length +s.toString +if(s===1){s=a[0] +s.toString +return s}if(s===0)throw A.c(A.R("No elements")) +throw A.c(A.R("More than one element"))}, +ct(a,b){return this.i(a,b)}, +$ian:1, +$iz:1, +$ie:1} +A.ld.prototype={$ild:1} +A.a5A.prototype={ +gt(a){var s=a.length +s.toString +return s}, +i(a,b){var s=a.length +s.toString +s=b>>>0!==b||b>=s +s.toString +if(s)throw A.c(A.f4(b,this.gt(a),a,null,null)) +s=a.getItem(b) +s.toString +return s}, +p(a,b,c){throw A.c(A.a7("Cannot assign element of immutable List."))}, +st(a,b){throw A.c(A.a7("Cannot resize immutable List."))}, +gN(a){var s=a.length +s.toString +if(s>0){s=a[0] +s.toString +return s}throw A.c(A.R("No elements"))}, +ga1(a){var s=a.length +s.toString +if(s>0){s=a[s-1] +s.toString +return s}throw A.c(A.R("No elements"))}, +gaI(a){var s=a.length +s.toString +if(s===1){s=a[0] +s.toString +return s}if(s===0)throw A.c(A.R("No elements")) +throw A.c(A.R("More than one element"))}, +ct(a,b){return this.i(a,b)}, +$ian:1, +$iz:1, +$ie:1} +A.a6r.prototype={ +gt(a){return a.length}} +A.DS.prototype={$iDS:1} +A.a9D.prototype={ +gt(a){var s=a.length +s.toString +return s}, +i(a,b){var s=a.length +s.toString +s=b>>>0!==b||b>=s +s.toString +if(s)throw A.c(A.f4(b,this.gt(a),a,null,null)) +s=a.getItem(b) +s.toString +return s}, +p(a,b,c){throw A.c(A.a7("Cannot assign element of immutable List."))}, +st(a,b){throw A.c(A.a7("Cannot resize immutable List."))}, +gN(a){var s=a.length +s.toString +if(s>0){s=a[0] +s.toString +return s}throw A.c(A.R("No elements"))}, +ga1(a){var s=a.length +s.toString +if(s>0){s=a[s-1] +s.toString +return s}throw A.c(A.R("No elements"))}, +gaI(a){var s=a.length +s.toString +if(s===1){s=a[0] +s.toString +return s}if(s===0)throw A.c(A.R("No elements")) +throw A.c(A.R("More than one element"))}, +ct(a,b){return this.i(a,b)}, +$ian:1, +$iz:1, +$ie:1} +A.bh.prototype={ +ghK(a){return new A.a0Y(a,new A.iH(a))}, +qD(a,b,c,d){var s,r,q,p=A.a([],t.qF) +p.push(A.btQ(null)) +p.push(A.buk()) +p.push(new A.amh()) +c=new A.anO(new A.LN(p)) +p=document +s=p.body +s.toString +r=B.q0.aGA(s,''+b+"",c) +p=p.createDocumentFragment() +p.toString +s=new A.iH(r) +q=s.gaI(s) +for(;s=q.firstChild,s!=null;)p.appendChild(s).toString +return p}, +$ibh:1} +A.lp.prototype={$ilp:1} +A.aao.prototype={ +gt(a){var s=a.length +s.toString +return s}, +i(a,b){var s=a.length +s.toString +s=b>>>0!==b||b>=s +s.toString +if(s)throw A.c(A.f4(b,this.gt(a),a,null,null)) +s=a.getItem(b) +s.toString +return s}, +p(a,b,c){throw A.c(A.a7("Cannot assign element of immutable List."))}, +st(a,b){throw A.c(A.a7("Cannot resize immutable List."))}, +gN(a){var s=a.length +s.toString +if(s>0){s=a[0] +s.toString +return s}throw A.c(A.R("No elements"))}, +ga1(a){var s=a.length +s.toString +if(s>0){s=a[s-1] +s.toString +return s}throw A.c(A.R("No elements"))}, +gaI(a){var s=a.length +s.toString +if(s===1){s=a[0] +s.toString +return s}if(s===0)throw A.c(A.R("No elements")) +throw A.c(A.R("More than one element"))}, +ct(a,b){return this.i(a,b)}, +$ian:1, +$iz:1, +$ie:1} +A.ahm.prototype={} +A.ahn.prototype={} +A.aiJ.prototype={} +A.aiK.prototype={} +A.amd.prototype={} +A.ame.prototype={} +A.ani.prototype={} +A.anj.prototype={} +A.a0z.prototype={} +A.Yn.prototype={ +K(){return"ClipOp."+this.b}} +A.a6c.prototype={ +K(){return"PathFillType."+this.b}} +A.aLq.prototype={ +K(){return"PathOperation."+this.b}} +A.b1x.prototype={ +hg(a,b){A.bTc(this.a,this.b,a,b)}} +A.TB.prototype={ +hf(a){A.VZ(this.b,this.c,a)}} +A.rb.prototype={ +gt(a){var s=this.a +return s.gt(s)}, +xF(a){var s,r,q=this +if(!q.d&&q.e!=null){q.e.hg(a.a,a.gaaF()) +return!1}s=q.c +if(s<=0)return!0 +r=q.a0r(s-1) +q.a.iP(0,a) +return r}, +a0r(a){var s,r,q +for(s=this.a,r=!1;(s.c-s.b&s.a.length-1)>>>0>a;r=!0){q=s.Bo() +A.VZ(q.b,q.c,null)}return r}, +aps(){var s=this,r=s.a +if(!r.gai(r)&&s.e!=null){r=r.Bo() +s.e.hg(r.a,r.gaaF()) +A.h_(s.ga0n())}else s.d=!1}} +A.avB.prototype={ +abY(a,b,c){this.a.cJ(0,a,new A.avC()).xF(new A.TB(b,c,$.a9))}, +afx(a,b){var s=this.a.cJ(0,a,new A.avD()),r=s.e +s.e=new A.b1x(b,$.a9) +if(r==null&&!s.d){s.d=!0 +A.h_(s.ga0n())}}, +aIL(a){var s,r,q,p,o,n,m,l="Invalid arguments for 'resize' method sent to dev.flutter/channel-buffers (arguments must be a two-element list, channel name and new capacity)",k="Invalid arguments for 'overflow' method sent to dev.flutter/channel-buffers (arguments must be a two-element list, channel name and flag state)",j=A.dF(a.buffer,a.byteOffset,a.byteLength) +if(j[0]===7){s=j[1] +if(s>=254)throw A.c(A.cR("Unrecognized message sent to dev.flutter/channel-buffers (method name too long)")) +r=2+s +q=B.O.hu(0,B.L.d2(j,2,r)) +switch(q){case"resize":if(j[r]!==12)throw A.c(A.cR(l)) +p=r+1 +if(j[p]<2)throw A.c(A.cR(l));++p +if(j[p]!==7)throw A.c(A.cR("Invalid arguments for 'resize' method sent to dev.flutter/channel-buffers (first argument must be a string)"));++p +o=j[p] +if(o>=254)throw A.c(A.cR("Invalid arguments for 'resize' method sent to dev.flutter/channel-buffers (channel name must be less than 254 characters long)"));++p +r=p+o +n=B.O.hu(0,B.L.d2(j,p,r)) +if(j[r]!==3)throw A.c(A.cR("Invalid arguments for 'resize' method sent to dev.flutter/channel-buffers (second argument must be an integer in the range 0 to 2147483647)")) +this.acC(0,n,a.getUint32(r+1,B.bi===$.fH())) +break +case"overflow":if(j[r]!==12)throw A.c(A.cR(k)) +p=r+1 +if(j[p]<2)throw A.c(A.cR(k));++p +if(j[p]!==7)throw A.c(A.cR("Invalid arguments for 'overflow' method sent to dev.flutter/channel-buffers (first argument must be a string)"));++p +o=j[p] +if(o>=254)throw A.c(A.cR("Invalid arguments for 'overflow' method sent to dev.flutter/channel-buffers (channel name must be less than 254 characters long)"));++p +r=p+o +B.O.hu(0,B.L.d2(j,p,r)) +r=j[r] +if(r!==1&&r!==2)throw A.c(A.cR("Invalid arguments for 'overflow' method sent to dev.flutter/channel-buffers (second argument must be a boolean)")) +break +default:throw A.c(A.cR("Unrecognized method '"+q+"' sent to dev.flutter/channel-buffers"))}}else{m=A.a(B.O.hu(0,j).split("\r"),t.s) +if(m.length===3&&J.i(m[0],"resize"))this.acC(0,m[1],A.ef(m[2],null,null)) +else throw A.c(A.cR("Unrecognized message "+A.h(m)+" sent to dev.flutter/channel-buffers."))}}, +acC(a,b,c){var s=this.a,r=s.i(0,b) +if(r==null)s.p(0,b,new A.rb(A.or(c,t.S8),c)) +else{r.c=c +r.a0r(c)}}} +A.avC.prototype={ +$0(){return new A.rb(A.or(1,t.S8),1)}, +$S:284} +A.avD.prototype={ +$0(){return new A.rb(A.or(1,t.S8),1)}, +$S:284} +A.a5C.prototype={ +l(a,b){if(b==null)return!1 +return b instanceof A.a5C&&b.a===this.a&&b.b===this.b}, +gv(a){return A.X(this.a,this.b,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){return"OffsetBase("+B.e.az(this.a,1)+", "+B.e.az(this.b,1)+")"}} +A.l.prototype={ +ge3(){var s=this.a,r=this.b +return Math.sqrt(s*s+r*r)}, +gAb(){var s=this.a,r=this.b +return s*s+r*r}, +a2(a,b){return new A.l(this.a-b.a,this.b-b.b)}, +T(a,b){return new A.l(this.a+b.a,this.b+b.b)}, +au(a,b){return new A.l(this.a*b,this.b*b)}, +i1(a,b){return new A.l(this.a/b,this.b/b)}, +l(a,b){if(b==null)return!1 +return b instanceof A.l&&b.a===this.a&&b.b===this.b}, +gv(a){return A.X(this.a,this.b,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){return"Offset("+B.e.az(this.a,1)+", "+B.e.az(this.b,1)+")"}} +A.V.prototype={ +gai(a){return this.a<=0||this.b<=0}, +a2(a,b){var s=this +if(b instanceof A.V)return new A.l(s.a-b.a,s.b-b.b) +if(b instanceof A.l)return new A.V(s.a-b.a,s.b-b.b) +throw A.c(A.bU(b,null))}, +T(a,b){return new A.V(this.a+b.a,this.b+b.b)}, +au(a,b){return new A.V(this.a*b,this.b*b)}, +i1(a,b){return new A.V(this.a/b,this.b/b)}, +mg(a){return new A.l(a.a+this.a/2,a.b+this.b/2)}, +E8(a,b){return new A.l(b.a+this.a,b.b+this.b)}, +n(a,b){var s=b.a +if(s>=0)if(s=0&&s=1/0||s.b>=1/0||s.c>=1/0||s.d>=1/0}, +gFk(a){var s=this +return isFinite(s.a)&&isFinite(s.b)&&isFinite(s.c)&&isFinite(s.d)}, +gai(a){var s=this +return s.a>=s.c||s.b>=s.d}, +dw(a){var s=this,r=a.a,q=a.b +return new A.I(s.a+r,s.b+q,s.c+r,s.d+q)}, +bj(a,b,c){var s=this +return new A.I(s.a+b,s.b+c,s.c+b,s.d+c)}, +dZ(a){var s=this +return new A.I(s.a-a,s.b-a,s.c+a,s.d+a)}, +he(a){var s=this +return new A.I(Math.max(s.a,a.a),Math.max(s.b,a.b),Math.min(s.c,a.c),Math.min(s.d,a.d))}, +oH(a){var s=this +return new A.I(Math.min(s.a,a.a),Math.min(s.b,a.b),Math.max(s.c,a.c),Math.max(s.d,a.d))}, +FP(a){var s=this +if(s.c<=a.a||a.c<=s.a)return!1 +if(s.d<=a.b||a.d<=s.b)return!1 +return!0}, +giN(){var s=this +return Math.min(Math.abs(s.c-s.a),Math.abs(s.d-s.b))}, +gaOJ(){var s=this.a +return new A.l(s+(this.c-s)/2,this.b)}, +gaF3(){var s=this.b +return new A.l(this.a,s+(this.d-s)/2)}, +gbH(){var s=this,r=s.a,q=s.b +return new A.l(r+(s.c-r)/2,q+(s.d-q)/2)}, +gaEG(){var s=this.a +return new A.l(s+(this.c-s)/2,this.d)}, +n(a,b){var s=this,r=b.a +if(r>=s.a)if(r=s.b&&rd&&s!==0)return Math.min(a,d/s) +return a}, +Ca(){var s=this,r=s.c,q=s.a,p=Math.abs(r-q),o=s.d,n=s.b,m=Math.abs(o-n),l=s.Q,k=s.f,j=s.e,i=s.r,h=s.w,g=s.y,f=s.x,e=s.z,d=s.Ib(s.Ib(s.Ib(s.Ib(1,l,k,m),j,i,p),h,g,m),f,e,p) +if(d<1)return new A.lY(q,n,r,o,j*d,k*d,i*d,h*d,f*d,g*d,e*d,l*d,!1) +return new A.lY(q,n,r,o,j,k,i,h,f,g,e,l,!1)}, +n(a,b){var s,r,q,p,o,n,m=this,l=b.a,k=m.a +if(!(l=m.c)){s=b.b +s=s=m.d}else s=!0 +else s=!0 +if(s)return!1 +r=m.Ca() +q=r.e +if(ls-q&&b.bs-q&&b.b>m.d-r.y){p=l-s+q +o=r.y +n=b.b-m.d+o}else{q=r.z +if(lm.d-r.Q){p=l-k-q +o=r.Q +n=b.b-m.d+o}else return!0}}}p/=q +n/=o +if(p*p+n*n>1)return!1 +return!0}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(A.o(s)!==J.a1(b))return!1 +return b instanceof A.lY&&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.z===s.z&&b.Q===s.Q&&b.x===s.x&&b.y===s.y}, +gv(a){var s=this +return A.X(s.a,s.b,s.c,s.d,s.e,s.f,s.r,s.w,s.z,s.Q,s.x,s.y,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){var s,r,q=this,p=B.e.az(q.a,1)+", "+B.e.az(q.b,1)+", "+B.e.az(q.c,1)+", "+B.e.az(q.d,1),o=q.e,n=q.f,m=q.r,l=q.w +if(new A.bq(o,n).l(0,new A.bq(m,l))){s=q.x +r=q.y +s=new A.bq(m,l).l(0,new A.bq(s,r))&&new A.bq(s,r).l(0,new A.bq(q.z,q.Q))}else s=!1 +if(s){if(o===n)return"RRect.fromLTRBR("+p+", "+B.e.az(o,1)+")" +return"RRect.fromLTRBXY("+p+", "+B.e.az(o,1)+", "+B.e.az(n,1)+")"}return"RRect.fromLTRBAndCorners("+p+", topLeft: "+new A.bq(o,n).j(0)+", topRight: "+new A.bq(m,l).j(0)+", bottomRight: "+new A.bq(q.x,q.y).j(0)+", bottomLeft: "+new A.bq(q.z,q.Q).j(0)+")"}} +A.KG.prototype={ +K(){return"KeyEventType."+this.b}} +A.ko.prototype={ +avP(){var s=this.d +return"0x"+B.f.o0(s,16)+new A.aGm(B.e.eA(s/4294967296)).$0()}, +apW(){var s=this.e +if(s==null)return"" +switch(s){case"\n":return'"\\n"' +case"\t":return'"\\t"' +case"\r":return'"\\r"' +case"\b":return'"\\b"' +case"\f":return'"\\f"' +default:return'"'+s+'"'}}, +ayT(){var s=this.e +if(s==null)return"" +return" (0x"+new A.ad(new A.hQ(s),new A.aGn(),t.Hz.h("ad")).cq(0," ")+")"}, +j(a){var s=this,r=A.bH3(s.b),q=B.f.o0(s.c,16),p=s.avP(),o=s.apW(),n=s.ayT(),m=s.f?", synthesized":"" +return"KeyData(type: "+r+", physical: 0x"+q+", logical: "+p+", character: "+o+n+m+")"}} +A.aGm.prototype={ +$0(){switch(this.a){case 0:return" (Unicode)" +case 1:return" (Unprintable)" +case 2:return" (Flutter)" +case 23:return" (Web)"}return""}, +$S:14} +A.aGn.prototype={ +$1(a){return B.c.eM(B.f.o0(a,16),2,"0")}, +$S:318} +A.M.prototype={ +a7I(){var s=this +return 0.2126*A.bhX((s.gk(s)>>>16&255)/255)+0.7152*A.bhX((s.gk(s)>>>8&255)/255)+0.0722*A.bhX((s.gk(s)&255)/255)}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.a1(b)!==A.o(s))return!1 +return b instanceof A.M&&b.gk(b)===s.gk(s)}, +gv(a){return B.f.gv(this.gk(this))}, +j(a){return"Color(0x"+B.c.eM(B.f.o0(this.gk(this),16),8,"0")+")"}, +gk(a){return this.a}} +A.Oh.prototype={ +K(){return"StrokeCap."+this.b}} +A.a9G.prototype={ +K(){return"StrokeJoin."+this.b}} +A.a69.prototype={ +K(){return"PaintingStyle."+this.b}} +A.t0.prototype={ +K(){return"BlendMode."+this.b}} +A.AR.prototype={ +K(){return"Clip."+this.b}} +A.atu.prototype={ +K(){return"BlurStyle."+this.b}} +A.xI.prototype={ +l(a,b){if(b==null)return!1 +return b instanceof A.xI&&b.a===this.a&&b.b===this.b}, +gv(a){return A.X(this.a,this.b,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){return"MaskFilter.blur("+this.a.j(0)+", "+B.e.az(this.b,1)+")"}} +A.wO.prototype={ +K(){return"FilterQuality."+this.b}} +A.biQ.prototype={} +A.uE.prototype={ +cl(a,b){return new A.uE(this.a,this.b.au(0,b),this.c*b)}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +return b instanceof A.uE&&b.a.l(0,s.a)&&b.b.l(0,s.b)&&b.c===s.c}, +gv(a){return A.X(this.a,this.b,this.c,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){return"TextShadow("+this.a.j(0)+", "+this.b.j(0)+", "+A.h(this.c)+")"}} +A.tM.prototype={ +gt(a){return this.b}} +A.aLE.prototype={} +A.tC.prototype={ +j(a){var s,r=A.o(this).j(0),q=this.a,p=A.dC(q[2],0,0),o=q[1],n=A.dC(o,0,0),m=q[4],l=A.dC(m,0,0),k=A.dC(q[3],0,0) +o=A.dC(o,0,0) +s=q[0] +return r+"(buildDuration: "+(A.h((p.a-n.a)*0.001)+"ms")+", rasterDuration: "+(A.h((l.a-k.a)*0.001)+"ms")+", vsyncOverhead: "+(A.h((o.a-A.dC(s,0,0).a)*0.001)+"ms")+", totalSpan: "+(A.h((A.dC(m,0,0).a-A.dC(s,0,0).a)*0.001)+"ms")+", layerCacheCount: "+q[6]+", layerCacheBytes: "+q[7]+", pictureCacheCount: "+q[8]+", pictureCacheBytes: "+q[9]+", frameNumber: "+B.b.ga1(q)+")"}} +A.nW.prototype={ +K(){return"AppLifecycleState."+this.b}} +A.HN.prototype={ +K(){return"AppExitResponse."+this.b}} +A.d6.prototype={ +ge_(a){var s=this.a,r=B.cI.i(0,s) +return r==null?s:r}, +geV(){var s=this.c,r=B.dh.i(0,s) +return r==null?s:r}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +return b instanceof A.d6&&b.ge_(b)===s.ge_(s)&&b.b==s.b&&b.geV()==s.geV()}, +gv(a){var s=this +return A.X(s.ge_(s),s.b,s.geV(),B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){return this.rP("_")}, +rP(a){var s=this,r=s.ge_(s),q=s.b +if(q!=null)r+=a+q +if(s.c!=null)r+=a+A.h(s.geV()) +return r.charCodeAt(0)==0?r:r}} +A.ax5.prototype={ +K(){return"DartPerformanceMode."+this.b}} +A.E0.prototype={} +A.qA.prototype={ +K(){return"PointerChange."+this.b}} +A.oH.prototype={ +K(){return"PointerDeviceKind."+this.b}} +A.Db.prototype={ +K(){return"PointerSignalKind."+this.b}} +A.oG.prototype={ +j(a){return"PointerData(x: "+A.h(this.x)+", y: "+A.h(this.y)+")"}} +A.Mj.prototype={} +A.eU.prototype={ +j(a){return"SemanticsAction."+this.b}} +A.ex.prototype={ +j(a){return"SemanticsFlag."+this.b}} +A.aSf.prototype={} +A.ui.prototype={ +K(){return"PlaceholderAlignment."+this.b}} +A.lH.prototype={ +j(a){var s=B.a6H.i(0,this.a) +s.toString +return s}} +A.tB.prototype={ +l(a,b){if(b==null)return!1 +if(J.a1(b)!==A.o(this))return!1 +return b instanceof A.tB&&b.a===this.a&&b.b===this.b}, +gv(a){return A.X(this.a,this.b,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){return"FontVariation('"+this.a+"', "+A.h(this.b)+")"}} +A.nj.prototype={ +K(){return"TextAlign."+this.b}} +A.Ov.prototype={ +K(){return"TextBaseline."+this.b}} +A.Oz.prototype={ +l(a,b){if(b==null)return!1 +return b instanceof A.Oz&&b.a===this.a}, +gv(a){return B.f.gv(this.a)}, +j(a){var s,r=this.a +if(r===0)return"TextDecoration.none" +s=A.a([],t.s) +if((r&1)!==0)s.push("underline") +if((r&2)!==0)s.push("overline") +if((r&4)!==0)s.push("lineThrough") +if(s.length===1)return"TextDecoration."+s[0] +return"TextDecoration.combine(["+B.b.cq(s,", ")+"])"}} +A.aX8.prototype={ +K(){return"TextDecorationStyle."+this.b}} +A.aa5.prototype={ +K(){return"TextLeadingDistribution."+this.b}} +A.OC.prototype={ +l(a,b){var s +if(b==null)return!1 +if(J.a1(b)!==A.o(this))return!1 +if(b instanceof A.OC)s=b.c===this.c +else s=!1 +return s}, +gv(a){return A.X(!0,!0,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){return"TextHeightBehavior(applyHeightToFirstAscent: true, applyHeightToLastDescent: true, leadingDistribution: "+this.c.j(0)+")"}} +A.ma.prototype={ +K(){return"TextDirection."+this.b}} +A.hf.prototype={ +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.a1(b)!==A.o(s))return!1 +return b instanceof A.hf&&b.a===s.a&&b.b===s.b&&b.c===s.c&&b.d===s.d&&b.e===s.e}, +gv(a){var s=this +return A.X(s.a,s.b,s.c,s.d,s.e,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){var s=this +return"TextBox.fromLTRBD("+B.e.az(s.a,1)+", "+B.e.az(s.b,1)+", "+B.e.az(s.c,1)+", "+B.e.az(s.d,1)+", "+s.e.j(0)+")"}} +A.Ou.prototype={ +K(){return"TextAffinity."+this.b}} +A.bR.prototype={ +l(a,b){if(b==null)return!1 +if(J.a1(b)!==A.o(this))return!1 +return b instanceof A.bR&&b.a===this.a&&b.b===this.b}, +gv(a){return A.X(this.a,this.b,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){return A.o(this).j(0)+"(offset: "+this.a+", affinity: "+this.b.j(0)+")"}} +A.d8.prototype={ +gdh(){return this.a>=0&&this.b>=0}, +l(a,b){if(b==null)return!1 +if(this===b)return!0 +return b instanceof A.d8&&b.a===this.a&&b.b===this.b}, +gv(a){return A.X(B.f.gv(this.a),B.f.gv(this.b),B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){return"TextRange(start: "+this.a+", end: "+this.b+")"}} +A.qx.prototype={ +l(a,b){if(b==null)return!1 +if(J.a1(b)!==A.o(this))return!1 +return b instanceof A.qx&&b.a===this.a}, +gv(a){return B.e.gv(this.a)}, +j(a){return A.o(this).j(0)+"(width: "+A.h(this.a)+")"}} +A.XG.prototype={ +K(){return"BoxHeightStyle."+this.b}} +A.aty.prototype={ +K(){return"BoxWidthStyle."+this.b}} +A.aaf.prototype={ +K(){return"TileMode."+this.b}} +A.wR.prototype={} +A.a8D.prototype={} +A.Ay.prototype={ +K(){return"Brightness."+this.b}} +A.auu.prototype={ +l(a,b){if(b==null)return!1 +return this===b}, +gv(a){return A.B.prototype.gv.call(this,this)}} +A.a1m.prototype={ +l(a,b){var s +if(b==null)return!1 +if(J.a1(b)!==A.o(this))return!1 +if(b instanceof A.a1m)s=!0 +else s=!1 +return s}, +gv(a){return A.X(null,null,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){return"GestureSettings(physicalTouchSlop: null, physicalDoubleTapSlop: null)"}} +A.arL.prototype={ +xS(a){var s,r,q +if(A.dH(a,0,null).gaa7())return A.k6(B.nj,a,B.O,!1) +s=this.b +if(s==null){s=self.window.document.querySelector("meta[name=assetBase]") +r=s==null?null:s.content +s=r==null +if(!s)self.window.console.warn("The `assetBase` meta tag is now deprecated.\nUse engineInitializer.initializeEngine(config) instead.\nSee: https://docs.flutter.dev/development/platform-integration/web/initialization") +q=this.b=s?"":r +s=q}return A.k6(B.nj,s+"assets/"+a,B.O,!1)}} +A.bez.prototype={ +$1(a){return this.ae5(a)}, +$0(){return this.$1(null)}, +$C:"$1", +$R:0, +$D(){return[null]}, +ae5(a){var s=0,r=A.y(t.H) +var $async$$1=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:s=2 +return A.t(A.bfB(a),$async$$1) +case 2:return A.w(null,r)}}) +return A.x($async$$1,r)}, +$S:806} +A.beA.prototype={ +$0(){var s=0,r=A.y(t.P),q=this +var $async$$0=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:q.a.$0() +s=2 +return A.t(A.blF(),$async$$0) +case 2:q.b.$0() +return A.w(null,r)}}) +return A.x($async$$0,r)}, +$S:52} +A.au0.prototype={ +XF(a){return $.bvw.cJ(0,a,new A.au1(a))}} +A.au1.prototype={ +$0(){return t.e.a(A.cA(this.a))}, +$S:121} +A.aEd.prototype={ +T_(a){var s=new A.aEg(a) +A.dU(self.window,"popstate",B.qh.XF(s),null) +return new A.aEf(this,s)}, +aeL(){var s=self.window.location.hash +if(s.length===0||s==="#")return"/" +return B.c.cv(s,1)}, +XM(a){return A.bp1(self.window.history)}, +abU(a){var s,r=a.length===0||a==="/"?"":"#"+a,q=self.window.location.pathname +if(q==null)q=null +q.toString +s=self.window.location.search +if(s==null)s=null +s.toString +return q+s+r}, +ac5(a,b,c,d){var s=this.abU(d),r=self.window.history,q=A.b0(b) +if(q==null)q=t.K.a(q) +r.pushState(q,c,s)}, +xH(a,b,c,d){var s,r=this.abU(d),q=self.window.history +if(b==null)s=null +else{s=A.b0(b) +if(s==null)s=t.K.a(s)}q.replaceState(s,c,r)}, +y3(a,b){var s=self.window.history +s.go(b) +return this.aDI()}, +aDI(){var s=new A.a8($.a9,t.b),r=A.b4("unsubscribe") +r.b=this.T_(new A.aEe(r,new A.aD(s,t.gR))) +return s}} +A.aEg.prototype={ +$1(a){var s=t.e.a(a).state +if(s==null)s=null +else{s=A.blw(s) +s.toString}this.a.$1(s)}, +$S:282} +A.aEf.prototype={ +$0(){var s=this.b +A.hS(self.window,"popstate",B.qh.XF(s),null) +$.bvw.F(0,s) +return null}, +$S:0} +A.aEe.prototype={ +$1(a){this.a.aF().$0() +this.b.fj(0)}, +$S:11} +A.aLK.prototype={} +A.Xb.prototype={ +gt(a){return a.length}} +A.Xc.prototype={ +I(a,b){throw A.c(A.a7("Not supported"))}, +ao(a,b){return A.ms(a.get(b))!=null}, +i(a,b){return A.ms(a.get(b))}, +af(a,b){var s,r,q=a.entries() +for(;!0;){s=q.next() +r=s.done +r.toString +if(r)return +r=s.value[0] +r.toString +b.$2(r,A.ms(s.value[1]))}}, +gcP(a){var s=A.a([],t.s) +this.af(a,new A.aso(s)) +return s}, +gbw(a){var s=A.a([],t.n4) +this.af(a,new A.asp(s)) +return s}, +gt(a){var s=a.size +s.toString +return s}, +gai(a){var s=a.size +s.toString +return s===0}, +gdn(a){var s=a.size +s.toString +return s!==0}, +p(a,b,c){throw A.c(A.a7("Not supported"))}, +cJ(a,b,c){throw A.c(A.a7("Not supported"))}, +F(a,b){throw A.c(A.a7("Not supported"))}, +$ia6:1} +A.aso.prototype={ +$2(a,b){return this.a.push(a)}, +$S:37} +A.asp.prototype={ +$2(a,b){return this.a.push(b)}, +$S:37} +A.Xd.prototype={ +gt(a){return a.length}} +A.rZ.prototype={} +A.a5B.prototype={ +gt(a){return a.length}} +A.ado.prototype={} +A.Bd.prototype={ +G(a,b){this.a.G(0,b)}, +dO(a,b){this.a.dO(a,b)}, +ad(a){return this.a.ad(0)}, +$idL:1} +A.a8C.prototype={ +qx(a){var s=A.b4("subscription"),r=A.ln(new A.aTl(s),null,null,!0,this.$ti.z[1]) +s.b=a.h2(new A.aTm(this,r),r.gdU(r),r.gww()) +return new A.d_(r,A.k(r).h("d_<1>"))}} +A.aTl.prototype={ +$0(){return J.bnr(this.a.aF())}, +$S:2} +A.aTm.prototype={ +$1(a){var s,r,q,p +try{this.b.G(0,this.a.$ti.z[1].a(a))}catch(q){p=A.ai(q) +if(t.ns.b(p)){s=p +r=A.aH(q) +this.b.dO(s,r)}else throw q}}, +$S(){return this.a.$ti.h("~(1)")}} +A.Ii.prototype={ +A(a){var s=this,r=null,q=r,p=A.bJp(r,r,s.c) +return new A.LS(p,r,q,s.gawO(),s.gawM(),B.F,B.e3,B.cx,B.bu,B.bp,s.ay,s.ch,s.CW,B.X,B.ee,!1,r,r,B.hh,!1,r)}, +awP(a,b){var s,r +if(b!=null){s=b.b +r=b.a}else{s=null +r=0}return this.x.$3(a,this.e,new A.kZ(s,r))}, +awN(a,b,c){return this.y.$3(a,this.e,b)}} +A.t6.prototype={ +M9(a){return new A.ct(this,t.FB)}, +Fs(a,b){var s=A.ln(null,null,null,!1,t.oA) +return A.bqN(new A.d_(s,A.k(s).h("d_<1>")),this.avH(a,s,b),new A.aup(this,a),1)}, +avH(a,b,c){var s=this +return new A.a1X().aL3(s.b,s.c,b,c,s.a,s.r,s.w,s.f,new A.aum(s),s.x,new A.aun(a))}, +Ft(a,b){var s=A.ln(null,null,null,!1,t.oA) +return A.bqN(new A.d_(s,A.k(s).h("d_<1>")),this.avK(a,s,b),new A.auq(this,a),1)}, +avK(a,b,c){var s=this +return new A.a1X().aL6(s.b,s.c,b,c,s.a,s.r,s.w,s.f,s.e,s.x,new A.auo(a))}, +l(a,b){var s +if(b==null)return!1 +if(b instanceof A.t6){s=b.b +if(this.b===s)s=!0 +else s=!1 +return s}return!1}, +gv(a){return A.X(this.b,1,this.r,this.w,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){return'CachedNetworkImageProvider("'+this.b+'", scale: 1)'}} +A.aup.prototype={ +$0(){return new A.k4(this.adK(),t.Ua)}, +adK(){var s=this +return function(){var r=0,q=1,p,o +return function $async$$0(a,b,c){if(b===1){p=c +r=q}while(true)switch(r){case 0:o=s.a +r=2 +return a.b=A.kY("Image provider: "+o.j(0)+" \n Image key: "+s.b.j(0),o,!0,B.bk,null,!1,null,null,B.aS,null,!1,!0,!0,B.c6,null,t.bi),1 +case 2:return 0 +case 1:return a.c=p,3}}}}, +$S:277} +A.aum.prototype={ +$0(){return this.a.e}, +$S:0} +A.aun.prototype={ +$0(){var s=$.hC.qH$ +s===$&&A.b() +return s.EJ(this.a)}, +$S:0} +A.auq.prototype={ +$0(){return new A.k4(this.adL(),t.Ua)}, +adL(){var s=this +return function(){var r=0,q=1,p,o +return function $async$$0(a,b,c){if(b===1){p=c +r=q}while(true)switch(r){case 0:o=s.a +r=2 +return a.b=A.kY("Image provider: "+o.j(0)+" \n Image key: "+s.b.j(0),o,!0,B.bk,null,!1,null,null,B.aS,null,!1,!0,!0,B.c6,null,t.bi),1 +case 2:return 0 +case 1:return a.c=p,3}}}}, +$S:277} +A.auo.prototype={ +$0(){var s=$.hC.qH$ +s===$&&A.b() +return s.EJ(this.a)}, +$S:0} +A.a5e.prototype={ +alE(a,b,c,d){var s=this +b.ab5(new A.aJK(s),new A.aJL(s,c)) +s.cx=a.ab5(s.gaNL(),new A.aJM(s,c))}, +awq(a){var s,r,q=this,p=q.cy=!1,o=q.a +if(o.length===0)return +s=q.ay +if(s==null||a.a-q.ax.a>=s.a){s=q.at +q.a2B(new A.l5(s.gl9(s),q.Q,null)) +q.ax=a +s=q.at +q.ay=s.gED(s) +q.at=null +if(B.f.aH(q.ch,q.y.gv5())===0?q.z!=null:p){q.ch=0 +q.CW=null +p=q.z +p.toString +q.y=p +if(o.length!==0)q.wd() +q.z=null}else{r=B.f.js(q.ch,q.y.gv5()) +if(q.y.gBr()===-1||r<=q.y.gBr())q.wd()}return}s.toString +q.CW=A.d2(new A.bk(B.f.bi(s.a-(a.a-q.ax.a))),q.gawr())}, +wd(){var s=0,r=A.y(t.H),q,p=2,o,n=this,m,l,k,j,i +var $async$wd=A.u(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:p=4 +s=7 +return A.t(n.y.pa(),$async$wd) +case 7:n.at=b +p=2 +s=6 +break +case 4:p=3 +i=o +m=A.ai(i) +l=A.aH(i) +n.xI(A.bX("resolving an image frame"),m,n.as,!0,l) +s=1 +break +s=6 +break +case 3:s=2 +break +case 6:if(n.y.gv5()===1){if(n.a.length===0){s=1 +break}j=n.at +n.a2B(new A.l5(j.gl9(j),n.Q,null)) +s=1 +break}n.a2C() +case 1:return A.w(q,r) +case 2:return A.v(o,r)}}) +return A.x($async$wd,r)}, +a2C(){if(this.cy)return +this.cy=!0 +$.cF.H_(this.gawp())}, +a2B(a){this.Ye(a);++this.ch}, +P(a,b){var s=this +s.db=!0 +if(s.a.length===0&&s.y!=null)s.wd() +s.YS(0,b)}, +J(a,b){var s,r=this +r.YT(0,b) +if(r.a.length===0){s=r.CW +if(s!=null)s.aQ(0) +r.CW=null +r.ZD()}}, +ic(){var s=this.ah1();++this.dy +return new A.b6T(this,s)}, +ZD(){var s,r=this +if(!r.db||r.dx||r.a.length!==0||r.dy!==0)return +r.dx=!0 +s=r.cx +if(s!=null)s.j9(null) +s=r.cx +if(s!=null)s.aQ(0) +r.cx=null}} +A.aJK.prototype={ +$1(a){var s=this.a +if(s.CW!=null)s.z=a +else{s.y=a +if(s.a.length!==0)s.wd()}}, +$S:269} +A.aJL.prototype={ +$2(a,b){this.a.xI(A.bX("resolving an image codec"),a,this.b,!0,b)}, +$S:23} +A.aJM.prototype={ +$2(a,b){this.a.xI(A.bX("loading an image"),a,this.b,!0,b)}, +$S:23} +A.b6T.prototype={ +m(){this.b.m() +var s=this.a;--s.dy +s.ZD() +this.a=null}} +A.a1Y.prototype={ +K(){return"ImageRenderMethodForWeb."+this.b}} +A.a1X.prototype={ +aL3(a,b,c,d,e,f,g,h,i,j,k){return this.a2k(a,b,c,new A.aFx(d),e,f,g,h,new A.aFy(),j,k)}, +aL6(a,b,c,d,e,f,g,h,i,j,k){return this.a2k(a,b,c,new A.aFz(d),e,f,g,h,i,j,k)}, +a2k(a,b,c,d,e,f,g,h,i,j,k){var s +switch(j.a){case 1:return this.rO(a,b,c,d,e,f,g,h,i,k) +case 0:s=this.avF(a,c) +return A.bKo(s,s.$ti.c)}}, +rO(a,b,c,d,e,f,g,h,i,j){return this.avG(a,b,c,d,e,f,g,h,i,j)}, +avG(a0,a1,a2,a3,a4,a5,a6,a7,a8,a9){var $async$rO=A.u(function(b0,b1){switch(b0){case 2:n=q +s=n.pop() +break +case 1:o=b1 +s=p}while(true)switch(s){case 0:p=4 +h=A.ln(null,null,null,!1,t.cL) +a4.yX(h,a0,a0,a7,!0) +g=new A.nK(A.fj(new A.d_(h,A.k(h).h("d_<1>")),"stream",t.K),t.r2) +p=7 +f=A.k(a2).h("iI<1>") +case 10:s=12 +return A.hN(g.u(),$async$rO,r) +case 12:if(!b1){s=11 +break}m=g.gH(g) +if(m instanceof A.kZ){e=new A.jC(m.c,m.b) +d=a2.b +if(d>=4)A.q(a2.qd()) +if((d&1)!==0)a2.ov(e) +else if((d&3)===0){d=a2.yG() +e=new A.iI(e,f) +c=d.c +if(c==null)d.b=d.c=e +else{c.snh(0,e) +d.c=e}}}s=m instanceof A.of?13:14 +break +case 13:l=m.b +s=15 +return A.hN(l.G3(),$async$rO,r) +case 15:k=b1 +s=16 +return A.hN(a3.$1(k),$async$rO,r) +case 16:j=b1 +s=17 +q=[1,8] +return A.hN(A.bkv(j),$async$rO,r) +case 17:case 14:s=10 +break +case 11:n.push(9) +s=8 +break +case 7:n=[4] +case 8:p=4 +s=18 +return A.hN(g.aQ(0),$async$rO,r) +case 18:s=n.pop() +break +case 9:p=2 +s=6 +break +case 4:p=3 +a=o +i=A.ai(a) +A.h_(new A.aFw(a9)) +if(a8!=null)a8.$1(i) +throw a +s=6 +break +case 3:s=2 +break +case 6:s=19 +return A.hN(a2.ad(0),$async$rO,r) +case 19:case 1:return A.hN(null,0,r) +case 2:return A.hN(o,1,r)}}) +var s=0,r=A.blc($async$rO,t.hP),q,p=2,o,n=[],m,l,k,j,i,h,g,f,e,d,c,b,a +return A.bli(r)}, +avF(a,b){var s=A.aaI().L(a) +return $.as().aay(s,new A.aFv(b))}} +A.aFx.prototype={ +$1(a){return this.adP(a)}, +adP(a){var s=0,r=A.y(t.hP),q,p=this,o +var $async$$1=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:o=p.a +s=3 +return A.t(A.a1Z(a),$async$$1) +case 3:q=o.$1(c) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$$1,r)}, +$S:268} +A.aFy.prototype={ +$1(a){}, +$S:282} +A.aFz.prototype={ +$1(a){return this.adQ(a)}, +adQ(a){var s=0,r=A.y(t.hP),q,p=this,o +var $async$$1=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:o=p.a +s=3 +return A.t(A.a1Z(a),$async$$1) +case 3:q=o.$1(c) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$$1,r)}, +$S:268} +A.aFw.prototype={ +$0(){this.a.$0()}, +$S:0} +A.aFv.prototype={ +$2(a,b){this.a.G(0,new A.jC(a,b))}, +$S:938} +A.fe.prototype={ +gaj(a){return new A.Es(this.a,0,0)}, +gN(a){var s=this.a,r=s.length +return r===0?A.q(A.R("No element")):B.c.U(s,0,new A.mF(s,r,0,176).li())}, +ga1(a){var s=this.a,r=s.length +return r===0?A.q(A.R("No element")):B.c.cv(s,new A.Ar(s,0,r,176).li())}, +gaI(a){var s=this.a,r=s.length +if(r===0)throw A.c(A.R("No element")) +if(new A.mF(s,r,0,176).li()===r)return s +throw A.c(A.R("Too many elements"))}, +gai(a){return this.a.length===0}, +gdn(a){return this.a.length!==0}, +gt(a){var s,r,q=this.a,p=q.length +if(p===0)return 0 +s=new A.mF(q,p,0,176) +for(r=0;s.li()>=0;)++r +return r}, +cq(a,b){var s +if(b==="")return this.a +s=this.a +return A.bOT(s,0,s.length,b,"")}, +pP(a,b,c){var s,r,q=this.a,p=q.length,o=new A.Ar(q,0,p,176) +for(;s=o.li(),s>=0;p=s){r=B.c.U(q,s,p) +if(b.$1(r))return r}if(c!=null)return c.$0() +throw A.c(A.R("No element"))}, +ct(a,b){var s,r,q,p,o,n +A.fA(b,"index") +s=this.a +r=s.length +if(r!==0){q=new A.mF(s,r,0,176) +for(p=0,o=0;n=q.li(),n>=0;o=n){if(p===b)return B.c.U(s,o,n);++p}}else p=0 +throw A.c(A.a21(b,this,"index",null,p))}, +n(a,b){var s +if(typeof b!="string")return!1 +s=b.length +if(s===0)return!1 +if(new A.mF(b,s,0,176).li()!==s)return!1 +s=this.a +return A.bPo(s,b,0,s.length)>=0}, +a4w(a,b,c){var s,r +if(a===0||b===this.a.length)return b +s=this.a +c=new A.mF(s,s.length,b,176) +do{r=c.li() +if(r<0)break +if(--a,a>0){b=r +continue}else{b=r +break}}while(!0) +return b}, +lL(a,b){A.fA(b,"count") +return this.aBc(b)}, +aBc(a){var s=this.a4w(a,0,null),r=this.a +if(s===r.length)return B.bS +return new A.fe(B.c.cv(r,s))}, +q2(a,b){A.fA(b,"count") +return this.aBY(b)}, +aBY(a){var s=this.a4w(a,0,null),r=this.a +if(s===r.length)return this +return new A.fe(B.c.U(r,0,s))}, +jm(a,b){var s=this.Cs(0,b).pO(0) +if(s.length===0)return B.bS +return new A.fe(s)}, +T(a,b){return new A.fe(this.a+b.a)}, +BB(a){return new A.fe(this.a.toLowerCase())}, +l(a,b){if(b==null)return!1 +return b instanceof A.fe&&this.a===b.a}, +gv(a){return B.c.gv(this.a)}, +j(a){return this.a}} +A.Es.prototype={ +gH(a){var s=this,r=s.d +return r==null?s.d=B.c.U(s.a,s.b,s.c):r}, +u(){return this.HC(1,this.c)}, +HC(a,b){var s,r,q,p,o,n,m,l,k,j=this +if(a>0){s=j.c +for(r=j.a,q=r.length,p=176;s0;s=q){q=r.li() +if(q<0)break;--a}p.b=s +p.c=b +p.d=null +return a===0}} +A.mF.prototype={ +li(){var s,r,q,p,o,n,m,l=this,k=u.S +for(s=l.b,r=l.a;q=l.c,qs;){p=k.c=q-1 +o=r.charCodeAt(p) +if((o&64512)!==56320){p=k.d=j.charCodeAt(k.d&240|A.A1(o)) +if(((p>=208?k.d=A.bfN(r,s,k.c,p):p)&1)===0)return q +continue}if(p>=s){n=r.charCodeAt(p-1) +if((n&64512)===55296){m=A.px(n,o) +p=--k.c}else m=2}else m=2 +l=k.d=j.charCodeAt(k.d&240|m) +if(((l>=208?k.d=A.bfN(r,s,p,l):l)&1)===0)return q}p=k.d=j.charCodeAt(k.d&240|15) +if(((p>=208?k.d=A.bfN(r,s,q,p):p)&1)===0)return k.c +return-1}} +A.awf.prototype={} +A.cN.prototype={ +i(a,b){var s,r=this +if(!r.Iu(b))return null +s=r.c.i(0,r.a.$1(r.$ti.h("cN.K").a(b))) +return s==null?null:s.b}, +p(a,b,c){var s,r=this +if(!r.Iu(b))return +s=r.$ti +r.c.p(0,r.a.$1(b),new A.aU(b,c,s.h("@").S(s.h("cN.V")).h("aU<1,2>")))}, +I(a,b){J.f9(b,new A.auv(this))}, +uC(a,b,c){var s=this.c +return s.uC(s,b,c)}, +ao(a,b){var s=this +if(!s.Iu(b))return!1 +return s.c.ao(0,s.a.$1(s.$ti.h("cN.K").a(b)))}, +gdW(a){var s=this.c +return s.gdW(s).ig(0,new A.auw(this),this.$ti.h("aU"))}, +af(a,b){this.c.af(0,new A.aux(this,b))}, +gai(a){return this.c.a===0}, +gdn(a){return this.c.a!==0}, +gcP(a){var s=this.c +s=s.gbw(s) +return A.mV(s,new A.auy(this),A.k(s).h("z.E"),this.$ti.h("cN.K"))}, +gt(a){return this.c.a}, +tu(a,b,c,d){var s=this.c +return s.tu(s,new A.auz(this,b,c,d),c,d)}, +cJ(a,b,c){return this.c.cJ(0,this.a.$1(b),new A.auA(this,b,c)).b}, +F(a,b){var s,r=this +if(!r.Iu(b))return null +s=r.c.F(0,r.a.$1(r.$ti.h("cN.K").a(b))) +return s==null?null:s.b}, +gbw(a){var s=this.c +s=s.gbw(s) +return A.mV(s,new A.auB(this),A.k(s).h("z.E"),this.$ti.h("cN.V"))}, +j(a){return A.aIq(this)}, +Iu(a){var s +if(this.$ti.h("cN.K").b(a))s=!0 +else s=!1 +return s}, +$ia6:1} +A.auv.prototype={ +$2(a,b){this.a.p(0,a,b) +return b}, +$S(){return this.a.$ti.h("~(cN.K,cN.V)")}} +A.auw.prototype={ +$1(a){var s=a.b,r=this.a.$ti +return new A.aU(s.a,s.b,r.h("@").S(r.h("cN.V")).h("aU<1,2>"))}, +$S(){return this.a.$ti.h("aU(aU>)")}} +A.aux.prototype={ +$2(a,b){return this.b.$2(b.a,b.b)}, +$S(){return this.a.$ti.h("~(cN.C,aU)")}} +A.auy.prototype={ +$1(a){return a.a}, +$S(){return this.a.$ti.h("cN.K(aU)")}} +A.auz.prototype={ +$2(a,b){return this.b.$2(b.a,b.b)}, +$S(){return this.a.$ti.S(this.c).S(this.d).h("aU<1,2>(cN.C,aU)")}} +A.auA.prototype={ +$0(){var s=this.a.$ti +return new A.aU(this.b,this.c.$0(),s.h("@").S(s.h("cN.V")).h("aU<1,2>"))}, +$S(){return this.a.$ti.h("aU()")}} +A.auB.prototype={ +$1(a){return a.b}, +$S(){return this.a.$ti.h("cN.V(aU)")}} +A.a_T.prototype={ +dj(a,b){return J.i(a,b)}, +du(a,b){return J.T(b)}} +A.xh.prototype={ +dj(a,b){var s,r,q,p +if(a===b)return!0 +s=J.ao(a) +r=J.ao(b) +for(q=this.a;!0;){p=s.u() +if(p!==r.u())return!1 +if(!p)return!0 +if(!q.dj(s.gH(s),r.gH(r)))return!1}}, +du(a,b){var s,r,q +for(s=J.ao(b),r=this.a,q=0;s.u();){q=q+r.du(0,s.gH(s))&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}} +A.xw.prototype={ +dj(a,b){var s,r,q,p,o +if(a===b)return!0 +s=J.ak(a) +r=s.gt(a) +q=J.ak(b) +if(r!==q.gt(b))return!1 +for(p=this.a,o=0;o>>0)&2147483647 +q^=q>>>6}q=q+(q<<3>>>0)&2147483647 +q^=q>>>11 +return q+(q<<15>>>0)&2147483647}} +A.H3.prototype={ +dj(a,b){var s,r,q,p,o +if(a===b)return!0 +s=this.a +r=A.cx(s.gaHv(),s.gaJt(s),s.gaKB(),A.k(this).h("H3.E"),t.S) +for(s=J.ao(a),q=0;s.u();){p=s.gH(s) +o=r.i(0,p) +r.p(0,p,(o==null?0:o)+1);++q}for(s=J.ao(b);s.u();){p=s.gH(s) +o=r.i(0,p) +if(o==null||o===0)return!1 +r.p(0,p,o-1);--q}return q===0}, +du(a,b){var s,r,q +for(s=J.ao(b),r=this.a,q=0;s.u();)q=q+r.du(0,s.gH(s))&2147483647 +q=q+(q<<3>>>0)&2147483647 +q^=q>>>11 +return q+(q<<15>>>0)&2147483647}} +A.E6.prototype={} +A.Gc.prototype={ +gv(a){var s=this.a +return 3*s.a.du(0,this.b)+7*s.b.du(0,this.c)&2147483647}, +l(a,b){var s +if(b==null)return!1 +if(b instanceof A.Gc){s=this.a +s=s.a.dj(this.b,b.b)&&s.b.dj(this.c,b.c)}else s=!1 +return s}} +A.xG.prototype={ +dj(a,b){var s,r,q,p,o,n,m +if(a===b)return!0 +s=J.ak(a) +r=J.ak(b) +if(s.gt(a)!==r.gt(b))return!1 +q=A.cx(null,null,null,t.PJ,t.S) +for(p=J.ao(s.gcP(a));p.u();){o=p.gH(p) +n=new A.Gc(this,o,s.i(a,o)) +m=q.i(0,n) +q.p(0,n,(m==null?0:m)+1)}for(s=J.ao(r.gcP(b));s.u();){o=s.gH(s) +n=new A.Gc(this,o,r.i(b,o)) +m=q.i(0,n) +if(m==null||m===0)return!1 +q.p(0,n,m-1)}return!0}, +du(a,b){var s,r,q,p,o,n,m,l,k +for(s=J.bK(b),r=J.ao(s.gcP(b)),q=this.a,p=this.b,o=this.$ti.z[1],n=0;r.u();){m=r.gH(r) +l=q.du(0,m) +k=s.i(b,m) +n=n+3*l+7*p.du(0,k==null?o.a(k):k)&2147483647}n=n+(n<<3>>>0)&2147483647 +n^=n>>>11 +return n+(n<<15>>>0)&2147483647}} +A.a_R.prototype={ +dj(a,b){var s=this,r=t.Ro +if(r.b(a))return r.b(b)&&new A.E6(s,t.n5).dj(a,b) +r=t.f +if(r.b(a))return r.b(b)&&new A.xG(s,s,t.Dx).dj(a,b) +r=t.j +if(r.b(a))return r.b(b)&&new A.xw(s,t.wO).dj(a,b) +r=t.JY +if(r.b(a))return r.b(b)&&new A.xh(s,t.K9).dj(a,b) +return J.i(a,b)}, +du(a,b){var s=this +if(t.Ro.b(b))return new A.E6(s,t.n5).du(0,b) +if(t.f.b(b))return new A.xG(s,s,t.Dx).du(0,b) +if(t.j.b(b))return new A.xw(s,t.wO).du(0,b) +if(t.JY.b(b))return new A.xh(s,t.K9).du(0,b) +return J.T(b)}, +aKC(a){!t.JY.b(a) +return!0}} +A.a1D.prototype={ +HX(a){var s=this.b[a] +if(s==null){this.$ti.c.a(null) +s=null}return s}, +gt(a){return this.c}, +j(a){var s=this.b +return A.bqh(A.fE(s,0,A.fj(this.c,"count",t.S),A.ab(s).c),"(",")")}, +amO(a,b){var s,r,q,p,o,n,m,l,k,j=this,i=b*2+2 +for(s=j.a,r=j.$ti.c;q=j.c,i0){j.b[b]=k +b=p}}j.b[b]=a}} +A.ww.prototype={ +l(a,b){var s,r,q,p,o +if(b==null)return!1 +if(b instanceof A.ww){s=this.a +r=b.a +q=s.length +if(q!==r.length)return!1 +for(p=0,o=0;o>>0)-s,q=0;q1125899906842623)throw A.c(A.a7("Hashing is unsupported for messages with more than 2^53 bits.")) +p=r*8 +o=l.b +l.I(0,new Uint8Array(8)) +n=A.ks(l.a.buffer,0,null) +n.setUint32(o,B.f.cY(p,4294967296),!1) +n.setUint32(o+4,p>>>0,!1)}} +A.alq.prototype={ +kD(a){var s=new Uint32Array(5),r=new Uint32Array(80),q=new Uint8Array(0),p=new Uint32Array(16) +s[0]=1732584193 +s[1]=4023233417 +s[2]=2562383102 +s[3]=271733878 +s[4]=3285377520 +return new A.PX(new A.baw(s,r,a,p,new A.aat(q,0)))}} +A.baw.prototype={ +aOZ(a){var s,r,q,p,o,n=this.w,m=n[0],l=n[1],k=n[2],j=n[3],i=n[4] +for(s=this.x,r=0;r<80;++r,i=j,j=k,k=o,l=m,m=p){if(r<16)s[r]=a[r] +else{q=s[r-3]^s[r-8]^s[r-14]^s[r-16] +s[r]=(q<<1|q>>>31)>>>0}p=(((m<<5|m>>>27)>>>0)+i>>>0)+s[r]>>>0 +if(r<20)p=(p+((l&k|~l&j)>>>0)>>>0)+1518500249>>>0 +else if(r<40)p=(p+((l^k^j)>>>0)>>>0)+1859775393>>>0 +else p=r<60?(p+((l&k|l&j|k&j)>>>0)>>>0)+2400959708>>>0:(p+((l^k^j)>>>0)>>>0)+3395469782>>>0 +o=(l<<30|l>>>2)>>>0}n[0]=m+n[0]>>>0 +n[1]=l+n[1]>>>0 +n[2]=k+n[2]>>>0 +n[3]=j+n[3]>>>0 +n[4]=i+n[4]>>>0}, +ga8M(){return this.w}} +A.yv.prototype={} +A.atM.prototype={ +L5(a,b,c,d){return this.aHG(0,b,c,d)}, +aHG(a0,a1,a2,a3){var s=0,r=A.y(t.Ol),q,p=this,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a +var $async$L5=A.u(function(a4,a5){if(a4===1)return A.v(a5,r) +while(true)switch(s){case 0:c={} +b=new XMLHttpRequest() +b.toString +p.a.G(0,b) +o=a1.a +o===$&&A.b() +B.mZ.aMj(b,o,a1.ghm().j(0)) +b.responseType="arraybuffer" +o=a1.x +o===$&&A.b() +n=o.i(0,"withCredentials") +if(n!=null)b.withCredentials=J.i(n,!0) +else b.withCredentials=!1 +o=a1.b +o===$&&A.b() +o.F(0,"content-length") +a1.b.af(0,new A.atO(b)) +m=a1.ES$ +l=a1.d +c.a=0 +if(m!=null&&l!=null&&l.a>0){k=B.f.cY(m.a+l.a,1000) +c.a=k +b.timeout=k}o=new A.a8($.a9,t.A6) +j=new A.aD(o,t.rM) +i=t.fg +h=new A.jd(b,"load",!1,i) +g=t.P +h.gN(h).b9(new A.atP(b,j,a1),g) +c.b=null +f=a1.ES$ +h=f!=null?c.b=A.d2(f,new A.atQ(j,b,a1,f)):null +e=a2!=null +if(e)if(h!=null){h=b.upload +h.toString +A.je(h,"progress",new A.atR(c),!1,t._p)}$.Wd() +A.je(b,"progress",new A.atS(c,a1,new A.Ep(),j,b),!1,t._p) +h=new A.jd(b,"error",!1,i) +h.gN(h).b9(new A.atT(c,j,a1),g) +i=new A.jd(b,"timeout",!1,i) +i.gN(i).b9(new A.atU(c,j,a1),g) +if(a3!=null)a3.b9(new A.atV(c,b,j,a1),g) +s=e?3:5 +break +case 3:c=new A.a8($.a9,t.Qy) +j=new A.aD(c,t.gI) +d=new A.PY(new A.atW(j),new Uint8Array(1024)) +a2.ci(d.gjx(d),!0,d.gdU(d),new A.atX(j)) +a=b +s=6 +return A.t(c,$async$L5) +case 6:a.send(a5) +s=4 +break +case 5:b.send() +case 4:q=o.fv(new A.atY(p,b)) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$L5,r)}} +A.atO.prototype={ +$2(a,b){var s=this.a +if(t.JY.b(b))s.setRequestHeader(a,J.Ac(b,", ")) +else s.setRequestHeader(a,J.cI(b))}, +$S:37} +A.atP.prototype={ +$1(a){var s,r,q,p,o=this.a,n=A.dF(t.pI.a(A.bv_(o.response)),0,null),m=o.status +m.toString +s=B.mZ.gacF(o) +r=t.N +s=s.tu(s,new A.atN(),r,t.yp) +q=o.statusText +p=o.status +o=p===302||p===301||this.c.ghm().j(0)!==o.responseURL +p=A.bjR(new Uint8Array(A.jk(n)),t.E) +this.b.cM(0,new A.yv(o,p,m,q,s,A.F(r,t.z)))}, +$S:98} +A.atN.prototype={ +$2(a,b){return new A.aU(a,A.a(b.split(","),t.s),t.Kc)}, +$S:321} +A.atQ.prototype={ +$0(){var s=this,r=s.a +if((r.a.a&30)!==0)return +s.b.abort() +r.f6(A.Bg(null,"The request connection took longer than "+s.d.j(0)+". It was aborted.",s.c,null,null,B.Re),A.jU())}, +$S:0} +A.atR.prototype={ +$1(a){var s=this.a,r=s.b +if(r!=null)r.aQ(0) +s.b=null}, +$S:134} +A.atS.prototype={ +$1(a){var s,r=this,q=r.a,p=q.b +if(p!=null){p.aQ(0) +q.b=null}q=r.b +s=q.d +if(s!=null){p=r.c +if(p.b!=null)p.vP(0) +if(A.dC(p.gUs(),0,0).a>s.a){if(p.b==null)p.b=$.Mp.$0() +p=q.d +p.toString +r.d.f6(A.boI(q,p),A.jU()) +r.e.abort()}}}, +$S:134} +A.atT.prototype={ +$1(a){var s=this.a.b +if(s!=null)s.aQ(0) +this.b.f6(A.bEL("The XMLHttpRequest onError callback was called. This typically indicates an error on the network layer.",this.c),A.jU())}, +$S:98} +A.atU.prototype={ +$1(a){var s=this.a,r=s.b +if(r!=null)r.aQ(0) +r=this.b +if((r.a.a&30)===0)r.f6(A.boI(this.c,A.dC(0,s.a,0)),A.jU())}, +$S:98} +A.atV.prototype={ +$1(a){var s,r=this,q=r.b,p=q.readyState +p.toString +if(p<4&&p>0){p=r.a.b +if(p!=null)p.aQ(0) +try{q.abort()}catch(s){}q=r.c +if((q.a.a&30)===0)q.ms(A.Bg("The XMLHttpRequest was aborted.","The request was cancelled.",r.d,null,null,B.j0))}}, +$S:20} +A.atW.prototype={ +$1(a){return this.a.cM(0,new Uint8Array(A.jk(a)))}, +$S:160} +A.atX.prototype={ +$2(a,b){return this.a.f6(a,b)}, +$S:13} +A.atY.prototype={ +$0(){this.a.a.F(0,this.b)}, +$S:5} +A.hP.prototype={ +a7r(a,b){var s,r=null,q=this.c +if(q==null)q=A.brJ(r,r,r,r,r,r,r,r,r,r,r,r,r,"",r,r,r,r,r,r,r,r,r,r) +q=A.Bg(b,"The request was cancelled.",q,r,A.jU(),B.j0) +this.b=q +s=this.a +if((s.a.a&30)===0)s.cM(0,q)}, +aQ(a){return this.a7r(a,null)}} +A.axz.prototype={} +A.afe.prototype={} +A.to.prototype={ +K(){return"DioExceptionType."+this.b}} +A.hv.prototype={ +j(a){var s="DioException ["+A.bMk(this.c)+"]: "+A.h(this.f),r=this.d +return r!=null?s+("\nError: "+A.h(r)):s}, +$icm:1} +A.axA.prototype={ +xJ(a,b,c,d,e,f,g,h,i){return this.aNP(0,b,c,d,e,f,g,h,i,i.h("fB<0>"))}, +aNO(a,b,c,d,e,f,g,h){return this.xJ(a,b,c,d,e,null,f,g,h)}, +aNN(a,b,c,d,e,f,g){return this.xJ(a,b,c,d,null,null,e,f,g)}, +aNP(a4,a5,a6,a7,a8,a9,b0,b1,b2,b3){var s=0,r=A.y(b3),q,p=this,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a3 +var $async$xJ=A.u(function(b4,b5){if(b4===1)return A.v(b5,r) +while(true)switch(s){case 0:a3=p.L9$ +a3===$&&A.b() +o=A.jU() +n=t.N +m=t.z +l=A.F(n,m) +k=a3.ER$ +k===$&&A.b() +l.I(0,k) +if(b1!=null)l.I(0,b1) +k=a3.b +k===$&&A.b() +j=A.VS(k,m) +i=j.i(0,"content-type") +k=a3.x +k===$&&A.b() +h=A.aHb(k,n,m) +n=b0.a +if(n==null){n=a3.a +n===$&&A.b()}m=a3.uU$ +m===$&&A.b() +k=a3.ES$ +g=a3.d +f=a3.f +f===$&&A.b() +e=a3.r +e===$&&A.b() +d=a3.w +d===$&&A.b() +c=a3.y +c===$&&A.b() +b=a3.z +b===$&&A.b() +a=a3.Q +a===$&&A.b() +a0=a3.ax +a0===$&&A.b() +a1=i==null?null:i +if(a1==null)a1=A.ae(a3.b.i(0,"content-type")) +a2=A.brJ(m,a6,k,a1,a7,h,c,j,a0,b,n.toUpperCase(),a8,a9,a5,a,l,d,g,a3.as,a3.at,f,a3.c,o,e) +e=a2.cx +if(e!=null)e.c=a2 +q=p.UE(0,a2,b2) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$xJ,r)}, +UE(a,b,c){return this.aHH(0,b,c,c.h("fB<0>"))}, +aHH(a,b,c,a0){var s=0,r=A.y(a0),q,p=this,o,n,m,l,k,j,i,h,g,f,e,d +var $async$UE=A.u(function(a1,a2){if(a1===1)return A.v(a2,r) +while(true)switch(s){case 0:d={} +d.a=b +if(A.ck(c)!==B.pf){o=b.f +o===$&&A.b() +o=!(o===B.Jd||o===B.or)}else o=!1 +if(o)if(A.ck(c)===B.pc)b.f=B.acb +else b.f=B.fC +n=new A.axK(d) +m=new A.axN(d) +l=new A.axH(d) +o=t.z +k=A.BP(new A.axD(d),o) +for(j=p.aHK$,i=A.k(j),h=i.h("bZ"),g=new A.bZ(j,j.gt(j),h),i=i.h("ac.E");g.u();){f=g.d +e=(f==null?i.a(f):f).gMm() +k=k.b9(n.$1(e),o)}k=k.b9(n.$1(new A.axE(d,p,c)),o) +for(g=new A.bZ(j,j.gt(j),h);g.u();){f=g.d +e=(f==null?i.a(f):f).gWd() +k=k.b9(m.$1(e),o)}for(o=new A.bZ(j,j.gt(j),h);o.u();){j=o.d +if(j==null)j=i.a(j) +e=j.gtx(j) +k=k.me(l.$1(e))}q=k.b9(new A.axF(d,c),c.h("fB<0>")).me(new A.axG(d,c)) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$UE,r)}, +w4(a,b){return this.apb(a,b)}, +apb(a2,a3){var s=0,r=A.y(t.k8),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1 +var $async$w4=A.u(function(a4,a5){if(a4===1){o=a5 +s=p}while(true)switch(s){case 0:a0=a2.cx +p=4 +s=7 +return A.t(n.JA(a2),$async$w4) +case 7:m=a5 +f=n.a9h$ +f===$&&A.b() +e=a0 +e=e==null?null:e.a.a +s=8 +return A.t(f.L5(0,a2,m,e),$async$w4) +case 8:l=a5 +k=A.bpV(l.f) +l.f=k.a +l.toString +f=A.a([],t.Bw) +e=l.a +d=l.c +c=l.d +j=A.a7G(null,l.r,k,e,f,a2,d,c,t.z) +i=a2.aPb(l.c) +if(!i){f=a2.w +f===$&&A.b()}else f=!0 +s=f?9:11 +break +case 9:s=12 +return A.t(n.a9i$.Nb(a2,l),$async$w4) +case 12:h=a5 +if(typeof h=="string")if(J.aZ(h)===0)if(A.ck(a3)!==B.pf)if(A.ck(a3)!==B.pc){f=a2.f +f===$&&A.b() +f=f===B.fC}else f=!1 +else f=!1 +else f=!1 +else f=!1 +if(f)h=null +j.a=h +s=10 +break +case 11:s=13 +return A.t(l.b.B0(null).aQ(0),$async$w4) +case 13:case 10:f=a0 +b=f==null?null:f.b +if(b!=null)A.q(b) +if(i){q=j +s=1 +break}else{f=A.Bg(null,"The request returned an invalid status code of "+l.c+".",a2,j,null,B.Rg) +throw A.c(f)}p=2 +s=6 +break +case 4:p=3 +a1=o +g=A.ai(a1) +f=A.bie(g,a2) +throw A.c(f) +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.w(q,r) +case 2:return A.v(o,r)}}) +return A.x($async$w4,r)}, +avi(a){var s,r,q +for(s=new A.hQ(a),r=t.Hz,s=new A.bZ(s,s.gt(s),r.h("bZ")),r=r.h("ac.E");s.u();){q=s.d +if(q==null)q=r.a(q) +if(q>=128||" ! #$%&' *+ -. 0123456789 ABCDEFGHIJKLMNOPQRSTUVWXYZ ^_`abcdefghijklmnopqrstuvwxyz | ~ ".charCodeAt(q)===32)return!1}return!0}, +JA(a){return this.aCF(a)}, +aCF(a){var s=0,r=A.y(t.Dt),q,p=this,o,n,m,l,k,j,i,h,g,f,e,d +var $async$JA=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:e={} +d=a.a +d===$&&A.b() +if(!p.avi(d))throw A.c(A.eR(a.gaLp(a),"method",null)) +o=a.ch +s=o!=null?3:4 +break +case 3:e.a=null +s=o instanceof A.K3?5:7 +break +case 5:d=a.b +d===$&&A.b() +n=o.a +n===$&&A.b() +d.p(0,"content-type","multipart/form-data; boundary="+n) +m=o.UQ() +l=o.gt(o) +e.a=l +a.b.p(0,"content-length",B.f.j(l)) +s=6 +break +case 7:s=8 +return A.t(p.a9i$.X2(a),$async$JA) +case 8:k=c +j=B.O.gfY().cN(k) +l=e.a=j.length +d=a.b +d===$&&A.b() +d.p(0,"content-length",B.f.j(l)) +i=A.a([],t.Zb) +h=B.e.eU(l/1024) +for(g=0;g(@)")}} +A.axG.prototype={ +$1(a){var s,r=a instanceof A.fn +if(r)if(a.b===B.tM)return A.boJ(a.a,this.a.a,this.b) +s=r?a.a:a +throw A.c(A.bie(s,this.a.a))}, +$S(){return this.b.h("fB<0>(B)")}} +A.axQ.prototype={ +$1(a){return A.q(a)}, +$S:368} +A.Cc.prototype={ +K(){return"InterceptorResultType."+this.b}} +A.fn.prototype={} +A.b0D.prototype={} +A.yu.prototype={ +fp(a,b){this.a.cM(0,new A.fn(b,B.dz,t.FN))}, +acD(a,b){this.a.cM(0,new A.fn(a,B.tN,t.Pm))}} +A.yw.prototype={ +fp(a,b){this.a.cM(0,new A.fn(b,B.dz,t.Pm))}} +A.wE.prototype={ +fp(a,b){this.a.f6(new A.fn(b,B.dz,t.oF),b.e)}} +A.km.prototype={ +oW(a,b){b.fp(0,a)}, +ty(a,b){b.fp(0,a)}, +nq(a,b,c){c.fp(0,b)}} +A.ah2.prototype={ +oW(a,b){this.a.$2(a,b)}, +ty(a,b){b.fp(0,a)}, +nq(a,b,c){c.fp(0,b)}} +A.a29.prototype={} +A.a28.prototype={ +gt(a){return this.a.length}, +st(a,b){B.b.st(this.a,b)}, +i(a,b){var s=this.a[b] +s.toString +return s}, +p(a,b,c){var s=this.a +if(s.length===b)s.push(c) +else s[b]=c}} +A.ah3.prototype={} +A.K3.prototype={ +alv(a,b,c){this.a="--dio-boundary-"+B.c.eM(B.f.j(B.fZ.xu(4294967296)),10,"0") +A.bly(a,new A.aCs(this),!1,!1,b)}, +a1R(a){var s={},r=a.b,q='content-disposition: form-data; name="'+A.h(this.HJ(a.a))+'"' +s.a=q +q=q+'; filename="'+A.h(this.HJ(r.b))+'"' +s.a=q +s.a=q+"\r\ncontent-type: "+r.d.j(0) +r.c.af(0,new A.aCt(s)) +return s.a+"\r\n\r\n"}, +HJ(a){var s=A.eC(a,this.b,"%0D%0A") +return A.eC(s,'"',"%22")}, +gt(a){var s,r,q,p,o,n,m,l=this +for(s=l.c,r=s.length,q=0,p=0;p"))}} +A.aCs.prototype={ +$2(a,b){var s,r=this.a +if(b instanceof A.ua)r.d.push(new A.aU(a,b,t.YB)) +else{s=b==null?null:J.cI(b) +if(s==null)s="" +r.c.push(new A.aU(a,s,t.mT))}return null}, +$S:375} +A.aCt.prototype={ +$2(a,b){var s,r,q +for(s=J.ao(b),r=this.a;s.u();){q=s.gH(s) +r.a=r.a+"\r\n"+a+": "+q}}, +$S:267} +A.aCx.prototype={ +$1(a){this.a.G(0,B.O.gfY().cN(a))}, +$S:25} +A.aCz.prototype={ +$1(a){return this.a.G(0,B.O.gfY().cN(a))}, +$S:25} +A.aCy.prototype={ +$0(){return this.a.G(0,A.a([13,10],t.t))}, +$S:0} +A.aCv.prototype={ +$1(a){var s=this,r=s.b,q=s.a,p=q.a +p===$&&A.b() +r.$1("--"+p+"\r\n") +r.$1(q.a1R(a)) +q=a.b +if(q.f)A.q(A.R("The MultipartFile has already been finalized. This typically means you are using the same MultipartFile in repeated requests.")) +q.f=!0 +return A.bWf(q.e.$0(),s.c).b9(new A.aCu(s.d),t.z)}, +$S:382} +A.aCu.prototype={ +$1(a){return this.a.$0()}, +$S:31} +A.aCw.prototype={ +$1(a){var s=this.a.a +s===$&&A.b() +this.b.$1("--"+s+"--\r\n") +this.c.ad(0)}, +$S:20} +A.Kf.prototype={ +i(a,b){return this.a.i(0,B.c.dI(b).toLowerCase())}, +afn(a,b,c){var s,r +if(c==null)return +b=B.c.dI(b).toLowerCase() +s=this.a +if(t.j.b(c)){r=J.co(c,new A.aEi(),t.N) +s.p(0,b,A.aa(r,!0,A.k(r).h("ax.E")))}else s.p(0,b,A.a([B.c.dI(A.h(c))],t.s))}, +af(a,b){var s,r,q,p +for(s=this.a,r=A.i1(s,s.r,A.k(s).c);r.u();){q=r.d +p=s.i(0,B.c.dI(q).toLowerCase()) +p.toString +b.$2(q,p)}}, +j(a){var s,r=new A.cV("") +this.a.af(0,new A.aEj(r)) +s=r.a +return s.charCodeAt(0)==0?s:s}} +A.aEh.prototype={ +$2(a,b){return new A.aU(B.c.dI(a).toLowerCase(),b,t.Kc)}, +$S:392} +A.aEi.prototype={ +$1(a){return J.cI(a)}, +$S:39} +A.aEj.prototype={ +$2(a,b){var s,r,q +for(s=J.ao(b),r=this.a,q=a+": ";s.u();)r.a+=q+s.gH(s)+"\n"}, +$S:267} +A.Ko.prototype={ +oW(a,b){var s,r,q=a.ch +if(q!=null){s=a.b +s===$&&A.b() +s=A.ae(s.i(0,"content-type"))==null}else s=!1 +if(s){if(q instanceof A.K3)r="multipart/form-data" +else r=t.f.b(q)||!1?"application/json":null +a.sTI(0,r)}b.fp(0,a)}} +A.ua.prototype={ +gt(a){return this.a}} +A.aK2.prototype={ +$0(){return A.bsg(A.a([this.a],t.Zb),t.Cm)}, +$S:398} +A.DJ.prototype={ +K(){return"ResponseType."+this.b}} +A.a2K.prototype={ +K(){return"ListFormat."+this.b}} +A.a5H.prototype={ +sTG(a){if(a!=null&&a.a<0)throw A.c(A.R("connectTimeout should be positive")) +this.ES$=a}} +A.asT.prototype={} +A.aKT.prototype={} +A.ll.prototype={ +ghm(){var s,r,q,p,o=this,n=o.CW +if(!B.c.c8(n,A.bF("https?:",!0,!1,!1))){s=o.uU$ +s===$&&A.b() +n=s+n +r=n.split(":/") +if(r.length===2){s=A.h(r[0]) +q=r[1] +n=s+":/"+A.eC(q,"//","/")}}s=o.ER$ +s===$&&A.b() +q=o.ax +q===$&&A.b() +p=A.bLe(s,q) +if(p.length!==0)n+=(B.c.n(n,"?")?"&":"?")+p +return A.dH(n,0,null).abp()}} +A.b9w.prototype={ +Zz(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){var s,r,q=this,p="content-type" +q.saa9(0,d) +s=q.b +s===$&&A.b() +r=s.ao(0,p) +if(a!=null&&r&&!J.i(q.b.i(0,p),a))throw A.c(A.eR(a,"contentType","Unable to set different values for `contentType` and the content-type header.")) +if(!r)q.sTI(0,a)}, +gaLp(a){var s=this.a +s===$&&A.b() +return s}, +saa9(a,b){var s=this,r="content-type",q=A.VS(b,t.z) +s.b=q +if(!q.ao(0,r)&&s.e!=null)s.b.p(0,r,s.e)}, +sTI(a,b){var s,r="content-type",q=b==null?null:B.c.dI(b) +this.e=q +s=this.b +if(q!=null){s===$&&A.b() +s.p(0,r,q)}else{s===$&&A.b() +s.F(0,r)}}, +gaPa(){var s=this.r +s===$&&A.b() +return s}, +aPb(a){return this.gaPa().$1(a)}} +A.adw.prototype={} +A.akJ.prototype={} +A.bei.prototype={ +$2(a,b){var s,r="Stream is already closed",q=this.a,p=q.cx +if(p!=null&&p.b!=null){p.c=q +q=p.b +q.toString +b.pp(q) +q=b.a +if((q.e&2)!==0)A.q(A.R(r)) +q.OB()}else{q=b.a +if(t.E.b(a)){if((q.e&2)!==0)A.q(A.R(r)) +q.Cz(0,a)}else{s=new Uint8Array(A.jk(a)) +if((q.e&2)!==0)A.q(A.R(r)) +q.Cz(0,s)}}}, +$S(){return this.b.h("~(0,dL)")}} +A.fB.prototype={ +j(a){var s=this.a +if(t.f.b(s))return B.at.l2(s) +return J.cI(s)}} +A.aYO.prototype={} +A.aYP.prototype={ +$2(a,b){if(b==null)return a +return a+"="+A.k6(B.fd,J.cI(b),B.O,!0)}, +$S:265} +A.aYQ.prototype={ +$2(a,b){if(b==null)return a +return a+"="+A.h(b)}, +$S:265} +A.asE.prototype={} +A.aWM.prototype={ +X2(a){return this.aOM(a)}, +aOM(a){var s=0,r=A.y(t.N),q,p,o +var $async$X2=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:o=a.ch +if(o==null)o="" +if(typeof o!="string"){p=a.b +p===$&&A.b() +p=A.bsL(A.ae(p.i(0,"content-type")))}else p=!1 +if(p){q=A.bRj().$1(o) +s=1 +break}else if(t.a.b(o)){p=a.ax +p===$&&A.b() +q=A.bLd(o,p) +s=1 +break}else{q=J.cI(o) +s=1 +break}case 1:return A.w(q,r)}}) +return A.x($async$X2,r)}, +Nb(a,b){return this.aON(a,b)}, +aON(a,a0){var s=0,r=A.y(t.z),q,p=this,o,n,m,l,k,j,i,h,g,f,e,d,c,b +var $async$Nb=A.u(function(a1,a2){if(a1===1)return A.v(a2,r) +while(true)switch(s){case 0:c={} +b=a.f +b===$&&A.b() +if(b===B.or){q=a0 +s=1 +break}c.a=null +c.a=0 +c.b=0 +o=a0.b +n=t.E +m=A.bu9(new A.aWN(c,!1,a),n,n).qx(o) +o=new A.a8($.a9,t.b) +l=new A.aD(o,t.gR) +c.c=0 +k=A.a([],t.XE) +j=m.ci(new A.aWO(c,k),!0,new A.aWP(l),new A.aWQ(l)) +n=a.cx +if(n!=null)n.a.a.b9(new A.aWR(j),t.H) +s=3 +return A.t(o,$async$Nb) +case 3:o=c.c +i=new Uint8Array(o) +for(o=k.length,h=0,g=0;g-1?Math.max(r,s*1000):r +p=j.aom() +o=a.a +if(o!==-1)p=Math.min(p,o*1000) +n=a.e +m=!j.a.r&&n!==-1?n*1000:0 +l=a.f +k=l!==-1?l*1000:0 +if(q+(g-j.z.a)+(i-g)+k0?q:0}r=m.w +if(r!=null){p=A.dH(m.as,0,null) +p=p.gr8(p).length===0}else p=!1 +if(p){o=m.z.a +p=m.c +n=p==null?null:p.a +if(n==null)n=o +r.toString +q=n-A.biO(r).a +return B.e.bi(q>0?q/10:0)}return 0}, +G4(a){return this.aN6(a)}, +aN6(a){var s=0,r=A.y(t.JS),q,p=this,o +var $async$G4=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:s=3 +return A.t(A.boi(a,p.b),$async$G4) +case 3:o=c +s=4 +return A.t(A.boi(a,p.f),$async$G4) +case 4:q=p.TN(o,c) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$G4,r)}, +tT(a,b){return this.aPo(a,b)}, +aPn(a){return this.tT(a,null)}, +aPo(a,b){var s=0,r=A.y(t.JS),q,p=this,o,n,m,l +var $async$tT=A.u(function(c,d){if(c===1)return A.v(d,r) +while(true)switch(s){case 0:s=b!=null?3:4 +break +case 3:o=b.b.f +o===$&&A.b() +m=A +l=a +s=6 +return A.t(A.blW(o,b.a),$async$tT) +case 6:s=5 +return A.t(m.au8(l,d),$async$tT) +case 5:o=d +n=B.at.wX(b.e.a,null) +m=o +s=7 +return A.t(A.au8(a,B.O.gfY().cN(n)),$async$tT) +case 7:q=p.TN(m,d) +s=1 +break +case 4:s=8 +return A.t(A.au8(a,p.b),$async$tT) +case 8:m=d +s=9 +return A.t(A.au8(a,p.f),$async$tT) +case 9:q=p.TN(m,d) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$tT,r)}, +a88(a,b,c,d){var s=this,r=a==null?s.b:a,q=b==null?s.f:b,p=d==null?s.x:d +return new A.pH(s.a,r,s.c,s.d,s.e,q,s.r,s.w,p,s.y,s.z,s.Q,s.as)}, +TN(a,b){return this.a88(a,b,null,null)}, +aG1(a){return this.a88(null,null,null,a)}} +A.aug.prototype={ +$2(a,b){return this.a.afn(0,a,b)}, +$S:58} +A.w6.prototype={} +A.XR.prototype={ +Ed(){var s=0,r=A.y(t.uq),q,p=this,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0 +var $async$Ed=A.u(function(a1,a2){if(a1===1)return A.v(a2,r) +while(true)switch(s){case 0:b=p.a +a=A.bhP(A.bJo(b,"cache-control")) +a0=p.b +s=a0!=null&&p.c==null?3:4 +break +case 3:s=p.PX()||p.avd(a,a0)?5:6 +break +case 5:s=7 +return A.t(A.bhQ(A.auf(b),p.d,a0),$async$Ed) +case 7:b=a2 +p.c=b +q=new A.w6(null,b) +s=1 +break +case 6:case 4:o=p.c +if(o!=null){if(p.d.a===B.m0){q=new A.w6(null,o) +s=1 +break}if(!o.a.c&&!o.aKp(a)){q=new A.w6(null,o) +s=1 +break}n=o.d +if(n!=null){m=b.b +m===$&&A.b() +m.p(0,"if-none-match",n)}else{n=o.w +if(n!=null){m=b.b +m===$&&A.b() +m.p(0,"if-modified-since",n)}else{n=o.c +if(n!=null){m=b.b +m===$&&A.b() +l=n.N6() +n=B.nt[A.a6w(l)-1] +k=A.yc(l)<=9?"0":"" +j=B.f.j(A.yc(l)) +i=B.df[A.ku(l)-1] +h=B.f.j(A.Dl(l)) +g=A.qG(l)<=9?" 0":" " +f=B.f.j(A.qG(l)) +e=A.aM7(l)<=9?":0":":" +d=B.f.j(A.aM7(l)) +c=A.aM8(l)<=9?":0":":" +c=""+n+", "+k+j+" "+i+" "+h+g+f+e+d+c+B.f.j(A.aM8(l))+" GMT" +m.p(0,"if-modified-since",c.charCodeAt(0)==0?c:c)}}}}q=new A.w6(b,null) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$Ed,r)}, +avd(a,b){var s,r,q +if(this.d.a===B.qF)return!1 +s=b.c +if(s==null)return!1 +if(A.bJq(b))return!1 +r=b.e.a +q=A.bhP(r.i(0,B.c.dI("cache-control").toLowerCase())) +if((a.d||q.d)&&!this.PX())return!1 +if(!B.b.n(B.zC,s))if(s===302||s===307){r=r.i(0,B.c.dI("expires").toLowerCase()) +if((r==null?null:J.jo(r))==null&&q.a===-1&&q.b!=null)return!1}return this.auz(b,q)}, +PX(){var s=this.d.a +return s===B.m0||s===B.qE}, +auz(a,b){var s +if(this.PX())return!0 +s=a.e.a +return B.b0.tX(B.b0.tX(B.b0.tX(s.i(0,B.c.dI("etag").toLowerCase())!=null,s.i(0,B.c.dI("last-modified").toLowerCase())!=null),s.i(0,B.c.dI("expires").toLowerCase())!=null),b.a>0)}} +A.aui.prototype={} +A.aF9.prototype={ +$1(a){var s="Invalid HTTP date ",r=this.b,q=this.a,p=q.a,o=a.length +if(r.length-p").S(n.z[1]).h("RE<1,2>")) +if(!(hb.e)A.q(A.c6(e)) +s=b.a +b.f=c +r=s[d] +d=t.S +c=A.F(d,t.z) +for(q=0;qb.e)A.q(A.c6(e)) +b.f=o +c.p(0,s[p],b.hX(0))}s=t.OC.a(c.i(0,0)) +if(s==null)s=new A.t5(-1,null,!1,!1,-1,-1,!1,B.bU) +p=t.kc +o=p.a(c.i(0,1)) +o=o==null?null:J.iP(o,d) +n=t.Z7 +m=n.a(c.i(0,2)) +l=A.ae(c.i(0,3)) +k=n.a(c.i(0,4)) +p=p.a(c.i(0,5)) +d=p==null?null:J.iP(p,d) +p=A.bs(c.i(0,6)) +j=A.ae(c.i(0,7)) +n=n.a(c.i(0,8)) +i=t.PL.a(c.i(0,9)) +h=t.W7 +g=h.a(c.i(0,10)) +f=A.bs(c.i(0,11)) +if(c.i(0,12)!=null)c=h.a(c.i(0,12)) +else{c=h.a(c.i(0,10)) +c=A.bi8(c.a-150,c.b)}return new A.pH(s,o,m,l,k,d,p,j,n,i,c,g,f)}, +BR(a,b,c){var s,r,q,p=null +A.bf(13,p) +if(b.b.length-b.d<1)b.bT(1) +s=b.b +r=b.d +q=r+1 +b.d=q +s[r]=13 +A.bf(0,p) +if(s.length-q<1)b.bT(1) +b.b[b.d++]=0 +b.ea(0,c.a) +A.bf(1,p) +if(b.b.length-b.d<1)b.bT(1) +b.b[b.d++]=1 +b.ea(0,c.b) +A.bf(2,p) +if(b.b.length-b.d<1)b.bT(1) +b.b[b.d++]=2 +b.ea(0,c.c) +A.bf(3,p) +if(b.b.length-b.d<1)b.bT(1) +b.b[b.d++]=3 +b.ea(0,c.d) +A.bf(4,p) +if(b.b.length-b.d<1)b.bT(1) +b.b[b.d++]=4 +b.ea(0,c.e) +A.bf(5,p) +if(b.b.length-b.d<1)b.bT(1) +b.b[b.d++]=5 +b.ea(0,c.f) +A.bf(6,p) +if(b.b.length-b.d<1)b.bT(1) +b.b[b.d++]=6 +b.ea(0,c.r) +A.bf(7,p) +if(b.b.length-b.d<1)b.bT(1) +b.b[b.d++]=7 +b.ea(0,c.w) +A.bf(8,p) +if(b.b.length-b.d<1)b.bT(1) +b.b[b.d++]=8 +b.ea(0,c.x) +A.bf(9,p) +if(b.b.length-b.d<1)b.bT(1) +b.b[b.d++]=9 +b.ea(0,c.y) +A.bf(10,p) +if(b.b.length-b.d<1)b.bT(1) +b.b[b.d++]=10 +b.ea(0,c.Q) +A.bf(11,p) +if(b.b.length-b.d<1)b.bT(1) +b.b[b.d++]=11 +b.ea(0,c.as) +A.bf(12,p) +if(b.b.length-b.d<1)b.bT(1) +b.b[b.d++]=12 +b.ea(0,c.z)}, +gv(a){return B.f.gv(93)}, +l(a,b){var s +if(b==null)return!1 +if(this!==b)s=b instanceof A.Q0&&A.o(this)===A.o(b)&&!0 +else s=!0 +return s}, +gBJ(){return 93}} +A.PZ.prototype={ +hB(a,b){var s,r,q,p,o,n,m,l,k="Not enough bytes available.",j=b.f,i=j+1 +if(i>b.e)A.q(A.c6(k)) +s=b.a +b.f=i +r=s[j] +j=A.F(t.S,t.z) +for(q=0;qb.e)A.q(A.c6(k)) +b.f=p +j.p(0,s[i],b.hX(0))}i=A.bv(j.i(0,0)) +if(i==null)i=-1 +s=A.ae(j.i(0,1)) +p=A.cG(j.i(0,2)) +o=A.cG(j.i(0,3)) +n=J.iP(t.j.a(j.i(0,4)),t.N) +m=A.bv(j.i(0,5)) +if(m==null)m=-1 +l=A.bv(j.i(0,6)) +if(l==null)l=-1 +j=A.cG(j.i(0,7)) +return new A.t5(i,s,p===!0,o===!0,m,l,j===!0,n)}, +BR(a,b,c){var s,r,q,p=null +A.bf(8,p) +if(b.b.length-b.d<1)b.bT(1) +s=b.b +r=b.d +q=r+1 +b.d=q +s[r]=8 +A.bf(0,p) +if(s.length-q<1)b.bT(1) +b.b[b.d++]=0 +b.ea(0,c.a) +A.bf(1,p) +if(b.b.length-b.d<1)b.bT(1) +b.b[b.d++]=1 +b.ea(0,c.b) +A.bf(2,p) +if(b.b.length-b.d<1)b.bT(1) +b.b[b.d++]=2 +b.ea(0,c.c) +A.bf(3,p) +if(b.b.length-b.d<1)b.bT(1) +b.b[b.d++]=3 +b.ea(0,c.d) +A.bf(4,p) +if(b.b.length-b.d<1)b.bT(1) +b.b[b.d++]=4 +b.ea(0,c.w) +A.bf(5,p) +if(b.b.length-b.d<1)b.bT(1) +b.b[b.d++]=5 +b.ea(0,c.e) +A.bf(6,p) +if(b.b.length-b.d<1)b.bT(1) +b.b[b.d++]=6 +b.ea(0,c.f) +A.bf(7,p) +if(b.b.length-b.d<1)b.bT(1) +b.b[b.d++]=7 +b.ea(0,c.r)}, +gv(a){return B.f.gv(94)}, +l(a,b){var s +if(b==null)return!1 +if(this!==b)s=b instanceof A.PZ&&A.o(this)===A.o(b)&&!0 +else s=!0 +return s}, +gBJ(){return 94}} +A.Q_.prototype={ +hB(a,b){var s=b.f,r=s+1 +if(r>b.e)A.q(A.c6("Not enough bytes available.")) +b.f=r +switch(b.a[s]){case 0:return B.OT +case 2:return B.OU +case 1:default:return B.qG}}, +BR(a,b,c){switch(c.a){case 0:A.bf(0,null) +if(b.b.length-b.d<1)b.bT(1) +b.b[b.d++]=0 +break +case 1:A.bf(1,null) +if(b.b.length-b.d<1)b.bT(1) +b.b[b.d++]=1 +break +case 2:A.bf(2,null) +if(b.b.length-b.d<1)b.bT(1) +b.b[b.d++]=2 +break}}, +gv(a){return B.f.gv(95)}, +l(a,b){var s +if(b==null)return!1 +if(this!==b)s=b instanceof A.Q_&&A.o(this)===A.o(b)&&!0 +else s=!0 +return s}, +gBJ(){return 95}} +A.awg.prototype={} +A.b8J.prototype={} +A.Lo.prototype={ +gUB(){return B.ea}, +L2(){this.a.d.$2(this.b,B.t4) +var s=this.gTg() +return(s==null?null:s.gO9(s).d)===B.ea}, +a8m(){var s,r=this.b +this.a.d.$2(r,B.SD) +s=this.aaB(new A.aIP(!1),!0,!0) +if((s==null?null:s.giH(s))!==B.ea)throw A.c(A.bfX(r))}, +U_(a){return this.aGD(a)}, +aGD(a){var s=0,r=A.y(t.Db),q,p=this +var $async$U_=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:q=p.a8n(a) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$U_,r)}, +a8n(a){var s,r,q,p,o={},n=this.a,m=n.c,l=m.LT(0,this.b,a+"rand"),k=m.aH9(l),j=A.oF(l,m.a).gTh(),i=t.y9.a(n.Li(k)) +if(i==null)A.q(A.blM(A.bs(new A.aIQ(k).$0()))) +i.toString +A.bR2(i,new A.aIR(k)) +s=$.bmO() +A.pZ(n) +r=s.a.get(n) +o.a=r==null?0:r +q=new A.aIS(o,j) +for(s=i.r;s.ao(0,q.$0());)++o.a +$.bmO().p(0,n,o.a) +p=A.boL(i) +s.p(0,q.$0(),p) +n=new A.Lo(n,m.LT(0,k,q.$0())) +n.a8m() +return n}, +j(a){return"MemoryDirectory: '"+this.b+"'"}, +$iJg:1, +$ibii:1} +A.aIP.prototype={ +$2(a,b){if(this.a||b)return A.boL(a) +return null}, +$S:415} +A.aIQ.prototype={ +$0(){return this.a}, +$S:14} +A.aIR.prototype={ +$0(){return this.a}, +$S:14} +A.aIS.prototype={ +$0(){return this.b+this.a.a}, +$S:14} +A.ai8.prototype={} +A.Lp.prototype={ +gazw(){var s,r=this,q=r.gTg() +if(q==null)q=r.apl() +else{s=q.giH(q) +if(s===B.ja)q=A.bgg(t.C5.a(q),new A.aJ_(r),null,null) +A.blo(B.f2,q.giH(q),new A.aJ0(r))}return t.jL.a(q)}, +gUB(){return B.f2}, +L2(){this.a.d.$2(this.b,B.t4) +var s=this.gTg() +return(s==null?null:s.gO9(s).d)===B.f2}, +apm(a){var s=this.aKc(new A.aIZ(!1),!0) +if((s==null?null:s.giH(s))!==B.f2)throw A.c(A.bwM(this.b)) +return s}, +apl(){return this.apm(!1)}, +vf(a){var s=0,r=A.y(t.S),q,p=this +var $async$vf=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:q=t.jL.a(p.gacE()).r.length +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$vf,r)}, +G3(){var s=0,r=A.y(t.E),q,p=this +var $async$G3=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:p.a.d.$2(p.b,B.SB) +q=new Uint8Array(A.jk(t.jL.a(p.gacE()).r)) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$G3,r)}, +j(a){return"MemoryFile: '"+this.b+"'"}, +$iJJ:1, +$ibiB:1} +A.aJ_.prototype={ +$0(){return this.a.b}, +$S:14} +A.aJ0.prototype={ +$0(){return this.a.b}, +$S:14} +A.aIZ.prototype={ +$2(a,b){var s +if(b){s=new A.l0(new Uint8Array(0),a) +s.OF(a) +return s}return null}, +$S:424} +A.afZ.prototype={ +gLR(){var s=this.c +s=s==null?null:(s.a.a&30)!==0 +return s===!1}, +G(a,b){if(this.gLR())A.q(A.R("StreamSink is bound to a stream")) +if(this.d)throw A.c(A.R("StreamSink is closed")) +this.ZF(b)}, +dO(a,b){if(this.gLR())A.q(A.R("StreamSink is bound to a stream")) +this.a.f6(a,b)}, +aEd(a,b){var s=this +if(s.gLR())A.q(A.R("StreamSink is bound to a stream")) +s.c=new A.aD(new A.a8($.a9,t.b),t.gR) +b.ci(new A.b3q(s),!0,new A.b3r(s),new A.b3s(s)) +return s.c.a}, +ad(a){var s=this +if(s.gLR())A.q(A.R("StreamSink is bound to a stream")) +if(!s.d){s.d=!0 +s.b.fe(new A.b3t(s),new A.b3u(s),t.H)}return s.a.a}, +ZF(a){this.b=this.b.b9(new A.b3p(a),t.jL)}, +$idL:1} +A.b3o.prototype={ +$0(){var s,r,q=this.a.a +if(q!=null)throw A.c(q) +q=this.c +s=q.aF() +r=this.d +if(r===B.mO||r===B.t1)s.r=new Uint8Array(0) +return q.aF()}, +$S:428} +A.b3q.prototype={ +$1(a){return this.a.ZF(a)}, +$S:160} +A.b3s.prototype={ +$2(a,b){var s=this.a +s.c.f6(a,b) +s.c=null}, +$S:23} +A.b3r.prototype={ +$0(){var s=this.a +s.c.fj(0) +s.c=null}, +$S:0} +A.b3t.prototype={ +$1(a){return this.a.a.fj(0)}, +$S:431} +A.b3u.prototype={ +$2(a,b){return this.a.a.f6(a,b)}, +$S:13} +A.b3p.prototype={ +$1(a){a.ea(0,this.a) +return a}, +$S:432} +A.aIT.prototype={} +A.b6z.prototype={ +a8O(a,b){return new A.Lo(this,this.XG(b))}, +a9s(a,b,c,a0){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=this,d=null +if(a.length===0)return d +else{s=e.c +if(s.a.jQ(a)>0){r=e.a +a=B.c.cv(a,0)}else{s=s.b +r=t.y9.a(e.Li(s==null?A.beO():s))}}$.aqu() +q=A.a(a.split("/"),t.s) +if(!!q.fixed$length)A.q(A.a7("removeWhere")) +B.b.ul(q,A.bWd(),!0) +p=r==null?d:r +o=q.length-1 +for(s=c==null,n=!s,m=t.C5,l=!a0,k=t.Tg,j=p,i=0;i<=o;++i){h=q[i] +switch(h){case".":j=p +break +case"..":g=p==null +j=g?d:p.gbP(p) +p=g?d:p.gbP(p) +break +default:j=p==null?d:p.r.i(0,h)}g=new A.b6B(e,q,i) +if((j==null?d:j.giH(j))===B.ja)f=i=this.b.length)this.d.cM(0,r)}, +$S:450} +A.aBu.prototype={ +$1(a){this.a.$4(this.b,null,A.ae(B.t2.gtI(this.c)),null)}, +$S:134} +A.aBv.prototype={ +$1(a){var s=this +s.a.$4(s.b,t.n6.a(B.t2.gtI(s.c)),null,null) +s.d.fj(0)}, +$S:134} +A.aBq.prototype={ +$1(a){var s=window +s.toString +B.pj.aNz(s,"focus",this) +A.BQ(A.dC(0,0,1),null,t.z).b9(new A.aBr(this.a,this.b),t.P)}, +$S:31} +A.aBr.prototype={ +$1(a){var s=this.a +if(!s.a){s.a=!0 +this.b.cM(0,null)}}, +$S:29} +A.aBp.prototype={ +$2(a,b){return(a.length===0?"":a+",")+" ."+b}, +$S:258} +A.a0V.prototype={ +K(){return"FileType."+this.b}} +A.aBg.prototype={} +A.aBh.prototype={ +iF(a,b){return this.Id(b,!1,!0,a,null,!1,!1)}, +Id(a,b,c,d,e,f,g){return this.are(a,!1,!0,d,e,!1,!1)}, +are(a,b,a0,a1,a2,a3,a4){var s=0,r=A.y(t.fW),q,p=2,o,n,m,l,k,j,i,h,g,f,e,d,c +var $async$Id=A.u(function(a5,a6){if(a5===1){o=a6 +s=p}while(true)switch(s){case 0:d=a.b +if(!J.i(d,"custom"))i=a1.length!==0 +else i=!1 +if(i)throw A.c(A.cR("You are setting a type ["+a.j(0)+u.i)) +p=4 +i=$.bFR +if(i!=null)i.aQ(0) +s=7 +return A.t($.bAd().LM(d,A.ap(["allowMultipleSelection",!1,"allowedExtensions",a1,"allowCompression",!0,"withData",!1],t.N,t.X),t.f),$async$Id) +case 7:n=a6 +if(n==null){q=null +s=1 +break}m=A.a([],t.M6) +for(i=J.ao(n);i.u();){l=i.gH(i) +h=l +g=J.ak(h) +f=g.i(h,"name") +J.fu(m,new A.lf(g.i(h,"path"),f,g.i(h,"bytes"),null,g.i(h,"size"),g.i(h,"identifier")))}q=new A.tx(m) +s=1 +break +p=2 +s=6 +break +case 4:p=3 +c=o +i=A.ai(c) +if(i instanceof A.y0){k=i +A.rM("[MethodChannelFilePicker] Platform exception: "+A.h(k)) +throw c}else{j=i +A.rM("[MethodChannelFilePicker] Unsupported operation. Method not found. The exception thrown was: "+A.h(j)) +throw c}s=6 +break +case 3:s=2 +break +case 6:case 1:return A.w(q,r) +case 2:return A.v(o,r)}}) +return A.x($async$Id,r)}} +A.aBj.prototype={ +iF(a,b){return this.aMM(a,b)}, +aMM(a,b){var s=0,r=A.y(t.fW),q,p=this,o,n,m,l,k,j,i +var $async$iF=A.u(function(c,d){if(c===1)return A.v(d,r) +while(true)switch(s){case 0:s=3 +return A.t(A.Hh("osascript"),$async$iF) +case 3:l=d +k=p.Lg(b,a) +j=A.eC("","\\","\\\\") +j=A.eC(j,'"','\\"') +j=A.eC(j,"\n","\\\n") +o=A.a(["-e"],t.s) +n=k.length!==0?"choose file "+("of type {"+k+"} "):"choose file " +o.push(n+('with prompt "'+j+'"')) +s=4 +return A.t(A.W3(l,o),$async$iF) +case 4:m=d +if(m==null){q=null +s=1 +break}i=A +s=5 +return A.t(A.bwt(p.MW(m),!1,!1),$async$iF) +case 5:q=new i.tx(d) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$iF,r)}, +Lg(a,b){switch(a.a){case 0:return"" +case 4:return'"aac", "midi", "mp3", "ogg", "wav"' +case 5:return'"", "'+B.b.cq(b,'", "')+'"' +case 2:return'"bmp", "gif", "jpeg", "jpg", "png"' +case 1:return'"avi", "flv", "mkv", "mov", "mp4", "mpeg", "webm", "wmv", "bmp", "gif", "jpeg", "jpg", "png"' +case 3:return'"avi", "flv", "mkv", "mov", "mp4", "mpeg", "webm", "wmv"' +default:throw A.c(A.cR("unknown file type"))}}, +MW(a){var s,r=B.c.dI(a) +if(r.length===0)return A.a([],t.s) +r=new A.ad(A.a(r.split(", alias "),t.s),new A.aBl(),t.a4).Cs(0,new A.aBm()) +s=A.aa(r,!0,r.$ti.h("z.E")) +if(s.length===1&&J.bnJ(B.b.gN(s),"file "))s[0]=J.bnK(s[0],5) +else if(s.length!==0&&J.bnJ(B.b.gN(s),"alias "))s[0]=J.bnK(s[0],6) +r=A.ab(s).h("ad<1,f>") +return A.aa(new A.ad(s,new A.aBn(),r),!0,r.h("ax.E"))}} +A.aBl.prototype={ +$1(a){return B.c.dI(a)}, +$S:19} +A.aBm.prototype={ +$1(a){return a.length!==0}, +$S:10} +A.aBn.prototype={ +$1(a){var s=t.s,r=t.gD,q=A.aa(new A.be(A.a(a.split(":"),s),new A.aBk(),r),!0,r.h("z.E")) +s=A.a(["/Volumes",q[0]],s) +B.b.I(s,B.b.fs(q,1)) +return B.b.cq(s,"/")}, +$S:19} +A.aBk.prototype={ +$1(a){return a.length!==0}, +$S:10} +A.tx.prototype={ +l(a,b){if(b==null)return!1 +if(this===b)return!0 +return b instanceof A.tx&&A.e4(b.a,this.a)}, +gv(a){return J.T(this.a)}, +j(a){return"FilePickerResult(files: "+A.h(this.a)+")"}} +A.aBi.prototype={ +iF(a,b){return this.aML(a,b)}, +aML(a,b){var s=0,r=A.y(t.fW),q,p=this,o,n,m,l,k +var $async$iF=A.u(function(c,d){if(c===1)return A.v(d,r) +while(true)switch(s){case 0:s=3 +return A.t(p.yK(),$async$iF) +case 3:o=d +n=A.bEG(o) +m=n.Lg(b,a) +s=4 +return A.t(A.W3(o,n.Xp("",m,"",!1,!1)),$async$iF) +case 4:l=d +if(l==null){q=null +s=1 +break}k=A +s=5 +return A.t(A.bwt(n.MW(l),!1,!1),$async$iF) +case 5:q=new k.tx(d) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$iF,r)}, +yK(){var s=0,r=A.y(t.N),q,p=2,o,n,m,l,k +var $async$yK=A.u(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:p=4 +p=8 +s=11 +return A.t(A.Hh("qarma"),$async$yK) +case 11:n=b +q=n +s=1 +break +p=4 +s=10 +break +case 8:p=7 +l=o +s=t.VI.b(A.ai(l))?12:14 +break +case 12:s=15 +return A.t(A.Hh("kdialog"),$async$yK) +case 15:n=b +q=n +s=1 +break +s=13 +break +case 14:throw l +case 13:s=10 +break +case 7:s=4 +break +case 10:p=2 +s=6 +break +case 4:p=3 +k=o +s=t.VI.b(A.ai(k))?16:18 +break +case 16:s=19 +return A.t(A.Hh("zenity"),$async$yK) +case 19:q=b +s=1 +break +s=17 +break +case 18:throw k +case 17:s=6 +break +case 3:s=2 +break +case 6:case 1:return A.w(q,r) +case 2:return A.v(o,r)}}) +return A.x($async$yK,r)}} +A.aGj.prototype={ +Xp(a,b,c,d,e){var s=A.a(["--title",a],t.s) +s.push("--getopenfilename") +if(c.length!==0)s.push(c) +if(b.length!==0){if(c.length===0)s.push(".") +s.push(b)}return s}, +Lg(a,b){switch(a.a){case 0:return"" +case 4:return"Audio File (*.aac *.midi *.mp3 *.ogg *.wav)" +case 5:return new A.ad(b,new A.aGk(),A.ab(b).h("ad<1,f>")).cq(0," File, ")+" File (*."+B.b.cq(b," *.")+")" +case 2:return"Image File (*.bmp *.gif *.jpeg *.jpg *.png)" +case 1:return"Media File (*.avi *.flv *.mkv *.mov *.mp4 *.mpeg *.webm *.wmv *.bmp *.gif *.jpeg *.jpg *.png)" +case 3:return"Video File (*.avi *.flv *.mkv *.mov *.mp4 *.mpeg *.webm *.wmv)" +default:throw A.c(A.cR("unknown file type"))}}, +MW(a){var s +if(B.c.dI(a).length===0)return A.a([],t.s) +s=t.a4 +return A.aa(new A.ad(A.a(a.split("\n"),t.s),new A.aGl(),s),!0,s.h("ax.E"))}} +A.aGk.prototype={ +$1(a){return a.toUpperCase()}, +$S:19} +A.aGl.prototype={ +$1(a){return B.c.c8(a,"/")?a:"/"+a}, +$S:19} +A.aMK.prototype={ +Xp(a,b,c,d,e){var s=A.a(["--file-selection","--title",a],t.s) +if(c.length!==0)s.push("--filename="+c) +if(b.length!==0)s.push("--file-filter="+b) +return s}, +Lg(a,b){switch(a.a){case 0:return"" +case 4:return"*.aac *.midi *.mp3 *.ogg *.wav" +case 5:return"*."+B.b.cq(b," *.") +case 2:return"*.bmp *.gif *.jpeg *.jpg *.png" +case 1:return"*.avi *.flv *.mkv *.mov *.mp4 *.mpeg *.webm *.wmv *.bmp *.gif *.jpeg *.jpg *.png" +case 3:return"*.avi *.flv *.mkv *.mov *.mp4 *.mpeg *.webm *.wmv" +default:throw A.c(A.cR("unknown file type"))}}, +MW(a){var s +if(B.c.dI(a).length===0)return A.a([],t.s) +s=t.a4 +return A.aa(new A.ad(A.a(a.split("|/"),t.s),new A.aML(),s),!0,s.h("ax.E"))}} +A.aML.prototype={ +$1(a){return B.c.c8(a,"/")?a:"/"+a}, +$S:19} +A.lf.prototype={ +gdN(a){throw A.c(" On web `path` is always `null`,\n You should access `bytes` property instead,\n Read more about it [here](https://github.com/miguelpruivo/flutter_file_picker/wiki/FAQ)\n ")}, +l(a,b){var s,r,q=this +if(b==null)return!1 +if(q===b)return!0 +if(b instanceof A.lf)if(b.b===q.b){s=b.c +r=q.c +s=(s==null?r==null:s===r)&&J.i(b.d,q.d)&&b.f==q.f&&b.e===q.e}else s=!1 +else s=!1 +return s}, +gv(a){return 0}, +j(a){var s=this +return"PlatformFile(, name: "+s.b+", bytes: "+A.h(s.c)+", readStream: "+A.h(s.d)+", size: "+s.e+")"}} +A.bfh.prototype={ +$1(a){return a.length!==0}, +$S:10} +A.bfi.prototype={ +$1(a){return this.ae6(a)}, +ae6(a){var s=0,r=A.y(t.hD),q,p=this,o,n,m +var $async$$1=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:o=A.bpv(a) +if(!p.b){q=A.beN(o,null,null) +s=1 +break}n=A +m=o +s=3 +return A.t(o.G3(),$async$$1) +case 3:q=n.beN(m,c,null) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$$1,r)}, +$S:457} +A.nV.prototype={ +K(){return"AnimationStatus."+this.b}} +A.bQ.prototype={ +j(a){return"#"+A.bt(this)+"("+this.Gl()+")"}, +Gl(){switch(this.gaL(this).a){case 1:return"\u25b6" +case 2:return"\u25c0" +case 3:return"\u23ed" +case 0:return"\u23ee"}}} +A.Fo.prototype={ +K(){return"_AnimationDirection."+this.b}} +A.WH.prototype={ +K(){return"AnimationBehavior."+this.b}} +A.my.prototype={ +acK(a){var s,r,q=this.r +q.toString +s=this.r=a.zQ(this.gOX()) +r=q.a +if(r!=null){s.a=r +s.c=q.c +if(!s.b)r=s.e==null +else r=!1 +if(r)s.e=$.cF.Cb(s.gJv(),!1) +q.a=null +q.Nh()}q.m()}, +gk(a){var s=this.x +s===$&&A.b() +return s}, +sk(a,b){var s=this +s.h7(0) +s.Is(b) +s.ag() +s.CH()}, +gkq(){var s=this.r +if(!(s!=null&&s.a!=null))return 0 +s=this.w +s.toString +return s.j1(0,this.y.a/1e6)}, +Is(a){var s=this,r=s.a,q=s.b,p=s.x=A.S(a,r,q) +if(p===r)s.Q=B.Q +else if(p===q)s.Q=B.a5 +else s.Q=s.z===B.aI?B.aY:B.aZ}, +gaL(a){var s=this.Q +s===$&&A.b() +return s}, +oO(a,b){var s=this +s.z=B.aI +if(b!=null)s.sk(0,b) +return s.ZW(s.b)}, +bS(a){return this.oO(a,null)}, +WT(a,b){var s=this +s.z=B.li +if(b!=null)s.sk(0,b) +return s.ZW(s.a)}, +d9(a){return this.WT(a,null)}, +jW(a,b,c){var s,r,q,p,o,n,m=this,l=$.a8g.Lb$ +l===$&&A.b() +if((l.a&4)!==0)switch(m.d.a){case 0:s=0.05 +break +case 1:s=1 +break +default:s=1}else s=1 +if(c==null){r=m.b-m.a +if(isFinite(r)){l=m.x +l===$&&A.b() +q=Math.abs(a-l)/r}else q=1 +if(m.z===B.li&&m.f!=null){l=m.f +l.toString +p=l}else{l=m.e +l.toString +p=l}o=new A.bk(B.e.bi(p.a*q))}else{l=m.x +l===$&&A.b() +o=a===l?B.F:c}m.h7(0) +l=o.a +if(l===B.F.a){l=m.x +l===$&&A.b() +if(l!==a){m.x=A.S(a,m.a,m.b) +m.ag()}m.Q=m.z===B.aI?B.a5:B.Q +m.CH() +return A.bk_()}n=m.x +n===$&&A.b() +return m.Jj(new A.b5G(l*s/1e6,n,a,b,B.d5))}, +ZW(a){return this.jW(a,B.Z,null)}, +Bq(a){var s,r,q=this,p=q.a,o=q.b,n=q.e +q.h7(0) +s=q.x +s===$&&A.b() +r=n.a/1e6 +s=o===p?0:s/(o-p)*r +return q.Jj(new A.b9v(p,o,!1,q.gap6(),r,s,B.d5))}, +ap7(a){this.z=a +this.Q=a===B.aI?B.aY:B.aZ +this.CH()}, +AD(a){var s,r,q,p=this,o=$.bAB(),n=a<0 +p.z=n?B.li:B.aI +s=n?p.a-0.01:p.b+0.01 +n=$.a8g.Lb$ +n===$&&A.b() +if((n.a&4)!==0)switch(p.d.a){case 0:r=200 +break +case 1:r=1 +break +default:r=1}else r=1 +n=p.x +n===$&&A.b() +q=new A.O5(s,A.GM(o,n-s,a*r),B.d5) +q.a=B.ajF +p.h7(0) +return p.Jj(q)}, +aI2(){return this.AD(1)}, +T6(a){this.h7(0) +this.z=B.aI +return this.Jj(a)}, +Jj(a){var s,r=this +r.w=a +r.y=B.F +r.x=A.S(a.hD(0,0),r.a,r.b) +s=r.r.vP(0) +r.Q=r.z===B.aI?B.aY:B.aZ +r.CH() +return s}, +yh(a,b){this.y=this.w=null +this.r.yh(0,b)}, +h7(a){return this.yh(a,!0)}, +m(){var s=this +s.r.m() +s.r=null +s.eo$.ab(0) +s.dB$.ab(0) +s.Cr()}, +CH(){var s=this,r=s.Q +r===$&&A.b() +if(s.as!==r){s.as=r +s.vi(r)}}, +amq(a){var s,r=this +r.y=a +s=a.a/1e6 +r.x=A.S(r.w.hD(0,s),r.a,r.b) +if(r.w.tm(s)){r.Q=r.z===B.aI?B.a5:B.Q +r.yh(0,!1)}r.ag() +r.CH()}, +Gl(){var s,r=this.r,q=r==null,p=!q&&r.a!=null?"":"; paused" +if(q)s="; DISPOSED" +else s=r.b?"; silenced":"" +r=this.Hh() +q=this.x +q===$&&A.b() +return r+" "+B.e.az(q,3)+p+s}} +A.b5G.prototype={ +hD(a,b){var s,r,q=this,p=A.S(b/q.b,0,1) +if(p===0)return q.c +else{s=q.d +if(p===1)return s +else{r=q.c +return r+(s-r)*q.e.a_(0,p)}}}, +j1(a,b){return(this.hD(0,b+0.001)-this.hD(0,b-0.001))/0.002}, +tm(a){return a>this.b}} +A.b9v.prototype={ +hD(a,b){var s=this,r=b+s.r,q=s.f,p=B.e.aH(r/q,1) +B.e.js(r,q) +s.e.$1(B.aI) +q=A.ag(s.b,s.c,p) +q.toString +return q}, +j1(a,b){return(this.c-this.b)/this.f}, +tm(a){return!1}} +A.ade.prototype={} +A.adf.prototype={} +A.adg.prototype={} +A.ad3.prototype={ +P(a,b){}, +J(a,b){}, +f4(a){}, +e8(a){}, +gaL(a){return B.a5}, +gk(a){return 1}, +j(a){return"kAlwaysCompleteAnimation"}} +A.ad4.prototype={ +P(a,b){}, +J(a,b){}, +f4(a){}, +e8(a){}, +gaL(a){return B.Q}, +gk(a){return 0}, +j(a){return"kAlwaysDismissedAnimation"}} +A.Hv.prototype={ +P(a,b){}, +J(a,b){}, +f4(a){}, +e8(a){}, +gaL(a){return B.aY}, +Gl(){return this.Hh()+" 0; paused"}, +gk(){return 0}} +A.rW.prototype={ +P(a,b){return this.gbP(this).P(0,b)}, +J(a,b){return this.gbP(this).J(0,b)}, +f4(a){return this.gbP(this).f4(a)}, +e8(a){return this.gbP(this).e8(a)}, +gaL(a){var s=this.gbP(this) +return s.gaL(s)}} +A.Mt.prototype={ +sbP(a,b){var s,r=this,q=r.c +if(b==q)return +if(q!=null){r.a=q.gaL(q) +q=r.c +r.b=q.gk(q) +if(r.uX$>0)r.KU()}r.c=b +if(b!=null){if(r.uX$>0)r.KT() +q=r.b +s=r.c +s=s.gk(s) +if(q==null?s!=null:q!==s)r.ag() +q=r.a +s=r.c +if(q!==s.gaL(s)){q=r.c +r.vi(q.gaL(q))}r.b=r.a=null}}, +KT(){var s=this,r=s.c +if(r!=null){r.P(0,s.geL()) +s.c.f4(s.gabt())}}, +KU(){var s=this,r=s.c +if(r!=null){r.J(0,s.geL()) +s.c.e8(s.gabt())}}, +gaL(a){var s=this.c +if(s!=null)s=s.gaL(s) +else{s=this.a +s.toString}return s}, +gk(a){var s=this.c +if(s!=null)s=s.gk(s) +else{s=this.b +s.toString}return s}, +j(a){var s=this,r=s.c +if(r==null)return"ProxyAnimation(null; "+s.Hh()+" "+B.e.az(s.gk(s),3)+")" +return r.j(0)+"\u27a9ProxyAnimation"}} +A.jL.prototype={ +P(a,b){this.cL() +this.a.P(0,b)}, +J(a,b){this.a.J(0,b) +this.wP()}, +KT(){this.a.f4(this.gz9())}, +KU(){this.a.e8(this.gz9())}, +Jk(a){this.vi(this.a3I(a))}, +gaL(a){var s=this.a +return this.a3I(s.gaL(s))}, +gk(a){var s=this.a +return 1-s.gk(s)}, +a3I(a){switch(a.a){case 1:return B.aZ +case 2:return B.aY +case 3:return B.Q +case 0:return B.a5}}, +j(a){return this.a.j(0)+"\u27aaReverseAnimation"}} +A.wm.prototype={ +JD(a){var s=this +switch(a.a){case 0:case 3:s.d=null +break +case 1:if(s.d==null)s.d=B.aY +break +case 2:if(s.d==null)s.d=B.aZ +break}}, +ga6d(){if(this.c!=null){var s=this.d +if(s==null){s=this.a +s=s.gaL(s)}s=s!==B.aZ}else s=!0 +return s}, +m(){this.a.e8(this.gJC())}, +gk(a){var s=this,r=s.ga6d()?s.b:s.c,q=s.a,p=q.gk(q) +if(r==null)return p +if(p===0||p===1)return p +return r.a_(0,p)}, +j(a){var s=this +if(s.c==null)return s.a.j(0)+"\u27a9"+s.b.j(0) +if(s.ga6d())return s.a.j(0)+"\u27a9"+s.b.j(0)+"\u2092\u2099/"+A.h(s.c) +return s.a.j(0)+"\u27a9"+s.b.j(0)+"/"+A.h(s.c)+"\u2092\u2099"}, +gbP(a){return this.a}} +A.anh.prototype={ +K(){return"_TrainHoppingMode."+this.b}} +A.zf.prototype={ +Jk(a){if(a!==this.e){this.ag() +this.e=a}}, +gaL(a){var s=this.a +return s.gaL(s)}, +aDD(){var s,r,q=this,p=q.b +if(p!=null){switch(q.c.a){case 0:p=p.gk(p) +s=q.a +r=p<=s.gk(s) +break +case 1:p=p.gk(p) +s=q.a +r=p>=s.gk(s) +break +default:r=!1}if(r){p=q.a +s=q.gz9() +p.e8(s) +p.J(0,q.gSJ()) +p=q.b +q.a=p +q.b=null +p.f4(s) +s=q.a +q.Jk(s.gaL(s))}}else r=!1 +p=q.a +p=p.gk(p) +if(p!==q.f){q.ag() +q.f=p}if(r&&q.d!=null)q.d.$0()}, +gk(a){var s=this.a +return s.gk(s)}, +m(){var s,r,q=this +q.a.e8(q.gz9()) +s=q.gSJ() +q.a.J(0,s) +q.a=null +r=q.b +if(r!=null)r.J(0,s) +q.b=null +q.dB$.ab(0) +q.eo$.ab(0) +q.Cr()}, +j(a){var s=this +if(s.b!=null)return A.h(s.a)+"\u27a9TrainHoppingAnimation(next: "+A.h(s.b)+")" +return A.h(s.a)+"\u27a9TrainHoppingAnimation(no next)"}} +A.B_.prototype={ +KT(){var s,r=this,q=r.a,p=r.ga2v() +q.P(0,p) +s=r.ga2w() +q.f4(s) +q=r.b +q.P(0,p) +q.f4(s)}, +KU(){var s,r=this,q=r.a,p=r.ga2v() +q.J(0,p) +s=r.ga2w() +q.e8(s) +q=r.b +q.J(0,p) +q.e8(s)}, +gaL(a){var s=this.b +if(s.gaL(s)===B.aY||s.gaL(s)===B.aZ)return s.gaL(s) +s=this.a +return s.gaL(s)}, +j(a){return"CompoundAnimation("+this.a.j(0)+", "+this.b.j(0)+")"}, +aw7(a){var s=this +if(s.gaL(s)!==s.c){s.c=s.gaL(s) +s.vi(s.gaL(s))}}, +aw6(){var s=this +if(!J.i(s.gk(s),s.d)){s.d=s.gk(s) +s.ag()}}} +A.HI.prototype={ +gk(a){var s,r=this.a +r=r.gk(r) +s=this.b +s=s.gk(s) +return Math.min(A.kM(r),A.kM(s))}} +A.Qa.prototype={} +A.Qb.prototype={} +A.Qc.prototype={} +A.aeU.prototype={} +A.ajF.prototype={} +A.ajG.prototype={} +A.ajH.prototype={} +A.akO.prototype={} +A.akP.prototype={} +A.ane.prototype={} +A.anf.prototype={} +A.ang.prototype={} +A.M5.prototype={ +a_(a,b){return this.tN(b)}, +tN(a){throw A.c(A.cL(null))}, +j(a){return"ParametricCurve"}} +A.ju.prototype={ +a_(a,b){if(b===0||b===1)return b +return this.ahB(0,b)}} +A.RG.prototype={ +tN(a){return a}} +A.Na.prototype={ +tN(a){a*=this.a +return a-(a<0?Math.ceil(a):Math.floor(a))}, +j(a){return"SawTooth("+this.a+")"}} +A.dO.prototype={ +tN(a){var s=this.a +a=A.S((a-s)/(this.b-s),0,1) +if(a===0||a===1)return a +return this.c.a_(0,a)}, +j(a){var s=this,r=s.c +if(!(r instanceof A.RG))return"Interval("+A.h(s.a)+"\u22ef"+A.h(s.b)+")\u27a9"+r.j(0) +return"Interval("+A.h(s.a)+"\u22ef"+A.h(s.b)+")"}} +A.ON.prototype={ +tN(a){return a"))}} +A.aw.prototype={ +gk(a){var s=this.a +return this.b.a_(0,s.gk(s))}, +j(a){var s=this.a,r=this.b +return s.j(0)+"\u27a9"+r.j(0)+"\u27a9"+A.h(r.a_(0,s.gk(s)))}, +Gl(){return this.Hh()+" "+this.b.j(0)}, +gbP(a){return this.a}} +A.dq.prototype={ +a_(a,b){return this.b.a_(0,this.a.a_(0,b))}, +j(a){return this.a.j(0)+"\u27a9"+this.b.j(0)}} +A.aO.prototype={ +hh(a){var s=this.a +return A.k(this).h("aO.T").a(J.bnp(s,J.bBV(J.bBW(this.b,s),a)))}, +a_(a,b){var s,r=this +if(b===0){s=r.a +return s==null?A.k(r).h("aO.T").a(s):s}if(b===1){s=r.b +return s==null?A.k(r).h("aO.T").a(s):s}return r.hh(b)}, +j(a){return"Animatable("+A.h(this.a)+" \u2192 "+A.h(this.b)+")"}, +sTj(a){return this.a=a}, +scf(a,b){return this.b=b}} +A.N7.prototype={ +hh(a){return this.c.hh(1-a)}} +A.dk.prototype={ +hh(a){return A.W(this.a,this.b,a)}} +A.a8F.prototype={ +hh(a){return A.aTn(this.a,this.b,a)}} +A.ur.prototype={ +hh(a){return A.bry(this.a,this.b,a)}} +A.tR.prototype={ +hh(a){var s,r=this.a +r.toString +s=this.b +s.toString +return B.e.bi(r+(s-r)*a)}} +A.pO.prototype={ +hh(a){var s=this.a +return s==null?this.$ti.c.a(s):s}, +j(a){return"ConstantTween(value: "+A.h(this.a)+")"}} +A.eE.prototype={ +a_(a,b){if(b===0||b===1)return b +return this.a.a_(0,b)}, +j(a){return"CurveTween(curve: "+this.a.j(0)+")"}} +A.UU.prototype={} +A.P_.prototype={ +alO(a,b){var s,r,q,p,o,n,m,l=this.a +B.b.I(l,a) +for(s=l.length,r=0,q=0;q=n&&b"}} +A.IL.prototype={ +a8(){return new A.aeF(null,null,B.m)}} +A.aeF.prototype={ +aR(){var s,r=this +r.b5() +s=A.bw(B.z,null,B.e3,0,null,1,null,r) +r.d=s +r.a.toString +s.Bq(0)}, +aY(a){this.br(a) +this.a.toString}, +m(){var s=this.d +s===$&&A.b() +s.m() +this.aky()}, +A(a){var s,r=this.a +r.toString +s=this.d +s===$&&A.b() +r=r.c +r=B.QP.eN(a) +this.a.toString +return A.cZ(A.jv(null,null,null,new A.aeE(s,r,10,1,A.bIZ(-1,-3.3333333333333335,1,-10,1,1),s),B.x),20,20)}, +$iaN:1} +A.aeE.prototype={ +aD(a,b){var s,r,q,p,o,n,m,l,k=this,j=$.as().bn() +a.eb(0) +a.bj(0,b.a/2,b.b/2) +s=k.b.x +s===$&&A.b() +r=B.e.eA(8*s) +for(s=k.e,q=8*s,p=k.f,s=s<1,o=k.c,n=0;n>>16&255,o.gk(o)>>>8&255,o.gk(o)&255)) +a.de(p,j) +a.tJ(0,0.7853981633974483)}a.dq(0)}, +fw(a){return a.b!==this.b||!a.c.l(0,this.c)||a.e!==this.e}} +A.V1.prototype={ +m(){var s=this,r=s.c4$ +if(r!=null)r.J(0,s.ghI()) +s.c4$=null +s.aZ()}, +cn(){this.d3() +this.cT() +this.hJ()}} +A.IM.prototype={ +a8(){return new A.Qh(new A.aO(1,null,t.Y),null,null,B.m)}} +A.Qh.prototype={ +aR(){var s,r,q,p=this +p.b5() +s=A.bw(B.z,null,B.S,0,null,1,0,p) +p.e=s +r=t.m +q=p.d +p.f=new A.aw(r.a(new A.aw(r.a(s),new A.eE(B.dt),t.HY.h("aw"))),q,q.$ti.h("aw")) +p.a4l()}, +aY(a){this.br(a) +this.a4l()}, +a4l(){var s=this.a.x +this.d.b=s}, +m(){var s=this.e +s===$&&A.b() +s.m() +this.akz()}, +anq(a){if(!this.r){this.r=!0 +this.HD(0)}}, +ans(a){if(this.r){this.r=!1 +this.HD(0)}}, +ano(){if(this.r){this.r=!1 +this.HD(0)}}, +HD(a){var s,r,q,p=this.e +p===$&&A.b() +s=p.r +if(s!=null&&s.a!=null)return +r=this.r +if(r){p.z=B.aI +q=p.jW(1,B.lb,B.Rv)}else{p.z=B.aI +q=p.jW(0,B.QD,B.RB)}q.b9(new A.b26(this,r),t.H)}, +A(a1){var s,r,q,p,o,n,m,l,k,j,i,h,g,f=this,e=null,d=f.a.r==null,c=!d,b=A.iS(a1),a=b.gil(),a0=f.a.e +if(a0==null)s=e +else s=A.wk(a0,a1) +a0=s!=null +if(a0)r=b.gvn() +else if(c)r=a +else{q=B.QT.eN(a1) +r=q}p=b.gq3().ghC().co(r) +q=c&&!0?B.bB:B.cw +o=c?f.ganp():e +n=c?f.ganr():e +m=c?f.gann():e +l=f.a +k=l.r +j=l.w +i=f.f +i===$&&A.b() +h=l.y +if(a0&&d){d=l.f +if(d instanceof A.ek)d=d.eN(a1)}else d=s +l=f.a +g=l.d +if(g==null)a0=a0?B.Sa:B.mA +else a0=g +h=A.tl(new A.b8(a0,new A.e5(l.z,1,1,A.fw(A.x9(l.c,new A.cX(e,e,e,e,e,r,e,e),e),e,e,B.aR,!0,p,e,e,B.aq),e),e),new A.dJ(d,e,e,h,e,e,B.aE),B.da) +return A.mX(A.dM(B.bv,new A.bu(A.bI(e,e,e,e,e,!0,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e),!1,!1,!1,!1,new A.ew(new A.aL(j,1/0,j,1/0),new A.cS(i,!1,h,e),e),e),B.C,!1,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,k,m,o,n,e,!1,B.ai),q,e,e,e,e)}, +$iaN:1} +A.b26.prototype={ +$1(a){var s=this.a +if(s.c!=null&&this.b!==s.r)s.HD(0)}, +$S:20} +A.V2.prototype={ +m(){var s=this,r=s.c4$ +if(r!=null)r.J(0,s.ghI()) +s.c4$=null +s.aZ()}, +cn(){this.d3() +this.cT() +this.hJ()}} +A.IN.prototype={ +a8(){return new A.Qi(new A.ae0($.b5()),null,!1,$,null,null,B.m)}} +A.Qi.prototype={ +aR(){this.b5() +this.e=this.a.c}, +aY(a){var s +this.br(a) +s=a.c +if(s!=this.a.c)this.e=s}, +m(){var s=this.d +s.ah$=$.b5() +s.ak$=0 +this.akA()}, +gdT(){return this.a.d}, +gxM(){return this.a.w}, +gk(a){return this.a.c}, +W4(a){if(this.f!==a)this.f=a}, +A(a){var s,r,q,p,o,n,m=this,l=null,k=m.a.e +if(k==null)k=B.iY +s=A.aE6(A.K(204,k.gk(k)>>>16&255,k.gk(k)>>>8&255,k.gk(k)&255)) +r=new A.tF(s.a,s.b,0.835,0.69).N4() +s=m.a +q=s.c +p=s.w?q==null:l +s=s.y +o=m.d +o.ska(r) +o.sqS(m.f) +o.sAc(m.x6$) +o.suv(k) +o.sAO(B.dv) +o.sqz(B.n) +o.sk(0,m.a.c) +o.sWt(m.e) +o.sFi(m.a.d!=null) +m.a.toString +n=A.I3(4) +o.scG(0,new A.cE(n,B.t)) +o.seP(m.a.Q) +s=m.a7k(!1,s,m.gW3(),o,B.adS) +return new A.bu(A.bI(l,l,l,l,l,l,q===!0,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,p,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l),!1,!1,!1,!1,s,l)}, +$iaN:1} +A.ae0.prototype={ +sqz(a){if(J.i(this.as,a))return +this.as=a +this.ag()}, +sk(a,b){if(this.at==b)return +this.at=b +this.ag()}, +sWt(a){if(this.ax==a)return +this.ax=a +this.ag()}, +scG(a,b){if(J.i(this.ay,b))return +this.ay=b +this.ag()}, +seP(a){return}, +PR(a,b,c,d,e){if(e)a.dV(this.ay.kv(b),c) +if(d!=null)this.ay.qB(d).aD(a,b)}, +aD(a,b){var s,r,q,p,o,n,m,l,k,j=this,i=$.as(),h=i.bn(),g=j.as +g.toString +h.sa5(0,g) +h.scK(0,B.aj) +h.sfB(2.5) +h.svS(B.oV) +s=t.EP.a(b.i1(0,2).a2(0,B.oM.i1(0,2))) +g=s.a +r=s.b +q=new A.I(g,r,g+18,r+18) +p=i.bn() +o=j.at +if(o!==!1){o=j.f +o.toString}else o=!1 +if(o){o=j.a +o.toString}else{o=j.b +o.toString}p.sa5(0,o) +o=j.at +n=j.ch +if(o===!1){g=p.ga5(p) +j.PR(a,q,p,new A.b9(g,1,B.M,-1),!1)}else{j.PR(a,q,p,n,!0) +o=j.at +if(o===!0){m=i.cZ() +m.fo(0,g+4.5,r+9.36) +o=g+8.280000000000001 +n=r+13.5 +m.d7(0,o,n) +a.dV(m,h) +m.fo(0,o,n) +m.d7(0,g+12.959999999999999,r+5.22) +a.dV(m,h)}else a.jF(s.T(0,B.aar),s.T(0,B.aaI),h)}g=j.e +g.toString +if(g){l=q.dZ(1) +k=i.bn() +i=j.c +i.toString +k.sa5(0,i) +k.scK(0,B.aj) +k.sfB(3.5) +j.PR(a,l,k,j.ch,!0)}}} +A.V3.prototype={ +cn(){this.d3() +this.cT() +this.es()}, +m(){var s=this,r=s.b_$ +if(r!=null)r.J(0,s.gej()) +s.b_$=null +s.aZ()}} +A.aoh.prototype={} +A.ek.prototype={ +gk(a){return this.b.a}, +gD9(){var s=this +return!s.e.l(0,s.f)||!s.x.l(0,s.y)||!s.r.l(0,s.w)||!s.z.l(0,s.Q)}, +gD7(){var s=this +return!s.e.l(0,s.r)||!s.f.l(0,s.w)||!s.x.l(0,s.z)||!s.y.l(0,s.Q)}, +gD8(){var s=this +return!s.e.l(0,s.x)||!s.f.l(0,s.y)||!s.r.l(0,s.z)||!s.w.l(0,s.Q)}, +eN(a){var s,r,q,p,o,n=this,m=null +if(n.gD9()){s=a.ae(t.WD) +r=s==null?m:s.f.c.guA() +if(r==null){r=A.cT(a,B.px) +r=r==null?m:r.d +q=r}else q=r +if(q==null)q=B.aB}else q=B.aB +if(n.gD7()){r=A.cT(a,B.Lh) +r=r==null?m:r.Q +p=r===!0}else p=!1 +if(n.gD8())A.bEi(a) +switch(q.a){case 1:switch(0){case 0:o=p?n.r:n.e +break}break +case 0:switch(0){case 0:o=p?n.w:n.f +break}break +default:o=m}return new A.ek(o,n.c,m,n.e,n.f,n.r,n.w,n.x,n.y,n.z,n.Q,0)}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.a1(b)!==A.o(s))return!1 +return b instanceof A.ek&&b.b.a===s.b.a&&b.e.l(0,s.e)&&b.f.l(0,s.f)&&b.r.l(0,s.r)&&b.w.l(0,s.w)&&b.x.l(0,s.x)&&b.y.l(0,s.y)&&b.z.l(0,s.z)&&b.Q.l(0,s.Q)}, +gv(a){var s=this +return A.X(s.b.a,s.e,s.f,s.r,s.x,s.y,s.w,s.Q,s.z,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){var s=this,r=new A.awU(s),q=A.a([r.$2("color",s.e)],t.s) +if(s.gD9())q.push(r.$2("darkColor",s.f)) +if(s.gD7())q.push(r.$2("highContrastColor",s.r)) +if(s.gD9()&&s.gD7())q.push(r.$2("darkHighContrastColor",s.w)) +if(s.gD8())q.push(r.$2("elevatedColor",s.x)) +if(s.gD9()&&s.gD8())q.push(r.$2("darkElevatedColor",s.y)) +if(s.gD7()&&s.gD8())q.push(r.$2("highContrastElevatedColor",s.z)) +if(s.gD9()&&s.gD7()&&s.gD8())q.push(r.$2("darkHighContrastElevatedColor",s.Q)) +r=s.c +if(r==null)r="CupertinoDynamicColor" +q=B.b.cq(q,", ") +return r+"("+q+", resolved by: UNRESOLVED)"}} +A.awU.prototype={ +$2(a,b){var s=b.l(0,this.a.b)?"*":"" +return s+a+" = "+b.j(0)+s}, +$S:481} +A.aeI.prototype={} +A.aeH.prototype={} +A.awT.prototype={ +BZ(a){return B.x}, +Kh(a,b,c,d){return B.a_}, +BY(a,b){return B.i}} +A.aoi.prototype={} +A.YN.prototype={ +A(a){var s=null,r=A.aS(a,B.bJ,t.l).w.f.b+8,q=this.c.a2(0,new A.l(8,r)),p=A.cO(this.d,B.w,B.D,B.aa),o=$.as().Ep(20,20,B.cK) +return new A.b8(new A.aK(8,r,8,8),new A.kV(new A.a01(q),A.cP(s,A.asA(A.tl(new A.b8(B.Sb,p,s),new A.dJ(B.QQ.eN(a),s,A.bo4(B.QM.eN(a),1),B.bh,s,s,B.aE),B.da),o),B.E,s,s,B.M9,s,s,s,s,222),s),s)}} +A.wj.prototype={ +a8(){return new A.Qj(B.m)}} +A.Qj.prototype={ +ax2(a){this.a7(new A.b27(this))}, +ax6(a){this.a7(new A.b28(this))}, +A(a){var s=this,r=null,q=s.a.f,p=A.O(q,r,B.ac,r,r,B.KM.co(s.d?A.iS(a).gvn():B.iZ.eN(a)),r,r) +q=s.d?A.iS(a).gil():r +return A.cZ(A.mX(A.YM(B.iy,B.fV,p,q,B.j_,0,s.a.c,B.Sd,0.7),B.cw,r,s.gax1(),s.gax5(),r),r,1/0)}} +A.b27.prototype={ +$0(){this.a.d=!0}, +$S:0} +A.b28.prototype={ +$0(){this.a.d=!1}, +$S:0} +A.YP.prototype={ +L(a){var s=this.f,r=A.wk(s,a) +return J.i(r,s)?this:this.co(r)}, +wJ(a,b,c,d,e,f,g,h){var s,r=this,q=g==null?r.a:g,p=b==null?r.b:b,o=h==null?r.c:h,n=c==null?r.d:c,m=e==null?r.e:e,l=a==null?r.f:a +if(d==null){s=r.r +s=s==null?null:A.S(s,0,1)}else s=d +return A.bow(l,p,n,s,m,f==null?r.w:f,q,o)}, +co(a){return this.wJ(a,null,null,null,null,null,null,null)}, +a7Y(a){return this.wJ(null,null,null,a,null,null,null,null)}} +A.aeJ.prototype={} +A.aeK.prototype={ +xj(a){return a.ge_(a)==="en"}, +ke(a,b){return new A.ct(B.Nr,t.u4)}, +vM(a){return!1}, +j(a){return"DefaultCupertinoLocalizations.delegate(en_US)"}} +A.a_S.prototype={ +gW(){return"Cut"}, +gV(){return"Copy"}, +gX(){return"Paste"}, +gO(){return"Select All"}, +$iaz:1} +A.J_.prototype={ +a8(){return new A.Qn(B.i,null,null,B.m)}} +A.Qn.prototype={ +aR(){var s,r,q=this +q.b5() +s=A.bw(B.z,null,B.cT,0,null,1,0,q) +s.cL() +r=s.dB$ +r.b=!0 +r.a.push(new A.b2k(q)) +q.f=s +r=q.a +r.d.a=s +r.w.P(0,q.gRc()) +r=t.Y +s=q.f +q.a.toString +q.r=new A.aw(A.c_(B.cx,s,null),new A.aO(0,1,r),r.h("aw"))}, +m(){var s,r=this +r.a.d.a=null +s=r.f +s===$&&A.b() +s.m() +r.a.w.J(0,r.gRc()) +r.akD()}, +aY(a){var s,r=this,q=a.w +if(q!==r.a.w){s=r.gRc() +q.J(0,s) +r.a.w.P(0,s)}r.br(a)}, +cp(){this.a2m() +this.ei()}, +a2m(){var s,r=this,q=r.a.w.a,p=q.c.gbH().b,o=q.a,n=p-o.b,m=r.a +m.toString +if(n<-48){if(m.d.gHa())r.a.d.F7(!1) +return}if(!m.d.gHa()){m=r.f +m===$&&A.b() +m.bS(0)}r.a.toString +s=Math.max(p,p-n/10) +o=o.a-40 +n=s-73.5 +m=r.c +m.toString +m=A.aS(m,B.it,t.l).w.a +r.a.toString +n=A.bqz(new A.I(10,-21.5,0+m.a-10,0+m.b+21.5),new A.I(o,n,o+80,n+47.5)) +r.a7(new A.b2i(r,new A.l(n.a,n.b),p,s))}, +A(a){var s,r,q=this +q.a.toString +s=q.d +r=q.r +r===$&&A.b() +return A.bnS(new A.a_x(r,new A.l(0,q.e),null),B.cx,B.RK,s.a,s.b)}, +$iaN:1} +A.b2k.prototype={ +$0(){return this.a.a7(new A.b2j())}, +$S:0} +A.b2j.prototype={ +$0(){}, +$S:0} +A.b2i.prototype={ +$0(){var s=this,r=s.a +r.d=s.b +r.e=s.c-s.d}, +$S:0} +A.a_x.prototype={ +A(a){var s,r,q=null,p=this.r,o=p.b +p=p.a +o.a_(0,p.gk(p)) +s=new A.l(0,49.75).T(0,this.w) +r=o.a_(0,p.gk(p)) +r=A.lT(B.aai,B.i,r==null?1:r) +r.toString +p=o.a_(0,p.gk(p)) +if(p==null)p=1 +p=A.bqA(p,B.a1A,new A.cE(B.LN,B.LS)) +return new A.p1(A.ou(r.a,r.b,0),q,!0,q,new A.Dw(q,p,s,1,B.adX,q),q)}} +A.V6.prototype={ +m(){var s=this,r=s.c4$ +if(r!=null)r.J(0,s.ghI()) +s.c4$=null +s.aZ()}, +cn(){this.d3() +this.cT() +this.hJ()}} +A.Re.prototype={ +j(a){return"Default Hero tag for Cupertino navigation bars with navigator "+A.h(this.a)}, +l(a,b){if(b==null)return!1 +if(this===b)return!0 +if(J.a1(b)!==A.o(this))return!1 +return b instanceof A.Re&&b.a==this.a}, +gv(a){return A.rL(this.a)}} +A.ag8.prototype={ +A(a){var s,r,q,p=this,o=null,n=p.r,m=n.b +n=n.a +s=m.a_(0,n.gk(n)).b +r=p.e +q=r?m.a_(0,n.gk(n)).a:o +n=r?o:m.a_(0,n.gk(n)).a +m=p.f +return A.hc(o,p.w,m.b,o,q,n,s,m.a)}} +A.IW.prototype={ +gr3(){return B.ae_}, +a8(){return new A.aeL(B.m)}, +$iqF:1} +A.aeL.prototype={ +aR(){this.b5() +var s=t.C +this.d=new A.b72(new A.bo("Navigation bar render box",s),new A.bo("Leading",s),new A.bo("Back chevron",s),new A.bo("Back label",s),new A.bo("Middle",s),new A.bo("Trailing",s),new A.bo("Large title",s))}, +A(a){var s,r,q,p,o,n,m,l,k,j,i,h=this,g=null +h.a.toString +s=A.wk(g,a) +if(s==null)s=A.iS(a).gwA() +r=h.d +r===$&&A.b() +q=t.X +p=A.qq(a,q) +h.a.toString +o=A.bMT(!0,r.b,g,p,g) +n=A.bMQ(!0,r.c,p,g) +m=A.bMR(!0,r.d,g,p,g) +l=A.bMU(!0,!1,r.e,p,g,B.KO) +k=A.bMV(g,r.f,g) +A.bMS(!0,!1,r.r,p,g) +h.a.toString +p=A.iS(a).gq3().ghC() +h.a.toString +j=A.bvX(s,B.q7,g,A.fw(new A.aj1(new A.b71(o,n,m,l,k),g,g),g,g,B.aR,!0,p,g,g,B.aq),!0) +h.a.toString +i=A.qq(a,q) +r=!(i instanceof A.jJ&&!i.gpI()) +if(r)return j +return new A.ej(new A.b2d(h,s,j),g)}} +A.b2d.prototype={ +$1(a){var s,r,q,p,o=this.a +o.a.toString +if(B.pv.l(0,B.pv))s=new A.Re(A.j5(a,!1)) +else{o.a.toString +s=B.pv}r=o.d +r===$&&A.b() +q=A.iS(a).gq3().gabm() +p=A.iS(a).gq3().gM8() +o.a.toString +return A.bpW(new A.U4(r,this.b,q,p,null,B.q7,!0,!1,this.c,r.a),A.bTR(),A.bTS(),A.bTT(),s,!0)}, +$S:495} +A.aj1.prototype={ +A(a){var s,r,q,p,o=null,n=this.c,m=n.d +if(m!=null){s=A.iS(a).gq3().gM8() +m=A.fw(new A.bu(A.bI(o,o,o,o,o,o,o,o,o,o,o,o,o,!0,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o),!1,!1,!1,!1,m,o),o,o,B.aR,!0,s,o,o,B.aq)}r=n.a +q=n.b +p=n.c +if(r==null&&q!=null&&p!=null)r=new A.a_y(q,p,o) +s=A.aS(a,B.bJ,t.l).w +return A.cZ(A.yz(!1,new A.LJ(r,m,n.e,!0,6,o),!0,B.a4,!0,!0),44+s.f.b,o)}} +A.b72.prototype={} +A.b71.prototype={} +A.b73.prototype={ +$0(){this.a.a.M3()}, +$S:0} +A.a_y.prototype={ +A(a){var s,r,q=null +A.qq(a,t.X) +s=A.iS(a).gq3().gabm() +r=A.fw(new A.ew(B.M8,A.dd(A.a([B.ab1,this.f,B.ab2,new A.og(1,B.f4,this.r,q)],t.p),B.w,B.D,B.aa),q),q,q,B.aR,!0,s,q,q,B.aq) +return A.YM(B.X,B.bh,new A.bu(A.bI(q,q,q,q,q,!0,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,"Back",q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q),!0,!1,!0,!1,r,q),q,B.j_,44,new A.awW(this,a),B.a4,0.4)}} +A.awW.prototype={ +$0(){A.aKu(this.b)}, +$S:0} +A.ads.prototype={ +A(a){var s,r,q,p=null,o=a.ae(t.I) +o.toString +s=a.ae(t.sp) +if(s==null)s=B.mm +r=A.ep(62415) +q=new A.b8(B.RR,A.bjV(A.di(p,A.eb(p,p,s.w.b,p,p,p,p,p,"CupertinoIcons",p,p,30,p,p,p,p,p,!1,p,p,p,p,"cupertino_icons",p,p,p),r),p,p),p) +switch(o.w.a){case 0:o=new A.bS(new Float64Array(16)) +o.fQ() +o.rq(0,-1,1,1) +q=A.EW(B.X,q,o,!1) +break +case 1:break}return q}} +A.PL.prototype={ +ana(a,b,c){var s,r=null +if(b==null)return B.a_ +s=A.O(b,1,B.ac,r,r,r,r,r) +return new A.e5(B.d8,1,r,b.length>12?B.ajx:s,r)}, +A(a){var s=this.d +if(s instanceof A.rl&&!s.gVv()){s.toString +s=t.My.a(s).UO$ +s.toString +return A.bt3(this.gan9(),s,t.v)}else return B.a_}} +A.U4.prototype={ +gBp(){var s=$.ar.al$.z.i(0,this.c.a).ga9() +s.toString +return t.x.a(s)}, +A(a){return this.z}} +A.aiu.prototype={ +A(a){var s,r,q,p,o,n=this,m=null,l=n.c,k=n.e,j=n.d,i=a.ae(t.I) +i.toString +s=k.gBp() +r=j.gBp() +q=k.gBp() +q=q.gq(q) +p=j.gBp() +p=p.gq(p) +p=new A.I(0,0,0+q.a,0+q.b).oH(new A.I(0,0,0+p.a,0+p.b)) +i=i.w===B.j?1:-1 +o=new A.b6V(l,k.c,j.c,s,r,k.e,j.e,k.f,j.f,k.r,j.r,k.x,j.x,!1,!1,p,i) +l=A.a([A.h1(l,new A.b74(n),m)],t.p) +if(o.ga77()!=null){k=o.ga77() +k.toString +l.push(k)}if(o.ga78()!=null){k=o.ga78() +k.toString +l.push(k)}if(o.ga7a()!=null){k=o.ga7a() +k.toString +l.push(k)}if(o.ga7b()!=null){k=o.ga7b() +k.toString +l.push(k)}if(o.ga79()!=null){k=o.ga79() +k.toString +l.push(k)}if(o.ga7c()!=null){k=o.ga7c() +k.toString +l.push(k)}if(o.gad9()!=null){k=o.gad9() +k.toString +l.push(k)}if(o.gad6()!=null){k=o.gad6() +k.toString +l.push(k)}if(o.gad7()!=null){k=o.gad7() +k.toString +l.push(k)}if(o.gada()!=null){k=o.gada() +k.toString +l.push(k)}if(o.gad8()!=null){k=o.gad8() +k.toString +l.push(k)}if(o.gadb()!=null){k=o.gadb() +k.toString +l.push(k)}k=t.l +j=A.aS(a,m,k).w.zK(1) +i=n.f +s=i.a +s.toString +i=i.b +i.toString +i=Math.max(A.kM(s),A.kM(i)) +k=A.aS(a,B.bJ,k).w +return A.la(A.cZ(A.fr(B.bs,l,B.E,B.aH,m),i+k.f.b,1/0),j,m)}} +A.b74.prototype={ +$2(a,b){var s=this.a,r=s.c,q=s.r.a_(0,r.gk(r)) +q.toString +return A.bvX(q,s.w.a_(0,r.gk(r)),null,A.cZ(null,s.f.a_(0,r.gk(r)),1/0),!1)}, +$S:51} +A.b6V.prototype={ +r2(a,b){var s,r,q=$.ar.al$.z.i(0,a).ga9() +q.toString +t.x.a(q) +s=A.cD(q.cs(0,b),B.i) +q=q.gq(q) +r=s.a +s=s.b +return A.brB(new A.I(r,s,r+q.a,s+q.b),this.ay)}, +Yv(a,b,c,d,e){var s,r,q,p,o,n,m,l,k,j,i,h=$.ar.al$.z.i(0,b).ga9() +h.toString +s=t.x +s.a(h) +r=$.ar.al$.z.i(0,d).ga9() +r.toString +s.a(r) +q=this.ch>0 +s=q?0:h.gq(h).a +p=h.gq(h) +o=q?0:r.gq(r).a +n=r.gq(r) +m=A.cD(h.cs(0,c),new A.l(s,p.b/2)) +l=A.cD(r.cs(0,e),new A.l(o,n.b/2)) +k=q?l.a2(0,m):new A.l(e.gq(e).a-l.a,l.b).a2(0,new A.l(c.gq(c).a-m.a,m.b)) +j=this.r2(b,c) +s=q?j.a:j.c +i=new A.l(s,j.b) +s=i.T(0,k) +r=t.Ni +return A.btK(a,q,new A.aw(t.m.a(this.a),new A.aO(i,s,r),r.h("aw")),h.gq(h))}, +EN(a){var s=$.bzU(),r=s.$ti.h("dq") +return new A.aw(t.m.a(this.a),new A.dq(new A.eE(new A.dO(a,1,B.bp)),s,r),r.h("aw"))}, +Ap(a){var s=$.bzV(),r=s.$ti.h("dq") +return new A.aw(t.m.a(this.a),new A.dq(new A.eE(new A.dO(0,a,B.cx)),s,r),r.h("aw"))}, +ga7a(){var s=this,r=s.b.b,q=$.ar.al$.z.i(0,r) +q=q==null?null:q.gc7() +t.SC.a(q) +if(q==null)return null +r=s.r2(r,s.d) +return A.Dg(new A.cS(s.Ap(0.4),!1,q.c,null),r)}, +ga77(){var s=this,r=null,q=s.b.c,p=$.ar.al$.z.i(0,q) +p=p==null?r:p.gc7() +t.SC.a(p) +if(p==null)return r +q=s.r2(q,s.d) +return A.Dg(new A.cS(s.Ap(0.6),!1,A.fw(p.c,r,r,B.aR,!0,s.f,r,r,B.aq),r),q)}, +ga78(){var s,r,q=this,p=null,o=q.b.d,n=$.ar.al$.z.i(0,o) +n=n==null?p:n.gc7() +t.SC.a(n) +if(n==null)return p +s=q.d +r=q.r2(o,s) +s=r.dw(new A.l(q.ch*(-s.gq(s).a/2),0)) +o=t.m.a(q.a) +return new A.Mo(new A.cS(q.Ap(0.2),!1,A.fw(n.c,p,p,B.aR,!0,q.f,p,p,B.aq),p),new A.aw(o,new A.DA(r,s),t.MD.h("aw")),p)}, +ga7b(){var s,r,q,p,o,n,m=this,l=null,k=m.b.e,j=$.ar.al$.z.i(0,k) +j=j==null?l:j.gc7() +s=t.SC +s.a(j) +r=m.c +q=r.d +p=$.ar.al$.z.i(0,q) +o=s.a(p==null?l:p.gc7()) +r=$.ar.al$.z.i(0,r.b) +n=s.a(r==null?l:r.gc7()) +s=j!=null +if(s&&o!=null){s=m.Ap(m.Q?0.4:0.7) +r=t.m.a(m.a) +return m.Yv(new A.cS(s,!1,new A.e5(B.d8,l,l,A.boH(j.c,l,B.aR,new A.aw(r,new A.p_(m.w,m.r),t.ta.h("aw"))),l),l),k,m.d,q,m.e)}if(s&&n!=null){k=m.r2(k,m.d) +return A.Dg(new A.cS(m.Ap(m.Q?0.4:0.7),!1,A.fw(j.c,l,l,B.aR,!0,m.w,l,l,B.aq),l),k)}return l}, +ga79(){var s,r,q=null,p=$.ar.al$.z.i(0,this.b.r) +p=p==null?q:p.gc7() +s=t.SC +s.a(p) +p=this.c +r=$.ar.al$.z.i(0,p.d) +s.a(r==null?q:r.gc7()) +p=$.ar.al$.z.i(0,p.b) +s.a(p==null?q:p.gc7()) +return q}, +ga7c(){var s=this,r=s.b.f,q=$.ar.al$.z.i(0,r) +q=q==null?null:q.gc7() +t.SC.a(q) +if(q==null)return null +r=s.r2(r,s.d) +return A.Dg(new A.cS(s.Ap(0.6),!1,q.c,null),r)}, +gad9(){var s=this,r=s.c.b,q=$.ar.al$.z.i(0,r) +q=q==null?null:q.gc7() +t.SC.a(q) +if(q==null)return null +r=s.r2(r,s.e) +return A.Dg(new A.cS(s.EN(0.6),!1,q.c,null),r)}, +gad6(){var s,r,q,p,o,n=this,m=null,l=n.c.c,k=$.ar.al$.z.i(0,l) +k=k==null?m:k.gc7() +s=t.SC +s.a(k) +r=$.ar.al$.z.i(0,n.b.c) +q=s.a(r==null?m:r.gc7()) +if(k==null)return m +p=n.r2(l,n.e) +s=q==null +if(s){l=$.ar.al$.z.i(0,l).ga9() +l.toString +t.x.a(l) +o=p.dw(new A.l(n.ch*l.gq(l).a*2,0))}else o=p +l=t.m.a(n.a) +return new A.Mo(new A.cS(n.EN(s?0.7:0.4),!1,A.fw(k.c,m,m,B.aR,!0,n.r,m,m,B.aq),m),new A.aw(l,new A.DA(o,p),t.MD.h("aw")),m)}, +gad7(){var s,r,q,p,o,n=this,m=null,l=n.b,k=l.e,j=$.ar.al$.z.i(0,k) +j=j==null?m:j.gc7() +s=t.SC +s.a(j) +l=$.ar.al$.z.i(0,l.r) +s.a(l==null?m:l.gc7()) +l=n.c.d +r=$.ar.al$.z.i(0,l) +q=s.a(r==null?m:r.gc7()) +if(q==null)return m +s=$.ar.al$.z.i(0,l) +p=s==null?m:s.x9(t.re) +if(p!=null){s=p.uW$ +s=s.gk(s)<1}else s=!1 +if(s){s=p.uW$ +s=s.gk(s) +r=t.Y +o=new A.aw(t.m.a(n.a),new A.aO(0,s,r),r.h("aw"))}else o=m +if(j!=null){j=o==null?n.EN(0.3):o +s=t.m.a(n.a) +return n.Yv(new A.cS(j,!1,A.boH(q.c,m,B.aR,new A.aw(s,new A.p_(n.w,n.r),t.ta.h("aw"))),m),k,n.d,l,n.e)}return m}, +gada(){var s,r,q,p,o,n,m,l,k=this,j=null,i=k.c.e,h=$.ar.al$.z.i(0,i) +h=h==null?j:h.gc7() +t.SC.a(h) +if(h==null)return j +s=k.e +r=k.r2(i,s) +i=$.ar.al$.z.i(0,i).ga9() +i.toString +t.x.a(i) +q=k.ch>0 +p=q?r.a:r.c +o=r.b +s=s.gq(s) +n=i.gq(i) +m=t.Ni +l=t.m.a(k.a) +i=i.gq(i) +return A.btK(new A.cS(k.EN(0.25),!1,A.fw(h.c,j,j,B.aR,!0,k.x,j,j,B.aq),j),q,new A.aw(l,new A.aO(new A.l(s.a-n.a/2,o),new A.l(p,o),m),m.h("aw")),i)}, +gadb(){var s=this,r=s.c.f,q=$.ar.al$.z.i(0,r) +q=q==null?null:q.gc7() +t.SC.a(q) +if(q==null)return null +r=s.r2(r,s.e) +return A.Dg(new A.cS(s.EN(0.4),!1,q.c,null),r)}, +gad8(){var s=$.ar.al$.z.i(0,this.c.r) +s=s==null?null:s.gc7() +t.SC.a(s) +return null}} +A.IX.prototype={ +a8(){return new A.Qk(B.m)}} +A.Qk.prototype={ +axN(){var s,r=this.c +r.toString +s=A.Dk(r) +if(s!=null&&s.f.length!==0)s.iZ(0,B.eY,B.bu)}, +A(a){var s,r,q,p,o,n,m,l,k=this,j=null,i=k.a.d,h=A.aS(a,j,t.l).w +k.a.toString +s=h.f +r=s.b +q=44+r +p=h.e +o=p.d +n=p.Ei(0) +k.a.toString +m=A.wk(j,a) +if(m==null)m=A.iS(a).gwA() +i=(m.gk(m)>>>24&255)===255?A.la(new A.b8(new A.aK(0,q,0,o),i,j),h.aNC(!0).aG8(n),j):A.la(new A.b8(new A.aK(0,0,0,o),i,j),h.aGk(s.aG6(q),n),j) +k.a.toString +s=A.wk(j,a) +if(s==null)s=A.iS(a).gvF() +p=A.a([i],t.p) +k.a.toString +l=h.zK(1) +p.push(A.hc(j,A.la(k.a.c,l,j),j,j,0,0,0,j)) +p.push(A.hc(j,A.dM(j,j,B.C,!0,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,k.gaxM(),j,j,j,j,!1,B.ai),r,j,0,0,0,j)) +return A.tl(A.fr(B.bs,p,B.E,B.aH,j),new A.dJ(s,j,j,j,j,j,B.aE),B.da)}} +A.B6.prototype={ +a8(){return new A.FB(new A.ajL($.b5()),null,!1,$,null,null,B.m,this.$ti.h("FB<1>"))}} +A.FB.prototype={ +ayX(a){var s +if(a==null){this.a.e.$1(null) +return}if(a){s=this.a +s.e.$1(s.c)}}, +m(){var s=this.d +s.ah$=$.b5() +s.ak$=0 +this.akB()}, +gdT(){this.a.toString +return this.gayW()}, +gxM(){this.a.toString +return!1}, +gk(a){var s=this.a +return J.i(s.c,s.d)}, +W4(a){if(this.e!==a)this.e=a}, +A(a){var s,r,q,p,o,n,m,l=this,k=null,j=l.a.w +if(j==null)j=B.iY +s=A.aE6(A.K(204,j.gk(j)>>>16&255,j.gk(j)>>>8&255,j.gk(j)&255)) +r=new A.tF(s.a,s.b,0.835,0.69).N4() +s=A.aE6(j) +q=new A.tF(s.a,s.b,s.c,0.45).N4() +s=l.a +s.toString +switch(A.cb().a){case 0:case 1:case 3:case 5:p=k +break +case 2:case 4:p=J.i(s.c,s.d) +break +default:p=k}s=l.a +s=J.i(s.c,s.d) +o=l.a.Q +n=l.d +n.ska(r) +n.sAc(l.x6$) +n.sqS(l.e) +n.suv(l.x6$!=null?q:j) +n.sAO(B.n) +n.sfn(B.n) +m=l.a +n.sk(0,J.i(m.c,m.d)) +l.a.toString +n.saFc(!1) +n=l.a7k(!1,o,l.gW3(),n,B.oM) +return new A.bu(A.bI(k,k,k,k,k,k,s,k,k,k,k,k,k,k,k,k,k,k,!0,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,p,k,k,k,k,k,k,k,k),!1,!1,!1,!1,n,k)}, +$iaN:1} +A.ajL.prototype={ +sk(a,b){if(this.as===b)return +this.as=b +this.ag()}, +sfn(a){if(a.l(0,this.at))return +this.at=a +this.ag()}, +saFc(a){return}, +aD(a,b){var s=this,r=new A.I(0,0,0+b.a,0+b.b).gbH(),q=$.as().bn(),p=s.b +p.toString +q.sa5(0,p) +q.scK(0,B.bl) +q.sfB(0.1) +a.ha(r,7,q) +q.scK(0,B.aj) +q.sa5(0,B.dv) +a.ha(r,7,q) +p=s.as +if(p===!0){q.scK(0,B.bl) +p=s.a +p.toString +q.sa5(0,p) +a.ha(r,7,q) +p=s.at +p.toString +q.sa5(0,p) +a.ha(r,2.975,q)}p=s.e +p.toString +if(p){q.scK(0,B.aj) +p=s.c +p.toString +q.sa5(0,p) +q.sfB(3) +a.ha(r,8.5,q)}}} +A.H7.prototype={ +cn(){this.d3() +this.cT() +this.es()}, +m(){var s=this,r=s.b_$ +if(r!=null)r.J(0,s.gej()) +s.b_$=null +s.aZ()}} +A.V4.prototype={} +A.IY.prototype={ +gtO(a){return B.bu}, +gps(){this.$ti.h("jt<1>").a(this.b) +return B.Pt}, +grV(){return null}, +Kl(a){var s +if(a instanceof A.rl){a.$ti.h("jt<1>").a(a.b) +s=!0}else s=!1 +return s}, +kU(a,b,c){var s=null,r=this.$ti.h("jt<1>").a(this.b) +return new A.bu(A.bI(s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,!0,s,s,s,s,s,s,s,s,s),!1,!0,!1,!1,r.r,s)}, +zv(a,b,c,d){return A.boz(this,a,b,c,d,this.$ti.c)}} +A.awX.prototype={ +$0(){return A.bEb(this.a)}, +$S:17} +A.awY.prototype={ +$0(){var s=this.a,r=s.a +r.toString +s=s.at +s.toString +r.aH6() +return new A.Qg(s,r,this.b.h("Qg<0>"))}, +$S(){return this.b.h("Qg<0>()")}} +A.rl.prototype={ +gtt(){this.$ti.h("jt<1>").a(this.b) +return!0}, +gpI(){this.$ti.h("jt<1>").a(this.b) +return!1}, +guJ(){return A.fg.prototype.guJ.call(this)+"("+A.h(this.$ti.h("jt<1>").a(this.b).a)+")"}} +A.jt.prototype={ +uI(a){var s=null,r=this.$ti,q=A.a([],t.Zt),p=$.a9,o=r.h("a8<1?>"),n=r.h("aD<1?>"),m=A.lX(B.bN),l=A.a([],t.wi),k=A.ed(s,t.v),j=$.a9 +return new A.rl(s,!1,!0,s,s,q,new A.bo(s,r.h("bo>")),new A.bo(s,t.C),new A.oD(),s,0,new A.aD(new A.a8(p,o),n),m,l,this,k,new A.aD(new A.a8(j,o),n),r.h("rl<1>"))}} +A.a_z.prototype={ +A(a){var s,r=this,q=a.ae(t.I) +q.toString +s=q.w +q=r.e +return A.NM(A.NM(new A.a_N(q,r.f,q,null),r.c,s,!0),r.d,s,!1)}} +A.YO.prototype={ +A(a){var s=a.ae(t.I) +s.toString +return A.NM(A.NM(this.e,this.c,null,!0),this.d,s.w,!1)}} +A.Fz.prototype={ +a8(){return new A.FA(B.m,this.$ti.h("FA<1>"))}, +aHm(){return this.d.$0()}, +aMd(){return this.e.$0()}} +A.FA.prototype={ +aR(){var s,r=this +r.b5() +s=A.a1L(r,null) +s.ay=r.gazJ() +s.ch=r.gazL() +s.CW=r.gazH() +s.cx=r.gazF() +r.e=s}, +m(){var s=this.e +s===$&&A.b() +s.ok.ab(0) +s.pi() +this.aZ()}, +azK(a){this.d=this.a.aMd()}, +azM(a){var s,r,q=this.d +q.toString +s=a.c +s.toString +r=this.c +r=this.a_Z(s/r.gq(r).a) +q=q.a +s=q.x +s===$&&A.b() +q.sk(0,s-r)}, +azI(a){var s,r=this,q=r.d +q.toString +s=r.c +q.a8X(r.a_Z(a.a.a.a/s.gq(s).a)) +r.d=null}, +azG(){var s=this.d +if(s!=null)s.a8X(0) +this.d=null}, +azO(a){var s +if(this.a.aHm()){s=this.e +s===$&&A.b() +s.zi(a)}}, +a_Z(a){var s=this.c.ae(t.I) +s.toString +switch(s.w.a){case 0:return-a +case 1:return a}}, +A(a){var s,r,q=null,p=a.ae(t.I) +p.toString +s=t.l +r=p.w===B.j?A.aS(a,B.bJ,s).w.f.a:A.aS(a,B.bJ,s).w.f.c +r=Math.max(r,20) +return A.fr(B.bs,A.a([this.a.c,new A.a6t(0,0,0,r,A.u3(B.aN,q,q,q,this.gazN(),q,q,q),q)],t.p),B.E,B.Km,q)}} +A.Qg.prototype={ +a8X(a){var s,r,q,p,o=this +if(Math.abs(a)>=1)s=a<=0 +else{r=o.a.x +r===$&&A.b() +s=r>0.5}if(s){r=o.a +q=r.x +q===$&&A.b() +q=A.ag(800,0,q) +q.toString +q=A.dC(0,Math.min(B.e.eA(q),300),0) +r.z=B.aI +r.jW(1,B.ru,q)}else{o.b.ik() +r=o.a +q=r.r +if(q!=null&&q.a!=null){q=r.x +q===$&&A.b() +q=A.ag(0,800,q) +q.toString +q=A.dC(0,B.e.eA(q),0) +r.z=B.li +r.jW(0,B.ru,q)}}q=r.r +if(q!=null&&q.a!=null){p=A.b4("animationStatusCallback") +p.b=new A.b25(o,p) +q=p.aF() +r.cL() +r=r.eo$ +r.b=!0 +r.a.push(q)}else o.b.KV()}} +A.b25.prototype={ +$1(a){var s=this.a +s.b.KV() +s.a.e8(this.b.aF())}, +$S:9} +A.nC.prototype={ +eY(a,b){var s +if(a instanceof A.nC){s=A.b29(a,this,b) +s.toString +return s}s=A.b29(null,this,b) +s.toString +return s}, +eZ(a,b){var s +if(a instanceof A.nC){s=A.b29(this,a,b) +s.toString +return s}s=A.b29(this,null,b) +s.toString +return s}, +zP(a){return new A.b2c(this,a)}, +l(a,b){var s,r +if(b==null)return!1 +if(J.a1(b)!==A.o(this))return!1 +if(b instanceof A.nC){s=b.a +r=this.a +r=s==null?r==null:s===r +s=r}else s=!1 +return s}, +gv(a){return J.T(this.a)}} +A.b2a.prototype={ +$1(a){var s=A.W(null,a,this.a) +s.toString +return s}, +$S:111} +A.b2b.prototype={ +$1(a){var s=A.W(null,a,1-this.a) +s.toString +return s}, +$S:111} +A.b2c.prototype={ +kk(a,b,c){var s,r,q,p,o,n,m,l,k,j,i,h=this.b.a +if(h==null)return +s=c.e +r=s.a +q=0.05*r +p=s.b +o=q/(h.length-1) +switch(c.d.a){case 0:n=b.a+r +m=1 +break +case 1:n=b.a +m=-1 +break +default:n=null +m=null}for(s=b.b,r=s+p,l=0,k=0;k").a(a.b) +s=this.UO$ +if(s==null)this.UO$=A.ed(null,t.v) +else s.sk(0,null) +this.ahj(a)}} +A.B7.prototype={ +a8(){return new A.Ql(new A.bo(null,t.C),null,null,B.m)}} +A.Ql.prototype={ +aR(){var s,r=this +r.Zc() +s=r.cy=A.bw(B.z,null,B.b_,0,null,1,null,r) +s.cL() +s=s.dB$ +s.b=!0 +s.a.push(new A.b2f(r))}, +Gu(){var s,r,q,p=this,o=p.at +o===$&&A.b() +s=p.c +s.toString +s=B.QV.eN(s) +o.sa5(0,s) +s=p.c.ae(t.I) +s.toString +o.scF(s.w) +s=p.a +r=s.w +r.toString +q=p.cy +q===$&&A.b() +q=q.x +q===$&&A.b() +o.sWU(r+q*(s.fy-r)) +o.sVK(3) +o.sU1(3) +r=p.a +s=r.r +r=r.go +q=p.cy.x +q===$&&A.b() +q=A.Mz(s,r,q) +q.toString +o.sG2(q) +q=p.c +q.toString +o.sdE(0,A.aS(q,B.bJ,t.l).w.f) +o.sVR(0,36) +o.sabh(8) +o.sNP(p.a.db)}, +Lw(a){var s,r=this +r.Zb(a) +s=r.vD() +if(s==null)return +switch(s.a){case 1:r.db=a.b +break +case 0:r.db=a.a +break}}, +Lu(){if(this.vD()==null)return +this.ahO() +var s=this.cy +s===$&&A.b() +s.bS(0).b9(new A.b2e(),t.H)}, +Lv(a,b){var s,r=this,q=r.vD() +if(q==null)return +s=r.cy +s===$&&A.b() +s.d9(0) +r.Za(a,b) +switch(q.a){case 1:if(Math.abs(b.a.b)<10&&Math.abs(a.b-r.db)>0)A.Ke() +break +case 0:if(Math.abs(b.a.a)<10&&Math.abs(a.a-r.db)>0)A.Ke() +break}}, +m(){var s=this.cy +s===$&&A.b() +s.m() +this.Z9()}} +A.b2f.prototype={ +$0(){this.a.Gu()}, +$S:0} +A.b2e.prototype={ +$1(a){return A.Ke()}, +$S:515} +A.IZ.prototype={ +a8(){return new A.Qm(null,null,B.m)}} +A.Qm.prototype={ +aR(){var s,r,q=this,p=null +q.b5() +q.y=!1 +s=A.a9T(p,p) +s.aV=q.gaBQ() +s.bU=q.gaBS() +s.cb=q.gSh() +s.bQ=q.gauf() +q.d=s +s=A.a1L(p,p) +s.ay=q.gaBL() +s.ch=q.gaBN() +s.CW=q.gaBJ() +r=q.a +s.at=r.as +q.e=s +s=A.bw(B.z,p,B.S,0,p,1,r.c?1:0,q) +q.f=s +q.r=A.c_(B.Z,s,p) +s=A.bw(B.z,p,B.bt,0,p,1,p,q) +q.w=s +q.x=A.c_(B.aL,s,p)}, +aY(a){var s,r,q=this +q.br(a) +s=q.e +s===$&&A.b() +r=q.a +s.at=r.as +s=q.Q +if(s||a.c!==r.c)q.a3G(s)}, +a3G(a){var s,r,q=this +q.Q=!1 +s=q.r +s===$&&A.b() +s.b=a?B.Z:B.aL +s.c=a?B.Z:new A.jz(B.aL) +s=q.a.c +r=q.f +if(s){r===$&&A.b() +r.bS(0)}else{r===$&&A.b() +r.d9(0)}}, +azB(){return this.a3G(!0)}, +aBR(a){var s +this.a.toString +this.Q=!1 +s=this.w +s===$&&A.b() +s.bS(0)}, +a4L(a){var s=this.a +s.d.$1(!s.c) +this.a0y()}, +aBP(){return this.a4L(null)}, +aBT(a){var s +this.a.toString +this.Q=!1 +s=this.w +s===$&&A.b() +s.d9(0)}, +aug(){this.a.toString +var s=this.w +s===$&&A.b() +s.d9(0)}, +aBM(a){var s,r=this +r.a.toString +r.Q=!1 +s=r.w +s===$&&A.b() +s.bS(0) +r.a0y()}, +aBO(a){var s,r,q,p=this +p.a.toString +s=p.r +s===$&&A.b() +s.c=s.b=B.Z +s=a.c +s.toString +r=s/20 +s=p.c.ae(t.I) +s.toString +switch(s.w.a){case 0:s=p.f +s===$&&A.b() +q=s.x +q===$&&A.b() +s.sk(0,q-r) +break +case 1:s=p.f +s===$&&A.b() +q=s.x +q===$&&A.b() +s.sk(0,q+r) +break}}, +aBK(a){var s,r,q,p=this +p.a7(new A.b2g(p)) +s=p.r +s===$&&A.b() +s=s.gk(s) +r=p.a +q=r.c +if(s>=0.5!==q)r.d.$1(!q) +s=p.w +s===$&&A.b() +s.d9(0)}, +a0y(){switch(A.cb().a){case 2:A.aE7() +break +case 0:case 1:case 3:case 4:case 5:break}}, +axv(a){this.a7(new A.b2h(this,a))}, +A(a){var s,r,q,p,o,n,m,l,k,j,i,h=this,g=null +A.iS(a) +h.a.toString +s=B.QR.eN(a) +s=s +if(h.Q)h.azB() +h.a.toString +r=h.z +if(r===$){q=A.ap([B.ii,new A.cq(h.gSh(),new A.bb(A.a([],t.h),t.d),t.wY)],t.n,t.od) +h.z!==$&&A.am() +h.z=q +r=q}p=h.a +o=p.x +n=p.y +p=p.c +m=B.QN.eN(a) +h.a.toString +l=A.aE6(A.K(204,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)) +l=new A.tF(l.a,l.b,0.835,0.69).N4() +k=h.a.d +j=a.ae(t.I) +j.toString +i=h.y +i===$&&A.b() +return A.mX(A.aKR(A.aCc(r,!1,new A.aeM(p,s,m,B.n,l,k,h,j.w,i,g),!0,o,B.cw,n,h.gaxu(),g,g),1),B.bB,g,g,g,g)}, +m(){var s=this,r=s.d +r===$&&A.b() +r.rR() +r.pi() +r=s.e +r===$&&A.b() +r.ok.ab(0) +r.pi() +r=s.f +r===$&&A.b() +r.m() +r=s.w +r===$&&A.b() +r.m() +s.akC()}, +$iaN:1} +A.b2g.prototype={ +$0(){this.a.Q=!0}, +$S:0} +A.b2h.prototype={ +$0(){this.a.y=this.b}, +$S:0} +A.aeM.prototype={ +aX(a){var s,r,q=this,p=q.y,o=new A.akd(p,q.d,q.e,q.f,new A.a_E(q.r,B.u5),q.w,q.x,q.z,q.Q,A.aB(t.FG),B.M1,null,A.aB(t.T)) +o.aW() +o.sbN(null) +s=p.r +s===$&&A.b() +r=o.geE() +s.a.P(0,r) +p=p.x +p===$&&A.b() +p.a.P(0,r) +return o}, +b4(a,b){var s=this +b.sk(0,s.d) +b.suv(s.e) +b.sp5(s.f) +b.sim(s.r) +b.ska(s.w) +b.sdT(s.x) +b.scF(s.z) +b.sqS(s.Q)}} +A.akd.prototype={ +sk(a,b){if(b===this.fZ)return +this.fZ=b +this.bX()}, +suv(a){if(a.l(0,this.dA))return +this.dA=a +this.aU()}, +sp5(a){if(a.l(0,this.em))return +this.em=a +this.aU()}, +sim(a){if(a.l(0,this.df.a))return +this.df=new A.a_E(a,B.u5) +this.aU()}, +ska(a){if(a.l(0,this.e5))return +this.e5=a +this.aU()}, +sdT(a){if(J.i(a,this.f7))return +this.f7=a}, +scF(a){if(this.k7===a)return +this.k7=a +this.aU()}, +sqS(a){if(a===this.pB)return +this.pB=a +this.aU()}, +l8(a){return!0}, +oQ(a,b){var s,r +if(t.pY.b(a)&&!0){s=this.ee +r=s.e +r===$&&A.b() +r.zi(a) +s=s.d +s===$&&A.b() +s.zi(a)}}, +hv(a){var s +this.jq(a) +a.stz(this.ee.gSh()) +a.ce(B.kY,!0) +a.ce(B.kW,!0) +s=this.fZ +a.ce(B.oC,!0) +a.ce(B.oA,s)}, +aD(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g=this,f=a.gcR(a),e=g.ee,d=e.r +d===$&&A.b() +s=d.gk(d) +e=e.x +e===$&&A.b() +r=e.gk(e) +switch(g.k7.a){case 0:q=1-s +break +case 1:q=s +break +default:q=null}e=$.as() +p=e.bn() +d=A.W(g.em,g.dA,s) +d.toString +p.sa5(0,d) +d=b.a+(g.gq(g).a-51)/2 +o=b.b +n=o+(g.gq(g).b-31)/2 +m=A.lh(new A.I(d,n,d+51,n+31),B.abX) +f.de(m,p) +if(g.pB){l=m.dZ(1.75) +k=e.bn() +k.sa5(0,g.e5) +k.scK(0,B.aj) +k.sfB(3.5) +f.de(l,k)}j=7*r +e=d+15.5 +d+=35.5 +n=A.ag(e-14,d-14-j,q) +n.toString +d=A.ag(e+14+j,d+14,q) +d.toString +i=o+g.gq(g).b/2 +h=new A.I(n,i-14,d,i+14) +d=g.EO +n=g.cx +n===$&&A.b() +d.sb3(0,a.aMZ(n,B.i,h,m,new A.b8S(g,h),d.a))}, +m(){this.EO.sb3(0,null) +this.jr()}} +A.b8S.prototype={ +$2(a,b){this.a.df.aD(a.gcR(a),this.b)}, +$S:15} +A.V5.prototype={ +cn(){this.d3() +this.cT() +this.es()}, +m(){var s=this,r=s.b_$ +if(r!=null)r.J(0,s.gej()) +s.b_$=null +s.aZ()}} +A.amO.prototype={ +aD(a,b){var s,r,q,p=$.as(),o=p.bn() +o.sa5(0,this.b) +s=A.oL(B.aas,6) +r=A.ym(B.aat,new A.l(7,b.b)) +q=p.cZ() +q.zh(s) +q.oy(r) +a.dV(q,o)}, +fw(a){return!this.b.l(0,a.b)}} +A.a_B.prototype={} +A.awZ.prototype={ +BZ(a){return new A.V(12,a+12-1.5)}, +Kh(a,b,c,d){var s,r,q,p=null,o=A.jv(p,p,p,new A.amO(A.iS(a).gil(),p),B.x) +switch(b.a){case 0:return A.a8G(o,new A.V(12,c+12-1.5)) +case 1:s=c+12-1.5 +r=A.a8G(o,new A.V(12,s)) +q=new A.bS(new Float64Array(16)) +q.fQ() +q.bj(0,6,s/2) +q.MZ(3.141592653589793) +q.bj(0,-6,-s/2) +return A.EW(p,r,q,!0) +case 2:return B.a_}}, +BY(a,b){switch(a.a){case 0:return new A.l(6,b+12-1.5) +case 1:return new A.l(6,b+12-1.5-12+1.5) +case 2:return new A.l(6,b+(b+12-1.5-b)/2)}}} +A.aeN.prototype={} +A.a_C.prototype={ +A(a){var s,r=t.l,q=A.aS(a,B.bJ,r).w.f,p=q.b+8,o=this.c,n=o.b,m=n>=p+8+45,l=26+q.a,k=A.aS(a,B.it,r).w.a.a-q.c-26,j=new A.l(A.S(o.a,l,k),n-8-p) +n=this.d +s=new A.l(A.S(n.a,l,k),n.b+8-p) +r=m?j:s +return new A.b8(new A.aK(8,p,8,8),new A.kV(new A.aaa(j,s,m),new A.Qp(r,this.e,m,A.bVU(),null),null),null)}} +A.aeP.prototype={ +aX(a){var s=new A.ake(this.e,this.f,A.ii(52,null),A.aB(t.xG),null,A.aB(t.T)) +s.aW() +s.sbN(null) +return s}, +b4(a,b){b.siY(this.e) +b.sVs(this.f)}} +A.ake.prototype={ +gib(){return!0}, +siY(a){if(a.l(0,this.C))return +this.C=a +this.a6()}, +sVs(a){if(this.a0===a)return +this.a0=a +this.a6()}, +cj(){var s,r,q=this +if(q.E$==null)return +s=t.k.a(A.H.prototype.ga4.call(q)) +r=q.E$ +r.toString +r.cX(q.aw.wZ(new A.aL(0,s.b,0,s.d)),!0) +s=q.E$.b +s.toString +t.q.a(s) +s.sc6(0,new A.l(0,q.a0?-7:0)) +s=q.E$ +s=s.gq(s) +r=q.E$ +q.id=new A.V(s.a,r.gq(r).b-7)}, +aD(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g,f=this,e=f.E$ +if(e==null)return +e=e.b +e.toString +s=t.q +s.a(e) +r=f.cu +q=f.cx +q===$&&A.b() +e=b.T(0,e.a) +p=f.E$ +p=p.gq(p) +o=f.E$.b +o.toString +s.a(o) +s=$.as() +n=s.cZ() +m=f.E$ +m=m.gq(m) +l=f.E$ +n.fT(A.lh(new A.I(0,7,0+m.a,7+(l.gq(l).b-14)),B.dU)) +k=f.jo(f.C) +o=o.a +l=f.E$ +l=l.gq(l) +m=f.E$ +j=m.gq(m).a/2+(k.a-(o.a+l.a/2)) +if(f.a0){o=f.E$ +i=o.gq(o).b-7}else i=7 +if(f.a0){o=f.E$ +h=o.gq(o).b}else h=0 +g=s.cZ() +g.fo(0,j,h) +g.d7(0,j-7,i) +g.d7(0,j+7,i) +g.ad(0) +r.sb3(0,a.aMY(q,e,new A.I(0,0,0+p.a,0+p.b),s.a7D(B.ab8,n,g),new A.b8Z(f),r.a))}, +m(){this.cu.sb3(0,null) +this.jr()}, +dY(a,b){var s,r,q=this.E$,p=q.b +p.toString +p=t.q.a(p).a +s=p.a +p=p.b+7 +q=q.gq(q) +r=this.E$ +if(!new A.I(s,p,s+q.a,p+(r.gq(r).b-14)).n(0,b))return!1 +return this.ai1(a,b)}} +A.b8Z.prototype={ +$2(a,b){var s=this.a.E$ +s.toString +return a.eg(s,b)}, +$S:15} +A.Qp.prototype={ +a8(){return new A.Qq(new A.bo(null,t.C),null,null,B.m)}, +aOH(a,b,c,d){return this.f.$4(a,b,c,d)}} +A.Qq.prototype={ +axd(a){var s=a.b +if(s!=null&&s!==0)if(s>0)this.a1I() +else this.a1G()}, +a1G(){var s=this,r=$.ar.al$.z.i(0,s.r) +r=r==null?null:r.ga9() +t.aA.a(r) +if(r instanceof A.zQ){r=r.Z +r===$&&A.b()}else r=!1 +if(r){r=s.d +r===$&&A.b() +r.d9(0) +r=s.d +r.cL() +r=r.eo$ +r.b=!0 +r.a.push(s.gJl()) +s.e=s.f+1}}, +a1I(){var s=this,r=$.ar.al$.z.i(0,s.r) +r=r==null?null:r.ga9() +t.aA.a(r) +if(r instanceof A.zQ){r=r.Y +r===$&&A.b()}else r=!1 +if(r){r=s.d +r===$&&A.b() +r.d9(0) +r=s.d +r.cL() +r=r.eo$ +r.b=!0 +r.a.push(s.gJl()) +s.e=s.f-1}}, +aBu(a){var s,r=this +if(a!==B.Q)return +r.a7(new A.b2o(r)) +s=r.d +s===$&&A.b() +s.bS(0) +r.d.e8(r.gJl())}, +aR(){this.b5() +this.d=A.bw(B.z,null,B.mx,0,null,1,1,this)}, +aY(a){var s,r=this +r.br(a) +if(r.a.d!==a.d){r.f=0 +r.e=null +s=r.d +s===$&&A.b() +s.bS(0) +r.d.e8(r.gJl())}}, +m(){var s=this.d +s===$&&A.b() +s.m() +this.akE()}, +a01(a){var s,r=null,q=this.c +q.toString +s=B.iZ.eN(q) +return A.tK(A.f1(A.jv(r,r,r,a?new A.ahl(s,!0,r):new A.akQ(s,!1,r),B.adN),r,0),!0,r)}, +A(a){var s,r,q,p,o,n=this,m=null,l=n.a,k=l.c,j=l.e,i=n.d +i===$&&A.b() +s=n.f +r=A.boA(n.a01(!0),n.gats()) +q=B.QS.eN(a) +p=A.aS(a,B.d7,t.l).w +o=A.boA(n.a01(!1),n.gat2()) +return l.aOH(a,k,j,new A.cS(i,!1,A.bnT(A.dM(m,new A.Qr(r,n.a.d,q,1/p.b,o,s,n.r),B.C,!1,m,m,m,m,n.gaxc(),m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,!1,B.ai),B.dt,B.mx),m))}, +$iaN:1} +A.b2o.prototype={ +$0(){var s=this.a,r=s.e +r.toString +s.f=r +s.e=null}, +$S:0} +A.ahl.prototype={} +A.akQ.prototype={} +A.aeG.prototype={ +aD(a,b){var s,r,q,p,o=b.b,n=this.c,m=n?1:-1,l=new A.l(o/4*m,0) +m=o/2 +s=new A.l(m,0).T(0,l) +r=new A.l(n?0:o,m).T(0,l) +q=new A.l(m,o).T(0,l) +p=$.as().bn() +p.sa5(0,this.b) +p.scK(0,B.aj) +p.sfB(2) +p.svS(B.oV) +p.sOa(B.Kp) +a.jF(s,r,p) +a.jF(r,q,p)}, +fw(a){return!a.b.l(0,this.b)||a.c!==this.c}} +A.Qr.prototype={ +aX(a){var s=new A.zQ(A.F(t.TC,t.x),this.w,this.e,this.f,0,null,null,A.aB(t.T)) +s.aW() +return s}, +b4(a,b){b.siD(0,this.w) +b.swS(this.e) +b.saHc(this.f)}, +bJ(a){var s=t.F +return new A.aeO(A.F(t.TC,s),A.dN(s),this,B.al)}} +A.aeO.prototype={ +ga9(){return t.l0.a(A.c0.prototype.ga9.call(this))}, +a5X(a,b){var s +switch(b.a){case 0:s=t.l0.a(A.c0.prototype.ga9.call(this)) +s.aS=s.a57(s.aS,a,B.pq) +break +case 1:s=t.l0.a(A.c0.prototype.ga9.call(this)) +s.b8=s.a57(s.b8,a,B.pr) +break}}, +oT(a,b){var s,r +if(b instanceof A.zB){this.a5X(t.x.a(a),b) +return}if(b instanceof A.tN){s=t.l0.a(A.c0.prototype.ga9.call(this)) +t.x.a(a) +r=b.a +r=r==null?null:r.ga9() +t.aA.a(r) +s.m6(a) +s.QY(a,r) +return}}, +oV(a,b,c){t.l0.a(A.c0.prototype.ga9.call(this)).FE(t.x.a(a),t.aA.a(c.a.ga9()))}, +q1(a,b){var s +if(b instanceof A.zB){this.a5X(null,b) +return}s=t.l0.a(A.c0.prototype.ga9.call(this)) +t.x.a(a) +s.RP(a) +s.uP(a)}, +ck(a){var s,r,q,p,o=this.p2 +o.gbw(o).af(0,a) +o=this.p1 +o===$&&A.b() +s=o.length +r=this.p3 +q=0 +for(;q0){q=k.b8.b +q.toString +m=t.yS +m.a(q) +l=k.aS.b +l.toString +m.a(l) +if(k.av!==s){q.a=new A.l(p.aF(),0) +q.e=!0 +s=p.aF() +q=k.b8 +p.b=s+q.gq(q).a}s=k.av +q=s>0 +if(q){l.a=B.i +l.e=!0}k.Z=s!==j.b +k.Y=q}else p.b=p.aF()-k.aG +k.id=r.a(A.H.prototype.ga4.call(k)).bI(new A.V(p.aF(),o.RK()))}, +aD(a,b){this.ck(new A.b8U(this,b,a))}, +fR(a){if(!(a.b instanceof A.jb))a.b=new A.jb(null,null,B.i)}, +dY(a,b){var s,r,q=this.dk$ +for(s=t.yS;q!=null;){r=q.b +r.toString +s.a(r) +if(!r.e){q=r.d0$ +continue}if(A.bkF(q,a,b))return!0 +q=r.d0$}if(A.bkF(this.aS,a,b))return!0 +if(A.bkF(this.b8,a,b))return!0 +return!1}, +aA(a){var s,r,q +this.akW(a) +for(s=this.B,s=s.gbw(s),r=A.k(s),r=r.h("@<1>").S(r.z[1]),s=new A.c2(J.ao(s.a),s.b,r.h("c2<1,2>")),r=r.z[1];s.u();){q=s.a;(q==null?r.a(q):q).aA(a)}}, +ap(a){var s,r,q +this.akX(0) +for(s=this.B,s=s.gbw(s),r=A.k(s),r=r.h("@<1>").S(r.z[1]),s=new A.c2(J.ao(s.a),s.b,r.h("c2<1,2>")),r=r.z[1];s.u();){q=s.a;(q==null?r.a(q):q).ap(0)}}, +jf(){this.ck(new A.b8X(this))}, +ck(a){var s=this.aS +if(s!=null)a.$1(s) +s=this.b8 +if(s!=null)a.$1(s) +this.Hk(a)}, +jl(a){this.ck(new A.b8Y(a))}} +A.b8V.prototype={ +$0(){return 0}, +$S:80} +A.b8W.prototype={ +$1(a){var s,r,q,p,o,n,m=this,l=m.a,k=++l.c +t.x.a(a) +s=a.b +s.toString +t.yS.a(s) +s.e=!1 +r=m.b +if(a===r.aS||a===r.b8||l.b>r.av)return +if(l.b===0)if(k===r.d_$+1)q=0 +else{k=r.b8 +q=k.gq(k).a}else q=m.c +k=l.b===0?t.k.a(A.H.prototype.ga4.call(r)).b:m.d.aF() +p=t.k +a.cX(A.t2(new A.V(k-q,p.a(A.H.prototype.ga4.call(r)).d)),!0) +k=m.e +k.b=a.gq(a).b>k.RK()?a.gq(a).b:k.RK() +if(l.a+q+a.gq(a).a>p.a(A.H.prototype.ga4.call(r)).b){++l.b +k=r.aS +l.a=k.gq(k).a+r.aG +k=r.aS +k=k.gq(k) +o=r.b8 +o=o.gq(o) +a.cX(A.t2(new A.V(m.d.aF()-(k.a+o.a),p.a(A.H.prototype.ga4.call(r)).d)),!0)}k=l.a +s.a=new A.l(k,0) +n=k+(a.gq(a).a+r.aG) +l.a=n +k=l.b +s.e=k===r.av +if(k===0){k=r.b8 +m.d.b=n+k.gq(k).a}if(l.b===r.av)m.f.b=l.a}, +$S:24} +A.b8U.prototype={ +$1(a){var s,r,q,p,o,n=this +t.x.a(a) +s=a.b +s.toString +t.yS.a(s) +if(s.e){r=s.a.T(0,n.b) +q=n.c +q.eg(a,r) +if(s.am$!=null||a===n.a.aS){s=q.gcR(q) +q=new A.l(a.gq(a).a,0).T(0,r) +p=new A.l(a.gq(a).a,a.gq(a).b).T(0,r) +o=$.as().bn() +o.sa5(0,n.a.ar) +s.jF(q,p,o)}}}, +$S:24} +A.b8T.prototype={ +$2(a,b){return this.c.dc(a,b)}, +$S:16} +A.b8X.prototype={ +$1(a){this.a.ra(t.x.a(a))}, +$S:24} +A.b8Y.prototype={ +$1(a){var s +t.x.a(a) +s=a.b +s.toString +if(t.yS.a(s).e)this.a.$1(a)}, +$S:24} +A.zB.prototype={ +K(){return"_CupertinoTextSelectionToolbarItemsSlot."+this.b}} +A.aiD.prototype={} +A.aiE.prototype={ +bJ(a){return A.q(A.cL(null))}} +A.V7.prototype={ +cn(){this.d3() +this.cT() +this.es()}, +m(){var s=this,r=s.b_$ +if(r!=null)r.J(0,s.gej()) +s.b_$=null +s.aZ()}} +A.Vs.prototype={ +aA(a){var s,r,q +this.eR(a) +s=this.a3$ +for(r=t.yS;s!=null;){s.aA(a) +q=s.b +q.toString +s=r.a(q).am$}}, +ap(a){var s,r,q +this.eS(0) +s=this.a3$ +for(r=t.yS;s!=null;){s.ap(0) +q=s.b +q.toString +s=r.a(q).am$}}} +A.aoZ.prototype={} +A.tj.prototype={ +a8(){return new A.Qo(B.m)}} +A.Qo.prototype={ +axz(a){this.a7(new A.b2m(this))}, +axB(a){var s +this.a7(new A.b2n(this)) +s=this.a.d +if(s!=null)s.$0()}, +axx(){this.a7(new A.b2l(this))}, +A(a){var s=this,r=null,q=s.aqQ(a),p=s.d?B.QL.eN(a):B.u,o=s.a.d,n=A.YM(B.X,r,q,p,B.u,44,o,B.S3,1) +if(o!=null)return A.dM(r,n,B.C,!1,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,s.gaxw(),s.gaxy(),s.gaxA(),r,!1,B.ai) +else return n}, +aqQ(a){var s,r=null,q=this.a,p=q.c +if(p!=null)return p +p=q.f +if(p==null){q=q.e +q.toString +q=A.boB(a,q)}else q=p +s=A.O(q,r,B.ac,r,r,B.aik.co(this.a.d!=null?B.iZ.eN(a):B.dv),r,r) +q=this.a.e +if(q==null)return s +switch(q.b.a){case 0:case 1:case 2:case 3:case 4:case 6:return s +case 5:q=B.iZ.eN(a) +p=$.as().bn() +p.svS(B.oV) +p.sOa(B.Kp) +p.sfB(1) +p.scK(0,B.aj) +return A.cZ(A.jv(r,r,r,new A.ahG(q,p,r),B.x),13,13)}}} +A.b2m.prototype={ +$0(){return this.a.d=!0}, +$S:0} +A.b2n.prototype={ +$0(){return this.a.d=!1}, +$S:0} +A.b2l.prototype={ +$0(){return this.a.d=!1}, +$S:0} +A.ahG.prototype={ +aD(a,b){var s,r,q,p,o,n=this.c +n.sa5(0,this.b) +a.eb(0) +s=b.a +r=b.b +a.bj(0,s/2,r/2) +s=-s/2 +r=-r/2 +q=$.as().cZ() +q.fo(0,s,r+3.5) +q.d7(0,s,r+1) +q.a6R(new A.l(s+1,r),B.fz) +q.d7(0,s+3.5,r) +s=new Float64Array(16) +p=new A.bS(s) +p.fQ() +p.MZ(1.5707963267948966) +for(o=0;o<4;++o){a.dV(q,n) +a.a_(0,s)}a.jF(B.aaQ,B.aaq,n) +a.jF(B.aaO,B.aap,n) +a.jF(B.aaP,B.aam,n) +a.dq(0)}, +fw(a){return!a.b.l(0,this.b)}} +A.wl.prototype={ +ghC(){var s=this.c,r=this.a.a +s=B.eZ.l(0,r)?B.KL:B.KL.co(r) +return s}, +gM8(){var s=this.f,r=this.a.a +s=B.eZ.l(0,r)?B.KK:B.KK.co(r) +return s}, +gabm(){var s=B.afY.co(this.b) +return s}, +eN(a){var s=this,r=s.a,q=r.a,p=q instanceof A.ek?q.eN(a):q,o=r.b +if(o instanceof A.ek)o=o.eN(a) +r=p.l(0,q)&&o.l(0,B.dv)?r:new A.TW(p,o) +return new A.wl(r,A.wk(s.b,a),A.A_(s.c,a),A.A_(s.d,a),A.A_(s.e,a),A.A_(s.f,a),A.A_(s.r,a),A.A_(s.w,a),A.A_(s.x,a),A.A_(s.y,a))}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r===b)return!0 +if(J.a1(b)!==A.o(r))return!1 +if(b instanceof A.wl)if(b.a.l(0,r.a))if(J.i(b.b,r.b))s=!0 +else s=!1 +else s=!1 +else s=!1 +return s}, +gv(a){var s=this +return A.X(s.a,s.b,s.c,s.d,s.e,s.f,s.r,s.w,s.x,s.y,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}} +A.TW.prototype={ +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.a1(b)!==A.o(s))return!1 +return b instanceof A.TW&&b.a.l(0,s.a)&&b.b.l(0,s.b)}, +gv(a){return A.X(this.a,this.b,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}} +A.aeQ.prototype={} +A.a_D.prototype={ +A(a){var s=null +return new A.Ro(this,A.x9(this.d,A.bow(this.c.gil(),s,s,s,s,s,s,s),s),s)}} +A.Ro.prototype={ +dr(a){return!this.f.c.l(0,a.f.c)}} +A.B8.prototype={ +gil(){var s=this.b +return s==null?this.w.b:s}, +gvn(){var s=this.c +return s==null?this.w.c:s}, +gq3(){var s=null,r=this.d +if(r==null){r=this.w.r +r=new A.b2x(r.a,r.b,B.aoU,this.gil(),s,s,s,s,s,s,s,s)}return r}, +gwA(){var s=this.e +return s==null?this.w.d:s}, +gvF(){var s=this.f +return s==null?this.w.e:s}, +gzn(){var s=this.r +return s==null?!1:s}, +eN(a){var s,r=this,q=new A.ax_(a),p=r.guA(),o=q.$1(r.b),n=q.$1(r.c),m=r.d +m=m==null?null:m.eN(a) +s=q.$1(r.e) +q=q.$1(r.f) +r.gzn() +return A.bEg(p,o,n,m,s,q,!1,r.w.aNV(a,r.d==null))}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r===b)return!0 +if(J.a1(b)!==A.o(r))return!1 +if(b instanceof A.B8)if(b.guA()==r.guA())if(b.gil().l(0,r.gil()))if(b.gvn().l(0,r.gvn()))if(b.gq3().l(0,r.gq3()))if(b.gwA().l(0,r.gwA()))if(b.gvF().l(0,r.gvF())){b.gzn() +r.gzn() +s=!0}else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +return s}, +gv(a){var s=this,r=s.guA(),q=s.gil(),p=s.gvn(),o=s.gq3(),n=s.gwA(),m=s.gvF() +s.gzn() +return A.X(r,q,p,o,n,m,!1,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}} +A.ax_.prototype={ +$1(a){return A.wk(a,this.a)}, +$S:251} +A.LL.prototype={ +eN(a){var s=this,r=new A.aKy(a),q=s.guA(),p=r.$1(s.gil()),o=r.$1(s.gvn()),n=s.gq3() +n=n==null?null:n.eN(a) +return new A.LL(q,p,o,n,r.$1(s.gwA()),r.$1(s.gvF()),s.gzn())}, +guA(){return this.a}, +gil(){return this.b}, +gvn(){return this.c}, +gq3(){return this.d}, +gwA(){return this.e}, +gvF(){return this.f}, +gzn(){return this.r}} +A.aKy.prototype={ +$1(a){return A.wk(a,this.a)}, +$S:251} +A.aeT.prototype={ +aNV(a,b){var s,r,q=this,p=new A.b2p(a),o=p.$1(q.b),n=p.$1(q.c),m=p.$1(q.d) +p=p.$1(q.e) +s=q.r +if(b){r=s.a +if(r instanceof A.ek)r=r.eN(a) +s=s.b +s=new A.aeR(r,s instanceof A.ek?s.eN(a):s)}return new A.aeT(q.a,o,n,m,p,!1,s)}} +A.b2p.prototype={ +$1(a){return a instanceof A.ek?a.eN(this.a):a}, +$S:111} +A.aeR.prototype={} +A.b2x.prototype={ +ghC(){return A.wl.prototype.ghC.call(this).co(this.z)}, +gM8(){return A.wl.prototype.gM8.call(this).co(this.z)}} +A.aeS.prototype={} +A.a_E.prototype={ +aD(a,b){var s,r,q,p,o,n,m=b.giN()/2,l=A.lh(b,new A.bq(m,m)) +for(m=this.b,s=m.length,r=0;r0?n*0.57735+0.5:0 +o.sM_(new A.xI(q.e,n)) +a.de(p,o)}m=l.dZ(0.5) +s=$.as() +p=s.bn() +p.sa5(0,B.qS) +a.de(m,p) +s=s.bn() +s.sa5(0,this.a) +a.de(l,s)}} +A.ET.prototype={ +aCx(a){if(this.gdT()!=null)this.a7(new A.aYk(this,a))}, +a5j(a){var s,r=this +if(r.gdT()==null)return +switch(r.gk(r)){case!1:r.gdT().$1(!0) +break +case!0:s=r.gdT() +s.toString +s.$1(r.gxM()&&null) +break +case null:case void 0:r.gdT().$1(!1) +break}r.c.ga9().Ce(B.oZ)}, +aCv(){return this.a5j(null)}, +a5l(a){if(this.x6$!=null)this.a7(new A.aYm(this))}, +aCy(){return this.a5l(null)}, +aCu(a){if(a!==this.UN$)this.a7(new A.aYh(this,a))}, +a7k(a,b,c,d,e){var s,r,q,p,o,n,m,l,k=this,j=null,i=k.gdT(),h=k.Ld$ +if(h===$){s=A.ap([B.ii,new A.cq(k.ga5i(),new A.bb(A.a([],t.h),t.d),t.wY)],t.n,t.od) +k.Ld$!==$&&A.am() +k.Ld$=s +h=s}r=k.gdT() +q=k.gdT()!=null?k.gaCw():j +p=k.gdT()!=null?k.ga5i():j +o=k.gdT()!=null?k.ga5k():j +n=k.gdT()!=null?k.ga5k():j +m=k.gdT() +l=A.jv(j,j,j,d,e) +return A.aCc(h,!1,A.dM(j,new A.bu(A.bI(j,j,j,j,j,j,j,j,j,j,m!=null,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j),!1,!1,!1,!1,l,j),B.C,r==null,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,p,n,q,o,j,!1,B.ai),i!=null,b,B.cw,c,k.gaCt(),j,j)}} +A.aYk.prototype={ +$0(){this.a.x6$=this.b.c}, +$S:0} +A.aYm.prototype={ +$0(){this.a.x6$=null}, +$S:0} +A.aYh.prototype={ +$0(){this.a.UN$=this.b}, +$S:0} +A.aak.prototype={ +suv(a){if(J.i(this.a,a))return +this.a=a +this.ag()}, +sAO(a){if(J.i(this.b,a))return +this.b=a +this.ag()}, +ska(a){if(a.l(0,this.c))return +this.c=a +this.ag()}, +sAc(a){if(J.i(a,this.d))return +this.d=a +this.ag()}, +sqS(a){if(a===this.e)return +this.e=a +this.ag()}, +sFi(a){if(a===this.f)return +this.f=a +this.ag()}, +fw(a){return!0}, +AM(a){return null}, +gCd(){return null}, +H7(a){return!1}, +j(a){return"#"+A.bt(this)}} +A.bef.prototype={ +$0(){return null}, +$S:554} +A.bd6.prototype={ +$0(){var s,r=globalThis.window.navigator.platform +if(r==null)r=null +s=r==null?null:r.toLowerCase() +if(s==null)s="" +if(B.c.c8(s,"mac"))return B.dj +if(B.c.c8(s,"win"))return B.fM +if(B.c.n(s,"iphone")||B.c.n(s,"ipad")||B.c.n(s,"ipod"))return B.bo +if(B.c.n(s,"android"))return B.bT +r=globalThis.window +if(r.matchMedia("only screen and (pointer: fine)").matches)return B.fL +return B.bT}, +$S:248} +A.va.prototype={ +Gk(a,b){var s=A.hu.prototype.gk.call(this,this) +s.toString +return J.bnC(s)}, +j(a){return this.Gk(a,B.aS)}} +A.BB.prototype={} +A.a0J.prototype={} +A.a0H.prototype={} +A.cc.prototype={ +aHA(){var s,r,q,p,o,n,m,l=this.a +if(t.vp.b(l)){s=l.gFD(l) +r=l.j(0) +if(typeof s=="string"&&s!==r){q=r.length +p=J.ak(s) +if(q>p.gt(s)){o=B.c.xk(r,s) +if(o===q-p.gt(s)&&o>2&&B.c.U(r,o-2,o)===": "){n=B.c.U(r,0,o-2) +m=B.c.eX(n," Failed assertion:") +if(m>=0)n=B.c.U(n,0,m)+"\n"+B.c.cv(n,m+1) +l=p.X3(s)+"\n"+n}else l=null}else l=null}else l=null +if(l==null)l=r}else if(!(typeof l=="string"))l=t.Lt.b(l)||t.VI.b(l)?J.cI(l):" "+A.h(l) +l=B.c.X3(l) +return l.length===0?" ":l}, +gagm(){return A.bEF(new A.aBZ(this).$0(),!0,B.e2)}, +f2(){return"Exception caught by "+this.c}, +j(a){A.bMs(null,B.Rb,this) +return""}} +A.aBZ.prototype={ +$0(){return J.bCN(this.a.aHA().split("\n")[0])}, +$S:14} +A.q4.prototype={ +gFD(a){return this.j(0)}, +f2(){return"FlutterError"}, +j(a){var s,r,q=new A.es(this.a,t.ow) +if(!q.gai(q)){s=q.gN(q) +r=J.bK(s) +s=A.hu.prototype.gk.call(r,s) +s.toString +s=J.bnC(s)}else s="FlutterError" +return s}, +$ivS:1} +A.aC_.prototype={ +$1(a){return A.bX(a)}, +$S:563} +A.aC0.prototype={ +$1(a){return a+1}, +$S:90} +A.aC1.prototype={ +$1(a){return a+1}, +$S:90} +A.beQ.prototype={ +$1(a){return B.c.n(a,"StackTrace.current")||B.c.n(a,"dart-sdk/lib/_internal")||B.c.n(a,"dart:sdk_internal")}, +$S:10} +A.aga.prototype={} +A.agc.prototype={} +A.agb.prototype={} +A.XB.prototype={ +alp(){var s,r,q,p,o,n,m,l=this +l.akp() +$.ar=l +s=t.F +r=A.dN(s) +q=A.a([],t.lX) +p=t.S +o=new A.agy(new A.BZ(A.l9(null,null,t.Su,p),t.op)) +n=A.aC8(!0,"Root Focus Scope",!1) +m=new A.JW(o,n,A.aY(t.mx),A.a([],t.OM),$.b5()) +n.w=m +n=$.ix.h_$ +n===$&&A.b() +n.a=o.ga9U() +$.iX.bQ$.b.p(0,o.ga9W(),null) +s=new A.au2(new A.agQ(r),q,m,A.F(t.yi,s)) +l.al$=s +s.a=l.garK() +s=$.bL() +s.fr=l.gaII() +s.fx=$.a9 +B.kz.tY(l.gat0()) +s=new A.a_V(A.F(p,t.qa),B.Fs) +B.Fs.tY(s.gaw8()) +l.cg$=s +l.akq() +s=t.N +A.bUo("Flutter.FrameworkInitialization",A.F(s,s),"Extension")}, +mS(){}, +xe(){}, +aLa(a){var s,r=A.bsC() +r.Hc(0,"Lock events");++this.c +s=a.$0() +s.fv(new A.atr(this,r)) +return s}, +X4(){}, +j(a){return""}} +A.atr.prototype={ +$0(){var s,r,q,p=this.a +if(--p.c<=0){this.b.a9t(0) +try{p.akh() +if(p.k2$.c!==0)p.a0z()}catch(q){s=A.ai(q) +r=A.aH(q) +p=A.bX("while handling pending events") +A.dV(new A.cc(s,r,"foundation",p,null,!1))}}}, +$S:5} +A.au.prototype={} +A.P3.prototype={} +A.im.prototype={ +P(a,b){var s,r,q,p,o=this +if(o.gfh(o)===o.gec().length){s=t.Nw +if(o.gfh(o)===0)o.sec(A.aT(1,null,!1,s)) +else{r=A.aT(o.gec().length*2,null,!1,s) +for(q=0;q0){r.gec()[s]=null +r.sou(r.gou()+1)}else r.IW(s) +break}}, +m(){this.sec($.b5()) +this.sfh(0,0)}, +ag(){var s,r,q,p,o,n,m,l,k,j,i,h,g,f=this +if(f.gfh(f)===0)return +f.slY(f.glY()+1) +p=f.gfh(f) +for(s=0;s0){l=f.gfh(f)-f.gou() +if(l*2<=f.gec().length){k=A.aT(l,null,!1,t.Nw) +for(j=0,s=0;s#"+A.bt(this)+"("+A.h(this.a)+")"}} +A.Jc.prototype={ +K(){return"DiagnosticLevel."+this.b}} +A.o8.prototype={ +K(){return"DiagnosticsTreeStyle."+this.b}} +A.b7g.prototype={} +A.fO.prototype={ +Gk(a,b){return this.e0(0)}, +j(a){return this.Gk(a,B.aS)}} +A.hu.prototype={ +gk(a){this.aw4() +return this.at}, +aw4(){return}} +A.wv.prototype={} +A.a04.prototype={} +A.aI.prototype={ +f2(){return"#"+A.bt(this)}, +Gk(a,b){var s=this.f2() +return s}, +j(a){return this.Gk(a,B.aS)}} +A.a03.prototype={ +f2(){return"#"+A.bt(this)}} +A.o7.prototype={ +j(a){return this.acW(B.e2).e0(0)}, +f2(){return"#"+A.bt(this)}, +aOo(a,b){return A.bid(a,b,this)}, +acW(a){return this.aOo(null,a)}} +A.a05.prototype={} +A.afc.prototype={} +A.iq.prototype={} +A.jG.prototype={} +A.kF.prototype={ +j(a){return"[#"+A.bt(this)+"]"}} +A.bP.prototype={ +l(a,b){if(b==null)return!1 +if(J.a1(b)!==A.o(this))return!1 +return A.k(this).h("bP").b(b)&&J.i(b.a,this.a)}, +gv(a){return A.X(A.o(this),this.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){var s=A.k(this),r=s.h("bP.T"),q=this.a,p=A.ck(r)===B.pc?"<'"+A.h(q)+"'>":"<"+A.h(q)+">" +if(A.o(this)===A.ck(s.h("bP")))return"["+p+"]" +return"["+A.ck(r).j(0)+" "+p+"]"}} +A.bkM.prototype={} +A.lM.prototype={} +A.KN.prototype={} +A.bb.prototype={ +gIK(){var s,r=this,q=r.c +if(q===$){s=A.dN(r.$ti.c) +r.c!==$&&A.am() +r.c=s +q=s}return q}, +F(a,b){this.b=!0 +this.gIK().ab(0) +return B.b.F(this.a,b)}, +ab(a){this.b=!1 +B.b.ab(this.a) +this.gIK().ab(0)}, +n(a,b){var s=this,r=s.a +if(r.length<3)return B.b.n(r,b) +if(s.b){s.gIK().I(0,r) +s.b=!1}return s.gIK().n(0,b)}, +gaj(a){var s=this.a +return new J.e6(s,s.length,A.ab(s).h("e6<1>"))}, +gai(a){return this.a.length===0}, +gdn(a){return this.a.length!==0}, +hl(a,b){var s=this.a,r=A.ab(s) +return b?A.a(s.slice(0),r):J.lK(s.slice(0),r.c)}, +fL(a){return this.hl(a,!0)}} +A.BZ.prototype={ +G(a,b){var s=this.a,r=s.i(0,b) +s.p(0,b,(r==null?0:r)+1)}, +F(a,b){var s=this.a,r=s.i(0,b) +if(r==null)return!1 +if(r===1)s.F(0,b) +else s.p(0,b,r-1) +return!0}, +n(a,b){return this.a.ao(0,b)}, +gaj(a){var s=this.a +return A.i1(s,s.r,A.k(s).c)}, +gai(a){return this.a.a===0}, +gdn(a){return this.a.a!==0}} +A.D8.prototype={ +Wx(a,b,c){var s=this.a,r=s==null?$.Wg():s,q=r.r7(0,0,b,A.cU(b),c) +if(q===s)return this +s=this.$ti +return new A.D8(q,s.h("@<1>").S(s.z[1]).h("D8<1,2>"))}, +i(a,b){var s=this.a +if(s==null)return null +return s.BU(0,0,b,J.T(b))}} +A.bcj.prototype={} +A.agl.prototype={ +r7(a,b,c,d,e){var s,r,q,p,o=B.f.z6(d,b)&31,n=this.a,m=n[o] +if(m==null)m=$.Wg() +s=m.r7(0,b+5,c,d,e) +if(s===m)n=this +else{r=n.length +q=A.aT(r,null,!1,t.X) +for(p=0;p>>0,a1=c.a,a2=(a1&a0-1)>>>0,a3=a2-(a2>>>1&1431655765) +a3=(a3&858993459)+(a3>>>2&858993459) +a3=a3+(a3>>>4)&252645135 +a3+=a3>>>8 +s=a3+(a3>>>16)&63 +if((a1&a0)>>>0!==0){a=c.b +a2=2*s +r=a[a2] +q=a2+1 +p=a[q] +if(r==null){o=J.bCv(p,a5+5,a6,a7,a8) +if(o===p)return c +a2=a.length +n=A.aT(a2,b,!1,t.X) +for(m=0;m>>1&1431655765) +a3=(a3&858993459)+(a3>>>2&858993459) +a3=a3+(a3>>>4)&252645135 +a3+=a3>>>8 +i=a3+(a3>>>16)&63 +if(i>=16){a1=c.auM(a5) +a1.a[a]=$.Wg().r7(0,a5+5,a6,a7,a8) +return a1}else{h=2*s +g=2*i +f=A.aT(g+2,b,!1,t.X) +for(a=c.b,e=0;e>>0,f)}}}, +BU(a,b,c,d){var s,r,q,p,o=1<<(B.f.z6(d,b)&31)>>>0,n=this.a +if((n&o)>>>0===0)return null +n=(n&o-1)>>>0 +s=n-(n>>>1&1431655765) +s=(s&858993459)+(s>>>2&858993459) +s=s+(s>>>4)&252645135 +s+=s>>>8 +n=this.b +r=2*(s+(s>>>16)&63) +q=n[r] +p=n[r+1] +if(q==null)return p.BU(0,b+5,c,d) +if(c===q)return p +return null}, +auM(a){var s,r,q,p,o,n,m,l=A.aT(32,null,!1,t.X) +for(s=this.a,r=a+5,q=this.b,p=0,o=0;o<32;++o)if((B.f.z6(s,o)&1)!==0){n=q[p] +m=p+1 +if(n==null)l[o]=q[m] +else l[o]=$.Wg().r7(0,r,n,J.T(n),q[m]) +p+=2}return new A.agl(l)}} +A.Rb.prototype={ +r7(a,b,c,d,e){var s,r,q,p,o,n,m,l,k,j=this,i=j.a +if(d===i){s=j.a1V(c) +if(s!==-1){i=j.b +r=s+1 +q=i[r] +if(q==null?e==null:q===e)i=j +else{q=i.length +p=A.aT(q,null,!1,t.X) +for(o=0;o>>0,k).r7(0,b,c,d,e)}, +BU(a,b,c,d){var s=this.a1V(c) +return s<0?null:this.b[s+1]}, +a1V(a){var s,r,q=this.b,p=q.length +for(s=J.iM(a),r=0;r=s.a.length)s.RV(q) +B.L.di(s.a,s.b,q,a) +s.b+=r}, +DB(a,b,c){var s=this,r=c==null?s.e.length:c,q=s.b+(r-b) +if(q>=s.a.length)s.RV(q) +B.L.di(s.a,s.b,q,a) +s.b=q}, +aAJ(a){return this.DB(a,0,null)}, +RV(a){var s=this.a,r=s.length,q=a==null?0:a,p=Math.max(q,r*2),o=new Uint8Array(p) +B.L.di(o,0,r,s) +this.a=o}, +azs(){return this.RV(null)}, +ql(a){var s=B.f.aH(this.b,a) +if(s!==0)this.DB($.bzG(),0,a-s)}, +uM(){var s,r=this +if(r.c)throw A.c(A.R("done() must not be called more than once on the same "+A.o(r).j(0)+".")) +s=A.ks(r.a.buffer,0,r.b) +r.a=new Uint8Array(0) +r.c=!0 +return s}} +A.ME.prototype={ +xZ(a){return this.a.getUint8(this.b++)}, +NC(a){var s=this.b,r=$.fH() +B.kw.Xv(this.a,s,r)}, +y_(a){var s=this.a,r=A.dF(s.buffer,s.byteOffset+this.b,a) +this.b+=a +return r}, +ND(a){var s +this.ql(8) +s=this.a +B.nW.a6V(s.buffer,s.byteOffset+this.b,a)}, +ql(a){var s=this.b,r=B.f.aH(s,a) +if(r!==0)this.b=s+(a-r)}} +A.ni.prototype={ +gv(a){var s=this +return A.X(s.b,s.d,s.f,s.r,s.w,s.x,s.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +l(a,b){var s=this +if(b==null)return!1 +if(J.a1(b)!==A.o(s))return!1 +return b instanceof A.ni&&b.b===s.b&&b.d===s.d&&b.f===s.f&&b.r===s.r&&b.w===s.w&&b.x===s.x&&b.a===s.a}, +j(a){var s=this +return"StackFrame(#"+s.b+", "+s.c+":"+s.d+"/"+s.e+":"+s.f+":"+s.r+", className: "+s.w+", method: "+s.x+")"}} +A.aVP.prototype={ +$1(a){return a.length!==0}, +$S:10} +A.ct.prototype={ +zx(a,b){return new A.a8($.a9,this.$ti.h("a8<1>"))}, +me(a){return this.zx(a,null)}, +fe(a,b,c){var s=a.$1(this.a) +if(c.h("U<0>").b(s))return s +return new A.ct(s,c.h("ct<0>"))}, +b9(a,b){return this.fe(a,null,b)}, +fv(a){var s,r,q,p,o,n=this +try{s=a.$0() +if(t.L0.b(s)){p=s.b9(new A.aWS(n),n.$ti.c) +return p}return n}catch(o){r=A.ai(o) +q=A.aH(o) +p=A.oi(r,q,n.$ti.c) +return p}}, +$iU:1} +A.aWS.prototype={ +$1(a){return this.a.a}, +$S(){return this.a.$ti.h("1(@)")}} +A.a1l.prototype={ +K(){return"GestureDisposition."+this.b}} +A.eS.prototype={} +A.BS.prototype={ +L(a){this.a.yY(this.b,this.c,a)}} +A.FY.prototype={ +j(a){var s=this,r=s.a +r=r.length===0?""+"":""+new A.ad(r,new A.b4w(s),A.ab(r).h("ad<1,f>")).cq(0,", ") +if(s.b)r+=" [open]" +if(s.c)r+=" [held]" +if(s.d)r+=" [hasPendingSweep]" +return r.charCodeAt(0)==0?r:r}} +A.b4w.prototype={ +$1(a){if(a===this.a.e)return a.j(0)+" (eager winner)" +return a.j(0)}, +$S:579} +A.aDj.prototype={ +DS(a,b,c){this.a.cJ(0,b,new A.aDl(this,b)).a.push(c) +return new A.BS(this,b,c)}, +TA(a,b){var s=this.a.i(0,b) +if(s==null)return +s.b=!1 +this.a5r(b,s)}, +Zu(a){var s,r=this.a,q=r.i(0,a) +if(q==null)return +if(q.c){q.d=!0 +return}r.F(0,a) +r=q.a +if(r.length!==0){B.b.gN(r).kM(a) +for(s=1;s").S(q.z[1]),r=new A.c2(J.ao(r.a),r.b,q.h("c2<1,2>")),p=n.r,q=q.z[1];r.u();){o=r.a;(o==null?q.a(o):o).aPC(0,p)}s.ab(0) +n.c=B.F +s=n.y +if(s!=null)s.aQ(0)}} +A.BT.prototype={ +atc(a){var s,r,q,p,o=this +try{o.cb$.I(0,A.bIx(a.a,o.gap1())) +if(o.c<=0)o.Q7()}catch(q){s=A.ai(q) +r=A.aH(q) +p=A.bX("while handling a pointer data packet") +A.dV(new A.cc(s,r,"gestures library",p,null,!1))}}, +ap2(a){var s=$.bL().d.i(0,a) +if(s==null)s=null +else{s=s.x +if(s==null){s=self.window.devicePixelRatio +if(s===0)s=1}}return s}, +aF2(a){var s=this.cb$ +if(s.b===s.c&&this.c<=0)A.h_(this.gaqv()) +s.K_(A.brh(0,0,0,0,0,B.b8,!1,0,a,B.i,1,1,0,0,0,0,0,0,B.F,0))}, +Q7(){for(var s=this.cb$;!s.gai(s);)this.V5(s.Bo())}, +V5(a){this.ga3C().h7(0) +this.a1H(a)}, +a1H(a){var s,r,q,p,o=this,n=!t.pY.b(a) +if(!n||t.ks.b(a)||t.XA.b(a)||t.w5.b(a)){s=A.aEL() +r=a.gcQ(a) +q=a.gBP() +p=o.b6$ +p===$&&A.b() +p.e.dc(s,r) +o.On(s,r,q) +if(!n||t.w5.b(a))o.Z$.p(0,a.gcz(),s) +n=s}else if(t.oN.b(a)||t.Ko.b(a)||t.WQ.b(a)){s=o.Z$.F(0,a.gcz()) +n=s}else n=a.gKX()||t.DB.b(a)?o.Z$.i(0,a.gcz()):null +if(n!=null||t.ge.b(a)||t.PB.b(a)){r=o.b8$ +r.toString +r.aP5(a,t.n2.b(a)?null:n) +o.ah_(0,a,n)}}, +aJG(a,b,c){a.G(0,new A.l4(this,t.AL))}, +aHa(a,b,c){var s,r,q,p,o,n,m,l,k,j,i="gesture library" +if(c==null){try{this.bQ$.acP(b)}catch(p){s=A.ai(p) +r=A.aH(p) +A.dV(A.bG2(A.bX("while dispatching a non-hit-tested pointer event"),b,s,null,new A.aDo(b),i,r))}return}for(n=c.a,m=n.length,l=0;l0.4){r.dy=B.ln +r.L(B.cz)}else if(a.gzX().gAb()>A.vC(a.gdS(a),r.b))r.L(B.aM) +if(s>0.4&&r.dy===B.Lc){r.dy=B.ln +if(r.at!=null)r.e1("onStart",new A.aCr(r,s))}}r.He(a)}, +kM(a){var s=this,r=s.dy +if(r===B.lm)r=s.dy=B.Lc +if(s.at!=null&&r===B.ln)s.e1("onStart",new A.aCp(s))}, +A2(a){var s=this,r=s.dy,q=r===B.ln||r===B.anV +if(r===B.lm){s.L(B.aM) +return}if(q&&s.ch!=null)if(s.ch!=null)s.e1("onEnd",new A.aCq(s)) +s.dy=B.pu}, +jh(a){this.oi(a) +this.A2(a)}} +A.aCr.prototype={ +$0(){var s=this.a,r=s.at +r.toString +s=s.db +s===$&&A.b() +return r.$1(new A.wZ(s.b))}, +$S:0} +A.aCp.prototype={ +$0(){var s=this.a,r=s.at +r.toString +s.dx===$&&A.b() +s=s.db +s===$&&A.b() +return r.$1(new A.wZ(s.b))}, +$S:0} +A.aCq.prototype={ +$0(){var s=this.a,r=s.ch +r.toString +s=s.db +s===$&&A.b() +return r.$1(new A.wZ(s.b))}, +$S:0} +A.a02.prototype={ +gv(a){return A.X(this.a,23,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +l(a,b){if(b==null)return!1 +if(J.a1(b)!==A.o(this))return!1 +return b instanceof A.a02&&b.a==this.a}, +j(a){return"DeviceGestureSettings(touchSlop: "+A.h(this.a)+")"}} +A.l4.prototype={ +j(a){return"#"+A.bt(this)+"("+this.a.j(0)+")"}} +A.H1.prototype={} +A.RS.prototype={ +f_(a,b){return this.a.M6(b)}} +A.Gm.prototype={ +f_(a,b){var s,r,q,p,o=new Float64Array(16),n=new A.bS(o) +n.cd(b) +s=this.a +r=s.a +q=s.b +s=o[0] +p=o[3] +o[0]=s+r*p +o[1]=o[1]+q*p +o[2]=o[2]+0*p +o[3]=p +p=o[4] +s=o[7] +o[4]=p+r*s +o[5]=o[5]+q*s +o[6]=o[6]+0*s +o[7]=s +s=o[8] +p=o[11] +o[8]=s+r*p +o[9]=o[9]+q*p +o[10]=o[10]+0*p +o[11]=p +p=o[12] +s=o[15] +o[12]=p+r*s +o[13]=o[13]+q*s +o[14]=o[14]+0*s +o[15]=s +return n}} +A.qc.prototype={ +ars(){var s,r,q,p,o=this.c +if(o.length===0)return +s=this.b +r=B.b.ga1(s) +for(q=o.length,p=0;p":B.b.cq(s,", "))+")"}} +A.CB.prototype={} +A.KY.prototype={} +A.CA.prototype={} +A.kp.prototype={ +mW(a){var s,r=this +switch(a.gfV(a)){case 1:if(r.p1==null&&r.p3==null&&r.p2==null&&r.p4==null&&r.RG==null&&r.R8==null)return!1 +break +case 2:s=!0 +if(s)return!1 +break +case 4:s=!0 +if(s)return!1 +break +default:return!1}return r.ym(a)}, +Ud(){var s,r=this +r.L(B.cz) +r.k2=!0 +s=r.CW +s.toString +r.Z6(s) +r.anK()}, +a9X(a){var s,r=this +if(!a.gvW()){if(t.pY.b(a)){s=new A.k_(a.gdS(a),A.aT(20,null,!1,t.av)) +r.bO=s +s.rS(a.gjR(a),a.geD())}if(t.n2.b(a)){s=r.bO +s.toString +s.rS(a.gjR(a),a.geD())}}if(t.oN.b(a)){if(r.k2)r.anI(a) +else r.L(B.aM) +r.RU()}else if(t.Ko.b(a)){r.a_r() +r.RU()}else if(t.pY.b(a)){r.k3=new A.j6(a.geD(),a.gcQ(a)) +r.k4=a.gfV(a) +r.anH(a)}else if(t.n2.b(a))if(a.gfV(a)!==r.k4&&!r.k2){r.L(B.aM) +s=r.CW +s.toString +r.oi(s)}else if(r.k2)r.anJ(a)}, +anH(a){this.k3.toString +this.e.i(0,a.gcz()).toString +switch(this.k4){case 1:break +case 2:break +case 4:break}}, +a_r(){var s,r=this +if(r.ch===B.je)switch(r.k4){case 1:s=r.p1 +if(s!=null)r.e1("onLongPressCancel",s) +break +case 2:break +case 4:break}}, +anK(){var s,r,q=this +switch(q.k4){case 1:if(q.p3!=null){s=q.k3 +r=s.b +s=s.a +q.e1("onLongPressStart",new A.aHl(q,new A.CB(r,s)))}s=q.p2 +if(s!=null)q.e1("onLongPress",s) +break +case 2:break +case 4:break}}, +anJ(a){var s=this,r=a.gcQ(a),q=a.geD(),p=a.gcQ(a).a2(0,s.k3.b) +a.geD().a2(0,s.k3.a) +switch(s.k4){case 1:if(s.p4!=null)s.e1("onLongPressMoveUpdate",new A.aHk(s,new A.KY(r,q,p))) +break +case 2:break +case 4:break}}, +anI(a){var s,r=this,q=r.bO.C9(),p=q==null?B.dk:new A.kG(q.a) +a.gcQ(a) +s=a.geD() +r.bO=null +switch(r.k4){case 1:if(r.RG!=null)r.e1("onLongPressEnd",new A.aHj(r,new A.CA(s,p))) +s=r.R8 +if(s!=null)r.e1("onLongPressUp",s) +break +case 2:break +case 4:break}}, +RU(){var s=this +s.k2=!1 +s.bO=s.k4=s.k3=null}, +L(a){var s=this +if(a===B.aM)if(s.k2)s.RU() +else s.a_r() +s.Z0(a)}, +kM(a){}} +A.aHl.prototype={ +$0(){return this.a.p3.$1(this.b)}, +$S:0} +A.aHk.prototype={ +$0(){return this.a.p4.$1(this.b)}, +$S:0} +A.aHj.prototype={ +$0(){return this.a.RG.$1(this.b)}, +$S:0} +A.rx.prototype={ +i(a,b){return this.c[b+this.a]}, +p(a,b,c){this.c[b+this.a]=c}, +au(a,b){var s,r,q,p,o,n,m +for(s=this.b,r=this.c,q=this.a,p=b.c,o=b.a,n=0,m=0;m"),q=A.Ce(A.aa(new A.ad(s,new A.aLW(),r),!0,r.h("ax.E")),"[","]") +r=this.b +r===$&&A.b() +return"PolynomialFit("+q+", confidence: "+B.e.az(r,3)+")"}} +A.aLW.prototype={ +$1(a){return B.e.aOx(a,3)}, +$S:68} +A.a2A.prototype={ +Yw(a6){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=this.a,a5=a4.length +if(a6>a5)return null +s=a6+1 +r=new A.aLV(new Float64Array(s)) +q=s*a5 +p=new Float64Array(q) +for(o=this.c,n=0*a5,m=0;m=0;--c){p[c]=new A.rx(c*a5,a5,q).au(0,d) +for(i=c*s,k=l;k>c;--k)p[c]=p[c]-n[i+k]*p[k] +p[c]=p[c]/n[i+c]}for(b=0,m=0;mn&&Math.abs(a.d.b)>s))return null +q=o.dx +if(q==null)q=8000 +p=A.S(r,-q,q) +return new A.jx(new A.kG(new A.l(0,p)),p)}, +QQ(a,b){var s=this.k3 +s===$&&A.b() +return Math.abs(s)>A.vC(a,this.b)}, +D0(a){return new A.l(0,a.b)}, +D2(a){return a.b}} +A.mO.prototype={ +Pw(a,b){var s,r,q,p,o=this,n=o.db +if(n==null)n=50 +s=o.cy +if(s==null)s=A.vC(b,o.b) +r=a.a.a +if(!(Math.abs(r)>n&&Math.abs(a.d.a)>s))return null +q=o.dx +if(q==null)q=8000 +p=A.S(r,-q,q) +return new A.jx(new A.kG(new A.l(p,0)),p)}, +QQ(a,b){var s=this.k3 +s===$&&A.b() +return Math.abs(s)>A.vC(a,this.b)}, +D0(a){return new A.l(a.a,0)}, +D2(a){return a.a}} +A.n1.prototype={ +Pw(a,b){var s,r,q,p,o=this,n=o.db +if(n==null)n=50 +s=o.cy +if(s==null)s=A.vC(b,o.b) +r=a.a +if(!(r.gAb()>n*n&&a.d.gAb()>s*s))return null +q=o.db +if(q==null)q=50 +p=o.dx +if(p==null)p=8000 +return new A.jx(new A.kG(r).aFi(q,p),null)}, +QQ(a,b){var s=this.k3 +s===$&&A.b() +return Math.abs(s)>A.beK(a,this.b)}, +D0(a){return a}, +D2(a){return null}} +A.aeA.prototype={ +axD(){this.a=!0}} +A.GX.prototype={ +oi(a){if(this.r){this.r=!1 +$.iX.bQ$.aco(this.b,a)}}, +aaW(a,b){return a.gcQ(a).a2(0,this.d).ge3()<=b}} +A.mL.prototype={ +mW(a){var s,r=this +if(r.y==null)if(r.r==null&&!0)return!1 +s=r.ym(a) +if(!s)r.we() +return s}, +kN(a){var s=this,r=s.y +if(r!=null)if(!r.aaW(a,100))return +else{r=s.y +if(!r.f.a||a.gfV(a)!==r.e){s.we() +return s.a5p(a)}}s.a5p(a)}, +a5p(a){var s,r,q,p,o,n,m=this +m.a4J() +s=$.iX.bO$.DS(0,a.gcz(),m) +r=a.gcz() +q=a.gcQ(a) +p=a.gfV(a) +o=new A.aeA() +A.d2(B.RJ,o.gaxC()) +n=new A.GX(r,s,q,p,o) +m.z.p(0,a.gcz(),n) +o=a.gda(a) +if(!n.r){n.r=!0 +$.iX.bQ$.a6F(r,m.gIJ(),o)}}, +aws(a){var s,r=this,q=r.z,p=q.i(0,a.gcz()) +p.toString +if(t.oN.b(a)){s=r.y +if(s==null){if(r.x==null)r.x=A.d2(B.bt,r.gawt()) +s=p.b +$.iX.bO$.aJI(s) +p.oi(r.gIJ()) +q.F(0,s) +r.a_E() +r.y=p}else{s=s.c +s.a.yY(s.b,s.c,B.cz) +s=p.c +s.a.yY(s.b,s.c,B.cz) +p.oi(r.gIJ()) +q.F(0,p.b) +q=r.r +if(q!=null)r.e1("onDoubleTap",q) +r.we()}}else if(t.n2.b(a)){if(!p.aaW(a,18))r.Du(p)}else if(t.Ko.b(a))r.Du(p)}, +kM(a){}, +jh(a){var s,r=this,q=r.z.i(0,a) +if(q==null){s=r.y +s=s!=null&&s.b===a}else s=!1 +if(s)q=r.y +if(q!=null)r.Du(q)}, +Du(a){var s,r=this,q=r.z +q.F(0,a.b) +s=a.c +s.a.yY(s.b,s.c,B.aM) +a.oi(r.gIJ()) +s=r.y +if(s!=null)if(a===s)r.we() +else{r.a_i() +if(q.a===0)r.we()}}, +m(){this.we() +this.YQ()}, +we(){var s,r=this +r.a4J() +if(r.y!=null){if(r.z.a!==0)r.a_i() +s=r.y +s.toString +r.y=null +r.Du(s) +$.iX.bO$.aNt(0,s.b)}r.a_E()}, +a_E(){var s=this.z +s=s.gbw(s) +B.b.af(A.aa(s,!0,A.k(s).h("z.E")),this.gaz9())}, +a4J(){var s=this.x +if(s!=null){s.aQ(0) +this.x=null}}, +a_i(){}} +A.aLQ.prototype={ +a6F(a,b,c){J.ie(this.a.cJ(0,a,new A.aLS()),b,c)}, +aco(a,b){var s,r=this.a,q=r.i(0,a) +q.toString +s=J.cn(q) +s.F(q,b) +if(s.gai(q))r.F(0,a)}, +ap9(a,b,c){var s,r,q,p +try{b.$1(a.cW(c))}catch(q){s=A.ai(q) +r=A.aH(q) +p=A.bX("while routing a pointer event") +A.dV(new A.cc(s,r,"gesture library",p,null,!1))}}, +acP(a){var s=this,r=s.a.i(0,a.gcz()),q=s.b,p=t.Ld,o=t.iD,n=A.oo(q,p,o) +if(r!=null)s.a0f(a,r,A.oo(r,p,o)) +s.a0f(a,q,n)}, +a0f(a,b,c){c.af(0,new A.aLR(this,b,a))}} +A.aLS.prototype={ +$0(){return A.F(t.Ld,t.iD)}, +$S:624} +A.aLR.prototype={ +$2(a,b){if(J.jn(this.b,a))this.a.ap9(this.c,a,b)}, +$S:625} +A.aLT.prototype={ +acg(a,b,c){if(this.a!=null)return +this.b=b +this.a=c}, +L(a){var s,r,q,p,o=this,n=o.a +if(n==null)return +try{q=o.b +q.toString +n.$1(q)}catch(p){s=A.ai(p) +r=A.aH(p) +n=A.bX("while resolving a PointerSignalEvent") +A.dV(new A.cc(s,r,"gesture library",n,null,!1))}o.b=o.a=null}} +A.a0l.prototype={ +K(){return"DragStartBehavior."+this.b}} +A.eK.prototype={ +JX(a){}, +zi(a){var s=this +s.e.p(0,a.gcz(),a.gdS(a)) +if(s.mW(a))s.kN(a) +else s.AG(a)}, +kN(a){}, +AG(a){}, +mW(a){var s=this.c +return(s==null||s.n(0,a.gdS(a)))&&this.d.$1(a.gfV(a))}, +aaO(a){var s=this.c +return s==null||s.n(0,a.gdS(a))}, +m(){}, +aaH(a,b,c){var s,r,q,p,o=null +try{o=b.$0()}catch(q){s=A.ai(q) +r=A.aH(q) +p=A.bX("while handling a gesture") +A.dV(new A.cc(s,r,"gesture",p,null,!1))}return o}, +e1(a,b){return this.aaH(a,b,null,t.z)}, +aKh(a,b,c){return this.aaH(a,b,c,t.z)}} +A.LT.prototype={ +kN(a){this.Cq(a.gcz(),a.gda(a))}, +AG(a){this.L(B.aM)}, +kM(a){}, +jh(a){}, +L(a){var s,r=this.f,q=A.aa(r.gbw(r),!0,t.SP) +r.ab(0) +for(r=q.length,s=0;s")),r=r.c;q.u();){p=q.d +if(p==null)p=r.a(p) +o=$.iX.bQ$ +n=k.gv6() +o=o.a +m=o.i(0,p) +m.toString +l=J.cn(m) +l.F(m,n) +if(l.gai(m))o.F(0,p)}s.ab(0) +k.YQ()}, +ame(a){var s=this.w +if(s!=null)return s.DS(0,a,this) +return $.iX.bO$.DS(0,a,this)}, +Cq(a,b){var s=this +$.iX.bQ$.a6F(a,s.gv6(),b) +s.r.G(0,a) +s.f.p(0,a,s.ame(a))}, +oi(a){var s=this.r +if(s.n(0,a)){$.iX.bQ$.aco(a,this.gv6()) +s.F(0,a) +if(s.a===0)this.A2(a)}}, +He(a){if(t.oN.b(a)||t.Ko.b(a)||t.WQ.b(a))this.oi(a.gcz())}} +A.K8.prototype={ +K(){return"GestureRecognizerState."+this.b}} +A.Di.prototype={ +kN(a){var s=this +s.Ct(a) +if(s.ch===B.dy){s.ch=B.je +s.CW=a.gcz() +s.cx=new A.j6(a.geD(),a.gcQ(a)) +s.db=A.d2(s.at,new A.aM5(s,a))}}, +AG(a){if(!this.cy)this.Z_(a)}, +kb(a){var s,r,q,p=this +if(p.ch===B.je&&a.gcz()===p.CW){if(!p.cy)s=p.a1_(a)>18 +else s=!1 +if(p.cy){r=p.ay +q=r!=null&&p.a1_(a)>r}else q=!1 +if(t.n2.b(a))r=s||q +else r=!1 +if(r){p.L(B.aM) +r=p.CW +r.toString +p.oi(r)}else p.a9X(a)}p.He(a)}, +Ud(){}, +kM(a){if(a===this.CW){this.rR() +this.cy=!0}}, +jh(a){var s=this +if(a===s.CW&&s.ch===B.je){s.rR() +s.ch=B.SQ}}, +A2(a){var s=this +s.rR() +s.ch=B.dy +s.cx=null +s.cy=!1}, +m(){this.rR() +this.pi()}, +rR(){var s=this.db +if(s!=null){s.aQ(0) +this.db=null}}, +a1_(a){return a.gcQ(a).a2(0,this.cx.b).ge3()}} +A.aM5.prototype={ +$0(){this.a.Ud() +return null}, +$S:0} +A.j6.prototype={ +T(a,b){return new A.j6(this.a.T(0,b.a),this.b.T(0,b.b))}, +a2(a,b){return new A.j6(this.a.a2(0,b.a),this.b.a2(0,b.b))}, +j(a){return"OffsetPair(local: "+this.a.j(0)+", global: "+this.b.j(0)+")"}} +A.ago.prototype={} +A.GE.prototype={ +K(){return"_ScaleState."+this.b}} +A.zN.prototype={ +gaI3(){return this.b.T(0,this.c)}, +glG(a){return this.d}, +j(a){var s=this +return"_PointerPanZoomData(parent: "+s.a.j(0)+", _position: "+s.b.j(0)+", _pan: "+s.c.j(0)+", _scale: "+A.h(s.d)+", _rotation: "+s.e+")"}} +A.Nc.prototype={ +j(a){return"ScaleStartDetails(focalPoint: "+this.a.j(0)+", localFocalPoint: "+this.b.j(0)+", pointersCount: "+this.c+")"}} +A.Nd.prototype={ +j(a){var s=this +return"ScaleUpdateDetails(focalPoint: "+s.b.j(0)+", localFocalPoint: "+s.c.j(0)+", scale: "+A.h(s.d)+", horizontalScale: "+A.h(s.e)+", verticalScale: "+A.h(s.f)+", rotation: "+A.h(s.r)+", pointerCount: "+s.w+", focalPointDelta: "+s.a.j(0)+")"}} +A.DR.prototype={ +j(a){return"ScaleEndDetails(velocity: "+this.a.j(0)+", scaleVelocity: "+A.h(this.b)+", pointerCount: "+this.c+")"}} +A.ahy.prototype={} +A.nb.prototype={ +gDo(){var s,r=this.fr +r===$&&A.b() +if(r>0){s=this.fx +s===$&&A.b() +r=s/r}else r=1 +return r}, +gz1(){var s,r,q,p=this.gDo() +for(s=this.R8,s=s.gbw(s),r=A.k(s),r=r.h("@<1>").S(r.z[1]),s=new A.c2(J.ao(s.a),s.b,r.h("c2<1,2>")),r=r.z[1];s.u();){q=s.a +if(q==null)q=r.a(q) +p*=q.glG(q)/this.RG}return p}, +gauF(){var s,r,q,p=this,o=p.fy +o===$&&A.b() +if(o>0){s=p.go +s===$&&A.b() +r=s/o}else r=1 +for(o=p.R8,o=o.gbw(o),s=A.k(o),s=s.h("@<1>").S(s.z[1]),o=new A.c2(J.ao(o.a),o.b,s.h("c2<1,2>")),s=s.z[1];o.u();){q=o.a +if(q==null)q=s.a(q) +r*=q.glG(q)/p.RG}return r}, +gaDF(){var s,r,q,p=this,o=p.id +o===$&&A.b() +if(o>0){s=p.k1 +s===$&&A.b() +r=s/o}else r=1 +for(o=p.R8,o=o.gbw(o),s=A.k(o),s=s.h("@<1>").S(s.z[1]),o=new A.c2(J.ao(o.a),o.b,s.h("c2<1,2>")),s=s.z[1];o.u();){q=o.a +if(q==null)q=s.a(q) +r*=q.glG(q)/p.RG}return r}, +aoo(){var s,r,q,p,o,n=this,m=n.k3 +if(m!=null&&n.k4!=null){s=m.a +m=m.c +r=n.k4 +q=r.a +r=r.c +p=Math.atan2(s.b-m.b,s.a-m.a) +o=Math.atan2(q.b-r.b,q.a-r.a)-p}else o=0 +for(m=n.R8,m=m.gbw(m),s=A.k(m),s=s.h("@<1>").S(s.z[1]),m=new A.c2(J.ao(m.a),m.b,s.h("c2<1,2>")),s=s.z[1];m.u();){r=m.a +o+=(r==null?s.a(r):r).e}return o-n.rx}, +kN(a){var s=this +s.Ct(a) +s.p2.p(0,a.gcz(),new A.k_(a.gdS(a),A.aT(20,null,!1,t.av))) +if(s.CW===B.iv){s.CW=B.iw +s.k1=s.id=s.go=s.fy=s.fx=s.fr=0}}, +aaO(a){return!0}, +JX(a){var s=this +s.YP(a) +s.Cq(a.gcz(),a.gda(a)) +s.p2.p(0,a.gcz(),new A.k_(a.gdS(a),A.aT(20,null,!1,t.av))) +if(s.CW===B.iv){s.CW=B.iw +s.RG=1 +s.rx=0}}, +kb(a){var s,r,q,p,o,n,m=this +if(t.n2.b(a)){s=m.p2.i(0,a.gcz()) +s.toString +if(!a.gvW())s.rS(a.gjR(a),a.gcQ(a)) +m.ok.p(0,a.gcz(),a.gcQ(a)) +m.cx=a.gda(a) +r=!1 +q=!0}else if(t.pY.b(a)){m.ok.p(0,a.gcz(),a.gcQ(a)) +m.p1.push(a.gcz()) +m.cx=a.gda(a) +r=!0 +q=!0}else if(t.oN.b(a)||t.Ko.b(a)){m.ok.F(0,a.gcz()) +B.b.F(m.p1,a.gcz()) +m.cx=a.gda(a) +r=!0 +q=!1}else if(t.w5.b(a)){m.R8.p(0,a.gcz(),new A.zN(m,a.gcQ(a),B.i,1,0)) +m.cx=a.gda(a) +r=!0 +q=!0}else if(t.DB.b(a)){if(!a.gvW()&&!0){s=m.p2.i(0,a.gcz()) +s.toString +s.rS(a.gjR(a),a.gFQ(a))}m.R8.p(0,a.gcz(),new A.zN(m,a.gcQ(a),a.gFQ(a),a.glG(a),a.gacO())) +m.cx=a.gda(a) +r=!1 +q=!0}else{if(t.WQ.b(a)){m.R8.F(0,a.gcz()) +r=!0}else r=!1 +q=!1}s=m.ok +if(s.a<2)m.k3=m.k4 +else{p=m.k3 +if(p!=null){o=m.p1 +p=p.b===o[0]&&p.d===o[1]}else p=!1 +o=m.p1 +if(p){p=o[0] +n=s.i(0,p) +n.toString +o=o[1] +s=s.i(0,o) +s.toString +m.k4=new A.ahy(n,p,s,o)}else{p=o[0] +n=s.i(0,p) +n.toString +o=o[1] +s=s.i(0,o) +s.toString +m.k4=m.k3=new A.ahy(n,p,s,o)}}m.aCX(0) +if(!r||m.az3(a.gcz()))m.aml(q,a) +m.He(a)}, +aCX(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=this,d=e.dy +for(s=e.ok,r=A.k(s).c,q=A.i1(s,s.r,r),p=B.i;q.u();){o=s.i(0,q.d) +p=new A.l(p.a+o.a,p.b+o.b)}for(q=e.R8,o=q.gbw(q),n=A.k(o),n=n.h("@<1>").S(n.z[1]),o=new A.c2(J.ao(o.a),o.b,n.h("c2<1,2>")),n=n.z[1];o.u();){m=o.a +m=(m==null?n.a(m):m).gaI3() +p=new A.l(p.a+m.a,p.b+m.b)}q=q.a+e.p1.length +q=q>0?p.i1(0,q):B.i +e.dy=q +o=e.cx +if(d==null){e.k2=A.Mk(o,q) +e.p4=B.i}else{n=e.k2 +n===$&&A.b() +q=A.Mk(o,q) +e.k2=q +e.p4=q.a2(0,n)}l=s.a +for(q=A.i1(s,s.r,r),k=B.i;q.u();){o=s.i(0,q.d) +k=new A.l(k.a+o.a,k.b+o.b)}q=l>0 +if(q)k=k.i1(0,l) +for(r=A.i1(s,s.r,r),o=k.a,n=k.b,j=0,i=0,h=0;r.u();){m=r.d +g=s.i(0,m) +f=o-g.a +g=n-g.b +j+=Math.sqrt(f*f+g*g) +i+=Math.abs(o-s.i(0,m).a) +h+=Math.abs(n-s.i(0,m).b)}e.fx=q?j/l:0 +e.go=q?i/l:0 +e.k1=q?h/l:0}, +az3(a){var s,r=this,q={},p=r.dy +p.toString +r.dx=p +p=r.fx +p===$&&A.b() +r.fr=p +r.k3=r.k4 +p=r.go +p===$&&A.b() +r.fy=p +p=r.k1 +p===$&&A.b() +r.id=p +p=r.R8 +if(p.a===0){r.RG=1 +r.rx=0}else{r.RG=r.gz1()/r.gDo() +p=p.gbw(p) +r.rx=A.mV(p,new A.aQX(),A.k(p).h("z.E"),t.i).lr(0,new A.aQY())}if(r.CW===B.lG){if(r.ch!=null){s=r.p2.i(0,a).NL() +q.a=s +p=s.a +if(p.gAb()>2500){if(p.gAb()>64e6)q.a=new A.kG(p.i1(0,p.ge3()).au(0,8000)) +r.e1("onEnd",new A.aQZ(q,r))}else r.e1("onEnd",new A.aR_(r))}r.CW=B.Ln +r.p3=new A.k_(B.b8,A.aT(20,null,!1,t.av)) +return!1}r.p3=new A.k_(B.b8,A.aT(20,null,!1,t.av)) +return!0}, +aml(a,b){var s,r,q,p,o=this,n=o.CW +if(n===B.iv)n=o.CW=B.iw +if(n===B.iw){n=o.fx +n===$&&A.b() +s=o.fr +s===$&&A.b() +r=o.dy +r.toString +q=o.dx +q===$&&A.b() +p=r.a2(0,q).ge3() +if(Math.abs(n-s)>A.bRc(b.gdS(b))||p>A.beK(b.gdS(b),o.b)||Math.max(o.gz1()/o.gDo(),o.gDo()/o.gz1())>1.05)o.L(B.cz)}else if(n.a>=2)o.L(B.cz) +if(o.CW===B.Ln&&a){o.CW=B.lG +o.a0h()}if(o.CW===B.lG){n=o.p3 +if(n!=null)n.rS(b.gjR(b),new A.l(o.gz1(),0)) +if(o.ay!=null)o.e1("onUpdate",new A.aQV(o))}}, +a0h(){if(this.ax!=null)this.e1("onStart",new A.aQW(this))}, +kM(a){var s,r=this +if(r.CW===B.iw){r.CW=B.lG +r.a0h() +if(r.at===B.C){s=r.dy +s.toString +r.dx=s +s=r.fx +s===$&&A.b() +r.fr=s +r.k3=r.k4 +s=r.go +s===$&&A.b() +r.fy=s +s=r.k1 +s===$&&A.b() +r.id=s +s=r.R8 +if(s.a===0){r.RG=1 +r.rx=0}else{r.RG=r.gz1()/r.gDo() +s=s.gbw(s) +r.rx=A.mV(s,new A.aR0(),A.k(s).h("z.E"),t.i).lr(0,new A.aR1())}}}}, +jh(a){var s=this +s.R8.F(0,a) +s.ok.F(0,a) +B.b.F(s.p1,a) +s.oi(a)}, +A2(a){switch(this.CW.a){case 1:this.L(B.aM) +break +case 0:break +case 2:break +case 3:break}this.CW=B.iv}, +m(){this.p2.ab(0) +this.pi()}} +A.aQX.prototype={ +$1(a){return a.e}, +$S:245} +A.aQY.prototype={ +$2(a,b){return a+b}, +$S:125} +A.aQZ.prototype={ +$0(){var s,r,q=this.b,p=q.ch +p.toString +s=this.a.a +r=q.p3 +r=r==null?null:r.NL().a.a +if(r==null)r=-1 +return p.$1(new A.DR(s,r,q.R8.a+q.p1.length))}, +$S:0} +A.aR_.prototype={ +$0(){var s,r=this.a,q=r.ch +q.toString +s=r.p3 +s=s==null?null:s.NL().a.a +if(s==null)s=-1 +return q.$1(new A.DR(B.dk,s,r.R8.a+r.p1.length))}, +$S:0} +A.aQV.prototype={ +$0(){var s,r,q,p,o,n,m,l,k=this.a,j=k.ay +j.toString +s=k.gz1() +r=k.gauF() +q=k.gaDF() +p=k.dy +p.toString +o=k.k2 +o===$&&A.b() +n=k.aoo() +m=k.R8.a +l=k.p1.length +k=k.p4 +k===$&&A.b() +j.$1(A.bJz(p,k,r,o,m+l,n,s,q))}, +$S:0} +A.aQW.prototype={ +$0(){var s,r,q,p=this.a,o=p.ax +o.toString +s=p.dy +s.toString +r=p.k2 +r===$&&A.b() +q=p.R8.a +p=p.p1.length +o.$1(new A.Nc(s,r,q+p))}, +$S:0} +A.aR0.prototype={ +$1(a){return a.e}, +$S:245} +A.aR1.prototype={ +$2(a,b){return a+b}, +$S:125} +A.ED.prototype={} +A.uQ.prototype={} +A.Xw.prototype={ +kN(a){var s=this +if(s.ch===B.dy){if(s.k4!=null&&s.ok!=null)s.DF() +s.k4=a}if(s.k4!=null)s.ahG(a)}, +Cq(a,b){this.ahx(a,b)}, +a9X(a){var s,r,q=this +if(t.oN.b(a)){q.ok=a +q.a_v()}else if(t.Ko.b(a)){q.L(B.aM) +if(q.k2){s=q.k4 +s.toString +q.Lt(a,s,"")}q.DF()}else{s=a.gfV(a) +r=q.k4 +if(s!==r.gfV(r)){q.L(B.aM) +s=q.CW +s.toString +q.oi(s)}}}, +L(a){var s,r=this +if(r.k3&&a===B.aM){s=r.k4 +s.toString +r.Lt(null,s,"spontaneous") +r.DF()}r.Z0(a)}, +Ud(){this.a_j()}, +kM(a){var s=this +s.Z6(a) +if(a===s.CW){s.a_j() +s.k3=!0 +s.a_v()}}, +jh(a){var s,r=this +r.ahH(a) +if(a===r.CW){if(r.k2){s=r.k4 +s.toString +r.Lt(null,s,"forced")}r.DF()}}, +a_j(){var s,r=this +if(r.k2)return +s=r.k4 +s.toString +r.a9Y(s) +r.k2=!0}, +a_v(){var s,r,q=this +if(!q.k3||q.ok==null)return +s=q.k4 +s.toString +r=q.ok +r.toString +q.a9Z(s,r) +q.DF()}, +DF(){var s=this +s.k3=s.k2=!1 +s.k4=s.ok=null}} +A.kC.prototype={ +mW(a){var s=this +switch(a.gfV(a)){case 1:if(s.aV==null&&s.cb==null&&s.bU==null&&s.bQ==null)return!1 +break +case 2:if(s.bO==null&&s.B==null&&s.Z==null&&s.Y==null)return!1 +break +case 4:return!1 +break +default:return!1}return s.ym(a)}, +a9Y(a){var s,r=this,q=a.gcQ(a),p=a.geD() +r.e.i(0,a.gcz()).toString +s=new A.ED(q,p) +switch(a.gfV(a)){case 1:if(r.aV!=null)r.e1("onTapDown",new A.aX0(r,s)) +break +case 2:if(r.B!=null)r.e1("onSecondaryTapDown",new A.aX1(r,s)) +break +case 4:break}}, +a9Z(a,b){var s,r,q=this +b.gdS(b) +b.gcQ(b) +b.geD() +s=new A.uQ() +switch(a.gfV(a)){case 1:if(q.bU!=null)q.e1("onTapUp",new A.aX2(q,s)) +r=q.cb +if(r!=null)q.e1("onTap",r) +break +case 2:if(q.Z!=null)q.e1("onSecondaryTapUp",new A.aX3(q,s)) +if(q.bO!=null)q.e1("onSecondaryTap",new A.aX4(q)) +break +case 4:break}}, +Lt(a,b,c){var s,r=this,q=c===""?c:c+" " +switch(b.gfV(b)){case 1:s=r.bQ +if(s!=null)r.e1(q+"onTapCancel",s) +break +case 2:s=r.Y +if(s!=null)r.e1(q+"onSecondaryTapCancel",s) +break +case 4:break}}} +A.aX0.prototype={ +$0(){return this.a.aV.$1(this.b)}, +$S:0} +A.aX1.prototype={ +$0(){return this.a.B.$1(this.b)}, +$S:0} +A.aX2.prototype={ +$0(){return this.a.bU.$1(this.b)}, +$S:0} +A.aX3.prototype={ +$0(){return this.a.Z.$1(this.b)}, +$S:0} +A.aX4.prototype={ +$0(){return this.a.bO.$0()}, +$S:0} +A.aed.prototype={ +L(a){this.a.aC0(this.b,a)}, +$iBS:1} +A.zz.prototype={ +kM(a){var s,r,q,p,o=this +o.a4Y() +if(o.e==null){s=o.b[0] +o.e=s}for(s=o.b,r=s.length,q=0;qb*b)return new A.kG(s.i1(0,s.ge3()).au(0,b)) +if(r100||Math.abs(m-p.a.a)/1000>40)break +k=n.b +e.push(k.a) +d.push(k.b) +c.push(1) +b.push(-l) +a=(a===0?20:a)-1;++o +if(o<20){q=n +p=q +continue}else{q=n +break}}while(!0) +if(o>=3){j=new A.a2A(b,e,c).Yw(2) +if(j!=null){i=new A.a2A(b,d,c).Yw(2) +if(i!=null){f=j.a[1] +m=i.a[1] +h=j.b +h===$&&A.b() +g=i.b +g===$&&A.b() +return new A.zo(new A.l(f*1000,m*1000),h*g,new A.bk(r-q.a.a),s.b.a2(0,q.b))}}}return new A.zo(B.i,1,new A.bk(r-q.a.a),s.b.a2(0,q.b))}, +NL(){var s=this.C9() +if(s==null||s.a.l(0,B.i))return B.dk +return new A.kG(s.a)}} +A.x5.prototype={ +rS(a,b){var s=(this.c+1)%20 +this.c=s +this.d[s]=new A.Sk(a,b)}, +yW(a){var s,r,q=this.c+a,p=B.f.aH(q,20),o=B.f.aH(q-1,20) +q=this.d +s=q[p] +r=q[o] +if(s==null||r==null)return B.i +q=s.a.a-r.a.a +return q>0?s.b.a2(0,r.b).au(0,1000).i1(0,q/1000):B.i}, +C9(){var s,r,q=this,p=q.yW(-2).au(0,0.6).T(0,q.yW(-1).au(0,0.35)).T(0,q.yW(0).au(0,0.05)),o=q.d,n=q.c,m=o[n] +for(s=null,r=1;r<=20;++r){s=o[B.f.aH(n+r,20)] +if(s!=null)break}if(s==null||m==null)return B.L0 +else return new A.zo(p,1,new A.bk(m.a.a-s.a.a),m.b.a2(0,s.b))}} +A.CC.prototype={ +C9(){var s,r,q=this,p=q.yW(-2).au(0,0.15).T(0,q.yW(-1).au(0,0.65)).T(0,q.yW(0).au(0,0.2)),o=q.d,n=q.c,m=o[n] +for(s=null,r=1;r<=20;++r){s=o[B.f.aH(n+r,20)] +if(s!=null)break}if(s==null||m==null)return B.L0 +else return new A.zo(p,1,new A.bk(m.a.a-s.a.a),m.b.a2(0,s.b))}} +A.acY.prototype={ +A(a){var s=this,r=null +return A.db(r,r,s.c,r,new A.b_P(s,a),r,r,s.f,s.If(a),r)}, +geB(a){return this.c}} +A.b_P.prototype={ +$0(){this.a.IM(this.b)}, +$S:0} +A.zu.prototype={ +A(a){var s,r,q,p,o=null +a.ae(t.vH) +s=A.r(a) +r=this.c.$1(s.R8) +if(r!=null)return r.$1(a) +q=this.d.$1(a) +switch(A.cb().a){case 0:s=A.A(a,B.ax,t.D) +s.toString +p=this.e.$1(s) +break +case 1:case 3:case 5:case 2:case 4:p=o +break +default:p=o}return A.fR(q,o,p,o)}} +A.Xj.prototype={ +A(a){return new A.zu(new A.asx(),new A.asy(),new A.asz(),null)}} +A.asx.prototype={ +$1(a){return a==null?null:a.a}, +$S:126} +A.asy.prototype={ +$1(a){return B.tg}, +$S:127} +A.asz.prototype={ +$1(a){return a.gbg()}, +$S:128} +A.Xh.prototype={ +IM(a){return A.aKu(a)}, +If(a){var s=A.A(a,B.ax,t.D) +s.toString +return s.gbg()}} +A.Yv.prototype={ +A(a){return new A.zu(new A.awh(),new A.awi(),new A.awj(),null)}} +A.awh.prototype={ +$1(a){return a==null?null:a.b}, +$S:126} +A.awi.prototype={ +$1(a){return B.SY}, +$S:127} +A.awj.prototype={ +$1(a){return a.gbb()}, +$S:128} +A.Yu.prototype={ +IM(a){return A.aKu(a)}, +If(a){var s=A.A(a,B.ax,t.D) +s.toString +return s.gbb()}} +A.a0q.prototype={ +A(a){return new A.zu(new A.ayY(),new A.ayZ(),new A.az_(),null)}} +A.ayY.prototype={ +$1(a){return a==null?null:a.c}, +$S:126} +A.ayZ.prototype={ +$1(a){return B.ti}, +$S:127} +A.az_.prototype={ +$1(a){return a.gaM()}, +$S:128} +A.a0p.prototype={ +IM(a){var s,r,q=A.oO(a),p=q.e +if(p.gR()!=null){s=q.x +r=s.y +s=r==null?A.k(s).h("dh.T").a(r):r}else s=!1 +if(s)p.gR().ad(0) +q=q.d.gR() +if(q!=null)q.r_(0) +return null}, +If(a){var s=A.A(a,B.ax,t.D) +s.toString +return s.gaM()}} +A.a0y.prototype={ +A(a){return new A.zu(new A.aA8(),new A.aA9(),new A.aAa(),null)}} +A.aA8.prototype={ +$1(a){return a==null?null:a.d}, +$S:126} +A.aA9.prototype={ +$1(a){return B.ti}, +$S:127} +A.aAa.prototype={ +$1(a){return a.gaM()}, +$S:128} +A.a0x.prototype={ +IM(a){return A.oO(a).FN()}, +If(a){var s=A.A(a,B.ax,t.D) +s.toString +return s.gaM()}} +A.Ae.prototype={ +gv(a){var s=this +return A.dt([s.a,s.b,s.c,s.d])}, +l(a,b){var s +if(b==null)return!1 +if(this===b)return!0 +if(J.a1(b)!==A.o(this))return!1 +if(b instanceof A.Ae)s=!0 +else s=!1 +return s}} +A.ad_.prototype={} +A.Wz.prototype={ +A(a){var s,r,q=this,p=q.c.length===0 +if(p)return B.a_ +s=J.fJ(A.bCS(a,q.c)) +switch(A.r(a).r.a){case 2:p=q.e +r=p.a +p=p.b +return A.bEd(r,p==null?r:p,s) +case 0:p=q.e +r=p.a +p=p.b +return A.bKM(r,p==null?r:p,s) +case 1:case 3:case 5:return new A.a00(q.e.a,s,null) +case 4:return new A.YN(q.e.a,s,null)}}} +A.arn.prototype={ +$1(a){return A.bEe(a)}, +$S:647} +A.aro.prototype={ +$1(a){var s=this.a +return A.bED(s,a.a,A.bhE(s,a))}, +$S:655} +A.arp.prototype={ +$1(a){return A.bE2(a.a,A.bhE(this.a,a))}, +$S:659} +A.hg.prototype={ +K(){return"ThemeMode."+this.b}} +A.CI.prototype={ +a8(){return new A.RM(B.m)}} +A.aIu.prototype={ +$2(a,b){return new A.CL(a,b)}, +$S:661} +A.aIy.prototype={ +ro(a){return A.r(a).r}, +Kj(a,b,c){switch(A.bT(c.a).a){case 0:return b +case 1:switch(A.r(a).r.a){case 3:case 4:case 5:return A.brO(b,c.b,null) +case 0:case 1:case 2:return b}break}}, +Ki(a,b,c){var s=A.b4("indicator") +if(A.r(a).y)s.sdX(B.pP) +else{A.r(a) +s.sdX(B.lK)}switch(A.r(a).r.a){case 2:case 3:case 4:case 5:return b +case 0:switch(s.aF()){case B.pP:return A.bKp(c.a,b,c.d) +case B.lK:break}break +case 1:break}return A.bpN(c.a,b,A.r(a).ax.f)}} +A.RM.prototype={ +aR(){this.b5() +this.d=A.bqE()}, +gavO(){var s=A.a([],t.a9) +B.b.I(s,this.a.k1) +s.push(B.OI) +s.push(B.OA) +return s}, +av5(a,b){return new A.wQ(B.Uq,b,null,!1,B.anT,null,null)}, +aw1(a,b){var s,r,q,p,o,n,m=this,l=null,k=m.a.fr,j=A.cT(a,B.px),i=j==null?l:j.d +if(i==null)i=B.aB +if(k!==B.KP)s=k===B.ih&&i===B.am +else s=!0 +j=A.cT(a,B.Lh) +j=j==null?l:j.Q +r=j===!0 +if(s)if(r)m.a.toString +if(s){m.a.toString +j=!0}else j=!1 +if(j)q=m.a.db +else{if(r)m.a.toString +q=l}if(q==null)q=m.a.cy +j=q.dH +p=j.b +if(p==null){o=q.ax.b +p=A.K(102,o.gk(o)>>>16&255,o.gk(o)>>>8&255,o.gk(o)&255)}n=j.a +if(n==null)n=q.ax.b +m.a.toString +j=b==null?B.a_:b +return new A.Nb(A.axf(new A.HE(q,j,B.Z,B.S,l,l),n,l,l,p),l)}, +ank(a){var s,r=this,q=null,p=r.a,o=p.cy +o=o.fr +s=o +if(s==null)s=B.hI +return new A.Fc(q,q,q,q,q,q,q,q,p.ay,q,q,q,q,q,r.gaw0(),"",p.cx,B.aj0,s,p.id,r.gavO(),q,q,r.a.k4,!1,!1,!1,!1,r.gav4(),!1,q,q,q,new A.q9(r,t.bT))}, +A(a){var s,r=null,q=A.tz(!1,!1,this.ank(a),r,r,r,r,!0,r,r,new A.b6b(),r,r,r) +this.a.toString +s=this.d +s===$&&A.b() +return A.bjF(B.NT,A.bpX(q,s))}} +A.b6b.prototype={ +$2(a,b){if(!(b instanceof A.oJ)||!b.c.gFv().l(0,B.hA))return B.hk +return A.bL2()?B.hj:B.hk}, +$S:242} +A.bc9.prototype={ +vz(a){return a.N3(this.b)}, +vE(a){return new A.V(a.b,this.b)}, +vC(a,b){return new A.l(0,a.b-b.b)}, +q9(a){return this.b!==a.b}} +A.So.prototype={} +A.HM.prototype={ +aqX(a){var s=this.cy +if(s==null)s=a.RG.y +return s==null?new A.aru(this,a).$0():s}, +a8(){return new A.Pz(B.m)}, +$iqF:1, +qZ(a){return A.Hk().$1(a)}, +gr3(){return this.fx}} +A.aru.prototype={ +$0(){switch(this.b.r.a){case 0:case 1:case 3:case 5:return!1 +case 2:case 4:var s=this.a.f +return s==null||s.length<2}}, +$S:17} +A.Pz.prototype={ +cp(){var s,r=this +r.ei() +s=r.d +if(s!=null)s.J(0,r.gOY()) +s=r.c.ae(t.yd) +s=s==null?null:s.f +r.d=s +if(s!=null){s=s.d +s.yO(s.c,new A.ve(r.gOY()),!1)}}, +m(){var s=this,r=s.d +if(r!=null){r.J(0,s.gOY()) +s.d=null}s.aZ()}, +ams(a){var s,r,q,p=this +if(a instanceof A.kw&&p.a.qZ(a)){s=p.e +r=a.a +switch(r.e.a){case 0:q=p.e=Math.max(r.gkf()-r.gf0(),0)>0 +break +case 2:q=p.e=Math.max(r.gf0()-r.gkg(),0)>0 +break +case 1:case 3:q=s +break +default:q=s}if(q!==s)p.a7(new A.b0e())}}, +A(b8){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=this,b3=null,b4=A.r(b8),b5=A.bq3(b8),b6=A.r(b8).RG,b7=b4.y +if(b7)s=new A.b0d(b8,b3,b3,0,3,b3,b3,b3,b3,b3,b3,16,64,b3,b3,b3) +else s=new A.b0c(b8,b3,b3,4,b3,B.v,b3,b3,b3,b3,b3,16,56,b3,b3,b3) +r=b8.F_(t.Np) +q=A.qq(b8,t.X) +b8.ae(t.KL) +p=A.aY(t.ui) +o=b2.e +if(o)p.G(0,B.Fa) +o=r==null +if(o)n=b3 +else{r.a.toString +n=!1}r=o?b3:r.a.at!=null +m=q instanceof A.jJ&&q.gpI() +o=b2.a +o.toString +l=b6.Q +if(l==null)l=56 +k=s.gbY(s) +j=t.MH +o=A.cg(o.ax,p,j) +if(o==null)o=A.cg(b6.a,p,j) +if(o==null)o=A.cg(k,p,t.n8) +b2.a.toString +i=b6.b +h=i==null?s.geW():i +k=b2.a.x +g=k==null?b6.c:k +if(g==null){k=s.c +k.toString +g=k}if(p.n(0,B.Fa)){b2.a.toString +p=b6.d +if(p==null)p=s.d +f=p==null?g:p}else f=g +b2.a.toString +e=b6.w +d=e==null?s.gfI().co(h):e +b2.a.toString +p=b6.x +if(p==null)p=b3 +if(p==null)p=e +if(p==null){p=s.gzd() +p=p==null?b3:p.co(i) +c=p}else c=p +if(c==null)c=d +b2.a.toString +b=b6.as +if(b==null){p=s.gBF() +b=p==null?b3:p.co(h)}b2.a.toString +a=b6.at +if(a==null){p=s.gi0() +a=p==null?b3:p.co(h)}p=b2.a +a0=p.c +if(a0==null&&!0)if(n===!0){p=d.a +a0=new A.a0p(B.Rq,b3,A.x7(b3,b3,b3,b3,b3,b3,b3,b3,b3,p==null?24:p,b3,b3,b3,b3),b3)}else{if(q==null)p=b3 +else p=q.gAH()||q.mO$>0 +if(p===!0)a0=m?B.Pa:B.LB}if(a0!=null)if(b7){if(d.l(0,s.gfI()))a1=b5 +else{a2=A.x7(b3,b3,b3,b3,b3,b3,d.f,b3,b3,d.a,b3,b3,b3,b3) +p=b5.a +a1=new A.qe(p==null?b3:p.a87(a2.c,a2.as,a2.d))}a0=A.a1T(a0 instanceof A.x6?A.f1(a0,b3,b3):a0,a1) +b2.a.toString +a0=new A.ew(A.ii(b3,56),a0,b3)}else{b2.a.toString +a0=new A.ew(A.ii(b3,56),a0,b3)}a3=b2.a.e +if(a3!=null){switch(b4.r.a){case 0:case 1:case 3:case 5:a4=!0 +break +case 2:case 4:a4=b3 +break +default:a4=b3}a3=new A.adj(a3,b3) +a3=new A.bu(A.bI(b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,!0,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,a4,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3),!1,!1,!1,!1,a3,b3) +a.toString +a3=A.fw(a3,b3,b3,B.ac,!1,a,b3,b3,B.aq) +a5=A.aS(b8,b3,t.l).w +a3=A.la(a3,a5.zK(Math.min(a5.c,1.34)),b3)}p=b2.a.f +if(p!=null&&p.length!==0){r=b7?B.w:B.hd +p.toString +a6=A.dd(p,r,B.D,B.aa)}else if(r===!0){r=d.a +a6=new A.a0x(B.Sj,b3,A.x7(b3,b3,b3,b3,b3,b3,b3,b3,b3,r==null?24:r,b3,b3,b3,b3),b3)}else a6=b3 +if(a6!=null){if(c.l(0,s.gzd()))a7=b5 +else{a8=A.x7(b3,b3,b3,b3,b3,b3,c.f,b3,b3,c.a,b3,b3,b3,b3) +r=b5.a +a7=new A.qe(r==null?b3:r.a87(a8.c,a8.as,a8.d))}a6=A.a1T(A.mP(a6,c),a7)}r=b2.a.aqX(b4) +p=b2.a +p.toString +n=b6.z +if(n==null)n=16 +b.toString +a9=A.tb(new A.kV(new A.bc9(l),A.mP(A.fw(new A.LJ(a0,a3,a6,r,n,b3),b3,b3,B.aR,!0,b,b3,b3,B.aq),d),b3),B.E) +if(p.w!=null){r=A.a([new A.og(1,B.f4,new A.ew(new A.aL(0,1/0,0,l),a9,b3),b3)],t.p) +p=b2.a.w +p.toString +r.push(p) +a9=A.cO(r,B.w,B.fk,B.T)}b2.a.toString +a9=A.yz(!1,a9,!0,B.a4,!0,!0) +r=A.aY8(o) +b7=b7?B.u:b3 +b0=r===B.am?B.Ks:B.Kt +b1=new A.oX(b3,b3,b3,b3,b7,b0.f,b0.r,b0.w) +b2.a.toString +b7=b6.e +if(b7==null)b7=s.gbR(s) +b2.a.toString +r=b6.f +if(r==null)r=s.gc9() +b2.a.toString +p=b6.r +if(p==null)p=s.r +b7=A.bnW(A.hA(B.S,!0,b3,new A.bu(A.bI(b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3),!1,!0,!1,!1,new A.e5(B.eN,b3,b3,a9,b3),b3),B.l,o,f,b3,b7,p,r,b3,B.cJ),b1,t.lu) +return new A.bu(A.bI(b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3),!0,!1,!1,!1,b7,b3)}} +A.b0e.prototype={ +$0(){}, +$S:0} +A.adj.prototype={ +aX(a){var s=a.ae(t.I) +s.toString +s=new A.aka(B.X,s.w,null,A.aB(t.T)) +s.aW() +s.sbN(null) +return s}, +b4(a,b){var s=a.ae(t.I) +s.toString +b.scF(s.w)}} +A.aka.prototype={ +ds(a){var s=a.a7X(1/0) +return a.bI(this.E$.lC(s))}, +cj(){var s,r=this,q=t.k,p=q.a(A.H.prototype.ga4.call(r)).a7X(1/0) +r.E$.cX(p,!0) +q=q.a(A.H.prototype.ga4.call(r)) +s=r.E$ +r.id=q.bI(s.gq(s)) +r.K6()}} +A.b0c.prototype={ +gvZ(){var s,r=this,q=r.ch +if(q===$){s=A.r(r.ay) +r.ch!==$&&A.am() +r.ch=s +q=s}return q}, +gom(){var s,r=this,q=r.CW +if(q===$){s=r.gvZ() +r.CW!==$&&A.am() +q=r.CW=s.ax}return q}, +gbY(a){return this.gom().a===B.am?this.gom().cy:this.gom().b}, +geW(){return this.gom().a===B.am?this.gom().db:this.gom().c}, +gfI(){return this.gvZ().ok}, +gBF(){return this.gvZ().p3.z}, +gi0(){return this.gvZ().p3.r}} +A.b0d.prototype={ +gvZ(){var s,r=this,q=r.ch +if(q===$){s=A.r(r.ay) +r.ch!==$&&A.am() +r.ch=s +q=s}return q}, +gom(){var s,r=this,q=r.CW +if(q===$){s=r.gvZ() +r.CW!==$&&A.am() +q=r.CW=s.ax}return q}, +gZY(){var s,r=this,q=r.cx +if(q===$){s=r.gvZ() +r.cx!==$&&A.am() +q=r.cx=s.p3}return q}, +gbY(a){return this.gom().cy}, +geW(){return this.gom().db}, +gbR(a){return B.u}, +gc9(){var s=this.gom(),r=s.k3 +return r==null?s.b:r}, +gfI(){var s=null +return new A.cX(24,s,s,s,s,this.gom().db,s,s)}, +gzd(){var s=null,r=this.gom(),q=r.dy +return new A.cX(24,s,s,s,s,q==null?r.db:q,s,s)}, +gBF(){return this.gZY().z}, +gi0(){return this.gZY().r}} +A.Aj.prototype={ +gv(a){var s=this +return A.X(s.gbY(s),s.geW(),s.c,s.d,s.gbR(s),s.gc9(),s.r,s.gfI(),s.gzd(),s.y,s.z,s.Q,s.gBF(),s.gi0(),s.ax,B.a,B.a,B.a,B.a,B.a)}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.a1(b)!==A.o(s))return!1 +return b instanceof A.Aj&&J.i(b.gbY(b),s.gbY(s))&&J.i(b.geW(),s.geW())&&b.c==s.c&&b.d==s.d&&J.i(b.gbR(b),s.gbR(s))&&J.i(b.gc9(),s.gc9())&&J.i(b.r,s.r)&&J.i(b.gfI(),s.gfI())&&J.i(b.gzd(),s.gzd())&&b.z==s.z&&b.Q==s.Q&&J.i(b.gBF(),s.gBF())&&J.i(b.gi0(),s.gi0())&&!0}, +gbY(a){return this.a}, +geW(){return this.b}, +gbR(a){return this.e}, +gc9(){return this.f}, +gfI(){return this.w}, +gzd(){return this.x}, +gBF(){return this.as}, +gi0(){return this.at}} +A.adi.prototype={} +A.Lj.prototype={ +rN(){var s,r,q,p,o,n,m,l,k,j,i,h,g=this,f=g.a +f.toString +s=g.b +s.toString +r=s.a2(0,f) +q=Math.abs(r.a) +p=Math.abs(r.b) +o=r.ge3() +n=s.a +m=f.b +l=new A.l(n,m) +k=new A.aIw(g,o) +if(q>2&&p>2){j=o*o +i=f.a +h=s.b +if(q700){s=-o/p.ga_x() +o=p.a.c +r=o.x +r===$&&A.b() +if(r>0)o.AD(s) +q=s<0&&!0}else{o=p.a.c +r=o.x +r===$&&A.b() +if(r<0.5){if(r>0)o.AD(-1) +q=!0}else{o.bS(0) +q=!1}}p.a.z.$2$isClosing(a,q) +if(q)p.a.aLO()}, +UD(a){a.gew() +a.gaLq() +return!1}, +as5(a){if(a!==this.e.n(0,B.A))this.a7(new A.b0N(this,a))}, +A(a){var s,r,q,p,o,n,m,l,k,j,i,h,g=this,f=null,e=A.r(a).x2,d=A.r(a).y?A.bkl(a):B.lU +g.a.toString +s=e.as +if(s==null)s=d.ga4() +r=g.a.Q +q=r==null?e.a:r +if(q==null)q=d.gbY(d) +p=e.b +if(p==null)p=d.gc9() +g.a.toString +o=e.f +if(o==null)o=d.gbR(d) +r=g.a +n=r.at +if(n==null)n=e.c +m=n==null?d.c:n +if(m==null)m=0 +n=r.ax +l=n==null?e.w:n +if(l==null)l=d.w +n=r.ay +k=n==null?e.Q:n +if(k==null)k=B.l +j=r.r +if(j==null){r.f +j=!1}if(j){i=new A.afw(r.d,g.gas4(),g.e,f,f,f) +if(!r.f)i=new A.PS(i,g.ga_3(),g.ga_4(),g.ga_2(),f)}else i=f +if(!j)r=r.a7o(a) +else{i.toString +r=A.fr(B.eN,A.a([i,new A.b8(B.RY,r.a7o(a),f)],t.p),B.E,B.aH,f)}h=A.hA(B.S,!0,f,new A.dP(g.gUC(),r,f,t.K3),k,q,m,g.d,o,l,p,f,B.cJ) +if(s!=null)h=new A.e5(B.ix,f,1,new A.ew(s,h,f),f) +return!g.a.f?h:new A.PS(h,g.ga_3(),g.ga_4(),g.ga_2(),f)}} +A.b0O.prototype={ +$0(){this.a.e.G(0,B.fn)}, +$S:0} +A.b0M.prototype={ +$0(){this.a.e.F(0,B.fn)}, +$S:0} +A.b0N.prototype={ +$0(){var s=this.a.e +if(this.b)s.G(0,B.A) +else s.F(0,B.A)}, +$S:0} +A.afw.prototype={ +A(a){var s,r,q,p,o,n,m=this,l=null,k=A.r(a).x2,j=A.bkl(a),i=k.z +if(i==null)i=B.Kf +s=A.A(a,B.ax,t.D) +s.toString +s=s.gaE() +r=i.b +q=A.I3(r/2) +p=m.e +o=t.MH +n=A.cg(m.f,p,o) +p=n==null?A.cg(k.y,p,o):n +if(p==null){p=j.gHH() +o=p.dy +p=(o==null?p.db:o).a +p=A.K(102,p>>>16&255,p>>>8&255,p&255)}r=A.cZ(A.f1(A.cP(l,l,B.l,l,l,new A.dJ(p,l,l,q,l,l,B.aE),l,r,l,l,i.a),l,l),48,48) +return A.mX(new A.bu(A.bI(l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,s,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,m.c,l,l,l,l,l,l,l,l,l,l,l),!0,!1,!1,!1,r,l),B.cw,l,new A.b2P(m),new A.b2Q(m),l)}} +A.b2P.prototype={ +$1(a){return this.a.d.$1(!0)}, +$S:78} +A.b2Q.prototype={ +$1(a){return this.a.d.$1(!1)}, +$S:64} +A.adF.prototype={ +aX(a){var s=new A.Sz(B.x,this.r,this.e,!1,null,A.aB(t.T)) +s.aW() +s.sbN(null) +return s}, +b4(a,b){b.saLN(this.r) +b.saEq(this.e) +b.saKx(!1)}} +A.Sz.prototype={ +saLN(a){if(J.i(this.a0,a))return +this.a0=a +this.a6()}, +saEq(a){if(this.aw===a)return +this.aw=a +this.a6()}, +saKx(a){return}, +c3(a){var s=A.jr(a,1/0),r=s.bI(new A.V(A.S(1/0,s.a,s.b),A.S(1/0,s.c,s.d))).a +if(isFinite(r))return r +return 0}, +bV(a){var s=A.jr(a,1/0),r=s.bI(new A.V(A.S(1/0,s.a,s.b),A.S(1/0,s.c,s.d))).a +if(isFinite(r))return r +return 0}, +bW(a){var s=A.jr(1/0,a),r=s.bI(new A.V(A.S(1/0,s.a,s.b),A.S(1/0,s.c,s.d))).b +if(isFinite(r))return r +return 0}, +c1(a){var s=A.jr(1/0,a),r=s.bI(new A.V(A.S(1/0,s.a,s.b),A.S(1/0,s.c,s.d))).b +if(isFinite(r))return r +return 0}, +ds(a){return a.bI(new A.V(A.S(1/0,a.a,a.b),A.S(1/0,a.c,a.d)))}, +cj(){var s,r,q,p,o,n=this,m=t.k,l=m.a(A.H.prototype.ga4.call(n)) +n.id=l.bI(new A.V(A.S(1/0,l.a,l.b),A.S(1/0,l.c,l.d))) +if(n.E$!=null){m=m.a(A.H.prototype.ga4.call(n)) +l=m.b +m=m.d*9/16 +s=n.E$ +s.toString +r=l>=l +q=r&&0>=m +s.cX(new A.aL(l,l,0,m),!q) +q=n.E$.b +q.toString +t.q.a(q) +s=n.gq(n) +if(r&&0>=m)p=new A.V(A.S(0,l,l),A.S(0,0,m)) +else{p=n.E$ +p=p.gq(p)}q.sc6(0,new A.l(0,s.b-p.b*n.aw)) +if(r&&0>=m)o=new A.V(A.S(0,l,l),A.S(0,0,m)) +else{m=n.E$ +o=m.gq(m)}if(!n.C.l(0,o)){n.C=o +n.a0.$1(o)}}}} +A.zK.prototype={ +a8(){return new A.Gh(B.rw,B.m,this.$ti.h("Gh<1>"))}} +A.Gh.prototype={ +ark(a){var s=this.c +s.toString +switch(A.r(s).r.a){case 2:case 4:return"" +case 0:case 1:case 3:case 5:return a.gaC()}}, +aIv(a){this.d=B.Z}, +a9P(a,b){var s=this.a.c.go +this.d=new A.b0P(s.gk(s),B.rw)}, +aIt(a){return this.a9P(a,null)}, +A(a){var s,r,q,p,o,n,m,l=this,k=A.A(a,B.ax,t.D) +k.toString +s=l.ark(k) +k=l.a +r=k.c +q=r.go +q.toString +p=r.iB +o=k.e +n=k.f +m=k.r +return A.h1(q,new A.b6E(l,s),A.bo5(p,o,r.dH,k.w,k.x,n,!0,new A.b6F(l,a),l.gaIs(),l.gaIu(),m,k.z))}} +A.b6F.prototype={ +$0(){if(this.a.a.c.gtl())A.j5(this.b,!1).e7(null)}, +$S:0} +A.b6E.prototype={ +$2(a,b){var s=null,r=this.a,q=r.d,p=r.a.c.go,o=q.a_(0,p.gk(p)) +r.a.toString +r=A.tb(new A.adF(o,!1,new A.b6D(r),b,s),B.E) +return new A.bu(A.bI(s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,this.b,s,s,s,s,s,!0,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,!0,s,s,s,s,s,s,s,s,s),!1,!0,!1,!1,r,s)}, +$S:140} +A.b6D.prototype={ +$1(a){this.a.a.c.ap3(new A.aK(0,0,0,a.b))}, +$S:109} +A.Lt.prototype={ +ap3(a){var s=this.hc +if(J.i(s.a,a))return!1 +s.sk(0,a) +return!0}, +gtO(a){return B.j2}, +gMX(){return B.S}, +gqv(){return!0}, +gps(){var s=this.aw +return s==null?B.a6:s}, +a8b(){var s=this.a +s.toString +s=A.bw(B.z,"BottomSheet",B.j2,0,B.S,1,null,s) +this.iB=s +return s}, +kU(a,b,c){var s=A.aIK(new A.Jh(this.fH,new A.ej(new A.aJg(this),null),null),a,!1,!1,!1,!0),r=new A.ra(this.E.a,s,null) +return r}, +a7e(){var s,r,q=this,p=q.aw,o=p==null +if(((o?B.a6:p).a>>>24&255)!==0&&!q.fy){s=q.go +s.toString +r=(o?B.a6:p).a +r=A.K(0,r>>>16&255,r>>>8&255,r&255) +if(o)p=B.a6 +o=t.IC.h("dq") +return A.bnQ(!0,q.hc,new A.aw(t.m.a(s),new A.dq(new A.eE(B.aL),new A.dk(r,p),o),o.h("aw")),!0,q.dR,q.iA)}else return A.aJe(!0,q.hc,null,!0,null,q.dR,q.iA)}, +grV(){return this.dR}} +A.aJg.prototype={ +$1(a){var s,r,q=A.r(a).x2,p=A.r(a).y?A.bkl(a):B.lU,o=this.a,n=q.d +if(n==null)n=q.a +if(n==null)n=p.gbY(p) +s=q.r +if(s==null)s=p.r +if(s==null)s=q.c +r=o.fa +r=!1 +return new A.zK(o,!1,n,s,o.ez,o.C,o.a0,!0,r,null,o.$ti.h("zK<1>"))}, +$S(){return this.a.$ti.h("zK<1>(E)")}} +A.b0P.prototype={ +a_(a,b){var s=this.a +if(b#"+A.bt(this)+"("+A.h(this.a)+", "+this.b.j(0)+")"}} +A.PS.prototype={ +A(a){return new A.n6(this.c,A.ap([B.le,new A.dy(new A.b0K(this),new A.b0L(this),t.ok)],t.n,t.xR),null,!0,null)}} +A.b0K.prototype={ +$0(){return A.bk6(this.a,null)}, +$S:152} +A.b0L.prototype={ +$1(a){var s=this.a +a.ay=s.d +a.ch=s.e +a.CW=s.f +a.dy=!0}, +$S:158} +A.b0J.prototype={ +gHH(){var s,r=this,q=r.ax +if(q===$){s=A.r(r.at) +r.ax!==$&&A.am() +q=r.ax=s.ax}return q}, +gbY(a){return this.gHH().cy}, +gc9(){var s=this.gHH(),r=s.k3 +return r==null?s.b:r}, +gbR(a){return B.u}, +gKY(){var s=this.gHH(),r=s.dy +s=(r==null?s.db:r).a +return A.K(102,s>>>16&255,s>>>8&255,s&255)}, +gKZ(){return B.Kf}, +ga4(){return B.qb}} +A.w0.prototype={ +gv(a){var s=this +return A.X(s.gbY(s),s.gc9(),s.c,s.d,s.e,s.gbR(s),s.r,s.w,s.x,s.gKY(),s.gKZ(),s.Q,s.ga4(),B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r===b)return!0 +if(J.a1(b)!==A.o(r))return!1 +if(b instanceof A.w0)if(J.i(b.gbY(b),r.gbY(r)))if(J.i(b.gc9(),r.gc9()))if(b.c==r.c)if(J.i(b.d,r.d))if(J.i(b.gbR(b),r.gbR(r)))if(J.i(b.e,r.e))if(b.r==r.r)if(J.i(b.w,r.w))if(J.i(b.gKY(),r.gKY()))if(J.i(b.gKZ(),r.gKZ()))s=J.i(b.ga4(),r.ga4()) +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +return s}, +gbY(a){return this.a}, +gc9(){return this.b}, +gbR(a){return this.f}, +gKY(){return this.y}, +gKZ(){return this.z}, +ga4(){return this.as}} +A.adG.prototype={} +A.MD.prototype={ +a8(){return new A.ajQ(A.aY(t.ui),B.m)}} +A.ajQ.prototype={ +aR(){var s=this +s.b5() +if(!(s.a.c!=null||!1))s.ux(B.o) +else s.re(B.o)}, +aY(a){var s,r=this +r.br(a) +if(!(r.a.c!=null||!1))r.ux(B.o) +else r.re(B.o) +s=r.te$ +if(s.n(0,B.o)&&s.n(0,B.K))r.re(B.K)}, +gapJ(){var s=this,r=s.te$ +if(r.n(0,B.o))return s.a.ch +if(r.n(0,B.K))return s.a.ay +if(r.n(0,B.A))return s.a.at +if(r.n(0,B.y))return s.a.ax +return s.a.as}, +A(a7){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1=this,a2=null,a3=a1.a.r,a4=a1.te$,a5=A.cg(a3.b,a4,t.MH),a6=A.cg(a1.a.db,a4,t.Zi) +a1.a.toString +s=new A.l(0,0).au(0,4) +r=B.fN.L0(a1.a.cy) +a3=a1.a.f +q=A.cg(a3,a4,t.WV) +a1.a.toString +a3=s.a +a4=s.b +p=B.a4.G(0,new A.aK(a3,a4,a3,a4)).hs(0,B.a4,B.py) +o=a1.gapJ() +n=a1.a.r.co(a5) +m=a1.a.w +l=A.r(a7).y?A.r(a7).k2:a2 +k=a1.a +j=k.go +i=k.fx +k=k.c!=null||!1 +h=a1.Ni(B.y) +a1.a.toString +g=a1.adm(B.K,a2) +f=a1.a +e=f.Q +d=f.x +f=f.y +c=a1.Ni(B.A) +b=a1.a +a=b.c +n=A.hA(B.S,!0,a2,A.jE(!1,a2,k,A.mP(A.cP(a2,A.f1(b.dy,1,1),B.l,a2,a2,a2,a2,a2,a2,p,a2),new A.cX(a2,a2,a2,a2,a2,a5,a2,a2)),a6,!0,d,i,a2,f,q,h,g,c,a2,a,a2,a2,a2,a2,e,a2,a2),j,m,o,a2,l,a6,a2,n,B.nU) +switch(b.fr.a){case 0:a0=new A.V(48+a3,48+a4) +break +case 1:a0=B.x +break +default:a0=a2}a3=a!=null||!1 +return new A.bu(A.bI(a2,a2,a2,a2,a2,!0,a2,a2,a2,a2,a3,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2),!0,!1,!1,!1,new A.agX(a0,new A.ew(r,n,a2),a2),a2)}} +A.agX.prototype={ +aX(a){var s=new A.SJ(this.e,null,A.aB(t.T)) +s.aW() +s.sbN(null) +return s}, +b4(a,b){b.sVS(this.e)}} +A.SJ.prototype={ +sVS(a){if(this.C.l(0,a))return +this.C=a +this.a6()}, +c3(a){var s=this.E$ +if(s!=null)return Math.max(s.aB(B.ad,a,s.gbZ()),this.C.a) +return 0}, +bW(a){var s=this.E$ +if(s!=null)return Math.max(s.aB(B.aA,a,s.gcD()),this.C.b) +return 0}, +bV(a){var s=this.E$ +if(s!=null)return Math.max(s.aB(B.ak,a,s.gc2()),this.C.a) +return 0}, +c1(a){var s=this.E$ +if(s!=null)return Math.max(s.aB(B.br,a,s.gd4()),this.C.b) +return 0}, +a_c(a,b){var s,r,q=this.E$ +if(q!=null){s=b.$2(q,a) +q=s.a +r=this.C +return a.bI(new A.V(Math.max(q,r.a),Math.max(s.b,r.b)))}return B.x}, +ds(a){return this.a_c(a,A.rI())}, +cj(){var s,r,q,p=this +p.id=p.a_c(t.k.a(A.H.prototype.ga4.call(p)),A.vE()) +s=p.E$ +if(s!=null){s=s.b +s.toString +t.q.a(s) +r=p.gq(p) +q=p.E$ +s.sc6(0,B.X.wx(t.EP.a(r.a2(0,q.gq(q)))))}}, +dc(a,b){var s,r +if(this.qb(a,b))return!0 +s=this.E$ +r=s.gq(s).mg(B.i) +return a.DZ(new A.b96(this,r),r,A.aIF(r))}} +A.b96.prototype={ +$2(a,b){return this.a.E$.dc(a,this.b)}, +$S:16} +A.aoV.prototype={} +A.Id.prototype={ +gv(a){var s=this +return A.X(s.a,s.b,s.c,s.d,s.e,s.f,s.r,s.w,s.x,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r===b)return!0 +if(J.a1(b)!==A.o(r))return!1 +if(b instanceof A.Id)if(b.d==r.d)if(b.e==r.e)if(J.i(b.f,r.f))s=!0 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +return s}} +A.adK.prototype={} +A.cp.prototype={ +TP(a3,a4,a5,a6,a7,a8,a9,b0,b1,b2,b3,b4,b5,b6,b7,b8,b9,c0,c1,c2,c3,c4){var s=this,r=c3==null?s.ghC():c3,q=a5==null?s.gbY(s):a5,p=a9==null?s.geW():a9,o=b5==null?s.gcw():b5,n=b7==null?s.gbR(s):b7,m=c1==null?s.gc9():c1,l=a6==null?s.gfl(s):a6,k=b6==null?s.gdE(s):b6,j=b3==null?s.glf():b3,i=a8==null?s.y:a8,h=b2==null?s.gld():b2,g=b0==null?s.Q:b0,f=b1==null?s.gj8():b1,e=b9==null?s.geP():b9,d=b8==null?s.gcG(s):b8,c=b4==null?s.gii():b4,b=c4==null?s.geF():c4,a=c2==null?s.glt():c2,a0=a4==null?s.cx:a4,a1=a7==null?s.cy:a7,a2=a3==null?s.db:a3 +return A.Ie(a2,a0,q,l,a1,i,p,g,f,h,j,c,o,k,n,d,e,c0==null?s.ghn():c0,m,a,r,b)}, +wH(a){return this.TP(null,null,null,null,null,null,null,null,null,null,null,null,null,a,null,null,null,null,null,null,null,null)}, +a87(a,b,c){return this.TP(null,null,null,null,null,null,a,null,b,null,null,null,c,null,null,null,null,null,null,null,null,null)}, +cU(a4){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2=this,a3=a2.ghC() +if(a3==null)a3=a4.a +s=a2.gbY(a2) +if(s==null)s=a4.b +r=a2.geW() +if(r==null)r=a4.c +q=a2.gcw() +if(q==null)q=a4.d +p=a2.gbR(a2) +if(p==null)p=a4.e +o=a2.gc9() +if(o==null)o=a4.f +n=a2.gfl(a2) +if(n==null)n=a4.r +m=a2.gdE(a2) +if(m==null)m=a4.w +l=a2.glf() +if(l==null)l=a4.x +k=a2.y +if(k==null)k=a4.y +j=a2.gld() +if(j==null)j=a4.z +i=a2.Q +if(i==null)i=a4.Q +h=a2.gj8() +if(h==null)h=a4.as +g=a2.geP() +if(g==null)g=a4.at +f=a2.gcG(a2) +if(f==null)f=a4.ax +e=a2.gii() +if(e==null)e=a4.ay +d=a2.geF() +if(d==null)d=a4.ch +c=a2.glt() +if(c==null)c=a4.CW +b=a2.cx +if(b==null)b=a4.cx +a=a2.cy +if(a==null)a=a4.cy +a0=a2.db +if(a0==null)a0=a4.db +a1=a2.ghn() +return a2.TP(a0,b,s,n,a,k,r,i,h,j,l,e,q,m,p,f,g,a1==null?a4.dx:a1,o,c,a3,d)}, +gv(a){var s=this +return A.dt([s.ghC(),s.gbY(s),s.geW(),s.gcw(),s.gbR(s),s.gc9(),s.gfl(s),s.gdE(s),s.glf(),s.y,s.gld(),s.Q,s.gj8(),s.geP(),s.gcG(s),s.gii(),s.geF(),s.glt(),s.cx,s.cy,s.db,s.ghn()])}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.a1(b)!==A.o(s))return!1 +return b instanceof A.cp&&b.ghC()==s.ghC()&&J.i(b.gbY(b),s.gbY(s))&&J.i(b.geW(),s.geW())&&J.i(b.gcw(),s.gcw())&&b.gbR(b)==s.gbR(s)&&b.gc9()==s.gc9()&&b.gfl(b)==s.gfl(s)&&b.gdE(b)==s.gdE(s)&&b.glf()==s.glf()&&b.y==s.y&&b.gld()==s.gld()&&b.Q==s.Q&&b.gj8()==s.gj8()&&b.geP()==s.geP()&&b.gcG(b)==s.gcG(s)&&J.i(b.gii(),s.gii())&&J.i(b.geF(),s.geF())&&b.glt()==s.glt()&&J.i(b.cx,s.cx)&&b.cy==s.cy&&J.i(b.db,s.db)&&b.ghn()==s.ghn()}, +ghC(){return this.a}, +gbY(a){return this.b}, +geW(){return this.c}, +gcw(){return this.d}, +gbR(a){return this.e}, +gc9(){return this.f}, +gfl(a){return this.r}, +gdE(a){return this.w}, +glf(){return this.x}, +gld(){return this.z}, +gj8(){return this.as}, +geP(){return this.at}, +gcG(a){return this.ax}, +gii(){return this.ay}, +geF(){return this.ch}, +glt(){return this.CW}, +ghn(){return this.dx}} +A.aho.prototype={ +L(a){var s,r=this,q=r.a,p=q==null?null:q.L(a) +q=r.b +s=q==null?null:q.L(a) +q=p==null +if(q&&s==null)return null +if(q){q=s.a +return A.bn(new A.b9(A.K(0,q.gk(q)>>>16&255,q.gk(q)>>>8&255,q.gk(q)&255),0,B.M,-1),s,r.c)}if(s==null){q=p.a +return A.bn(p,new A.b9(A.K(0,q.gk(q)>>>16&255,q.gk(q)>>>8&255,q.gk(q)&255),0,B.M,-1),r.c)}return A.bn(p,s,r.c)}, +$ibN:1} +A.adM.prototype={} +A.If.prototype={ +a8(){return new A.PW(null,null,B.m)}} +A.PW.prototype={ +V8(){this.a7(new A.b1m())}, +gho(){var s=this.a.z +if(s==null){s=this.r +s.toString}return s}, +Fb(){var s,r=this +if(r.a.z==null)r.r=A.bjc(null) +s=r.gho() +s.iI(0,B.o,!(r.a.c!=null||!1)) +r.gho().P(0,r.gxc())}, +aR(){this.b5() +this.Fb()}, +aY(a){var s,r=this +r.br(a) +s=a.z +if(r.a.z!=s){if(s!=null)s.J(0,r.gxc()) +if(r.a.z!=null){s=r.r +if(s!=null){s.ah$=$.b5() +s.ak$=0}r.r=null}r.Fb()}s=r.a.c!=null||!1 +if(s!==(a.c!=null||!1)){s=r.gho() +s.iI(0,B.o,!(r.a.c!=null||!1)) +if(!(r.a.c!=null||!1))r.gho().iI(0,B.K,!1)}}, +m(){var s,r=this +r.gho().J(0,r.gxc()) +s=r.r +if(s!=null){s.ah$=$.b5() +s.ak$=0}s=r.d +if(s!=null)s.m() +r.akt()}, +A(c7){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=this,c3=null,c4=c2.a,c5=new A.b1j(c4.r,c4.Gh(c7),c2.a.t5(c7)),c6=new A.b1k(c2,c5) +c4=t.PM +s=c6.$1$1(new A.b0X(),c4) +r=c6.$1$1(new A.b0Y(),t.p8) +q=t.MH +p=c6.$1$1(new A.b0Z(),q) +o=c6.$1$1(new A.b19(),q) +n=c6.$1$1(new A.b1c(),q) +m=c6.$1$1(new A.b1d(),q) +l=c6.$1$1(new A.b1e(),t.pc) +k=t.tW +j=c6.$1$1(new A.b1f(),k) +i=c6.$1$1(new A.b1g(),k) +h=c6.$1$1(new A.b1h(),k) +g=c6.$1$1(new A.b1i(),q) +f=c6.$1$1(new A.b1_(),c4) +e=c6.$1$1(new A.b10(),t.oI) +d=c6.$1$1(new A.b11(),t.KX) +c=c5.$1$1(new A.b12(),t.X3) +b=c5.$1$1(new A.b13(),t.Oc) +a=c5.$1$1(new A.b14(),t.Tu) +a0=c5.$1$1(new A.b15(),t.y) +a1=c5.$1$1(new A.b16(),t.pC) +a2=new A.l(c.a,c.b).au(0,4) +a3=c5.$1$1(new A.b17(),t.Ya) +c4=j.a +q=j.b +a4=c.L0(new A.aL(c4,h.a,q,h.b)) +if(i!=null){a5=a4.bI(i) +c4=a5.a +if(isFinite(c4))a4=a4.TO(c4,c4) +c4=a5.b +if(isFinite(c4))a4=a4.aGi(c4,c4)}a6=a2.b +c4=a2.a +a7=Math.max(0,c4) +a8=l.G(0,new A.aK(a7,a6,a7,a6)).hs(0,B.a4,B.py) +if(a.a>0){q=c2.e +if(q!=null){k=c2.f +if(k!=null)if(q!==s)if(k.gk(k)!==p.gk(p)){q=c2.f +q=(q.gk(q)>>>24&255)/255===1&&(p.gk(p)>>>24&255)/255<1&&s===0}else q=!1 +else q=!1 +else q=!1}else q=!1}else q=!1 +if(q){q=c2.d +if(!J.i(q==null?c3:q.e,a)){q=c2.d +if(q!=null)q.m() +q=A.bw(B.z,c3,a,0,c3,1,c3,c2) +q.cL() +k=q.eo$ +k.b=!0 +k.a.push(new A.b18(c2)) +c2.d=q}p=c2.f +c2.d.sk(0,0) +c2.d.bS(0)}c2.e=s +c2.f=p +s.toString +q=r==null?c3:r.co(o) +k=d.qB(e) +a9=p==null?B.fo:B.nU +b0=c2.a +b1=b0.w +b2=b0.c +b3=b0.d +b4=b0.e +b5=b0.x +b6=b2!=null||!1 +b0=b0.f +b7=d.qB(e) +b8=c2.gho() +b9=g==null?o:g +a1.toString +c0=c2.a +a9=A.hA(a,!0,c3,A.jE(!1,c3,b6,A.mP(new A.b8(a8,new A.e5(a1,1,1,c0.as,c3),c3),new A.cX(f,c3,c3,c3,c3,b9,c3,c3)),b7,a0,c3,b5,B.u,c3,new A.aij(new A.b1a(c5)),b0,c3,b4,b3,b2,c3,c3,new A.bc(new A.b1b(c5),t.U),c3,c3,a3,b8),b1,p,s,c3,n,k,m,q,a9) +switch(b.a){case 0:c1=new A.V(48+c4,48+a6) +break +case 1:c1=B.x +break +default:c1=c3}c4=c0.c!=null||!1 +return new A.bu(A.bI(c3,c3,c3,c3,c3,!0,c3,c3,c3,c3,c4,c3,c3,c3,c3,c3,c3,c3,c3,c3,c3,c3,c3,c3,c3,c3,c3,c3,c3,c3,c3,c3,c3,c3,c3,c3,c3,c3,c3,c3,c3,c3,c3,c3,c3,c3,c3,c3,c3,c3,c3,c3,c3,c3,c3,c3,c3,c3),!0,!1,!1,!1,new A.agY(c1,new A.ew(a4,a9,c3),c3),c3)}, +$iaN:1} +A.b1m.prototype={ +$0(){}, +$S:0} +A.b1j.prototype={ +$1$1(a,b){var s=a.$1(this.a),r=a.$1(this.b),q=a.$1(this.c),p=s==null?r:s +return p==null?q:p}, +$1(a){return this.$1$1(a,t.z)}, +$S:693} +A.b1k.prototype={ +$1$1(a,b){return this.b.$1$1(new A.b1l(this.a,a,b),b)}, +$1(a){return this.$1$1(a,t.z)}, +$S:697} +A.b1l.prototype={ +$1(a){var s=this.b.$1(a) +return s==null?null:s.L(this.a.gho().a)}, +$S(){return this.c.h("0?(cp?)")}} +A.b0X.prototype={ +$1(a){return a==null?null:a.gfl(a)}, +$S:231} +A.b0Y.prototype={ +$1(a){return a==null?null:a.ghC()}, +$S:709} +A.b0Z.prototype={ +$1(a){return a==null?null:a.gbY(a)}, +$S:94} +A.b19.prototype={ +$1(a){return a==null?null:a.geW()}, +$S:94} +A.b1c.prototype={ +$1(a){return a==null?null:a.gbR(a)}, +$S:94} +A.b1d.prototype={ +$1(a){return a==null?null:a.gc9()}, +$S:94} +A.b1e.prototype={ +$1(a){return a==null?null:a.gdE(a)}, +$S:712} +A.b1f.prototype={ +$1(a){return a==null?null:a.glf()}, +$S:138} +A.b1g.prototype={ +$1(a){return a==null?null:a.y}, +$S:138} +A.b1h.prototype={ +$1(a){return a==null?null:a.gld()}, +$S:138} +A.b1i.prototype={ +$1(a){return a==null?null:a.Q}, +$S:94} +A.b1_.prototype={ +$1(a){return a==null?null:a.gj8()}, +$S:231} +A.b10.prototype={ +$1(a){return a==null?null:a.geP()}, +$S:717} +A.b11.prototype={ +$1(a){return a==null?null:a.gcG(a)}, +$S:718} +A.b1a.prototype={ +$1(a){return this.a.$1$1(new A.b0V(a),t.Pb)}, +$S:719} +A.b0V.prototype={ +$1(a){var s +if(a==null)s=null +else{s=a.gii() +s=s==null?null:s.L(this.a)}return s}, +$S:722} +A.b1b.prototype={ +$1(a){return this.a.$1$1(new A.b0U(a),t.n8)}, +$S:27} +A.b0U.prototype={ +$1(a){var s +if(a==null)s=null +else{s=a.gcw() +s=s==null?null:s.L(this.a)}return s}, +$S:725} +A.b12.prototype={ +$1(a){return a==null?null:a.geF()}, +$S:731} +A.b13.prototype={ +$1(a){return a==null?null:a.glt()}, +$S:733} +A.b14.prototype={ +$1(a){return a==null?null:a.cx}, +$S:740} +A.b15.prototype={ +$1(a){return a==null?null:a.cy}, +$S:743} +A.b16.prototype={ +$1(a){return a==null?null:a.db}, +$S:750} +A.b17.prototype={ +$1(a){return a==null?null:a.ghn()}, +$S:758} +A.b18.prototype={ +$1(a){if(a===B.a5)this.a.a7(new A.b0W())}, +$S:9} +A.b0W.prototype={ +$0(){}, +$S:0} +A.aij.prototype={ +L(a){var s=this.a.$1(a) +s.toString +return s}, +gzR(){return"ButtonStyleButton_MouseCursor"}} +A.agY.prototype={ +aX(a){var s=new A.SK(this.e,null,A.aB(t.T)) +s.aW() +s.sbN(null) +return s}, +b4(a,b){b.sVS(this.e)}} +A.SK.prototype={ +sVS(a){if(this.C.l(0,a))return +this.C=a +this.a6()}, +c3(a){var s=this.E$ +if(s!=null)return Math.max(s.aB(B.ad,a,s.gbZ()),this.C.a) +return 0}, +bW(a){var s=this.E$ +if(s!=null)return Math.max(s.aB(B.aA,a,s.gcD()),this.C.b) +return 0}, +bV(a){var s=this.E$ +if(s!=null)return Math.max(s.aB(B.ak,a,s.gc2()),this.C.a) +return 0}, +c1(a){var s=this.E$ +if(s!=null)return Math.max(s.aB(B.br,a,s.gd4()),this.C.b) +return 0}, +a_T(a,b){var s,r,q=this.E$ +if(q!=null){s=b.$2(q,a) +q=s.a +r=this.C +return a.bI(new A.V(Math.max(q,r.a),Math.max(s.b,r.b)))}return B.x}, +ds(a){return this.a_T(a,A.rI())}, +cj(){var s,r,q,p=this +p.id=p.a_T(t.k.a(A.H.prototype.ga4.call(p)),A.vE()) +s=p.E$ +if(s!=null){s=s.b +s.toString +t.q.a(s) +r=p.gq(p) +q=p.E$ +s.sc6(0,B.X.wx(t.EP.a(r.a2(0,q.gq(q)))))}}, +dc(a,b){var s,r +if(this.qb(a,b))return!0 +s=this.E$ +r=s.gq(s).mg(B.i) +return a.DZ(new A.b97(this,r),r,A.aIF(r))}} +A.b97.prototype={ +$2(a,b){return this.a.E$.dc(a,this.b)}, +$S:16} +A.UX.prototype={ +cn(){this.d3() +this.cT() +this.es()}, +m(){var s=this,r=s.b_$ +if(r!=null)r.J(0,s.gej()) +s.b_$=null +s.aZ()}} +A.au6.prototype={ +K(){return"ButtonTextTheme."+this.b}} +A.au5.prototype={ +K(){return"ButtonBarLayoutBehavior."+this.b}} +A.XO.prototype={ +gdE(a){var s=this.e +if(s!=null)return s +switch(this.c.a){case 0:case 1:return B.cU +case 2:return B.S5}}, +gcG(a){var s=this.f +if(s!=null)return s +switch(this.c.a){case 0:case 1:return B.Je +case 2:return B.es}}, +l(a,b){var s=this +if(b==null)return!1 +if(J.a1(b)!==A.o(s))return!1 +return b instanceof A.XO&&b.c===s.c&&b.a===s.a&&b.b===s.b&&b.gdE(b).l(0,s.gdE(s))&&b.gcG(b).l(0,s.gcG(s))&&J.i(b.w,s.w)&&J.i(b.y,s.y)&&J.i(b.z,s.z)&&J.i(b.at,s.at)&&b.ax==s.ax}, +gv(a){var s=this +return A.X(s.c,s.a,s.b,s.gdE(s),s.gcG(s),!1,s.w,s.x,s.y,s.z,s.Q,s.as,s.at,s.ax,B.a,B.a,B.a,B.a,B.a,B.a)}} +A.adN.prototype={} +A.XW.prototype={ +A(a){var s,r,q,p,o,n,m=this,l=null,k=A.r(a).y2,j=A.r(a).y?new A.b1r(a,B.l,l,l,l,1,B.e7,B.Jf):new A.b1q(a,B.l,l,l,l,1,B.e7,B.es),i=m.y +if(i==null)i=k.f +if(i==null){i=j.f +i.toString}s=m.c +if(s==null)s=k.b +if(s==null)s=j.ga5(j) +r=k.c +if(r==null)r=j.gbR(j) +q=k.d +if(q==null)q=j.gc9() +p=k.e +if(p==null){p=j.e +p.toString}o=m.r +if(o==null)o=k.r +if(o==null)o=j.r +n=m.x +if(n==null)n=k.a +if(n==null){n=j.a +n.toString}i=A.cP(l,A.hA(B.S,!0,l,new A.bu(A.bI(l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l),!1,!1,!1,!1,m.Q,l),n,s,p,l,r,o,q,l,B.em),B.l,l,l,l,l,l,i,l,l) +return new A.bu(A.bI(l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l,l),!0,!1,!1,!1,i,l)}} +A.b1q.prototype={ +ga5(a){return A.r(this.w).at}, +gbR(a){return A.r(this.w).k2}} +A.b1r.prototype={ +gPq(){var s,r=this,q=r.x +if(q===$){s=A.r(r.w) +r.x!==$&&A.am() +q=r.x=s.ax}return q}, +ga5(a){return this.gPq().cy}, +gbR(a){var s=this.gPq().fy +return s==null?B.v:s}, +gc9(){var s=this.gPq(),r=s.k3 +return r==null?s.b:r}} +A.AF.prototype={ +gv(a){var s=this +return A.X(s.a,s.ga5(s),s.gbR(s),s.gc9(),s.e,s.f,s.r,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.a1(b)!==A.o(s))return!1 +return b instanceof A.AF&&b.a==s.a&&J.i(b.ga5(b),s.ga5(s))&&J.i(b.gbR(b),s.gbR(s))&&J.i(b.gc9(),s.gc9())&&b.e==s.e&&J.i(b.f,s.f)&&J.i(b.r,s.r)}, +ga5(a){return this.b}, +gbR(a){return this.c}, +gc9(){return this.d}} +A.adP.prototype={} +A.b1N.prototype={ +K(){return"_CheckboxType."+this.b}} +A.It.prototype={ +a8(){return new A.ae1(new A.ae_($.b5()),$,$,$,$,$,$,$,$,$,null,!1,!1,null,null,B.m)}} +A.ae1.prototype={ +aR(){this.akw() +this.e=this.a.c}, +aY(a){var s,r=this +r.br(a) +s=a.c +if(s!=r.a.c){r.e=s +r.E1()}}, +m(){this.d.m() +this.akv()}, +gdT(){return this.a.d}, +gxM(){return this.a.x}, +gk(a){return this.a.c}, +ga6k(){return new A.bc(new A.b1L(this),t.U)}, +yZ(a,b){if(a instanceof A.RO)return A.cg(a,b,t.oI) +if(!b.n(0,B.B))return a +return null}, +A(b0){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,a9=null +switch(a8.a.dx.a){case 0:break +case 1:switch(A.r(b0).r.a){case 0:case 1:case 3:case 5:break +case 2:case 4:s=a8.a +r=s.c +q=s.x +return new A.IN(r,s.d,s.f,s.w,q,a9,a9,!1,s.cx,s.CW,a9)}break}p=A.bom(b0) +o=A.r(b0).y?new A.b1C(A.r(b0),A.r(b0).ax,a9,a9,a9,a9,a9,a9,a9,a9,a9):new A.b1y(A.r(b0),A.r(b0).ax,a9,a9,a9,a9,a9,a9,a9,a9,a9) +n=a8.a.y +m=o.geF() +switch(n.a){case 0:l=B.dV +break +case 1:l=B.oN +break +default:l=a9}l=l.T(0,new A.l(m.a,m.b).au(0,4)) +k=a8.gfA() +k.G(0,B.B) +j=a8.gfA() +j.F(0,B.B) +a8.a.toString +i=a8.ga6k().a.$1(k) +if(i==null){s=p.b +i=s==null?a9:s.L(k)}s=i==null +if(s){r=o.gfn().a.$1(k) +r.toString +h=r}else h=i +a8.a.toString +g=a8.ga6k().a.$1(j) +if(g==null){r=p.b +g=r==null?a9:r.L(j)}r=g==null +if(r){q=o.gfn().a.$1(j) +q.toString +f=q}else f=g +q=a8.yZ(a8.a.cx,k) +e=q==null?a8.yZ(p.x,k):q +if(e==null){q=a8.yZ(o.geP(),k) +q.toString +e=q}q=a8.yZ(a8.a.cx,j) +d=q==null?a8.yZ(p.x,j):q +if(d==null){q=a8.yZ(o.geP(),j) +q.toString +d=q}c=a8.gfA() +c.G(0,B.y) +a8.a.toString +q=p.d +b=q==null?a9:q.L(c) +a=b +if(a==null){b=o.gcw().a.$1(c) +b.toString +a=b}a0=a8.gfA() +a0.G(0,B.A) +a8.a.toString +b=q==null?a9:q.L(a0) +a1=b +if(a1==null){b=o.gcw().a.$1(a0) +b.toString +a1=b}k.G(0,B.K) +a8.a.toString +b=q==null?a9:q.L(k) +if(b==null){s=s?a9:A.K(31,i.gk(i)>>>16&255,i.gk(i)>>>8&255,i.gk(i)&255) +a2=s}else a2=b +if(a2==null){s=o.gcw().a.$1(k) +s.toString +a2=s}j.G(0,B.K) +a8.a.toString +s=q==null?a9:q.L(j) +if(s==null){s=r?a9:A.K(31,g.gk(g)>>>16&255,g.gk(g)>>>8&255,g.gk(g)&255) +a3=s}else a3=s +if(a3==null){s=o.gcw().a.$1(j) +s.toString +a3=s}if(a8.qK$!=null){a1=a8.gfA().n(0,B.B)?a2:a3 +a=a8.gfA().n(0,B.B)?a2:a3}a8.a.toString +a4=a8.gfA() +s=a8.a.w +r=p.c +s=r==null?a9:r.L(a4) +a5=s +if(a5==null){s=o.gqz().L(a4) +s.toString +a5=s}a8.a.toString +a6=p.e +if(a6==null)a6=o.giO() +s=a8.a +r=s.db +q=s.c +s=s.x?q==null:a9 +b=a8.d +a7=a8.mP$ +a7===$&&A.b() +b.scQ(0,a7) +a7=a8.uY$ +a7===$&&A.b() +b.sWC(a7) +a7=a8.v_$ +a7===$&&A.b() +b.sWE(a7) +a7=a8.uZ$ +a7===$&&A.b() +b.sWF(a7) +b.sVi(a3) +b.sWD(a2) +b.sqN(a1) +b.ska(a) +b.siO(a6) +b.sAc(a8.qK$) +b.sqS(a8.gfA().n(0,B.y)) +b.sVw(a8.gfA().n(0,B.A)) +b.suv(h) +b.sAO(f) +b.sqz(a5) +b.sk(0,a8.a.c) +b.sWt(a8.e) +a8.a.toString +a7=p.w +b.scG(0,a7==null?o.gcG(o):a7) +b.saE1(e) +b.saJS(d) +b=a8.a7j(!1,a9,new A.bc(new A.b1M(a8,p),t.bN),b,l) +return new A.bu(A.bI(a9,a9,a9,a9,a9,a9,q===!0,a9,a9,a9,a9,a9,a9,a9,a9,a9,a9,a9,a9,a9,a9,r,a9,a9,a9,s,a9,a9,a9,a9,a9,a9,a9,a9,a9,a9,a9,a9,a9,a9,a9,a9,a9,a9,a9,a9,a9,a9,a9,a9,a9,a9,a9,a9,a9,a9,a9,a9),!1,!1,!1,!1,b,a9)}, +$iaN:1} +A.b1L.prototype={ +$1(a){if(a.n(0,B.o))return null +if(a.n(0,B.B))return this.a.a.f +return null}, +$S:27} +A.b1M.prototype={ +$1(a){var s=A.cg(this.a.a.e,a,t.WV) +if(s==null)s=null +return s==null?B.cN.L(a):s}, +$S:133} +A.ae_.prototype={ +sqz(a){if(J.i(this.db,a))return +this.db=a +this.ag()}, +sk(a,b){if(this.dx==b)return +this.dx=b +this.ag()}, +sWt(a){if(this.dy==a)return +this.dy=a +this.ag()}, +scG(a,b){if(J.i(this.fr,b))return +this.fr=b +this.ag()}, +saE1(a){if(J.i(this.fx,a))return +this.fx=a +this.ag()}, +saJS(a){if(J.i(this.fy,a))return +this.fy=a +this.ag()}, +a2X(a,b){var s=1-Math.abs(b-0.5)*2,r=18-s*2,q=a.a+s,p=a.b+s +return new A.I(q,p,q+r,p+r)}, +a_J(a){var s,r=this.e +if(a>=0.25)r.toString +else{s=this.f +s.toString +r.toString +r=A.W(s,r,a*4) +r.toString}return r}, +Ph(a,b,c,d){a.dV(this.fr.kv(b),c) +this.fr.qB(d).aD(a,b)}, +PS(a,b,c,d){var s,r=$.as().cZ(),q=b.a,p=b.b,o=q+2.6999999999999997,n=p+8.1 +if(c<0.5){s=A.lT(B.aaD,B.Fq,c*2) +s.toString +r.fo(0,o,n) +r.d7(0,q+s.a,p+s.b)}else{s=A.lT(B.Fq,B.aaS,(c-0.5)*2) +s.toString +r.fo(0,o,n) +r.d7(0,q+7.2,p+12.6) +r.d7(0,q+s.a,p+s.b)}a.dV(r,d)}, +PT(a,b,c,d){var s,r=A.lT(B.aaF,B.Fp,1-c) +r.toString +s=A.lT(B.Fp,B.aav,c) +s.toString +a.jF(b.T(0,r),b.T(0,s),d)}, +aD(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g=this +g.Wn(a,b.mg(B.i)) +s=$.as() +r=s.bn() +q=g.db +q.toString +r.sa5(0,q) +r.scK(0,B.aj) +r.sfB(2) +p=t.EP.a(b.i1(0,2).a2(0,B.oM.i1(0,2))) +q=g.a.a +o=q.gaL(q) +q=o===B.aY||o===B.a5 +n=g.a +m=q?n.gk(n):1-n.gk(n) +if(g.dy===!1||g.dx===!1){l=g.dx===!1?1-m:m +k=g.a2X(p,l) +j=s.bn() +j.sa5(0,g.a_J(l)) +s=g.fx +if(l<=0.5){q=g.fy +q.toString +s.toString +g.Ph(a,k,j,A.bn(q,s,l))}else{s.toString +g.Ph(a,k,j,s) +i=(l-0.5)*2 +if(g.dy==null||g.dx==null)g.PT(a,p,i,r) +else g.PS(a,p,i,r)}}else{k=g.a2X(p,1) +j=s.bn() +j.sa5(0,g.a_J(1)) +s=g.fx +s.toString +g.Ph(a,k,j,s) +if(m<=0.5){i=1-m*2 +s=g.dy +if(s===!0)g.PS(a,p,i,r) +else g.PT(a,p,i,r)}else{h=(m-0.5)*2 +s=g.dx +if(s===!0)g.PS(a,p,h,r) +else g.PT(a,p,h,r)}}}} +A.b1y.prototype={ +geP(){return A.b6s(new A.b1B(this))}, +gfn(){return new A.bc(new A.b1z(this),t.h2)}, +gqz(){return new A.bE(B.n,t.h9)}, +gcw(){return new A.bc(new A.b1A(this),t.U)}, +giO(){return 20}, +gjJ(){return this.y.e}, +geF(){return this.y.z}, +gcG(a){return B.ach}} +A.b1B.prototype={ +$1(a){if(a.n(0,B.o)){if(a.n(0,B.B))return B.lS +return new A.b9(this.a.y.ch,2,B.M,-1)}if(a.n(0,B.B))return B.lS +return new A.b9(this.a.y.k4,2,B.M,-1)}, +$S:89} +A.b1z.prototype={ +$1(a){if(a.n(0,B.o)){if(a.n(0,B.B))return this.a.y.ch +return B.u}if(a.n(0,B.B))return this.a.z.f +return B.u}, +$S:4} +A.b1A.prototype={ +$1(a){var s,r +if(a.n(0,B.K)){s=this.a.gfn().a.$1(a) +r=J.bK(s) +return A.K(31,r.gk(s)>>>16&255,r.gk(s)>>>8&255,r.gk(s)&255)}if(a.n(0,B.A))return this.a.y.dx +if(a.n(0,B.y))return this.a.y.cx +return B.u}, +$S:4} +A.b1C.prototype={ +geP(){return A.b6s(new A.b1G(this))}, +gfn(){return new A.bc(new A.b1E(this),t.h2)}, +gqz(){return new A.bc(new A.b1D(this),t.h2)}, +gcw(){return new A.bc(new A.b1F(this),t.h2)}, +giO(){return 20}, +gjJ(){return this.y.e}, +geF(){return this.y.z}, +gcG(a){return B.Je}} +A.b1G.prototype={ +$1(a){var s,r,q=this +if(a.n(0,B.o)){if(a.n(0,B.B))return B.lS +s=q.a.z.db.a +return new A.b9(A.K(97,s>>>16&255,s>>>8&255,s&255),2,B.M,-1)}if(a.n(0,B.B))return B.LU +if(a.n(0,B.cm))return new A.b9(q.a.z.at,2,B.M,-1) +if(a.n(0,B.K))return new A.b9(q.a.z.db,2,B.M,-1) +if(a.n(0,B.A))return new A.b9(q.a.z.db,2,B.M,-1) +if(a.n(0,B.y))return new A.b9(q.a.z.db,2,B.M,-1) +s=q.a.z +r=s.dy +return new A.b9(r==null?s.db:r,2,B.M,-1)}, +$S:89} +A.b1E.prototype={ +$1(a){var s +if(a.n(0,B.o)){if(a.n(0,B.B)){s=this.a.z.db.a +return A.K(97,s>>>16&255,s>>>8&255,s&255)}return B.u}if(a.n(0,B.B)){if(a.n(0,B.cm))return this.a.z.at +return this.a.z.b}return B.u}, +$S:4} +A.b1D.prototype={ +$1(a){if(a.n(0,B.o)){if(a.n(0,B.B))return this.a.z.cy +return B.u}if(a.n(0,B.B)){if(a.n(0,B.cm))return this.a.z.ax +return this.a.z.c}return B.u}, +$S:4} +A.b1F.prototype={ +$1(a){var s,r=this +if(a.n(0,B.cm)){if(a.n(0,B.K)){s=r.a.z.at.a +return A.K(31,s>>>16&255,s>>>8&255,s&255)}if(a.n(0,B.A)){s=r.a.z.at.a +return A.K(20,s>>>16&255,s>>>8&255,s&255)}if(a.n(0,B.y)){s=r.a.z.at.a +return A.K(31,s>>>16&255,s>>>8&255,s&255)}}if(a.n(0,B.B)){if(a.n(0,B.K)){s=r.a.z.db.a +return A.K(31,s>>>16&255,s>>>8&255,s&255)}if(a.n(0,B.A)){s=r.a.z.b +return A.K(20,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.n(0,B.y)){s=r.a.z.b +return A.K(31,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}return B.u}if(a.n(0,B.K)){s=r.a.z.b +return A.K(31,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.n(0,B.A)){s=r.a.z.db.a +return A.K(20,s>>>16&255,s>>>8&255,s&255)}if(a.n(0,B.y)){s=r.a.z.db.a +return A.K(31,s>>>16&255,s>>>8&255,s&255)}return B.u}, +$S:4} +A.UZ.prototype={ +cn(){this.d3() +this.cT() +this.es()}, +m(){var s=this,r=s.b_$ +if(r!=null)r.J(0,s.gej()) +s.b_$=null +s.aZ()}} +A.V_.prototype={ +aR(){var s,r=this,q=null +r.b5() +s=A.bw(B.z,q,B.S,0,q,1,r.a.c===!1?0:1,r) +r.k9$=s +r.mP$=A.c_(B.bp,s,B.cx) +s=A.bw(B.z,q,B.b_,0,q,1,q,r) +r.oK$=s +r.uY$=A.c_(B.a3,s,q) +s=A.bw(B.z,q,B.e5,0,q,1,r.pF$||r.pE$?1:0,r) +r.tc$=s +r.uZ$=A.c_(B.a3,s,q) +s=A.bw(B.z,q,B.e5,0,q,1,r.pF$||r.pE$?1:0,r) +r.td$=s +r.v_$=A.c_(B.a3,s,q)}, +m(){var s=this,r=s.k9$ +r===$&&A.b() +r.m() +r=s.oK$ +r===$&&A.b() +r.m() +r=s.tc$ +r===$&&A.b() +r.m() +r=s.td$ +r===$&&A.b() +r.m() +s.aku()}} +A.b1O.prototype={ +K(){return"_CheckboxType."+this.b}} +A.Iu.prototype={ +auv(){var s,r=this +switch(r.c){case!1:r.d.$1(!0) +break +case!0:s=r.d +s.toString +s.$1(r.id&&null) +break +case null:case void 0:r.d.$1(!1) +break}}, +A(a){var s,r,q,p,o,n,m,l,k=this,j=null +switch(0){case 0:s=new A.It(k.c,k.d,j,k.f,j,j,k.id,B.kv,j,j,j,!1,j,j,!1,j,B.anx,j) +break}switch(k.fy.a){case 0:r=j +q=s +break +case 1:case 2:r=s +q=j +break +default:r=j +q=r}p=A.r(a) +o=A.bom(a) +n=k.f +if(n==null){n=o.b +n=n==null?j:n.L(A.aY(t.ui)) +m=n}else m=n +if(m==null)m=p.ax.f +n=k.d!=null +l=n?k.gauu():j +return new A.u8(A.bH(!1,j,k.fr,j,n,j,j,!1,j,q,j,j,l,!1,m,j,j,k.db,j,k.cy,r,j),j)}} +A.AK.prototype={ +gv(a){var s=this +return A.X(s.a,s.gfn(),s.gqz(),s.gcw(),s.giO(),s.gjJ(),s.geF(),s.gcG(s),s.geP(),B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.a1(b)!==A.o(s))return!1 +return b instanceof A.AK&&b.gfn()==s.gfn()&&b.gqz()==s.gqz()&&b.gcw()==s.gcw()&&b.giO()==s.giO()&&b.gjJ()==s.gjJ()&&J.i(b.geF(),s.geF())&&J.i(b.gcG(b),s.gcG(s))&&J.i(b.geP(),s.geP())}, +gfn(){return this.b}, +gqz(){return this.c}, +gcw(){return this.d}, +giO(){return this.e}, +gjJ(){return this.f}, +geF(){return this.r}, +gcG(a){return this.w}, +geP(){return this.x}} +A.ae2.prototype={} +A.AM.prototype={ +A(a){var s=null +return A.brw(!1,s,B.e0,this.as,s,B.l,s,s,s,s,s,s,s,s,s,!0,this.d,s,this.e,s,s,s,s,s,!1,s,s,s,s,!0,s,s,!1,s,!0,s)}} +A.MA.prototype={ +a8(){return new A.St(null,null,A.aY(t.ui),B.m)}} +A.St.prototype={ +gqy(){var s=this.a +if(s.ay)if(s.RG)s=s.Q!=null +else s=!1 +else s=!1 +return s}, +aR(){var s,r=this,q=null +r.b5() +if(!r.a.ay)r.ux(B.o) +else r.re(B.o) +if(r.a.ax)r.ux(B.B) +else r.re(B.B) +s=A.bw(B.z,q,B.RD,0,q,1,r.a.ax?1:0,r) +r.d=s +r.Q=A.c_(B.a3,s,q) +s=r.a +r.e=A.bw(B.z,q,B.cT,0,q,1,s.d!=null||s.ax?1:0,r) +r.a.toString +r.f=A.bw(B.z,q,B.cT,0,q,1,0,r) +r.r=A.bw(B.z,q,B.f1,0,q,1,r.a.ay?1:0,r) +r.w=A.c_(new A.dO(0.23076923076923073,1,B.a3),r.d,new A.dO(0.7435897435897436,1,B.a3)) +r.y=A.c_(B.a3,r.f,q) +r.x=A.c_(B.a3,r.e,new A.dO(0.4871794871794872,1,B.a3)) +r.z=A.c_(B.a3,r.r,q)}, +m(){var s=this,r=s.d +r===$&&A.b() +r.m() +r=s.e +r===$&&A.b() +r.m() +r=s.f +r===$&&A.b() +r.m() +r=s.r +r===$&&A.b() +r.m() +s.akV()}, +anZ(a){var s=this +if(!s.gqy())return +s.ux(B.K) +s.a7(new A.b8x(s))}, +anX(){var s=this +if(!s.gqy())return +s.re(B.K) +s.a7(new A.b8w(s))}, +anV(){var s,r,q=this +if(!q.gqy())return +q.re(B.K) +q.a7(new A.b8y(q)) +s=q.a +r=s.Q +if(r!=null)r.$1(!s.ax) +q.a.toString}, +WR(a,b,c,d,e){var s=this.te$,r=new A.agT(b,a,e,d).L(s) +if(r==null)s=c==null?null:c.L(s) +else s=r +return s}, +aNT(a,b,c){return this.WR(null,a,b,c,null)}, +aNS(a,b,c){return this.WR(a,b,c,null,null)}, +aNU(a,b,c){return this.WR(null,a,b,null,c)}, +aqN(a,b,c){var s,r,q,p,o,n=this,m=n.a +if(a.y){m.toString +m=b.a +s=n.aNT(m,c.ga5(c),b.d) +r=n.a +r=r.fy +if(r==null)r=b.b +q=n.aNS(r,m,c.ga5(c)) +r=n.a +r=r.CW +if(r==null)r=b.e +p=n.aNU(m,c.ga5(c),r) +r=n.r +r===$&&A.b() +r=new A.dk(s,q).a_(0,r.gk(r)) +m=n.Q +m===$&&A.b() +return new A.dk(r,p).a_(0,m.gk(m))}else{m.toString +r=b.d +if(r==null)r=a.ch +m=m.fy +if(m==null)m=b.b +if(m==null)m=a.cO.b +if(m==null)m=c.b +o=n.r +o===$&&A.b() +o=new A.dk(r,m).a_(0,o.gk(o)) +m=n.a.CW +if(m==null)m=b.e +if(m==null)m=a.cO.e +if(m==null)m=c.e +r=n.Q +r===$&&A.b() +return new A.dk(o,m).a_(0,r.gk(r))}}, +aY(a){var s=this +s.br(a) +if(a.ay!==s.a.ay)s.a7(new A.b8A(s)) +if(!J.i(a.d,s.a.d)||a.ax!==s.a.ax)s.a7(new A.b8B(s)) +if(a.ax!==s.a.ax)s.a7(new A.b8C(s)) +s.a.toString}, +aDP(a,b,c){if(!b||c==null)return a +return A.aYn(a,null,c,null,null)}, +amU(a,b,c,d){this.a.toString +return null}, +A(e1){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,d1,d2,d3,d4,d5,d6,d7,d8=this,d9=null,e0=A.cT(e1,B.bb) +e0=e0==null?d9:e0.c +e0=A.Br(B.bC,B.e6,A.S((e0==null?1:e0)-1,0,1)) +e0.toString +s=A.r(e1) +r=A.boq(e1) +q=r.CW +if(q==null)q=s.ax.a +p=d8.a +o=p.c +if(o==null)if(s.y){p=new A.b1P(e1,p.ay,d9,d9,d9,d9,d9,d9,d9,d9,d9,!0,d9,d9,d9,d9,B.Jh,d9,d9,d9,0,d9,d9) +o=p}else{p=q===B.am?B.mc:s.fr +n=s.p3.y +n.toString +m=q===B.aB?B.v:B.n +l=m.a +k=l>>>16&255 +j=l>>>8&255 +l&=255 +i=A.K(31,k,j,l) +h=A.K(222,k,j,l) +g=A.K(12,k,j,l) +f=A.K(61,k,j,l) +e=A.K(61,p.gk(p)>>>16&255,p.gk(p)>>>8&255,p.gk(p)&255) +d=n.co(A.K(222,p.gk(p)>>>16&255,p.gk(p)>>>8&255,p.gk(p)&255)) +l=A.bop(i,q,d9,d9,h,g,0,d9,d9,n.co(A.K(222,k,j,l)),B.e7,8,d,e,f,B.v,B.v,d9,!0,d9,d9) +o=l}c=A.eF(e1) +p=d8.te$ +n=t.oI +l=A.cg(d8.a.cy,p,n) +b=l==null?A.cg(r.at,p,n):l +if(b==null)b=A.cg(o.geP(),p,n) +n=t.KX +l=A.cg(d8.a.db,p,n) +if(l==null)l=A.cg(r.ax,p,n) +a=l==null?A.cg(o.ax,p,n):l +a=(a==null?B.fK:a).qB(b) +d8.a.toString +n=r.cx +a0=n==null?o.gfl(o):n +if(a0==null)a0=0 +d8.a.toString +n=r.cy +a1=n==null?o.gFX():n +if(a1==null)a1=0 +d8.a.toString +a2=r.r +if(a2==null)a2=o.gbR(o) +d8.a.toString +a3=r.w +if(a3==null)a3=o.gc9() +d8.a.toString +a4=r.x +if(a4==null)a4=o.x +a5=r.z +if(a5==null)a5=o.gzy() +a6=d8.a.p2 +a7=r.as +if(a7==null){n=o.gdE(o) +n.toString +a7=n}a8=r.ay +if(a8==null){n=o.ghR() +n.toString +a8=n}d8.a.toString +n=r.Q +a9=n==null?o.gAV():n +if(a9==null)a9=e0 +d8.a.toString +b0=r.db +if(b0==null)b0=o.gfI() +b1=a8.cU(d8.a.f) +b2=b1.co(A.cg(b1.b,p,t.MH)) +e0=b0!=null&&d8.a.d!=null +p=d8.a +if(e0){e0=p.d +e0.toString +b3=A.x9(e0,b0,d9)}else b3=p.d +e0=d8.gqy()&&d8.as?a1:a0 +p=d8.a +n=p.ax?a4:a2 +p=p.dx +l=d8.Ni(B.y) +k=d8.a +j=k.dy +k=k.ay +b4=d8.gqy()?d8.ganU():d9 +b5=d8.gqy()?d8.ganY():d9 +b6=d8.gqy()?d8.ganW():d9 +b7=d8.gqy()?d8.Ni(B.A):d9 +b8=d8.d +b8===$&&A.b() +b9=d8.r +b9===$&&A.b() +b9=A.a([b8,b9],t.Eo) +b8=d8.a +c0=b8.cx +c1=b8.Q +b8=A.fw(b8.e,d9,1,B.KH,!1,b2,B.b3,d9,B.aq) +c2=A.bnU(b3,B.cT,A.bw_(),d9,B.a3,B.Z,A.bw0()) +c3=A.bnU(d8.amU(e1,s,r,o),B.cT,A.bw_(),d9,B.a3,B.Z,A.bw0()) +c4=a7.L(c) +d8.a.toString +c5=s.z +c6=a9.L(c) +c7=d8.a.d +c8=d8.gqy() +c9=d8.a +d0=c9.ax +d1=d8.w +d1===$&&A.b() +d2=d8.z +d2===$&&A.b() +d3=d8.x +d3===$&&A.b() +d4=d8.y +d4===$&&A.b() +d5=A.hA(B.f1,!0,d9,A.jE(!1,d9,k,A.h1(new A.vg(b9),new A.b8z(d8,a,s,r,o),d8.aDP(new A.ae7(new A.ae6(c2,b8,c3,q,c4,c5,c6,c7!=null,a6,a5,c8),d0,c9.ay,d1,d3,d4,d2,c9.p4,d9),c1!=null,c0)),a,!0,d9,j,d9,d9,d9,l,d9,b7,d9,b4,b6,b5,d9,d9,d9,d9,d9),p,d9,e0,d9,n,a,a3,d9,B.cJ) +d8.a.toString +d6=new A.l(c5.a,c5.b).au(0,4) +e0=d8.a +e0.toString +switch(s.e.a){case 0:d7=new A.aL(48+d6.a,1/0,48+d6.b,1/0) +break +case 1:d7=B.eS +break +default:d7=d9}p=A.f1(d5,1,1) +n=e0.RG +l=n?d8.gqy():d9 +return new A.bu(A.bI(d9,d9,d9,d9,d9,n,d9,d9,d9,d9,l,d9,d9,d9,d9,d9,d9,d9,d9,d9,d9,d9,d9,d9,d9,d9,d9,d9,d9,d9,d9,d9,d9,d9,d9,d9,d9,d9,d9,d9,d9,d9,d9,d9,d9,d9,d9,d9,d9,e0.ax,d9,d9,d9,d9,d9,d9,d9,d9),!0,!1,!1,!1,new A.ae5(d7,p,d9),d9)}, +$iaN:1} +A.b8x.prototype={ +$0(){this.a.as=!0}, +$S:0} +A.b8w.prototype={ +$0(){this.a.as=!1}, +$S:0} +A.b8y.prototype={ +$0(){this.a.as=!1}, +$S:0} +A.b8A.prototype={ +$0(){var s,r=this.a +if(!r.a.ay)r.ux(B.o) +else r.re(B.o) +s=r.a.ay +r=r.r +if(s){r===$&&A.b() +r.bS(0)}else{r===$&&A.b() +r.d9(0)}}, +$S:0} +A.b8B.prototype={ +$0(){var s=this.a,r=s.a +r=r.d!=null||r.ax +s=s.e +if(r){s===$&&A.b() +s.bS(0)}else{s===$&&A.b() +s.d9(0)}}, +$S:0} +A.b8C.prototype={ +$0(){var s,r=this.a +if(r.a.ax)r.ux(B.B) +else r.re(B.B) +s=r.a.ax +r=r.d +if(s){r===$&&A.b() +r.bS(0)}else{r===$&&A.b() +r.d9(0)}}, +$S:0} +A.b8z.prototype={ +$2(a,b){var s=this +return A.bq9(b,new A.hH(s.a.aqN(s.c,s.d,s.e),null,null,null,s.b))}, +$S:768} +A.agT.prototype={ +L(a){var s=this,r=s.a +if(r!=null)return r.L(a) +if(a.n(0,B.B)&&a.n(0,B.o))return s.c +if(a.n(0,B.o))return s.d +if(a.n(0,B.B))return s.c +return s.b}} +A.ae5.prototype={ +aX(a){var s=new A.akb(this.e,null,A.aB(t.T)) +s.aW() +s.sbN(null) +return s}, +b4(a,b){b.sT3(this.e)}} +A.akb.prototype={ +dc(a,b){var s,r=this +if(!r.gq(r).n(0,b))return!1 +s=new A.l(b.a,r.gq(r).b/2) +return a.DZ(new A.b8N(r,s),b,A.aIF(s))}} +A.b8N.prototype={ +$2(a,b){return this.a.E$.dc(a,this.b)}, +$S:16} +A.ae7.prototype={ +gO3(){return B.XN}, +Tw(a){switch(a.a){case 0:return this.d.b +case 1:return this.d.a +case 2:return this.d.c}}, +b4(a,b){var s,r=this +b.saOl(r.d) +s=a.ae(t.I) +s.toString +b.scF(s.w) +b.B=r.e +b.Z=r.f +b.ar=r.r +b.aG=r.w +b.aS=r.x +b.b8=r.y +b.b6=r.z}, +aX(a){var s,r,q=this,p=a.ae(t.I) +p.toString +p=new A.SB(q.e,q.f,q.r,q.w,q.x,q.y,q.z,q.d,p.w,A.F(t.Wb,t.x),A.aB(t.T)) +p.aW() +s=p.geE() +p.ar.a.P(0,s) +r=p.gtv() +p.aG.a.P(0,r) +p.aS.a.P(0,r) +p.b8.a.P(0,s) +return p}} +A.pg.prototype={ +K(){return"_ChipSlot."+this.b}} +A.ae6.prototype={ +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.a1(b)!==A.o(s))return!1 +return b instanceof A.ae6&&b.a.rD(0,s.a)&&b.b.rD(0,s.b)&&b.c.rD(0,s.c)&&b.d===s.d&&b.e.l(0,s.e)&&b.r.l(0,s.r)&&b.w===s.w&&b.x===s.x&&J.i(b.y,s.y)&&b.z===s.z}, +gv(a){var s=this +return A.X(s.a,s.b,s.c,s.d,s.e,s.r,s.w,s.x,s.y,s.z,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}} +A.SB.prototype={ +saOl(a){if(this.bp.l(0,a))return +this.bp=a +this.a6()}, +scF(a){if(this.cc===a)return +this.cc=a +this.a6()}, +ghK(a){var s,r=A.a([],t.Ik),q=this.d1$ +if(q.i(0,B.b9)!=null){s=q.i(0,B.b9) +s.toString +r.push(s)}if(q.i(0,B.bI)!=null){s=q.i(0,B.bI) +s.toString +r.push(s)}if(q.i(0,B.cs)!=null){q=q.i(0,B.cs) +q.toString +r.push(q)}return r}, +gog(){return!1}, +c3(a){var s,r=this.bp.e.gdD(),q=this.bp.r.gdD(),p=this.d1$,o=p.i(0,B.b9) +o=o==null?0:o.aB(B.ad,a,o.gbZ()) +s=p.i(0,B.bI) +s=s==null?0:s.aB(B.ad,a,s.gbZ()) +p=p.i(0,B.cs) +p=p==null?0:p.aB(B.ad,a,p.gbZ()) +return r+q+o+s+p}, +bV(a){var s,r=this.bp.e.gdD(),q=this.bp.r.gdD(),p=this.d1$,o=p.i(0,B.b9) +o=o==null?0:o.aB(B.ak,a,o.gc2()) +s=p.i(0,B.bI) +s=s==null?0:s.aB(B.ak,a,s.gc2()) +p=p.i(0,B.cs) +p=p==null?0:p.aB(B.ak,a,p.gc2()) +return r+q+o+s+p}, +bW(a){var s,r,q,p=this.bp.e,o=p.gcC(p) +p=p.gcH(p) +s=this.bp.r +r=s.gcC(s) +s=s.gcH(s) +q=this.d1$.i(0,B.bI) +q=q==null?0:q.aB(B.aA,a,q.gcD()) +return Math.max(32,o+p+(r+s)+q)}, +c1(a){return this.bW(a)}, +hL(a){return this.d1$.i(0,B.bI).q6(a)}, +avq(a,b,c,d,e){var s,r,q,p,o,n=this,m=a.b +if(isFinite(m)){s=Math.max(0,m-b-n.bp.r.gdD()-n.bp.e.gdD()) +m=n.d1$.i(0,B.bI) +m.toString +r=e.$2(m,new A.aL(0,s,d.b,c.b)) +m=r.a +q=n.bp.r.gdD() +p=r.b +o=n.bp.r +return new A.V(m+q,p+(o.gcC(o)+o.gcH(o)))}m=n.d1$.i(0,B.bI) +m.toString +r=e.$2(m,new A.aL(0,c.a,d.b,c.b)) +m=r.a +q=n.bp.r.gdD() +p=r.b +o=n.bp.r +return new A.V(m+q,p+(o.gcC(o)+o.gcH(o)))}, +avn(a,b,c){var s,r,q,p=Math.max(0,b),o=A.ii(p,p),n=this.d1$.i(0,B.b9) +n.toString +s=c.$2(n,o) +n=this.bp +if(!n.x&&!n.w)return new A.V(0,b) +r=this.aG +q=n.w?0+r.gk(r)*s.a:0+r.gk(r)*b +return new A.V(q,0+s.b)}, +avp(a,b,c){var s,r=Math.max(0,b),q=A.ii(r,r),p=this.d1$.i(0,B.cs) +p.toString +s=c.$2(p,q) +p=this.aS +if(p.gaL(p)===B.Q)return new A.V(0,b) +p=this.aS +return new A.V(0+p.gk(p)*s.a,0+s.b)}, +dc(a,b){var s,r,q,p,o,n,m,l=this +if(!l.gq(l).n(0,b))return!1 +s=l.d1$ +if(s.i(0,B.cs)!=null){r=l.bp +q=l.gq(l) +p=s.i(0,B.cs) +o=A.bPl(q,p.gq(p),r.e,b,l.cc)}else o=!1 +if(o){r=s.i(0,B.cs) +if(r==null)r=s.i(0,B.bI) +n=r==null?s.i(0,B.b9):r}else{r=s.i(0,B.bI) +n=r==null?s.i(0,B.b9):r}if(n!=null){m=n.gq(n).mg(B.i) +return a.DZ(new A.b8Q(m,n),b,A.aIF(m))}return!1}, +ds(a){return this.a_U(a,A.rI()).a}, +a_U(a,b){var s,r,q,p,o,n,m,l,k,j,i,h=this,g=new A.aL(0,a.b,0,a.d),f=h.bp.f,e=new A.l(0,new A.l(f.a,f.b).au(0,4).b/2) +f=h.d1$.i(0,B.bI) +f.toString +s=b.$2(f,g) +f=h.bp.e +r=f.gcC(f) +f=f.gcH(f) +q=h.bp.r +p=q.gcC(q) +q=q.gcH(q) +o=s.b +n=h.bp.r +m=Math.max(32-(r+f)+(p+q),o+(n.gcC(n)+n.gcH(n))) +l=h.avn(g,m,b) +k=h.avp(g,m,b) +n=l.a +o=k.a +j=h.avq(g,n+o,new A.V(s.a,m),s,b) +i=new A.V(n+j.a+o,m).T(0,e) +o=h.bp.e.gdD() +n=h.bp.e +return new A.b1Q(a.bI(new A.V(i.a+o,i.b+(n.gcC(n)+n.gcH(n)))),i,m,l,j,k,e)}, +cj(){var s,r,q,p,o,n,m,l,k,j=this,i=t.k,h=j.a_U(i.a(A.H.prototype.ga4.call(j)),A.vE()),g=h.b,f=g.a,e=new A.b8R(j,h) +switch(j.cc.a){case 0:s=j.bp +if(s.x||s.w){s=h.d +r=e.$2(s,f) +q=f-s.a}else{q=f +r=B.i}s=h.e +p=e.$2(s,q) +o=j.aS +if(o.gaL(o)!==B.Q){o=h.f +n=j.bp.e +j.Y=new A.I(0,0,0+(o.a+n.c),0+(g.b+(n.gcC(n)+n.gcH(n)))) +m=e.$2(o,q-s.a)}else{j.Y=B.Y +m=B.i}s=j.bp +if(s.z){o=j.Y +o===$&&A.b() +o=o.c-o.a +s=s.e.gdD() +n=j.bp.e +j.av=new A.I(o,0,o+(f-o+s),0+(g.b+(n.gcC(n)+n.gcH(n))))}else j.av=B.Y +break +case 1:s=j.bp +if(s.x||s.w){s=h.d +o=j.d1$.i(0,B.b9) +o=o==null?B.x:o.gq(o) +n=s.a +r=e.$2(s,0-o.a+n) +q=0+n}else{r=B.i +q=0}s=h.e +p=e.$2(s,q) +q+=s.a +if(j.bp.z){s=j.aS +s=s.gaL(s) +o=j.bp.e +s=s!==B.Q?q+o.a:f+o.gdD() +o=j.bp.e +j.av=new A.I(0,0,0+s,0+(g.b+(o.gcC(o)+o.gcH(o))))}else j.av=B.Y +s=j.d1$.i(0,B.cs) +s=s==null?B.x:s.gq(s) +o=h.f +n=o.a +q-=s.a-n +s=j.aS +if(s.gaL(s)!==B.Q){m=e.$2(o,q) +s=j.bp.e +o=q+s.a +j.Y=new A.I(o,0,o+(n+s.c),0+(g.b+(s.gcC(s)+s.gcH(s))))}else{j.Y=B.Y +m=B.i}break +default:r=B.i +p=B.i +m=B.i}s=j.bp.r +o=s.gcC(s) +s=s.gcH(s) +n=j.d1$ +l=n.i(0,B.bI) +l=l==null?B.x:l.gq(l) +p=p.T(0,new A.l(0,(h.e.b-(o+s)-l.b)/2)) +l=n.i(0,B.b9).b +l.toString +s=t.q +s.a(l) +o=j.bp.e +l.sc6(0,new A.l(o.a,o.b).T(0,r)) +o=n.i(0,B.bI).b +o.toString +s.a(o) +l=j.bp.e +l=new A.l(l.a,l.b).T(0,p) +k=j.bp.r +o.sc6(0,l.T(0,new A.l(k.a,k.b))) +n=n.i(0,B.cs).b +n.toString +s.a(n) +s=j.bp.e +n.sc6(0,new A.l(s.a,s.b).T(0,m)) +s=j.bp.e.gdD() +n=j.bp.e +k=n.gcC(n) +n=n.gcH(n) +j.id=i.a(A.H.prototype.ga4.call(j)).bI(new A.V(f+s,g.b+(k+n)))}, +gPQ(){var s,r=this.b8 +if(r.gaL(r)===B.a5)return B.n +switch(this.bp.d.a){case 1:s=new A.dk(A.K(97,255,255,255),B.n) +break +case 0:s=new A.dk(A.K(97,0,0,0),B.v) +break +default:s=null}r=this.b8 +r=s.a_(0,r.gk(r)) +r.toString +return r}, +axR(a,b,c){var s,r,q,p,o,n,m,l,k,j,i,h=this,g=h.bp,f=g.y +if(!(f!=null))switch(g.d.a){case 1:f=g.w?B.n:A.K(222,0,0,0) +break +case 0:f=g.w?B.v:A.K(222,255,255,255) +break +default:f=null}g=h.ar.a +if(g.gaL(g)===B.aZ){g=h.ar +f=new A.dk(B.u,f).a_(0,g.gk(g))}g=$.as() +s=g.bn() +f.toString +s.sa5(0,f) +s.scK(0,B.aj) +r=h.d1$ +if(r.i(0,B.b9)!=null){r=r.i(0,B.b9) +r=r.gq(r).b/24}else r=1 +s.sfB(2*r) +r=h.ar.a +if(r.gaL(r)===B.aZ)q=1 +else{r=h.ar +q=r.gk(r)}if(q===0)return +p=g.cZ() +g=c*0.15 +r=c*0.45 +o=c*0.4 +n=c*0.7 +m=new A.l(o,n) +l=b.a +k=b.b +j=l+g +i=k+r +if(q<0.5){g=A.lT(new A.l(g,r),m,q*2) +g.toString +p.fo(0,j,i) +p.d7(0,l+g.a,k+g.b)}else{g=A.lT(m,new A.l(c*0.85,c*0.25),(q-0.5)*2) +g.toString +p.fo(0,j,i) +p.d7(0,l+o,k+n) +p.d7(0,l+g.a,k+g.b)}a.dV(p,s)}, +axO(a,b){var s,r,q,p,o,n,m=this,l=new A.b8O(m) +if(!m.bp.w){s=m.aG +s=s.gaL(s)===B.Q}else s=!1 +if(s)return +r=m.gPQ() +q=r.gk(r)>>>24&255 +s=m.cx +s===$&&A.b() +if(s)a.r6(A.a5G(q),l,b) +else{s=q!==255 +if(s){p=a.gcR(a) +o=A.bkE(m.d1$.i(0,B.b9)).dw(b).dZ(20) +n=$.as().bn() +n.sa5(0,r) +p.lF(o,n)}l.$2(a,b) +if(s)a.gcR(a).dq(0)}}, +a2Z(a,b,c,d){var s,r,q,p,o=this +if(c==null)return +s=o.gPQ() +s=s.gk(s) +r=o.b8 +if(r.gaL(r)!==B.a5){r=o.cx +r===$&&A.b() +if(r)a.r6(A.a5G(s>>>24&255),new A.b8P(c),b) +else{q=A.bkE(c).dw(b) +s=a.gcR(a) +r=q.dZ(20) +p=$.as().bn() +p.sa5(0,o.gPQ()) +s.lF(r,p) +p=c.b +p.toString +a.eg(c,t.q.a(p).a.T(0,b)) +a.gcR(a).dq(0)}}else{s=c.b +s.toString +a.eg(c,t.q.a(s).a.T(0,b))}}, +aD(a,b){var s,r=this +r.axO(a,b) +s=r.aS +if(s.gaL(s)!==B.Q)r.a2Z(a,b,r.d1$.i(0,B.cs),r.Z) +r.a2Z(a,b,r.d1$.i(0,B.bI),r.Z)}, +l8(a){var s=this.Y +s===$&&A.b() +if(!s.n(0,a)){s=this.av +s===$&&A.b() +s=s.n(0,a)}else s=!0 +return s}} +A.b8Q.prototype={ +$2(a,b){return this.b.dc(a,this.a)}, +$S:16} +A.b8R.prototype={ +$2(a,b){var s +switch(this.a.cc.a){case 0:s=this.b +return new A.l(b-a.a,(s.c-a.b+s.r.b)/2) +case 1:s=this.b +return new A.l(b,(s.c-a.b+s.r.b)/2)}}, +$S:772} +A.b8O.prototype={ +$2(a,b){var s,r,q,p,o,n,m=this.a,l=m.d1$,k=l.i(0,B.b9) +k.toString +s=l.i(0,B.b9).b +s.toString +r=t.q +a.eg(k,r.a(s).a.T(0,b)) +if(m.bp.x){k=m.ar +k=k.gaL(k)!==B.Q}else k=!1 +if(k){if(m.bp.w){q=A.bkE(l.i(0,B.b9)).dw(b) +p=$.as().bn() +k=$.bzY() +s=m.ar +s=k.a_(0,s.gk(s)) +s.toString +p.sa5(0,s) +p.swB(B.LK) +o=m.b6.kv(q) +a.gcR(a).dV(o,p)}k=l.i(0,B.b9) +k=k.gq(k) +s=l.i(0,B.b9).b +s.toString +s=r.a(s).a +r=l.i(0,B.b9) +r=r.gq(r) +l=l.i(0,B.b9) +n=s.T(0,new A.l(r.b*0.125,l.gq(l).b*0.125)) +m.axR(a.gcR(a),b.T(0,n),k.b*0.75)}}, +$S:15} +A.b8P.prototype={ +$2(a,b){var s=this.a,r=s.b +r.toString +a.eg(s,t.q.a(r).a.T(0,b))}, +$S:15} +A.b1Q.prototype={} +A.b1P.prototype={ +gCJ(){var s,r=this,q=r.fr +if(q===$){s=A.r(r.dx) +r.fr!==$&&A.am() +q=r.fr=s.ax}return q}, +ghR(){var s,r=this,q=r.fx +if(q===$){s=A.r(r.dx) +r.fx!==$&&A.am() +q=r.fx=s.p3}return q.as}, +ga5(a){return null}, +gbR(a){return B.u}, +gc9(){var s=this.gCJ(),r=s.k3 +return r==null?s.b:r}, +gzy(){return null}, +gEt(){return null}, +geP(){var s,r +if(this.dy){s=this.gCJ() +r=s.fr +s=new A.b9(r==null?s.cx:r,1,B.M,-1)}else{s=this.gCJ().db.a +s=new A.b9(A.K(31,s>>>16&255,s>>>8&255,s&255),1,B.M,-1)}return s}, +gfI(){var s=null +return new A.cX(18,s,s,s,s,this.dy?this.gCJ().b:this.gCJ().db,s,s)}, +gdE(a){return B.aT}, +gAV(){var s=A.cT(this.dx,B.bb) +s=s==null?null:s.c +s=A.Br(B.bC,B.e6,A.S((s==null?1:s)-1,0,1)) +s.toString +return s}} +A.aoU.prototype={} +A.Vr.prototype={ +cn(){this.d3() +this.cT() +this.es()}, +m(){var s=this,r=s.b_$ +if(r!=null)r.J(0,s.gej()) +s.b_$=null +s.aZ()}} +A.aoY.prototype={ +aA(a){var s,r,q +this.eR(a) +for(s=this.ghK(this),r=s.length,q=0;q>>16&255,s>>>8&255,s&255),1,B.M,-1)}else s=B.lR +return s}, +gfI(){var s=null +return new A.cX(18,s,s,s,s,this.dy?s:this.goq().db,s,s)}, +gdE(a){return B.aT}, +gAV(){var s=A.cT(this.dx,B.bb) +s=s==null?null:s.c +s=A.Br(B.bC,B.e6,A.S((s==null?1:s)-1,0,1)) +s.toString +return s}} +A.b1T.prototype={ +$1(a){var s,r +if(a.n(0,B.B)&&a.n(0,B.o)){s=this.a +if(s.fx===B.eH){s=s.goq().db.a +s=A.K(31,s>>>16&255,s>>>8&255,s&255)}else{s=s.goq().db.a +s=A.K(31,s>>>16&255,s>>>8&255,s&255)}return s}if(a.n(0,B.o)){s=this.a +if(s.fx===B.eH)s=null +else{s=s.goq().db.a +s=A.K(31,s>>>16&255,s>>>8&255,s&255)}return s}if(a.n(0,B.B)){s=this.a +if(s.fx===B.eH){s=s.goq() +r=s.w +s=r==null?s.f:r}else{s=s.goq() +r=s.w +s=r==null?s.f:r}return s}return null}, +$S:27} +A.tf.prototype={ +l(a,a0){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b=this +if(a0==null)return!1 +if(b===a0)return!0 +if(J.a1(a0)!==A.o(b))return!1 +if(a0 instanceof A.tf)if(a0.a===b.a){s=a0.b +r=b.b +if(s.l(0,r)){q=a0.c +p=b.c +if(q.l(0,p)){o=a0.d +if(o==null)o=s +n=b.d +if(o.l(0,n==null?r:n)){o=a0.e +if(o==null)o=q +n=b.e +if(o.l(0,n==null?p:n)){o=a0.f +n=b.f +if(o.l(0,n)){m=a0.r +l=b.r +if(m.l(0,l)){k=a0.w +if(k==null)k=o +j=b.w +if(k.l(0,j==null?n:j)){k=a0.x +if(k==null)k=m +j=b.x +if(k.l(0,j==null?l:j)){k=a0.y +j=k==null +i=j?o:k +h=b.y +g=h==null +if(i.l(0,g?n:h)){i=a0.z +f=i==null +e=f?m:i +d=b.z +c=d==null +if(e.l(0,c?l:d)){e=a0.Q +if(e==null)o=j?o:k +else o=e +k=b.Q +if(k==null)n=g?n:h +else n=k +if(o.l(0,n)){o=a0.as +if(o==null)o=f?m:i +n=b.as +if(n==null)n=c?l:d +if(o.l(0,n)){o=a0.at +n=b.at +if(o.l(0,n)){m=a0.ax +l=b.ax +if(m.l(0,l)){k=a0.ay +o=k==null?o:k +k=b.ay +if(o.l(0,k==null?n:k)){o=a0.ch +if(o==null)o=m +n=b.ch +if(o.l(0,n==null?l:n))if(a0.CW.l(0,b.CW)){o=a0.cx +n=b.cx +if(o.l(0,n)){m=a0.cy +l=b.cy +if(m.l(0,l)){k=a0.db +j=b.db +if(k.l(0,j)){i=a0.dx +if(i==null)i=m +h=b.dx +if(i.l(0,h==null?l:h)){i=a0.dy +if(i==null)i=k +h=b.dy +if(i.l(0,h==null?j:h)){i=a0.fr +if(i==null)i=o +h=b.fr +if(i.l(0,h==null?n:h)){i=a0.fx +o=i==null?o:i +i=b.fx +if(o.l(0,i==null?n:i)){o=a0.fy +if(o==null)o=B.v +n=b.fy +if(o.l(0,n==null?B.v:n)){o=a0.go +if(o==null)o=B.v +n=b.go +if(o.l(0,n==null?B.v:n)){o=a0.id +if(o==null)o=k +n=b.id +if(o.l(0,n==null?j:n)){o=a0.k1 +if(o==null)o=m +n=b.k1 +if(o.l(0,n==null?l:n)){o=a0.k2 +q=o==null?q:o +o=b.k2 +if(q.l(0,o==null?p:o)){q=a0.k3 +s=q==null?s:q +q=b.k3 +s=s.l(0,q==null?r:q)}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1 +else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1 +else s=!1 +return s}, +gv(b1){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=this,a8=a7.b,a9=a7.c,b0=a7.d +if(b0==null)b0=a8 +s=a7.e +if(s==null)s=a9 +r=a7.f +q=a7.r +p=a7.w +if(p==null)p=r +o=a7.x +if(o==null)o=q +n=a7.y +m=n==null +l=m?r:n +k=a7.z +j=k==null +i=j?q:k +h=a7.Q +if(h==null){if(m)n=r}else n=h +m=a7.as +if(m==null)m=j?q:k +k=a7.at +j=a7.ax +h=a7.ay +if(h==null)h=k +g=a7.ch +if(g==null)g=j +f=a7.cx +e=a7.cy +d=a7.db +c=a7.dx +if(c==null)c=e +b=a7.dy +if(b==null)b=d +a=a7.fr +if(a==null)a=f +a0=a7.fx +if(a0==null)a0=f +a1=a7.fy +if(a1==null)a1=B.v +a2=a7.go +if(a2==null)a2=B.v +a3=a7.id +if(a3==null)a3=d +a4=a7.k1 +if(a4==null)a4=e +a5=a7.k2 +if(a5==null)a5=a9 +a6=a7.k3 +return A.X(a7.a,a8,a9,b0,s,r,q,p,o,l,i,n,m,k,j,h,g,a7.CW,f,A.X(e,d,c,b,a,a0,a1,a2,a3,a4,a5,a6==null?a8:a6,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a))}} +A.aec.prototype={} +A.CJ.prototype={} +A.a38.prototype={} +A.J6.prototype={ +gv(a){var s=this +return A.X(s.a,s.b,s.c,s.d,s.e,s.f,s.r,s.w,s.x,s.y,s.z,s.Q,s.as,s.at,B.a,B.a,B.a,B.a,B.a,B.a)}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r===b)return!0 +if(J.a1(b)!==A.o(r))return!1 +if(b instanceof A.J6)if(J.i(b.a,r.a))if(b.b==r.b)if(b.c==r.c)if(b.d==r.d)if(J.i(b.e,r.e))if(b.f==r.f)if(b.r==r.r)if(J.i(b.w,r.w))if(b.x==r.x)if(b.y==r.y)if(b.z==r.z)if(b.Q==r.Q)s=!0 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +return s}} +A.aeX.prototype={} +A.J7.prototype={ +gv(a){var s=this +return A.dt([s.a,s.b,s.c,s.d,s.e,s.f,s.r,s.w,s.x,s.y,s.z,s.Q,s.as,s.at,s.ax,s.ay,s.ch,s.CW,s.cx,s.cy,s.db,s.dx,s.dy,s.fr,s.fx,s.fy,s.go,s.id,s.k1,s.k2,s.k3,s.k4,s.ok,s.p1])}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +return b instanceof A.J7&&J.i(b.a,s.a)&&b.b==s.b&&J.i(b.c,s.c)&&J.i(b.d,s.d)&&J.i(b.e,s.e)&&J.i(b.f,s.f)&&J.i(b.r,s.r)&&J.i(b.w,s.w)&&J.i(b.x,s.x)&&J.i(b.y,s.y)&&J.i(b.z,s.z)&&b.Q==s.Q&&b.as==s.as&&b.at==s.at&&b.ax==s.ax&&b.ay==s.ay&&J.i(b.ch,s.ch)&&J.i(b.CW,s.CW)&&b.cx==s.cx&&b.cy==s.cy&&b.db==s.db&&J.i(b.dx,s.dx)&&b.dy==s.dy&&J.i(b.fr,s.fr)&&J.i(b.fx,s.fx)&&J.i(b.fy,s.fy)&&J.i(b.go,s.go)&&J.i(b.id,s.id)&&J.i(b.k1,s.k1)&&J.i(b.k2,s.k2)&&J.i(b.k3,s.k3)&&b.k4==s.k4&&J.i(b.ok,s.ok)&&!0}} +A.aeZ.prototype={} +A.afa.prototype={} +A.axp.prototype={ +BZ(a){return B.x}, +Kh(a,b,c,d){return B.a_}, +BY(a,b){return B.i}} +A.aoj.prototype={} +A.a00.prototype={ +A(a){var s=null,r=A.aS(a,B.bJ,t.l).w.f.b+8 +return new A.b8(new A.aK(8,r,8,8),new A.kV(new A.a01(this.c.a2(0,new A.l(8,r))),A.cZ(A.hA(B.S,!0,B.q1,A.cO(this.d,B.w,B.D,B.aa),B.bc,s,1,s,s,s,s,s,B.em),s,222),s),s)}} +A.Be.prototype={ +A(a){var s=null +return A.cZ(A.eM(!1,this.d,B.l,s,s,s,s,s,this.c,s,A.Ox(B.iy,s,s,s,s,B.bn,s,s,B.bn,A.r(a).ax.a===B.am?B.n:B.a8,s,B.adT,B.S4,s,B.et,s,s,s,s)),s,1/0)}} +A.a06.prototype={ +A(a){var s,r,q,p,o,n,m,l=null,k=A.r(a),j=A.r(a).cb,i=t.l,h=A.aS(a,B.ls,i).w,g=h.e.T(0,this.x) +if(k.y)s=A.btG(a) +else s=A.btF(a) +h=j.f +if(h==null){h=s.f +h.toString}r=j.a +if(r==null)r=A.r(a).ay +q=j.b +if(q==null){q=s.b +q.toString}p=j.c +if(p==null)p=s.gbR(s) +o=j.d +if(o==null)o=s.gc9() +n=j.e +if(n==null){n=s.e +n.toString}m=new A.e5(h,l,l,new A.ew(B.M5,A.hA(B.S,!0,l,this.as,this.y,r,q,l,p,n,o,l,B.em),l),l) +return new A.Hz(g,A.la(m,A.aS(a,l,i).w.acr(!0,!0,!0,!0),l),B.dt,B.b_,l,l)}} +A.Af.prototype={ +A(a1){var s,r,q,p,o,n,m,l,k,j,i,h,g,f=this,e=null,d=A.r(a1),c=A.r(a1).cb,b=d.y,a=b?A.btG(a1):A.btF(a1),a0=d.r +switch(a0.a){case 2:case 4:s=e +break +case 0:case 1:case 3:case 5:r=A.A(a1,B.ax,t.D) +r.toString +s=r.gbf() +break +default:s=e}r=A.cT(a1,B.bb) +r=r==null?e:r.c +r=A.ag(1,0.3333333333333333,A.S(r==null?1:r,1,2)-1) +r.toString +A.eF(a1) +q=f.f +p=q==null +o=!p +if(o){n=24*r +m=c.r +if(m==null){m=a.gi0() +m.toString}a0=s==null&&a0!==B.bo +l=new A.b8(new A.aK(n,n,n,0),A.fw(new A.bu(A.bI(e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,a0,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e),!0,!1,!1,!1,q,e),e,e,B.aR,!0,m,B.b3,e,B.aq),e)}else l=e +k=new A.aK(24,b?16:20,24,24) +a0=f.y +j=a0==null?e:a0 +if(j==null)j=k +a0=p&&!0 +q=j.b +a0=a0?q*r:q +q=c.w +if(q==null){q=a.gEg() +q.toString}i=new A.b8(new A.aK(j.a*r,a0,j.c*r,j.d),A.fw(new A.bu(A.bI(e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e),!0,!1,!1,!1,f.x,e),e,e,B.aR,!0,q,e,e,B.aq),e) +a0=c.x +if(a0==null)b=b?a.gze():a.gze().G(0,new A.aK(8,8,8,8)) +else b=a0 +h=new A.b8(b,A.bIj(B.nR,f.Q,B.ab_,B.cr,0,8),e) +b=A.a([],t.p) +if(o){l.toString +b.push(l)}i.toString +b.push(new A.og(1,B.f4,i,e)) +h.toString +b.push(h) +g=A.bqf(A.cO(b,B.hd,B.D,B.aa),e) +if(s!=null)g=new A.bu(A.bI(e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,s,e,e,e,e,e,!0,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,!0,e,e,e,e,e,e,e,e,e),!1,!0,!1,!1,g,e) +return new A.a06(e,e,e,e,B.S7,B.l,e,e,g,e)}, +geB(){return null}} +A.Jd.prototype={} +A.axq.prototype={ +$3(a,b,c){var s=new A.ej(this.a,null),r=new A.ra(this.b.a,s,null) +r=A.yz(!0,r,!0,B.a4,!0,!0) +return r}, +$C:"$3", +$R:3, +$S:773} +A.b2K.prototype={ +geK(){return this.as.f}, +gbY(a){return A.r(this.z).ay}, +gbR(a){return A.r(this.z).k2}, +gi0(){return this.Q.r}, +gEg(){return this.Q.w}, +gze(){return B.a4}} +A.b2L.prototype={ +gPP(){var s,r=this,q=r.Q +if(q===$){s=A.r(r.z) +r.Q!==$&&A.am() +q=r.Q=s.ax}return q}, +ga0a(){var s,r=this,q=r.as +if(q===$){s=A.r(r.z) +r.as!==$&&A.am() +q=r.as=s.p3}return q}, +geK(){return this.gPP().f}, +gbY(a){return this.gPP().cy}, +gbR(a){return B.u}, +gc9(){var s=this.gPP(),r=s.k3 +return r==null?s.b:r}, +gi0(){return this.ga0a().f}, +gEg(){return this.ga0a().z}, +gze(){return B.S6}} +A.Bf.prototype={ +gv(a){return J.T(this.e)}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.a1(b)!==A.o(s))return!1 +return b instanceof A.Bf&&J.i(b.gbY(b),s.gbY(s))&&b.b==s.b&&J.i(b.gbR(b),s.gbR(s))&&J.i(b.gc9(),s.gc9())&&J.i(b.e,s.e)&&J.i(b.f,s.f)&&J.i(b.geK(),s.geK())&&J.i(b.gi0(),s.gi0())&&J.i(b.gEg(),s.gEg())&&J.i(b.gze(),s.gze())}, +gbY(a){return this.a}, +gbR(a){return this.c}, +gc9(){return this.d}, +gi0(){return this.r}, +gEg(){return this.w}, +gze(){return this.x}, +geK(){return this.y}} +A.afd.prototype={} +A.Bi.prototype={ +A(a){var s,r,q,p=null,o=A.r(a),n=A.bij(a),m=o.y?A.bko(a):A.bkn(a),l=this.c,k=l==null?n.b:l +if(k==null){l=m.b +l.toString +k=l}s=n.c +if(s==null){l=m.c +l.toString +s=l}r=n.d +if(r==null){l=m.d +l.toString +r=l}q=n.e +if(q==null){l=m.e +l.toString +q=l}return A.cZ(A.f1(A.cP(p,p,B.l,p,p,new A.dJ(p,p,new A.ei(B.t,B.t,A.boP(a,p,s),B.t),p,p,p,B.aE),p,s,new A.eH(r,0,q,0),p,p),p,p),k,p)}} +A.aaR.prototype={ +A(a){var s,r,q,p=null,o=A.r(a),n=A.bij(a),m=o.y?A.bko(a):A.bkn(a),l=0,k=n.c +if(k==null){s=m.c +s.toString +k=s}r=n.d +if(r==null){s=m.d +s.toString +r=s}q=n.e +if(q==null){s=m.e +s.toString +q=s}return A.cZ(A.f1(A.cP(p,p,B.l,p,p,new A.dJ(p,p,new A.ei(B.t,B.t,B.t,A.boP(a,p,k)),p,p,p,B.aE),p,p,new A.eH(0,r,0,q),p,k),p,p),p,l)}} +A.b2N.prototype={ +ga5(a){return A.r(this.f).CW}} +A.b2O.prototype={ +ga5(a){var s=A.r(this.f).ax,r=s.fx +return r==null?s.cx:r}} +A.Bj.prototype={ +gv(a){var s=this +return A.X(s.ga5(s),s.b,s.c,s.d,s.e,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.a1(b)!==A.o(s))return!1 +return b instanceof A.Bj&&J.i(b.ga5(b),s.ga5(s))&&b.b==s.b&&b.c==s.c&&b.d==s.d&&b.e==s.e}, +ga5(a){return this.a}} +A.afi.prototype={} +A.a0o.prototype={ +K(){return"DrawerAlignment."+this.b}} +A.Js.prototype={ +A(a){var s,r,q,p,o,n,m,l,k,j=null,i=A.bpf(a) +switch(A.r(a).r.a){case 2:case 4:s=j +break +case 0:case 1:case 3:case 5:r=A.A(a,B.ax,t.D) +r.toString +s=r.gbo() +break +default:s=j}r=A.r(a) +q=a.ae(t.Pg) +q=q==null?j:q.f +q=q==null?j:q.d +p=r.y?new A.b2S(a,j,j,1,j,j,j,j,j):new A.b2R(a,j,j,16,j,j,j,j,j) +o=this.r +if(o==null)if(q!==B.rF){r=i.f +if(r==null)r=p.gcG(p) +o=r}else{r=i.r +if(r==null)r=p.gEI() +o=r}r=this.w +q=i.a +if(q==null)q=p.gbY(p) +n=i.c +if(n==null){n=p.c +n.toString}m=i.d +if(m==null)m=p.gbR(p) +l=i.e +if(l==null)l=p.gc9() +if(o!=null)k=B.E +else k=B.l +l=A.hA(B.S,!0,j,this.x,k,q,n,j,m,o,l,j,B.cJ) +return new A.bu(A.bI(j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,s,j,j,j,j,j,!0,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,!0,j,j,j,j,j,j,j,j,j),!1,!0,!1,!1,new A.ew(new A.aL(r,r,1/0,1/0),l,j),j)}} +A.QC.prototype={ +dr(a){return!this.f.rD(0,a.f)}} +A.Jt.prototype={ +a8(){var s=null,r=t.C +return new A.Bn(A.aC8(!0,s,!1),new A.bo(s,r),new A.bo(s,r),s,s,B.m)}} +A.Bn.prototype={ +aR(){var s,r,q=this +q.b5() +s=q.f=A.bw(B.z,null,B.RF,0,null,1,q.a.y?1:0,q) +s.cL() +r=s.dB$ +r.b=!0 +r.a.push(q.gamn()) +s.cL() +s=s.eo$ +s.b=!0 +s.a.push(q.gapu())}, +m(){var s=this.d +if(s!=null)s.er(0) +s=this.f +s===$&&A.b() +s.m() +this.aja()}, +cp(){this.ei() +this.x=this.anb()}, +aY(a){var s,r,q +this.br(a) +s=this.a +s=s.y +if(s!==a.y){r=this.f +r===$&&A.b() +q=r.Q +q===$&&A.b() +switch(q.a){case 3:case 0:r.sk(0,s?1:0) +break +case 1:case 2:break}}}, +amo(){this.a7(new A.az0())}, +a0A(){var s,r,q=this +if(q.d==null){s=q.c +s.toString +r=A.qq(s,t.X) +if(r!=null){s=new A.KU(q.gast(),!1) +q.d=s +r.a6A(s) +s=q.c +s.toString +A.a18(s).Ci(q.e)}}}, +apv(a){var s +switch(a.a){case 1:this.a0A() +break +case 2:s=this.d +if(s!=null)s.er(0) +this.d=null +break +case 0:break +case 3:break}}, +asu(){this.d=null +this.ad(0)}, +as3(a){var s=this.f +s===$&&A.b() +s.h7(0) +this.a0A()}, +as1(){var s=this,r=s.f +r===$&&A.b() +if(r.gaL(r)!==B.Q){r=s.f.r +r=r!=null&&r.a!=null}else r=!0 +if(r)return +r=s.f.x +r===$&&A.b() +if(r<0.5)s.ad(0) +else s.r_(0)}, +ga0p(a){var s=$.ar.al$.z.i(0,this.r) +s=s==null?null:s.ga9() +t.aA.a(s) +if(s!=null)return s.gq(s).a +return 304}, +awi(a){var s,r,q,p=this,o=a.c +o.toString +s=o/p.ga0p(p) +switch(p.a.d.a){case 0:break +case 1:s=-s +break}o=p.c.ae(t.I) +o.toString +switch(o.w.a){case 0:o=p.f +o===$&&A.b() +r=o.x +r===$&&A.b() +o.sk(0,r-s) +break +case 1:o=p.f +o===$&&A.b() +r=o.x +r===$&&A.b() +o.sk(0,r+s) +break}o=p.f +o===$&&A.b() +o=o.x +o===$&&A.b() +q=o>0.5 +if(q!==p.w){p.a.toString +o=!0}else o=!1 +if(o)p.a.e.$1(q) +p.w=q}, +aAV(a){var s,r=this,q=r.f +q===$&&A.b() +if(q.gaL(q)===B.Q)return +q=a.a.a.a +if(Math.abs(q)>=365){s=q/r.ga0p(r) +switch(r.a.d.a){case 0:break +case 1:s=-s +break}q=r.c.ae(t.I) +q.toString +switch(q.w.a){case 0:r.f.AD(-s) +r.a.e.$1(s<0) +break +case 1:r.f.AD(s) +r.a.e.$1(s>0) +break}}else{q=r.f.x +q===$&&A.b() +if(q<0.5)r.ad(0) +else r.r_(0)}}, +r_(a){var s=this.f +s===$&&A.b() +s.aI2() +this.a.e.$1(!0)}, +ad(a){var s=this.f +s===$&&A.b() +s.AD(-1) +this.a.e.$1(!1)}, +anb(){this.a.toString +var s=this.c +s.toString +s=A.bpf(s).b +return new A.dk(B.u,s==null?B.a6:s)}, +ga0q(){switch(this.a.d.a){case 0:return B.d8 +case 1:return B.pO}}, +gapx(){switch(this.a.d.a){case 0:return B.pO +case 1:return B.d8}}, +apw(a){var s,r,q,p,o,n,m,l,k,j=this,i=null,h=j.a.d===B.Rp,g=a.ae(t.I) +g.toString +switch(A.r(a).r.a){case 0:case 2:case 1:s=!1 +break +case 4:case 3:case 5:s=!0 +break +default:s=i}r=j.a.x +q=A.aS(a,B.bJ,t.l).w.f +switch(g.w.a){case 1:r=20+(h?q.a:q.c) +break +case 0:r=20+(h?q.c:q.a) +break}g=j.f +g===$&&A.b() +g=g.Q +g===$&&A.b() +if(g===B.Q)if(j.a.w&&!s){g=j.ga0q() +p=j.a.f +return new A.e5(g,i,i,A.dM(B.aN,A.cP(i,i,B.l,i,i,i,i,i,i,i,r),p,!0,j.y,i,i,i,j.ga4m(),i,j.ga2A(),i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,!1,B.ai),i)}else return B.a_ +else{switch(A.r(a).r.a){case 0:o=!0 +break +case 2:case 4:case 1:case 3:case 5:o=!1 +break +default:o=i}g=j.a +g.toString +p=A.A(a,B.ax,t.D) +p.toString +p=p.gaE() +n=j.x +n===$&&A.b() +m=j.f +m=A.cP(i,i,B.l,n.a_(0,m.gk(m)),i,i,i,i,i,i,i) +p=A.bo3(new A.pY(o,A.dM(i,new A.bu(A.bI(i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,p,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i),!1,!1,!1,!1,m,i),B.C,!1,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,j.gdU(j),i,i,i,i,!1,B.ai),i)) +n=j.ga0q() +m=j.gapx() +l=j.f.x +l===$&&A.b() +k=new A.QC(g,new A.i5(A.fr(B.bs,A.a([p,new A.e5(n,i,i,new A.e5(m,l,i,new A.i5(A.aC7(!1,j.a.c,i,j.r,j.e),i),i),i)],t.p),B.E,B.aH,i),i),i) +if(s)return k +return A.dM(i,k,j.a.f,!0,j.y,i,j.gas0(),j.gas2(),j.ga4m(),i,j.ga2A(),i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,!1,B.ai)}}, +A(a){return A.bqu(this.apw(a),null,B.W_,null)}, +$iaN:1} +A.az0.prototype={ +$0(){}, +$S:0} +A.b2R.prototype={ +gbR(a){return A.r(this.x).k2}} +A.b2S.prototype={ +gt8(a){var s,r=this,q=r.y +if(q===$){s=r.x.ae(t.I) +s.toString +r.y!==$&&A.am() +q=r.y=s.w}return q}, +gbY(a){return A.r(this.x).ax.cy}, +gc9(){var s=A.r(this.x).ax,r=s.k3 +return r==null?s.b:r}, +gbR(a){return B.u}, +gcG(a){return new A.cE(B.LM.L(this.gt8(this)),B.t)}, +gEI(){return new A.cE(B.LL.L(this.gt8(this)),B.t)}} +A.QD.prototype={ +m(){var s=this,r=s.c4$ +if(r!=null)r.J(0,s.ghI()) +s.c4$=null +s.aZ()}, +cn(){this.d3() +this.cT() +this.hJ()}} +A.Bo.prototype={ +gv(a){var s=this +return A.X(s.gbY(s),s.b,s.c,s.gbR(s),s.gc9(),s.gcG(s),s.gEI(),s.w,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.a1(b)!==A.o(s))return!1 +return b instanceof A.Bo&&J.i(b.gbY(b),s.gbY(s))&&J.i(b.b,s.b)&&b.c==s.c&&J.i(b.gbR(b),s.gbR(s))&&J.i(b.gc9(),s.gc9())&&J.i(b.gcG(b),s.gcG(s))&&J.i(b.gEI(),s.gEI())&&b.w==s.w}, +gbY(a){return this.a}, +gbR(a){return this.d}, +gc9(){return this.e}, +gcG(a){return this.f}, +gEI(){return this.r}} +A.afx.prototype={} +A.afy.prototype={ +aD(a,b){var s=null,r=b.b,q=A.S(this.r.$0(),0,Math.max(r-48,0)),p=t.Y,o=A.S(q+48,Math.min(48,r),r),n=this.f +q=new A.aO(q,0,p).a_(0,n.gk(n)) +this.w.kk(a,new A.l(0,q),new A.xa(s,s,s,s,new A.V(b.a-0,new A.aO(o,r,p).a_(0,n.gk(n))-q),s))}, +fw(a){var s,r=this +if(a.b.l(0,r.b))if(a.c===r.c)if(a.d===r.d)s=a.f!==r.f +else s=!0 +else s=!0 +else s=!0 +return s}} +A.FK.prototype={ +a8(){return new A.FL(B.m,this.$ti.h("FL<1>"))}} +A.FL.prototype={ +apB(a){var s,r,q=$.ar.al$.f.a.b +switch((q==null?A.zG():q).a){case 0:s=!1 +break +case 1:s=!0 +break +default:s=null}if(a&&s){q=this.a +r=q.c.NF(q.e,q.f.d,q.r) +this.a.c.fH.iZ(r.d,B.du,B.b_)}}, +at6(){var s,r=this.a +r=r.c.dH[r.r] +s=this.c +s.toString +A.j5(s,!1).e7(new A.lt(r.f.r,this.$ti.h("lt<1>")))}, +A(a){var s,r,q,p,o,n=this,m=null,l=n.a,k=l.c,j=0.5/(k.dH.length+1.5) +l=l.r +s=k.go +if(l===k.cg){s.toString +r=A.c_(B.KR,s,m)}else{q=A.S(0.5+(l+1)*j,0,1) +p=A.S(q+1.5*j,0,1) +s.toString +r=A.c_(new A.dO(q,p,B.Z),s,m)}l=n.a +k=l.d +s=l.c +l=l.r +o=A.jE(l===s.cg,m,!0,A.cP(m,s.dH[l],B.l,m,m,m,m,s.a0,m,k,m),m,!0,m,m,m,m,m,n.gapA(),m,m,m,n.gat5(),m,m,m,m,m,m,m) +o=A.NI(new A.cS(r,!1,o,m),m,B.a6Q) +return o}} +A.FJ.prototype={ +a8(){return new A.QF(B.m,this.$ti.h("QF<1>"))}} +A.QF.prototype={ +aR(){var s,r=this +r.b5() +s=r.a.c.go +s.toString +r.d=A.c_(B.tR,s,B.tS) +s=r.a.c.go +s.toString +r.e=A.c_(B.Vl,s,B.KR)}, +A(a){var s,r,q,p,o,n,m,l,k,j,i,h=this,g=null,f=A.A(a,B.ax,t.D) +f.toString +s=h.a.c +r=A.a([],t.p) +for(q=s.dH,p=h.$ti.h("FK<1>"),o=0;o0?8+B.b.lr(B.b.d2(this.hQ,0,a),new A.b32()):8}, +NF(a,b,c){var s,r,q,p,o=this,n=b-96,m=a.b,l=a.d,k=Math.min(l,b),j=o.Xw(c),i=Math.min(48,m),h=Math.max(b-48,k),g=o.hQ,f=o.cg +l-=m +s=m-j-(g[f]-l)/2 +r=B.cy.gcC(B.cy)+B.cy.gcH(B.cy) +if(o.dH.length!==0)r+=B.b.lr(g,new A.b33()) +q=Math.min(n,r) +p=s+q +if(sh){p=Math.max(k,h) +s=p-q}g=g[f]/2 +l=k-l/2 +if(p-gn?Math.min(Math.max(0,j-(m-s)),r-q):0)}, +grV(){return this.j7}} +A.b31.prototype={ +$2(a,b){var s=this.a +return new A.FM(s,b,s.E,s.al,s.cg,s.ez,s.aw,!0,s.fa,null,s.$ti.h("FM<1>"))}, +$S(){return this.a.$ti.h("FM<1>(E,aL)")}} +A.b32.prototype={ +$2(a,b){return a+b}, +$S:125} +A.b33.prototype={ +$2(a,b){return a+b}, +$S:125} +A.FM.prototype={ +A(a){var s=this,r=s.c +if(r.fH==null)r.fH=A.DU(r.NF(s.r,s.d.d,s.w).d,!0) +return A.aIK(new A.ej(new A.b30(s,A.eF(a),new A.FJ(r,s.f,s.r,s.d,s.Q,!0,s.at,null,s.$ti.h("FJ<1>"))),null),a,!0,!0,!0,!0)}} +A.b30.prototype={ +$1(a){var s=this.a +return new A.kV(new A.afz(s.r,s.c,this.b,s.$ti.h("afz<1>")),new A.ra(s.y.a,this.c,null),null)}, +$S:222} +A.Gg.prototype={ +aX(a){var s=new A.ako(this.e,null,A.aB(t.T)) +s.aW() +s.sbN(null) +return s}, +b4(a,b){b.C=this.e}} +A.ako.prototype={ +cj(){var s,r=this +r.yq() +s=r.gq(r) +r.C.$1(s)}} +A.QE.prototype={ +A(a){var s=null +return A.cP(this.d,this.c,B.l,s,B.M6,s,s,s,s,s,s)}} +A.pU.prototype={} +A.Ju.prototype={ +dr(a){return!1}} +A.Bp.prototype={ +a8(){return new A.FI(B.m,this.$ti.h("FI<1>"))}, +geB(a){return this.as}} +A.FI.prototype={ +gdC(a){var s +this.a.toString +s=this.r +return s}, +aR(){var s,r,q=this +q.b5() +q.a60() +s=q.a +s.toString +if(q.r==null)q.r=A.wT(!0,A.o(s).j(0),!0,!0,null,null,!1) +s=t.h +r=t.d +q.w=A.ap([B.ii,new A.cq(new A.b2Y(q),new A.bb(A.a([],s),r),t.wY),B.KW,new A.cq(new A.b2Z(q),new A.bb(A.a([],s),r),t.nz)],t.n,t.od)}, +m(){var s,r=this +B.b.F($.ar.cI$,r) +r.RO() +s=r.r +if(s!=null)s.m() +r.aZ()}, +RO(){var s,r,q=this.e +if(q!=null)if(q.gFi()){s=q.a +if(s!=null){r=q.gtl() +B.b.Lj(s.e,A.bkI(q)).er(0) +s.I2(!1) +if(r){s.Da(A.rK()) +s.P8()}}}this.f=this.e=null}, +aY(a){var s,r=this +r.br(a) +s=r.a +s.toString +if(r.r==null)r.r=A.wT(!0,A.o(s).j(0),!0,!0,null,null,!1) +r.a60()}, +a60(){var s,r,q=this,p=q.a,o=p.c +if(o.length!==0)if(p.d==null){p=new A.be(o,new A.b2W(q),A.ab(o).h("be<1>")) +p=!p.gaj(p).u()}else p=!1 +else p=!0 +if(p){q.d=null +return}for(p=q.a,o=p.c,s=o.length,r=0;r>")) +for(q=a1.h("Gg<1>"),p=0;o=a.a.c,p?>") +f=a1.h("aD?>") +e=A.lX(B.bN) +d=A.a([],t.wi) +c=A.ed(a0,t.v) +b=$.a9 +a.e=new A.QG(r,B.cU,q,o,8,l,m,48,a0,a0,!0,a0,j,k,a0,a0,i,new A.bo(a0,a1.h("bo>>")),new A.bo(a0,t.C),new A.oD(),a0,0,new A.aD(new A.a8(h,g),f),e,d,B.fD,c,new A.aD(new A.a8(b,g),f),a1.h("QG<1>")) +r=a.gdC(a) +if(r!=null)r.nS() +r=a.e +r.toString +n.Bk(r,a1.h("lt<1>")).b9(new A.b2V(a),t.H) +a.a.toString}, +gauI(){var s,r=this +if(r.gyF()){r.a.toString +s=r.c +s.toString +switch(A.r(s).ax.a.a){case 1:return B.e1 +case 0:return B.a7}}else{r.a.toString +s=r.c +s.toString +switch(A.r(s).ax.a.a){case 1:return B.hb +case 0:return B.mj}}}, +gyF(){var s=this.a +return s.c.length!==0&&!0}, +A(a){var s,r,q,p,o,n,m,l,k,j,i,h=this,g=null,f=A.cT(a,B.Lf),e=f==null?g:f.gBd(f) +if(e==null){s=A.P4(a).gnt() +e=s.a>s.b?B.kB:B.kA}f=h.f +if(f==null){h.f=e +f=e}if(e!==f){h.RO() +h.f=e}f=h.a +r=A.aa(f.c,!0,t.l7) +h.a.toString +f=h.gyF() +q=h.a +if(f)p=q.e +else p=q.e +o=r.length +f=h.gJt() +f.toString +f=f.co(A.r(a).db) +h.a.toString +r.push(A.fw(A.tK(new A.QE(p,B.d8,g),!0,g),g,g,B.aR,!0,f,g,g,B.aq)) +A.boh(a) +if(r.length===0)n=B.a_ +else{f=h.d +if(f==null)f=o +h.a.toString +q=A.ab(r).h("ad<1,aG>") +q=A.aa(new A.ad(r,new A.b2X(h),q),!0,q.h("ax.E")) +n=new A.a23(B.d8,f,q,g)}if(h.gyF()){f=h.gJt() +f.toString}else{f=h.gJt() +f.toString +f=f.co(A.r(a).ch)}q=a.ae(t.I) +q.toString +q=B.a4.L(q.w) +h.a.toString +m=t.p +l=A.a([],m) +h.a.toString +l.push(A.dD(n,1)) +k=h.gauI() +j=h.a.as +l.push(A.x9(j,new A.cX(24,g,g,g,g,k,g,g),g)) +e=A.fw(A.cP(g,A.dd(l,B.w,B.fk,B.aa),B.l,g,g,g,g,g,g,q,g),g,g,B.aR,!0,f,g,g,B.aq) +if(a.ae(t.U2)==null){h.a.toString +f=A.cP(g,g,B.l,g,g,B.Ma,g,1,g,g,g) +e=A.fr(B.bs,A.a([e,A.hc(8,f,g,g,0,0,g,g)],m),B.E,B.aH,g)}f=A.aY(t.ui) +if(!h.gyF())f.G(0,B.o) +i=A.cg(B.cN,f,t.Pb) +h.a.toString +f=h.w +f===$&&A.b() +q=h.gyF()?h.gapC():g +m=h.gyF() +h.a.toString +l=h.gdC(h) +h.a.toString +k=A.r(a) +h.a.toString +f=A.pC(f,A.jE(!1,g,m,e,g,!1,k.cx,l,g,g,i,g,g,g,g,q,g,g,g,g,g,g,g)) +return new A.bu(A.bI(g,g,g,g,g,!0,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g),!1,!1,!1,!1,f,g)}} +A.b2Y.prototype={ +$1(a){return this.a.PU()}, +$S:789} +A.b2Z.prototype={ +$1(a){return this.a.PU()}, +$S:790} +A.b2W.prototype={ +$1(a){var s=this.a.a.d +return a.r===s}, +$S(){return this.a.$ti.h("p(pU<1>)")}} +A.b2U.prototype={ +$1(a){var s=this.a.e +if(s==null)return +s.hQ[this.b]=a.b}, +$S:109} +A.b2V.prototype={ +$1(a){var s=this.a +s.RO() +if(s.c==null||a==null)return +s.a.r.$1(a.a)}, +$S(){return this.a.$ti.h("aE(lt<1>?)")}} +A.b2X.prototype={ +$1(a){var s +this.a.a.toString +s=A.cZ(a,48,null) +return s}, +$S:795} +A.V9.prototype={} +A.Jv.prototype={ +gv(a){return A.X(this.a,this.b,this.c,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r===b)return!0 +if(J.a1(b)!==A.o(r))return!1 +if(b instanceof A.Jv)if(J.i(b.a,r.a))s=J.i(b.c,r.c) +else s=!1 +else s=!1 +return s}} +A.afA.prototype={} +A.By.prototype={ +t5(a){var s,r,q,p,o,n,m,l,k,j=null,i=A.r(a),h=i.ax +if(A.r(a).y)s=new A.afK(a,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,B.S,!0,B.X,j) +else{r=h.c +s=h.db.a +q=s>>>16&255 +p=s>>>8&255 +s&=255 +o=A.K(31,q,p,s) +n=A.K(97,q,p,s) +s=A.bvI(a) +m=new A.QP(h.b,o) +l=new A.QP(r,n) +k=new A.afJ(r) +q=t.iL +s=A.Ie(B.X,B.S,m,new A.afH(2),!0,j,l,j,j,new A.bE(B.l4,q),new A.bE(B.oO,q),new A.afI(B.bB,B.bn),k,new A.bE(s,t.Ak),new A.bE(i.k2,t.h9),new A.bE(B.es,t.kU),j,B.iK,j,i.e,new A.bE(i.p3.as,t.wG),i.z)}return s}, +Gh(a){var s +a.ae(t.ds) +s=A.r(a) +return s.Z.a}} +A.QP.prototype={ +L(a){if(a.n(0,B.o))return this.b +return this.a}} +A.afJ.prototype={ +L(a){var s +if(a.n(0,B.K)){s=this.a.a +return A.K(61,s>>>16&255,s>>>8&255,s&255)}if(a.n(0,B.A)){s=this.a.a +return A.K(20,s>>>16&255,s>>>8&255,s&255)}if(a.n(0,B.y)){s=this.a.a +return A.K(61,s>>>16&255,s>>>8&255,s&255)}return null}} +A.afH.prototype={ +L(a){var s=this +if(a.n(0,B.o))return 0 +if(a.n(0,B.K))return s.a+6 +if(a.n(0,B.A))return s.a+2 +if(a.n(0,B.y))return s.a+2 +return s.a}} +A.afI.prototype={ +L(a){if(a.n(0,B.o))return this.b +return this.a}} +A.afM.prototype={ +t5(a){var s,r +if(A.r(a).y){s=A.cT(a,B.bb) +s=s==null?null:s.c +r=A.AB(B.mz,B.RT,B.RO,s==null?1:s)}else{s=A.cT(a,B.bb) +s=s==null?null:s.c +r=A.AB(B.RM,B.bC,B.RU,s==null?1:s)}return this.agU(a).wH(new A.bE(r,t.Ak))}} +A.afN.prototype={ +A(a){var s,r=null,q=A.cT(a,B.bb),p=q==null?r:q.c +if(p==null)p=1 +if(p<=1)s=8 +else{q=A.ag(8,4,Math.min(p-1,1)) +q.toString +s=q}return A.dd(A.a([this.d,A.cZ(r,r,s),new A.og(1,B.f4,this.c,r)],t.p),B.w,B.D,B.aa)}, +geB(a){return this.d}} +A.afK.prototype={ +grK(){var s,r=this,q=r.fr +if(q===$){s=A.r(r.dy) +r.fr!==$&&A.am() +q=r.fr=s.ax}return q}, +ghC(){return new A.bE(A.r(this.dy).p3.as,t.wG)}, +gbY(a){return new A.bc(new A.b34(this),t.U)}, +geW(){return new A.bc(new A.b36(this),t.U)}, +gcw(){return new A.bc(new A.b38(this),t.U)}, +gbR(a){var s=this.grK().fy +if(s==null)s=B.v +return new A.bE(s,t.h9)}, +gc9(){var s=this.grK(),r=s.k3 +s=r==null?s.b:r +return new A.bE(s,t.h9)}, +gfl(a){return new A.bc(new A.b35(),t.pj)}, +gdE(a){return new A.bE(A.bvI(this.dy),t.Ak)}, +glf(){return B.kt}, +gld(){return B.dN}, +gcG(a){return B.dM}, +gii(){return new A.bc(new A.b37(),t.Y6)}, +geF(){return A.r(this.dy).z}, +glt(){return A.r(this.dy).e}, +ghn(){return A.r(this.dy).x}} +A.b34.prototype={ +$1(a){var s +if(a.n(0,B.o)){s=this.a.grK().db.a +return A.K(31,s>>>16&255,s>>>8&255,s&255)}return this.a.grK().cy}, +$S:4} +A.b36.prototype={ +$1(a){var s +if(a.n(0,B.o)){s=this.a.grK().db.a +return A.K(97,s>>>16&255,s>>>8&255,s&255)}return this.a.grK().b}, +$S:4} +A.b38.prototype={ +$1(a){var s +if(a.n(0,B.K)){s=this.a.grK().b +return A.K(31,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.n(0,B.A)){s=this.a.grK().b +return A.K(20,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.n(0,B.y)){s=this.a.grK().b +return A.K(31,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}return null}, +$S:27} +A.b35.prototype={ +$1(a){if(a.n(0,B.o))return 0 +if(a.n(0,B.K))return 1 +if(a.n(0,B.A))return 3 +if(a.n(0,B.y))return 1 +return 1}, +$S:145} +A.b37.prototype={ +$1(a){if(a.n(0,B.o))return B.bn +return B.bB}, +$S:60} +A.aom.prototype={} +A.aon.prototype={} +A.aoo.prototype={} +A.aop.prototype={} +A.JA.prototype={ +gv(a){return J.T(this.a)}, +l(a,b){if(b==null)return!1 +if(this===b)return!0 +if(J.a1(b)!==A.o(this))return!1 +return b instanceof A.JA&&J.i(b.a,this.a)}} +A.afL.prototype={} +A.rg.prototype={} +A.aAR.prototype={} +A.JI.prototype={ +a8(){var s=null +return new A.QT(new A.uG(s,s),new A.dk(s,s),new A.dk(s,s),new A.dk(s,s),s,s,B.m)}} +A.QT.prototype={ +aR(){var s,r,q,p,o,n,m=this,l=null +m.b5() +s=m.w=A.bw(B.z,l,B.S,0,l,1,l,m) +r=$.bzN() +q=t.m +m.y=new A.aw(q.a(s),r,A.k(r).h("aw")) +p=$.bzP() +o=p.$ti.h("dq") +m.x=new A.aw(q.a(s),new A.dq(r,p,o),o.h("aw")) +o=m.d +p=$.bzO() +n=A.k(o).h("dq") +m.z=new A.aw(q.a(s),new A.dq(p,o,n),n.h("aw")) +n=m.e +o=A.k(n).h("dq") +m.Q=new A.aw(q.a(s),new A.dq(r,n,o),o.h("aw")) +o=m.f +n=A.k(o).h("dq") +m.as=new A.aw(q.a(s),new A.dq(r,o,n),n.h("aw")) +n=m.r +o=A.k(n).h("dq") +m.at=new A.aw(q.a(s),new A.dq(p,n,o),o.h("aw")) +o=m.c +o.toString +o=A.xX(o) +if(o==null)s=l +else{s=m.c +s.toString +s=o.MO(s)}A.cG(s) +if(s==null)s=m.a.z +m.ax=s +if(s)m.w.sk(0,1) +m.a.toString +s=new A.aAR() +m.ay=s +s.a=m}, +m(){var s=this.ay +s===$&&A.b() +s.a=null +s=this.w +s===$&&A.b() +s.m() +this.akG()}, +aCl(){var s,r,q=this,p=q.c +p.toString +p=A.A(p,B.L_,t.Uh) +p.toString +s=p.gcF() +p=q.c +p.toString +p=A.A(p,B.ax,t.D) +p.toString +r=q.ax?p.gbt():p.gbs() +q.a7(new A.b3k(q)) +q.a.toString +A.Nz(r,s,B.pW)}, +aq4(){this.aCl()}, +a0v(a){switch(1){case 0:return B.f8 +case 1:case 2:return B.de}}, +amZ(a){var s +this.a.toString +if(this.a0v(null)!==B.f8)return null +s=this.x +s===$&&A.b() +return A.aPS(B.tv,s)}, +anj(a){var s +this.a.toString +if(this.a0v(null)!==B.de)return null +s=this.x +s===$&&A.b() +return A.aPS(B.tv,s)}, +amT(a,b){var s,r,q,p,o,n,m,l,k=this,j=null,i=A.r(a),h=A.biz(a),g=k.z +g===$&&A.b() +s=g.a +r=g.b.a_(0,s.gk(s)) +if(r==null)r=B.q6 +k.a.toString +g=A.A(a,B.ax,t.D) +g.toString +q=k.ax?g.gbC():g.gbA() +switch(i.r.a){case 2:case 4:p=k.ax?g.gbs()+"\n "+g.gbB():g.gbt()+"\n "+g.gbz() +break +case 0:case 1:case 3:case 5:p=j +break +default:p=j}g=k.at +g===$&&A.b() +s=g.a +s=g.b.a_(0,s.gk(s)) +g=s==null?h.a:s +if(g==null)g=B.u +s=k.as +s===$&&A.b() +o=s.a +o=s.b.a_(0,o.gk(o)) +s=o==null?h.f:o +o=k.Q +o===$&&A.b() +n=o.a +n=o.b.a_(0,n.gk(n)) +k.a.toString +o=k.amZ(a) +m=k.a.d +l=k.anj(a) +s=A.bqu(A.bH(!1,h.c,j,j,!0,j,j,!1,j,o,j,j,k.gaq3(),!1,j,j,j,j,j,m,l,j),s,j,n) +o=new A.Nw(q,j) +o=A.bI(j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,p,o,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j) +k.a.toString +n=h.d +if(n==null)n=B.X +m=k.y +m===$&&A.b() +l=m.a +return A.cP(j,A.cO(A.a([new A.bu(o,!1,!1,!1,!1,s,j),A.tb(new A.e5(n,j,m.b.a_(0,l.gk(l)),b,j),B.E)],t.p),B.w,B.D,B.aa),B.l,j,j,new A.hH(g,j,j,j,r),j,j,j,j,j)}, +cp(){var s,r,q,p,o,n=this,m=null,l=n.c +l.toString +s=A.r(l) +l=n.c +l.toString +r=A.biz(l) +l=n.c +if(s.y){l.toString +q=new A.b3h(l,m,m,m,m,m,m,m,m,m,m,m)}else{l.toString +q=new A.b3g(l,m,m,m,m,m,m,m,m,m,m,m)}l=n.d +p=n.a +p.toString +o=r.z +l.a=o==null?B.q6:o +p=p.db +if(p==null)p=o +if(p==null){p=s.CW +p=new A.ei(new A.b9(p,1,B.M,-1),B.t,new A.b9(p,1,B.M,-1),B.t)}l.b=p +p=n.e +l=r.x +p.a=l==null?q.gzE():l +l=n.a.cx +if(l==null)l=r.w +p.b=l==null?q.gBy():l +l=n.f +n.a.toString +p=r.r +l.a=p==null?q.gzD():p +p=n.a.ch +if(p==null)p=r.f +l.b=p==null?q.geK():p +l=n.r +n.a.toString +l.a=r.b +l.b=r.a +n.ei()}, +A(a){var s,r,q,p,o,n=this,m=null,l=A.biz(a) +if(!n.ax){s=n.w +s===$&&A.b() +r=s.gaL(s)===B.Q}else r=!1 +if(r){n.a.toString +q=!0}else q=!1 +s=n.a +s.toString +p=l.e +if(p==null)p=B.a4 +o=new A.CX(r,new A.zc(!r,new A.b8(p,A.cO(s.r,B.w,B.D,B.T),m),m),m) +s=n.w +s===$&&A.b() +p=q?m:o +return A.h1(s,n.gamS(),p)}, +$iaN:1} +A.b3k.prototype={ +$0(){var s,r=this.a,q=!r.ax +r.ax=q +s=r.w +if(q){s===$&&A.b() +s.bS(0)}else{s===$&&A.b() +s.d9(0).b9(new A.b3j(r),t.H)}q=r.c +q.toString +q=A.xX(q) +if(q!=null){s=r.c +s.toString +q.Nr(s,r.ax)}}, +$S:0} +A.b3j.prototype={ +$1(a){var s=this.a +if(s.c==null)return +s.a7(new A.b3i())}, +$S:20} +A.b3i.prototype={ +$0(){}, +$S:0} +A.b3g.prototype={ +gQ2(){var s,r=this,q=r.at +if(q===$){s=A.r(r.as) +r.at!==$&&A.am() +r.at=s +q=s}return q}, +ga_K(){var s,r=this,q=r.ax +if(q===$){s=r.gQ2() +r.ax!==$&&A.am() +q=r.ax=s.ax}return q}, +gBy(){return this.ga_K().b}, +geK(){return this.ga_K().b}, +gzE(){return this.gQ2().p3.w.b}, +gzD(){return this.gQ2().k4}} +A.b3h.prototype={ +gI_(){var s,r=this,q=r.ax +if(q===$){q=r.at +if(q===$){s=A.r(r.as) +r.at!==$&&A.am() +r.at=s +q=s}r.ax!==$&&A.am() +q=r.ax=q.ax}return q}, +gBy(){return this.gI_().db}, +geK(){return this.gI_().b}, +gzE(){return this.gI_().db}, +gzD(){var s=this.gI_(),r=s.dy +return r==null?s.db:r}} +A.Va.prototype={ +m(){var s=this,r=s.c4$ +if(r!=null)r.J(0,s.ghI()) +s.c4$=null +s.aZ()}, +cn(){this.d3() +this.cT() +this.hJ()}} +A.BE.prototype={ +gv(a){var s=this +return A.X(s.a,s.b,s.c,s.d,s.e,s.geK(),s.gzD(),s.gBy(),s.gzE(),s.y,s.z,null,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.a1(b)!==A.o(s))return!1 +return b instanceof A.BE&&J.i(b.a,s.a)&&J.i(b.b,s.b)&&J.i(b.c,s.c)&&J.i(b.d,s.d)&&J.i(b.e,s.e)&&J.i(b.geK(),s.geK())&&J.i(b.gzD(),s.gzD())&&J.i(b.gBy(),s.gBy())&&J.i(b.gzE(),s.gzE())&&J.i(b.y,s.y)&&J.i(b.z,s.z)&&!0}, +geK(){return this.f}, +gzD(){return this.r}, +gBy(){return this.w}, +gzE(){return this.x}} +A.afR.prototype={} +A.b3S.prototype={ +K(){return"_FilledButtonVariant."+this.b}} +A.a0X.prototype={ +t5(a){var s=null +switch(0){case 0:return new A.ag0(a,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,B.S,!0,B.X,s)}}, +Gh(a){var s +a.ae(t.Q9) +s=A.r(a) +return s.av.a}} +A.ag0.prototype={ +gua(){var s,r=this,q=r.fr +if(q===$){s=A.r(r.dy) +r.fr!==$&&A.am() +q=r.fr=s.ax}return q}, +ghC(){return new A.bE(A.r(this.dy).p3.as,t.wG)}, +gbY(a){return new A.bc(new A.b3N(this),t.U)}, +geW(){return new A.bc(new A.b3P(this),t.U)}, +gcw(){return new A.bc(new A.b3R(this),t.U)}, +gbR(a){var s=this.gua().fy +if(s==null)s=B.v +return new A.bE(s,t.h9)}, +gc9(){return B.bE}, +gfl(a){return new A.bc(new A.b3O(),t.pj)}, +gdE(a){return new A.bE(A.bQ6(this.dy),t.Ak)}, +glf(){return B.kt}, +gld(){return B.dN}, +gcG(a){return B.dM}, +gii(){return new A.bc(new A.b3Q(),t.Y6)}, +geF(){return A.r(this.dy).z}, +glt(){return A.r(this.dy).e}, +ghn(){return A.r(this.dy).x}} +A.b3N.prototype={ +$1(a){var s +if(a.n(0,B.o)){s=this.a.gua().db.a +return A.K(31,s>>>16&255,s>>>8&255,s&255)}return this.a.gua().b}, +$S:4} +A.b3P.prototype={ +$1(a){var s +if(a.n(0,B.o)){s=this.a.gua().db.a +return A.K(97,s>>>16&255,s>>>8&255,s&255)}return this.a.gua().c}, +$S:4} +A.b3R.prototype={ +$1(a){var s +if(a.n(0,B.K)){s=this.a.gua().c.a +return A.K(31,s>>>16&255,s>>>8&255,s&255)}if(a.n(0,B.A)){s=this.a.gua().c.a +return A.K(20,s>>>16&255,s>>>8&255,s&255)}if(a.n(0,B.y)){s=this.a.gua().c.a +return A.K(31,s>>>16&255,s>>>8&255,s&255)}return null}, +$S:27} +A.b3O.prototype={ +$1(a){if(a.n(0,B.o))return 0 +if(a.n(0,B.K))return 0 +if(a.n(0,B.A))return 1 +if(a.n(0,B.y))return 0 +return 0}, +$S:145} +A.b3Q.prototype={ +$1(a){if(a.n(0,B.o))return B.bn +return B.bB}, +$S:60} +A.JM.prototype={ +gv(a){return J.T(this.a)}, +l(a,b){if(b==null)return!1 +if(this===b)return!0 +if(J.a1(b)!==A.o(this))return!1 +return b instanceof A.JM&&J.i(b.a,this.a)}} +A.ag1.prototype={} +A.JS.prototype={ +dr(a){var s=this +return s.f!==a.f||s.r!==a.r||s.w!==a.w||s.x!==a.x||!1}} +A.b2y.prototype={ +j(a){return""}} +A.QY.prototype={ +K(){return"_FloatingActionButtonType."+this.b}} +A.wQ.prototype={ +A(a8){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.r(a8),a2=a1.ar,a3=a.k1,a4=a.c,a5=a4==null,a6=a1.y?new A.b3m(a8,a3,!a5,a0,a0,a0,a0,a0,6,6,8,a0,6,a0,!0,a0,B.q9,B.q8,B.qa,B.M2,8,a0,a0,a0):new A.b3l(a3,!a5,A.r(a8),A.r(a8).ax,a0,a0,a0,a0,a0,6,6,8,a0,12,a0,!0,a0,B.q9,B.q8,B.qa,B.M3,8,a0,a0,a0),a7=a2.a +if(a7==null)a7=a6.geW() +s=a2.b +if(s==null)s=a6.gbY(a6) +r=a2.c +if(r==null)r=a6.gka() +q=a2.d +if(q==null)q=a6.gqN() +p=a2.e +if(p==null)p=a6.gyf() +o=a2.f +if(o==null){a5=a6.f +a5.toString +o=a5}n=a2.r +if(n==null){a5=a6.r +a5.toString +n=a5}m=a2.w +if(m==null){a5=a6.w +a5.toString +m=a5}a5=a2.x +l=a5==null?a6.x:a5 +if(l==null)l=o +k=a2.y +if(k==null){a5=a6.y +a5.toString +k=a5}j=a2.Q +if(j==null){a5=a6.Q +a5.toString +j=a5}i=a2.as +if(i==null){a5=a6.gj8() +a5.toString +i=a5}a5=a2.cy +if(a5==null){a5=a6.gAo() +a5.toString}h=a5.co(a7) +g=a2.z +if(g==null){a5=a6.gcG(a6) +a5.toString +g=a5}a5=a4!=null +f=a5?A.mP(a4,new A.cX(i,a0,a0,a0,a0,a0,a0,a0)):a4 +switch(a3.a){case 0:e=a2.at +if(e==null){a3=a6.at +a3.toString +e=a3}a4=f +break +case 1:e=a2.ax +if(e==null){a3=a6.ax +a3.toString +e=a3}a4=f +break +case 2:e=a2.ay +if(e==null){a3=a6.ay +a3.toString +e=a3}a4=f +break +case 3:e=a2.ch +if(e==null){a3=a6.ch +a3.toString +e=a3}d=a2.CW +if(d==null)d=8 +c=a2.cx +if(c==null)c=a6.gAn() +a3=A.a([],t.p) +if(a5)a3.push(a4) +if(a5&&a.db)a3.push(A.cZ(a0,a0,d)) +if(a.db){a5=a.k2 +a5.toString +a3.push(a5)}a4=new A.ae3(new A.b8(c,A.dd(a3,B.w,B.D,B.aa),a0),a0) +break +default:a4=f +e=a0}b=A.bpW(new A.MD(a.z,new A.afF(a.Q,a2.db),h,s,r,q,p,o,m,n,k,l,e,g,a4,a1.e,a0,!1,B.l,j,a0),a0,a0,a0,B.OC,!1) +return new A.u8(b,a0)}} +A.afF.prototype={ +L(a){var s=A.cg(this.a,a,t.WV) +if(s==null)s=null +return s==null?B.cN.L(a):s}, +gzR(){return"MaterialStateMouseCursor(FloatActionButton)"}} +A.ae3.prototype={ +aX(a){var s=a.ae(t.I) +s.toString +s=new A.SA(B.X,s.w,null,A.aB(t.T)) +s.aW() +s.sbN(null) +return s}, +b4(a,b){var s=a.ae(t.I) +s.toString +b.scF(s.w)}} +A.SA.prototype={ +c3(a){return 0}, +bW(a){return 0}, +ds(a){var s,r=this.E$,q=a.a,p=a.b,o=a.c,n=a.d +if(r!=null){s=r.lC(B.eS) +return new A.V(Math.max(q,Math.min(p,s.a)),Math.max(o,Math.min(n,s.b)))}else return new A.V(A.S(1/0,q,p),A.S(1/0,o,n))}, +cj(){var s=this,r=t.k.a(A.H.prototype.ga4.call(s)),q=s.E$,p=r.a,o=r.b,n=r.c,m=r.d +if(q!=null){q.cX(B.eS,!0) +q=s.E$ +q=Math.max(p,Math.min(o,q.gq(q).a)) +o=s.E$ +s.id=new A.V(q,Math.max(n,Math.min(m,o.gq(o).b))) +s.K6()}else s.id=new A.V(A.S(1/0,p,o),A.S(1/0,n,m))}} +A.b3l.prototype={ +geW(){return this.fx.r}, +gbY(a){return this.fx.f}, +gka(){return this.fr.cx}, +gqN(){return this.fr.dx}, +gyf(){return this.fr.k3}, +gcG(a){return this.dx===B.ll?B.fK:B.e0}, +gj8(){return this.dx===B.anU?36:24}, +gAn(){return new A.eH(this.dy&&this.dx===B.ll?16:20,0,20,0)}, +gAo(){return this.fr.p3.as.aG0(1.2)}} +A.b3m.prototype={ +gD_(){var s,r=this,q=r.fx +if(q===$){s=A.r(r.dx) +r.fx!==$&&A.am() +q=r.fx=s.ax}return q}, +geW(){var s=this.gD_(),r=s.e +return r==null?s.c:r}, +gbY(a){var s=this.gD_(),r=s.d +return r==null?s.b:r}, +gyf(){var s=this.gD_(),r=s.e +s=(r==null?s.c:r).a +return A.K(31,s>>>16&255,s>>>8&255,s&255)}, +gka(){var s=this.gD_(),r=s.e +s=(r==null?s.c:r).a +return A.K(31,s>>>16&255,s>>>8&255,s&255)}, +gqN(){var s=this.gD_(),r=s.e +s=(r==null?s.c:r).a +return A.K(20,s>>>16&255,s>>>8&255,s&255)}, +gcG(a){switch(this.dy.a){case 0:return B.os +case 1:return B.Jf +case 2:return B.Jg +case 3:return B.os}}, +gj8(){switch(this.dy.a){case 0:return 24 +case 1:return 24 +case 2:return 36 +case 3:return 24}}, +gAn(){return new A.eH(this.fr&&this.dy===B.ll?16:20,0,20,0)}, +gAo(){var s,r=this,q=r.fy +if(q===$){s=A.r(r.dx) +r.fy!==$&&A.am() +q=r.fy=s.p3}return q.as}} +A.aBW.prototype={ +j(a){return"FloatingActionButtonLocation"}} +A.aVQ.prototype={ +q7(a){return new A.l(this.XD(a,0),this.aeI(a,0))}} +A.a0R.prototype={ +aeI(a,b){var s=a.c,r=a.b.b,q=a.a.b,p=a.w.b,o=s-q-Math.max(16,a.f.d-(a.r.b-s)+16) +if(p>0)o=Math.min(o,s-p-q-16) +return(r>0?Math.min(o,s-r-q/2):o)+b}} +A.aBb.prototype={ +XD(a,b){return(a.r.a-a.a.a)/2}} +A.aBc.prototype={ +XD(a,b){switch(a.y.a){case 0:return 16+a.e.a-b +case 1:return a.r.a-16-a.e.c-a.a.a+b}}} +A.b1w.prototype={ +j(a){return"FloatingActionButtonLocation.centerFloat"}} +A.b3a.prototype={ +j(a){return"FloatingActionButtonLocation.endFloat"}} +A.aBV.prototype={ +j(a){return"FloatingActionButtonAnimator"}} +A.b9V.prototype={ +XA(a,b,c){if(c<0.5)return a +else return b}} +A.Py.prototype={ +gk(a){var s=this,r=s.w.x +r===$&&A.b() +if(r>>16&255,r.gk(r)>>>8&255,r.gk(r)&255) +return s}if(a.n(0,B.A)){s=q.c +r=q.a +s=r==null?p:A.K(20,r.gk(r)>>>16&255,r.gk(r)>>>8&255,r.gk(r)&255) +return s}if(a.n(0,B.y)){s=q.b +r=q.a +s=r==null?p:A.K(31,r.gk(r)>>>16&255,r.gk(r)>>>8&255,r.gk(r)&255) +return s}}if(a.n(0,B.K)){s=q.d +r=q.a +s=r==null?p:A.K(31,r.gk(r)>>>16&255,r.gk(r)>>>8&255,r.gk(r)&255) +return s}if(a.n(0,B.A)){s=q.c +r=q.a +s=r==null?p:A.K(20,r.gk(r)>>>16&255,r.gk(r)>>>8&255,r.gk(r)&255) +return s}if(a.n(0,B.y)){s=q.b +r=q.a +s=r==null?p:A.K(20,r.gk(r)>>>16&255,r.gk(r)>>>8&255,r.gk(r)&255) +return s}return p}, +j(a){return"{hovered: "+A.h(this.c)+", focused: "+A.h(this.b)+", pressed: "+A.h(this.d)+", otherwise: null}"}} +A.agH.prototype={ +L(a){if(a.n(0,B.o))return this.b +return this.a}} +A.agJ.prototype={ +gcm(){var s,r=this,q=r.fx +if(q===$){s=A.r(r.dy) +r.fx!==$&&A.am() +q=r.fx=s.ax}return q}, +gbY(a){return B.a9w}, +geW(){return new A.bc(new A.b4V(this),t.U)}, +gcw(){return new A.bc(new A.b4X(this),t.U)}, +gfl(a){return B.fm}, +gbR(a){return B.bE}, +gc9(){return B.bE}, +gdE(a){return B.ku}, +glf(){return B.ks}, +gld(){return B.dN}, +gj8(){return B.kr}, +geP(){return null}, +gcG(a){return B.dM}, +gii(){return new A.bc(new A.b4W(),t.Y6)}, +geF(){return B.fN}, +glt(){return A.r(this.dy).e}, +ghn(){return A.r(this.dy).x}} +A.b4V.prototype={ +$1(a){var s,r +if(a.n(0,B.o)){s=this.a.gcm().db.a +return A.K(97,s>>>16&255,s>>>8&255,s&255)}if(a.n(0,B.B))return this.a.gcm().b +s=this.a.gcm() +r=s.dy +return r==null?s.db:r}, +$S:4} +A.b4X.prototype={ +$1(a){var s,r,q=this +if(a.n(0,B.B)){if(a.n(0,B.K)){s=q.a.gcm().b +return A.K(31,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.n(0,B.A)){s=q.a.gcm().b +return A.K(20,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.n(0,B.y)){s=q.a.gcm().b +return A.K(31,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}}if(a.n(0,B.K)){s=q.a.gcm() +r=s.dy +s=(r==null?s.db:r).a +return A.K(31,s>>>16&255,s>>>8&255,s&255)}if(a.n(0,B.A)){s=q.a.gcm() +r=s.dy +s=(r==null?s.db:r).a +return A.K(20,s>>>16&255,s>>>8&255,s&255)}if(a.n(0,B.y)){s=q.a.gcm() +r=s.dy +s=(r==null?s.db:r).a +return A.K(31,s>>>16&255,s>>>8&255,s&255)}return B.u}, +$S:4} +A.b4W.prototype={ +$1(a){if(a.n(0,B.o))return B.bn +return B.bB}, +$S:60} +A.ag2.prototype={ +gcm(){var s,r=this,q=r.fx +if(q===$){s=A.r(r.dy) +r.fx!==$&&A.am() +q=r.fx=s.ax}return q}, +gbY(a){return new A.bc(new A.b3T(this),t.U)}, +geW(){return new A.bc(new A.b3U(this),t.U)}, +gcw(){return new A.bc(new A.b3W(this),t.U)}, +gfl(a){return B.fm}, +gbR(a){return B.bE}, +gc9(){return B.bE}, +gdE(a){return B.ku}, +glf(){return B.ks}, +gld(){return B.dN}, +gj8(){return B.kr}, +geP(){return null}, +gcG(a){return B.dM}, +gii(){return new A.bc(new A.b3V(),t.Y6)}, +geF(){return B.fN}, +glt(){return A.r(this.dy).e}, +ghn(){return A.r(this.dy).x}} +A.b3T.prototype={ +$1(a){var s,r +if(a.n(0,B.o)){s=this.a.gcm().db.a +return A.K(31,s>>>16&255,s>>>8&255,s&255)}if(a.n(0,B.B))return this.a.gcm().b +s=this.a +if(s.fr){s=s.gcm() +r=s.dx +return r==null?s.cy:r}return s.gcm().b}, +$S:4} +A.b3U.prototype={ +$1(a){var s +if(a.n(0,B.o)){s=this.a.gcm().db.a +return A.K(97,s>>>16&255,s>>>8&255,s&255)}if(a.n(0,B.B))return this.a.gcm().c +s=this.a +if(s.fr)return s.gcm().b +return s.gcm().c}, +$S:4} +A.b3W.prototype={ +$1(a){var s,r=this +if(a.n(0,B.B)){if(a.n(0,B.K)){s=r.a.gcm().c.a +return A.K(31,s>>>16&255,s>>>8&255,s&255)}if(a.n(0,B.A)){s=r.a.gcm().c.a +return A.K(20,s>>>16&255,s>>>8&255,s&255)}if(a.n(0,B.y)){s=r.a.gcm().c.a +return A.K(31,s>>>16&255,s>>>8&255,s&255)}}s=r.a +if(s.fr){if(a.n(0,B.K)){s=s.gcm().b +return A.K(31,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.n(0,B.A)){s=s.gcm().b +return A.K(20,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.n(0,B.y)){s=s.gcm().b +return A.K(31,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}}if(a.n(0,B.K)){s=s.gcm().c.a +return A.K(31,s>>>16&255,s>>>8&255,s&255)}if(a.n(0,B.A)){s=s.gcm().c.a +return A.K(20,s>>>16&255,s>>>8&255,s&255)}if(a.n(0,B.y)){s=s.gcm().c.a +return A.K(31,s>>>16&255,s>>>8&255,s&255)}return B.u}, +$S:4} +A.b3V.prototype={ +$1(a){if(a.n(0,B.o))return B.bn +return B.bB}, +$S:60} +A.ag3.prototype={ +gcm(){var s,r=this,q=r.fx +if(q===$){s=A.r(r.dy) +r.fx!==$&&A.am() +q=r.fx=s.ax}return q}, +gbY(a){return new A.bc(new A.b3X(this),t.U)}, +geW(){return new A.bc(new A.b3Y(this),t.U)}, +gcw(){return new A.bc(new A.b4_(this),t.U)}, +gfl(a){return B.fm}, +gbR(a){return B.bE}, +gc9(){return B.bE}, +gdE(a){return B.ku}, +glf(){return B.ks}, +gld(){return B.dN}, +gj8(){return B.kr}, +geP(){return null}, +gcG(a){return B.dM}, +gii(){return new A.bc(new A.b3Z(),t.Y6)}, +geF(){return B.fN}, +glt(){return A.r(this.dy).e}, +ghn(){return A.r(this.dy).x}} +A.b3X.prototype={ +$1(a){var s,r +if(a.n(0,B.o)){s=this.a.gcm().db.a +return A.K(31,s>>>16&255,s>>>8&255,s&255)}if(a.n(0,B.B)){s=this.a.gcm() +r=s.w +return r==null?s.f:r}s=this.a +if(s.fr){s=s.gcm() +r=s.dx +return r==null?s.cy:r}s=s.gcm() +r=s.w +return r==null?s.f:r}, +$S:4} +A.b3Y.prototype={ +$1(a){var s,r +if(a.n(0,B.o)){s=this.a.gcm().db.a +return A.K(97,s>>>16&255,s>>>8&255,s&255)}if(a.n(0,B.B)){s=this.a.gcm() +r=s.x +return r==null?s.r:r}s=this.a +if(s.fr){s=s.gcm() +r=s.dy +return r==null?s.db:r}s=s.gcm() +r=s.x +return r==null?s.r:r}, +$S:4} +A.b4_.prototype={ +$1(a){var s,r,q=this +if(a.n(0,B.B)){if(a.n(0,B.K)){s=q.a.gcm() +r=s.x +s=(r==null?s.r:r).a +return A.K(31,s>>>16&255,s>>>8&255,s&255)}if(a.n(0,B.A)){s=q.a.gcm() +r=s.x +s=(r==null?s.r:r).a +return A.K(20,s>>>16&255,s>>>8&255,s&255)}if(a.n(0,B.y)){s=q.a.gcm() +r=s.x +s=(r==null?s.r:r).a +return A.K(31,s>>>16&255,s>>>8&255,s&255)}}s=q.a +if(s.fr){if(a.n(0,B.K)){s=s.gcm() +r=s.dy +s=(r==null?s.db:r).a +return A.K(31,s>>>16&255,s>>>8&255,s&255)}if(a.n(0,B.A)){s=s.gcm() +r=s.dy +s=(r==null?s.db:r).a +return A.K(20,s>>>16&255,s>>>8&255,s&255)}if(a.n(0,B.y)){s=s.gcm() +r=s.dy +s=(r==null?s.db:r).a +return A.K(31,s>>>16&255,s>>>8&255,s&255)}}if(a.n(0,B.K)){s=s.gcm() +r=s.x +s=(r==null?s.r:r).a +return A.K(31,s>>>16&255,s>>>8&255,s&255)}if(a.n(0,B.A)){s=s.gcm() +r=s.x +s=(r==null?s.r:r).a +return A.K(20,s>>>16&255,s>>>8&255,s&255)}if(a.n(0,B.y)){s=s.gcm() +r=s.x +s=(r==null?s.r:r).a +return A.K(31,s>>>16&255,s>>>8&255,s&255)}return B.u}, +$S:4} +A.b3Z.prototype={ +$1(a){if(a.n(0,B.o))return B.bn +return B.bB}, +$S:60} +A.aiR.prototype={ +gcm(){var s,r=this,q=r.fx +if(q===$){s=A.r(r.dy) +r.fx!==$&&A.am() +q=r.fx=s.ax}return q}, +gbY(a){return new A.bc(new A.b7n(this),t.U)}, +geW(){return new A.bc(new A.b7o(this),t.U)}, +gcw(){return new A.bc(new A.b7q(this),t.U)}, +gfl(a){return B.fm}, +gbR(a){return B.bE}, +gc9(){return B.bE}, +gdE(a){return B.ku}, +glf(){return B.ks}, +gld(){return B.dN}, +gj8(){return B.kr}, +geP(){return new A.bc(new A.b7r(this),t.Sq)}, +gcG(a){return B.dM}, +gii(){return new A.bc(new A.b7p(),t.Y6)}, +geF(){return B.fN}, +glt(){return A.r(this.dy).e}, +ghn(){return A.r(this.dy).x}} +A.b7n.prototype={ +$1(a){var s,r +if(a.n(0,B.o)){if(a.n(0,B.B)){s=this.a.gcm().db.a +return A.K(31,s>>>16&255,s>>>8&255,s&255)}return B.u}if(a.n(0,B.B)){s=this.a.gcm() +r=s.id +return r==null?s.db:r}return B.u}, +$S:4} +A.b7o.prototype={ +$1(a){var s,r +if(a.n(0,B.o)){s=this.a.gcm().db.a +return A.K(97,s>>>16&255,s>>>8&255,s&255)}if(a.n(0,B.B)){s=this.a.gcm() +r=s.k1 +return r==null?s.cy:r}s=this.a.gcm() +r=s.dy +return r==null?s.db:r}, +$S:4} +A.b7q.prototype={ +$1(a){var s,r,q=this +if(a.n(0,B.B)){if(a.n(0,B.K)){s=q.a.gcm() +r=s.k1 +s=(r==null?s.cy:r).a +return A.K(31,s>>>16&255,s>>>8&255,s&255)}if(a.n(0,B.A)){s=q.a.gcm() +r=s.k1 +s=(r==null?s.cy:r).a +return A.K(20,s>>>16&255,s>>>8&255,s&255)}if(a.n(0,B.y)){s=q.a.gcm() +r=s.k1 +s=(r==null?s.cy:r).a +return A.K(20,s>>>16&255,s>>>8&255,s&255)}}if(a.n(0,B.K)){s=q.a.gcm().db.a +return A.K(31,s>>>16&255,s>>>8&255,s&255)}if(a.n(0,B.A)){s=q.a.gcm() +r=s.dy +s=(r==null?s.db:r).a +return A.K(20,s>>>16&255,s>>>8&255,s&255)}if(a.n(0,B.y)){s=q.a.gcm() +r=s.dy +s=(r==null?s.db:r).a +return A.K(20,s>>>16&255,s>>>8&255,s&255)}return B.u}, +$S:4} +A.b7r.prototype={ +$1(a){var s,r +if(a.n(0,B.B))return null +else{if(a.n(0,B.o)){s=this.a.gcm().db.a +return new A.b9(A.K(31,s>>>16&255,s>>>8&255,s&255),1,B.M,-1)}s=this.a.gcm() +r=s.fr +return new A.b9(r==null?s.cx:r,1,B.M,-1)}}, +$S:835} +A.b7p.prototype={ +$1(a){if(a.n(0,B.o))return B.bn +return B.bB}, +$S:60} +A.aox.prototype={} +A.qe.prototype={ +gv(a){return J.T(this.a)}, +l(a,b){if(b==null)return!1 +if(this===b)return!0 +if(J.a1(b)!==A.o(this))return!1 +return b instanceof A.qe&&J.i(b.a,this.a)}} +A.Kk.prototype={ +xQ(a,b,c){return A.a1T(c,this.w)}, +dr(a){return!this.w.l(0,a.w)}} +A.agL.prototype={} +A.xc.prototype={ +gauW(){var s,r=this.e +if(r==null)return B.a4 +s=r.gdE(r) +return s}, +a8(){return new A.Ru(new A.bo(null,t.C),B.m)}} +A.Ru.prototype={ +atv(){this.e=null}, +fk(){var s=this.e +if(s!=null)s.m() +this.rF()}, +amQ(a){var s,r,q,p=this,o=null,n=p.e,m=p.a +if(n==null){n=m.e +m=A.bt9(a) +s=A.VV(a,o) +r=A.aHn(a,t.zd) +r.toString +q=$.ar.al$.z.i(0,p.d).ga9() +q.toString +q=new A.Ks(s,r,t.x.a(q),p.gatu()) +q.sba(n) +q.saaU(m) +r.K0(q) +p.e=q}else{n.sba(m.e) +n=p.e +n.toString +n.saaU(A.bt9(a)) +n=p.e +n.toString +n.swG(A.VV(a,o))}n=p.a.c +return n==null?new A.ew(B.iE,o,o):n}, +A(a){var s=this,r=s.a.gauW() +s.a.toString +return new A.b8(r,new A.ej(s.gamP(),null),s.d)}} +A.Ks.prototype={ +sba(a){var s,r=this +if(J.i(a,r.f))return +r.f=a +s=r.e +if(s!=null)s.m() +s=r.f +r.e=s==null?null:s.zP(r.gauU()) +r.a.aU()}, +saaU(a){if(a===this.r)return +this.r=a +this.a.aU()}, +swG(a){if(a.l(0,this.w))return +this.w=a +this.a.aU()}, +auV(){this.a.aU()}, +m(){var s=this.e +if(s!=null)s.m() +this.rC()}, +My(a,b){var s,r,q,p=this +if(p.e==null||!p.r)return +s=A.aIG(b) +r=p.b +q=p.w.TM(r.gq(r)) +if(s==null){a.eb(0) +a.a_(0,b.a) +p.e.kk(a,B.i,q) +a.dq(0)}else p.e.kk(a,s,q)}} +A.tP.prototype={ +ary(a){var s +if(a===B.Q&&!this.CW){s=this.ch +s===$&&A.b() +s.m() +this.rC()}}, +m(){var s=this.ch +s===$&&A.b() +s.m() +this.rC()}, +a30(a,b,c){var s,r,q=this +a.eb(0) +s=q.f +if(s!=null)a.mr(0,s.eh(b,q.ax)) +switch(q.z.a){case 1:s=b.gbH() +r=q.Q +a.ha(s,r==null?35:r,c) +break +case 0:s=q.as +if(!s.l(0,B.aJ))a.de(A.a6J(b,s.c,s.d,s.a,s.b),c) +else a.el(b,c) +break}a.dq(0)}, +My(a,b){var s,r,q,p=this,o=$.as().bn(),n=p.e,m=p.ay +m===$&&A.b() +s=m.a +o.sa5(0,A.K(m.b.a_(0,s.gk(s)),n.gk(n)>>>16&255,n.gk(n)>>>8&255,n.gk(n)&255)) +r=A.aIG(b) +n=p.at +if(n!=null)q=n.$0() +else{n=p.b +n=n.gq(n) +q=new A.I(0,0,0+n.a,0+n.b)}if(r==null){a.eb(0) +a.a_(0,b.a) +p.a30(a,q,o) +a.dq(0)}else p.a30(a,q.dw(r),o)}} +A.bdR.prototype={ +$0(){var s=this.a +s=s.gq(s) +return new A.I(0,0,0+s.a,0+s.b)}, +$S:117} +A.b5h.prototype={ +a8a(a,b,c,d,e,f,g,a0,a1,a2,a3,a4){var s,r,q,p,o,n,m,l,k,j,i=null,h=b==null?B.aJ:b +if(a1==null){if(a2!=null){s=a2.$0() +r=new A.V(s.c-s.a,s.d-s.b)}else r=a3.gq(a3) +s=Math.max(r.E8(0,B.i).ge3(),new A.l(0+r.a,0).a2(0,new A.l(0,0+r.b)).ge3())/2}else s=a1 +h=new A.Kt(a0,h,s,A.bPc(a3,d,a2),a4,c,f,e,a3,g) +q=e.C +p=A.bw(B.z,i,B.f1,0,i,1,i,q) +o=e.geE() +p.cL() +n=p.dB$ +n.b=!0 +n.a.push(o) +p.bS(0) +h.cx=p +n=c.gk(c) +m=t.m +l=t.Hd +h.CW=new A.aw(m.a(p),new A.tR(0,n>>>24&255),l.h("aw")) +n=A.bw(B.z,i,B.e3,0,i,1,i,q) +n.cL() +p=n.dB$ +p.b=!0 +p.a.push(o) +n.bS(0) +h.ch=n +p=t.Y +k=$.byL() +j=p.h("dq") +h.ay=new A.aw(m.a(n),new A.dq(k,new A.aO(s*0.3,s+5,p),j),j.h("aw")) +q=A.bw(B.z,i,B.rJ,0,i,1,i,q) +q.cL() +j=q.dB$ +j.b=!0 +j.a.push(o) +q.cL() +o=q.eo$ +o.b=!0 +o.a.push(h.gauX()) +h.db=q +o=c.gk(c) +j=$.byM() +l=l.h("dq") +h.cy=new A.aw(m.a(q),new A.dq(j,new A.tR(o>>>24&255,0),l),l.h("aw")) +e.K0(h) +return h}} +A.Kt.prototype={ +Ef(a){var s=this.ch +s===$&&A.b() +s.e=B.RE +s.bS(0) +s=this.cx +s===$&&A.b() +s.bS(0) +s=this.db +s===$&&A.b() +s.z=B.aI +s.jW(1,B.Z,B.rJ)}, +aQ(a){var s,r=this,q=r.cx +q===$&&A.b() +q.h7(0) +q=r.cx.x +q===$&&A.b() +s=1-q +q=r.db +q===$&&A.b() +q.sk(0,s) +if(s<1){q=r.db +q.z=B.aI +q.jW(1,B.Z,B.f1)}}, +auY(a){if(a===B.a5)this.m()}, +m(){var s=this,r=s.ch +r===$&&A.b() +r.m() +r=s.cx +r===$&&A.b() +r.m() +r=s.db +r===$&&A.b() +r.m() +s.rC()}, +My(a,b){var s,r,q,p,o,n,m=this,l=m.cx +l===$&&A.b() +l=l.r +if(l!=null&&l.a!=null){l=m.CW +l===$&&A.b() +s=l.a +r=l.b.a_(0,s.gk(s))}else{l=m.cy +l===$&&A.b() +s=l.a +r=l.b.a_(0,s.gk(s))}q=$.as().bn() +l=m.e +q.sa5(0,A.K(r,l.gk(l)>>>16&255,l.gk(l)>>>8&255,l.gk(l)&255)) +l=m.at +p=l!=null?l.$0():null +if(p!=null)s=p.gbH() +else{s=m.b +s=s.gq(s).mg(B.i)}o=m.ch +o===$&&A.b() +o=o.x +o===$&&A.b() +o=A.lT(m.z,s,B.aL.a_(0,o)) +o.toString +s=m.ay +s===$&&A.b() +n=s.a +n=s.b.a_(0,n.gk(n)) +m.abK(m.Q,a,o,l,m.f,q,n,m.ax,b)}} +A.bdQ.prototype={ +$0(){var s=this.a +s=s.gq(s) +return new A.I(0,0,0+s.a,0+s.b)}, +$S:117} +A.b5i.prototype={ +a8a(a,b,c,d,e,f,g,h,i,j,k,a0){var s,r,q,p,o,n=null,m=b==null?B.aJ:b,l=i==null?A.bPh(k,d,j,h):i +m=new A.Ku(h,m,l,A.bPb(k,d,j),!d,a0,c,f,e,k,g) +s=e.C +r=A.bw(B.z,n,B.e3,0,n,1,n,s) +q=e.geE() +r.cL() +p=r.dB$ +p.b=!0 +p.a.push(q) +r.bS(0) +m.CW=r +p=t.Y +o=t.m +m.ch=new A.aw(o.a(r),new A.aO(0,l,p),p.h("aw")) +s=A.bw(B.z,n,B.S,0,n,1,n,s) +s.cL() +p=s.dB$ +p.b=!0 +p.a.push(q) +s.cL() +q=s.eo$ +q.b=!0 +q.a.push(m.gauZ()) +m.cy=s +q=c.gk(c) +m.cx=new A.aw(o.a(s),new A.tR(q>>>24&255,0),t.Hd.h("aw")) +e.K0(m) +return m}} +A.Ku.prototype={ +Ef(a){var s=B.e.eA(this.as/1),r=this.CW +r===$&&A.b() +r.e=A.dC(0,s,0) +r.bS(0) +this.cy.bS(0)}, +aQ(a){var s=this.cy +if(s!=null)s.bS(0)}, +av_(a){if(a===B.a5)this.m()}, +m(){var s=this,r=s.CW +r===$&&A.b() +r.m() +s.cy.m() +s.cy=null +s.rC()}, +My(a,b){var s,r,q=this,p=$.as().bn(),o=q.e,n=q.cx +n===$&&A.b() +s=n.a +p.sa5(0,A.K(n.b.a_(0,s.gk(s)),o.gk(o)>>>16&255,o.gk(o)>>>8&255,o.gk(o)&255)) +r=q.z +if(q.ax){o=q.b +o=o.gq(o).mg(B.i) +n=q.CW +n===$&&A.b() +n=n.x +n===$&&A.b() +r=A.lT(r,o,n)}r.toString +o=q.ch +o===$&&A.b() +n=o.a +n=o.b.a_(0,n.gk(n)) +q.abK(q.Q,a,r,q.at,q.f,p,n,q.ay,b)}} +A.tS.prototype={ +Ef(a){}, +aQ(a){}, +sa5(a,b){if(b.l(0,this.e))return +this.e=b +this.a.aU()}, +sU2(a){if(J.i(a,this.f))return +this.f=a +this.a.aU()}, +abK(a,b,c,d,e,f,g,h,i){var s,r=A.aIG(i) +b.eb(0) +if(r==null)b.a_(0,i.a) +else b.bj(0,r.a,r.b) +if(d!=null){s=d.$0() +if(e!=null)b.mr(0,e.eh(s,h)) +else if(!a.l(0,B.aJ))b.wE(A.a6J(s,a.c,a.d,a.a,a.b)) +else b.uD(s)}b.ha(c,g,f) +b.dq(0)}} +A.Ca.prototype={} +A.Si.prototype={ +dr(a){return this.f!==a.f}} +A.C9.prototype={ +C4(a){return null}, +A(a){var s=this,r=a.ae(t.sZ),q=r==null?null:r.f +return new A.Rt(s.c,s.d,s.e,s.f,s.r,s.w,s.x,s.y,s.Q,s.z,s.as,s.at,s.ax,s.ay,s.ch,s.CW,s.cx,s.cy,s.db,s.dx,s.dy,s.fr,s.fx,s.fy,s.go,s.id,!1,s.k2,s.k3,s.k4,s.ok,q,s.gNI(),s.gaGK(),s.p1,null)}, +aGL(a){return!0}} +A.Rt.prototype={ +a8(){return new A.Rs(A.F(t.R9,t.Pr),new A.bb(A.a([],t.ML),t.yw),null,B.m)}} +A.vb.prototype={ +K(){return"_HighlightType."+this.b}} +A.Rs.prototype={ +gaJC(){var s=this.r +s=s.gbw(s) +s=new A.be(s,new A.b5f(),A.k(s).h("be")) +return!s.gai(s)}, +VM(a,b){var s,r=this.y,q=r.a,p=q.length +if(b){r.b=!0 +q.push(a)}else r.F(0,a) +s=q.length!==0 +if(s!==(p!==0)){r=this.a.p1 +if(r!=null)r.VM(this,s)}}, +Ys(a){var s=this.c +s.toString +this.a4F(s) +this.Ls()}, +afY(){return this.Ys(null)}, +afX(){var s=this.c +s.toString +this.a4F(s) +this.a9V()}, +V8(){this.a7(new A.b5e())}, +gho(){var s=this.a.p4 +if(s==null){s=this.x +s.toString}return s}, +Fb(){var s,r,q=this +if(q.a.p4==null)q.x=A.bjc(null) +s=q.gho() +r=q.a +r.toString +s.iI(0,B.o,!(q.lZ(r)||q.m_(r))) +q.gho().P(0,q.gxc())}, +aR(){this.akM() +this.Fb() +$.ar.al$.f.a.d.G(0,this.ga9R())}, +aY(a){var s,r,q,p,o=this +o.br(a) +s=a.p4 +if(o.a.p4!=s){if(s!=null)s.J(0,o.gxc()) +if(o.a.p4!=null){s=o.x +if(s!=null){s.ah$=$.b5() +s.ak$=0}o.x=null}o.Fb()}s=o.a +if(s.cx!=a.cx||s.CW!==a.CW||!J.i(s.cy,a.cy)){s=o.r +r=s.i(0,B.fQ) +if(r!=null){q=r.ch +q===$&&A.b() +q.m() +r.rC() +o.Xb(B.fQ,!1,o.f)}p=s.i(0,B.Le) +if(p!=null){s=p.ch +s===$&&A.b() +s.m() +p.rC()}}if(!J.i(o.a.db,a.db))o.aD4() +s=o.a +s.toString +s=o.lZ(s)||o.m_(s) +if(s!==(o.lZ(a)||o.m_(a))){s=o.gho() +q=o.a +q.toString +s.iI(0,B.o,!(o.lZ(q)||o.m_(q))) +s=o.a +s.toString +if(!(o.lZ(s)||o.m_(s))){o.gho().iI(0,B.K,!1) +r=o.r.i(0,B.fQ) +if(r!=null){s=r.ch +s===$&&A.b() +s.m() +r.rC()}}o.Xb(B.fQ,!1,o.f)}o.Xa()}, +m(){var s,r=this +$.ar.al$.f.a.d.F(0,r.ga9R()) +r.gho().J(0,r.gxc()) +s=r.x +if(s!=null){s.ah$=$.b5() +s.ak$=0}r.aZ()}, +gGB(){if(!this.gaJC()){var s=this.d +s=s!=null&&s.a!==0}else s=!0 +return s}, +aes(a){switch(a.a){case 0:return B.S +case 1:case 2:return B.e5}}, +Xb(a,b,a0){var s,r,q,p,o,n,m,l,k,j,i,h,g=this,f=null,e=g.r,d=e.i(0,a),c=a.a +switch(c){case 0:g.gho().iI(0,B.K,a0) +break +case 1:if(b)g.gho().iI(0,B.A,a0) +break +case 2:break}if(a===B.fP){s=g.a.p1 +if(s!=null)s.VM(g,a0)}s=d==null +if(a0===(!s&&d.CW))return +if(a0)if(s){s=g.a.fx +r=s==null?f:s.L(g.gho().a) +if(r==null){s=g.c +s.toString +q=A.r(s) +switch(c){case 0:r=g.a.fr +if(r==null)r=q.cy +break +case 2:r=g.a.dx +if(r==null)r=q.cx +break +case 1:r=g.a.dy +if(r==null)r=q.dx +break}}s=g.c.ga9() +s.toString +t.x.a(s) +p=g.c +p.toString +p=A.aHn(p,t.zd) +p.toString +o=g.a +o.toString +o=g.lZ(o)||g.m_(o)?r:A.K(0,r.gk(r)>>>16&255,r.gk(r)>>>8&255,r.gk(r)&255) +n=g.a +m=n.CW +l=n.cx +k=n.cy +j=n.db +n=n.p2.$1(s) +i=g.c.ae(t.I) +i.toString +h=g.aes(a) +if(k==null)k=B.aJ +s=new A.tP(m,l,k,n,i.w,o,j,p,s,new A.b5g(g,a)) +h=A.bw(B.z,f,h,0,f,1,f,p.C) +h.cL() +j=h.dB$ +j.b=!0 +j.a.push(p.geE()) +h.cL() +j=h.eo$ +j.b=!0 +j.a.push(s.garx()) +h.bS(0) +s.ch=h +j=s.e +j=j.gk(j) +s.ay=new A.aw(t.m.a(h),new A.tR(0,j>>>24&255),t.Hd.h("aw")) +p.K0(s) +e.p(0,a,s) +g.xO()}else{d.CW=!0 +e=d.ch +e===$&&A.b() +e.bS(0)}else{d.CW=!1 +e=d.ch +e===$&&A.b() +e.d9(0)}switch(c){case 0:e=g.a.at +if(e!=null)e.$1(a0) +break +case 1:if(b){e=g.a.ax +if(e!=null)e.$1(a0)}break +case 2:break}}, +vv(a,b){return this.Xb(a,!0,b)}, +aD4(){var s,r,q,p=this +for(s=p.r,s=s.gbw(s),r=A.k(s),r=r.h("@<1>").S(r.z[1]),s=new A.c2(J.ao(s.a),s.b,r.h("c2<1,2>")),r=r.z[1];s.u();){q=s.a +if(q==null)q=r.a(q) +if(q!=null)q.sU2(p.a.db)}s=p.e +if(s!=null)s.sU2(p.a.db) +s=p.d +if(s!=null&&s.a!==0)for(r=A.k(s),s=new A.mo(s,s.CO(),r.h("mo<1>")),r=r.c;s.u();){q=s.d +if(q==null)q=r.a(q) +q.sU2(p.a.db)}}, +aoS(a){var s,r,q,p,o,n,m,l,k,j,i=this,h={},g=i.c +g.toString +g=A.aHn(g,t.zd) +g.toString +s=i.c.ga9() +s.toString +t.x.a(s) +r=s.jo(a) +q=i.a.fx +q=q==null?null:q.L(i.gho().a) +p=q==null?i.a.fy:q +if(p==null){q=i.c +q.toString +p=A.r(q).k3}q=i.a +o=q.ch?q.p2.$1(s):null +q=i.a +n=q.cy +m=q.db +h.a=null +q=q.go +if(q==null){q=i.c +q.toString +q=A.r(q).x}l=i.a +k=l.ch +l=l.cx +j=i.c.ae(t.I) +j.toString +return h.a=q.a8a(0,n,p,k,g,m,new A.b5b(h,i),r,l,o,s,j.w)}, +aIy(a){if(this.c==null)return +this.a7(new A.b5d(this))}, +gaB1(){var s,r=this,q=r.c +q.toString +q=A.cT(q,B.fR) +s=q==null?null:q.ax +switch((s==null?B.fp:s).a){case 0:q=r.a +q.toString +return(r.lZ(q)||r.m_(q))&&r.z +case 1:return r.z}}, +Xa(){var s,r=$.ar.al$.f.a.b +switch((r==null?A.zG():r).a){case 0:s=!1 +break +case 1:s=this.gaB1() +break +default:s=null}this.vv(B.Le,s)}, +aIA(a){var s,r=this +r.z=a +r.gho().iI(0,B.y,a) +r.Xa() +s=r.a.k2 +if(s!=null)s.$1(a)}, +a9M(a){if(this.y.a.length!==0)return +this.aBs(a)}, +aJk(a){var s +this.a9M(a) +s=this.a.e +if(s!=null)s.$1(a)}, +aJm(a){this.a.toString}, +aJ9(a){this.a9M(a) +this.a.toString}, +aJb(a){this.a.toString}, +a4G(a,b){var s,r,q,p,o=this +if(a!=null){s=a.ga9() +s.toString +t.x.a(s) +r=s.gq(s) +r=new A.I(0,0,0+r.a,0+r.b).gbH() +q=A.cD(s.cs(0,null),r)}else q=b.a +o.gho().iI(0,B.K,!0) +p=o.aoS(q) +s=o.d;(s==null?o.d=A.dN(t.nQ):s).G(0,p) +s=o.e +if(s!=null)s.aQ(0) +o.e=p +o.xO() +o.vv(B.fP,!0)}, +aBs(a){return this.a4G(null,a)}, +a4F(a){return this.a4G(a,null)}, +Ls(){var s=this,r=s.e +if(r!=null)r.Ef(0) +s.e=null +s.vv(B.fP,!1) +r=s.a +if(r.d!=null){if(r.id){r=s.c +r.toString +A.biA(r)}r=s.a.d +if(r!=null)r.$0()}}, +aJi(){var s=this,r=s.e +if(r!=null)r.aQ(0) +s.e=null +r=s.a.r +if(r!=null)r.$0() +s.vv(B.fP,!1)}, +a9V(){var s=this,r=s.e +if(r!=null)r.Ef(0) +s.e=null +r=s.a +if(r.x!=null){if(r.id){r=s.c +r.toString +A.aBf(r)}s.a.x.$0()}}, +aJ5(){var s=this,r=s.e +if(r!=null)r.Ef(0) +s.e=null +s.vv(B.fP,!1) +s.a.toString}, +aJ7(){var s=this,r=s.e +if(r!=null)r.aQ(0) +s.e=null +s.a.toString +s.vv(B.fP,!1)}, +fk(){var s,r,q,p,o,n,m,l=this,k=l.d +if(k!=null){l.d=null +for(s=A.k(k),k=new A.mo(k,k.CO(),s.h("mo<1>")),s=s.c;k.u();){r=k.d;(r==null?s.a(r):r).m()}l.e=null}for(k=l.r,s=A.i1(k,k.r,A.k(k).c);s.u();){r=s.d +q=k.i(0,r) +if(q!=null){p=q.ch +p===$&&A.b() +p.r.m() +p.r=null +o=p.eo$ +o.b=!1 +B.b.ab(o.a) +n=o.c +if(n===$){m=A.dN(o.$ti.c) +o.c!==$&&A.am() +o.c=m +n=m}if(n.a>0){n.b=n.c=n.d=n.e=null +n.a=0}o=p.dB$ +o.b=!1 +B.b.ab(o.a) +n=o.c +if(n===$){m=A.dN(o.$ti.c) +o.c!==$&&A.am() +o.c=m +n=m}if(n.a>0){n.b=n.c=n.d=n.e=null +n.a=0}p.Cr() +q.rC()}k.p(0,r,null)}k=l.a.p1 +if(k!=null)k.VM(l,!1) +l.akL()}, +lZ(a){var s +if(a.d==null)if(a.x==null)s=a.e!=null +else s=!0 +else s=!0 +return s}, +m_(a){return!1}, +aIQ(a){var s=this,r=s.f=!0,q=s.a +q.toString +if(!s.lZ(q)?s.m_(q):r)s.vv(B.fQ,s.f)}, +aIS(a){this.f=!1 +this.vv(B.fQ,!1)}, +gav0(){var s,r=this,q=r.c +q.toString +q=A.cT(q,B.fR) +s=q==null?null:q.ax +switch((s==null?B.fp:s).a){case 0:q=r.a +q.toString +return(r.lZ(q)||r.m_(q))&&r.a.ok +case 1:return!0}}, +A(a1){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a=this,a0=null +a.Oc(a1) +s=new A.b5c(a,a1) +for(r=a.r,q=A.i1(r,r.r,A.k(r).c);q.u();){p=q.d +o=r.i(0,p) +if(o!=null)o.sa5(0,s.$1(p))}r=a.e +if(r!=null){q=a.a.fx +q=q==null?a0:q.L(a.gho().a) +if(q==null)q=a.a.fy +r.sa5(0,q==null?A.r(a1).k3:q)}r=a.a.ay +if(r==null)r=B.cN +n=A.cg(r,a.gho().a,t.Pb) +m=a.w +if(m===$){r=a.gYr() +q=t.h +p=t.d +l=A.ap([B.ii,new A.cq(r,new A.bb(A.a([],q),p),t.wY),B.KW,new A.cq(r,new A.bb(A.a([],q),p),t.nz)],t.n,t.od) +a.w!==$&&A.am() +a.w=l +m=l}r=a.a.k4 +q=a.gav0() +p=a.a +o=p.k3 +k=p.d +k=k==null?a0:a.gYr() +j=p.x +j=j==null?a0:a.gafW() +p=a.lZ(p)?a.gaJj():a0 +i=a.a +i.toString +i=a.lZ(i)?a.gaJl():a0 +h=a.a +h.toString +h=a.lZ(h)?a.gV9():a0 +g=a.a +g.toString +g=a.lZ(g)?a.gaJh():a0 +f=a.a +e=f.x!=null?a.gaIK():a0 +f=a.m_(f)?a.gaJ8():a0 +d=a.a +d.toString +d=a.m_(d)?a.gaJa():a0 +c=a.a +c.toString +c=a.m_(c)?a.gaJ4():a0 +b=a.a +b.toString +b=a.m_(b)?a.gaJ6():a0 +i=A.dM(B.bv,a.a.c,B.C,!0,a0,a0,a0,a0,a0,a0,a0,e,a0,a0,a0,a0,a0,a0,a0,a0,a0,c,b,f,d,h,g,p,i,a0,!1,B.ai) +return new A.Si(a,A.pC(m,A.tz(o,q,A.mX(A.bEy(new A.bu(A.bI(a0,a0,a0,a0,a0,a0,a0,a0,a0,a0,a0,a0,a0,a0,a0,a0,a0,a0,a0,a0,a0,a0,a0,a0,a0,a0,a0,a0,a0,a0,a0,a0,a0,a0,a0,a0,j,a0,a0,a0,a0,a0,a0,a0,a0,a0,k,a0,a0,a0,a0,a0,a0,a0,a0,a0,a0,a0),!1,!1,!1,!1,i,a0),n),n,a0,a.gaIP(),a.gaIR(),a0),a0,a0,a0,r,!0,a0,a.gaIz(),a0,a0,a0,a0)),a0)}, +$ibkD:1} +A.b5f.prototype={ +$1(a){return a!=null}, +$S:875} +A.b5e.prototype={ +$0(){}, +$S:0} +A.b5g.prototype={ +$0(){var s=this.a +s.r.p(0,this.b,null) +s.xO()}, +$S:0} +A.b5b.prototype={ +$0(){var s,r=this.b,q=r.d +if(q!=null){s=this.a +q.F(0,s.a) +if(r.e==s.a)r.e=null +r.xO()}}, +$S:0} +A.b5d.prototype={ +$0(){this.a.Xa()}, +$S:0} +A.b5c.prototype={ +$1(a){var s,r,q=this,p=A.r(q.b) +switch(a.a){case 0:s=q.a +r=s.a.fx +r=r==null?null:r.L(B.adc) +s=r==null?s.a.fr:r +return s==null?p.cy:s +case 2:s=q.a +r=s.a.fx +r=r==null?null:r.L(B.ad8) +s=r==null?s.a.dx:r +return s==null?p.cx:s +case 1:s=q.a +r=s.a.fx +r=r==null?null:r.L(B.ad1) +s=r==null?s.a.dy:r +return s==null?p.dx:s}}, +$S:876} +A.a24.prototype={} +A.Vf.prototype={ +aR(){this.b5() +if(this.gGB())this.CV()}, +fk(){var s=this.mN$ +if(s!=null){s.ag() +s.eH() +this.mN$=null}this.rF()}} +A.l6.prototype={} +A.aiy.prototype={ +Ky(a){return B.pz}, +gxi(){return!1}, +goG(){return B.a4}, +cl(a,b){return B.pz}, +fO(a,b){var s=$.as().cZ() +s.oy(a) +return s}, +p8(a){return this.fO(a,null)}, +eh(a,b){var s=$.as().cZ() +s.oy(a) +return s}, +kv(a){return this.eh(a,null)}, +lp(a,b,c,d){a.el(b,c)}, +gkl(){return!0}, +Bf(a,b,c,d,e,f){}, +hV(a,b,c){return this.Bf(a,b,0,0,null,c)}} +A.nl.prototype={ +gxi(){return!1}, +Ky(a){var s=a==null?this.a:a +return new A.nl(this.b,s)}, +goG(){return new A.aK(0,0,0,this.a.b)}, +cl(a,b){return new A.nl(B.q4,this.a.cl(0,b))}, +fO(a,b){var s=$.as().cZ(),r=a.a,q=a.b +s.oy(new A.I(r,q,r+(a.c-r),q+Math.max(0,a.d-q-this.a.b))) +return s}, +p8(a){return this.fO(a,null)}, +eh(a,b){var s=$.as().cZ() +s.fT(this.b.e2(a)) +return s}, +kv(a){return this.eh(a,null)}, +lp(a,b,c,d){a.de(this.b.e2(b),c)}, +gkl(){return!0}, +eY(a,b){var s,r +if(a instanceof A.nl){s=A.bn(a.a,this.a,b) +r=A.mD(a.b,this.b,b) +r.toString +return new A.nl(r,s)}return this.Hs(a,b)}, +eZ(a,b){var s,r +if(a instanceof A.nl){s=A.bn(this.a,a.a,b) +r=A.mD(this.b,a.b,b) +r.toString +return new A.nl(r,s)}return this.Ht(a,b)}, +Bf(a,b,c,d,e,f){var s=this.b +if(!s.c.l(0,B.I)||!s.d.l(0,B.I))a.mr(0,this.eh(b,f)) +s=b.d +a.jF(new A.l(b.a,s),new A.l(b.c,s),this.a.lu())}, +hV(a,b,c){return this.Bf(a,b,0,0,null,c)}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.a1(b)!==A.o(s))return!1 +return b instanceof A.nl&&b.a.l(0,s.a)&&b.b.l(0,s.b)}, +gv(a){return A.X(this.a,this.b,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}} +A.lU.prototype={ +gxi(){return!0}, +Ky(a){var s=a==null?this.a:a +return new A.lU(this.b,this.c,s)}, +goG(){var s=this.a.b +return new A.aK(s,s,s,s)}, +cl(a,b){var s=this.a.cl(0,b) +return new A.lU(this.b*b,this.c.au(0,b),s)}, +eY(a,b){var s,r +if(a instanceof A.lU){s=A.mD(a.c,this.c,b) +s.toString +r=A.bn(a.a,this.a,b) +return new A.lU(a.b,s,r)}return this.Hs(a,b)}, +eZ(a,b){var s,r +if(a instanceof A.lU){s=A.mD(this.c,a.c,b) +s.toString +r=A.bn(this.a,a.a,b) +return new A.lU(a.b,s,r)}return this.Ht(a,b)}, +fO(a,b){var s=$.as().cZ() +s.fT(this.c.e2(a).dZ(-this.a.b)) +return s}, +p8(a){return this.fO(a,null)}, +eh(a,b){var s=$.as().cZ() +s.fT(this.c.e2(a)) +return s}, +kv(a){return this.eh(a,null)}, +lp(a,b,c,d){a.de(this.c.e2(b),c)}, +gkl(){return!0}, +a0T(a4,a5,a6,a7){var s,r,q,p,o,n,m,l,k,j,i,h,g=a5.Ca(),f=g.a,e=g.b,d=g.e,c=g.f,b=g.c,a=g.r,a0=a*2,a1=b-a0,a2=g.w,a3=new A.I(a1,e,a1+a0,e+a2*2) +a0=g.x +a1=a0*2 +s=b-a1 +r=g.d +q=g.y +p=q*2 +o=r-p +n=g.Q +m=n*2 +l=r-m +k=g.z +j=$.as().cZ() +if(!new A.bq(d,c).l(0,B.I))j.wv(new A.I(f,e,f+d*2,e+c*2),3.141592653589793,Math.acos(A.S(1-a6/d,0,1))) +else j.fo(0,f-this.a.b/2,e) +if(a6>d)j.d7(0,f+a6,e) +d=a6+a7 +i=b-f +if(d#"+A.bt(this)}} +A.Rw.prototype={ +hh(a){var s=A.fd(this.a,this.b,a) +s.toString +return t.U1.a(s)}} +A.agV.prototype={ +aD(a,b){var s,r,q,p=this,o=p.b,n=p.c.a_(0,o.gk(o)),m=new A.I(0,0,0+b.a,0+b.b) +o=p.x +o=p.w.a_(0,o.gk(o)) +o.toString +s=A.tg(o,p.r) +if((s.gk(s)>>>24&255)>0){o=n.eh(m,p.f) +r=$.as().bn() +r.sa5(0,s) +r.scK(0,B.bl) +a.dV(o,r)}o=p.e +r=o.a +q=p.d +n.Bf(a,m,o.b,q.gk(q),r,p.f)}, +fw(a){var s=this +return s.b!==a.b||s.x!==a.x||s.d!==a.d||s.c!==a.c||!s.e.l(0,a.e)||s.f!==a.f}, +j(a){return"#"+A.bt(this)}} +A.PR.prototype={ +a8(){return new A.adB(null,null,B.m)}} +A.adB.prototype={ +aR(){var s,r=this,q=null +r.b5() +r.e=A.bw(B.z,q,B.Rz,0,q,1,r.a.w?1:0,r) +s=A.bw(B.z,q,B.dc,0,q,1,q,r) +r.d=s +r.f=A.c_(B.a3,s,new A.jz(B.a3)) +s=r.a.c +r.r=new A.Rw(s,s) +r.w=A.c_(B.Z,r.e,q) +r.x=new A.dk(B.u,r.a.r)}, +m(){var s=this.d +s===$&&A.b() +s.m() +s=this.e +s===$&&A.b() +s.m() +this.aks()}, +aY(a){var s,r,q=this +q.br(a) +s=a.c +if(!q.a.c.l(0,s)){q.r=new A.Rw(s,q.a.c) +s=q.d +s===$&&A.b() +s.sk(0,0) +s.bS(0)}if(!q.a.r.l(0,a.r))q.x=new A.dk(B.u,q.a.r) +s=q.a.w +if(s!==a.w){r=q.e +if(s){r===$&&A.b() +r.bS(0)}else{r===$&&A.b() +r.d9(0)}}}, +A(a){var s,r,q,p,o,n,m,l,k=this,j=k.f +j===$&&A.b() +s=k.a.d +r=k.e +r===$&&A.b() +r=A.a([j,s,r],t.Eo) +s=k.f +j=k.r +j===$&&A.b() +q=k.a +p=q.e +q=q.d +o=a.ae(t.I) +o.toString +n=k.a.f +m=k.x +m===$&&A.b() +l=k.w +l===$&&A.b() +return A.jv(null,new A.agV(s,j,p,q,o.w,n,m,l,new A.vg(r)),null,null,B.x)}, +$iaN:1} +A.alr.prototype={ +gaOQ(){var s=t.m.a(this.c),r=s.gk(s) +if(r<=0.25)return-r*4 +else if(r<0.75)return(r-0.5)*4 +else return(1-r)*4*4}, +A(a){return A.EW(null,this.e,A.ou(this.gaOQ(),0,0),!0)}} +A.Rc.prototype={ +a8(){return new A.Rd(null,null,B.m)}} +A.Rd.prototype={ +gIq(){return this.a.w!=null||!1}, +aR(){var s,r=this +r.b5() +r.d=A.bw(B.z,null,B.dc,0,null,1,null,r) +if(r.gIq()){r.f=r.CE() +r.d.sk(0,1)}else r.a.toString +s=r.d +s.cL() +s=s.dB$ +s.b=!0 +s.a.push(r.gQW())}, +m(){var s=this.d +s===$&&A.b() +s.m() +this.akK()}, +QX(){this.a7(new A.b4N())}, +aY(a){var s,r=this +r.br(a) +s=r.a.w!=null +if(s!==(a.w!=null)||!1)if(s){r.f=r.CE() +s=r.d +s===$&&A.b() +s.bS(0)}else{s=r.d +s===$&&A.b() +s.d9(0)}}, +CE(){var s,r,q,p,o,n=null,m=this.d +m===$&&A.b() +s=new A.aO(B.aaz,B.i,t.Ni).a_(0,m.gk(m)) +r=this.a +q=r.w +q.toString +p=r.x +o=r.c +o=A.O(q,r.y,B.ac,n,n,p,o,n) +s=A.bpH(o,!0,s) +return new A.bu(A.bI(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,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),!0,!1,!1,!1,new A.cS(m,!1,s,n),n)}, +A(a){var s=this,r=s.d +r===$&&A.b() +if(r.gaL(r)===B.Q){s.f=null +s.a.toString +s.e=null +return B.a_}r=s.d +if(r.gaL(r)===B.a5){s.e=null +if(s.gIq())return s.f=s.CE() +else{s.f=null +return B.a_}}if(s.e==null&&s.gIq())return s.CE() +if(s.f==null)s.a.toString +if(s.gIq()){r=t.Y +return A.fr(B.bs,A.a([new A.cS(new A.aw(s.d,new A.aO(1,0,r),r.h("aw")),!1,s.e,null),s.CE()],t.p),B.E,B.aH,null)}s.a.toString +return B.a_}, +$iaN:1} +A.b4N.prototype={ +$0(){}, +$S:0} +A.JU.prototype={ +K(){return"FloatingLabelBehavior."+this.b}} +A.a12.prototype={ +gv(a){return B.f.gv(-1)}, +l(a,b){if(b==null)return!1 +if(this===b)return!0 +if(J.a1(b)!==A.o(this))return!1 +return b instanceof A.a12&&!0}, +j(a){return A.bG1(-1)}} +A.ia.prototype={ +K(){return"_DecorationSlot."+this.b}} +A.af0.prototype={ +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.a1(b)!==A.o(s))return!1 +return b instanceof A.af0&&b.a.l(0,s.a)&&b.c===s.c&&b.d===s.d&&b.e.l(0,s.e)&&b.f.l(0,s.f)&&b.r.l(0,s.r)&&b.x==s.x&&b.y.l(0,s.y)&&J.i(b.z,s.z)&&J.i(b.Q,s.Q)&&J.i(b.as,s.as)&&J.i(b.at,s.at)&&J.i(b.ax,s.ax)&&J.i(b.ay,s.ay)&&J.i(b.ch,s.ch)&&J.i(b.CW,s.CW)&&b.cx.rD(0,s.cx)&&J.i(b.cy,s.cy)&&b.db.rD(0,s.db)}, +gv(a){var s=this +return A.X(s.a,s.c,s.d,s.e,s.f,s.r,!1,s.x,s.y,s.z,s.Q,s.as,s.at,s.ax,s.ay,s.ch,s.CW,s.cx,s.cy,s.db)}, +geB(a){return this.z}} +A.b9_.prototype={} +A.SE.prototype={ +geB(a){return this.d1$.i(0,B.az)}, +ghK(a){var s,r=A.a([],t.Ik),q=this.d1$ +if(q.i(0,B.az)!=null){s=q.i(0,B.az) +s.toString +r.push(s)}if(q.i(0,B.ba)!=null){s=q.i(0,B.ba) +s.toString +r.push(s)}if(q.i(0,B.as)!=null){s=q.i(0,B.as) +s.toString +r.push(s)}if(q.i(0,B.b6)!=null){s=q.i(0,B.b6) +s.toString +r.push(s)}if(q.i(0,B.b4)!=null){s=q.i(0,B.b4) +s.toString +r.push(s)}if(q.i(0,B.b5)!=null){s=q.i(0,B.b5) +s.toString +r.push(s)}if(q.i(0,B.av)!=null){s=q.i(0,B.av) +s.toString +r.push(s)}if(q.i(0,B.bf)!=null){s=q.i(0,B.bf) +s.toString +r.push(s)}if(q.i(0,B.bg)!=null){s=q.i(0,B.bg) +s.toString +r.push(s)}if(q.i(0,B.aX)!=null){s=q.i(0,B.aX) +s.toString +r.push(s)}if(q.i(0,B.dm)!=null){q=q.i(0,B.dm) +q.toString +r.push(q)}return r}, +sba(a){if(this.B.l(0,a))return +this.B=a +this.a6()}, +scF(a){if(this.Z===a)return +this.Z=a +this.a6()}, +saOj(a,b){if(this.Y===b)return +this.Y=b +this.a6()}, +saOi(a){return}, +sqS(a){if(this.ar===a)return +this.ar=a +this.bX()}, +sUA(a){return}, +gR0(){var s=this.B.f.gxi() +return s}, +jl(a){var s,r=this.d1$ +if(r.i(0,B.az)!=null){s=r.i(0,B.az) +s.toString +a.$1(s)}if(r.i(0,B.b4)!=null){s=r.i(0,B.b4) +s.toString +a.$1(s)}if(r.i(0,B.as)!=null){s=r.i(0,B.as) +s.toString +a.$1(s)}if(r.i(0,B.av)!=null){s=r.i(0,B.av) +s.toString +a.$1(s)}if(r.i(0,B.bf)!=null)if(this.ar){s=r.i(0,B.bf) +s.toString +a.$1(s)}else if(r.i(0,B.av)==null){s=r.i(0,B.bf) +s.toString +a.$1(s)}if(r.i(0,B.ba)!=null){s=r.i(0,B.ba) +s.toString +a.$1(s)}if(r.i(0,B.b6)!=null){s=r.i(0,B.b6) +s.toString +a.$1(s)}if(r.i(0,B.b5)!=null){s=r.i(0,B.b5) +s.toString +a.$1(s)}if(r.i(0,B.dm)!=null){s=r.i(0,B.dm) +s.toString +a.$1(s)}if(r.i(0,B.bg)!=null){s=r.i(0,B.bg) +s.toString +a.$1(s)}if(r.i(0,B.aX)!=null){r=r.i(0,B.aX) +r.toString +a.$1(r)}}, +gog(){return!1}, +qg(a,b){var s +if(a==null)return 0 +a.cX(b,!0) +s=a.vA(B.J) +s.toString +return s}, +av6(a,b,c,d){var s=d.a +if(s<=0){if(a>=b)return b +return a+(b-a)*(s+1)}if(b>=c)return b +return b+(c-b)*s}, +c3(a){var s,r,q,p,o,n=this.d1$,m=n.i(0,B.az) +m=m==null?0:m.aB(B.ad,a,m.gbZ()) +s=this.B +r=n.i(0,B.as) +r=r==null?0:r.aB(B.ad,a,r.gbZ()) +q=n.i(0,B.b4) +q=q==null?0:q.aB(B.ad,a,q.gbZ()) +p=n.i(0,B.ba) +p=p==null?0:p.aB(B.ad,a,p.gbZ()) +o=n.i(0,B.bf) +o=o==null?0:o.aB(B.ad,a,o.gbZ()) +o=Math.max(p,o) +p=n.i(0,B.b5) +p=p==null?0:p.aB(B.ad,a,p.gbZ()) +n=n.i(0,B.b6) +n=n==null?0:n.aB(B.ad,a,n.gbZ()) +return m+s.a.a+r+q+o+p+n+this.B.a.c}, +bV(a){var s,r,q,p,o,n=this.d1$,m=n.i(0,B.az) +m=m==null?0:m.aB(B.ak,a,m.gc2()) +s=this.B +r=n.i(0,B.as) +r=r==null?0:r.aB(B.ak,a,r.gc2()) +q=n.i(0,B.b4) +q=q==null?0:q.aB(B.ak,a,q.gc2()) +p=n.i(0,B.ba) +p=p==null?0:p.aB(B.ak,a,p.gc2()) +o=n.i(0,B.bf) +o=o==null?0:o.aB(B.ak,a,o.gc2()) +o=Math.max(p,o) +p=n.i(0,B.b5) +p=p==null?0:p.aB(B.ak,a,p.gc2()) +n=n.i(0,B.b6) +n=n==null?0:n.aB(B.ak,a,n.gc2()) +return m+s.a.a+r+q+o+p+n+this.B.a.c}, +avu(a,b,c){var s,r,q,p +for(s=0,r=0;r<2;++r){q=c[r] +if(q==null)continue +p=q.aB(B.aA,b,q.gcD()) +s=Math.max(p,s)}return s}, +bW(a2){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b=this,a=b.d1$,a0=a.i(0,B.az),a1=a0==null?0:a0.aB(B.aA,a2,a0.gcD()) +a0=a.i(0,B.az) +a2=Math.max(a2-(a0==null?0:a0.aB(B.ad,a1,a0.gbZ())),0) +a0=a.i(0,B.as) +s=a0==null?0:a0.aB(B.aA,a2,a0.gcD()) +a0=a.i(0,B.as) +r=a0==null?0:a0.aB(B.ad,s,a0.gbZ()) +a0=a.i(0,B.b6) +q=a0==null?0:a0.aB(B.aA,a2,a0.gcD()) +a0=a.i(0,B.b6) +p=a0==null?0:a0.aB(B.ad,q,a0.gbZ()) +a2=Math.max(a2-b.B.a.gdD(),0) +a0=a.i(0,B.aX) +o=a0==null?0:a0.aB(B.aA,a2,a0.gcD()) +a0=a.i(0,B.aX) +n=Math.max(a2-(a0==null?0:a0.aB(B.ad,o,a0.gbZ())),0) +a0=a.i(0,B.bg) +m=a0==null?0:a0.aB(B.aA,n,a0.gcD()) +l=Math.max(o,m) +if(l>0)l+=8 +a0=a.i(0,B.b4) +k=a0==null?0:a0.aB(B.aA,a2,a0.gcD()) +a0=a.i(0,B.b4) +j=a0==null?0:a0.aB(B.ad,k,a0.gbZ()) +a0=a.i(0,B.b5) +i=a0==null?0:a0.aB(B.aA,a2,a0.gcD()) +a0=a.i(0,B.b5) +h=a0==null?0:a0.aB(B.ad,i,a0.gbZ()) +a0=t.up +g=B.b.lr(A.a([b.avu(0,Math.max(a2-j-h-r-p,0),A.a([a.i(0,B.ba),a.i(0,B.bf)],t.Rs)),k,i],a0),B.iG) +f=b.B.y +e=new A.l(f.a,f.b).au(0,4) +f=b.B +a=a.i(0,B.av)==null?0:b.B.c +d=B.b.lr(A.a([a1,f.a.b+a+g+b.B.a.d+e.b,s,q],a0),B.iG) +a=b.B.x +a.toString +c=a||!1?0:48 +return Math.max(d,c)+l}, +c1(a){return this.bW(a)}, +hL(a){var s=this.d1$,r=s.i(0,B.ba).b +r.toString +r=t.q.a(r).a +s=s.i(0,B.ba) +s=s==null?null:s.hL(a) +if(s==null)s=0 +return r.b+s}, +ds(a){return B.x}, +anO(a){var s,r,q,p,o,n,m=null,l=t.q1,k=A.a([],l),j=new A.Y6(k,A.a([],t.X_)) +for(s=a.length,r=m,q=r,p=0;p0}else a3=!1 +if(!a3)a4=0 +else{f1=o.i(0,B.bg) +a4=f1.gq(f1).b+8}a5=Math.max(a2,a4) +f1=e9.B.y +a6=new A.l(f1.a,f1.b).au(0,4) +f1=o.i(0,B.ba) +n=o.i(0,B.ba) +k=e9.B.a +j=a6.b +i=j/2 +s.p(0,f1,e9.qg(n,p.KO(new A.aK(0,k.b+a1+i,0,k.d+a5+i)).TO(c,c))) +k=o.i(0,B.bf) +a7=k==null?f0:k.gq(k).b +if(a7==null)a7=0 +f1=o.i(0,B.ba) +a8=f1==null?f0:f1.gq(f1).b +if(a8==null)a8=0 +a9=Math.max(a7,a8) +f1=s.i(0,o.i(0,B.ba)) +f1.toString +n=s.i(0,o.i(0,B.bf)) +n.toString +b0=Math.max(f1,n) +n=o.i(0,B.b4) +b1=n==null?f0:n.gq(n).b +if(b1==null)b1=0 +f1=o.i(0,B.b5) +b2=f1==null?f0:f1.gq(f1).b +if(b2==null)b2=0 +f1=s.i(0,o.i(0,B.b4)) +f1.toString +n=s.i(0,o.i(0,B.b5)) +n.toString +b3=Math.max(0,Math.max(f1,n)-b0) +n=s.i(0,o.i(0,B.b4)) +n.toString +f1=s.i(0,o.i(0,B.b5)) +f1.toString +b4=Math.max(0,Math.max(b1-n,b2-f1)-(a9-b0)) +f1=o.i(0,B.as) +b5=f1==null?f0:f1.gq(f1).b +if(b5==null)b5=0 +f1=o.i(0,B.b6) +b6=f1==null?f0:f1.gq(f1).b +if(b6==null)b6=0 +b7=Math.max(b5,b6) +f1=e9.B +n=f1.a +b8=Math.max(b7,a1+n.b+b3+a9+b4+n.d+j) +f1=f1.x +f1.toString +if(!f1)f1=!1 +else f1=!0 +b9=f1?0:48 +c0=q-a5 +c1=Math.min(Math.max(b8,b9),c0) +c2=b9>b8?(b9-b8)/2:0 +c3=Math.max(0,b8-c0) +f1=e9.av +f1=e9.gR0()?B.Kw:B.Kx +c4=(f1.a+1)/2 +c5=b3-c3*(1-c4) +f1=e9.B.a +c6=f1.b+a1+b0+c5+c2+i +c7=c1-(f1.gcC(f1)+f1.gcH(f1))-a1-j-(b3+a9+b4) +c8=c6+c7*c4 +j=e9.av +f1=e9.gR0()?B.Kw:B.Kx +c9=e9.av6(c6,b0+c5/2+(c1-(2+a9))/2,c6+c7,f1) +if(o.i(0,B.aX)!=null){f1=s.i(0,o.i(0,B.aX)) +f1.toString +d0=c1+8+f1 +f1=o.i(0,B.aX) +d1=f1.gq(f1).b+8}else{d0=0 +d1=0}if(a3){f1=s.i(0,o.i(0,B.bg)) +f1.toString +d2=c1+8+f1 +d3=a4}else{d2=0 +d3=0}d4=Math.max(d0,d2) +d5=Math.max(d1,d3) +d6=o.i(0,B.dm) +if(d6!=null){f1=o.i(0,B.az) +d6.cX(A.ii(c1,r-(f1==null?B.x:f1.gq(f1)).a),!0) +switch(e9.Z.a){case 0:d7=0 +break +case 1:f1=o.i(0,B.az) +d7=(f1==null?B.x:f1.gq(f1)).a +break +default:d7=f0}f1=d6.b +f1.toString +t.q.a(f1).sc6(0,new A.l(d7,0))}d8=A.b4("height") +d9=new A.b93(d8) +e0=A.b4("baseline") +e1=new A.b92(e0,new A.b9_(s,c8,c9,d4,c1,d5)) +f1=e9.B.a +e2=f1.a +e3=r-f1.c +d8.b=c1 +e0.b=e9.gR0()?c9:c8 +if(o.i(0,B.az)!=null){switch(e9.Z.a){case 0:f1=o.i(0,B.az) +d7=r-f1.gq(f1).a +break +case 1:d7=0 +break +default:d7=f0}f1=o.i(0,B.az) +f1.toString +d9.$2(f1,d7)}switch(e9.Z.a){case 0:f1=o.i(0,B.az) +e4=e3-(f1==null?B.x:f1.gq(f1)).a +if(o.i(0,B.as)!=null){e4+=e9.B.a.c +f1=o.i(0,B.as) +f1.toString +q=o.i(0,B.as) +e4-=d9.$2(f1,e4-q.gq(q).a)}if(o.i(0,B.av)!=null){f1=o.i(0,B.av) +f1.toString +q=o.i(0,B.av) +d9.$2(f1,e4-q.gq(q).a)}if(o.i(0,B.b4)!=null){f1=o.i(0,B.b4) +f1.toString +q=o.i(0,B.b4) +e4-=e1.$2(f1,e4-q.gq(q).a)}if(o.i(0,B.ba)!=null){f1=o.i(0,B.ba) +f1.toString +q=o.i(0,B.ba) +e1.$2(f1,e4-q.gq(q).a)}if(o.i(0,B.bf)!=null){f1=o.i(0,B.bf) +f1.toString +q=o.i(0,B.bf) +e1.$2(f1,e4-q.gq(q).a)}if(o.i(0,B.b6)!=null){e5=e2-e9.B.a.a +f1=o.i(0,B.b6) +f1.toString +e5+=d9.$2(f1,e5)}else e5=e2 +if(o.i(0,B.b5)!=null){f1=o.i(0,B.b5) +f1.toString +e1.$2(f1,e5)}break +case 1:f1=o.i(0,B.az) +e4=e2+(f1==null?B.x:f1.gq(f1)).a +if(o.i(0,B.as)!=null){e4-=e9.B.a.a +f1=o.i(0,B.as) +f1.toString +e4+=d9.$2(f1,e4)}if(o.i(0,B.av)!=null){f1=o.i(0,B.av) +f1.toString +d9.$2(f1,e4)}if(o.i(0,B.b4)!=null){f1=o.i(0,B.b4) +f1.toString +e4+=e1.$2(f1,e4)}if(o.i(0,B.ba)!=null){f1=o.i(0,B.ba) +f1.toString +e1.$2(f1,e4)}if(o.i(0,B.bf)!=null){f1=o.i(0,B.bf) +f1.toString +e1.$2(f1,e4)}if(o.i(0,B.b6)!=null){e5=e3+e9.B.a.c +f1=o.i(0,B.b6) +f1.toString +q=o.i(0,B.b6) +e5-=d9.$2(f1,e5-q.gq(q).a)}else e5=e3 +if(o.i(0,B.b5)!=null){f1=o.i(0,B.b5) +f1.toString +q=o.i(0,B.b5) +e1.$2(f1,e5-q.gq(q).a)}break}if(o.i(0,B.bg)!=null||o.i(0,B.aX)!=null){d8.b=d5 +e0.b=d4 +switch(e9.Z.a){case 0:if(o.i(0,B.bg)!=null){f1=o.i(0,B.bg) +f1.toString +q=o.i(0,B.bg) +q=q.gq(q) +n=o.i(0,B.az) +n=n==null?B.x:n.gq(n) +e1.$2(f1,e3-q.a-n.a)}if(o.i(0,B.aX)!=null){f1=o.i(0,B.aX) +f1.toString +e1.$2(f1,e2)}break +case 1:if(o.i(0,B.bg)!=null){f1=o.i(0,B.bg) +f1.toString +q=o.i(0,B.az) +e1.$2(f1,e2+(q==null?B.x:q.gq(q)).a)}if(o.i(0,B.aX)!=null){f1=o.i(0,B.aX) +f1.toString +q=o.i(0,B.aX) +e1.$2(f1,e3-q.gq(q).a)}break}}if(o.i(0,B.av)!=null){f1=o.i(0,B.av).b +f1.toString +e6=t.q.a(f1).a.a +f1=o.i(0,B.av) +e7=(f1==null?B.x:f1.gq(f1)).a*0.75 +switch(e9.Z.a){case 0:if(o.i(0,B.as)!=null&&!0)if(e9.aS){f1=o.i(0,B.as) +e8=(f1==null?B.x:f1.gq(f1)).a-e2}else e8=0 +else e8=0 +f1=e9.B +q=o.i(0,B.av) +q=q==null?B.x:q.gq(q) +n=d6==null?B.x:d6.gq(d6) +f1.r.sc0(0,A.ag(e6+q.a+e8,n.a/2+e7/2,0)) +break +case 1:if(o.i(0,B.as)!=null&&!0)if(e9.aS){f1=o.i(0,B.as) +e8=-(f1==null?B.x:f1.gq(f1)).a+e2}else e8=0 +else e8=0 +f1=e9.B +q=o.i(0,B.az) +q=q==null?B.x:q.gq(q) +n=d6==null?B.x:d6.gq(d6) +f1.r.sc0(0,A.ag(e6-q.a+e8,n.a/2-e7/2,0)) +break}f1=e9.B +o=o.i(0,B.av) +f1.r.sew(o.gq(o).a*0.75)}else{e9.B.r.sc0(0,f0) +e9.B.r.sew(0)}e9.id=f2.bI(new A.V(r,c1+d5))}, +axV(a,b){var s=this.d1$.i(0,B.av) +s.toString +a.eg(s,b)}, +aD(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g=this,f=new A.b91(a,b),e=g.d1$ +f.$1(e.i(0,B.dm)) +if(e.i(0,B.av)!=null){s=e.i(0,B.av).b +s.toString +r=t.q +q=r.a(s).a +s=e.i(0,B.av) +s=s==null?B.x:s.gq(s) +p=e.i(0,B.av) +o=(p==null?B.x:p.gq(p)).a +p=g.B +n=p.f +m=p.d +l=n.gxi() +k=l?-s.b*0.75/2+n.a.b/2:g.B.a.b +s=A.ag(1,0.75,m) +s.toString +p=e.i(0,B.dm).b +p.toString +p=r.a(p).a +r=e.i(0,B.dm) +r=r==null?B.x:r.gq(r) +switch(g.Z.a){case 0:j=q.a+o*(1-s) +if(e.i(0,B.as)!=null)n=l +else n=!1 +if(n){if(g.aS){n=e.i(0,B.as) +n=n==null?B.x:n.gq(n) +n=n.a-g.B.a.a}else n=0 +i=j+n}else i=j +break +case 1:j=q.a +if(e.i(0,B.as)!=null)n=l +else n=!1 +if(n){if(g.aS){n=e.i(0,B.as) +n=n==null?B.x:n.gq(n) +n=-n.a+g.B.a.a}else n=0 +i=j+n}else i=j +break +default:j=null +i=null}r=A.ag(i,p.a+r.a/2-o*0.75/2,0) +r.toString +r=A.ag(j,r,m) +r.toString +p=q.b +n=A.ag(0,k-p,m) +n.toString +h=new A.bS(new Float64Array(16)) +h.fQ() +h.bj(0,r,p+n) +h.cl(0,s) +g.b8=h +s=g.cx +s===$&&A.b() +n=g.ch +n.sb3(0,a.G_(s,b,h,g.gaxU(),t.zV.a(n.a)))}else g.ch.sb3(0,null) +f.$1(e.i(0,B.az)) +f.$1(e.i(0,B.b4)) +f.$1(e.i(0,B.b5)) +f.$1(e.i(0,B.as)) +f.$1(e.i(0,B.b6)) +f.$1(e.i(0,B.bf)) +f.$1(e.i(0,B.ba)) +f.$1(e.i(0,B.bg)) +f.$1(e.i(0,B.aX))}, +l8(a){return!0}, +dY(a,b){var s,r,q,p,o,n,m +for(s=this.ghK(this),r=s.length,q=t.q,p=0;p>>16&255,s>>>8&255,s&255) +if(q.a.w){q.gba() +s=!0}else s=!1 +if(s){q.gba() +s=a.dx.a +return A.tg(A.K(31,s>>>16&255,s>>>8&255,s&255),r)}return r}, +aqZ(a,b){if(this.gba().R8!==!0)return B.u +this.gba() +return A.cg(b.gfn(),this.gih(),t.n8)}, +ar4(a){if(this.gba().R8!=null)this.gba().R8.toString +return B.u}, +a1m(a,b){var s=this,r=t.MH,q=A.cg(s.gba().ok,s.gih(),r) +r=q==null?A.cg(null,s.gih(),r):q +return r==null?A.cg(b.gyj(),s.gih(),t.n8):r}, +ga1P(){var s=this,r=s.a +if(r.y)r=r.r&&!0 +else r=!0 +if(!r){if(s.gba().d==null){s.gba() +r=!1}else r=!0 +r=r&&s.gba().CW!==B.mU}else r=!1 +return r}, +a11(a,b){return A.cg(b.gAK(),this.gih(),t.em).cU(A.cg(this.gba().w,this.gih(),t.p8))}, +gih(){var s,r=this,q=A.aY(t.ui) +r.gba() +if(r.a.r)q.G(0,B.y) +if(r.a.w){r.gba() +s=!0}else s=!1 +if(s)q.G(0,B.A) +if(r.gba().ax!=null)q.G(0,B.cm) +return q}, +aqR(a,b){var s,r,q=this,p=A.cg(q.gba().y2,q.gih(),t.Ef) +if(p==null)p=B.akT +q.gba() +if(p.a.l(0,B.t))return p +if(a.y){q.gba().R8.toString +s=p.Ky(A.cg(b.gFO(),q.gih(),t.oI)) +return s}else{s=q.aqS(a) +q.gba() +if(!J.i(q.gba().y2,B.pz)){q.gba() +r=!1}else r=!0 +if(r)r=0 +else r=q.a.r?2:1 +return p.Ky(new A.b9(s,r,B.M,-1))}}, +A(c4){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=this,b7=null,b8=A.r(c4),b9=A.r(c4).y?new A.b5t(c4):new A.b5j(c4),c0=t.em,c1=A.cg(b9.ghR(),b6.gih(),c0),c2=t.p8,c3=A.cg(b6.gba().e,b6.gih(),c2) +if(c3==null)c3=A.cg(b7,b6.gih(),c2) +s=b8.p3.w +s.toString +r=s.cU(b6.a.d).cU(c1).cU(c3).a7U(1) +q=r.Q +q.toString +c1=A.cg(b9.gAL(),b6.gih(),c0) +c3=A.cg(b6.gba().z,b6.gih(),c2) +if(c3==null)c3=A.cg(b7,b6.gih(),c2) +p=s.cU(b6.a.d).cU(c1).cU(c3) +o=b6.gba().y +if(o==null)n=b7 +else{m=b6.a.y&&!b6.ga1P()?1:0 +l=b6.gba() +k=p.fy +if(k==null)k=B.ac +j=b6.a.e +n=A.bnR(A.O(o,b6.gba().as,k,b7,b7,p,j,l.Q),B.a3,B.dc,m)}i=b6.gba().ax!=null +b6.gba() +if(b6.a.r)if(i)b6.gba() +else b6.gba() +else if(i)b6.gba() +else b6.gba() +h=b6.aqR(b8,b9) +m=b6.r +l=b6.e +l===$&&A.b() +k=b6.aqZ(b8,b9) +j=b6.ar4(b8) +if(b6.a.w){b6.gba() +g=!0}else g=!1 +if(b6.gba().d==null){b6.gba() +f=!0}else f=!1 +if(f)e=b7 +else{f=b6.f +f===$&&A.b() +d=b6.ga1P()||b6.gba().CW!==B.mT?1:0 +c=b6.a +if(c.y)c=c.r&&!0 +else c=!0 +if(c){b=A.cg(b9.gAE(),b6.gih(),c0) +if(b6.gba().ax!=null)b6.gba() +b6.gba() +c=b6.gba() +b=b.cU(c.e) +c3=A.cg(b6.gba().f,b6.gih(),c2) +if(c3==null)c3=A.cg(b7,b6.gih(),c2) +s=s.cU(b6.a.d).a7U(1).cU(b).cU(c3)}else s=r +b6.gba() +c=b6.gba().d +c.toString +c=A.O(c,b7,B.ac,b7,b7,b7,b6.a.e,b7) +e=new A.alr(A.bnR(A.Ah(c,B.a3,B.dc,s),B.a3,B.dc,d),f,b7)}b6.gba() +b6.gba() +b6.gba() +b6.gba() +s=b6.a +a=s.z +f=s.y +if(f)s=s.r&&!0 +else s=!0 +if(s){a!=null +a0=!1}else a0=!1 +if(a!=null&&a0)a=new A.bu(A.bI(b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,B.Fu,b7,b7,b7,b7,b7,b7),!1,!1,!1,!1,a,b7) +s=b6.gba() +a1=s.cy===!0 +a2=a1?18:24 +b6.gba() +b6.gba() +if(b6.gba().k1==null)a3=b7 +else{b6.gba() +s=b8.z.L0(B.qc) +f=b6.a1m(b8,b9) +d=A.x7(b7,b7,b7,b7,b7,b7,b6.a1m(b8,b9),b7,b7,a2,b7,b7,b7,b7) +c=b6.gba() +a3=A.f1(A.mX(new A.ew(s,A.mP(A.a1T(new A.bu(A.bI(b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7),!1,!1,!1,!1,c.k1,b7),new A.qe(d)),new A.cX(a2,b7,b7,b7,b7,f,b7,b7)),b7),B.bn,b7,b7,b7,b7),1,1)}s=b6.a.e +f=b6.gba() +d=b6.a11(b8,b9) +c=b6.gba() +a4=b6.gba() +a5=b6.gba() +c0=A.cg(b9.gAl(),b6.gih(),c0).cU(b6.gba().ay) +a6=b6.gba() +if(b6.gba().p3!=null)a7=b6.gba().p3 +else if(b6.gba().p2!=null&&b6.gba().p2!==""){a8=b6.a.r +a9=b6.gba().p2 +a9.toString +c2=b6.a11(b8,b9).cU(A.cg(b6.gba().p4,b6.gih(),c2)) +c2=A.O(a9,b7,B.ac,b6.gba().cO,b7,c2,b7,b7) +a7=new A.bu(A.bI(b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,a8,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7,b7),!0,!1,!1,!1,c2,b7)}else a7=b7 +c2=c4.ae(t.I) +c2.toString +b6.gba() +b6.gba() +if(!h.gxi()){a8=r.r +a8.toString +a9=A.cT(c4,B.bb) +a9=a9==null?b7:a9.c +if(a9==null)a9=1 +b0=(4+0.75*a8)*a9 +a8=b6.gba() +if(a8.R8===!0)b1=a1?B.rO:B.rN +else b1=a1?B.cy:B.RV}else{b1=a1?B.S0:B.S1 +b0=0}b6.gba() +a8=b6.gba().cx +a8.toString +a9=l.gk(l) +b2=b6.gba() +b3=b6.gba() +b4=b6.a +b5=b4.f +b4=b4.r +b6.gba() +return new A.af3(new A.af0(b1,!1,b0,a9,a8,h,m,b2.aV===!0,b3.cy,b8.z,b7,a,e,n,b7,b7,b7,a3,new A.Rc(s,f.r,d,c.x,a4.at,a5.ax,c0,a6.ch,b7),a7,new A.PR(h,m,l,k,j,g,b7)),c2.w,q,b5,b4,!1,b7)}, +$iaN:1} +A.b5E.prototype={ +$0(){}, +$S:0} +A.Kv.prototype={ +Em(a,b,c,d,e,f,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){var s=this,r=b8==null?s.as:b8,q=a7==null?s.ax:a7,p=b1==null?s.CW:b1,o=b0==null?s.cx:b0,n=c3==null?s.cy:c3,m=e==null?s.p3:e,l=a0==null?s.p2:a0,k=f==null?s.p4:f,j=a9==null?s.R8:a9,i=b==null?s.y2:b,h=c7==null?s.cO:c7,g=a==null?s.aV:a +return A.tQ(g,i,s.bU,s.db,m,k,l,s.xr,a2!==!1,s.y1,s.at,s.to,s.ch,s.ay,q,s.RG,j,o,p,s.f,s.rx,s.x1,s.x2,s.x,s.w,s.r,r,s.z,s.y,s.Q,s.ry,s.a,s.b,c2===!0,n,s.c,s.e,s.d,s.fx,s.dy,s.id,s.fr,s.go,s.fy,h,s.k2,s.k1,s.ok,s.p1,s.k4,s.k3)}, +aFY(a){return this.Em(null,null,null,null,null,null,null,null,null,null,null,null,null,a,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null)}, +aGr(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,b0){return this.Em(a,b,c,d,null,e,null,f,null,g,h,i,j,null,k,l,m,n,o,p,q,r,s,a0,null,a1,a2,a3,a4,a5,a6,a7,a8,null,a9,b0)}, +aGe(a,b){return this.Em(null,null,null,null,null,null,null,null,a,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,b,null,null,null,null,null,null,null,null,null,null,null)}, +aGs(a,b,c,d){return this.Em(null,null,null,null,null,a,b,null,null,null,null,null,null,c,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,d,null,null)}, +aGd(a,b){return this.Em(null,null,null,null,null,null,a,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,b,null,null)}, +Tb(a){var s,r,q,p=this,o=null,n=p.CW +if(n==null)n=B.t7 +s=p.cx +if(s==null)s=B.iI +r=p.p4 +if(r==null)r=o +q=p.y2 +if(q==null)q=o +return p.aGr(p.aV===!0,q,o,o,r,o,o,o,o,o,o,p.R8===!0,s,n,o,o,o,o,o,o,o,o,o,!1,p.cy===!0,o,o,o,o,o)}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.a1(b)!==A.o(s))return!1 +return b instanceof A.Kv&&b.d==s.d&&b.y==s.y&&b.as==s.as&&b.ax==s.ax&&b.CW==s.CW&&J.i(b.cx,s.cx)&&b.cy==s.cy&&J.i(b.k1,s.k1)&&J.i(b.p3,s.p3)&&b.p2==s.p2&&J.i(b.p4,s.p4)&&b.R8==s.R8&&J.i(b.y2,s.y2)&&b.cO==s.cO&&b.aV==s.aV&&!0}, +gv(a){var s=this +return A.dt([s.a,s.b,s.c,s.d,s.f,s.e,s.r,s.w,s.x,s.y,s.z,s.Q,s.as,s.at,s.ax,s.ay,s.ch,s.CW,s.cx,s.cy,s.db,!1,s.R8,s.RG,s.rx,s.ry,s.dy,s.id,s.fx,s.fy,s.go,s.fr,s.k1,s.ok,s.k2,s.k3,s.k4,s.p1,s.p3,s.p2,s.p4,s.to,s.x1,s.x2,s.xr,s.y1,s.y2,!0,s.cO,s.aV,s.bU])}, +j(a){var s=this,r=A.a([],t.s),q=s.d +if(q!=null)r.push('labelText: "'+q+'"') +q=s.y +if(q!=null)r.push('hintText: "'+q+'"') +q=s.as +if(q!=null)r.push('hintMaxLines: "'+A.h(q)+'"') +q=s.ax +if(q!=null)r.push('errorText: "'+q+'"') +q=s.CW +if(q!=null)r.push("floatingLabelBehavior: "+q.j(0)) +q=s.cx +if(q!=null)r.push("floatingLabelAlignment: "+q.j(0)) +q=s.cy +if(q===!0)r.push("isDense: "+A.h(q)) +q=s.k1 +if(q!=null)r.push("suffixIcon: "+q.j(0)) +q=s.p3 +if(q!=null)r.push("counter: "+q.j(0)) +q=s.p2 +if(q!=null)r.push("counterText: "+q) +q=s.p4 +if(q!=null)r.push("counterStyle: "+q.j(0)) +if(s.R8===!0)r.push("filled: true") +q=s.y2 +if(q!=null)r.push("border: "+q.j(0)) +q=s.cO +if(q!=null)r.push("semanticCounterText: "+q) +q=s.aV +if(q!=null)r.push("alignLabelWithHint: "+A.h(q)) +return"InputDecoration("+B.b.cq(r,", ")+")"}, +geB(a){return this.a}} +A.Kw.prototype={ +gv(a){var s=this,r=null +return A.X(s.ghR(),s.gAE(),s.gAK(),r,s.gAL(),s.gAl(),r,B.t7,B.iI,!1,r,!1,s.geK(),r,s.gFW(),r,s.gyj(),r,!1,A.X(s.gfn(),s.gJU(),s.gFO(),r,r,r,r,r,r,r,r,!1,r,B.a,B.a,B.a,B.a,B.a,B.a,B.a))}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r===b)return!0 +if(J.a1(b)!==A.o(r))return!1 +if(b instanceof A.Kw)if(J.i(b.ghR(),r.ghR()))if(J.i(b.gAE(),r.gAE()))if(J.i(b.gAK(),r.gAK()))if(J.i(b.gAL(),r.gAL()))if(J.i(b.gAl(),r.gAl()))if(J.i(b.geK(),r.geK()))if(J.i(b.gFW(),r.gFW()))if(J.i(b.gyj(),r.gyj()))if(B.iI.l(0,B.iI))if(J.i(b.gfn(),r.gfn()))if(J.i(b.gJU(),r.gJU()))if(J.i(b.gFO(),r.gFO()))s=!0 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +return s}, +ghR(){return null}, +gAE(){return null}, +gAK(){return null}, +gAL(){return null}, +gAl(){return null}, +geK(){return null}, +gFW(){return null}, +gyj(){return null}, +gfn(){return null}, +gFO(){return null}, +gJU(){return null}} +A.b5j.prototype={ +gAL(){return A.nG(new A.b5o(this))}, +ghR(){return A.nG(new A.b5q(this))}, +gAE(){return A.nG(new A.b5m(this))}, +gAK(){return A.nG(new A.b5n(this))}, +gAl(){return A.nG(new A.b5k(this))}, +gfn(){return A.vf(new A.b5l(this))}, +geK(){return A.vf(new A.b5p(this))}, +gFW(){return A.vf(new A.b5r(this))}, +gyj(){return A.vf(new A.b5s(this))}} +A.b5o.prototype={ +$1(a){var s=null +if(a.n(0,B.o))return A.eb(s,s,A.r(this.a.ok).ch,s,s,s,s,s,s,s,s,s,s,s,s,s,s,!0,s,s,s,s,s,s,s,s) +return A.eb(s,s,A.r(this.a.ok).db,s,s,s,s,s,s,s,s,s,s,s,s,s,s,!0,s,s,s,s,s,s,s,s)}, +$S:28} +A.b5q.prototype={ +$1(a){var s=null +if(a.n(0,B.o))return A.eb(s,s,A.r(this.a.ok).ch,s,s,s,s,s,s,s,s,s,s,s,s,s,s,!0,s,s,s,s,s,s,s,s) +return A.eb(s,s,A.r(this.a.ok).db,s,s,s,s,s,s,s,s,s,s,s,s,s,s,!0,s,s,s,s,s,s,s,s)}, +$S:28} +A.b5m.prototype={ +$1(a){var s=this,r=null +if(a.n(0,B.o))return A.eb(r,r,A.r(s.a.ok).ch,r,r,r,r,r,r,r,r,r,r,r,r,r,r,!0,r,r,r,r,r,r,r,r) +if(a.n(0,B.cm))return A.eb(r,r,A.r(s.a.ok).ax.at,r,r,r,r,r,r,r,r,r,r,r,r,r,r,!0,r,r,r,r,r,r,r,r) +if(a.n(0,B.y))return A.eb(r,r,A.r(s.a.ok).ax.b,r,r,r,r,r,r,r,r,r,r,r,r,r,r,!0,r,r,r,r,r,r,r,r) +return A.eb(r,r,A.r(s.a.ok).db,r,r,r,r,r,r,r,r,r,r,r,r,r,r,!0,r,r,r,r,r,r,r,r)}, +$S:28} +A.b5n.prototype={ +$1(a){var s=A.r(this.a.ok) +if(a.n(0,B.o))return s.p3.Q.co(B.u) +return s.p3.Q.co(s.db)}, +$S:28} +A.b5k.prototype={ +$1(a){var s=A.r(this.a.ok) +if(a.n(0,B.o))return s.p3.Q.co(B.u) +return s.p3.Q.co(s.ax.at)}, +$S:28} +A.b5l.prototype={ +$1(a){if(a.n(0,B.o))switch(A.r(this.a.ok).ax.a.a){case 0:return B.Pp +case 1:return B.Qx}switch(A.r(this.a.ok).ax.a.a){case 0:return B.mj +case 1:return B.qS}}, +$S:4} +A.b5p.prototype={ +$1(a){if(a.n(0,B.o)&&!a.n(0,B.y))return A.r(this.a.ok).ch +if(a.n(0,B.y))return A.r(this.a.ok).ax.b +switch(A.r(this.a.ok).ax.a.a){case 0:return B.a7 +case 1:return B.iL}}, +$S:4} +A.b5r.prototype={ +$1(a){if(a.n(0,B.o)&&!a.n(0,B.y))return A.r(this.a.ok).ch +if(a.n(0,B.y))return A.r(this.a.ok).ax.b +switch(A.r(this.a.ok).ax.a.a){case 0:return B.a7 +case 1:return B.iL}}, +$S:4} +A.b5s.prototype={ +$1(a){if(a.n(0,B.o)&&!a.n(0,B.y))return A.r(this.a.ok).ch +if(a.n(0,B.y))return A.r(this.a.ok).ax.b +switch(A.r(this.a.ok).ax.a.a){case 0:return B.a7 +case 1:return B.iL}}, +$S:4} +A.b5t.prototype={ +gdF(){var s,r=this,q=r.p1 +if(q===$){s=A.r(r.ok) +r.p1!==$&&A.am() +q=r.p1=s.ax}return q}, +gIr(){var s,r=this,q=r.p2 +if(q===$){s=A.r(r.ok) +r.p2!==$&&A.am() +q=r.p2=s.p3}return q}, +gAL(){return A.nG(new A.b5z(this))}, +gfn(){return A.vf(new A.b5w(this))}, +gJU(){return A.b6s(new A.b5u(this))}, +gFO(){return A.b6s(new A.b5B(this))}, +geK(){var s=this.gdF(),r=s.dy +return r==null?s.db:r}, +gFW(){return A.vf(new A.b5C(this))}, +gyj(){return A.vf(new A.b5D(this))}, +ghR(){return A.nG(new A.b5A(this))}, +gAE(){return A.nG(new A.b5x(this))}, +gAK(){return A.nG(new A.b5y(this))}, +gAl(){return A.nG(new A.b5v(this))}} +A.b5z.prototype={ +$1(a){var s=null +if(a.n(0,B.o))return A.eb(s,s,A.r(this.a.ok).ch,s,s,s,s,s,s,s,s,s,s,s,s,s,s,!0,s,s,s,s,s,s,s,s) +return A.eb(s,s,A.r(this.a.ok).db,s,s,s,s,s,s,s,s,s,s,s,s,s,s,!0,s,s,s,s,s,s,s,s)}, +$S:28} +A.b5w.prototype={ +$1(a){var s,r +if(a.n(0,B.o)){s=this.a.gdF().db.a +return A.K(10,s>>>16&255,s>>>8&255,s&255)}s=this.a.gdF() +r=s.dx +return r==null?s.cy:r}, +$S:4} +A.b5u.prototype={ +$1(a){var s,r,q=this +if(a.n(0,B.o)){s=q.a.gdF().db.a +return new A.b9(A.K(97,s>>>16&255,s>>>8&255,s&255),1,B.M,-1)}if(a.n(0,B.cm)){if(a.n(0,B.A)){s=q.a.gdF() +r=s.ch +return new A.b9(r==null?s.ax:r,1,B.M,-1)}if(a.n(0,B.y))return new A.b9(q.a.gdF().at,2,B.M,-1) +return new A.b9(q.a.gdF().at,1,B.M,-1)}if(a.n(0,B.A))return new A.b9(q.a.gdF().db,1,B.M,-1) +if(a.n(0,B.y))return new A.b9(q.a.gdF().b,2,B.M,-1) +s=q.a.gdF() +r=s.dy +return new A.b9(r==null?s.db:r,1,B.M,-1)}, +$S:89} +A.b5B.prototype={ +$1(a){var s,r,q=this +if(a.n(0,B.o)){s=q.a.gdF().db.a +return new A.b9(A.K(31,s>>>16&255,s>>>8&255,s&255),1,B.M,-1)}if(a.n(0,B.cm)){if(a.n(0,B.A)){s=q.a.gdF() +r=s.ch +return new A.b9(r==null?s.ax:r,1,B.M,-1)}if(a.n(0,B.y))return new A.b9(q.a.gdF().at,2,B.M,-1) +return new A.b9(q.a.gdF().at,1,B.M,-1)}if(a.n(0,B.A))return new A.b9(q.a.gdF().db,1,B.M,-1) +if(a.n(0,B.y))return new A.b9(q.a.gdF().b,2,B.M,-1) +s=q.a.gdF() +r=s.fr +return new A.b9(r==null?s.cx:r,1,B.M,-1)}, +$S:89} +A.b5C.prototype={ +$1(a){var s=this.a.gdF(),r=s.dy +return r==null?s.db:r}, +$S:4} +A.b5D.prototype={ +$1(a){var s,r +if(a.n(0,B.o)){s=this.a.gdF().db.a +return A.K(97,s>>>16&255,s>>>8&255,s&255)}if(a.n(0,B.cm))return this.a.gdF().at +s=this.a.gdF() +r=s.dy +return r==null?s.db:r}, +$S:4} +A.b5A.prototype={ +$1(a){var s,r=this.a,q=r.gIr().y +if(q==null)q=B.ig +if(a.n(0,B.o)){r=r.gdF().db.a +return q.co(A.K(97,r>>>16&255,r>>>8&255,r&255))}if(a.n(0,B.cm)){if(a.n(0,B.A)){r=r.gdF() +s=r.ch +return q.co(s==null?r.ax:s)}if(a.n(0,B.y))return q.co(r.gdF().at) +return q.co(r.gdF().at)}if(a.n(0,B.A)){r=r.gdF() +s=r.dy +return q.co(s==null?r.db:s)}if(a.n(0,B.y))return q.co(r.gdF().b) +r=r.gdF() +s=r.dy +return q.co(s==null?r.db:s)}, +$S:28} +A.b5x.prototype={ +$1(a){var s,r=this.a,q=r.gIr().y +if(q==null)q=B.ig +if(a.n(0,B.o)){r=r.gdF().db.a +return q.co(A.K(97,r>>>16&255,r>>>8&255,r&255))}if(a.n(0,B.cm)){if(a.n(0,B.A)){r=r.gdF() +s=r.ch +return q.co(s==null?r.ax:s)}if(a.n(0,B.y))return q.co(r.gdF().at) +return q.co(r.gdF().at)}if(a.n(0,B.A)){r=r.gdF() +s=r.dy +return q.co(s==null?r.db:s)}if(a.n(0,B.y))return q.co(r.gdF().b) +r=r.gdF() +s=r.dy +return q.co(s==null?r.db:s)}, +$S:28} +A.b5y.prototype={ +$1(a){var s,r=this.a,q=r.gIr().Q +if(q==null)q=B.ig +if(a.n(0,B.o)){r=r.gdF().db.a +return q.co(A.K(97,r>>>16&255,r>>>8&255,r&255))}r=r.gdF() +s=r.dy +return q.co(s==null?r.db:s)}, +$S:28} +A.b5v.prototype={ +$1(a){var s=this.a,r=s.gIr().Q +if(r==null)r=B.ig +return r.co(s.gdF().at)}, +$S:28} +A.agW.prototype={} +A.UW.prototype={ +cn(){this.d3() +this.cT() +this.es()}, +m(){var s=this,r=s.b_$ +if(r!=null)r.J(0,s.gej()) +s.b_$=null +s.aZ()}} +A.Ve.prototype={ +m(){var s=this,r=s.c4$ +if(r!=null)r.J(0,s.ghI()) +s.c4$=null +s.aZ()}, +cn(){this.d3() +this.cT() +this.hJ()}} +A.Vg.prototype={ +cn(){this.d3() +this.cT() +this.es()}, +m(){var s=this,r=s.b_$ +if(r!=null)r.J(0,s.gej()) +s.b_$=null +s.aZ()}} +A.ap_.prototype={ +aA(a){var s,r,q +this.eR(a) +for(s=this.ghK(this),r=s.length,q=0;q0){a7=b/2 +e-=a7 +c+=a7}a=a2.b8 +if(eg){f=b1+j.b+2*a +c=b1+a +e=a}else f=g +d=a}switch(a2.bp.a){case 0:if(a2.Y)a0=d +else{d=(f-p.b)/2 +a0=(f-o.b)/2}break +case 1:if(f>72){d=16 +a0=16}else{d=Math.min((f-p.b)/2,16) +a0=(f-o.b)/2}break +case 2:a0=d +break +case 3:d=(f-p.b)/2 +a0=(f-o.b)/2 +break +case 4:a1=f-p.b-d +a0=f-o.b-d +d=a1 +break +default:a0=a3 +d=a0}switch(a2.av.a){case 0:if(a6){a7=a5.i(0,B.ct).b +a7.toString +t.q.a(a7).sc6(0,new A.l(s-p.a,d))}a7=a5.i(0,B.c1).b +a7.toString +b1=t.q +b1.a(a7).sc6(0,new A.l(m,e)) +if(a8){a7=a5.i(0,B.c2) +a7.toString +c.toString +a7=a7.b +a7.toString +b1.a(a7).sc6(0,new A.l(m,c))}if(a9){a5=a5.i(0,B.d6).b +a5.toString +b1.a(a5).sc6(0,new A.l(0,a0))}break +case 1:if(a6){a7=a5.i(0,B.ct).b +a7.toString +t.q.a(a7).sc6(0,new A.l(0,d))}a7=a5.i(0,B.c1).b +a7.toString +b1=t.q +b1.a(a7).sc6(0,new A.l(n,e)) +if(a8){a7=a5.i(0,B.c2) +a7.toString +c.toString +a7=a7.b +a7.toString +b1.a(a7).sc6(0,new A.l(n,c))}if(a9){a5=a5.i(0,B.d6).b +a5.toString +b1.a(a5).sc6(0,new A.l(s-o.a,a0))}break}a2.id=a4.bI(new A.V(s,f))}, +aD(a,b){var s=new A.b9a(a,b),r=this.d1$ +s.$1(r.i(0,B.ct)) +s.$1(r.i(0,B.c1)) +s.$1(r.i(0,B.c2)) +s.$1(r.i(0,B.d6))}, +l8(a){return!0}, +dY(a,b){var s,r,q,p,o,n +for(s=this.ghK(this),r=s.length,q=t.q,p=0;p#"+A.bt(this)}} +A.uG.prototype={ +hh(a){return A.fd(this.a,this.b,a)}} +A.RN.prototype={ +a8(){return new A.ai0(null,null,B.m)}} +A.ai0.prototype={ +v4(a){var s,r,q=this +q.CW=t.ir.a(a.$3(q.CW,q.a.z,new A.b6c())) +s=q.a +r=t.YJ +s=r.a(a.$3(q.cy,s.as,new A.b6d())) +q.cy=s +s=q.a.at +q.cx=s!=null?r.a(a.$3(q.cx,s,new A.b6e())):null +q.db=t.TZ.a(a.$3(q.db,q.a.w,new A.b6f()))}, +A(a){var s,r,q,p,o,n,m=this,l=null,k=m.db +k.toString +s=m.ghH() +s=k.a_(0,s.gk(s)) +s.toString +k=m.CW +k.toString +r=m.ghH() +q=k.a_(0,r.gk(r)) +k=A.r(a) +r=m.a +if(k.y){k=r.Q +r=m.cx +if(r==null)r=l +else{p=m.ghH() +p=r.a_(0,p.gk(p)) +r=p}o=A.bpp(k,r,q)}else o=A.bpo(a,r.Q,q) +m.a.toString +k=m.cy +if(k==null)n=l +else{r=m.ghH() +r=k.a_(0,r.gk(r)) +n=r}if(n==null)n=B.u +k=A.eF(a) +r=m.a +return new A.a6i(new A.uF(s,k),r.y,q,o,n,new A.Tk(r.r,s,!0,l),l)}} +A.b6c.prototype={ +$1(a){return new A.aO(A.pt(a),null,t.Y)}, +$S:50} +A.b6d.prototype={ +$1(a){return new A.dk(t.n8.a(a),null)}, +$S:108} +A.b6e.prototype={ +$1(a){return new A.dk(t.n8.a(a),null)}, +$S:108} +A.b6f.prototype={ +$1(a){return new A.uG(t.RY.a(a),null)}, +$S:949} +A.Tk.prototype={ +A(a){var s=A.eF(a) +return A.jv(this.c,new A.als(this.d,s,null),null,null,B.x)}} +A.als.prototype={ +aD(a,b){this.b.hV(a,new A.I(0,0,0+b.a,0+b.b),this.c)}, +fw(a){return!a.b.l(0,this.b)}} +A.aoG.prototype={ +cn(){this.d3() +this.cT() +this.es()}, +m(){var s=this,r=s.b_$ +if(r!=null)r.J(0,s.gej()) +s.b_$=null +s.aZ()}} +A.ai1.prototype={ +xj(a){return a.ge_(a)==="en"}, +ke(a,b){return new A.ct(B.Ns,t.az)}, +vM(a){return!1}, +j(a){return"DefaultMaterialLocalizations.delegate(en_US)"}} +A.a_U.prototype={ +gaM(){return"Open navigation menu"}, +gbg(){return"Back"}, +gbb(){return"Close"}, +gaO(){return"Delete"}, +gbu(){return"More"}, +gbl(){return"Show menu"}, +gbo(){return"Navigation menu"}, +gb2(){return"Popup menu"}, +gaC(){return"Dialog"}, +gbf(){return"Alert"}, +gaN(){return"Scrim"}, +gb0(){return"Bottom Sheet"}, +Y_(a){return"Close "+a}, +N_(a,b){return"Tab "+b+" of "+a}, +gV(){return"Copy"}, +gW(){return"Cut"}, +gbx(){return"Scan text"}, +gX(){return"Paste"}, +gO(){return"Select all"}, +gaE(){return"Dismiss"}, +gby(){return B.N}, +gbB(){return"double tap to collapse"}, +gbz(){return"double tap to expand"}, +gbC(){return"Collapse"}, +gbA(){return"Expand for more details"}, +gbt(){return"Collapsed"}, +gbs(){return"Expanded"}, +gbq(){return"Refresh"}, +acj(a){switch(a){case 0:return"No characters remaining" +case 1:return"1 character remaining" +default:return""+a+" characters remaining"}}, +$iav:1} +A.dn.prototype={ +K(){return"MaterialState."+this.b}} +A.a4U.prototype={$ibN:1} +A.Gf.prototype={ +L(a){return this.c.$1(a)}} +A.a4V.prototype={ +KF(a){return this.L(A.aY(t.ui)).KF(a)}, +$ibN:1} +A.QR.prototype={ +L(a){if(a.n(0,B.o))return B.bn +return this.a}, +gzR(){return"MaterialStateMouseCursor("+this.c+")"}} +A.a4T.prototype={$ibN:1} +A.RO.prototype={ +L(a){return this.x.$1(a)}} +A.a4W.prototype={$ibN:1} +A.ai5.prototype={ +L(a){return this.bQ.$1(a)}} +A.bN.prototype={} +A.RF.prototype={ +L(a){var s,r=this,q=r.a,p=q==null?null:q.L(a) +q=r.b +s=q==null?null:q.L(a) +return r.d.$3(p,s,r.c)}, +$ibN:1} +A.bc.prototype={ +L(a){return this.a.$1(a)}, +$ibN:1} +A.bE.prototype={ +L(a){return this.a}, +j(a){var s="MaterialStatePropertyAll(",r=this.a +if(typeof r=="number")return s+A.mt(r)+")" +else return s+A.h(r)+")"}, +$ibN:1} +A.a4X.prototype={ +iI(a,b,c){var s=this.a +if(c?J.fu(s,b):J.pA(s,b))this.ag()}} +A.Ll.prototype={ +adm(a,b){return new A.aIB(this,a,b)}, +Ni(a){return this.adm(a,null)}, +ux(a){if(this.te$.G(0,a))this.a7(new A.aIz())}, +re(a){if(this.te$.F(0,a))this.a7(new A.aIA())}} +A.aIB.prototype={ +$1(a){var s=this.a,r=this.b +if(s.te$.n(0,r)===a)return +if(a)s.ux(r) +else s.re(r)}, +$S:7} +A.aIz.prototype={ +$0(){}, +$S:0} +A.aIA.prototype={ +$0(){}, +$S:0} +A.a52.prototype={} +A.Lr.prototype={ +gv(a){return J.T(this.a)}, +l(a,b){if(b==null)return!1 +if(this===b)return!0 +if(J.a1(b)!==A.o(this))return!1 +return b instanceof A.Lr&&J.i(b.a,this.a)}} +A.ai9.prototype={} +A.a53.prototype={ +gv(a){var s=this +return A.dt([s.a,s.b,s.c,s.d,s.e,s.f,s.r,s.w,s.x,s.y,s.z,s.Q,s.as])}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r===b)return!0 +if(J.a1(b)!==A.o(r))return!1 +if(b instanceof A.a53)if(b.a==r.a)if(b.b==r.b)if(b.c==r.c)if(b.d==r.d)if(b.e==r.e)if(b.f==r.f)if(b.r==r.r)if(b.w==r.w)if(b.x===r.x)if(b.y==r.y)s=J.i(b.as,r.as) +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +return s}} +A.ahq.prototype={ +L(a){var s,r=this,q=r.a,p=q==null?null:q.L(a) +q=r.b +s=q==null?null:q.L(a) +q=p==null +if(q&&s==null)return null +if(q){q=s.a +return A.bn(new A.b9(A.K(0,q.gk(q)>>>16&255,q.gk(q)>>>8&255,q.gk(q)&255),0,B.M,-1),s,r.c)}if(s==null){q=p.a +return A.bn(p,new A.b9(A.K(0,q.gk(q)>>>16&255,q.gk(q)>>>8&255,q.gk(q)&255),0,B.M,-1),r.c)}return A.bn(p,s,r.c)}, +$ibN:1} +A.aib.prototype={} +A.CN.prototype={ +gv(a){return J.T(this.a)}, +l(a,b){if(b==null)return!1 +if(this===b)return!0 +if(J.a1(b)!==A.o(this))return!1 +return b instanceof A.CN&&J.i(b.a,this.a)}} +A.aic.prototype={} +A.a5n.prototype={ +aue(a){return new A.aKc(this,a)}, +A(a){var s,r,q,p,o,n,m,l,k,j=null,i=A.r(a).y?A.bkB(a):A.bkA(a),h=A.bjl(a),g=h.a +if(g==null){s=i.a +s.toString +g=s}r=h.y +if(r==null){s=i.y +s.toString +r=s}s=h.b +if(s==null)s=i.gbY(i) +q=h.c +if(q==null){q=i.c +q.toString}p=h.d +if(p==null)p=i.gbR(i) +o=h.e +if(o==null)o=i.gc9() +n=A.a([],t.p) +for(m=this.e,l=this.d,k=0;k")))}} +A.b2q.prototype={ +$0(){this.a.d=this.b}, +$S:0} +A.b2r.prototype={ +$0(){this.a.e=null}, +$S:0} +A.b2s.prototype={ +$0(){this.a.e=this.b}, +$S:0} +A.b6W.prototype={ +gbY(a){var s=this.Q +return A.tg(A.bpn(s.db,3),s.cy)}, +gfI(){var s=null +return new A.bE(new A.cX(24,s,s,s,s,this.Q.db,s,s),t.dL)}, +gia(){var s=this.Q.f +return A.K(61,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}, +gmX(){return new A.bE(this.z.p3.ax.co(this.Q.db),t.wG)}} +A.b6X.prototype={ +gwf(){var s,r=this,q=r.Q +if(q===$){s=A.r(r.z) +r.Q!==$&&A.am() +q=r.Q=s.ax}return q}, +gbY(a){return this.gwf().cy}, +gbR(a){return B.u}, +gc9(){var s=this.gwf(),r=s.k3 +return r==null?s.b:r}, +gfI(){return new A.bc(new A.b6Y(this),t.gO)}, +gia(){var s=this.gwf(),r=s.w +return r==null?s.f:r}, +goS(){return B.fK}, +gmX(){return new A.bc(new A.b6Z(this),t.ol)}} +A.b6Y.prototype={ +$1(a){var s,r=null,q=this.a +if(a.n(0,B.B)){q=q.gwf() +s=q.x +q=s==null?q.r:s}else{q=q.gwf() +s=q.dy +q=s==null?q.db:s}return new A.cX(24,r,r,r,r,q,r,r)}, +$S:1008} +A.b6Z.prototype={ +$1(a){var s,r,q=this.a,p=q.as +if(p===$){s=A.r(q.z) +q.as!==$&&A.am() +p=q.as=s.p3}s=p.at +s.toString +if(a.n(0,B.B))q=q.gwf().db +else{q=q.gwf() +r=q.dy +q=r==null?q.db:r}return s.T8(q)}, +$S:28} +A.Vy.prototype={ +m(){var s=this,r=s.c4$ +if(r!=null)r.J(0,s.ghI()) +s.c4$=null +s.aZ()}, +cn(){this.d3() +this.cT() +this.hJ()}} +A.xQ.prototype={ +gv(a){var s=this +return A.X(s.a,s.gbY(s),s.c,s.gbR(s),s.gc9(),s.gia(),s.goS(),s.gmX(),s.gfI(),s.y,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.a1(b)!==A.o(s))return!1 +return b instanceof A.xQ&&b.a==s.a&&J.i(b.gbY(b),s.gbY(s))&&b.c==s.c&&J.i(b.gbR(b),s.gbR(s))&&J.i(b.gc9(),s.gc9())&&J.i(b.gia(),s.gia())&&J.i(b.goS(),s.goS())&&b.gmX()==s.gmX()&&b.gfI()==s.gfI()&&b.y==s.y}, +gbY(a){return this.b}, +gbR(a){return this.d}, +gc9(){return this.e}, +gia(){return this.f}, +goS(){return this.r}, +gmX(){return this.w}, +gfI(){return this.x}} +A.LG.prototype={ +xQ(a,b,c){return A.bqU(c,this.w)}, +dr(a){return!this.w.l(0,a.w)}} +A.ait.prototype={} +A.LH.prototype={ +gv(a){var s=this +return A.X(s.a,s.b,s.c,s.d,s.e,s.f,s.r,s.w,s.x,s.y,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.a1(b)!==A.o(s))return!1 +return b instanceof A.LH&&b.a==s.a&&J.i(b.b,s.b)&&b.c==s.c&&J.i(b.d,s.d)&&J.i(b.e,s.e)&&J.i(b.f,s.f)&&J.i(b.r,s.r)&&J.i(b.w,s.w)&&b.x==s.x&&b.y==s.y}} +A.aiw.prototype={} +A.LI.prototype={ +a8(){return new A.S4(null,null,B.m)}} +A.S4.prototype={ +aR(){this.b5() +this.a1Y()}, +m(){this.a0i() +this.akS()}, +aY(a){var s,r,q=this +q.br(a) +s=q.a.d +if(s!==a.d){r=q.f +if(s){r===$&&A.b() +r.bS(0)}else{r===$&&A.b() +r.d9(0)}}s=q.a +if(s.r.length!==a.r.length){q.a0i() +q.a1Y() +return}r=a.w +if(s.w!==r){s=q.d +s===$&&A.b() +s[r].d9(0) +s=q.a +q.d[s.w].bS(0) +return}}, +A(c1){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=this,c0=null +c1.ae(t.Ka) +s=A.r(c1).fm +r=A.r(c1).y?new A.b79(c1,c0,0,c0,c0,c0,c0,-1,B.nZ,!0,c0,c0,80,256):A.bkC(c1) +q=A.A(c1,B.ax,t.D) +q.toString +b9.a.toString +p=s.a +if(p==null)p=r.gbY(r) +o=b9.a.y +n=s.Q +if(n==null){m=r.Q +m.toString +n=m}l=s.as +if(l==null){m=r.as +m.toString +l=m}k=s.c +if(k==null)k=r.gBL() +b9.a.toString +j=s.d +if(j==null)j=r.gy8() +b9.a.toString +i=s.e +if(i==null)i=r.gxN() +b9.a.toString +h=s.f +if(h==null)h=r.gy7() +m=b9.a +m.toString +g=s.r +if(g==null){f=r.r +f.toString +g=f}e=m.Q +d=!0 +c=s.y +if(c==null)c=r.gia() +b9.a.toString +b=s.z +if(b==null)b=r.goS() +if(A.r(c1).y)a=i +else{m=i.r +m=m==null?c0:A.S(m,0,1) +if(m==null){m=r.gxN().r +m=m==null?c0:A.S(m,0,1)}a=i.a7Y(m)}m=c1.ae(t.I) +m.toString +a0=m.w===B.ab +m=b9.r +m===$&&A.b() +f=t.p +a1=A.a([B.l5],f) +B.b.I(a1,A.a([b9.a.e,B.l5],f)) +f=A.a([],f) +for(a2=t.x8,a3=t.jc,a4=0;a5=b9.a,a6=a5.r,a7=a6.length,a40){o.b=o.c=o.d=o.e=null +o.a=0}p=q.dB$ +p.b=!1 +B.b.ab(p.a) +o=p.c +if(o===$){n=A.dN(p.$ti.c) +p.c!==$&&A.am() +p.c=n +o=n}if(o.a>0){o.b=o.c=o.d=o.e=null +o.a=0}q.Cr()}m=this.f +m===$&&A.b() +m.m()}, +a1Y(){var s,r,q,p,o=this,n=null,m=o.a.r.length,l=J.om(m,t.A_) +for(s=o.gawu(),r=0;r>") +o.e=A.aa(new A.ad(l,new A.b7a(),s),!0,s.h("ax.E")) +s=o.a +o.d[s.w].sk(0,1) +s=A.bw(B.z,n,B.S,0,n,1,o.a.d?1:0,o) +o.f=s +o.r=A.c_(B.du,s,n) +s=o.f +s.cL() +s=s.dB$ +s.b=!0 +s.a.push(new A.b7b(o))}, +a2F(){this.a7(new A.b7c())}, +$iaN:1} +A.b7d.prototype={ +$0(){this.a.a.x.$1(this.b)}, +$S:0} +A.b7a.prototype={ +$1(a){return a}, +$S:1100} +A.b7b.prototype={ +$0(){this.a.a2F()}, +$S:0} +A.b7c.prototype={ +$0(){}, +$S:0} +A.ajN.prototype={ +A(a3){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0=this,a1=null,a2=A.r(a3).y +a3.ae(t.I).toString +s=A.x9(a0.e,a0.z,a1) +r=a0.f +q=A.fw(r,a1,a1,B.aR,!0,a0.Q,a1,a1,B.aq) +switch(a0.w.a){case 0:p=a2?B.ae2:a1 +o=a0.c +n=new A.l(o/2+0,6) +m=t.p +l=A.a([],m) +k=p!=null +if(k)l.push(p) +j=a2?a1:o +l.push(A.cZ(A.f1(new A.Fn(a0.ay,!a2,a0.ch,a0.CW,a0.r,s,a1),a1,a1),j,o)) +if(k)l.push(p) +i=A.cO(l,B.w,B.D,B.T) +l=a0.y +if(l.gk(l)===0){h=new A.b8(B.a4,A.fr(B.bs,A.a([i,new A.ez(0,0,A.bLw(r,!1),a1)],m),B.E,B.aH,a1),a1) +g=!1}else{t.m.a(l) +r=A.ag(o,a0.d,l.gk(l)) +r.toString +h=new A.b8(B.a4,new A.ew(new A.aL(r,1/0,0,1/0),A.tb(A.dd(A.a([i,new A.e5(B.d8,l.gk(l),1,new A.cS(new A.aw(l,new A.eE(B.tR),t.HY.h("aw")),!0,q,a1),a1),A.cZ(a1,a1,8*l.gk(l))],m),B.w,B.D,B.T),B.E),a1),a1) +g=!0}break +case 1:r=a0.cy +f=1-r.gk(r) +r=A.ag(24,16,f) +r.toString +e=a0.x?B.Vm:B.tS +o=t.m.a(a0.r) +d=a2?0:a0.c +if(a2)m=0 +else m=r +c=A.cZ(a1,m,a1) +if(a2){m=A.ag(0,4,f) +m.toString}else m=0 +b=A.cZ(a1,m,a1) +if(a2)r=12 +a=A.cZ(a1,r,a1) +r=a0.c +m=r/2 +n=new A.l(m+0,0) +l=A.bkC(a3).Q +l.toString +if(r")),!0,q,a1),a1),a],t.p),B.w,B.dg,B.aa),B.E),B.l,a1,new A.aL(r,1/0,d,1/0),a1,a1,a1,a1,B.bC,a1) +g=!1 +break +case 2:d=a2?0:a0.c +c=A.cZ(a1,a2?0:16,a1) +b=A.cZ(a1,a2?4:0,a1) +a=A.cZ(a1,a2?12:16,a1) +r=a0.c +o=r/2 +n=new A.l(o+0,0) +m=A.bkC(a3).Q +m.toString +if(r>>16&255,r.gk(r)>>>8&255,r.gk(r)&255) +r=A.K(10,r.gk(r)>>>16&255,r.gk(r)>>>8&255,r.gk(r)&255) +if(a2)o=a1 +m=a2?m:a1 +l=A.hA(B.S,!0,a1,new A.Rl(a2,n,g,h,a0.as,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,!0,B.aE,a1,o,m,a1,r,a1,a1,l,a1,!0,!1,a1,!1,a1,!0,a1,a1),B.l,a1,0,a1,a1,a1,a1,a1,B.fo) +r=A.fr(B.bs,A.a([l,new A.bu(A.bI(a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a0.at,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1),!1,!1,!1,!1,a1,a1)],t.p),B.E,B.aH,a1) +return new A.bu(A.bI(a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a1,a0.x,a1,a1,a1,a1,a1,a1,a1,a1),!0,!1,!1,!1,r,a1)}, +geB(a){return this.e}} +A.Rl.prototype={ +C4(a){var s=this +if(s.p3)return new A.b57(s,s.R8?s.p4.a:a.gq(a).a/2) +return null}} +A.b57.prototype={ +$0(){var s=this.b-28,r=this.a.p4.b +return new A.I(s,r,s+56,r+32)}, +$S:117} +A.Fn.prototype={ +A(a){var s,r,q,p=this +if(!p.c)return p.w +s=A.b4("indicator") +r=p.r +q=p.e +if(p.d)s.sdX(A.bjm(r,A.I3(28),q,56,null,56)) +else s.sdX(A.bjm(r,B.cO,q,32,p.f,56)) +return A.fr(B.X,A.a([s.aF(),p.w],t.p),B.E,B.aH,null)}} +A.a5q.prototype={ +K(){return"NavigationRailLabelType."+this.b}} +A.CS.prototype={ +geB(a){return this.a}} +A.afS.prototype={ +dr(a){return this.f!==a.f}} +A.b78.prototype={ +gbY(a){return this.ax.cy}, +gBL(){var s,r=this.at.p3.y +r.toString +s=this.ax.db.a +return r.co(A.K(163,s>>>16&255,s>>>8&255,s&255))}, +gy8(){return this.at.p3.y.co(this.ax.b)}, +gxN(){var s=null +return new A.cX(24,s,s,s,s,this.ax.db,0.64,s)}, +gy7(){var s=null +return new A.cX(24,s,s,s,s,this.ax.b,1,s)}} +A.b79.prototype={ +gyT(){var s,r=this,q=r.ax +if(q===$){s=A.r(r.at) +r.ax!==$&&A.am() +q=r.ax=s.ax}return q}, +ga2G(){var s,r=this,q=r.ay +if(q===$){s=A.r(r.at) +r.ay!==$&&A.am() +q=r.ay=s.p3}return q}, +gbY(a){return this.gyT().cy}, +gBL(){var s=this.ga2G().at +s.toString +return s.co(this.gyT().db)}, +gy8(){var s=this.ga2G().at +s.toString +return s.co(this.gyT().db)}, +gxN(){var s=null,r=this.gyT(),q=r.dy +return new A.cX(24,s,s,s,s,q==null?r.db:q,s,s)}, +gy7(){var s=null,r=this.gyT(),q=r.x +return new A.cX(24,s,s,s,s,q==null?r.r:q,s,s)}, +gia(){var s=this.gyT(),r=s.w +return r==null?s.f:r}, +goS(){return B.fK}} +A.Vl.prototype={ +cn(){this.d3() +this.cT() +this.es()}, +m(){var s=this,r=s.b_$ +if(r!=null)r.J(0,s.gej()) +s.b_$=null +s.aZ()}} +A.CT.prototype={ +gv(a){var s=this +return A.X(s.gbY(s),s.b,s.gBL(),s.gy8(),s.gxN(),s.gy7(),s.r,s.w,s.x,s.gia(),s.goS(),s.Q,s.as,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.a1(b)!==A.o(s))return!1 +return b instanceof A.CT&&J.i(b.gbY(b),s.gbY(s))&&b.b==s.b&&J.i(b.gBL(),s.gBL())&&J.i(b.gy8(),s.gy8())&&J.i(b.gxN(),s.gxN())&&J.i(b.gy7(),s.gy7())&&b.r==s.r&&b.w==s.w&&b.x==s.x&&J.i(b.gia(),s.gia())&&J.i(b.goS(),s.goS())&&b.Q==s.Q&&b.as==s.as}, +gbY(a){return this.a}, +gBL(){return this.c}, +gy8(){return this.d}, +gxN(){return this.e}, +gy7(){return this.f}, +gia(){return this.y}, +goS(){return this.z}} +A.aix.prototype={} +A.a5K.prototype={ +t5(a){var s,r,q,p,o,n,m,l,k,j=null,i=A.r(a),h=i.ax +if(A.r(a).y)s=new A.aiP(a,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,B.S,!0,B.X,j) +else{r=h.b +s=h.db.a +q=A.K(97,s>>>16&255,s>>>8&255,s&255) +s=i.p3.as +p=A.bvH(a) +o=A.r(a).ax.db.a +o=A.K(31,o>>>16&255,o>>>8&255,o&255) +n=new A.Sa(r,q) +m=new A.Sa(B.u,B.u) +l=new A.aiO(r) +s=s==null?j:new A.bE(s,t.XL) +k=t.iL +s=A.Ie(B.X,B.S,m,new A.bE(0,t.QL),!0,j,n,j,j,new A.bE(B.l4,k),new A.bE(B.oO,k),new A.aiN(B.bB,B.bn),l,new A.bE(p,t.Ak),new A.bE(i.k2,t.h9),new A.bE(B.es,t.kU),new A.bE(new A.b9(o,1,B.M,-1),t.e1),B.iK,j,i.e,s,i.z)}return s}, +Gh(a){var s +a.ae(t.BR) +s=A.r(a) +return s.ak.a}} +A.Sa.prototype={ +L(a){if(a.n(0,B.o))return this.b +return this.a}} +A.aiO.prototype={ +L(a){var s +if(a.n(0,B.K)){s=this.a +return A.K(31,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.n(0,B.A)){s=this.a +return A.K(10,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.n(0,B.y)){s=this.a +return A.K(31,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}return null}} +A.aiN.prototype={ +L(a){if(a.n(0,B.o))return this.b +return this.a}} +A.aiP.prototype={ +gwi(){var s,r=this,q=r.fr +if(q===$){s=A.r(r.dy) +r.fr!==$&&A.am() +q=r.fr=s.ax}return q}, +ghC(){return new A.bE(A.r(this.dy).p3.as,t.wG)}, +gbY(a){return B.bE}, +geW(){return new A.bc(new A.b7j(this),t.U)}, +gcw(){return new A.bc(new A.b7l(this),t.U)}, +gbR(a){return B.bE}, +gc9(){return B.bE}, +gfl(a){return B.fm}, +gdE(a){return new A.bE(A.bvH(this.dy),t.Ak)}, +glf(){return B.kt}, +gld(){return B.dN}, +geP(){return new A.bc(new A.b7m(this),t.yI)}, +gcG(a){return B.dM}, +gii(){return new A.bc(new A.b7k(),t.Y6)}, +geF(){return A.r(this.dy).z}, +glt(){return A.r(this.dy).e}, +ghn(){return A.r(this.dy).x}} +A.b7j.prototype={ +$1(a){var s +if(a.n(0,B.o)){s=this.a.gwi().db.a +return A.K(97,s>>>16&255,s>>>8&255,s&255)}return this.a.gwi().b}, +$S:4} +A.b7l.prototype={ +$1(a){var s +if(a.n(0,B.K)){s=this.a.gwi().b +return A.K(31,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.n(0,B.A)){s=this.a.gwi().b +return A.K(20,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.n(0,B.y)){s=this.a.gwi().b +return A.K(31,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}return null}, +$S:27} +A.b7m.prototype={ +$1(a){var s,r +if(a.n(0,B.o)){s=this.a.gwi().db.a +return new A.b9(A.K(31,s>>>16&255,s>>>8&255,s&255),1,B.M,-1)}s=this.a.gwi() +r=s.fr +return new A.b9(r==null?s.cx:r,1,B.M,-1)}, +$S:89} +A.b7k.prototype={ +$1(a){if(a.n(0,B.o))return B.bn +return B.bB}, +$S:60} +A.aoN.prototype={} +A.aoO.prototype={} +A.aoP.prototype={} +A.LV.prototype={ +gv(a){return J.T(this.a)}, +l(a,b){if(b==null)return!1 +if(this===b)return!0 +if(J.a1(b)!==A.o(this))return!1 +return b instanceof A.LV&&J.i(b.a,this.a)}} +A.aiQ.prototype={} +A.Lk.prototype={ +gtO(a){return B.bt}, +gps(){return null}, +grV(){return null}, +Kl(a){var s +if(!(t.Le.b(a)&&!a.gpI()))if(a instanceof A.rl){a.$ti.h("jt<1>").a(a.b) +s=!0}else s=!1 +else s=!0 +return s}, +kU(a,b,c){var s=null,r=this.aEM(a) +return new A.bu(A.bI(s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,!0,s,s,s,s,s,s,s,s,s),!1,!0,!1,!1,r,s)}, +zv(a,b,c,d){var s,r +A.r(a) +s=A.r(a).r +r=B.kp.i(0,this.a.cx.a?B.bo:s) +if(r==null)r=B.qA +return r.a7m(this,a,b,c,d,A.k(this).c)}} +A.mW.prototype={ +uI(a){var s=null,r=this.$ti,q=A.a([],t.Zt),p=$.a9,o=r.h("a8<1?>"),n=r.h("aD<1?>"),m=A.lX(B.bN),l=A.a([],t.wi),k=A.ed(s,t.v),j=$.a9 +return new A.Se(!1,!0,s,s,q,new A.bo(s,r.h("bo>")),new A.bo(s,t.C),new A.oD(),s,0,new A.aD(new A.a8(p,o),n),m,l,this,k,new A.aD(new A.a8(j,o),n),r.h("Se<1>"))}} +A.Se.prototype={ +aEM(a){return this.$ti.h("mW<1>").a(this.b).r}, +gtt(){this.$ti.h("mW<1>").a(this.b) +return!0}, +gpI(){this.$ti.h("mW<1>").a(this.b) +return!1}, +guJ(){return A.fg.prototype.guJ.call(this)+"("+A.h(this.$ti.h("mW<1>").a(this.b).a)+")"}} +A.Vp.prototype={} +A.ao3.prototype={ +A(a){var s=this +return new A.Bq(s.c,new A.bcQ(s),new A.bcR(s),new A.Bq(new A.jL(s.d,new A.bb(A.a([],t.x8),t.jc),0),new A.bcS(s),new A.bcT(s),s.f,null),null)}} +A.bcQ.prototype={ +$3(a,b,c){return new A.vv(b,c,this.a.e&&!0,!1,null)}, +$C:"$3", +$R:3, +$S:216} +A.bcR.prototype={ +$3(a,b,c){return new A.vw(b,this.a.e,!0,c,null)}, +$C:"$3", +$R:3, +$S:319} +A.bcS.prototype={ +$3(a,b,c){return new A.vv(b,c,this.a.e&&!0,!0,null)}, +$C:"$3", +$R:3, +$S:216} +A.bcT.prototype={ +$3(a,b,c){return new A.vw(b,this.a.e,!1,c,null)}, +$C:"$3", +$R:3, +$S:319} +A.vv.prototype={ +a8(){return new A.ao1(new A.NT($.b5()),$,$,B.m)}} +A.ao1.prototype={ +gXf(){return!1}, +Dl(){var s,r=this,q=r.a,p=q.f +if(p)s=B.eU +else{s=$.bA2() +s=new A.aw(q.c,s,s.$ti.h("aw"))}r.tg$=s +p=p?$.bA3():$.bA4() +q=q.c +r.v1$=new A.aw(q,p,p.$ti.h("aw")) +q.P(0,r.gB7()) +r.a.c.f4(r.gB6())}, +aR(){var s,r,q,p,o=this +o.Dl() +s=o.a +r=s.f +q=o.tg$ +q===$&&A.b() +p=o.v1$ +p===$&&A.b() +o.d=A.buL(s.c,q,r,p) +o.b5()}, +aY(a){var s,r,q,p=this,o=p.a +if(a.f!==o.f||a.c!==o.c){o=a.c +o.J(0,p.gB7()) +o.e8(p.gB6()) +p.Dl() +o=p.d +o===$&&A.b() +o.m() +o=p.a +s=o.f +r=p.tg$ +r===$&&A.b() +q=p.v1$ +q===$&&A.b() +p.d=A.buL(o.c,r,s,q)}p.br(a)}, +m(){var s,r=this +r.a.c.J(0,r.gB7()) +r.a.c.e8(r.gB6()) +s=r.d +s===$&&A.b() +s.m() +r.alk()}, +A(a){var s=this.d +s===$&&A.b() +return A.bs9(!0,this.a.d,this.v0$,B.Kk,s)}} +A.vw.prototype={ +a8(){return new A.ao2(new A.NT($.b5()),$,$,B.m)}} +A.ao2.prototype={ +gXf(){return!1}, +Dl(){var s,r=this,q=r.a,p=q.e +if(p){s=$.bA6() +s=new A.aw(q.c,s,s.$ti.h("aw"))}else s=B.eU +r.tg$=s +p=p?$.bA7():$.bA8() +q=q.c +r.v1$=new A.aw(q,p,p.$ti.h("aw")) +q.P(0,r.gB7()) +r.a.c.f4(r.gB6())}, +aR(){var s,r,q,p,o=this +o.Dl() +s=o.a +r=s.e +q=o.tg$ +q===$&&A.b() +p=o.v1$ +p===$&&A.b() +o.d=A.buM(s.c,q,r,p) +o.b5()}, +aY(a){var s,r,q,p=this,o=p.a +if(a.e!==o.e||a.c!==o.c){o=a.c +o.J(0,p.gB7()) +o.e8(p.gB6()) +p.Dl() +o=p.d +o===$&&A.b() +o.m() +o=p.a +s=o.e +r=p.tg$ +r===$&&A.b() +q=p.v1$ +q===$&&A.b() +p.d=A.buM(o.c,r,s,q)}p.br(a)}, +m(){var s,r=this +r.a.c.J(0,r.gB7()) +r.a.c.e8(r.gB6()) +s=r.d +s===$&&A.b() +s.m() +r.alm()}, +A(a){var s=this.d +s===$&&A.b() +return A.bs9(!0,this.a.f,this.v0$,B.Kk,s)}} +A.qv.prototype={} +A.acM.prototype={ +a7m(a,b,c,d,e){return new A.ao3(c,d,!0,e,!0,null)}} +A.a_A.prototype={ +a7m(a,b,c,d,e,f){return A.boz(a,b,c,d,e,f)}} +A.a5P.prototype={ +OU(a){var s=t.Tr +return A.aa(new A.ad(B.a3Q,new A.aL5(a),s),!0,s.h("ax.E"))}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r===b)return!0 +if(J.a1(b)!==A.o(r))return!1 +s=b instanceof A.a5P +if(s&&!0)return!0 +return s&&A.e4(r.OU(B.kp),r.OU(B.kp))}, +gv(a){return A.dt(this.OU(B.kp))}} +A.aL5.prototype={ +$1(a){return this.a.i(0,a)}, +$S:323} +A.H6.prototype={ +aLL(){var s,r=this,q=r.v1$ +q===$&&A.b() +s=q.a +if(J.i(q.b.a_(0,s.gk(s)),1)){q=r.tg$ +q===$&&A.b() +if(!J.i(q.gk(q),0)){q=r.tg$ +q=J.i(q.gk(q),1)}else q=!0}else q=!1 +s=r.v0$ +if(q)s.sK7(!1) +else{r.gXf() +s.sK7(!1)}}, +aLK(a){switch(a.a){case 0:case 3:this.v0$.sK7(!1) +break +case 1:case 2:this.gXf() +this.v0$.sK7(!1) +break}}} +A.Uz.prototype={ +Rw(a){this.ag()}, +apt(a,b,c){var s,r,q,p,o +if(!this.r){s=this.w +s=s.gaL(s)!==B.a5}else s=!1 +if(s){s=this.w +s=$.bA5().a_(0,s.gk(s)) +s.toString +r=s}else r=0 +if(r>0){s=a.gcR(a) +q=b.a +p=b.b +o=$.as().bn() +o.sa5(0,A.K(B.e.bi(255*r),0,0,0)) +s.el(new A.I(q,p,q+c.a,p+c.b),o)}}, +Mw(a,b,c,d){var s,r,q=this,p=q.w +switch(p.gaL(p).a){case 3:case 0:return d.$2(a,b) +case 1:case 2:break}q.apt(a,b,c) +p=q.z +s=q.x +r=s.a +A.bvU(p,s.b.a_(0,r.gk(r)),c) +r=q.as +r.sb3(0,a.G_(!0,b,p,new A.bcO(q,d),r.a))}, +m(){var s=this,r=s.w,q=s.geL() +r.J(0,q) +r.e8(s.gDk()) +s.x.a.J(0,q) +s.y.J(0,q) +s.Q.sb3(0,null) +s.as.sb3(0,null) +s.eH()}, +fw(a){var s,r,q,p,o=this +if(a.r===o.r){s=a.w +r=o.w +if(J.i(s.gk(s),r.gk(r))){s=a.x +r=s.a +q=o.x +p=q.a +if(J.i(s.b.a_(0,r.gk(r)),q.b.a_(0,p.gk(p)))){s=a.y +r=o.y +r=!J.i(s.gk(s),r.gk(r)) +s=r}else s=!0}else s=!0}else s=!0 +return s}} +A.bcO.prototype={ +$2(a,b){var s=this.a,r=s.Q +s=s.y +r.sb3(0,a.ac3(b,B.e.bi(s.gk(s)*255),this.b,r.a))}, +$S:15} +A.UA.prototype={ +Rw(a){this.ag()}, +Mw(a,b,c,d){var s,r,q=this,p=q.y +switch(p.gaL(p).a){case 3:case 0:return d.$2(a,b) +case 1:case 2:break}p=q.z +s=q.w +r=s.a +A.bvU(p,s.b.a_(0,r.gk(r)),c) +r=q.as +r.sb3(0,a.G_(!0,b,p,new A.bcP(q,d),r.a))}, +fw(a){var s,r,q,p +if(a.r===this.r){s=a.x +r=this.x +if(J.i(s.gk(s),r.gk(r))){s=a.w +r=s.a +q=this.w +p=q.a +p=!J.i(s.b.a_(0,r.gk(r)),q.b.a_(0,p.gk(p))) +s=p}else s=!0}else s=!0 +return s}, +m(){var s,r=this +r.Q.sb3(0,null) +r.as.sb3(0,null) +s=r.geL() +r.w.a.J(0,s) +r.x.J(0,s) +r.y.e8(r.gDk()) +r.eH()}} +A.bcP.prototype={ +$2(a,b){var s=this.a,r=s.Q +s=s.x +r.sb3(0,a.ac3(b,B.e.bi(s.gk(s)*255),this.b,r.a))}, +$S:15} +A.aiX.prototype={} +A.VG.prototype={ +m(){var s=this.v0$ +s.ah$=$.b5() +s.ak$=0 +this.aZ()}} +A.VH.prototype={ +m(){var s=this.v0$ +s.ah$=$.b5() +s.ak$=0 +this.aZ()}} +A.Ml.prototype={} +A.aia.prototype={ +aX(a){var s=new A.akp(this.e,null,A.aB(t.T)) +s.aW() +s.sbN(null) +return s}, +b4(a,b){b.C=this.e}} +A.akp.prototype={ +ds(a){var s=this.E$ +if(s==null)return B.x +return s.lC(a)}, +cj(){var s,r=this,q=r.E$ +if(q==null)r.id=B.x +else{s=t.k +q.cX(s.a(A.H.prototype.ga4.call(r)),!0) +s=s.a(A.H.prototype.ga4.call(r)) +q=r.E$ +r.id=s.bI(q.gq(q)) +q=r.E$.b +q.toString +t.q.a(q).sc6(0,B.i)}q=r.gq(r) +r.C.$1(q)}} +A.um.prototype={ +a8(){var s=this.$ti +return new A.De(B.m,s.h("@<1>").S(s).h("De<1,2>"))}} +A.De.prototype={ +Ls(){var s=this.c +s.toString +this.a.toString +A.j5(s,!1).e7(null) +this.a.e.$0()}, +A(a){var s,r,q=null,p=A.r(a),o=A.aM_(a),n=p.y,m=n?A.bu0(a):A.bu_(a),l=A.aY(t.ui) +this.a.toString +if(n){n=o.r +if(n==null)n=q +else{n=n.L(l) +n.toString}if(n==null){n=m.gmX().L(l) +n.toString +s=n}else s=n}else{n=o.f +if(n==null){n=m.ghC() +n.toString +s=n}else s=n}n=this.a +r=A.Ah(A.cP(B.d8,n.Q,B.l,q,new A.aL(0,1/0,48,1/0),q,q,q,q,B.cU,q),B.Z,B.S,s) +n=A.jE(!1,q,!0,r,q,!0,q,q,q,q,new A.afG(q,o.x),q,q,q,q,this.gV9(),q,q,q,q,q,q,q) +return new A.u8(new A.bu(A.bI(q,q,q,q,q,!0,q,q,q,q,!0,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q),!1,!1,!1,!1,n,q),q)}} +A.Sl.prototype={ +A(a){var s,r,q,p,o,n,m,l,k=this,j=null,i=k.c,h=i.E,g=J.ak(h),f=1/(g.gt(h)+1.5),e=A.a([],t.p),d=A.r(a),c=A.aM_(a),b=d.y?A.bu0(a):A.bu_(a) +for(s=1.5*f,r=0;r")),!1,A.hA(B.S,!0,l,new A.e5(B.Lt,n,m.f.a_(0,i.gk(i)),b,l),j.f,r,q,l,p,s,o,l,B.em),l)}, +$S:324} +A.b7Y.prototype={ +vz(a){return A.t2(new A.V(A.S(1/0,a.a,a.b),A.S(1/0,a.c,a.d))).KO(B.aT.T(0,this.f))}, +vC(a,b){var s,r,q,p,o,n,m,l,k=this,j=a.b,i=k.b,h=i.b,g=i.d,f=k.d +if(f!=null){for(s=k.c,r=8,q=0;qi)n=a.a-i-b.a +else if(og-8-f?g-i-8-f:n}i=j.b +if(pg-8-j?g-i-8-j:p}return new A.l(o,h)}, +aoa(a,b){var s,r,q,p,o,n,m,l,k,j=B.b.gN(a) +for(s=a.length,r=b.a,q=b.b,p=0;p"))),null),a,!0,!0,!0,!0)}, +grV(){return this.fH}} +A.b7Z.prototype={ +$1(a){var s,r,q=this,p=q.b,o=q.a.a,n=a.ae(t.I) +n.toString +s=q.c +r=A.boN(s) +return new A.kV(new A.b7Y(p.dH,p.al,o,n.w,s.f,A.i2(r,r.$ti.h("z.E"))),new A.ra(p.fG.a,q.d,null),null)}, +$S:222} +A.Dc.prototype={ +a8(){return new A.Dd(B.m,this.$ti.h("Dd<1>"))}, +aKD(a){return this.c.$1(a)}, +geB(a){return this.ax}} +A.Dd.prototype={ +afP(){var s,r,q,p,o,n,m,l=this,k=l.c +k.toString +s=A.aM_(k) +k=l.c.ga9() +k.toString +r=t.x +r.a(k) +q=l.c +q.toString +q=A.j5(q,!1).d +q===$&&A.b() +q=q.gR().c.ga9() +q.toString +r.a(q) +l.a.toString +p=A.b4("offset") +switch(0){case 0:l.a.toString +p.b=B.i +break}r=p.aF() +r=A.cD(k.cs(0,q),r) +o=k.gq(k).E8(0,B.i).T(0,p.aF()) +o=A.ym(r,A.cD(k.cs(0,q),o)) +q=q.gq(q) +n=A.brB(o,new A.I(0,0,0+q.a,0+q.b)) +q=l.a +q.toString +o=l.c +o.toString +m=q.aKD(o) +if(J.jp(m)){k=l.a +k.toString +r=l.c +r.toString +A.bVm(B.l,s.a,null,r,s.c,null,m,n,s.d,k.CW,s.e,l.$ti.h("1?")).b9(new A.aLZ(l),t.H)}}, +A(a){var s,r,q=this,p=null,o=A.Km(a) +q.a.toString +A.aM_(a) +s=q.a +s=s.ax +if(s==null)s=A.fR(!A.bIq()?B.tj:B.T1,p,p,p) +r=A.A(a,B.ax,t.D) +r.toString +r=r.gbl() +q.a.toString +return A.db(o.f,!0,s,o.a,q.gafO(),B.aT,p,p,r,p)}} +A.aLZ.prototype={ +$1(a){var s=this.a +if(s.c==null)return null +if(a==null){s.a.toString +return null}s.a.toString}, +$S(){return this.a.$ti.h("aE(1?)")}} +A.afG.prototype={ +L(a){var s=A.cg(this.a,a,t.WV) +if(s==null)s=null +return s==null?B.cN.L(a):s}, +gzR(){return"MaterialStateMouseCursor(PopupMenuItemState)"}} +A.b7V.prototype={ +ghC(){var s,r=this,q=r.as +if(q===$){q=r.Q +if(q===$){s=A.r(r.z) +r.Q!==$&&A.am() +r.Q=s +q=s}r.as!==$&&A.am() +q=r.as=q.p3}return q.w}} +A.b7W.prototype={ +ga3e(){var s,r=this,q=r.Q +if(q===$){s=A.r(r.z) +r.Q!==$&&A.am() +r.Q=s +q=s}return q}, +gDp(){var s,r=this,q=r.as +if(q===$){s=r.ga3e() +r.as!==$&&A.am() +q=r.as=s.ax}return q}, +gmX(){return new A.bc(new A.b7X(this),t.ol)}, +ga5(a){return this.gDp().cy}, +gbR(a){var s=this.gDp().fy +return s==null?B.v:s}, +gc9(){var s=this.gDp(),r=s.k3 +return r==null?s.b:r}, +gcG(a){return B.es}} +A.b7X.prototype={ +$1(a){var s,r=this.a,q=r.at +if(q===$){s=r.ga3e() +r.at!==$&&A.am() +q=r.at=s.p3}s=q.as +s.toString +if(a.n(0,B.o)){r=r.gDp().db.a +return s.T8(A.K(97,r>>>16&255,r>>>8&255,r&255))}return s.T8(r.gDp().db)}, +$S:28} +A.Df.prototype={ +gv(a){var s=this +return A.X(s.ga5(s),s.gcG(s),s.c,s.gbR(s),s.gc9(),s.ghC(),s.gmX(),s.w,s.x,s.y,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r===b)return!0 +if(J.a1(b)!==A.o(r))return!1 +if(b instanceof A.Df)if(J.i(b.ga5(b),r.ga5(r)))if(J.i(b.gcG(b),r.gcG(r)))if(b.c==r.c)if(J.i(b.gbR(b),r.gbR(r)))if(J.i(b.gc9(),r.gc9()))if(J.i(b.ghC(),r.ghC()))if(b.gmX()==r.gmX())s=!0 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +return s}, +ga5(a){return this.a}, +gcG(a){return this.b}, +gbR(a){return this.d}, +gc9(){return this.e}, +ghC(){return this.f}, +gmX(){return this.r}} +A.ajA.prototype={} +A.b_R.prototype={ +K(){return"_ActivityIndicatorType."+this.b}} +A.a6z.prototype={ +Qm(a,b){var s,r=this.f +if(r==null)r=null +else{s=r.b +r=r.a +r=s.a_(0,r.gk(r))}if(r==null)r=this.e +if(r==null)r=A.aMe(a).a +if(r==null)r=b +return r==null?A.r(a).ax.b:r}, +aro(a){return this.Qm(a,null)}, +P3(a,b){var s=null,r=this.w,q=this.c +if(q!=null)r=r==null?""+B.e.bi(q*100)+"%":r +return new A.bu(A.bI(s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,this.r,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,r),!1,!1,!1,!1,a,s)}} +A.ahz.prototype={ +aD(a,b){var s,r,q,p,o,n,m=this,l=$.as().bn() +l.sa5(0,m.b) +l.scK(0,B.bl) +l.sa5(0,m.c) +s=new A.b60(m,b,a,l) +r=m.d +q=b.a +if(r!=null)s.$2(0,A.S(r,0,1)*q) +else{r=m.e +p=q*B.Vw.a_(0,r) +o=B.Vq.a_(0,r) +n=q*B.Vj.a_(0,r) +r=B.Vu.a_(0,r) +s.$2(p,q*o-p) +s.$2(n,q*r-n)}}, +fw(a){var s=this +return!a.b.l(0,s.b)||!a.c.l(0,s.c)||a.d!=s.d||a.e!==s.e||a.f!==s.f||!a.r.l(0,s.r)}} +A.b60.prototype={ +$2(a,b){var s,r,q,p,o,n=this +if(b<=0)return +s=n.a +switch(s.f.a){case 0:r=n.b.a-b-a +break +case 1:r=a +break +default:r=null}q=new A.I(r,0,r+b,0+n.b.b) +s=s.r +p=n.c +o=n.d +if(!s.l(0,B.aJ))p.de(s.e2(q),o) +else p.el(q,o)}, +$S:325} +A.KO.prototype={ +a8(){return new A.ahA(null,null,B.m)}} +A.ahA.prototype={ +aR(){var s,r=this +r.b5() +s=A.bw(B.z,null,B.RC,0,null,1,null,r) +r.d=s +if(r.a.c==null)s.Bq(0)}, +aY(a){var s,r,q=this +q.br(a) +s=q.a.c==null +if(s){r=q.d +r===$&&A.b() +r=r.r +r=!(r!=null&&r.a!=null)}else r=!1 +if(r){s=q.d +s===$&&A.b() +s.Bq(0)}else{if(!s){s=q.d +s===$&&A.b() +s=s.r +s=s!=null&&s.a!=null}else s=!1 +if(s){s=q.d +s===$&&A.b() +s.h7(0)}}}, +m(){var s=this.d +s===$&&A.b() +s.m() +this.akP()}, +a_a(a,b,c){var s,r,q,p,o=this,n=null,m=A.r(a).y?new A.b6_(a,n,n,n,n,n):new A.b5Z(a,n,n,n,n,n),l=A.aMe(a),k=o.a +k.toString +k=k.d +s=k==null?l.b:k +if(s==null)s=m.gB_() +o.a.toString +r=l.c +if(r==null)r=m.gAZ() +k=o.a +k.toString +q=!B.aJ.l(0,B.aJ)&&o.a.c==null?B.bc:B.l +p=o.a +p.toString +return k.P3(A.cP(n,A.jv(n,n,n,new A.ahz(s,p.Qm(a,m.ga5(m)),o.a.c,b,c,B.aJ,n),B.x),q,n,new A.aL(1/0,1/0,r,1/0),new A.hH(s,n,n,n,new A.cE(B.aJ,B.t)),n,n,n,n,n),a)}, +A(a){var s,r=this,q=a.ae(t.I) +q.toString +s=q.w +if(r.a.c!=null){q=r.d +q===$&&A.b() +q=q.x +q===$&&A.b() +return r.a_a(a,q,s)}q=r.d +q===$&&A.b() +return A.h1(q,new A.b61(r,s),null)}, +$iaN:1} +A.b61.prototype={ +$2(a,b){var s=this.a,r=s.d +r===$&&A.b() +r=r.x +r===$&&A.b() +return s.a_a(a,r,this.b)}, +$S:51} +A.Fv.prototype={ +aD(a,b){var s,r,q,p,o,n,m=this,l=$.as(),k=l.bn() +k.sa5(0,m.c) +s=m.x +k.sfB(s) +k.scK(0,B.aj) +r=s/2*-m.y +q=r*2 +p=b.a-q +q=b.b-q +o=m.b +if(o!=null){n=l.bn() +n.sa5(0,o) +n.sfB(s) +n.scK(0,B.aj) +a.Up(new A.I(r,r,r+p,r+q),0,6.282185307179586,!1,n)}if(m.d==null&&!0)k.svS(B.Ko) +else k.svS(B.dW) +a.Up(new A.I(r,r,r+p,r+q),m.z,m.Q,!1,k)}, +fw(a){var s=this +return!J.i(a.b,s.b)||!a.c.l(0,s.c)||a.d!=s.d||a.e!==s.e||a.f!==s.f||a.r!==s.r||a.w!==s.w||a.x!==s.x||a.y!==s.y||!1}} +A.o2.prototype={ +gbY(a){return this.d}, +a8(){return new A.Q6(null,null,B.m)}} +A.Q6.prototype={ +aR(){var s,r=this +r.b5() +s=A.bw(B.z,null,B.RH,0,null,1,null,r) +r.d=s +if(r.a.c==null)s.Bq(0)}, +aY(a){var s,r,q=this +q.br(a) +s=q.a.c==null +if(s){r=q.d +r===$&&A.b() +r=r.r +r=!(r!=null&&r.a!=null)}else r=!1 +if(r){s=q.d +s===$&&A.b() +s.Bq(0)}else{if(!s){s=q.d +s===$&&A.b() +s=s.r +s=s!=null&&s.a!=null}else s=!1 +if(s){s=q.d +s===$&&A.b() +s.h7(0)}}}, +m(){var s=this.d +s===$&&A.b() +s.m() +this.akx()}, +HK(a,b,c,d,e){var s,r,q,p,o,n=null,m=A.r(a).y?new A.b1V(a,n,n,n,n,n):new A.b1U(a,n,n,n,n,n),l=this.a +l.gbY(l) +l=A.aMe(a) +s=this.a +s.toString +r=s.Qm(a,m.ga5(m)) +q=this.a +p=q.c +o=q.z +return s.P3(A.cP(n,A.jv(n,n,n,A.bMe(l.d,b,d,e,q.Q,q.as,o,c,p,r),B.x),B.l,n,B.M7,n,n,n,n,n,n),a)}, +P1(){var s=this.d +s===$&&A.b() +return A.h1(s,new A.b1W(this),null)}, +A(a){var s=this.a +s.toString +switch(0){case 0:if(s.c!=null)return this.HK(a,0,0,0,0) +return this.P1()}}, +$iaN:1} +A.b1W.prototype={ +$2(a,b){var s,r,q,p=this.a,o=$.bmt(),n=p.d +n===$&&A.b() +n=o.a_(0,n.gk(n)) +o=$.bmu() +s=p.d +s=o.a_(0,s.gk(s)) +o=$.bmr() +r=p.d +r=o.a_(0,r.gk(r)) +o=$.bms() +q=p.d +return p.HK(a,n,s,r,o.a_(0,q.gk(q)))}, +$S:51} +A.ak5.prototype={ +aD(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g=this +g.aj9(a,b) +s=g.ax +if(s>0){r=g.z+g.Q +q=Math.cos(r) +p=Math.sin(r) +o=b.a/2 +n=g.x +m=n*2*s +l=o-m +k=o+m +j=$.as() +i=j.cZ() +i.fo(0,o+q*l,o+p*l) +i.d7(0,o+q*k,o+p*k) +i.d7(0,o+q*o+-p*n*2*s,o+p*o+q*n*2*s) +i.ad(0) +h=j.bn() +h.sa5(0,g.c) +h.sfB(n) +h.scK(0,B.bl) +a.dV(i,h)}}} +A.a70.prototype={ +gbY(a){return A.o2.prototype.gbY.call(this,this)}, +a8(){return new A.ak6(null,null,B.m)}} +A.ak6.prototype={ +A(a){var s,r,q=this,p=q.a.c +if(p!=null){q.Q=p +s=q.d +s===$&&A.b() +r=q.y +if(r===$){r!==$&&A.am() +r=q.y=new A.eE(B.tQ)}s.sk(0,r.a_(0,p)*0.000225022502250225)}return q.P1()}, +P1(){var s=this.d +s===$&&A.b() +return A.h1(s,new A.b8M(this),null)}, +HK(a,b,c,a0,a1){var s,r,q,p,o,n,m,l,k,j,i,h=this,g=null,f=h.a.c,e=f==null,d=e?0:B.tQ.a_(0,f) +if(e&&h.Q==null)s=0 +else{r=h.z +if(r===$){q=t.Y +p=t.Ns +o=A.aYV(A.a([new A.hi(new A.aO(-0.1,-0.2,q),0.33,p),new A.hi(new A.aO(-0.2,1.35,q),0.6699999999999999,p)],t.x0),t.i) +h.z!==$&&A.am() +h.z=o +r=o}if(e){e=h.Q +e.toString}else e=f +s=3.141592653589793*r.a_(0,e)}n=h.a.aro(a) +e=n.gk(n) +n=A.K(255,n.gk(n)>>>16&255,n.gk(n)>>>8&255,n.gk(n)&255) +q=h.a +q.gbY(q) +m=A.aMe(a).e +if(m==null)m=A.r(a).as +q=h.a +p=q.z +l=q.Q +k=q.as +j=c*3/2*3.141592653589793 +i=Math.max(b*3/2*3.141592653589793-j,0.001) +return q.P3(A.cP(g,A.hA(B.S,!0,g,new A.b8(B.rN,A.aKR(A.aYM(B.X,s,A.jv(g,g,g,new A.ak5(d,g,n,g,b,c,a0,a1,p,l,-1.5707963267948966+j+a1*3.141592653589793*2+a0*0.5*3.141592653589793,i,k,g),B.x),g),(e>>>24&255)/255),g),B.l,m,2,g,g,g,g,g,B.Fb),B.l,g,g,g,g,41,B.e7,g,41),a)}} +A.b8M.prototype={ +$2(a,b){var s,r,q,p=this.a,o=$.bmt(),n=p.d +n===$&&A.b() +n=o.a_(0,n.gk(n)) +o=$.bmu() +s=p.d +s=o.a_(0,s.gk(s)) +o=$.bmr() +r=p.d +r=o.a_(0,r.gk(r)) +o=$.bms() +q=p.d +return p.HK(a,1.05*n,s,r,o.a_(0,q.gk(q)))}, +$S:51} +A.b1U.prototype={ +ga5(a){var s,r=this,q=r.r +if(q===$){s=A.r(r.f) +r.r!==$&&A.am() +q=r.r=s.ax}return q.b}} +A.b5Z.prototype={ +gDq(){var s,r=this,q=r.r +if(q===$){s=A.r(r.f) +r.r!==$&&A.am() +q=r.r=s.ax}return q}, +ga5(a){return this.gDq().b}, +gB_(){return this.gDq().CW}, +gAZ(){return 4}} +A.b1V.prototype={ +ga5(a){var s,r=this,q=r.r +if(q===$){s=A.r(r.f) +r.r!==$&&A.am() +q=r.r=s.ax}return q.b}} +A.b6_.prototype={ +gDq(){var s,r=this,q=r.r +if(q===$){s=A.r(r.f) +r.r!==$&&A.am() +q=r.r=s.ax}return q}, +ga5(a){return this.gDq().b}, +gB_(){var s=this.gDq(),r=s.dx +return r==null?s.cy:r}, +gAZ(){return 4}} +A.V0.prototype={ +m(){var s=this,r=s.c4$ +if(r!=null)r.J(0,s.ghI()) +s.c4$=null +s.aZ()}, +cn(){this.d3() +this.cT() +this.hJ()}} +A.Vi.prototype={ +m(){var s=this,r=s.c4$ +if(r!=null)r.J(0,s.ghI()) +s.c4$=null +s.aZ()}, +cn(){this.d3() +this.cT() +this.hJ()}} +A.Dm.prototype={ +gv(a){var s=this +return A.X(s.ga5(s),s.gB_(),s.gAZ(),s.d,s.e,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.a1(b)!==A.o(s))return!1 +return b instanceof A.Dm&&J.i(b.ga5(b),s.ga5(s))&&J.i(b.gB_(),s.gB_())&&b.gAZ()==s.gAZ()&&J.i(b.d,s.d)&&J.i(b.e,s.e)}, +ga5(a){return this.a}, +gB_(){return this.b}, +gAZ(){return this.c}} +A.ajD.prototype={} +A.b8o.prototype={ +K(){return"_RadioType."+this.b}} +A.Dr.prototype={ +a8(){return new A.Gu(new A.ajK($.b5()),$,$,$,$,$,$,$,$,$,null,!1,!1,null,null,B.m,this.$ti.h("Gu<1>"))}} +A.Gu.prototype={ +ayV(a){var s +if(a==null){this.a.e.$1(null) +return}if(a){s=this.a +s.e.$1(s.c)}}, +aY(a){var s +this.br(a) +s=this.a +if(J.i(s.c,s.d)!==J.i(a.c,a.d))this.E1()}, +m(){this.d.m() +this.akU()}, +gdT(){this.a.toString +return this.gayU()}, +gxM(){this.a.toString +return!1}, +gk(a){var s=this.a +return J.i(s.c,s.d)}, +ga3j(){return new A.bc(new A.b8m(this),t.U)}, +A(a5){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a3=this,a4=null +switch(a3.a.cx.a){case 0:break +case 1:switch(A.r(a5).r.a){case 0:case 1:case 3:case 5:break +case 2:case 4:s=a3.a +return new A.B6(s.c,s.d,s.e,!1,!1,s.w,a4,a4,!1,a4,a3.$ti.h("B6<1>"))}break}r=A.bru(a5) +q=A.r(a5).y?new A.b8j(a5,a4,a4,a4,a4,a4,a4):new A.b8g(a5,a4,a4,a4,a4,a4,a4) +p=a3.a.y +o=q.geF() +switch(p.a){case 0:n=B.dV +break +case 1:n=B.oN +break +default:n=a4}n=n.T(0,new A.l(o.a,o.b).au(0,4)) +m=a3.gfA() +m.G(0,B.B) +l=a3.gfA() +l.F(0,B.B) +a3.a.toString +k=a3.ga3j().a.$1(m) +if(k==null){s=r.b +k=s==null?a4:s.L(m)}s=k==null +if(s){j=q.gfn().a.$1(m) +j.toString +i=j}else i=k +a3.a.toString +h=a3.ga3j().a.$1(l) +if(h==null){j=r.b +h=j==null?a4:j.L(l)}j=h==null +if(j){g=q.gfn().a.$1(l) +g.toString +f=g}else f=h +e=a3.gfA() +e.G(0,B.y) +a3.a.toString +g=r.c +d=g==null?a4:g.L(e) +c=d +if(c==null){d=q.gcw().a.$1(e) +d.toString +c=d}b=a3.gfA() +b.G(0,B.A) +a3.a.toString +d=g==null?a4:g.L(b) +a=d +if(a==null){d=q.gcw().a.$1(b) +d.toString +a=d}m.G(0,B.K) +a3.a.toString +d=g==null?a4:g.L(m) +if(d==null){s=s?a4:A.K(31,k.gk(k)>>>16&255,k.gk(k)>>>8&255,k.gk(k)&255) +a0=s}else a0=d +if(a0==null){s=q.gcw().a.$1(m) +s.toString +a0=s}l.G(0,B.K) +a3.a.toString +s=g==null?a4:g.L(l) +if(s==null){s=j?a4:A.K(31,h.gk(h)>>>16&255,h.gk(h)>>>8&255,h.gk(h)&255) +a1=s}else a1=s +if(a1==null){s=q.gcw().a.$1(l) +s.toString +a1=s}if(a3.qK$!=null){a=a3.gfA().n(0,B.B)?a0:a1 +c=a3.gfA().n(0,B.B)?a0:a1}switch(A.cb().a){case 0:case 1:case 3:case 5:a2=a4 +break +case 2:case 4:s=a3.a +a2=J.i(s.c,s.d) +break +default:a2=a4}s=a3.a +s=J.i(s.c,s.d) +a3.a.toString +j=a3.d +g=a3.mP$ +g===$&&A.b() +j.scQ(0,g) +g=a3.uY$ +g===$&&A.b() +j.sWC(g) +g=a3.v_$ +g===$&&A.b() +j.sWE(g) +g=a3.uZ$ +g===$&&A.b() +j.sWF(g) +j.sVi(a1) +j.sWD(a0) +j.sqN(a) +j.ska(c) +a3.a.toString +g=r.d +j.siO(g==null?20:g) +j.sAc(a3.qK$) +j.sqS(a3.gfA().n(0,B.y)) +j.sVw(a3.gfA().n(0,B.A)) +j.suv(i) +j.sAO(f) +j=a3.a7j(!1,a4,new A.bc(new A.b8n(a3,r),t.bN),j,n) +return new A.bu(A.bI(a4,a4,a4,a4,a4,a4,s,a4,a4,a4,a4,a4,a4,a4,a4,a4,a4,a4,!0,a4,a4,a4,a4,a4,a4,a4,a4,a4,a4,a4,a4,a4,a4,a4,a4,a4,a4,a4,a4,a4,a4,a4,a4,a4,a4,a4,a4,a4,a4,a2,a4,a4,a4,a4,a4,a4,a4,a4),!1,!1,!1,!1,j,a4)}, +$iaN:1} +A.b8m.prototype={ +$1(a){if(a.n(0,B.o))return null +if(a.n(0,B.B))return this.a.a.w +return null}, +$S:27} +A.b8n.prototype={ +$1(a){var s=A.cg(this.a.a.f,a,t.WV) +if(s==null)s=null +return s==null?A.cg(B.cN,a,t.Pb):s}, +$S:133} +A.ajK.prototype={ +aD(a,b){var s,r,q,p,o,n=this +n.Wn(a,b.mg(B.i)) +s=new A.I(0,0,0+b.a,0+b.b).gbH() +r=$.as().bn() +q=n.f +q.toString +p=n.e +p.toString +o=n.a +o=A.W(q,p,o.gk(o)) +o.toString +r.sa5(0,o) +r.scK(0,B.aj) +r.sfB(2) +a.ha(s,8,r) +q=n.a +if(q.gaL(q)!==B.Q){r.scK(0,B.bl) +q=n.a +a.ha(s,4.5*q.gk(q),r)}}} +A.b8g.prototype={ +gpm(){var s,r=this,q=r.w +if(q===$){s=A.r(r.r) +r.w!==$&&A.am() +r.w=s +q=s}return q}, +gfn(){return new A.bc(new A.b8h(this),t.h2)}, +gcw(){return new A.bc(new A.b8i(this),t.h2)}, +gjJ(){return this.gpm().e}, +geF(){return this.gpm().z}} +A.b8h.prototype={ +$1(a){var s,r,q +if(a.n(0,B.o))return this.a.gpm().ch +if(a.n(0,B.B)){s=this.a +r=s.x +if(r===$){q=s.gpm() +s.x!==$&&A.am() +r=s.x=q.ax}return r.f}return this.a.gpm().k4}, +$S:4} +A.b8i.prototype={ +$1(a){var s,r +if(a.n(0,B.K)){s=this.a.gfn().a.$1(a) +r=J.bK(s) +return A.K(31,r.gk(s)>>>16&255,r.gk(s)>>>8&255,r.gk(s)&255)}if(a.n(0,B.A))return this.a.gpm().dx +if(a.n(0,B.y))return this.a.gpm().cx +return B.u}, +$S:4} +A.b8j.prototype={ +gpm(){var s,r=this,q=r.w +if(q===$){s=A.r(r.r) +r.w!==$&&A.am() +r.w=s +q=s}return q}, +gjv(){var s,r=this,q=r.x +if(q===$){s=r.gpm() +r.x!==$&&A.am() +q=r.x=s.ax}return q}, +gfn(){return new A.bc(new A.b8k(this),t.h2)}, +gcw(){return new A.bc(new A.b8l(this),t.h2)}, +gjJ(){return this.gpm().e}, +geF(){return this.gpm().z}} +A.b8k.prototype={ +$1(a){var s,r,q=this +if(a.n(0,B.B)){if(a.n(0,B.o)){s=q.a.gjv().db.a +return A.K(97,s>>>16&255,s>>>8&255,s&255)}if(a.n(0,B.K))return q.a.gjv().b +if(a.n(0,B.A))return q.a.gjv().b +if(a.n(0,B.y))return q.a.gjv().b +return q.a.gjv().b}if(a.n(0,B.o)){s=q.a.gjv().db.a +return A.K(97,s>>>16&255,s>>>8&255,s&255)}if(a.n(0,B.K))return q.a.gjv().db +if(a.n(0,B.A))return q.a.gjv().db +if(a.n(0,B.y))return q.a.gjv().db +s=q.a.gjv() +r=s.dy +return r==null?s.db:r}, +$S:4} +A.b8l.prototype={ +$1(a){var s,r=this +if(a.n(0,B.B)){if(a.n(0,B.K)){s=r.a.gjv().db.a +return A.K(31,s>>>16&255,s>>>8&255,s&255)}if(a.n(0,B.A)){s=r.a.gjv().b +return A.K(20,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.n(0,B.y)){s=r.a.gjv().b +return A.K(31,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}return B.u}if(a.n(0,B.K)){s=r.a.gjv().b +return A.K(31,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.n(0,B.A)){s=r.a.gjv().db.a +return A.K(20,s>>>16&255,s>>>8&255,s&255)}if(a.n(0,B.y)){s=r.a.gjv().db.a +return A.K(31,s>>>16&255,s>>>8&255,s&255)}return B.u}, +$S:4} +A.H8.prototype={ +cn(){this.d3() +this.cT() +this.es()}, +m(){var s=this,r=s.b_$ +if(r!=null)r.J(0,s.gej()) +s.b_$=null +s.aZ()}} +A.H9.prototype={ +aR(){var s,r,q=this,p=null +q.b5() +s=q.a +r=A.bw(B.z,p,B.S,0,p,1,!J.i(s.c,s.d)?0:1,q) +q.k9$=r +q.mP$=A.c_(B.bp,r,B.cx) +r=A.bw(B.z,p,B.b_,0,p,1,p,q) +q.oK$=r +q.uY$=A.c_(B.a3,r,p) +s=A.bw(B.z,p,B.e5,0,p,1,q.pF$||q.pE$?1:0,q) +q.tc$=s +q.uZ$=A.c_(B.a3,s,p) +s=A.bw(B.z,p,B.e5,0,p,1,q.pF$||q.pE$?1:0,q) +q.td$=s +q.v_$=A.c_(B.a3,s,p)}, +m(){var s=this,r=s.k9$ +r===$&&A.b() +r.m() +r=s.oK$ +r===$&&A.b() +r.m() +r=s.tc$ +r===$&&A.b() +r.m() +r=s.td$ +r===$&&A.b() +r.m() +s.akT()}} +A.b8p.prototype={ +K(){return"_RadioType."+this.b}} +A.My.prototype={ +A(a){var s,r,q,p,o,n=this,m=null +switch(0){case 0:s=new A.Dr(n.c,n.d,n.e,m,!1,n.w,m,B.kv,m,m,m,!1,!1,B.aoC,m,n.$ti.h("Dr<1>")) +break}switch(2){case 0:case 2:break}r=A.r(a) +q=A.bru(a) +p=n.w +if(p==null){p=q.b +p=p==null?m:p.L(A.aY(t.ui)) +o=p}else o=p +if(o==null)o=r.ax.f +return new A.u8(A.bH(!1,m,m,m,!0,m,m,!1,m,s,m,m,new A.aN1(n),!1,o,m,m,n.ax,m,n.at,m,m),m)}} +A.aN1.prototype={ +$0(){var s=this.a,r=s.c +if(!J.i(r,s.d))s.e.$1(r)}, +$S:0} +A.Ds.prototype={ +gv(a){var s=this +return A.X(s.a,s.gfn(),s.gcw(),s.d,s.gjJ(),s.geF(),B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.a1(b)!==A.o(s))return!1 +return b instanceof A.Ds&&b.gfn()==s.gfn()&&b.gcw()==s.gcw()&&b.d==s.d&&b.gjJ()==s.gjJ()&&J.i(b.geF(),s.geF())}, +gfn(){return this.b}, +gcw(){return this.c}, +gjJ(){return this.e}, +geF(){return this.f}} +A.ajM.prototype={} +A.vo.prototype={ +K(){return"_RefreshIndicatorMode."+this.b}} +A.aOG.prototype={ +K(){return"RefreshIndicatorTriggerMode."+this.b}} +A.b59.prototype={ +K(){return"_IndicatorType."+this.b}} +A.yn.prototype={ +a8(){return new A.MF(null,null,B.m)}, +aM1(){return this.f.$0()}, +qZ(a){return A.Hk().$1(a)}} +A.MF.prototype={ +aR(){var s,r,q,p=this,o=null +p.b5() +s=p.d=A.bw(B.z,o,o,0,o,1,o,p) +r=$.bz2() +q=t.m +p.f=new A.aw(q.a(s),r,r.$ti.h("aw")) +r=$.bz4() +p.w=new A.aw(q.a(s),r,r.$ti.h("aw")) +r=A.bw(B.z,o,o,0,o,1,o,p) +p.e=r +s=$.bz3() +p.r=new A.aw(q.a(r),s,s.$ti.h("aw"))}, +cp(){var s,r,q,p,o=this,n=o.c +n.toString +s=A.r(n) +n=o.d +n===$&&A.b() +o.a.toString +r=s.ax.b +q=A.K(0,r.gk(r)>>>16&255,r.gk(r)>>>8&255,r.gk(r)&255) +o.a.toString +r=A.K(255,r.gk(r)>>>16&255,r.gk(r)>>>8&255,r.gk(r)&255) +p=t.IC.h("dq") +o.x=new A.aw(t.m.a(n),new A.dq(new A.eE(B.tP),new A.dk(q,r),p),p.h("aw")) +o.ei()}, +aY(a){this.br(a) +this.a.toString}, +m(){var s=this.d +s===$&&A.b() +s.m() +s=this.e +s===$&&A.b() +s.m() +this.aju()}, +atD(a){var s,r,q,p,o,n=this +if(!n.a.qZ(a))return!1 +if(!(a instanceof A.DV&&a.d!=null)){if(a instanceof A.kw)if(a.d!=null)n.a.toString +s=!1}else s=!0 +if(s){s=a.a +r=s.e +if(!(r===B.af&&Math.max(s.gkf()-s.gf0(),0)===0))s=r===B.ag&&Math.max(s.gf0()-s.gkg(),0)===0 +else s=!0 +s=s&&n.y==null&&n.az7(0,r)}else s=!1 +if(s){n.a7(new A.aOB(n)) +return!1}s=a.a +r=s.e +switch(r.a){case 2:case 0:q=!0 +break +case 3:case 1:q=null +break +default:q=null}if(q!=n.Q){s=n.y +if(s===B.eK||s===B.eL)n.rJ(B.lu)}else if(a instanceof A.kw){p=n.y +if(p===B.eK||p===B.eL){p=r===B.ag +if(!(p&&Math.max(s.gf0()-s.gkg(),0)>0))o=r===B.af&&Math.max(s.gkf()-s.gf0(),0)>0 +else o=!0 +if(o)n.rJ(B.lu) +else{if(p){r=n.as +r.toString +p=a.e +p.toString +n.as=r-p}else if(r===B.af){r=n.as +r.toString +p=a.e +p.toString +n.as=r+p}s=s.d +s.toString +n.a_m(s)}}if(n.y===B.eL&&a.d==null)n.a3r()}else if(a instanceof A.n0){p=n.y +if(p===B.eK||p===B.eL){if(r===B.ag){r=n.as +r.toString +n.as=r-a.e}else if(r===B.af){r=n.as +r.toString +n.as=r+a.e}s=s.d +s.toString +n.a_m(s)}}else if(a instanceof A.oP)switch(n.y){case B.eL:n.a3r() +break +case B.eK:n.rJ(B.lu) +break +case B.lu:case B.pB:case B.lt:case B.pA:case null:case void 0:break}return!1}, +asE(a){if(a.j6$!==0||!a.a)return!1 +if(this.y===B.eK){a.c=!1 +return!0}return!1}, +az7(a,b){var s,r=this +switch(b.a){case 2:case 0:r.Q=!0 +break +case 3:case 1:r.Q=null +return!1}r.as=0 +s=r.e +s===$&&A.b() +s.sk(0,0) +s=r.d +s===$&&A.b() +s.sk(0,0) +return!0}, +a_m(a){var s,r,q=this,p=q.as +p.toString +s=p/(a*0.25) +if(q.y===B.eL)s=Math.max(s,0.6666666666666666) +p=q.d +p===$&&A.b() +p.sk(0,A.S(s,0,1)) +if(q.y===B.eK){p=q.x +p===$&&A.b() +r=p.a +r=p.b.a_(0,r.gk(r)) +r.toString +r=(J.lB(r)>>>24&255)===255 +p=r}else p=!1 +if(p)q.y=B.eL}, +rJ(a){return this.ap8(a)}, +ap8(a){var s=0,r=A.y(t.H),q=this,p +var $async$rJ=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:s=2 +return A.t(A.d3(null,t.H),$async$rJ) +case 2:q.a7(new A.aOz(q,a)) +case 3:switch(q.y.a){case 4:s=5 +break +case 5:s=6 +break +case 1:s=7 +break +case 0:s=8 +break +case 3:s=9 +break +case 2:s=10 +break +default:s=4 +break}break +case 5:p=q.e +p===$&&A.b() +p.z=B.aI +s=11 +return A.t(p.jW(1,B.Z,B.S),$async$rJ) +case 11:s=4 +break +case 6:p=q.d +p===$&&A.b() +p.z=B.aI +s=12 +return A.t(p.jW(0,B.Z,B.S),$async$rJ) +case 12:s=4 +break +case 7:case 8:case 9:case 10:s=4 +break +case 4:if(q.c!=null&&q.y===a){q.Q=q.as=null +q.a7(new A.aOA(q))}return A.w(null,r)}}) +return A.x($async$rJ,r)}, +a3r(){var s,r=$.a9 +this.y=B.pA +s=this.d +s===$&&A.b() +s.z=B.aI +s.jW(0.6666666666666666,B.Z,B.cT).b9(new A.aOE(this,new A.aD(new A.a8(r,t.b),t.gR)),t.H)}, +A(a){var s,r,q,p=this,o=null,n=p.a.c,m=p.y,l=m===B.lt||m===B.pB +n=A.a([new A.dP(p.gatC(),new A.dP(p.gasD(),n,o,t.eq),o,t.WA)],t.p) +if(p.y!=null){m=p.Q +m.toString +p.a.toString +m=!m?0:o +s=p.f +s===$&&A.b() +r=p.r +r===$&&A.b() +q=p.d +q===$&&A.b() +n.push(A.hc(m,new A.a8E(1,A.cP(B.eN,A.aR2(A.h1(q,new A.aOF(p,l),o),r),B.l,o,o,o,o,o,o,new A.aK(0,40,0,0),o),s,o),o,o,0,0,0,o))}return A.fr(B.bs,n,B.E,B.aH,o)}, +$iaN:1} +A.aOB.prototype={ +$0(){this.a.y=B.eK}, +$S:0} +A.aOz.prototype={ +$0(){this.a.y=this.b}, +$S:0} +A.aOA.prototype={ +$0(){this.a.y=null}, +$S:0} +A.aOE.prototype={ +$1(a){var s=this.a +if(s.c!=null&&s.y===B.pA){s.a7(new A.aOC(s)) +s.a.aM1().fv(new A.aOD(s,this.b))}}, +$S:20} +A.aOC.prototype={ +$0(){this.a.y=B.lt}, +$S:0} +A.aOD.prototype={ +$0(){var s=this.a +if(s.c!=null&&s.y===B.lt){this.b.fj(0) +s.rJ(B.pB)}}, +$S:5} +A.aOF.prototype={ +$2(a,b){var s,r,q,p,o,n=null,m=this.a +m.a.toString +s=A.A(a,B.ax,t.D) +s.toString +s=s.gbq() +m.a.toString +if(this.b)r=n +else{r=m.w +r===$&&A.b() +q=r.a +q=r.b.a_(0,q.gk(q)) +r=q}q=m.x +q===$&&A.b() +m.a.toString +p=new A.a70(2.5,0,n,r,n,n,q,s,n,n) +o=A.bE0(n,n) +switch(0){case 0:return p}}, +$S:51} +A.Sy.prototype={ +cn(){this.d3() +this.cT() +this.es()}, +m(){var s=this,r=s.b_$ +if(r!=null)r.J(0,s.gej()) +s.b_$=null +s.aZ()}} +A.kK.prototype={ +K(){return"_ScaffoldSlot."+this.b}} +A.Nb.prototype={ +a8(){var s=null +return new A.a8_(A.lN(t.Np),A.or(s,t.nY),A.or(s,t.BL),s,s,B.m)}} +A.a8_.prototype={ +cp(){var s,r=this,q=r.c +q.toString +s=A.aS(q,B.Lg,t.l).w.y +q=r.y +if(q===!0)if(!s){q=r.x +q=q!=null&&q.b==null}else q=!1 +else q=!1 +if(q)r.aJy(B.ae8) +r.y=s +r.ei()}, +aJy(a){var s,r,q=this,p=null,o=q.r +if(o.b!==o.c){p.gaL(p) +s=!1}else s=!0 +if(s)return +r=o.gN(o).b +o=q.y +o.toString +if(o){p.sk(0,0) +r.cM(0,a)}else p.d9(0).b9(new A.aQA(q,r,a),t.H) +o=q.x +if(o!=null)o.aQ(0) +q.x=null}, +A(a){var s,r,q=this +q.y=A.aS(a,B.Lg,t.l).w.y +s=q.r +if(!s.gai(s)){r=A.qq(a,t.X) +if(r==null||r.gtl())null.gaKn()}return new A.T0(q,q.a.c,null)}, +m(){var s=this.x +if(s!=null)s.aQ(0) +this.x=null +this.ajY()}, +$iaN:1} +A.aQA.prototype={ +$1(a){var s=this.b +if((s.a.a&30)===0)s.cM(0,this.c)}, +$S:20} +A.T0.prototype={ +dr(a){return this.f!==a.f}} +A.aQB.prototype={} +A.bci.prototype={ +q7(a){var s=this +return s.c.XA(s.a.q7(a),s.b.q7(a),s.d)}, +j(a){return"_TransitionSnapshotFabLocation(begin: "+this.a.j(0)+", end: "+this.b.j(0)+", progress: "+A.h(this.d)+")"}} +A.a7Z.prototype={ +aGa(a,b){var s=a==null?this.a:a +return new A.a7Z(s,b==null?this.b:b)}} +A.al1.prototype={ +a69(a,b,c){var s=this +s.b=c==null?s.b:c +s.c=s.c.aGa(a,b) +s.ag()}, +a68(a){return this.a69(null,null,a)}, +aDz(a,b){return this.a69(a,b,null)}} +A.Fu.prototype={ +l(a,b){var s=this +if(b==null)return!1 +if(!s.agy(0,b))return!1 +return b instanceof A.Fu&&b.r===s.r&&b.e===s.e&&b.f===s.f}, +gv(a){var s=this +return A.X(A.aL.prototype.gv.call(s,s),s.r,s.e,s.f,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}} +A.adA.prototype={ +A(a){var s=this +if(!s.d&&!s.e)return s.c +return new A.Cp(new A.b0I(s),null)}} +A.b0I.prototype={ +$2(a,b){var s,r,q,p,o +t.fh.a(b) +s=A.aS(a,null,t.l).w +r=this.a +q=s.f +p=q.d +if(r.d)p=Math.max(p,b.e) +o=q.b +return A.la(r.c,s.wH(q.a83(p,r.e?Math.max(o,b.f+b.r):o)),null)}, +$S:328} +A.b9T.prototype={ +FS(a7){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2=this,a3=A.t2(a7),a4=a7.a,a5=a3.Gi(a4),a6=a7.b +if(a2.b.i(0,B.ly)!=null){s=a2.iC(B.ly,a5).b +r=a2.e?0:s +a2.ja(B.ly,B.i)}else{r=0 +s=0}if(a2.b.i(0,B.lE)!=null){q=0+a2.iC(B.lE,a5).b +p=Math.max(0,a6-q) +a2.ja(B.lE,new A.l(0,p))}else{q=0 +p=null}if(a2.b.i(0,B.pF)!=null){q+=a2.iC(B.pF,new A.aL(0,a5.b,0,Math.max(0,a6-q-r))).b +a2.ja(B.pF,new A.l(0,Math.max(0,a6-q)))}if(a2.b.i(0,B.lD)!=null){o=a2.iC(B.lD,a5) +a2.ja(B.lD,new A.l(0,s)) +if(!a2.ay)r+=o.b}else o=B.x +n=a2.f +m=Math.max(0,a6-Math.max(n.d,q)) +if(a2.b.i(0,B.lx)!=null){l=Math.max(0,m-r) +k=a2.d +if(k)l=A.S(l+q,0,a3.d-r) +k=k?q:0 +a2.iC(B.lx,new A.Fu(k,s,o.b,0,a5.b,0,l)) +a2.ja(B.lx,new A.l(0,r))}if(a2.b.i(0,B.lB)!=null){a2.iC(B.lB,new A.aL(0,a5.b,0,m)) +a2.ja(B.lB,B.i)}k=a2.b.i(0,B.fT)!=null&&!a2.at?a2.iC(B.fT,a5):B.x +if(a2.b.i(0,B.lC)!=null){j=a2.iC(B.lC,new A.aL(0,a5.b,0,Math.max(0,m-r))) +a2.ja(B.lC,new A.l((a4-j.a)/2,m-j.b))}else j=B.x +i=A.b4("floatingActionButtonRect") +if(a2.b.i(0,B.lF)!=null){h=a2.iC(B.lF,a3) +g=new A.aQB(h,j,m,n,a2.r,a7,k,a2.w) +f=a2.z.q7(g) +e=a2.as.XA(a2.y.q7(g),f,a2.Q) +a2.ja(B.lF,e) +d=e.a +c=e.b +i.b=new A.I(d,c,d+h.a,c+h.b)}if(a2.b.i(0,B.fT)!=null){d=a2.ax +b=d!=null&&d") +k=t.x8 +j=t.jc +i=t.i +h=A.btv(new A.jL(new A.aw(p,new A.eE(new A.jz(B.tT)),l),new A.bb(A.a([],k),j),0),new A.aw(p,new A.eE(B.tT),l),p,0.5,i) +p=d.a.d +g=$.bzZ() +m.a(p) +f=$.bA_() +e=A.btv(new A.aw(p,g,g.$ti.h("aw")),new A.jL(new A.aw(p,f,A.k(f).h("aw")),new A.bb(A.a([],k),j),0),p,0.5,i) +d.e=A.bnV(h,s,i) +i=A.bnV(h,q,i) +d.r=i +d.w=new A.aw(m.a(i),new A.eE(B.Vn),l) +d.f=A.bk2(new A.aw(r,new A.aO(1,1,b),b.h("aw")),e,c) +d.x=A.bk2(new A.aw(o,n,n.$ti.h("aw")),e,c) +n=d.r +o=d.gaxj() +n.cL() +n=n.dB$ +n.b=!0 +n.a.push(o) +n=d.e +n.cL() +n=n.dB$ +n.b=!0 +n.a.push(o)}, +atr(a){this.a7(new A.b40(this,a))}, +A(a){var s,r,q=this,p=A.a([],t.p),o=q.d +o===$&&A.b() +o=o.Q +o===$&&A.b() +if(o!==B.Q){o=q.y +s=o instanceof A.wQ&&o.db +r=q.e +if(s){r===$&&A.b() +p.push(new A.cS(r,!1,o,null))}else{r===$&&A.b() +s=q.f +s===$&&A.b() +p.push(A.aR2(A.aPS(o,s),r))}}o=q.a.c +s=o instanceof A.wQ&&o.db +r=q.r +if(s){s=q.w +s===$&&A.b() +r===$&&A.b() +p.push(A.aR2(new A.cS(r,!1,o,null),s))}else{r===$&&A.b() +s=q.x +s===$&&A.b() +p.push(A.aR2(A.aPS(o,s),r))}return A.fr(B.dn,p,B.E,B.aH,null)}, +axk(){var s,r,q=this.e +q===$&&A.b() +s=q.a +s=s.gk(s) +q=q.b +q=q.gk(q) +q=Math.min(A.kM(s),A.kM(q)) +s=this.r +s===$&&A.b() +r=s.a +r=r.gk(r) +s=s.b +s=s.gk(s) +s=Math.max(q,Math.min(A.kM(r),A.kM(s))) +this.a.f.a68(s)}, +$iaN:1} +A.b40.prototype={ +$0(){var s=this.a.a +if(s.c!=null&&this.b===B.Q)s.r.bS(0)}, +$S:0} +A.na.prototype={ +a8(){var s=null,r=t.bR,q=t.C,p=$.b5() +return new A.DQ(new A.bo(s,r),new A.bo(s,r),new A.bo(s,q),new A.yx(!1,p),new A.yx(!1,p),A.a([],t.Z6),new A.bo(s,q),B.v,s,A.F(t.yb,t.Q),s,!0,s,s,s,B.m)}} +A.DQ.prototype={ +ghZ(){this.a.toString +return null}, +kn(a,b){var s=this +s.rb(s.w,"drawer_open") +s.rb(s.x,"end_drawer_open")}, +apP(a){var s=this,r=s.x,q=r.y +if(!J.i(q==null?A.k(r).h("dh.T").a(q):q,a)&&s.e.gR()!=null){s.a7(new A.aQK(s,a)) +s.a.toString}}, +FN(){var s,r,q=this.d +if(q.gR()!=null){s=this.w +r=s.y +s=r==null?A.k(s).h("dh.T").a(r):r}else s=!1 +if(s)q.gR().ad(0) +q=this.e.gR() +if(q!=null)q.r_(0)}, +aDu(){var s,r=this,q=r.y.r +if(!q.gai(q)){q=r.y.r +s=q.gN(q)}else s=null +if(r.z!=s)r.a7(new A.aQS(r,s))}, +aDa(){var s,r=this,q=r.y.e +if(!q.gai(q)){q=r.y.e +s=q.gN(q)}else s=null +if(r.Q!=s)r.a7(new A.aQQ(r,s))}, +a2u(){var s,r,q,p,o,n,m=this +if(m.a.cx!=null&&m.at==null){s=A.bw(B.z,"BottomSheet",B.j2,0,B.S,1,null,m) +s.sk(0,1) +r=m.as +if(r.length!==0){q=A.aa(r,!1,t.oY) +for(r=q.length,p=0;p")),d.h("aD<0>")),n=new A.bo(q,t.Xw),m=A.b4("bottomSheet") +p.a=p.b=!1 +s=new A.aQI(p,!0,q) +m.b=new A.vs(b,!1,new A.aQD(r,m,s),new A.aQE(r,m),new A.aQF(p,s,!0,b),a,!0,q,q,q,q,q,n) +s=m.aF() +return new A.Mh(!1,s,o,new A.aQG(p,r,m,n,!0,new A.aQJ(r,!0),b,o),d.h("Mh<0>"))}, +sQ5(a){var s=this.db +s===$&&A.b() +s.sk(0,A.S(a,s.a,s.b))}, +awl(a){var s,r,q,p,o=this,n={},m=o.cy +n.a=m +s=o.ch +s===$&&A.b() +r=s.r +if(r!=null&&r.a!=null){r=o.cx +r.toString +m.toString +q=o.CW +q===$&&A.b() +s=s.x +s===$&&A.b() +n.a=new A.bci(r,m,q,s) +p=Math.min(1-s,s)}else p=0 +o.a7(new A.aQP(n,o,a)) +o.ch.oO(0,p)}, +au9(){var s,r=this.c +r.toString +s=A.Dk(r) +if(s!=null&&s.f.length!==0)s.iZ(0,B.QI,B.e3)}, +gwl(){this.a.toString +return!0}, +aR(){var s,r=this,q=null +r.b5() +s=r.c +s.toString +r.dx=new A.al1(s,B.acn,$.b5()) +s=r.a.w +if(s==null)s=B.qC +r.cy=s +r.CW=B.ON +r.cx=s +r.ch=A.bw(B.z,q,new A.bk(4e5),0,q,1,1,r) +r.db=A.bw(B.z,q,B.S,0,q,1,q,r)}, +aY(a){var s,r=this +r.ak0(a) +s=r.a +s=s.w +if(s!=a.w)r.awl(s==null?B.qC:s) +s=a.cx +if(!J.i(r.a.cx,s))if(r.a.cx==null){s=r.at +if(s!=null)if(!s.e)s.c.$0()}else if(s==null)r.a2u() +else r.aDe()}, +cp(){var s,r,q=this,p=q.c.ae(t.Pu),o=p==null?null:p.f,n=q.y,m=n==null +if(!m)s=o==null||n!==o +else s=!1 +if(s)if(!m)n.d.F(0,q) +q.y=o +if(o!=null){n=o.d +n.G(0,q) +r=q.c.F_(t.Np) +if(r==null||!n.n(0,r)){n=o.r +if(!n.gai(n))q.aDu() +n=o.e +if(!n.gai(n))q.aDa()}}q.a2u() +q.ak_()}, +m(){var s=this,r=s.dx +r===$&&A.b() +r.ah$=$.b5() +r.ak$=0 +r=s.ch +r===$&&A.b() +r.m() +r=s.db +r===$&&A.b() +r.m() +r=s.y +if(r!=null)r.d.F(0,s) +s.w.m() +s.x.m() +s.ak1()}, +ON(a,b,c,d,e,f,g,h,i){var s,r=this.c +r.toString +s=A.aS(r,null,t.l).w.WM(f,g,h,i) +if(e)s=s.aND(!0) +if(d&&s.e.d!==0)s=s.wH(s.f.Ei(s.r.d)) +if(b!=null)a.push(A.KK(A.la(b,s,null),c))}, +am9(a,b,c,d,e,f,g,h){return this.ON(a,b,c,!1,d,e,f,g,h)}, +yv(a,b,c,d,e,f,g){return this.ON(a,b,c,!1,!1,d,e,f,g)}, +OM(a,b,c,d,e,f,g,h){return this.ON(a,b,c,d,!1,e,f,g,h)}, +a_7(a,b){var s,r,q=this,p=q.a,o=p.at +if(o!=null){p=p.fx +s=q.x +r=s.y +s=r==null?A.k(s).h("dh.T").a(r):r +q.yv(a,new A.Jt(o,B.rF,q.gapO(),B.C,null,p,null,s,q.e),B.lz,!1,b===B.j,b===B.ab,!1)}}, +a_6(a,b){this.a.toString}, +O0(a,b){var s=this +if(s.dy===a&&(s.fr.a>>>24&255)/255===b)return +s.a7(new A.aQU(s,a,b))}, +A(a){var s,r,q,p,o,n,m,l,k,j,i,h=this,g=null,f={},e=A.r(a),d=a.ae(t.I) +d.toString +s=d.w +r=A.a([],t.s9) +d=h.a +q=d.c +p=d.d +o=d.f +n=d.e +d=d.CW!=null||!1 +h.gwl() +h.am9(r,new A.adA(new A.ir(o,h.f),q,p,g),B.lx,!0,d,!1,!1,n!=null) +if(h.dy)h.yv(r,A.aJe(!0,g,h.fr,!1,g,g,g),B.lB,!0,!0,!0,!0) +if(h.a.e!=null){d=A.aS(a,B.bJ,t.l).w +d=h.r=A.bCZ(a,h.a.e.gr3())+d.f.b +q=h.a.e +q.toString +h.yv(r,new A.ew(new A.aL(0,1/0,0,d),new A.JS(1,d,d,d,g,q,g),g),B.ly,!0,!1,!1,!1)}f.a=!1 +f.b=null +if(h.at!=null||h.as.length!==0){d=A.aa(h.as,!0,t.l7) +q=h.at +if(q!=null)d.push(q.a) +m=A.fr(B.ix,d,B.E,B.aH,g) +h.gwl() +h.yv(r,m,B.lC,!0,!1,!1,!0)}d=h.z +if(d!=null){d.a.gaPH() +f.a=!1 +d=h.z +if(d!=null){d=d.a +d.gf3(d)}f.b=e.dG.w +d=h.z +d=d==null?g:d.a +q=h.a.CW!=null||!1 +h.gwl() +h.OM(r,d,B.fT,!1,q,!1,!1,!0)}f.c=!1 +if(h.Q!=null){a.ae(t.iB) +d=A.r(a) +l=d.ry.f +f.c=(l==null?0:l)!==0 +d=h.Q +d=d==null?g:d.a +q=h.a.e +h.gwl() +h.OM(r,d,B.lD,!1,!0,!1,!1,q!=null)}d=h.a +d=d.CW +if(d!=null){h.gwl() +h.OM(r,d,B.lE,!1,!1,!1,!1,!0)}d=h.ch +d===$&&A.b() +q=h.CW +q===$&&A.b() +p=h.dx +p===$&&A.b() +o=h.db +o===$&&A.b() +h.yv(r,new A.QW(h.a.r,d,q,p,o,g),B.lF,!0,!0,!0,!0) +switch(e.r.a){case 2:case 4:h.yv(r,A.dM(B.bv,g,B.C,!0,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,h.gau8(),g,g,g,g,!1,B.ai),B.lA,!0,!1,!1,!0) +break +case 0:case 1:case 3:case 5:break}d=h.x +q=d.y +if(q==null?A.k(d).h("dh.T").a(q):q){h.a_6(r,s) +h.a_7(r,s)}else{h.a_7(r,s) +h.a_6(r,s)}d=t.l +q=A.aS(a,B.bJ,d).w +h.gwl() +p=A.aS(a,B.ls,d).w +k=q.f.Ei(p.e.d) +q=A.aS(a,B.aoa,d).w +h.gwl() +d=A.aS(a,B.ls,d).w +d=d.e.d!==0?0:g +j=q.r.Ei(d) +i=k.d<=0&&h.a.c +d=h.a.ch +if(d==null)d=e.go +return new A.al2(!1,new A.Nk(A.hA(B.S,!0,g,A.h1(h.ch,new A.aQT(f,h,i,k,j,s,r),g),B.l,d,0,g,g,g,g,g,B.cJ),g),g)}, +$iaN:1} +A.aQK.prototype={ +$0(){this.a.x.Oz(0,this.b)}, +$S:0} +A.aQS.prototype={ +$0(){this.a.z=this.b}, +$S:0} +A.aQQ.prototype={ +$0(){this.a.Q=this.b}, +$S:0} +A.aQN.prototype={ +$1(a){var s,r +if(a.gew().a2(0,a.gaPT()).af2(0,1e-10)){s=this.a +if(s.ay==null){s.ay=new A.KU(new A.aQO(s,a),!0) +r=s.c +r.toString +r=A.qq(r,t.X) +r.toString +s=s.ay +s.toString +r.a6A(s)}}else{s=this.a.ay +if(s!=null)s.er(0)}return!1}, +$S:141} +A.aQO.prototype={ +$0(){var s=this.b +A.bFi(s.gca(s)) +s=this.a +s.O0(!1,0) +s.sQ5(1) +s.ay=null}, +$S:0} +A.aQM.prototype={ +$1(a){var s=this.a +return new A.dP(this.b,new A.a0m(new A.O8(new A.aQL(s),s.ax),new A.GB($.b5()),null),null,t.K3)}, +$S:329} +A.aQL.prototype={ +$2(a,b){var s=this.a.a.cx +return s==null?B.a_:s}, +$S:330} +A.aQR.prototype={ +$0(){}, +$S:0} +A.aQJ.prototype={ +$0(){var s=this.a,r=s.ay +if(r!=null){r.er(0) +s.ay=null}}, +$S:0} +A.aQG.prototype={ +$0(){var s,r,q=this +q.a.b=!0 +s=q.b +if(s.at==null)return +r=s.db +r===$&&A.b() +r.bS(0) +q.f.$0() +q.d.gR().ad(0) +s.a7(new A.aQH(s)) +r=q.r.Q +r===$&&A.b() +if(r!==B.Q)s.as.push(q.c.aF()) +q.w.fj(0)}, +$S:0} +A.aQH.prototype={ +$0(){var s=this.a +s.dy=!1 +s.fr=A.K(0,0,0,0) +s.at=null}, +$S:0} +A.aQI.prototype={ +$0(){var s=this +if(!s.b&&!s.a.b){s.c.er(0) +s.a.b=!0}}, +$S:0} +A.aQD.prototype={ +$0(){if(this.a.at==null)return +this.c.$0()}, +$S:0} +A.aQE.prototype={ +$0(){var s=this.a,r=this.b +if(B.b.n(s.as,r.aF()))s.a7(new A.aQC(s,r))}, +$S:0} +A.aQC.prototype={ +$0(){B.b.F(this.a.as,this.b.aF())}, +$S:0} +A.aQF.prototype={ +$0(){this.a.a=!0 +this.b.$0() +this.d.m()}, +$S:0} +A.aQP.prototype={ +$0(){var s=this.b +s.cx=this.a.a +s.cy=this.c}, +$S:0} +A.aQU.prototype={ +$0(){var s=this.a +s.dy=this.b +s.fr=A.K(B.e.bi(255*this.c),0,0,0)}, +$S:0} +A.aQT.prototype={ +$2(a,b){var s,r,q,p,o,n,m=this,l=A.ap([B.p8,new A.afg(a,new A.bb(A.a([],t.h),t.d))],t.n,t.od),k=m.b,j=k.a.d,i=k.cy +i.toString +s=k.ch +s===$&&A.b() +s=s.x +s===$&&A.b() +r=k.CW +r===$&&A.b() +q=k.dx +q===$&&A.b() +k=k.cx +k.toString +p=m.a +o=p.a +n=p.c +return A.pC(l,new A.tk(new A.b9T(m.c,j,m.d,m.e,m.f,q,k,i,s,r,o,p.b,n,null),m.r,null))}, +$S:331} +A.afg.prototype={ +tn(a,b){var s=this.e,r=A.oO(s).w,q=r.y +if(!(q==null?A.k(r).h("dh.T").a(q):q)){s=A.oO(s).x +r=s.y +s=r==null?A.k(s).h("dh.T").a(r):r}else s=!0 +return s}, +hf(a){var s,r,q=this.e +A.oO(q).a.toString +q=A.oO(q) +if(q.a.at!=null){s=q.x +r=s.y +s=r==null?A.k(s).h("dh.T").a(r):r}else s=!1 +if(s)q.e.gR().ad(0)}} +A.DP.prototype={} +A.b0Q.prototype={ +a_(a,b){var s=this.a +if(b#"+A.bt(this)+"("+A.h(this.a)+", "+this.b.j(0)+")"}} +A.vs.prototype={ +a8(){return new A.GN(B.a3,B.m)}} +A.GN.prototype={ +aR(){this.b5() +var s=this.a.c +s.cL() +s=s.eo$ +s.b=!0 +s.a.push(this.gaua())}, +m(){this.a.r.$0() +this.aZ()}, +aY(a){this.br(a)}, +ad(a){this.a.c.d9(0) +this.a.e.$0()}, +aA2(a){this.d=B.Z}, +a3K(a,b){var s=this.a.c.x +s===$&&A.b() +this.d=new A.b0Q(s,B.a3)}, +aA0(a){return this.a3K(a,null)}, +aub(a){if(a===B.Q)this.a.f.$0()}, +UD(a){var s,r=B.f.a2(1,a.gew()),q=this.c +q.toString +s=A.oO(q) +if(r<0.3){s.sQ5(r*0.3*10) +q=s.db +q===$&&A.b() +q=q.x +q===$&&A.b() +s.O0(!0,Math.max(0.1,0.6-q))}else{s.sQ5(1) +s.O0(!1,0)}a.gew() +a.gaLq() +return!1}, +A(a){var s=this,r=null,q=s.a,p=q.c,o=q.d,n=q.e,m=q.w,l=q.y,k=q.z,j=q.Q +j=A.bo5(p,l,m,q.as,q.at,k,o,n,s.gaA_(),s.gaA1(),j,r) +return A.h1(p,new A.baP(s),new A.bu(A.bI(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,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,r,r,r,r),!0,!1,!1,!1,new A.dP(s.gUC(),j,r,t.K3),r))}} +A.baP.prototype={ +$2(a,b){var s=this.a,r=s.d +s=s.a.c.x +s===$&&A.b() +return new A.e5(B.bs,null,r.a_(0,s),b,null)}, +$S:332} +A.Mh.prototype={} +A.al2.prototype={ +dr(a){return this.f!==a.f}} +A.b9U.prototype={ +$2(a,b){if(!a.a)a.J(0,b)}, +$S:63} +A.T1.prototype={ +cn(){this.d3() +this.cT() +this.es()}, +m(){var s=this,r=s.b_$ +if(r!=null)r.J(0,s.gej()) +s.b_$=null +s.aZ()}} +A.T2.prototype={ +cn(){this.d3() +this.cT() +this.es()}, +m(){var s=this,r=s.b_$ +if(r!=null)r.J(0,s.gej()) +s.b_$=null +s.aZ()}} +A.T3.prototype={ +aY(a){this.br(a) +this.wQ()}, +cp(){var s,r,q,p,o=this +o.ei() +s=o.d5$ +r=o.gtH() +q=o.c +q.toString +q=A.uy(q) +o.j5$=q +p=o.ut(q,r) +if(r){o.kn(s,o.hb$) +o.hb$=!1}if(p)if(s!=null)s.m()}, +m(){var s,r=this +r.j4$.af(0,new A.b9U()) +s=r.d5$ +if(s!=null)s.m() +r.d5$=null +r.ajZ()}} +A.Vc.prototype={ +cn(){this.d3() +this.cT() +this.es()}, +m(){var s=this,r=s.b_$ +if(r!=null)r.J(0,s.gej()) +s.b_$=null +s.aZ()}} +A.a88.prototype={ +A(a){var s=this,r=null +if(A.r(a).r===B.bo)return new A.B7(8,B.dT,s.c,s.d,s.e===!0,B.abY,3,r,B.j2,B.Rw,B.b_,A.Hk(),r,r,r) +return new A.Ge(r,s.c,s.d,s.e,r,r,r,B.bt,B.he,B.F,A.Hk(),r,r,r)}} +A.Ge.prototype={ +a8(){return new A.ai3(new A.bo(null,t.C),null,null,B.m)}} +A.ai3.prototype={ +gye(){var s=this.a.e +if(s==null){s=this.fr +s===$&&A.b() +s=s.a +s=s==null?null:s.L(this.gDD())}return s==null?!1:s}, +gwW(){this.a.toString +var s=this.fr +s===$&&A.b() +s=s.e +if(s==null){s=this.fx +s===$&&A.b() +s=!s}return s}, +gJz(){return new A.bc(new A.b6l(this),t.Lf)}, +gDD(){var s=A.aY(t.ui) +if(this.db)s.G(0,B.fn) +if(this.dx)s.G(0,B.A) +return s}, +gaCd(){var s,r,q,p,o,n,m,l=this,k=l.dy +k===$&&A.b() +s=k.db +r=A.b4("dragColor") +q=A.b4("hoverColor") +p=A.b4("idleColor") +switch(k.a.a){case 1:k=s.a +o=k>>>16&255 +n=k>>>8&255 +k&=255 +r.b=A.K(153,o,n,k) +q.b=A.K(B.e.bi(127.5),o,n,k) +m=l.fx +m===$&&A.b() +if(m){k=l.c +k.toString +k=A.r(k).cy.a +k=A.K(255,k>>>16&255,k>>>8&255,k&255)}else k=A.K(B.e.bi(25.5),o,n,k) +p.b=k +break +case 0:k=s.a +o=k>>>16&255 +n=k>>>8&255 +k&=255 +r.b=A.K(191,o,n,k) +q.b=A.K(166,o,n,k) +m=l.fx +m===$&&A.b() +if(m){k=l.c +k.toString +k=A.r(k).cy.a +k=A.K(255,k>>>16&255,k>>>8&255,k&255)}else k=A.K(B.e.bi(76.5),o,n,k) +p.b=k +break}return new A.bc(new A.b6i(l,r,q,p),t.h2)}, +gaCE(){var s=this.dy +s===$&&A.b() +return new A.bc(new A.b6k(this,s.a,s.db),t.h2)}, +gaCD(){var s=this.dy +s===$&&A.b() +return new A.bc(new A.b6j(this,s.a,s.db),t.h2)}, +gaCa(){return new A.bc(new A.b6h(this),t.pj)}, +aR(){var s,r=this +r.Zc() +s=r.cy=A.bw(B.z,null,B.S,0,null,1,null,r) +s.cL() +s=s.dB$ +s.b=!0 +s.a.push(new A.b6r(r))}, +cp(){var s,r=this,q=r.c +q.toString +s=A.r(q) +r.dy=s.ax +q=r.c +q.ae(t.Nn) +q=A.r(q) +r.fr=q.w +switch(s.r.a){case 0:r.fx=!0 +break +case 2:case 3:case 1:case 4:case 5:r.fx=!1 +break}r.ahL()}, +Gu(){var s,r=this,q=r.at +q===$&&A.b() +q.sa5(0,r.gaCd().a.$1(r.gDD())) +q.sp5(r.gaCE().a.$1(r.gDD())) +q.sadc(r.gaCD().a.$1(r.gDD())) +s=r.c.ae(t.I) +s.toString +q.scF(s.w) +q.sWU(r.gaCa().a.$1(r.gDD())) +s=r.a.r +if(s==null){s=r.fr +s===$&&A.b() +s=s.f}if(s==null){s=r.fx +s===$&&A.b() +s=s?null:B.dU}q.sG2(s) +s=r.fr +s===$&&A.b() +s=s.y +if(s==null){s=r.fx +s===$&&A.b() +s=s?0:2}q.sU1(s) +s=r.fr.z +q.sVK(s==null?0:s) +s=r.fr.Q +q.sVR(0,s==null?48:s) +s=r.c +s.toString +q.sdE(0,A.aS(s,B.bJ,t.l).w.f) +q.sNP(r.a.db) +q.saag(!r.gwW())}, +Lw(a){this.Zb(a) +this.a7(new A.b6q(this))}, +Lv(a,b){this.Za(a,b) +this.a7(new A.b6p(this))}, +UZ(a){var s,r=this +r.ahM(a) +if(r.aaN(a.gcQ(a),a.gdS(a),!0)){r.a7(new A.b6n(r)) +s=r.cy +s===$&&A.b() +s.bS(0)}else if(r.dx){r.a7(new A.b6o(r)) +s=r.cy +s===$&&A.b() +s.d9(0)}}, +V_(a){var s,r=this +r.ahN(a) +r.a7(new A.b6m(r)) +s=r.cy +s===$&&A.b() +s.d9(0)}, +m(){var s=this.cy +s===$&&A.b() +s.m() +this.Z9()}} +A.b6l.prototype={ +$1(a){var s,r +if(a.n(0,B.A)){s=this.a +s.a.toString +s=s.fr +s===$&&A.b() +s=s.d===!0}else s=!1 +if(s)return!0 +s=this.a +r=s.a.Q +s=s.fr +s===$&&A.b() +s=s.c +s=s==null?null:s.L(a) +return s==null?!1:s}, +$S:334} +A.b6i.prototype={ +$1(a){var s,r,q,p=this,o=null +if(a.n(0,B.fn)){s=p.a.fr +s===$&&A.b() +s=s.r +s=s==null?o:s.L(a) +return s==null?p.b.aF():s}s=p.a +if(s.gJz().a.$1(a)){s=s.fr +s===$&&A.b() +s=s.r +s=s==null?o:s.L(a) +return s==null?p.c.aF():s}r=s.fr +r===$&&A.b() +r=r.r +r=r==null?o:r.L(a) +if(r==null)r=p.d.aF() +q=s.fr.r +q=q==null?o:q.L(a) +if(q==null)q=p.c.aF() +s=s.cy +s===$&&A.b() +s=s.x +s===$&&A.b() +s=A.W(r,q,s) +s.toString +return s}, +$S:4} +A.b6k.prototype={ +$1(a){var s=this.a +if(s.gye()&&s.gJz().a.$1(a)){s=s.fr +s===$&&A.b() +s=s.w +s=s==null?null:s.L(a) +if(s==null){s=this.c.a +s=this.b===B.aB?A.K(8,s>>>16&255,s>>>8&255,s&255):A.K(13,s>>>16&255,s>>>8&255,s&255)}return s}return B.u}, +$S:4} +A.b6j.prototype={ +$1(a){var s=this.a +if(s.gye()&&s.gJz().a.$1(a)){s=s.fr +s===$&&A.b() +s=s.x +s=s==null?null:s.L(a) +if(s==null){s=this.c.a +s=this.b===B.aB?A.K(B.e.bi(25.5),s>>>16&255,s>>>8&255,s&255):A.K(64,s>>>16&255,s>>>8&255,s&255)}return s}return B.u}, +$S:4} +A.b6h.prototype={ +$1(a){var s,r +if(a.n(0,B.A)&&this.a.gJz().a.$1(a)){s=this.a.fr +s===$&&A.b() +s=s.b +s=s==null?null:s.L(a) +return s==null?12:s}s=this.a +r=s.a.w +if(r==null){r=s.fr +r===$&&A.b() +r=r.b +r=r==null?null:r.L(a)}if(r==null){s=s.fx +s===$&&A.b() +r=8/(s?2:1) +s=r}else s=r +return s}, +$S:145} +A.b6r.prototype={ +$0(){this.a.Gu()}, +$S:0} +A.b6q.prototype={ +$0(){this.a.db=!0}, +$S:0} +A.b6p.prototype={ +$0(){this.a.db=!1}, +$S:0} +A.b6n.prototype={ +$0(){this.a.dx=!0}, +$S:0} +A.b6o.prototype={ +$0(){this.a.dx=!1}, +$S:0} +A.b6m.prototype={ +$0(){this.a.dx=!1}, +$S:0} +A.Np.prototype={ +gv(a){var s=this +return A.X(s.a,s.b,s.c,s.d,s.e,s.f,s.r,s.w,s.x,s.y,s.z,s.Q,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.a1(b)!==A.o(s))return!1 +return b instanceof A.Np&&b.a==s.a&&b.b==s.b&&b.c==s.c&&b.d==s.d&&b.e==s.e&&J.i(b.f,s.f)&&b.r==s.r&&b.w==s.w&&b.x==s.x&&b.y==s.y&&b.z==s.z&&b.Q==s.Q}} +A.al7.prototype={} +A.Nq.prototype={ +gv(a){var s=this +return A.X(s.a,s.b,s.c,s.d,s.e,s.f,s.r,s.w,s.x,s.y,s.z,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.a1(b)!==A.o(s))return!1 +return b instanceof A.Nq&&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&&b.y==s.y&&J.i(b.z,s.z)}} +A.ahp.prototype={ +L(a){var s,r=this,q=r.a,p=q==null?null:q.L(a) +q=r.b +s=q==null?null:q.L(a) +if(p==s)return p +if(p==null){q=s.a +return A.bn(new A.b9(A.K(0,q.gk(q)>>>16&255,q.gk(q)>>>8&255,q.gk(q)&255),0,B.M,-1),s,r.c)}if(s==null){q=p.a +return A.bn(p,new A.b9(A.K(0,q.gk(q)>>>16&255,q.gk(q)>>>8&255,q.gk(q)&255),0,B.M,-1),r.c)}return A.bn(p,s,r.c)}, +$ibN:1} +A.al8.prototype={} +A.Nr.prototype={ +gv(a){var s=this +return A.X(s.a,s.b,s.c,s.d,s.e,s.f,s.r,s.w,s.x,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.a1(b)!==A.o(s))return!1 +return b instanceof A.Nr&&J.i(b.a,s.a)&&b.b==s.b&&J.i(b.c,s.c)&&J.i(b.d,s.d)&&J.i(b.e,s.e)&&J.i(b.f,s.f)&&J.i(b.r,s.r)&&J.i(b.w,s.w)&&J.i(b.x,s.x)}} +A.al9.prototype={} +A.Ns.prototype={ +gv(a){return A.X(this.a,this.b,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +l(a,b){if(b==null)return!1 +if(this===b)return!0 +if(J.a1(b)!==A.o(this))return!1 +return b instanceof A.Ns&&J.i(b.a,this.a)&&!0}} +A.ala.prototype={} +A.amX.prototype={ +a7i(a,b,c){return A.di(A.a([this.ax],t.Ne),b,null)}, +se9(a,b){throw A.c(A.cL(null))}} +A.ale.prototype={ +B9(a){var s +this.Zk(a) +s=this.a +if(s.ghG()&&this.b){s=s.gaq().gR() +s.toString +s.of()}}, +FL(a){}, +Wf(a){var s,r=this.a +if(r.ghG()){r=r.gaq().gR() +r.toString +s=a.a +r.gac().Cc(B.bz,s.a2(0,a.c),s)}}, +Bb(a){var s=this.a,r=s.gaq().gR() +r.toString +r.kc() +if(s.ghG()){r=this.w.c +r.toString +switch(A.r(r).r.a){case 2:case 4:s=s.gaq().gR() +s.toString +s.gac().Y4(B.b2) +break +case 0:case 1:case 3:case 5:s=s.gaq().gR() +s.toString +s=s.gac() +r=s.i5 +r.toString +s.ir(B.b2,r) +break}}this.w.a.toString}, +Ba(a){var s,r=this.a +if(r.ghG()){r=r.gaq().gR() +r.toString +r=r.gac() +s=r.i5 +s.toString +r.rt(B.bz,s) +s=this.w.c +s.toString +A.aBf(s)}}} +A.Nt.prototype={ +a8(){return new A.Tf(new A.bo(null,t.NE),B.m)}} +A.Tf.prototype={ +gJ8(){var s,r=null +this.a.toString +s=this.e +if(s==null){s=A.wT(!0,r,!0,!0,r,r,!0) +this.e=s}return s}, +gUX(){var s=this.w +s===$&&A.b() +return s}, +ghG(){this.a.toString +return!0}, +aR(){var s,r=this +r.b5() +r.r=new A.ale(r,r) +s=A.di(null,null,r.a.c) +s=A.bun(s) +r.d=s +s.P(0,r.ga2N())}, +aY(a){var s,r,q=this +q.br(a) +if(q.a.c!==a.c||!1){s=q.d +s===$&&A.b() +r=q.ga2N() +s.J(0,r) +s=A.di(null,null,q.a.c) +s=A.bun(s) +q.d=s +s.P(0,r)}if(q.gJ8().gdt()){s=q.d +s===$&&A.b() +s=s.a.b +s=s.a===s.b}else s=!1 +if(s)q.f=!1 +else q.f=!0}, +m(){var s=this.e +if(s!=null)s.m() +s=this.d +s===$&&A.b() +s.ah$=$.b5() +s.ak$=0 +this.aZ()}, +awT(){var s,r,q=this +if(q.gJ8().gdt()){s=q.d +s===$&&A.b() +s=s.a.b +r=s.a!==s.b}else r=!0 +if(r===q.f)return +q.a7(new A.bal(q,r))}, +aAz(a,b){var s,r=this,q=r.aAC(b) +if(q!==r.f)r.a7(new A.bak(r,q)) +r.a.toString +s=r.c +s.toString +switch(A.r(s).r.a){case 2:case 4:if(b===B.bz){s=r.x.gR() +if(s!=null)s.mc(a.grW())}return +case 0:case 1:case 3:case 5:break}}, +aAB(){var s=this.d +s===$&&A.b() +s=s.a.b +if(s.a===s.b)this.x.gR().X0()}, +aAC(a){var s,r=this.r +r===$&&A.b() +if(!r.b)return!1 +r=this.d +r===$&&A.b() +r=r.a +s=r.b +if(s.a===s.b)return!1 +if(a===B.aG)return!1 +if(a===B.bz)return!0 +if(r.a.length!==0)return!0 +return!1}, +A(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=this,d=null,c=A.r(a),b=a.ae(t.Uf) +if(b==null)b=B.f_ +s=e.gJ8() +e.a.toString +switch(c.r.a){case 2:r=A.iS(a) +e.w=!0 +q=$.bmV() +e.a.toString +p=b.w +if(p==null)p=r.gil() +o=b.x +if(o==null){b=r.gil() +o=A.K(102,b.gk(b)>>>16&255,b.gk(b)>>>8&255,b.gk(b)&255)}n=new A.l(-2/A.aS(a,B.d7,t.l).w.b,0) +m=!0 +l=!0 +k=B.dS +break +case 4:r=A.iS(a) +e.w=!1 +q=$.bmU() +e.a.toString +p=b.w +if(p==null)p=r.gil() +o=b.x +if(o==null){b=r.gil() +o=A.K(102,b.gk(b)>>>16&255,b.gk(b)>>>8&255,b.gk(b)&255)}n=new A.l(-2/A.aS(a,B.d7,t.l).w.b,0) +m=!0 +l=!0 +k=B.dS +break +case 0:case 1:e.w=!1 +q=$.bnc() +p=b.w +if(p==null)p=c.ax.b +o=b.x +if(o==null){b=c.ax.b +o=A.K(102,b.gk(b)>>>16&255,b.gk(b)>>>8&255,b.gk(b)&255)}k=d +n=k +m=!1 +l=!1 +break +case 3:case 5:e.w=!1 +q=$.bh4() +p=b.w +if(p==null)p=c.ax.b +o=b.x +if(o==null){b=c.ax.b +o=A.K(102,b.gk(b)>>>16&255,b.gk(b)>>>8&255,b.gk(b)&255)}k=d +n=k +m=!1 +l=!1 +break +default:k=d +o=k +p=o +n=p +l=n +m=l +q=m}b=a.ae(t.sp) +if(b==null)b=B.mm +e.a.toString +j=e.d +j===$&&A.b() +i=b.w.cU(j.ax.a) +e.a.toString +j=e.f +h=e.d +h===$&&A.b() +g=b.x +if(g==null)g=B.b3 +f=$.bml() +b=A.bpi(!0,d,d,d,!1,B.dv,B.E,d,A.bVe(),h,p,d,n,l,k,2,B.C,!0,!0,!0,!1,s,!1,d,e.x,B.aB,d,f,b.Q,d,d,!1,"\u2022",d,d,d,e.gaAy(),e.gaAA(),d,d,m,!0,!0,d,!0,d,B.dx,d,o,q,B.c3,B.bK,!1,j,d,d,d,B.aej,i,g,B.dX,d,b.at,d,d,b.as,d,d) +e.a.toString +j=e.r +j===$&&A.b() +b=j.a7d(B.aN,new A.i5(b,d)) +return new A.bu(A.bI(d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,new A.bam(e),d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d),!1,!1,!1,!1,b,d)}, +gaq(){return this.x}} +A.bal.prototype={ +$0(){this.a.f=this.b}, +$S:0} +A.bak.prototype={ +$0(){this.a.f=this.b}, +$S:0} +A.bam.prototype={ +$0(){this.a.gJ8().nS()}, +$S:0} +A.baO.prototype={ +K(){return"_SliderType."+this.b}} +A.a8K.prototype={ +K(){return"SliderInteraction."+this.b}} +A.NN.prototype={ +a8(){return new A.Tp(new A.bo(null,t.C),new A.Co(),null,null,B.m)}} +A.Tp.prototype={ +gdC(a){var s +this.a.toString +s=this.as +s.toString +return s}, +aR(){var s,r=this,q=null +r.b5() +r.d=A.bw(B.z,q,B.b_,0,q,1,q,r) +r.e=A.bw(B.z,q,B.b_,0,q,1,q,r) +r.f=A.bw(B.z,q,B.f1,0,q,1,q,r) +r.r=A.bw(B.z,q,B.F,0,q,1,q,r) +s=r.f +r.a.toString +s.sk(0,1) +r.r.sk(0,r.a_Y(r.a.c)) +r.y=A.ap([B.akF,new A.cq(r.galZ(),new A.bb(A.a([],t.h),t.d),t.zB)],t.n,t.od) +r.a.toString +if(r.as==null)r.as=A.wT(!0,q,!0,!0,q,q,!1)}, +m(){var s=this,r=s.w +if(r!=null)r.aQ(0) +r=s.d +r===$&&A.b() +r.m() +r=s.e +r===$&&A.b() +r.m() +r=s.f +r===$&&A.b() +r.m() +r=s.r +r===$&&A.b() +r.m() +r=s.ch +if(r!=null){r.er(0) +s.ch=null}r=s.as +if(r!=null)r.m() +s.alf()}, +arN(a){var s=this.avt(a),r=this.a +if(s!==r.c){r.e.$1(s) +r=this.as +if(r!=null)r.nS()}}, +Qz(a){this.Q=!0 +this.a.toString}, +Qx(a){this.Q=!1 +this.a.toString}, +am_(a){var s,r=this.x,q=$.ar.al$.z.i(0,r).ga9() +q.toString +t.kb.a(q) +r=$.ar.al$.z.i(0,r).ae(t.I) +r.toString +s=r.w +switch(a.a.a){case 0:switch(s.a){case 0:q.KK() +break +case 1:q.LF() +break}break +case 1:switch(s.a){case 0:q.LF() +break +case 1:q.KK() +break}break +case 2:q.LF() +break +case 3:q.KK() +break}}, +asp(a){if(a!==this.at)this.a7(new A.baL(this,a))}, +asw(a){if(a!==this.ax)this.a7(new A.baM(this,a))}, +avt(a){var s=this.a,r=s.x +s=s.w +return a*(r-s)+s}, +a_Y(a){var s=this.a,r=s.x,q=s.w,p=r>q?(a-q)/(r-q):0 +s=s.y +return s!=null?B.e.bi(p*s)/s:p}, +A(a){this.a.toString +switch(0){case 0:return this.an_(a)}}, +an_(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,b3=this,b4=null,b5={},b6=A.r(b7) +b7.ae(t.Dj) +s=A.r(b7) +r=b5.a=s.h_ +s=b6.y +q=s?new A.baG(b7,4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4):new A.baF(b7,A.r(b7).ax,4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4) +p=q.gBN() +o=A.aY(t.ui) +b3.a.toString +if(b3.ax)o.G(0,B.A) +if(b3.at)o.G(0,B.y) +if(b3.Q)o.G(0,B.fn) +n=r.db +if(n==null)n=p +if(n instanceof A.a7_){m=r.ay +if(m==null){l=b6.ax +k=l.db.a +l=l.cy.a +m=A.tg(A.K(153,k>>>16&255,k>>>8&255,k&255),A.K(B.e.bi(229.5),l>>>16&255,l>>>8&255,l&255))}}else{b3.a.toString +m=r.ay +if(m==null)m=b6.ax.b}l=r.a +k=l==null?q.a:l +b3.a.toString +j=r.b +if(j==null)j=q.guw() +b3.a.toString +i=b5.a.c +if(i==null)i=q.gva() +b3.a.toString +h=b5.a.d +if(h==null)h=q.gy6() +g=b5.a.e +if(g==null)g=q.gA5() +f=b5.a.r +if(f==null)f=q.gA7() +e=b5.a.f +if(e==null)e=q.gA8() +b3.a.toString +d=b5.a.w +if(d==null)d=q.gzf() +b3.a.toString +c=b5.a.x +if(c==null)c=q.gAP() +b=b5.a.y +if(b==null)b=q.gA4() +a=b5.a.z +if(a==null)a=q.gA6() +b3.a.toString +a0=b5.a.Q +if(a0==null)a0=q.gim() +a1=b5.a.at +if(a1==null)a1=q.gA9() +a2=new A.baJ(b5,b3,o,q).$0() +a3=b5.a +a4=a3.cy +if(a4==null)a4=B.Ob +a5=a3.CW +if(a5==null)a5=B.Oa +a6=a3.cx +if(a6==null)a6=B.O9 +a7=a3.ch +if(a7==null)a7=B.O8 +a8=a3.fy +if(a8==null)a8=B.adk +a3=a3.go +if(a3==null)a3=q.gBO() +l=k==null?l:k +k=a2==null?r.ax:a2 +b5.a=A.bs6(d,j,r.k3,b,g,a,f,e,a1,c,i,r.id,r.k2,r.as,k,a7,r.dy,r.dx,r.fr,r.fx,h,a8,a0,r.k1,a6,a5,l,a4,m,n,a3) +b3.a.toString +l=A.cg(b4,o,t.WV) +if(l==null)a9=b4 +else a9=l +if(a9==null)a9=B.cN.L(o) +b3.a.toString +switch(b6.r.a){case 0:case 1:case 2:case 3:case 4:b0=b4 +break +case 5:b0=new A.baI(b3) +break +default:b0=b4}switch(A.aS(b7,B.fR,t.l).w.ax.a){case 1:b1=B.a6R +break +case 0:b1=B.a70 +break +default:b1=b4}if(s){s=A.cT(b7,B.bb) +s=s==null?b4:s.c +if(s==null)s=1 +b2=Math.min(s,1.3)}else{s=A.cT(b7,B.bb) +s=s==null?b4:s.c +b2=s==null?1:s}s=b3.y +s===$&&A.b() +o=b3.gdC(b3) +l=b3.a_Y(b3.a.c) +k=b3.a +j=k.y +k=k.z +i=b5.a +h=new A.baK(b7).$0() +g=b3.a +f=g.x +g=g.w +g=f>g?b3.garM():b4 +o=A.aCc(s,!1,new A.wc(b3.ay,new A.alH(l,b4,j,k,i,b2,h,g,b3.gQy(),b3.gQw(),b4,b3,b3.at,b3.ax,B.ae4,b3.x),b4),!0,o,a9,b4,b3.gaso(),b3.gasv(),b1) +return new A.bu(A.bI(b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b0,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,b4,!0,b4,b4,b4,b4,b4,b4,b4),!0,!1,!1,!1,o,b4)}, +afT(){var s,r,q=this +if(q.ch==null){q.ch=A.qu(new A.baN(q),!1) +s=q.c +s.toString +q.a.toString +s=A.bj3(s,t.N1) +s.toString +r=q.ch +r.toString +s.xf(0,r)}}, +$iaN:1} +A.baL.prototype={ +$0(){this.a.at=this.b}, +$S:0} +A.baM.prototype={ +$0(){this.a.ax=this.b}, +$S:0} +A.baJ.prototype={ +$0(){var s,r,q,p=this +p.b.a.toString +s=p.c +r=t.MH +q=A.cg(p.a.a.ax,s,r) +return q==null?A.cg(p.d.gcw(),s,r):q}, +$S:341} +A.baK.prototype={ +$0(){return A.aS(this.a,B.it,t.l).w.a}, +$S:212} +A.baI.prototype={ +$0(){var s=this.a +if(!s.gdC(s).gdt()&&s.gdC(s).geJ())s.gdC(s).nS()}, +$S:0} +A.baN.prototype={ +$1(a){var s=this.a +return A.bhY(new A.anP(s,null),s.ay,B.i,!0)}, +$S:343} +A.alH.prototype={ +aX(a){var s,r=this,q=a.ae(t.I) +q.toString +s=A.r(a) +return A.bN8(r.CW,r.f,A.aS(a,B.lr,t.l).w.ay,r.ay,r.ch,r.r,r.as,r.Q,r.z,s.r,r.y,r.e,r.at,r.w,r.ax,q.w,r.x,r.d)}, +b4(a,b){var s,r,q=this +b.saHd(q.f) +b.sk(0,q.d) +b.safb(q.e) +b.sVF(0,q.r) +b.sag2(q.w) +b.stM(q.x) +b.saf8(q.y) +b.sdT(q.z) +b.h_=q.Q +b.dG=q.as +s=a.ae(t.I) +s.toString +b.scF(s.w) +b.safg(q.at) +b.saMP(0,A.r(a).r) +b.sdt(q.ay) +b.saJK(q.ch) +s=A.aS(a,B.lr,t.l).w.ay +r=b.aG +r===$&&A.b() +r.b=s +r=b.aS +r===$&&A.b() +r.b=s +b.saEl(q.CW)}} +A.Gz.prototype={ +alV(a,b,c,d,e,f,g,h,i,j,k,l,m,n,a0,a1,a2,a3){var s,r,q,p=this,o=null +p.zc() +s=new A.aDm(A.F(t.S,t.EG)) +r=A.a1L(o,o) +r.w=s +r.ay=p.gQy() +r.ch=p.gas6() +r.CW=p.gQw() +r.cx=p.gapR() +r.b=c +p.aG=r +r=A.a9T(o,o) +r.w=s +r.aV=p.gauh() +r.bU=p.gaum() +r.b=c +p.aS=r +r=p.B +q=r.d +q===$&&A.b() +p.Z=A.c_(B.a3,q,o) +q=r.e +q===$&&A.b() +q=A.c_(B.a3,q,o) +q.a.f4(new A.b9j(p)) +p.Y=q +r=r.f +r===$&&A.b() +p.av=A.c_(B.du,r,o)}, +gRi(){var s=this.ga4x() +return new A.ad(s,new A.b9h(),A.ab(s).h("ad<1,Y>")).lr(0,B.iG)}, +gRh(){var s=this.ga4x() +return new A.ad(s,new A.b9g(),A.ab(s).h("ad<1,Y>")).lr(0,B.iG)}, +ga4x(){var s,r=this.aT +r.ch.toString +r.cx.toString +s=this.dl!=null +s +return A.a([new A.V(48,48),new A.V(20,20),r.CW.NH(s,r)],t.X4)}, +gSp(){var s=this.aT +return s.cy.aeO(!1,this,s)}, +sk(a,b){var s,r,q=this,p=q.ah,o=p!=null&&p>0?q.CR(b):b +if(o===q.cc)return +q.cc=o +p=q.ah +p=p!=null&&p>0 +s=q.B.r +if(p){s===$&&A.b() +p=s.x +p===$&&A.b() +r=Math.abs(o-p) +s.e=r!==0?new A.bk(B.e.bi(75e3*(1/r))):B.F +s.z=B.aI +s.jW(o,B.du,null)}else{s===$&&A.b() +s.sk(0,o)}q.bX()}, +safb(a){if(a==this.fF)return +this.fF=a +this.bX()}, +saMP(a,b){if(this.fm===b)return +this.fm=b +this.bX()}, +safg(a){return}, +saHd(a){if(a==this.ah)return +this.ah=a +this.aU()}, +sVF(a,b){if(b==this.bG)return +this.bG=b +this.zc()}, +sag2(a){if(a.l(0,this.aT))return +this.aT=a +this.zc()}, +stM(a){if(a===this.bK)return +this.bK=a +this.zc()}, +saf8(a){if(a.l(0,this.bc))return +this.bc=a +this.aU()}, +sdT(a){var s,r,q=this +if(J.i(a,q.dl))return +s=q.dl +q.dl=a +r=a!=null +if(s!=null!==r){s=q.B.f +if(r){s===$&&A.b() +s.bS(0)}else{s===$&&A.b() +s.d9(0)}q.aU() +q.bX()}}, +scF(a){if(a===this.cS)return +this.cS=a +this.zc()}, +sdt(a){var s,r,q=this +if(a===q.ep)return +q.ep=a +s=q.B +r=s.d +if(a){r===$&&A.b() +r.bS(0) +if(q.gCo()){s=s.e +s===$&&A.b() +s.bS(0)}}else{r===$&&A.b() +r.d9(0) +if(q.gCo()){s=s.e +s===$&&A.b() +s.d9(0)}}q.bX()}, +saJK(a){if(a===this.iz)return +this.iz=a +this.a5L(a)}, +saJL(a){var s=this +if(a===s.dH)return +s.dH=a +s.a5L(s.iz)}, +saEl(a){if(a===this.E)return +this.E=a +this.bX()}, +a5L(a){var s,r=this +if(a&&r.dH){s=r.B.d +s===$&&A.b() +s.bS(0)}else if(!r.ep){s=r.B.d +s===$&&A.b() +s.d9(0)}}, +gCo(){switch(this.aT.fy.a){case 0:var s=this.ah +return s!=null&&s>0 +case 1:s=this.ah +return!(s!=null&&s>0) +case 2:return!0 +case 3:return!1}}, +gamk(){switch(this.fm.a){case 2:case 4:return 0.1 +case 0:case 1:case 3:case 5:return 0.05}}, +zc(){var s=this,r=s.bG,q=s.ar +if(r!=null){q.se9(0,A.di(null,s.aT.go,r)) +q.scF(s.cS) +q.stM(s.bK) +q.ab2()}else q.se9(0,null) +s.a6()}, +CA(){this.Or() +this.ar.a6() +this.zc()}, +aA(a){var s,r,q=this +q.al_(a) +s=q.Z +s===$&&A.b() +r=q.geE() +s.a.P(0,r) +s=q.Y +s===$&&A.b() +s.a.P(0,r) +s=q.av +s===$&&A.b() +s.a.P(0,r) +s=q.B.r +s===$&&A.b() +s.cL() +s=s.dB$ +s.b=!0 +s.a.push(r)}, +ap(a){var s,r=this,q=r.Z +q===$&&A.b() +s=r.geE() +q.a.J(0,s) +q=r.Y +q===$&&A.b() +q.a.J(0,s) +q=r.av +q===$&&A.b() +q.a.J(0,s) +q=r.B.r +q===$&&A.b() +q.J(0,s) +r.al0(0)}, +m(){this.ar.m() +this.jr()}, +arp(a){switch(this.cS.a){case 0:return 1-a +case 1:return a}}, +CR(a){var s=A.S(a,0,1),r=this.ah +if(r!=null&&r>0){r.toString +s=B.e.bi(s*r)/r}return s}, +a4E(a){var s,r,q,p=this,o=p.B +o.afT() +if(!p.b8&&p.dl!=null){switch(p.E.a){case 0:case 1:p.b8=!0 +s=p.jo(a) +r=p.gSp() +q=p.gSp() +q=p.arp((s.a-r.a)/(q.c-q.a)) +p.b6=q +r=p.dl +r.toString +r.$1(p.CR(q)) +break +case 3:s=p.bp +s.toString +if(s.n(0,p.jo(a))){p.b8=!0 +p.b6=p.cc}break +case 2:break}if(p.b8){p.h_.$1(p.CR(p.cc)) +s=o.d +s===$&&A.b() +s.bS(0) +if(p.gCo()){s=o.e +s===$&&A.b() +s.bS(0) +s=o.w +if(s!=null)s.aQ(0) +o.w=A.d2(new A.bk(5e5),new A.b9i(p))}}}}, +PW(){var s,r,q=this,p=q.B +if(p.c==null)return +if(q.b8&&!0){q.dG.$1(q.CR(q.b6)) +s=q.b8=!1 +q.b6=0 +r=p.d +r===$&&A.b() +r.d9(0) +if(q.gCo()?p.w==null:s){p=p.e +p===$&&A.b() +p.d9(0)}}}, +Qz(a){this.a4E(a.b)}, +as7(a){var s,r,q,p=this +if(p.B.c==null)return +s=p.b8 +if(!s&&p.E===B.ae5){s=p.b8=!0 +p.b6=p.cc}switch(p.E.a){case 0:case 2:case 3:if(s&&p.dl!=null){s=a.c +s.toString +r=p.gSp() +q=s/(r.c-r.a) +switch(p.cS.a){case 0:p.b6-=q +break +case 1:p.b6+=q +break}s=p.dl +s.toString +s.$1(p.CR(p.b6))}break +case 1:break}}, +Qx(a){this.PW()}, +aui(a){this.a4E(a.a)}, +aun(a){this.PW()}, +l8(a){return!0}, +oQ(a,b){var s,r=this +if(r.B.c==null)return +if(t.pY.b(a)&&r.dl!=null){s=r.aG +s===$&&A.b() +s.zi(a) +s=r.aS +s===$&&A.b() +s.zi(a)}if(r.dl!=null&&r.bp!=null){s=r.bp +s.toString +r.saJL(s.n(0,a.geD()))}}, +c3(a){return 144+this.gRi()}, +bV(a){return 144+this.gRi()}, +bW(a){var s=this.aT.a +s.toString +return Math.max(s,this.gRh())}, +c1(a){var s=this.aT.a +s.toString +return Math.max(s,this.gRh())}, +gog(){return!0}, +ds(a){var s,r=a.b +r=r<1/0?r:144+this.gRi() +s=a.d +if(!(s<1/0)){s=this.aT.a +s.toString +s=Math.max(s,this.gRh())}return new A.V(r,s)}, +aD(a5,a6){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1=this,a2=null,a3=a1.B,a4=a3.r +a4===$&&A.b() +a4=a4.x +a4===$&&A.b() +s=a1.fF +switch(a1.cS.a){case 0:r=1-a4 +q=s!=null?1-s:a2 +break +case 1:q=s!=null?s:a2 +r=a4 +break +default:q=a2 +r=q}a4=a1.aT +p=a4.cy +p.toString +o=a1.ah +n=p.aeP(o!=null&&o>0,a6,a1,a4) +a4=n.a +p=n.c-a4 +m=new A.l(a4+r*p,n.gbH().b) +if(a1.dl!=null){a1.aT.ch.toString +a1.bp=A.oL(m,24)}l=q!=null?new A.l(a4+q*p,n.gbH().b):a2 +o=a1.aT +k=o.cy +k.toString +j=a1.av +j===$&&A.b() +i=a1.cS +h=a1.ah +h=h!=null&&h>0 +k.aMw(a5,a6,j,h,a1.dl!=null,a1,l,o,i,m) +o=a1.Z +o===$&&A.b() +if(o.gaL(o)!==B.Q){o=a1.aT +o.ch.toString +k=a1.Z +j=a1.bc +if(j.gai(j))a1.gq(a1) +g=a5.gcR(a5) +k=new A.aO(0,24,t.Y).a_(0,k.gk(k)) +j=$.as().bn() +o=o.ax +o.toString +j.sa5(0,o) +g.ha(m,k,j)}o=a1.ah +if(o!=null&&o>0){o=a1.aT +o=o.CW.NH(a1.dl!=null,o) +f=n.d-n.b +e=p-f +p=a1.ah +p.toString +if(e/p>=3*o.a){d=n.gbH().b +p=f/2 +c=0 +while(!0){o=a1.ah +o.toString +if(!(c<=o))break +k=a1.aT +j=a1.av +i=a1.cS +k.CW.aMx(a5,new A.l(a4+c/o*e+p,d),j,a1.dl!=null,a1,k,i,m);++c}}}if(a1.dl!=null)if(a1.bG!=null){a4=a1.Y +a4===$&&A.b() +a4=a4.gaL(a4)!==B.Q}else a4=!1 +else a4=!1 +if(a4)if(a1.gCo())a3.z=new A.b9k(a1,m) +a3=a1.aT +a3.cx.toString +a4=a1.Z +p=a1.av +o=a1.bc +if(o.gai(o))a1.gq(a1) +g=a5.gcR(a5) +o=t.Y +a3=new A.dk(a3.at,a3.Q).a_(0,p.gk(p)) +a3.toString +b=new A.aO(10,10,o).a_(0,p.gk(p)) +a=new A.aO(1,6,o).a_(0,a4.gk(a4)) +a4=$.as() +a0=a4.cZ() +o=2*b +a0.wv(A.bjB(m,o,o),0,6.283185307179586) +g.wV(a0,B.v,a,!0) +a4=a4.bn() +a4.sa5(0,a3) +g.ha(m,b,a4)}, +hv(a){var s,r=this +r.jq(a) +a.a=!1 +s=r.dl +a.ce(B.kY,!0) +a.ce(B.kW,s!=null) +a.c5=r.cS +a.e=!0 +if(r.dl!=null){a.sMg(r.gaJW()) +a.sMd(r.gaGQ())}s=r.cc +a.rx=new A.dI(""+B.e.bi(s*100)+"%",B.aP) +a.e=!0 +a.ry=new A.dI(""+B.e.bi(A.S(s+r.gJ9(),0,1)*100)+"%",B.aP) +a.e=!0 +a.to=new A.dI(""+B.e.bi(A.S(r.cc-r.gJ9(),0,1)*100)+"%",B.aP) +a.e=!0}, +gJ9(){var s=this.ah +return s!=null?1/s:this.gamk()}, +LF(){var s,r=this +if(r.dl!=null){r.h_.$1(A.S(r.cc,0,1)) +s=A.S(r.cc+r.gJ9(),0,1) +r.dl.$1(s) +r.dG.$1(s)}}, +KK(){var s,r=this +if(r.dl!=null){r.h_.$1(A.S(r.cc,0,1)) +s=A.S(r.cc-r.gJ9(),0,1) +r.dl.$1(s) +r.dG.$1(s)}}} +A.b9j.prototype={ +$1(a){var s +if(a===B.Q&&this.a.B.ch!=null){s=this.a.B +s.ch.er(0) +s.ch=null}}, +$S:9} +A.b9h.prototype={ +$1(a){return a.a}, +$S:102} +A.b9g.prototype={ +$1(a){return a.b}, +$S:102} +A.b9i.prototype={ +$0(){var s=this.a,r=s.B +r.w=null +if(!s.b8){s=r.e +s===$&&A.b() +s=s.Q +s===$&&A.b() +s=s===B.a5}else s=!1 +if(s){s=r.e +s===$&&A.b() +s.d9(0)}}, +$S:0} +A.b9k.prototype={ +$2(a,b){var s,r,q,p,o,n,m,l,k,j,i=this.a +if(i.y!=null){s=i.aT.db +s.toString +r=b.T(0,this.b) +q=i.Y +q===$&&A.b() +p=i.av +p===$&&A.b() +o=i.ah +o=o!=null&&o>0 +n=i.aT +m=i.cS +l=i.cc +k=i.bK +j=i.bc +j=j.gai(j)?i.gq(i):i.bc +s.abJ(a,r,q,p,o,i.ar,i,j,n,m,k,l)}}, +$S:15} +A.nA.prototype={} +A.GL.prototype={ +K(){return"_SliderAdjustmentType."+this.b}} +A.anP.prototype={ +aX(a){var s,r=new A.akE(this.d,!1,A.aB(t.T)) +r.aW() +s=r.Z.e +s===$&&A.b() +r.B=A.c_(B.a3,s,null) +return r}, +b4(a,b){b.Z=this.d}} +A.akE.prototype={ +gog(){return!0}, +aA(a){var s,r,q=this +q.al3(a) +s=q.B +s===$&&A.b() +r=q.geE() +s.a.P(0,r) +s=q.Z.r +s===$&&A.b() +s.cL() +s=s.dB$ +s.b=!0 +s.a.push(r)}, +ap(a){var s,r=this,q=r.B +q===$&&A.b() +s=r.geE() +q.a.J(0,s) +q=r.Z.r +q===$&&A.b() +q.J(0,s) +r.al4(0)}, +aD(a,b){var s=this.Z.z +if(s!=null)s.$2(a,b)}, +ds(a){return new A.V(A.S(0,a.a,a.b),A.S(0,a.c,a.d))}} +A.baF.prototype={ +guw(){return this.ok.b}, +gva(){var s=this.ok.b +return A.K(61,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}, +gy6(){var s=this.ok.b +return A.K(138,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}, +gA5(){var s=this.ok.db.a +return A.K(82,s>>>16&255,s>>>8&255,s&255)}, +gA7(){var s=this.ok.db.a +return A.K(31,s>>>16&255,s>>>8&255,s&255)}, +gA8(){var s=this.ok.db.a +return A.K(31,s>>>16&255,s>>>8&255,s&255)}, +gzf(){var s=this.ok.c.a +return A.K(138,s>>>16&255,s>>>8&255,s&255)}, +gAP(){var s=this.ok.b +return A.K(138,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}, +gA4(){var s=this.ok.c.a +return A.K(31,s>>>16&255,s>>>8&255,s&255)}, +gA6(){var s=this.ok.db.a +return A.K(31,s>>>16&255,s>>>8&255,s&255)}, +gim(){return this.ok.b}, +gA9(){var s=this.ok,r=s.db.a +return A.tg(A.K(97,r>>>16&255,r>>>8&255,r&255),s.cy)}, +gcw(){var s=this.ok.b +return A.K(31,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}, +gBO(){return A.r(this.k4).p3.y.co(this.ok.c)}, +gBN(){return B.O7}} +A.baG.prototype={ +giU(){var s,r=this,q=r.ok +if(q===$){s=A.r(r.k4) +r.ok!==$&&A.am() +q=r.ok=s.ax}return q}, +guw(){return this.giU().b}, +gva(){var s=this.giU(),r=s.dx +return r==null?s.cy:r}, +gy6(){var s=this.giU().b +return A.K(138,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}, +gA5(){var s=this.giU().db.a +return A.K(97,s>>>16&255,s>>>8&255,s&255)}, +gA7(){var s=this.giU().db.a +return A.K(31,s>>>16&255,s>>>8&255,s&255)}, +gA8(){var s=this.giU().db.a +return A.K(31,s>>>16&255,s>>>8&255,s&255)}, +gzf(){var s=this.giU().c.a +return A.K(97,s>>>16&255,s>>>8&255,s&255)}, +gAP(){var s=this.giU(),r=s.dy +s=(r==null?s.db:r).a +return A.K(97,s>>>16&255,s>>>8&255,s&255)}, +gA4(){var s=this.giU().db.a +return A.K(97,s>>>16&255,s>>>8&255,s&255)}, +gA6(){var s=this.giU().db.a +return A.K(97,s>>>16&255,s>>>8&255,s&255)}, +gim(){return this.giU().b}, +gA9(){var s=this.giU().db.a +return A.tg(A.K(97,s>>>16&255,s>>>8&255,s&255),this.giU().cy)}, +gcw(){return A.vf(new A.baH(this))}, +gBO(){var s=A.r(this.k4).p3.at +s.toString +return s.co(this.giU().c)}, +gBN(){return B.Nx}} +A.baH.prototype={ +$1(a){var s +if(a.n(0,B.fn)){s=this.a.giU().b +return A.K(31,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.n(0,B.A)){s=this.a.giU().b +return A.K(20,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.n(0,B.y)){s=this.a.giU().b +return A.K(31,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}return B.u}, +$S:4} +A.Vu.prototype={ +aA(a){this.eR(a) +$.hC.ta$.a.G(0,this.gum())}, +ap(a){$.hC.ta$.a.F(0,this.gum()) +this.eS(0)}} +A.Vw.prototype={ +aA(a){this.eR(a) +$.hC.ta$.a.G(0,this.gum())}, +ap(a){$.hC.ta$.a.F(0,this.gum()) +this.eS(0)}} +A.VD.prototype={ +cn(){this.d3() +this.cT() +this.es()}, +m(){var s=this,r=s.b_$ +if(r!=null)r.J(0,s.gej()) +s.b_$=null +s.aZ()}} +A.aT3.prototype={ +K(){return"ShowValueIndicator."+this.b}} +A.Ed.prototype={ +gv(a){var s=this +return A.X(s.a,s.guw(),s.gva(),s.gy6(),s.gA5(),s.gA7(),s.gA8(),s.gzf(),s.gAP(),s.gA4(),s.gA6(),s.gim(),s.as,s.gA9(),s.gcw(),s.ay,s.ch,s.CW,s.cx,A.X(s.cy,s.gBN(),s.dx,s.dy,s.fr,s.fx,s.fy,s.gBO(),s.id,s.k1,s.k2,s.k3,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a))}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r===b)return!0 +if(J.a1(b)!==A.o(r))return!1 +if(b instanceof A.Ed)if(b.a==r.a)if(J.i(b.guw(),r.guw()))if(J.i(b.gva(),r.gva()))if(J.i(b.gy6(),r.gy6()))if(J.i(b.gA5(),r.gA5()))if(J.i(b.gA7(),r.gA7()))if(J.i(b.gA8(),r.gA8()))if(J.i(b.gzf(),r.gzf()))if(J.i(b.gAP(),r.gAP()))if(J.i(b.gA4(),r.gA4()))if(J.i(b.gA6(),r.gA6()))if(J.i(b.gim(),r.gim()))if(J.i(b.as,r.as))if(J.i(b.gA9(),r.gA9()))if(J.i(b.gcw(),r.gcw()))if(J.i(b.ay,r.ay))if(b.ch==r.ch)if(b.CW==r.CW)if(b.cx==r.cx)if(b.cy==r.cy)if(b.gBN()==r.gBN())if(b.fy==r.fy)if(J.i(b.gBO(),r.gBO()))if(b.id==r.id)s=!0 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +return s}, +guw(){return this.b}, +gva(){return this.c}, +gy6(){return this.d}, +gA5(){return this.e}, +gA8(){return this.f}, +gA7(){return this.r}, +gzf(){return this.w}, +gAP(){return this.x}, +gA4(){return this.y}, +gA6(){return this.z}, +gim(){return this.Q}, +gA9(){return this.at}, +gcw(){return this.ax}, +gBN(){return this.db}, +gBO(){return this.go}} +A.aTv.prototype={} +A.aTy.prototype={} +A.aTz.prototype={} +A.asX.prototype={ +NG(a,b,c,d,e){var s,r,q,p +e.cx.toString +b +e.ch.toString +s=e.a +s.toString +r=c.a+Math.max(24,10) +q=c.b+(d.gq(d).b-s)/2 +p=r+d.gq(d).a-Math.max(20,48) +return new A.I(Math.min(r,p),q,Math.max(r,p),q+s)}, +aeO(a,b,c){return this.NG(a,!1,B.i,b,c)}, +aeP(a,b,c,d){return this.NG(a,!1,b,c,d)}} +A.aPW.prototype={ +aMw(a0,a1,a2,a3,a4,a5,a6,a7,a8,a9){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a=a7.a +if(a==null||a<=0)return +a=$.as() +s=a.bn() +r=new A.dk(a7.e,a7.b).a_(0,a2.gk(a2)) +r.toString +s.sa5(0,r) +q=a.bn() +r=new A.dk(a7.r,a7.c).a_(0,a2.gk(a2)) +r.toString +q.sa5(0,r) +switch(a8.a){case 1:p=q +o=s +break +case 0:p=s +o=q +break +default:o=null +p=null}n=this.NG(a3,a4,a1,a5,a7) +r=n.d +m=n.b +l=r-m +k=l/2 +j=new A.bq(k,k) +l=(l+2)/2 +i=new A.bq(l,l) +l=a0.gcR(a0) +k=a8===B.j +h=k?m-1:m +g=a9.a +f=k?r+1:r +e=k?i:j +d=k?i:j +l.de(A.Mx(n.a,h,g,f,d,B.I,e,B.I),o) +e=a0.gcR(a0) +l=a8===B.ab +h=l?m-1:m +f=l?r+1:r +d=l?i:j +l=l?i:j +e.de(A.Mx(g,h,n.c,f,B.I,l,B.I,d),p) +if(a6!=null){l=a6.a +c=k?l>g:lh.a +r=s?f.z:f.y +q=s?f.x:f.w +break +case 0:p=b.a0)a.gcR(a).ha(b,m,o)}} +A.aPU.prototype={} +A.aPT.prototype={} +A.a7_.prototype={ +abJ(a,b,c,d,e,f,g,h,i,j,k,l){var s=a.gcR(a),r=c.gk(c),q=i.ay +q.toString +B.OM.Wl(q,s,b,f,g,r,h,k)}} +A.b8L.prototype={ +NA(a,b,c,d,e,f){var s=this.a6c(b,d,f),r=s/2,q=A.cD(c.cs(0,null),a).a,p=Math.max(0,r-q+8),o=e.a,n=Math.max(0,r-(o-q-8)) +if(s0)return p-r +else return-n+r}}, +a6c(a,b,c){return(Math.max(16*c,a.b.b)+32)*b}, +Wl(a,b,c,d,e,f,g,h){var s,r,q,p,o,n,m,l,k +if(f===0)return +s=this.a6c(d,f,h) +r=this.NA(c,d,e,f,g,h) +q=d.b.a.a +p=Math.ceil(q.gdm(q))+16 +q=-s/2+r +o=-8-p +n=o+p +m=$.as() +l=m.cZ() +l.d7(0,-8,-8) +l.d7(0,8,-8) +l.ad(0) +k=m.bn() +k.sa5(0,a) +l.fT(A.lh(new A.I(q,o,q+s,n),B.dT)) +b.eb(0) +b.bj(0,c.a,c.b-14) +b.hF(0,f,f) +b.dV(l,k) +q=n-o +b.bj(0,0,-8-q) +o=d.b +n=o.b +o=o.a.a +d.aD(b,new A.l(r,q/2).a2(0,new A.l(n/2,Math.ceil(o.gdm(o))/2))) +b.dq(0)}} +A.az1.prototype={ +abJ(a,b,c,d,e,f,g,h,i,j,k,l){var s=a.gcR(a),r=c.gk(c),q=i.ay +q.toString +B.OD.Wl(q,s,b,f,g,r,h,k)}} +A.b2T.prototype={ +NA(a,b,c,d,e,f){var s=this.a6b(b,d),r=s/2,q=A.cD(c.cs(0,null),a).a,p=Math.max(0,r-q+8),o=e.a,n=Math.max(0,r-(o-q-8)) +if(s0)return p-r +else return-n+r}}, +a6b(a,b){return(Math.max(20,a.b.b)+8)*b}, +Wl(a,b,c,d,e,f,g,h){var s,r,q,p,o,n,m,l,k +if(f===0)return +s=this.a6b(d,f) +r=this.NA(c,d,e,f,g,h) +q=-s/2+r +p=new A.I(q,-34,q+s,-6) +q=$.as() +o=q.bn() +o.sa5(0,a) +b.eb(0) +b.bj(0,c.a,c.b-16) +b.hF(0,f,f) +n=A.I3(4) +m=p.giN()/2 +l=A.mD(n,A.Av(new A.bq(m,m)),1).e2(p) +k=q.cZ() +k.d7(0,-10,-10) +k.d7(0,10,-10) +k.ad(0) +b.dV(k,o) +b.de(l,o) +b.bj(0,0,-36) +q=d.b +m=q.b +q=q.a.a +d.aD(b,new A.l(r,16).a2(0,new A.l(m/2,Math.ceil(q.gdm(q))/2))) +b.dq(0)}} +A.akU.prototype={} +A.alI.prototype={} +A.NR.prototype={ +K(){return"SnackBarClosedReason."+this.b}} +A.NS.prototype={ +gv(a){var s=this +return A.X(s.a,s.b,s.c,s.d,s.e,s.f,s.r,s.w,s.x,null,s.z,s.Q,s.as,s.at,B.a,B.a,B.a,B.a,B.a,B.a)}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.a1(b)!==A.o(s))return!1 +return b instanceof A.NS&&J.i(b.a,s.a)&&J.i(b.b,s.b)&&J.i(b.c,s.c)&&J.i(b.d,s.d)&&b.e==s.e&&J.i(b.f,s.f)&&b.w==s.w&&J.i(b.x,s.x)&&J.i(b.z,s.z)&&b.Q==s.Q&&J.i(b.as,s.as)&&J.i(b.at,s.at)}} +A.alR.prototype={} +A.bbi.prototype={ +K(){return"_SwitchType."+this.b}} +A.a9K.prototype={ +a1n(a){var s=A.r(a),r=A.bjT(a),q=s.y?new A.aml(a,A.r(a).ax):new A.amk(),p=this.CW,o=p==null?r.e:p +switch((o==null?s.e:o).a){case 0:return new A.V(q.gOD(),q.gZv()) +case 1:return new A.V(q.gOD(),q.gZw())}}, +a_b(a){var s=this,r=null +return new A.RP(s.c,s.d,s.e,s.f,s.r,s.w,s.x,s.y,s.z,s.Q,s.as,s.at,s.ax,r,s.ch,s.db,s.dx,r,r,s.fx,s.fy,r,s.id,!1,s.a1n(a),r)}, +A(a){var s,r=this,q=null +switch(r.cx.a){case 0:return r.a_b(a) +case 1:switch(A.r(a).r.a){case 0:case 1:case 3:case 5:return r.a_b(a) +case 2:case 4:s=r.a1n(a) +return A.cP(B.X,new A.IZ(r.c,r.d,r.e,r.w,q,q,q,r.id,!1,!1,r.db,q),B.l,q,q,q,q,s.b,q,q,s.a)}break}}} +A.RP.prototype={ +a8(){return new A.RQ(new A.TI($.b5()),$,$,$,$,$,$,$,$,$,null,!1,!1,null,null,B.m)}} +A.RQ.prototype={ +aY(a){var s,r,q=this +q.br(a) +if(a.c!==q.a.c){s=q.mP$ +s===$&&A.b() +if(s.gk(s)!==0){s=q.mP$ +s=s.gk(s)===1}else s=!0 +if(s){s=q.c +s.toString +s=A.r(s) +r=q.mP$ +if(s.y){r.b=B.rz +r.c=new A.jz(B.rz)}else{r.b=B.bp +r.c=B.cx}}q.E1()}}, +m(){this.d.m() +this.akR()}, +gdT(){this.a.toString +return this.gaBB()}, +gxM(){return!1}, +gk(a){return this.a.c}, +gDR(){return new A.bc(new A.b6v(this),t.U)}, +ga6l(){return new A.bc(new A.b6w(this),t.U)}, +aBG(a){var s +if(this.gdT()!=null){s=this.oK$ +s===$&&A.b() +s.bS(0)}}, +aBI(a){var s,r,q,p=this +if(p.gdT()!=null){s=p.mP$ +s===$&&A.b() +s.b=B.Z +s.c=null +s=a.c +s.toString +r=s/(p.a.id.a-40) +s=p.c.ae(t.I) +s.toString +switch(s.w.a){case 0:s=p.k9$ +s===$&&A.b() +q=s.x +q===$&&A.b() +s.sk(0,q-r) +break +case 1:s=p.k9$ +s===$&&A.b() +q=s.x +q===$&&A.b() +s.sk(0,q+r) +break}}}, +aBE(a){var s,r,q=this,p=q.mP$ +p===$&&A.b() +p=p.gk(p) +s=q.a +r=s.c +if(p>=0.5!==r){s.d.$1(!r) +q.a7(new A.b6u(q))}else q.E1() +p=q.oK$ +p===$&&A.b() +p.d9(0)}, +aBC(a){var s=this.a.d +a.toString +s.$1(a)}, +A(b9){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=this,b8=null +if(b7.e){b7.e=!1 +b7.E1()}s=A.r(b9) +r=A.bjT(b9) +q=s.y +p=q?new A.aml(b9,A.r(b9).ax):new A.amk() +o=q?new A.bbb(b9,b8,b8,b8,b8,b8,b8,b8,b8,b8):new A.bb6(A.r(b9),A.r(b9).ax,b8,b8,b8,b8,b8,b8,b8,b8,b8) +q=b7.k9$ +q===$&&A.b() +q.e=A.dC(0,p.gad5(),0) +n=b7.gfA() +n.G(0,B.B) +m=b7.gfA() +m.F(0,B.B) +b7.a.toString +l=b7.gDR().a.$1(n) +if(l==null){q=r.a +l=q==null?b8:q.L(n)}q=l==null +if(q){k=o.gim().a.$1(n) +k.toString +j=k}else j=l +b7.a.toString +i=b7.gDR().a.$1(m) +if(i==null){k=r.a +i=k==null?b8:k.L(m)}k=i==null +if(k){h=o.gim().a.$1(m) +h.toString +g=h}else g=i +b7.a.toString +h=b7.ga6l().a.$1(n) +if(h==null){h=r.b +h=h==null?b8:h.L(n)}if(h==null){h=b7.gDR().a.$1(n) +if(h==null)h=b8 +else{f=J.bK(h) +h=A.K(128,f.gk(h)>>>16&255,f.gk(h)>>>8&255,f.gk(h)&255)}e=h}else e=h +if(e==null){h=o.gp5().a.$1(n) +h.toString +e=h}b7.a.toString +h=r.c +f=h==null?b8:h.L(n) +d=f +if(d==null)d=B.u +b7.a.toString +f=r.d +c=f==null?b8:f.L(n) +b=c +if(b==null){c=o.gBI() +b=c==null?b8:c.L(n)}b7.a.toString +c=b7.ga6l().a.$1(m) +if(c==null){c=r.b +c=c==null?b8:c.L(m) +a=c}else a=c +if(a==null){c=o.gp5().a.$1(m) +c.toString +a=c}b7.a.toString +h=h==null?b8:h.L(m) +a0=h +if(a0==null){h=o.gBH() +a0=h==null?b8:h.a.$1(m)}b7.a.toString +h=f==null?b8:f.L(m) +a1=h +if(a1==null){h=o.gBI() +a1=h==null?b8:h.L(m)}b7.a.toString +a2=p.geK().L(n) +a3=p.geK().L(m) +a4=b7.gfA() +a4.G(0,B.y) +b7.a.toString +h=r.r +f=h==null?b8:h.L(a4) +a5=f +if(a5==null){f=o.gcw().a.$1(a4) +f.toString +a5=f}a6=b7.gfA() +a6.G(0,B.A) +b7.a.toString +f=h==null?b8:h.L(a6) +a7=f +if(a7==null){f=o.gcw().a.$1(a6) +f.toString +a7=f}n.G(0,B.K) +b7.a.toString +f=b7.gDR().a.$1(n) +if(f==null){f=r.a +f=f==null?b8:f.L(n) +a8=f}else a8=f +if(a8==null){f=o.gim().a.$1(n) +f.toString +a8=f}b7.a.toString +f=h==null?b8:h.L(n) +if(f==null){q=q?b8:A.K(31,l.gk(l)>>>16&255,l.gk(l)>>>8&255,l.gk(l)&255) +a9=q}else a9=f +if(a9==null){q=o.gcw().a.$1(n) +q.toString +a9=q}m.G(0,B.K) +b7.a.toString +q=b7.gDR().a.$1(m) +if(q==null){q=r.a +q=q==null?b8:q.L(m) +b0=q}else b0=q +if(b0==null){q=o.gim().a.$1(m) +q.toString +b0=q}b7.a.toString +q=h==null?b8:h.L(m) +if(q==null){q=k?b8:A.K(31,i.gk(i)>>>16&255,i.gk(i)>>>8&255,i.gk(i)&255) +b1=q}else b1=q +if(b1==null){q=o.gcw().a.$1(m) +q.toString +b1=q}b2=p.gJV() +b7.a.toString +b3=p.gLE() +b7.a.toString +b4=r.w +if(b4==null)b4=o.giO() +q=b7.a +k=q.c +h=q.cx +f=q.fx +c=q.fy +q=q.id +b5=b7.d +b6=b7.mP$ +b6===$&&A.b() +b5.scQ(0,b6) +b6=b7.uY$ +b6===$&&A.b() +b5.sWC(b6) +b6=b7.v_$ +b6===$&&A.b() +b5.sWE(b6) +b6=b7.uZ$ +b6===$&&A.b() +b5.sWF(b6) +b5.sVi(b1) +b5.sWD(a9) +b5.sqN(a7) +b5.ska(a5) +b5.siO(b4) +b5.sAc(b7.qK$) +b5.sqS(b7.gfA().n(0,B.y)) +b5.sVw(b7.gfA().n(0,B.A)) +b5.suv(j) +b5.sAO(g) +b5.saE0(a8) +b5.saJR(b0) +b5.saE2(b7.a.x) +b5.saLJ(b7.a.y) +b5.saJT(b7.a.z) +b5.saM_(b7.a.Q) +b5.suw(e) +b5.saE3(d) +b5.saE4(b) +b5.sva(a) +b5.saJU(a0) +b5.saJV(a1) +b5.swG(A.VV(b9,b8)) +b5.saKr(b7.gdT()!=null) +b5.saOK(b7.a.id.a-40) +b6=b9.ae(t.I) +b6.toString +b5.scF(b6.w) +b5.salo(s.ax.cy) +b5.sLE(b3) +b5.sJV(b2) +b5.sMJ(p.gMJ()) +b5.sN1(p.gN1()) +b5.sN9(p.gN9()) +b5.sNa(p.gNa()) +b5.saE_(a2) +b5.saJQ(a3) +b5.saDZ(b8) +b5.saJP(b8) +b5.sfI(A.Km(b9)) +b5.sN2(p.gN2()) +b5.sNc(p.gNc()) +b5.saMQ(b7.k9$) +h=A.dM(b8,b7.a7l(!1,f,new A.bc(new A.b6x(b7,r),t.bN),c,b5,q),h,!0,b8,b8,b8,b8,b7.gaBD(),b7.gaBF(),b7.gaBH(),b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,!1,B.ai) +return new A.bu(A.bI(b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,b8,k,b8,b8),!1,!1,!1,!1,h,b8)}, +$iaN:1} +A.b6v.prototype={ +$1(a){if(a.n(0,B.o))return this.a.a.r +if(a.n(0,B.B))return this.a.a.e +return this.a.a.r}, +$S:27} +A.b6w.prototype={ +$1(a){if(a.n(0,B.B))return this.a.a.f +return this.a.a.w}, +$S:27} +A.b6u.prototype={ +$0(){this.a.e=!0}, +$S:0} +A.b6x.prototype={ +$1(a){var s=A.cg(this.a.a.cy,a,t.WV) +if(s==null)s=null +return s==null?A.cg(B.cN,a,t.Pb):s}, +$S:133} +A.TI.prototype={ +saMQ(a){if(a===this.db)return +this.db=a +this.ag()}, +saDZ(a){return}, +saJP(a){return}, +sfI(a){if(a.l(0,this.fr))return +this.fr=a +this.ag()}, +saE_(a){if(a.l(0,this.fx))return +this.fx=a +this.ag()}, +saJQ(a){if(a.l(0,this.fy))return +this.fy=a +this.ag()}, +saE0(a){if(a.l(0,this.go))return +this.go=a +this.ag()}, +saJR(a){if(a.l(0,this.id))return +this.id=a +this.ag()}, +sJV(a){if(a===this.k1)return +this.k1=a +this.ag()}, +sLE(a){if(a===this.k2)return +this.k2=a +this.ag()}, +sMJ(a){if(a===this.k3)return +this.k3=a +this.ag()}, +sN1(a){if(a==this.k4)return +this.k4=a +this.ag()}, +sNc(a){if(a.l(0,this.ok))return +this.ok=a +this.ag()}, +sN9(a){if(a===this.p1)return +this.p1=a +this.ag()}, +sNa(a){if(a===this.p2)return +this.p2=a +this.ag()}, +saE2(a){return}, +saLJ(a){return}, +saJT(a){return}, +saM_(a){return}, +suw(a){if(a.l(0,this.rx))return +this.rx=a +this.ag()}, +saE3(a){if(a.l(0,this.ry))return +this.ry=a +this.ag()}, +saJU(a){if(J.i(a,this.to))return +this.to=a +this.ag()}, +saE4(a){if(a==this.x1)return +this.x1=a +this.ag()}, +saJV(a){if(a==this.x2)return +this.x2=a +this.ag()}, +sva(a){if(a.l(0,this.xr))return +this.xr=a +this.ag()}, +swG(a){if(a.l(0,this.y1))return +this.y1=a +this.ag()}, +scF(a){if(this.y2===a)return +this.y2=a +this.ag()}, +salo(a){if(a.l(0,this.c5))return +this.c5=a +this.ag()}, +saKr(a){if(a===this.cO)return +this.cO=a +this.ag()}, +saOK(a){if(a===this.aV)return +this.aV=a +this.ag()}, +sN2(a){var s=this.bU +if(a==null?s==null:a===s)return +this.bU=a +this.ag()}, +arZ(){if(!this.Z)this.ag()}, +aD(b1,b2){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,a9=a8.a,b0=a9.gk(a9) +switch(a8.y2.a){case 0:s=1-b0 +break +case 1:s=b0 +break +default:s=null}a9=a8.b.a +if(!(a9.gaL(a9)===B.aZ&&!a8.Y?a8.Y=!0:a8.Y=!1)){a9=a8.b +if(a9.gaL(a9)===B.a5){a9=a8.k2 +a9.toString +r=a8.k3 +r.toString +q=a8.b +a8.av=A.ag(a9,r,q.gk(q)) +q=a8.k1 +q.toString +r=a8.k3 +r.toString +a9=a8.b +a8.ar=A.ag(q,r,a9.gk(a9))}if(b0===0){a9=a8.k2 +a9.toString +r=a8.k3 +r.toString +q=a8.b +a8.av=A.ag(a9,r,q.gk(q)) +q=a8.k1 +q.toString +a8.ar=q}if(b0===1){a9=a8.k1 +a9.toString +r=a8.k3 +r.toString +q=a8.b +a8.ar=A.ag(a9,r,q.gk(q)) +q=a8.k2 +q.toString +a8.av=q}}a9=a8.av +if(a9==null){a9=a8.k2 +a9.toString}a9*=2 +r=a8.ar +if(r==null){r=a8.k1 +r.toString}r*=2 +r=new A.bbh(a8,new A.V(a9,a9),new A.V(r,r)) +a9=a8.b +if(a9.gaL(a9)===B.a5){a9=a8.k3 +a9.toString +a9*=2 +p=new A.V(a9,a9)}else{a9=a8.a +if(a9.gaL(a9)!==B.Q){a9=a8.a.a +a9=a9.gaL(a9)===B.aY}else a9=!0 +if(a9){a9=r.$1(!0) +r=a9.b +a9=a9.a +p=r.a_(0,a9.gk(a9))}else{a9=r.$1(!1) +r=a9.b +a9=a9.a +p=r.a_(0,a9.gk(a9))}}a9=a8.k4 +o=a9==null?0:1-Math.abs(b0-a9)*2 +a9=p.a-o +r=p.b-o +q=a8.db +q.toString +q=A.c_(B.cx,q,B.bp) +n=q.gk(q) +q=a8.xr +q.toString +m=a8.rx +m.toString +m=A.W(q,m,n) +m.toString +q=a8.to +l=q==null?null:A.W(q,a8.ry,n) +k=A.ag(a8.x2,a8.x1,n) +q=a8.b +if(q.gaL(q)!==B.Q){q=a8.id +q.toString +j=a8.go +j.toString +j=A.W(q,j,n) +j.toString +i=j}else{q=a8.db.Q +q===$&&A.b() +if(q===B.aY){q=a8.id +q.toString +j=a8.e +j.toString +j=A.W(q,j,n) +j.toString +i=j}else{j=a8.f +if(q===B.aZ){j.toString +q=a8.go +q.toString +q=A.W(j,q,n) +q.toString +i=q}else{j.toString +q=a8.e +q.toString +q=A.W(j,q,n) +q.toString +i=q}}}q=a8.c5 +q.toString +h=A.tg(i,q) +q=b0<0.5 +g=q?a8.dy:a8.dx +f=q?a8.R8:a8.p3 +e=q?a8.RG:a8.p4 +q=$.as() +d=q.bn() +d.sa5(0,m) +m=a8.p2 +m.toString +j=a8.p1 +j.toString +c=(b2.a-m)/2 +b=b2.b +a=(b-j)/2 +a0=j/2 +a1=r/2 +a2=a1-a0 +a3=a8.aV +a3.toString +a4=c-a2-(a9-r)/2+s*a3 +b1.de(A.lh(new A.I(c,a,c+m,a+j),new A.bq(a0,a0)),d) +if(l!=null){m=c+1 +j=a+1 +a3=a8.p2 +a3.toString +a5=a8.p1 +a5.toString +a6=A.lh(new A.I(m,j,m+(a3-2),j+(a5-2)),new A.bq(a0,a0)) +a7=q.bn() +a7.scK(0,B.aj) +a7.sfB(k==null?2:k) +a7.sa5(0,l) +b1.de(a6,a7)}a8.Wn(b1,new A.l(a4+a1,b/2)) +a8.axZ(new A.l(a4,a-a2),b1,n,h,f,e,g,new A.V(a9,r),o)}, +axZ(a,b,c,d,e,f,g,h,i){var s,r,q=this +try{q.Z=!0 +if(q.B!=null)if(d.l(0,q.cb))r=!1 +else r=!0 +else r=!0 +if(r){q.cb=d +q.bQ=e +q.bO=f +r=q.B +if(r!=null)r.m() +q.B=A.bNh(new A.hH(d,null,null,q.bU,B.fK),q.garY())}r=q.B +r.toString +s=r +s.kk(b,a,q.y1.TM(h))}finally{q.Z=!1}}, +m(){var s=this,r=s.B +if(r!=null)r.m() +s.bO=s.bQ=s.cb=s.B=null +s.aiT()}} +A.bbh.prototype={ +$1(a){var s,r=this.b,q=this.a,p=this.c,o=t.BC,n=t.qU,m=t.kS,l=t.Bx,k=q.ok,j=n.h("dq") +if(a){k.toString +s=A.a([new A.hi(new A.dq(new A.eE(B.rx),new A.aO(r,k,n),j),11,m),new A.hi(new A.dq(new A.eE(B.rv),new A.aO(k,p,n),j),72,m),new A.hi(new A.pO(p,p,l),17,m)],o)}else{k.toString +s=A.a([new A.hi(new A.pO(r,r,l),17,m),new A.hi(new A.dq(new A.eE(new A.jz(B.rv)),new A.aO(r,k,n),j),72,m),new A.hi(new A.dq(new A.eE(new A.jz(B.rx)),new A.aO(k,p,n),j),11,m)],o)}r=A.aYV(s,t.FW) +q=q.db +q.toString +return new A.aw(q,r,r.$ti.h("aw"))}, +$S:344} +A.amj.prototype={} +A.amk.prototype={ +gJV(){return 10}, +geK(){return new A.bE(B.u,t.h9)}, +gLE(){return 10}, +gMJ(){return 10}, +gZv(){return 48}, +gZw(){return 40}, +gOD(){return 59}, +gN2(){return B.yN}, +gN9(){return 14}, +gNa(){return 33}, +gN1(){return 0.5}, +gNc(){return B.adO}, +gad5(){return 200}} +A.bb6.prototype={ +gim(){return new A.bc(new A.bb9(this,this.y.ax.a===B.am),t.h2)}, +gp5(){return new A.bc(new A.bba(this,this.y.ax.a===B.am),t.h2)}, +gBH(){return null}, +gjJ(){return this.y.e}, +gii(){return new A.bc(new A.bb7(),t.bN)}, +gcw(){return new A.bc(new A.bb8(this),t.U)}, +giO(){return 20}} +A.bb9.prototype={ +$1(a){if(a.n(0,B.o))return this.b?B.d9:B.hb +if(a.n(0,B.B))return this.a.z.f +return this.b?B.hb:B.mi}, +$S:4} +A.bba.prototype={ +$1(a){var s +if(a.n(0,B.o))return this.b?B.mj:B.c5 +if(a.n(0,B.B)){s=this.a.z.f +return A.K(128,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}return this.b?B.Ph:B.Pj}, +$S:4} +A.bb7.prototype={ +$1(a){return B.cN.L(a)}, +$S:133} +A.bb8.prototype={ +$1(a){var s,r +if(a.n(0,B.K)){s=this.a.gim().a.$1(a) +r=J.bK(s) +return A.K(31,r.gk(s)>>>16&255,r.gk(s)>>>8&255,r.gk(s)&255)}if(a.n(0,B.A))return this.a.y.dx +if(a.n(0,B.y))return this.a.y.cx +return null}, +$S:27} +A.bbb.prototype={ +geT(){var s,r=this,q=r.z +if(q===$){s=A.r(r.y) +r.z!==$&&A.am() +q=r.z=s.ax}return q}, +gim(){return new A.bc(new A.bbd(this),t.h2)}, +gp5(){return new A.bc(new A.bbe(this),t.h2)}, +gBH(){return new A.bc(new A.bbf(this),t.U)}, +gcw(){return new A.bc(new A.bbc(this),t.U)}, +gBI(){return B.a9v}, +giO(){return 20}} +A.bbd.prototype={ +$1(a){var s,r,q=this +if(a.n(0,B.o)){if(a.n(0,B.B)){s=q.a.geT().cy.a +return A.K(255,s>>>16&255,s>>>8&255,s&255)}s=q.a.geT().db.a +return A.K(97,s>>>16&255,s>>>8&255,s&255)}if(a.n(0,B.B)){if(a.n(0,B.K)){s=q.a.geT() +r=s.d +return r==null?s.b:r}if(a.n(0,B.A)){s=q.a.geT() +r=s.d +return r==null?s.b:r}if(a.n(0,B.y)){s=q.a.geT() +r=s.d +return r==null?s.b:r}return q.a.geT().c}if(a.n(0,B.K)){s=q.a.geT() +r=s.dy +return r==null?s.db:r}if(a.n(0,B.A)){s=q.a.geT() +r=s.dy +return r==null?s.db:r}if(a.n(0,B.y)){s=q.a.geT() +r=s.dy +return r==null?s.db:r}s=q.a.geT() +r=s.fr +return r==null?s.cx:r}, +$S:4} +A.bbe.prototype={ +$1(a){var s,r,q=this +if(a.n(0,B.o)){if(a.n(0,B.B)){s=q.a.geT().db.a +return A.K(31,s>>>16&255,s>>>8&255,s&255)}s=q.a.geT() +r=s.dx +s=(r==null?s.cy:r).a +return A.K(31,s>>>16&255,s>>>8&255,s&255)}if(a.n(0,B.B)){if(a.n(0,B.K))return q.a.geT().b +if(a.n(0,B.A))return q.a.geT().b +if(a.n(0,B.y))return q.a.geT().b +return q.a.geT().b}if(a.n(0,B.K)){s=q.a.geT() +r=s.dx +return r==null?s.cy:r}if(a.n(0,B.A)){s=q.a.geT() +r=s.dx +return r==null?s.cy:r}if(a.n(0,B.y)){s=q.a.geT() +r=s.dx +return r==null?s.cy:r}s=q.a.geT() +r=s.dx +return r==null?s.cy:r}, +$S:4} +A.bbf.prototype={ +$1(a){var s,r +if(a.n(0,B.B))return B.u +if(a.n(0,B.o)){s=this.a.geT().db.a +return A.K(31,s>>>16&255,s>>>8&255,s&255)}s=this.a.geT() +r=s.fr +return r==null?s.cx:r}, +$S:4} +A.bbc.prototype={ +$1(a){var s,r=this +if(a.n(0,B.B)){if(a.n(0,B.K)){s=r.a.geT().b +return A.K(31,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.n(0,B.A)){s=r.a.geT().b +return A.K(20,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.n(0,B.y)){s=r.a.geT().b +return A.K(31,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}return null}if(a.n(0,B.K)){s=r.a.geT().db.a +return A.K(31,s>>>16&255,s>>>8&255,s&255)}if(a.n(0,B.A)){s=r.a.geT().db.a +return A.K(20,s>>>16&255,s>>>8&255,s&255)}if(a.n(0,B.y)){s=r.a.geT().db.a +return A.K(31,s>>>16&255,s>>>8&255,s&255)}return null}, +$S:27} +A.aml.prototype={ +gJV(){return 12}, +geK(){return new A.bc(new A.bb5(this),t.h2)}, +gLE(){return 8}, +gMJ(){return 14}, +gZv(){return 48}, +gZw(){return 40}, +gOD(){return 60}, +gN2(){return B.xQ}, +gN9(){return 32}, +gNa(){return 52}, +gNc(){return B.adR}, +gad5(){return 300}, +gN1(){return null}} +A.bb5.prototype={ +$1(a){var s,r,q=this +if(a.n(0,B.o)){if(a.n(0,B.B)){s=q.a.b.db.a +return A.K(97,s>>>16&255,s>>>8&255,s&255)}s=q.a.b +r=s.dx +s=(r==null?s.cy:r).a +return A.K(97,s>>>16&255,s>>>8&255,s&255)}if(a.n(0,B.B)){if(a.n(0,B.K)){s=q.a.b +r=s.e +return r==null?s.c:r}if(a.n(0,B.A)){s=q.a.b +r=s.e +return r==null?s.c:r}if(a.n(0,B.y)){s=q.a.b +r=s.e +return r==null?s.c:r}s=q.a.b +r=s.e +return r==null?s.c:r}if(a.n(0,B.K)){s=q.a.b +r=s.dx +return r==null?s.cy:r}if(a.n(0,B.A)){s=q.a.b +r=s.dx +return r==null?s.cy:r}if(a.n(0,B.y)){s=q.a.b +r=s.dx +return r==null?s.cy:r}s=q.a.b +r=s.dx +return r==null?s.cy:r}, +$S:4} +A.Vj.prototype={ +cn(){this.d3() +this.cT() +this.es()}, +m(){var s=this,r=s.b_$ +if(r!=null)r.J(0,s.gej()) +s.b_$=null +s.aZ()}} +A.Vk.prototype={ +aR(){var s,r=this,q=null +r.b5() +s=A.bw(B.z,q,B.S,0,q,1,!r.a.c?0:1,r) +r.k9$=s +r.mP$=A.c_(B.bp,s,B.cx) +s=A.bw(B.z,q,B.b_,0,q,1,q,r) +r.oK$=s +r.uY$=A.c_(B.a3,s,q) +s=A.bw(B.z,q,B.e5,0,q,1,r.pF$||r.pE$?1:0,r) +r.tc$=s +r.uZ$=A.c_(B.a3,s,q) +s=A.bw(B.z,q,B.e5,0,q,1,r.pF$||r.pE$?1:0,r) +r.td$=s +r.v_$=A.c_(B.a3,s,q)}, +m(){var s=this,r=s.k9$ +r===$&&A.b() +r.m() +r=s.oK$ +r===$&&A.b() +r.m() +r=s.tc$ +r===$&&A.b() +r.m() +r=s.td$ +r===$&&A.b() +r.m() +s.akQ()}} +A.apr.prototype={} +A.aps.prototype={} +A.bbg.prototype={ +K(){return"_SwitchListTileType."+this.b}} +A.Ez.prototype={ +A(a){var s,r,q,p,o,n,m,l=this,k=null +switch(0){case 0:s=A.bsm(k,k,k,!1,B.C,k,k,k,B.kv,k,k,l.d,k,k,k,k,k,k,k,k,l.c) +break}switch(l.p1.a){case 0:r=l.id +q=s +break +case 1:case 2:q=l.id +r=s +break +default:r=k +q=r}p=A.r(a) +o=A.bjT(a) +n=o.a +n=n==null?k:n.L(A.aY(t.ui)) +m=n +if(m==null)m=p.ax.f +return new A.u8(A.bH(!1,k,k,k,!0,k,k,!1,k,q,k,k,new A.aWL(l),!1,m,k,k,l.go,k,l.fy,r,k),k)}} +A.aWL.prototype={ +$0(){var s=this.a +s.d.$1(!s.c)}, +$S:0} +A.EA.prototype={ +gv(a){var s=this +return A.X(s.gim(),s.gp5(),s.gBH(),s.gBI(),s.gjJ(),s.gii(),s.gcw(),s.giO(),s.x,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.a1(b)!==A.o(s))return!1 +return b instanceof A.EA&&b.gim()==s.gim()&&b.gp5()==s.gp5()&&b.gBH()==s.gBH()&&b.gBI()==s.gBI()&&b.gjJ()==s.gjJ()&&b.gii()==s.gii()&&b.gcw()==s.gcw()&&b.giO()==s.giO()&&!0}, +gim(){return this.a}, +gp5(){return this.b}, +gBH(){return this.c}, +gBI(){return this.d}, +gjJ(){return this.e}, +gii(){return this.f}, +gcw(){return this.r}, +giO(){return this.w}} +A.amm.prototype={} +A.z5.prototype={ +gv(a){var s=this +return A.X(s.a,s.gia(),s.c,s.gwS(),s.gAU(),s.f,s.ghR(),s.gGr(),s.gBK(),s.gcw(),s.ghn(),s.Q,s.gBw(),B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r===b)return!0 +if(J.a1(b)!==A.o(r))return!1 +if(b instanceof A.z5)if(J.i(b.a,r.a))if(J.i(b.gia(),r.gia()))if(b.c==r.c)if(J.i(b.gwS(),r.gwS()))if(J.i(b.gAU(),r.gAU()))if(J.i(b.f,r.f))if(J.i(b.ghR(),r.ghR()))if(J.i(b.gGr(),r.gGr()))if(J.i(b.gBK(),r.gBK()))if(b.gcw()==r.gcw())if(b.ghn()==r.ghn())s=b.gBw()==r.gBw() +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +return s}, +gia(){return this.b}, +gwS(){return this.d}, +gAU(){return this.e}, +ghR(){return this.r}, +gGr(){return this.w}, +gBK(){return this.x}, +gcw(){return this.y}, +ghn(){return this.z}, +gBw(){return this.as}} +A.ams.prototype={} +A.qW.prototype={ +aBV(a,b,c,d){var s,r=this,q=b==null +if(!q)r.a.sk(0,b) +q=q?r.d:b +s=r.a +return new A.qW(s,r.b,c,q,d,$.b5())}, +gek(a){var s=this.a +return s==null?null:s}, +a_g(a,b,c){var s,r=this,q=r.d +if(a===q||r.c<2)return +r.e=q +r.d=a +q=c!=null&&c.a>0 +s=r.f+1 +if(q){r.f=s +r.ag() +q=r.a +q.toString +s=r.d +b.toString +q.z=B.aI +q.jW(s,b,c).adu(new A.aWZ(r))}else{r.f=s +r.a.sk(0,a);--r.f +r.ag()}}, +a_f(a){return this.a_g(a,null,null)}, +sc6(a,b){var s,r=this.a,q=r.x +q===$&&A.b() +s=this.d +if(b===q-s)return +r.sk(0,b+s)}, +m(){var s=this.a +if(s!=null)s.m() +this.a=null +this.eH()}, +gt(a){return this.c}} +A.aWZ.prototype={ +$0(){var s=this.a +if(s.a!=null){--s.f +s.ag()}}, +$S:0} +A.TN.prototype={ +dr(a){return this.r!==a.r||this.f!==a.f}} +A.J9.prototype={ +a8(){return new A.af5(null,null,B.m)}, +gt(a){return this.c}} +A.af5.prototype={ +aR(){var s,r,q=this +q.b5() +s=q.a +r=s.c +q.d=A.bsq(null,s.d,r,q)}, +m(){var s=this.d +s===$&&A.b() +s.m() +this.akF()}, +A(a){var s=this.d +s===$&&A.b() +return new A.TN(s,A.aae(a),this.a.f,null)}, +aY(a){var s,r,q,p,o,n=this +n.br(a) +s=n.a.c +if(a.c!==s){r=n.d +r===$&&A.b() +q=r.e +p=r.d +if(p>=s){o=Math.max(0,s-1) +q=p}else o=null +n.d=r.aBV(null,o,s,q)}n.a.toString}, +$iaN:1} +A.V8.prototype={ +m(){var s=this,r=s.c4$ +if(r!=null)r.J(0,s.ghI()) +s.c4$=null +s.aZ()}, +cn(){this.d3() +this.cT() +this.hJ()}} +A.uV.prototype={ +eY(a,b){var s,r +if(a instanceof A.uV){s=A.bn(a.b,this.b,b) +r=A.fx(a.c,this.c,b) +r.toString +return new A.uV(null,s,r)}return this.Of(a,b)}, +eZ(a,b){var s,r +if(a instanceof A.uV){s=A.bn(this.b,a.b,b) +r=A.fx(this.c,a.c,b) +r.toString +return new A.uV(null,s,r)}return this.Og(a,b)}, +zP(a){return new A.bco(this,this.a,a)}, +Io(a,b){var s=this.c.L(b).Es(a),r=s.a,q=this.b.b,p=s.d-q +return new A.I(r,p,r+(s.c-r),p+q)}, +GM(a,b){var s,r=this.a +if(r!=null){s=$.as().cZ() +s.fT(r.e2(this.Io(a,b))) +return s}r=$.as().cZ() +r.oy(this.Io(a,b)) +return r}} +A.bco.prototype={ +kk(a,b,c){var s,r,q,p=c.e,o=b.a,n=b.b,m=new A.I(o,n,o+p.a,n+p.b) +p=c.d +p.toString +o=this.c +n=this.b +s=n.b +if(o!=null){r=$.as().bn() +r.sa5(0,s.a) +q=n.Io(m,p) +p=o.a +n=o.b +s=o.d +a.de(A.a6J(q,o.c,s,p,n),r)}else{r=s.lu() +r.svS(B.Ko) +q=n.Io(m,p).dZ(-(s.b/2)) +p=q.d +a.jF(new A.l(q.a,p),new A.l(q.c,p),r)}}} +A.a9P.prototype={ +K(){return"TabBarIndicatorSize."+this.b}} +A.Ol.prototype={ +K(){return"TabAlignment."+this.b}} +A.z3.prototype={ +amY(){var s=null,r=A.O(this.c,s,B.KH,s,!1,s,s,s) +return r}, +A(a){var s=this.amY() +return A.cZ(A.f1(s,null,1),46,null)}, +gr3(){return B.adZ}, +$iqF:1, +geB(){return null}} +A.amw.prototype={ +azv(a){var s,r,q={},p=A.r(a),o=A.r(a).ep,n=t.m.a(this.c),m=o.e +if(m==null)m=this.z.gAU() +q.a=m +q.b=null +if(m instanceof A.Gf){q.b=m.c.$1(B.ez) +q.a=m.c.$1(B.fH)}else{s=o.w +if(s==null)if(p.y){r=this.z.gGr() +r.toString +s=r}else{r=A.K(178,m.gk(m)>>>16&255,m.gk(m)>>>8&255,m.gk(m)&255) +s=r}q.b=s}return A.vf(new A.bbw(q,n))}, +A(a){var s,r,q,p=this,o=null,n=A.r(a).ep,m=t.m.a(p.c),l=p.r,k=l?B.fH:B.ez,j=p.e,i=n.r +if(i==null){i=p.z.ghR() +i.toString}s=i.a7V(!0) +i=n.x +j=i==null?j:i +if(j==null){j=p.z.gBK() +j.toString}r=j.a7V(!0) +if(l){l=A.c1(s,r,m.gk(m)) +l.toString +q=l}else{l=A.c1(r,s,m.gk(m)) +l.toString +q=l}l=p.azv(a).c.$1(k) +j=q.co(l) +return A.fw(A.mP(p.Q,new A.cX(24,o,o,o,o,l,o,o)),o,o,B.aR,!0,j,o,o,B.aq)}} +A.bbw.prototype={ +$1(a){var s,r,q=this +if(a.n(0,B.B)){s=q.a +r=q.b +r=A.W(s.a,s.b,r.gk(r)) +r.toString +return r}s=q.a +r=q.b +r=A.W(s.b,s.a,r.gk(r)) +r.toString +return r}, +$S:4} +A.amv.prototype={ +cj(){var s,r,q,p,o=this +o.ahQ() +s=o.a3$ +r=A.a([],t.up) +for(q=t.US;s!=null;){p=s.b +p.toString +q.a(p) +r.push(p.a.a) +s=p.am$}switch(o.ar.a){case 0:B.b.fu(r,0,o.gq(o).a) +break +case 1:r.push(o.gq(o).a) +break}q=o.ar +q.toString +p=o.gq(o) +o.pG.$3(r,q,p.a)}} +A.amu.prototype={ +aX(a){var s=this,r=null,q=s.Nx(a) +q.toString +q=new A.amv(s.ax,s.e,s.f,s.r,s.w,q,s.y,r,B.l,A.aB(t.O5),A.aT(4,A.OG(r,r,r,r,r,B.b3,B.j,r,1,B.aq),!1,t.mi),!0,0,r,r,A.aB(t.T)) +q.aW() +q.I(0,r) +return q}, +b4(a,b){this.agW(a,b) +b.pG=this.ax}} +A.Rn.prototype={ +aU(){this.as=!0}, +aaj(a,b){var s,r,q,p,o,n,m,l,k,j,i=this +switch(i.y.a){case 0:s=i.x +r=s[b+1] +q=s[b] +break +case 1:s=i.x +r=s[b] +q=s[b+1] +break +default:r=null +q=null}if(i.d===B.oY){s=i.f[b] +s=$.ar.al$.z.i(0,s) +p=s.gq(s).a +o=i.w[b].L(i.y) +r+=(q-r-(p+o.gdD()))/2+o.a +q=r+p}o=i.e +s=r+(q-r) +n=0+a.b +m=new A.I(r,0,s,n) +l=o.gdD() +k=o.gcC(o) +j=o.gcH(o) +if(!(s-r>=l&&n-0>=k+j))throw A.c(A.ty("indicatorPadding insets should be less than Tab Size\nRect Size : "+m.gq(m).j(0)+", Insets: "+o.j(0))) +return o.Es(m)}, +aD(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g=this,f=null +g.as=!1 +if(g.Q==null)g.Q=g.c.zP(g.geE()) +s=g.b +r=s.d +s=s.gek(s).x +s===$&&A.b() +q=r>s +p=q?B.e.eA(s):B.e.eU(s) +o=B.f.hs(p,0,g.x.length-2) +p=q?o+1:o-1 +n=B.e.hs(p,0,g.x.length-2) +s=g.z=A.bry(g.aaj(b,o),g.aaj(b,n),Math.abs(s-o)) +p=s.c +m=s.a +l=s.d +s=s.b +k=g.y +j=g.r +if(j!=null){i=$.as().bn() +i.sa5(0,j) +i.sfB(1) +j=b.b +a.jF(new A.l(0,j),new A.l(b.a,j),i)}j=g.Q +j.toString +h=g.z +j.kk(a,new A.l(h.a,h.b),new A.xa(f,f,f,k,new A.V(p-m,l-s),f))}, +fw(a){var s=this +return s.as||s.b!==a.b||!s.c.l(0,a.c)||s.f.length!==a.f.length||!A.e4(s.x,a.x)||s.y!=a.y}} +A.adU.prototype={ +gbP(a){var s=this.a +s=s.gek(s) +s.toString +return s}, +e8(a){var s=this.a +if(s.gek(s)!=null)this.YF(a)}, +J(a,b){var s=this.a +if(s.gek(s)!=null)this.YE(0,b)}, +gk(a){return A.bPn(this.a)}} +A.FH.prototype={ +gbP(a){var s=this.a +s=s.gek(s) +s.toString +return s}, +e8(a){var s=this.a +if(s.gek(s)!=null)this.YF(a)}, +J(a,b){var s=this.a +if(s.gek(s)!=null)this.YE(0,b)}, +gk(a){var s=this.a,r=s.gek(s).x +r===$&&A.b() +return A.S(Math.abs(A.S(r,0,s.c-1)-this.b),0,1)}} +A.TJ.prototype={ +pr(a,b){var s,r,q,p=this,o=p.ar +if(!o){o=p.ax +o.toString +o=p.ar=o!==0}if(!o||p.aG){p.aG=!1 +o=p.av +s=p.ax +s.toString +r=o.r +r.toString +p.at=o.a4Q(r,s,a,b) +q=!1}else q=!0 +return p.Zj(a,b)&&q}} +A.amr.prototype={ +TY(a,b,c){var s=null,r=new A.TJ(this.as,B.fF,a,b,!0,s,A.ed(!1,t.y),$.b5()) +r.OG(b,s,!0,c,a) +r.OH(b,s,s,!0,c,a) +return r}} +A.Om.prototype={ +gr3(){var s,r,q,p,o,n +for(s=this.c,r=s.length,q=t.ZQ,p=46,o=0;o>>") +q.x=A.aa(new A.ad(s,new A.bbs(),r),!0,r.h("ax.E")) +q.y=A.aT(q.a.c.length,B.a4,!0,t.A0)}, +glW(){var s,r=this,q=null,p=r.c +p.toString +if(A.r(p).y){p=r.a +p.toString +s=r.c +s.toString +return new A.bby(s,p.e,q,q,B.oY,q,q,q,q,q,q,q,q,q,q)}else{p=r.c +p.toString +return new A.bbx(p,r.a.e,q,q,B.aeU,q,q,q,q,q,q,q,q,q,q)}}, +ar5(a){var s,r,q,p,o,n,m,l=this,k=null,j=l.c +j.toString +s=A.r(j) +j=l.c +j.toString +r=A.r(j).ep +l.a.toString +j=r.a +if(j!=null)return j +if(s.y){j=r.b +if(j==null)j=l.glW().gia() +q=j}else{j=l.c +j.toString +j=A.r(j).dy +q=j}l.a.toString +j=q.gk(q) +p=l.c +p.toString +p=A.aHn(p,t.zd) +if(p==null)p=k +else{p=p.a0 +p=p==null?k:p.gk(p)}p=j===p +j=p +if(j)q=B.n +l.a.toString +o=a===B.oY +j=s.y +n=j&&o?Math.max(2,3):2 +m=j&&o?new A.dg(new A.bq(n,n),new A.bq(n,n),B.I,B.I):k +return new A.uV(m,new A.b9(q,n,B.M,-1),B.a4)}, +gw2(){var s=this.e +return(s==null?null:s.gek(s))!=null}, +DO(){var s,r=this,q=r.a.d +if(q==null){s=r.c +s.toString +q=A.bia(s)}if(q==r.e)return +if(r.gw2()){s=r.e +s.gek(s).J(0,r.gw9()) +r.e.J(0,r.gQI())}r.e=q +if(q!=null){s=q.gek(q) +s.cL() +s=s.dB$ +s.b=!0 +s.a.push(r.gw9()) +r.e.P(0,r.gQI()) +r.r=r.e.d}}, +QU(){var s,r,q,p,o,n,m,l,k,j,i=this,h=i.c +h.toString +s=A.r(h) +h=i.c +h.toString +r=A.r(h).ep +i.a.toString +q=r.c +if(q==null){h=i.glW().c +h.toString +p=h}else p=q +if(!i.gw2())h=null +else{h=i.e +h.toString +o=i.ar5(p) +i.a.toString +if(q==null){n=i.glW().c +n.toString}else n=q +m=i.a +m.toString +l=i.x +l===$&&A.b() +k=i.f +if(s.y){m=m.as +if(m==null)m=r.d +if(m==null)m=i.glW().gwS()}else m=null +j=i.y +j===$&&A.b() +h=new A.Rn(h,o,n,B.a4,l,m,j,h.gek(h)) +if(k!=null){o=k.x +k=k.y +h.x=o +h.y=k}}i.f=h}, +cp(){this.ei() +this.DO() +this.QU()}, +aY(a){var s,r,q,p,o,n,m,l=this +l.br(a) +if(l.a.d!=a.d){l.DO() +l.QU() +s=l.d +if(s!=null&&s.f.length!==0){r=B.b.gaI(s.f) +if(r instanceof A.TJ)r.aG=!0}}else{if(B.a4.l(0,B.a4)){l.a.toString +s=!1}else s=!0 +if(s)l.QU()}s=l.a.c.length +q=l.x +q===$&&A.b() +p=q.length +if(s>p){o=s-p +n=J.om(o,t.yi) +for(s=t.C,m=0;m0?n.Jr(m-1):null +m=n.r +m.toString +r=n.Jr(m) +m=n.r +m.toString +q=m0){k=p-1 +p=a6.e +p.toString +n=A.a([],t.x8) +q[k]=a6.CF(q[k],!1,new A.jL(new A.FH(p,k),new A.bb(n,t.jc),0),a6.glW())}p=a6.r +p.toString +if(p0||r.d.f===0)return +s=r.d.d +if(s!==r.r){r.r=s +r.aDM()}}, +aDM(){var s,r,q,p,o=this +if(o.c!=null){s=o.e +s===$&&A.b() +r=t.gQ.a(B.b.gaI(s.f)) +s=r.giD(r) +q=o.r +q.toString +q=s===q +s=q}else s=!0 +if(s)return +s=o.r +s.toString +q=o.d +p=q.e +q=q.b +if(Math.abs(s-p)===1)o.JN(q) +else o.JO(q)}, +JN(a){return this.aDL(a)}, +aDL(a){var s=0,r=A.y(t.H),q,p=this,o +var $async$JN=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:o=p.r +s=a.a===B.F.a?3:5 +break +case 3:o.toString +p.Iw(o) +s=4 +break +case 5:o.toString +s=6 +return A.t(p.CD(o,B.aL,a),$async$JN) +case 6:case 4:if(p.c!=null)p.a7(new A.bbt(p)) +q=A.d3(null,t.H) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$JN,r)}, +JO(a){return this.aDN(a)}, +aDN(a){var s=0,r=A.y(t.H),q=this,p,o,n +var $async$JO=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:o=q.d.e +n=q.r +n.toString +p=n>o?n-1:n+1 +q.a7(new A.bbu(q,p,o)) +q.Iw(p) +n=q.r +s=a.a===B.F.a?2:4 +break +case 2:n.toString +q.Iw(n) +s=3 +break +case 4:n.toString +s=5 +return A.t(q.CD(n,B.aL,a),$async$JO) +case 5:case 3:if(q.c!=null)q.a7(new A.bbv(q)) +return A.w(null,r)}}) +return A.x($async$JO,r)}, +a4N(){var s,r,q=this.d +q.toString +s=this.e +s===$&&A.b() +r=t.gQ.a(B.b.gaI(s.f)) +s=r.giD(r) +s.toString +q.sc6(0,A.S(s-this.d.d,-1,1))}, +aBX(a){var s,r,q,p,o=this +if(o.w>0||o.x>0)return!1 +if(a.j6$!==0)return!1 +if(!o.gw2())return!1;++o.x +if(a instanceof A.kw&&o.d.f===0){s=o.e +s===$&&A.b() +r=t.gQ +q=r.a(B.b.gaI(s.f)) +s=q.giD(q) +s.toString +p=o.d +if(Math.abs(s-p.d)>1){q=r.a(B.b.gaI(o.e.f)) +s=q.giD(q) +s.toString +p.a_f(B.e.bi(s)) +o.r=o.d.d}o.a4N()}else if(a instanceof A.oP){s=o.d +s.toString +r=o.e +r===$&&A.b() +q=t.gQ.a(B.b.gaI(r.f)) +r=q.giD(q) +r.toString +s.a_f(B.e.bi(r)) +r=o.d +o.r=r.d +if(r.f===0)o.a4N()}--o.x +return!1}, +A(a){var s,r,q,p=this +p.a.toString +s=p.e +s===$&&A.b() +r=B.Fv.pt(B.qI) +q=p.f +q===$&&A.b() +return new A.dP(p.gaBW(),new A.D2(B.aw,!1,s,new A.D0(r),A.bs7(q,!0,!0,!0),B.C,B.E,null),null,t.WA)}} +A.bbt.prototype={ +$0(){var s=this.a +s.f=A.aGG(s.a.d)}, +$S:0} +A.bbu.prototype={ +$0(){var s,r,q,p=this.a,o=p.f +o===$&&A.b() +o=p.f=A.aa(o,!1,t.l7) +s=this.b +r=o[s] +q=this.c +o[s]=o[q] +B.b.p(p.f,q,r)}, +$S:0} +A.bbv.prototype={ +$0(){var s=this.a +s.f=A.aGG(s.a.d)}, +$S:0} +A.bbx.prototype={ +gia(){return A.r(this.at).dy}, +gAU(){var s=A.r(this.at).p2.y.b +s.toString +return s}, +ghR(){return A.r(this.at).p2.y}, +gBK(){return A.r(this.at).p2.y}, +ghn(){return A.r(this.at).x}, +gBw(){return this.ax?B.Ku:B.oX}} +A.bby.prototype={ +gqn(){var s,r=this,q=r.ax +if(q===$){s=A.r(r.at) +r.ax!==$&&A.am() +q=r.ax=s.ax}return q}, +ga4R(){var s,r=this,q=r.ay +if(q===$){s=A.r(r.at) +r.ay!==$&&A.am() +q=r.ay=s.p3}return q}, +gwS(){var s=this.gqn(),r=s.dx +return r==null?s.cy:r}, +gia(){return this.gqn().b}, +gAU(){return this.gqn().b}, +ghR(){return this.ga4R().x}, +gGr(){var s=this.gqn(),r=s.dy +return r==null?s.db:r}, +gBK(){return this.ga4R().x}, +gcw(){return new A.bc(new A.bbz(this),t.U)}, +ghn(){return A.r(this.at).x}, +gBw(){return this.ch?B.Ku:B.oX}} +A.bbz.prototype={ +$1(a){var s,r=this +if(a.n(0,B.B)){if(a.n(0,B.K)){s=r.a.gqn().b +return A.K(31,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.n(0,B.A)){s=r.a.gqn().b +return A.K(20,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.n(0,B.y)){s=r.a.gqn().b +return A.K(31,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}return null}if(a.n(0,B.K)){s=r.a.gqn().b +return A.K(31,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.n(0,B.A)){s=r.a.gqn().db.a +return A.K(20,s>>>16&255,s>>>8&255,s&255)}if(a.n(0,B.y)){s=r.a.gqn().db.a +return A.K(31,s>>>16&255,s>>>8&255,s&255)}return null}, +$S:27} +A.aod.prototype={} +A.aol.prototype={} +A.EF.prototype={ +t5(a){var s,r=null,q=A.r(a),p=q.ax +if(A.r(a).y)s=new A.amG(a,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,B.S,!0,B.X,r) +else{s=p.db.a +s=A.Ox(B.X,B.S,B.u,B.u,A.K(97,s>>>16&255,s>>>8&255,s&255),B.bn,0,!0,B.bB,p.b,B.l4,B.oO,A.bvJ(a),q.k2,B.es,B.iK,q.e,q.p3.as,q.z)}return s}, +Gh(a){var s +a.ae(t.if) +s=A.r(a) +return s.iz.a}} +A.TP.prototype={ +L(a){if(a.n(0,B.o))return this.b +return this.a}, +j(a){return"{disabled: "+A.h(this.b)+", otherwise: "+A.h(this.a)+"}"}} +A.amF.prototype={ +L(a){var s +if(a.n(0,B.K)){s=this.a +return A.K(31,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.n(0,B.A)){s=this.a +return A.K(10,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.n(0,B.y)){s=this.a +return A.K(31,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}return null}, +j(a){var s=this.a +return"{hovered: "+A.K(10,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255).j(0)+", focused,pressed: "+A.K(31,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255).j(0)+", otherwise: null}"}} +A.amE.prototype={ +L(a){if(a.n(0,B.o))return this.b +return this.a}} +A.amI.prototype={ +t5(a){var s,r=A.r(a).y?B.RN:B.aT,q=A.cT(a,B.bb) +q=q==null?null:q.c +s=A.AB(r,B.e6,B.e6,q==null?1:q) +return this.aiQ(a).wH(new A.bE(s,t.Ak))}} +A.amJ.prototype={ +A(a){var s,r=null,q=A.cT(a,B.bb),p=q==null?r:q.c +if(p==null)p=1 +if(p<=1)s=8 +else{q=A.ag(8,4,Math.min(p-1,1)) +q.toString +s=q}return A.dd(A.a([this.d,A.cZ(r,r,s),new A.og(1,B.f4,this.c,r)],t.p),B.w,B.D,B.aa)}, +geB(a){return this.d}} +A.amG.prototype={ +gDH(){var s,r=this,q=r.fr +if(q===$){s=A.r(r.dy) +r.fr!==$&&A.am() +q=r.fr=s.ax}return q}, +ghC(){return new A.bE(A.r(this.dy).p3.as,t.wG)}, +gbY(a){return B.bE}, +geW(){return new A.bc(new A.bbB(this),t.U)}, +gcw(){return new A.bc(new A.bbD(this),t.U)}, +gbR(a){return B.bE}, +gc9(){return B.bE}, +gfl(a){return B.fm}, +gdE(a){return new A.bE(A.bvJ(this.dy),t.Ak)}, +glf(){return B.kt}, +gld(){return B.dN}, +gcG(a){return B.dM}, +gii(){return new A.bc(new A.bbC(),t.Y6)}, +geF(){return A.r(this.dy).z}, +glt(){return A.r(this.dy).e}, +ghn(){return A.r(this.dy).x}} +A.bbB.prototype={ +$1(a){var s +if(a.n(0,B.o)){s=this.a.gDH().db.a +return A.K(97,s>>>16&255,s>>>8&255,s&255)}return this.a.gDH().b}, +$S:4} +A.bbD.prototype={ +$1(a){var s +if(a.n(0,B.K)){s=this.a.gDH().b +return A.K(31,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.n(0,B.A)){s=this.a.gDH().b +return A.K(20,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.n(0,B.y)){s=this.a.gDH().b +return A.K(31,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}return null}, +$S:27} +A.bbC.prototype={ +$1(a){if(a.n(0,B.o))return B.bn +return B.bB}, +$S:60} +A.apt.prototype={} +A.Ow.prototype={ +gv(a){return J.T(this.a)}, +l(a,b){if(b==null)return!1 +if(this===b)return!0 +if(J.a1(b)!==A.o(this))return!1 +return b instanceof A.Ow&&J.i(b.a,this.a)}} +A.amH.prototype={} +A.amM.prototype={ +B9(a){var s +this.Zk(a) +s=this.a +if(s.ghG()&&this.b){s=s.gaq().gR() +s.toString +s.of()}}, +FL(a){}, +Bb(a){var s +this.aiS(a) +s=this.w +s.a3A() +s.a.toString}, +Ba(a){var s,r +this.aiR(a) +if(this.a.ghG()){s=this.w +r=s.c +r.toString +switch(A.r(r).r.a){case 2:case 4:break +case 0:case 1:case 3:case 5:s=s.c +s.toString +A.aBf(s) +break}}}} +A.OA.prototype={ +a8(){var s=null +return new A.TQ(new A.bo(s,t.NE),s,A.F(t.yb,t.Q),s,!0,s,B.m)}} +A.TQ.prototype={ +gqo(){var s=this.a.d +return s}, +gkG(){var s=this.a.e +if(s==null){s=this.e +if(s==null){s=A.wT(!0,null,!0,!0,null,null,!1) +this.e=s}}return s}, +ga0w(){this.a.toString +var s=this.c +s.toString +A.r(s) +return B.a9z}, +gUX(){var s=this.x +s===$&&A.b() +return s}, +ghG(){return this.a.xr}, +gwb(){var s=this.a.p2 +if(s==null)s=!0 +return s}, +ga1Q(){var s,r=this.a.id +if(r!=null)if(r>0){r=this.gqo().a.a +r=r.length===0?B.bS:new A.fe(r) +r=r.gt(r) +s=this.a.id +s.toString +s=r>s +r=s}else r=!1 +else r=!1 +return r}, +gyM(){var s=this.a.f +return s.ax!=null||this.ga1Q()}, +gCX(){this.a.toString +var s=this.c +s.toString +s=A.r(s) +return s.ax.at}, +aqY(){var s,r,q,p,o,n,m,l,k=this,j=k.c +j.toString +j=A.A(j,B.ax,t.D) +j.toString +s=k.c +s.toString +r=A.r(s) +s=k.a.f +s=s.Tb(r.d) +k.gwb() +q=k.a +p=q.f.as +o=s.aGe(!0,p==null?q.dx:p) +s=o.p3==null +if(!s||o.p2!=null)return o +q=k.gqo().a.a +q=q.length===0?B.bS:new A.fe(q) +n=q.gt(q) +if(s)if(o.p2==null)k.a.toString +s=k.a.id +if(s==null)return o +m=""+n +if(s>0){m+="/"+A.h(s) +l=j.acj(B.f.hs(s-n,0,s))}else l="" +if(k.ga1Q()){j=o.ax +if(j==null)j="" +s=o.ay +s=k.c +if(r.y){s.toString +q=A.r(s).p3.Q +q.toString +s=q.co(A.r(s).ax.at)}else{s.toString +q=A.r(s).p3.Q +q.toString +s=q.co(A.r(s).ax.at)}return o.aGs(s,m,j,l)}return o.aGd(m,l)}, +aR(){var s,r=this +r.b5() +r.w=new A.amM(r,r) +r.a.toString +s=r.gkG() +r.a.toString +r.gwb() +s.seJ(!0) +r.gkG().P(0,r.gJu())}, +ga5_(){var s,r=this.c +r.toString +r=A.cT(r,B.fR) +s=r==null?null:r.ax +switch((s==null?B.fp:s).a){case 0:this.a.toString +this.gwb() +return!0 +case 1:return!0}}, +cp(){this.alh() +this.gkG().seJ(this.ga5_())}, +aY(a){var s,r,q=this +q.ali(a) +s=q.a +r=a.e +if(s.e!=r){s=r==null?q.e:r +if(s!=null)s.J(0,q.gJu()) +s=q.a.e +if(s==null)s=q.e +if(s!=null)s.P(0,q.gJu())}q.gkG().seJ(q.ga5_()) +if(q.gkG().gdt())q.a.toString}, +kn(a,b){var s=this.d +if(s!=null)this.rb(s,"controller")}, +ghZ(){return this.a.Z}, +m(){var s,r=this +r.gkG().J(0,r.gJu()) +s=r.e +if(s!=null)s.m() +s=r.d +if(s!=null){s.apg() +s.ai7()}r.alj()}, +a3A(){var s=this.y.gR() +if(s!=null)s.WQ()}, +aB2(a){var s=this,r=s.w +r===$&&A.b() +if(!r.b)return!1 +if(a===B.aG)return!1 +s.a.toString +s.gwb() +if(a===B.bz||a===B.kT)return!0 +if(s.gqo().a.a.length!==0)return!0 +return!1}, +aC1(){this.a7(new A.bbG())}, +aC3(a,b){var s,r=this,q=r.aB2(b) +if(q!==r.r)r.a7(new A.bbI(r,q)) +s=r.c +s.toString +switch(A.r(s).r.a){case 2:case 4:case 3:case 5:case 1:case 0:if(b===B.bz){s=r.y.gR() +if(s!=null)s.mc(a.gew())}break}s=r.c +s.toString +switch(A.r(s).r.a){case 2:case 1:case 0:break +case 4:case 3:case 5:if(b===B.aD){s=r.y.gR() +if(s!=null)s.kc()}break}}, +atL(){var s=this.gqo().a.b +if(s.a===s.b)this.y.gR().X0()}, +a1E(a){if(a!==this.f)this.a7(new A.bbH(this,a))}, +gtL(){var s,r,q,p,o=this,n=o.a.bO +if(n==null)s=null +else s=J.lK(n.slice(0),A.ab(n).c) +if(s!=null){n=o.y.gR() +n.toString +n=A.cU(n) +r=o.gqo().a +q=o.a.f +p=new A.HU(!0,"EditableText-"+n,s,r,q.y)}else p=B.pY +n=o.y.gR().gtL() +return A.bst(n.ax,!0,p,!1,!0,n.x,!0,n.z,n.a,n.as,n.c,n.b,n.f,n.r,n.Q)}, +gRf(){var s=this,r=A.aY(t.ui) +s.gwb() +if(s.f)r.G(0,B.A) +if(s.gkG().gdt())r.G(0,B.y) +if(s.gyM())r.G(0,B.cm) +return r}, +A(e2){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,d1,d2,d3,d4,d5,d6,d7=this,d8=null,d9={},e0=A.r(e2),e1=e2.ae(t.Uf) +if(e1==null)e1=B.f_ +if(e0.y){s=A.r(e2).p3.y +s.toString}else{s=e0.p3.w +s.toString}r=d7.c +r.toString +q=A.r(r) +r=d7.c +if(q.y){r.toString +r=A.bPM(r)}else{r.toString +r=A.bPL(r)}p=t.em +o=A.cg(r,d7.gRf(),p) +n=A.cg(s,d7.gRf(),p).cU(o).cU(d7.a.y) +d7.a.toString +s=e0.ax +m=d7.gqo() +l=d7.gkG() +r=A.a([],t.VS) +p=d7.a.p1 +if(p!=null)B.b.I(r,p) +p=d7.a.id +if(p!=null)r.push(new A.a2B(p,d7.ga0w())) +switch(A.cb().a){case 2:case 4:k=A.bEc(d7.a.b6) +break +case 0:case 1:case 3:case 5:k=A.bKI(d7.a.b6) +break +default:k=d8}p=d7.a +j=p.y1 +i=p.RG +h=p.R8 +d9.a=null +switch(e0.r.a){case 2:g=A.iS(e2) +d7.x=!0 +j=$.bmV() +if(d7.gyM())f=d7.gCX() +else{d7.a.toString +p=e1.w +f=p==null?g.gil():p}e=e1.x +if(e==null){e1=g.gil() +e=A.K(102,e1.gk(e1)>>>16&255,e1.gk(e1)>>>8&255,e1.gk(e1)&255)}d=new A.l(-2/A.aS(e2,B.d7,t.l).w.b,0) +c=e +b=!0 +i=!0 +h=B.dS +break +case 4:g=A.iS(e2) +i=d7.x=!1 +j=$.bmU() +if(d7.gyM())f=d7.gCX() +else{d7.a.toString +p=e1.w +f=p==null?g.gil():p}e=e1.x +if(e==null){e1=g.gil() +e=A.K(102,e1.gk(e1)>>>16&255,e1.gk(e1)>>>8&255,e1.gk(e1)&255)}d=new A.l(-2/A.aS(e2,B.d7,t.l).w.b,0) +d9.a=new A.bbK(d7) +c=d8 +b=!0 +h=B.dS +break +case 0:case 1:d7.x=!1 +j=$.bnc() +if(d7.gyM())f=d7.gCX() +else{d7.a.toString +p=e1.w +f=p==null?s.b:p}e=e1.x +if(e==null){e1=s.b +e=A.K(102,e1.gk(e1)>>>16&255,e1.gk(e1)>>>8&255,e1.gk(e1)&255)}c=d8 +d=c +b=!1 +i=!1 +break +case 3:d7.x=!1 +j=$.bh4() +if(d7.gyM())f=d7.gCX() +else{d7.a.toString +p=e1.w +f=p==null?s.b:p}e=e1.x +if(e==null){e1=s.b +e=A.K(102,e1.gk(e1)>>>16&255,e1.gk(e1)>>>8&255,e1.gk(e1)&255)}c=d8 +d=c +b=!1 +i=!1 +break +case 5:d7.x=!1 +j=$.bh4() +if(d7.gyM())f=d7.gCX() +else{d7.a.toString +p=e1.w +f=p==null?s.b:p}e=e1.x +if(e==null){e1=s.b +e=A.K(102,e1.gk(e1)>>>16&255,e1.gk(e1)>>>8&255,e1.gk(e1)&255)}d9.a=new A.bbL(d7) +c=d8 +d=c +b=!1 +i=!1 +break +default:c=d8 +e=c +f=e +d=f +b=d}e1=d7.d5$ +d7.a.toString +d7.gwb() +p=d7.a +a=p.fy +a0=p.go +a1=d7.r +a2=p.b8 +a3=p.r +a4=p.w +a5=p.x +a6=p.z +a7=p.Q +a8=p.at +a9=p.ax +b0=p.ay +b1=p.ch +b2=p.cx +b3=p.cy +b4=p.dx +p=p.dy +b5=l.gdt()?e:d8 +b6=d7.a +b7=b6.xr +b8=b7?j:d8 +b9=b6.k2 +c0=b6.k3 +c1=b6.k4 +c2=b6.ok +c3=b6.cO +c4=b6.p3 +c5=b6.p4 +c6=b6.ry +c7=b6.to +c8=b6.x2 +c9=b6.y2 +d0=b6.bQ +d1=b6.cb +d2=b6.B +d3=b6.ar +b6=b6.aG +d4=$.bml() +e1=A.P1(e1,A.bpi(!0,c,d7,B.bU,a9,B.dv,d2,d3,b6,m,f,c5,d,i,h,c4,c9,!0,b7,!0,!1,l,!0,r,d7.y,s.a,a3,d4,b4,p,B.cw,b1,b0,c2,b9,c0,d7.gaC2(),d7.gatK(),c1,c3,b,!1,!0,"editable",!0,d0,c8,d1,b5,b8,c6,c7,a0,a1,b2,b3,k,a6,n,a7,a5,a8,d8,a4,d8,B.aq,a,a2)) +d7.a.toString +d5=A.h1(new A.vg(A.a([l,m],t.Eo)),new A.bbM(d7,l,m),new A.i5(e1,d8)) +d7.a.toString +d6=A.cg(B.anQ,d7.gRf(),t.Pb) +d9.b=null +if(d7.ga0w()!==B.a9y){e1=d7.a.id +e1=e1!=null&&e1>0}else e1=!1 +if(e1)d9.b=d7.a.id +d7.gwb() +e1=d7.w +e1===$&&A.b() +return A.mX(A.aa2(A.tK(A.h1(m,new A.bbN(d9,d7),e1.a7d(B.aN,d5)),!1,d8),d8,d8),d6,d8,new A.bbO(d7),new A.bbP(d7),d8)}, +gaq(){return this.y}} +A.bbG.prototype={ +$0(){}, +$S:0} +A.bbI.prototype={ +$0(){this.a.r=this.b}, +$S:0} +A.bbH.prototype={ +$0(){this.a.f=this.b}, +$S:0} +A.bbK.prototype={ +$0(){var s=this.a +if(!s.gkG().gdt()&&s.gkG().geJ())s.gkG().nS()}, +$S:0} +A.bbL.prototype={ +$0(){var s=this.a +if(!s.gkG().gdt()&&s.gkG().geJ())s.gkG().nS()}, +$S:0} +A.bbM.prototype={ +$2(a,b){var s,r,q,p=this.a,o=p.aqY(),n=p.a,m=n.y,l=n.Q +n=n.as +s=p.f +r=this.b.gdt() +q=this.c.a.a +p.a.toString +return A.bGJ(m,b,o,!1,q.length===0,r,s,l,n)}, +$S:348} +A.bbO.prototype={ +$1(a){return this.a.a1E(!0)}, +$S:78} +A.bbP.prototype={ +$1(a){return this.a.a1E(!1)}, +$S:64} +A.bbN.prototype={ +$2(a,b){var s=null,r=this.a,q=r.b,p=this.b,o=p.gqo().a.a +o=o.length===0?B.bS:new A.fe(o) +o=o.gt(o) +p.a.toString +r=r.a +return new A.bu(A.bI(s,s,s,s,s,s,s,o,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,q,s,s,s,s,s,s,s,r,s,s,s,s,s,s,s,s,s,s,s,s,s,new A.bbJ(p),s,s,s,s,s,s,s,s,s,s,s),!1,!1,!1,!1,b,s)}, +$S:140} +A.bbJ.prototype={ +$0(){var s=this.a +if(!s.gqo().a.b.gdh())s.gqo().sy9(A.qZ(B.q,s.gqo().a.a.length)) +s.a3A()}, +$S:0} +A.be7.prototype={ +$1(a){var s,r=null,q=A.r(this.a) +if(a.n(0,B.o))return A.eb(r,r,q.ch,r,r,r,r,r,r,r,r,r,r,r,r,r,r,!0,r,r,r,r,r,r,r,r) +s=q.p3.w +return A.eb(r,r,s==null?r:s.b,r,r,r,r,r,r,r,r,r,r,r,r,r,r,!0,r,r,r,r,r,r,r,r)}, +$S:28} +A.be8.prototype={ +$1(a){var s,r=null +if(a.n(0,B.o)){s=A.r(this.a).p3.y.b +return A.eb(r,r,s==null?r:A.K(97,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255),r,r,r,r,r,r,r,r,r,r,r,r,r,r,!0,r,r,r,r,r,r,r,r)}return A.eb(r,r,A.r(this.a).p3.y.b,r,r,r,r,r,r,r,r,r,r,r,r,r,r,!0,r,r,r,r,r,r,r,r)}, +$S:28} +A.bcZ.prototype={ +$2(a,b){if(!a.a)a.J(0,b)}, +$S:63} +A.VF.prototype={ +aY(a){this.br(a) +this.wQ()}, +cp(){var s,r,q,p,o=this +o.ei() +s=o.d5$ +r=o.gtH() +q=o.c +q.toString +q=A.uy(q) +o.j5$=q +p=o.ut(q,r) +if(r){o.kn(s,o.hb$) +o.hb$=!1}if(p)if(s!=null)s.m()}, +m(){var s,r=this +r.j4$.af(0,new A.bcZ()) +s=r.d5$ +if(s!=null)s.m() +r.d5$=null +r.aZ()}} +A.OB.prototype={ +a8(){var s=null,r=$.b5() +return new A.GY(new A.N5(s,r),new A.yx(!1,r),s,A.F(t.yb,t.Q),s,!0,s,B.m)}} +A.aXm.prototype={ +$1(a){var s,r,q,p,o,n,m,l,k,j=this +t.iN.a(a) +s=a.c +s.toString +r=j.a.Tb(A.r(s).d) +s=a.d5$ +q=a.gyE() +p=a.e +o=p.y +p=r.aFY(o==null?A.k(p).h("dh.T").a(o):o) +o=j.ax +n=j.CW +m=j.cy +m=n?B.oQ:B.oR +l=j.db +l=n?B.oS:B.oT +k=j.ry +k=!n||!o +return A.P1(s,A.EJ(j.cx,j.x2,j.as,j.x1,j.aG,j.av,j.Y,j.c5,q,j.p4,j.p2,j.bQ,j.p3,j.p1,p,j.Z,j.y1,k,j.dx,!0,j.fy,j.d,j.k4,j.rx,j.e,j.aV,j.go,j.dy,j.fr,j.fx,j.y2,n,j.ch,j.cb,new A.aXn(a,j.b),j.k2,j.k3,j.id,j.k1,o,j.c,j.ar,j.xr,j.R8,j.RG,j.to,j.bO,j.B,j.ay,m,l,j.cO,j.w,j.r,j.x,j.y,j.Q,j.z,j.f,j.at,j.bU))}, +$S:349} +A.aXn.prototype={ +$1(a){this.a.KS(a)}, +$S:25} +A.GY.prototype={ +gyE(){var s=t.mr.a(A.af.prototype.gc7.call(this)) +return s.z}, +kn(a,b){var s,r=this +r.agZ(a,b) +s=r.ax +if(s!=null)r.rb(s,"controller") +r.d=r.gyE().a.a}, +aR(){var s,r=this +r.b5() +s=t.mr +s.a(A.af.prototype.gc7.call(r)) +s.a(A.af.prototype.gc7.call(r)).z.P(0,r.gQr())}, +aY(a){var s,r,q,p=this +p.ajd(a) +s=t.mr +r=a.z +if(s.a(A.af.prototype.gc7.call(p)).z!==r){q=p.gQr() +r.J(0,q) +s.a(A.af.prototype.gc7.call(p)).z.P(0,q) +s.a(A.af.prototype.gc7.call(p)) +s.a(A.af.prototype.gc7.call(p)) +p.d=s.a(A.af.prototype.gc7.call(p)).z.a.a}}, +m(){var s,r=this +t.mr.a(A.af.prototype.gc7.call(r)).z.J(0,r.gQr()) +s=r.ax +if(s!=null){s.apg() +s.ai7()}r.aje()}, +KS(a){var s +this.agY(a) +if(this.gyE().a.a!==a){s=this.gyE() +s.se9(0,a)}}, +arW(){var s=this +if(s.gyE().a.a!==s.ga6g())s.KS(s.gyE().a.a)}} +A.a4Y.prototype={} +A.aIC.prototype={ +BZ(a){return B.adP}, +Kh(a,b,c,d){var s,r,q,p=null,o=A.r(a) +a.ae(t.jZ) +s=A.r(a) +r=s.dH.c +if(r==null)r=o.ax.b +q=A.cZ(A.jv(A.dM(B.aN,p,B.C,!1,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,d,p,p,p,p,!1,B.ai),p,p,new A.amN(r,p),B.x),22,22) +switch(b.a){case 0:return A.aYM(B.X,1.5707963267948966,q,p) +case 1:return q +case 2:return A.aYM(B.X,0.7853981633974483,q,p)}}, +BY(a,b){switch(a.a){case 0:return B.aao +case 1:return B.i +case 2:return B.aak}}} +A.amN.prototype={ +aD(a,b){var s,r,q,p,o=$.as(),n=o.bn() +n.sa5(0,this.b) +s=b.a/2 +r=A.oL(new A.l(s,s),s) +q=0+s +p=o.cZ() +p.zh(r) +p.oy(new A.I(0,0,q,q)) +a.dV(p,n)}, +fw(a){return!this.b.l(0,a.b)}} +A.ai6.prototype={} +A.OK.prototype={ +gv(a){return A.X(this.a,this.b,this.c,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.a1(b)!==A.o(s))return!1 +return b instanceof A.OK&&J.i(b.a,s.a)&&J.i(b.b,s.b)&&J.i(b.c,s.c)}} +A.amP.prototype={} +A.aa9.prototype={ +A(a){var s=this.c.a2(0,B.o0),r=this.d.T(0,B.aag),q=A.aS(a,B.bJ,t.l).w.f.b+8,p=44<=s.b-8-q,o=new A.l(8,q) +return new A.b8(new A.aK(8,q,8,8),new A.kV(new A.aaa(s.a2(0,o),r.a2(0,o),p),new A.TV(this.e,p,A.bVV(),null),null),null)}} +A.TV.prototype={ +a8(){return new A.amU(new A.kF(),null,null,B.m)}, +aOG(a,b){return this.e.$2(a,b)}} +A.amU.prototype={ +aY(a){var s=this +s.br(a) +if(!A.e4(s.a.c,a.c)){s.e=new A.kF() +s.d=!1}}, +A(a){var s,r,q,p,o,n,m,l=this,k=null,j=A.A(a,B.ax,t.D) +j.toString +s=l.e +r=l.d +q=a.ae(t.I) +q.toString +p=l.a +o=p.d +n=l.d +m=A.fR(n?B.tg:B.tj,k,k,k) +j=n?j.gbg():j.gbu() +j=A.a([new A.amT(m,new A.bc5(l),j,k)],t.p) +B.b.I(j,l.a.c) +return new A.amV(r,q.w,A.bnT(p.aOG(a,new A.amR(o,n,j,k)),B.Z,B.Ry),s)}, +$iaN:1} +A.bc5.prototype={ +$0(){var s=this.a +s.a7(new A.bc4(s))}, +$S:0} +A.bc4.prototype={ +$0(){var s=this.a +s.d=!s.d}, +$S:0} +A.amV.prototype={ +aX(a){var s=new A.amW(this.e,this.f,null,A.aB(t.T)) +s.aW() +s.sbN(null) +return s}, +b4(a,b){b.sWk(this.e) +b.scF(this.f)}} +A.amW.prototype={ +sWk(a){if(a===this.a0)return +this.a0=a +this.a6()}, +scF(a){if(a===this.aw)return +this.aw=a +this.a6()}, +cj(){var s,r,q=this,p=q.E$ +p.toString +s=t.k +r=s.a(A.H.prototype.ga4.call(q)) +p.cX(new A.aL(0,r.b,0,r.d),!0) +if(!q.a0&&q.C==null){p=q.E$ +q.C=p.gq(p).a}p=s.a(A.H.prototype.ga4.call(q)) +s=q.C +if(s!=null){s=q.E$ +s=s.gq(s) +r=q.C +r.toString +s=s.a>r}else{r=s +s=!0}if(s){s=q.E$ +s=s.gq(s).a}else{r.toString +s=r}r=q.E$ +q.id=p.bI(new A.V(s,r.gq(r).b)) +r=q.E$.b +r.toString +t.yS.a(r) +if(q.aw===B.ab)p=0 +else{p=q.gq(q) +s=q.E$ +s=p.a-s.gq(s).a +p=s}r.a=new A.l(p,0)}, +aD(a,b){var s=this.E$,r=s.b +r.toString +a.eg(s,t.yS.a(r).a.T(0,b))}, +dY(a,b){var s=this.E$.b +s.toString +t.yS.a(s) +return a.oz(new A.bc6(this,b,s),s.a,b)}, +fR(a){if(!(a.b instanceof A.jb))a.b=new A.jb(null,null,B.i)}, +eI(a,b){var s=a.b +s.toString +s=t.yS.a(s).a +b.bj(0,s.a,s.b) +this.ahZ(a,b)}} +A.bc6.prototype={ +$2(a,b){return this.a.E$.dc(a,b)}, +$S:16} +A.amR.prototype={ +aX(a){var s=new A.akD(this.e,this.f,0,null,null,A.aB(t.T)) +s.aW() +return s}, +b4(a,b){b.sVs(this.e) +b.sWk(this.f)}, +bJ(a){return new A.amS(A.dN(t.F),this,B.al)}} +A.amS.prototype={} +A.akD.prototype={ +sVs(a){if(a===this.Z)return +this.Z=a +this.a6()}, +sWk(a){if(a===this.Y)return +this.Y=a +this.a6()}, +avo(){var s,r=this,q={},p=t.k,o=r.Y?p.a(A.H.prototype.ga4.call(r)):A.t2(new A.V(p.a(A.H.prototype.ga4.call(r)).b,44)) +q.a=-1 +q.b=0 +r.ck(new A.b9l(q,r,o)) +p=r.a3$ +p.toString +s=r.B +if(s!==-1&&s===r.d_$-2&&q.b-p.gq(p).a<=o.b)r.B=-1}, +a4s(a,b){var s,r=this +if(a===r.a3$)return r.B!==-1 +s=r.B +if(s===-1)return!0 +return b>s===r.Y}, +ayx(){var s,r,q,p,o=this,n={} +n.a=-1 +n.b=B.x +n.c=0 +s=o.a3$ +s.toString +n.d=o.Y&&!o.Z?s.gq(s).b:0 +o.ck(new A.b9m(n,o,s)) +r=s.b +r.toString +t.yS.a(r) +q=o.a3$ +q.toString +if(o.a4s(q,0)){r.e=!0 +if(o.Y){q=o.Z +r.a=q?new A.l(0,n.d):B.i +r=n.b +p=r.b +s=q?p+s.gq(s).b:p +n.b=new A.V(r.a,s)}else{r.a=new A.l(n.c,0) +n.b=new A.V(n.b.a+s.gq(s).a,n.b.b)}}else r.e=!1 +o.id=n.b}, +cj(){var s,r=this +r.B=-1 +if(r.a3$==null){s=t.k.a(A.H.prototype.ga4.call(r)) +r.id=new A.V(A.S(0,s.a,s.b),A.S(0,s.c,s.d)) +return}r.avo() +r.ayx()}, +aD(a,b){this.ck(new A.b9o(a,b))}, +fR(a){if(!(a.b instanceof A.jb))a.b=new A.jb(null,null,B.i)}, +dY(a,b){var s,r,q={},p=q.a=this.dk$ +for(s=t.yS;p!=null;){p=p.b +p.toString +s.a(p) +if(!p.e){r=p.d0$ +q.a=r +p=r +continue}if(a.oz(new A.b9n(q,b,p),p.a,b))return!0 +r=p.d0$ +q.a=r +p=r}return!1}, +jl(a){this.ck(new A.b9p(a))}} +A.b9l.prototype={ +$1(a){var s,r,q,p,o=this.a;++o.a +s=this.b +if(s.B!==-1&&!s.Y)return +t.x.a(a) +r=this.c +q=r.b +a.cX(new A.aL(0,q,0,r.d),!0) +p=o.b+a.gq(a).a +o.b=p +if(p>q&&s.B===-1)s.B=o.a-1}, +$S:24} +A.b9m.prototype={ +$1(a){var s,r,q,p=this.a,o=++p.a +t.x.a(a) +s=a.b +s.toString +t.yS.a(s) +if(a===this.c)return +r=this.b +if(!r.a4s(a,o)){s.e=!1 +return}s.e=!0 +if(!r.Y){o=p.c +s.a=new A.l(o,0) +q=o+a.gq(a).a +p.c=q +p.b=new A.V(q,Math.max(a.gq(a).b,p.b.b))}else{o=p.d +s.a=new A.l(0,o) +p.d=o+a.gq(a).b +p.b=new A.V(Math.max(a.gq(a).a,p.b.a),p.d)}}, +$S:24} +A.b9o.prototype={ +$1(a){var s +t.x.a(a) +s=a.b +s.toString +t.yS.a(s) +if(!s.e)return +this.a.eg(a,s.a.T(0,this.b))}, +$S:24} +A.b9n.prototype={ +$2(a,b){return this.a.a.dc(a,b)}, +$S:16} +A.b9p.prototype={ +$1(a){var s +t.x.a(a) +s=a.b +s.toString +if(t.yS.a(s).e)this.a.$1(a)}, +$S:24} +A.amQ.prototype={ +A(a){var s=null +return A.hA(B.S,!0,B.q1,this.c,B.bc,s,1,s,s,s,s,s,B.em)}} +A.amT.prototype={ +A(a){var s=null +return A.hA(B.S,!0,s,A.db(s,s,this.c,s,this.d,s,s,s,this.e,s),B.l,B.u,0,s,s,s,s,s,B.em)}, +geB(a){return this.c}} +A.ap8.prototype={ +aA(a){var s,r,q +this.eR(a) +s=this.a3$ +for(r=t.yS;s!=null;){s.aA(a) +q=s.b +q.toString +s=r.a(q).am$}}, +ap(a){var s,r,q +this.eS(0) +s=this.a3$ +for(r=t.yS;s!=null;){s.ap(0) +q=s.b +q.toString +s=r.a(q).am$}}} +A.apu.prototype={ +cn(){this.d3() +this.cT() +this.es()}, +m(){var s=this,r=s.b_$ +if(r!=null)r.J(0,s.gej()) +s.b_$=null +s.aZ()}} +A.H_.prototype={ +K(){return"_TextSelectionToolbarItemPosition."+this.b}} +A.aab.prototype={ +A(a){var s=this,r=null,q=A.r(a).ax.a===B.am?B.n:B.a8 +return A.eM(!1,s.c,B.l,r,r,r,r,r,s.d,r,A.Ox(s.f,r,r,r,r,r,r,r,r,q,r,B.dV,s.e,r,B.et,r,r,r,r))}} +A.ff.prototype={ +cU(b3){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=this,b2=null +if(b3==null)return b1 +s=b1.a +r=s==null?b2:s.cU(b3.a) +if(r==null)r=b3.a +q=b1.b +p=q==null?b2:q.cU(b3.b) +if(p==null)p=b3.b +o=b1.c +n=o==null?b2:o.cU(b3.c) +if(n==null)n=b3.c +m=b1.d +l=m==null?b2:m.cU(b3.d) +if(l==null)l=b3.d +k=b1.e +j=k==null?b2:k.cU(b3.e) +if(j==null)j=b3.e +i=b1.f +h=i==null?b2:i.cU(b3.f) +if(h==null)h=b3.f +g=b1.r +f=g==null?b2:g.cU(b3.r) +if(f==null)f=b3.r +e=b1.w +d=e==null?b2:e.cU(b3.w) +if(d==null)d=b3.w +c=b1.x +b=c==null?b2:c.cU(b3.x) +if(b==null)b=b3.x +a=b1.y +a0=a==null?b2:a.cU(b3.y) +if(a0==null)a0=b3.y +a1=b1.z +a2=a1==null?b2:a1.cU(b3.z) +if(a2==null)a2=b3.z +a3=b1.Q +a4=a3==null?b2:a3.cU(b3.Q) +if(a4==null)a4=b3.Q +a5=b1.as +a6=a5==null?b2:a5.cU(b3.as) +if(a6==null)a6=b3.as +a7=b1.at +a8=a7==null?b2:a7.cU(b3.at) +if(a8==null)a8=b3.at +a9=b1.ax +b0=a9==null?b2:a9.cU(b3.ax) +if(b0==null)b0=b3.ax +if(r==null)r=b2 +s=r==null?s:r +r=p==null?b2:p +if(r==null)r=q +q=n==null?b2:n +if(q==null)q=o +p=l==null?m:l +o=j==null?b2:j +if(o==null)o=k +n=h==null?b2:h +if(n==null)n=i +m=f==null?b2:f +if(m==null)m=g +l=d==null?b2:d +if(l==null)l=e +k=b==null?b2:b +if(k==null)k=c +j=a0==null?b2:a0 +if(j==null)j=a +i=a2==null?b2:a2 +if(i==null)i=a1 +h=a4==null?b2:a4 +if(h==null)h=a3 +g=a6==null?b2:a6 +if(g==null)g=a5 +f=a8==null?a7:a8 +e=b0==null?b2:b0 +return A.bjX(j,i,h,s,r,q,p,o,n,g,f,e==null?a9:e,m,l,k)}, +aEs(a,b,a0,a1,a2,a3){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=this,d=null,c=e.a +c=c==null?d:c.jz(a0,d,b,d,a1,a2,0,1,a3) +s=e.b +s=s==null?d:s.jz(a0,d,b,d,a1,a2,0,1,a3) +r=e.c +r=r==null?d:r.jz(a0,d,b,d,a1,a2,0,1,a3) +q=e.d +q=q==null?d:q.jz(a0,d,b,d,a1,a2,0,1,a3) +p=e.e +p=p==null?d:p.jz(a0,d,b,d,a1,a2,0,1,a3) +o=e.f +o=o==null?d:o.jz(a,d,b,d,a1,a2,0,1,a3) +n=e.r +n=n==null?d:n.jz(a,d,b,d,a1,a2,0,1,a3) +m=e.w +m=m==null?d:m.jz(a,d,b,d,a1,a2,0,1,a3) +l=e.x +l=l==null?d:l.jz(a,d,b,d,a1,a2,0,1,a3) +k=e.y +k=k==null?d:k.jz(a,d,b,d,a1,a2,0,1,a3) +j=e.z +j=j==null?d:j.jz(a,d,b,d,a1,a2,0,1,a3) +i=e.Q +i=i==null?d:i.jz(a0,d,b,d,a1,a2,0,1,a3) +h=e.as +h=h==null?d:h.jz(a,d,b,d,a1,a2,0,1,a3) +g=e.at +g=g==null?d:g.jz(a,d,b,d,a1,a2,0,1,a3) +f=e.ax +return A.bjX(k,j,i,c,s,r,q,p,o,h,g,f==null?d:f.jz(a,d,b,d,a1,a2,0,1,a3),n,m,l)}, +a6O(a,b,c){return this.aEs(a,b,c,null,null,null)}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.a1(b)!==A.o(s))return!1 +return b instanceof A.ff&&J.i(s.a,b.a)&&J.i(s.b,b.b)&&J.i(s.c,b.c)&&J.i(s.d,b.d)&&J.i(s.e,b.e)&&J.i(s.f,b.f)&&J.i(s.r,b.r)&&J.i(s.w,b.w)&&J.i(s.x,b.x)&&J.i(s.y,b.y)&&J.i(s.z,b.z)&&J.i(s.Q,b.Q)&&J.i(s.as,b.as)&&J.i(s.at,b.at)&&J.i(s.ax,b.ax)}, +gv(a){var s=this +return A.X(s.a,s.b,s.c,s.d,s.e,s.f,s.r,s.w,s.x,s.y,s.z,s.Q,s.as,s.at,s.ax,B.a,B.a,B.a,B.a,B.a)}} +A.amZ.prototype={} +A.EQ.prototype={ +A(a){var s,r,q=null,p=this.c,o=B.dw.a,n=B.dw.b,m=B.dw.c,l=B.dw.d,k=B.dw.e,j=B.dw.f,i=B.dw.r,h=a.ae(t.Uf) +if(h==null)h=B.f_ +s=p.dH +r=s.b +if(r==null)r=h.x +s=s.a +h=s==null?h.w:s +return new A.Rr(this,new A.a_D(new A.a39(p,new A.LL(o,n,m,l,k,j,i),B.ps,o,n,m,l,k,j,i),A.x9(A.axf(this.d,h,q,q,r),p.ok,q),q),q)}} +A.Rr.prototype={ +xQ(a,b,c){return new A.EQ(this.w.c,c,null)}, +dr(a){return!this.w.c.l(0,a.w.c)}} +A.z8.prototype={ +hh(a){var s,r=this.a +r.toString +s=this.b +s.toString +return A.bKW(r,s,a)}} +A.HE.prototype={ +a8(){return new A.adc(null,null,B.m)}} +A.adc.prototype={ +v4(a){var s=a.$3(this.CW,this.a.r,new A.b0b()) +s.toString +this.CW=t.ZM.a(s)}, +A(a){var s,r=this.CW +r.toString +s=this.ghH() +return new A.EQ(r.a_(0,s.gk(s)),this.a.w,null)}} +A.b0b.prototype={ +$1(a){return new A.z8(t.ff.a(a),null)}, +$S:350} +A.xK.prototype={ +K(){return"MaterialTapTargetSize."+this.b}} +A.mc.prototype={ +TR(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=this,a8=null,a9=a7.ax,b0=a9.b,b1=a9.c,b2=a9.d +if(b2==null)b2=b0 +s=a9.e +if(s==null)s=b1 +r=a9.f +q=a9.r +p=a9.w +if(p==null)p=r +o=a9.x +if(o==null)o=q +n=a9.y +m=n==null?r:n +l=a9.z +k=l==null?q:l +j=a9.Q +if(j==null){if(n==null)n=r}else n=j +j=a9.as +if(j==null){if(l==null)l=q}else l=j +j=a9.at +i=a9.ax +h=a9.ay +if(h==null)h=j +g=a9.ch +if(g==null)g=i +f=a9.cx +e=a9.cy +d=a9.db +c=a9.dx +if(c==null)c=e +b=a9.dy +if(b==null)b=d +a=a9.fr +if(a==null)a=f +a0=a9.fx +if(a0==null)a0=f +a1=a9.fy +if(a1==null)a1=B.v +a2=a9.go +if(a2==null)a2=B.v +a3=a9.id +if(a3==null)a3=d +a4=a9.k1 +if(a4==null)a4=e +a5=a9.k2 +if(a5==null)a5=b1 +a6=a9.k3 +if(a6==null)a6=b0 +n=A.bhW(a9.CW,a9.a,j,h,a5,a3,f,i,g,a4,b1,s,q,o,d,b,k,l,a,a0,b0,b2,a2,r,p,a1,e,a6,c,m,n) +a9=b4==null?a7.dy:b4 +b0=b5==null?a7.p2:b5 +b1=b7==null?a7.p3:b7 +b2=b3==null?a7.x2:b3 +s=b6==null?a7.ep:b6 +return A.bjY(a7.R8,a7.cI,a7.RG,a7.a,a7.C,a7.rx,a7.ry,a7.Q,a7.to,a7.x1,b2,a7.xr,a7.y1,a7.as,a7.at,a7.y2,a7.c5,a7.cO,n,a7.b,a7.aV,a7.bU,a7.ay,a7.cb,a7.ch,a7.CW,a7.bQ,a7.bO,a7.B,a7.Z,a7.ez,a7.Y,a7.c,a7.av,a7.ar,a7.cx,a7.cy,a7.db,a7.dx,a7.aG,a7.ok,a9,a7.d,a7.aS,a7.e,a7.b8,a7.b6,a7.bp,a7.cc,a7.fF,a7.fm,a7.ak,a7.f,a7.r,a7.ah,a7.fr,a7.fx,a7.fy,a7.p1,b0,a7.bG,a7.aT,a7.go,a7.w,a7.bK,a7.bc,a7.id,a7.dl,a7.k1,a7.k2,a7.h_,a7.dG,a7.k3,a7.x,a7.cS,s,a7.iz,a7.dH,b1,a7.E,a7.al,a7.a0,a7.cg,a7.p4,a7.k4,a7.y,a7.z)}, +aGg(a,b){return this.TR(null,a,null,b,null)}, +aGm(a,b){return this.TR(null,null,a,null,b)}, +aFW(a){return this.TR(a,null,null,null,null)}, +l(a,b){var s,r,q=this +if(b==null)return!1 +if(J.a1(b)!==A.o(q))return!1 +if(b instanceof A.mc)if(b.a===q.a)if(A.bfW(b.c,q.c))if(b.d.l(0,q.d))if(b.e===q.e)if(b.f.l(0,q.f))if(b.r===q.r)if(b.w.l(0,q.w))if(b.x===q.x)if(b.y===q.y)if(b.z.l(0,q.z))if(b.as.l(0,q.as))if(b.at.l(0,q.at))if(b.ax.l(0,q.ax))if(b.ay.l(0,q.ay))if(b.ch.l(0,q.ch))if(b.CW.l(0,q.CW))if(b.cx.l(0,q.cx))if(b.cy.l(0,q.cy))if(b.db.l(0,q.db))if(b.dx.l(0,q.dx))if(b.dy.l(0,q.dy))if(b.fr.l(0,q.fr))if(b.fx.l(0,q.fx))if(b.fy.l(0,q.fy))if(b.go.l(0,q.go))if(b.id.l(0,q.id))if(b.k2.l(0,q.k2))if(b.k3.l(0,q.k3))if(b.k4.l(0,q.k4))if(b.ok.l(0,q.ok))if(b.p1.l(0,q.p1))if(b.p2.l(0,q.p2))if(b.p3.l(0,q.p3))if(b.p4.l(0,q.p4))if(J.i(b.R8,q.R8))if(b.RG.l(0,q.RG))if(b.rx.l(0,q.rx))if(b.ry.l(0,q.ry))if(b.to.l(0,q.to))if(b.x1.l(0,q.x1))if(b.x2.l(0,q.x2))if(b.xr.l(0,q.xr))if(b.y1.l(0,q.y1))if(b.y2.l(0,q.y2))if(b.c5.l(0,q.c5))if(b.cO.l(0,q.cO))if(b.aV.l(0,q.aV))if(b.bU.l(0,q.bU))if(b.cb.l(0,q.cb))if(b.bQ.l(0,q.bQ))if(b.bO.l(0,q.bO))if(b.B.l(0,q.B))if(b.Z.l(0,q.Z))if(b.Y.l(0,q.Y))if(b.av.l(0,q.av))if(b.ar.l(0,q.ar))if(b.aG.l(0,q.aG))if(b.aS.l(0,q.aS))if(b.b8.l(0,q.b8))if(b.b6.l(0,q.b6))if(b.bp.l(0,q.bp))if(b.cc.l(0,q.cc))if(b.fF.l(0,q.fF))if(b.fm.l(0,q.fm))if(b.ak.l(0,q.ak))if(b.ah.l(0,q.ah))if(b.bG.l(0,q.bG))if(b.aT.l(0,q.aT))if(b.bK.l(0,q.bK))if(b.bc.l(0,q.bc))if(b.dl.l(0,q.dl))if(b.h_.l(0,q.h_))if(b.dG.l(0,q.dG))if(b.cS.l(0,q.cS))if(b.ep.l(0,q.ep))if(b.iz.l(0,q.iz))if(b.dH.l(0,q.dH))if(b.E.l(0,q.E))if(b.al.l(0,q.al))if(b.cg.l(0,q.cg)){s=b.a0 +s.toString +r=q.a0 +r.toString +if(s.l(0,r)){s=b.k1 +s.toString +r=q.k1 +r.toString +if(s.l(0,r)){s=b.ez +s.toString +r=q.ez +r.toString +if(s.l(0,r)){s=b.C +s.toString +r=q.C +r.toString +if(s.l(0,r)){s=b.Q +s.toString +r=q.Q +r.toString +r=s.l(0,r) +s=r}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +return s}, +gv(a){var s=this,r=[s.a,s.b],q=s.c +B.b.I(r,q.gcP(q)) +B.b.I(r,q.gbw(q)) +r.push(s.d) +r.push(s.e) +r.push(s.f) +r.push(s.r) +r.push(s.w) +r.push(s.x) +r.push(s.y) +r.push(s.z) +r.push(s.as) +r.push(s.at) +r.push(s.ax) +r.push(s.ay) +r.push(s.ch) +r.push(s.CW) +r.push(s.cx) +r.push(s.cy) +r.push(s.db) +r.push(s.dx) +r.push(s.dy) +r.push(s.fr) +r.push(s.fx) +r.push(s.fy) +r.push(s.go) +r.push(s.id) +r.push(s.k2) +r.push(s.k3) +r.push(s.k4) +r.push(s.ok) +r.push(s.p1) +r.push(s.p2) +r.push(s.p3) +r.push(s.p4) +r.push(s.R8) +r.push(s.RG) +r.push(s.rx) +r.push(s.ry) +r.push(s.to) +r.push(s.x1) +r.push(s.x2) +r.push(s.xr) +r.push(s.y1) +r.push(s.y2) +r.push(s.c5) +r.push(s.cO) +r.push(s.aV) +r.push(s.bU) +r.push(s.cb) +r.push(s.bQ) +r.push(s.bO) +r.push(s.B) +r.push(s.Z) +r.push(s.Y) +r.push(s.av) +r.push(s.ar) +r.push(s.aG) +r.push(s.aS) +r.push(s.b8) +r.push(s.b6) +r.push(s.bp) +r.push(s.cc) +r.push(s.fF) +r.push(s.fm) +r.push(s.ak) +r.push(s.ah) +r.push(s.bG) +r.push(s.aT) +r.push(s.bK) +r.push(s.bc) +r.push(s.dl) +r.push(s.h_) +r.push(s.dG) +r.push(s.cS) +r.push(s.ep) +r.push(s.iz) +r.push(s.dH) +r.push(s.E) +r.push(s.al) +r.push(s.cg) +r.push(s.cI) +q=s.a0 +q.toString +r.push(q) +q=s.k1 +q.toString +r.push(q) +q=s.ez +q.toString +r.push(q) +q=s.C +q.toString +r.push(q) +q=s.Q +q.toString +r.push(q) +return A.dt(r)}} +A.aY9.prototype={ +$0(){var s=this.a,r=this.b +return s.aGm(r.cU(s.p2),r.cU(s.p3))}, +$S:351} +A.aY6.prototype={ +$2(a,b){return new A.aU(a,b.aPU(this.a.c.i(0,a),this.b),t.sw)}, +$S:352} +A.aY7.prototype={ +$1(a){return!this.a.c.ao(0,a.a)}, +$S:353} +A.a39.prototype={ +guA(){var s=this.ch.a +return s==null?this.ay.ax.a:s}, +gil(){var s=this.ch.b +return s==null?this.ay.ax.b:s}, +gvn(){var s=this.ch.c +return s==null?this.ay.ax.c:s}, +gvF(){var s=this.ch.f +return s==null?this.ay.go:s}, +eN(a){return A.bHF(this.ay,this.ch.eN(a))}} +A.G3.prototype={ +gv(a){return(A.rL(this.a)^A.rL(this.b))>>>0}, +l(a,b){if(b==null)return!1 +return b instanceof A.G3&&b.a===this.a&&b.b===this.b}} +A.afW.prototype={ +cJ(a,b,c){var s,r=this.a,q=r.i(0,b) +if(q!=null)return q +if(r.a===this.b){s=new A.c9(r,A.k(r).h("c9<1>")) +r.F(0,s.gN(s))}s=c.$0() +r.p(0,b,s) +return s}} +A.r5.prototype={ +L0(a){var s=this.a,r=this.b,q=A.S(a.a+new A.l(s,r).au(0,4).a,0,a.b) +return a.aGj(A.S(a.c+new A.l(s,r).au(0,4).b,0,a.d),q)}, +l(a,b){if(b==null)return!1 +if(J.a1(b)!==A.o(this))return!1 +return b instanceof A.r5&&b.a===this.a&&b.b===this.b}, +gv(a){return A.X(this.a,this.b,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +f2(){return this.agQ()+"(h: "+A.mt(this.a)+", v: "+A.mt(this.b)+")"}} +A.an2.prototype={} +A.anS.prototype={} +A.OP.prototype={ +gv(a){var s=this +return A.dt([s.a,s.b,s.c,s.d,s.e,s.f,s.r,s.w,s.x,s.y,s.z,s.Q,s.as,s.at,s.ax,s.ay,s.ch,s.CW,s.cx,s.cy,s.db,s.dx])}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.a1(b)!==A.o(s))return!1 +return b instanceof A.OP&&J.i(b.a,s.a)&&J.i(b.b,s.b)&&J.i(b.c,s.c)&&J.i(b.d,s.d)&&J.i(b.e,s.e)&&J.i(b.f,s.f)&&J.i(b.r,s.r)&&J.i(b.w,s.w)&&J.i(b.x,s.x)&&J.i(b.y,s.y)&&J.i(b.z,s.z)&&J.i(b.Q,s.Q)&&b.as==s.as&&J.i(b.at,s.at)&&J.i(b.ax,s.ax)&&J.i(b.ay,s.ay)&&J.i(b.ch,s.ch)&&J.i(b.CW,s.CW)&&J.i(b.cx,s.cx)&&J.i(b.db,s.db)&&J.i(b.dx,s.dx)}} +A.an6.prototype={} +A.OU.prototype={ +gv(a){var s=this +return A.X(s.a,s.b,s.c,s.d,s.e,s.f,s.r,s.w,s.y,s.x,s.z,s.Q,s.as,s.ax,s.at,B.a,B.a,B.a,B.a,B.a)}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.a1(b)!==A.o(s))return!1 +return b instanceof A.OU&&J.i(b.a,s.a)&&J.i(b.b,s.b)&&J.i(b.c,s.c)&&J.i(b.d,s.d)&&J.i(b.e,s.e)&&J.i(b.f,s.f)&&J.i(b.r,s.r)&&J.i(b.w,s.w)&&J.i(b.y,s.y)&&J.i(b.x,s.x)&&J.i(b.z,s.z)&&J.i(b.Q,s.Q)&&J.i(b.as,s.as)&&J.i(b.ax,s.ax)&&b.at==s.at}} +A.an9.prototype={} +A.zd.prototype={ +E1(){var s,r,q=this +if(q.gxM()){if(q.gk(q)==null){s=q.k9$ +s===$&&A.b() +s.sk(0,0)}s=q.gk(q) +r=q.k9$ +if(s!==!1){r===$&&A.b() +r.bS(0)}else{r===$&&A.b() +r.d9(0)}}else{s=q.gk(q) +r=q.k9$ +if(s===!0){r===$&&A.b() +r.bS(0)}else{r===$&&A.b() +r.d9(0)}}}, +aCs(a){var s,r=this +if(r.gdT()!=null){r.a7(new A.aYj(r,a)) +s=r.oK$ +s===$&&A.b() +s.bS(0)}}, +a5h(a){var s,r=this +if(r.gdT()==null)return +switch(r.gk(r)){case!1:r.gdT().$1(!0) +break +case!0:s=r.gdT() +s.toString +s.$1(r.gxM()&&null) +break +case null:case void 0:r.gdT().$1(!1) +break}r.c.ga9().Ce(B.oZ)}, +aCq(){return this.a5h(null)}, +a1N(a){var s,r=this +if(r.qK$!=null)r.a7(new A.aYl(r)) +s=r.oK$ +s===$&&A.b() +s.d9(0)}, +auj(){return this.a1N(null)}, +aCn(a){var s,r=this +if(a!==r.pE$){r.a7(new A.aYg(r,a)) +s=r.td$ +if(a){s===$&&A.b() +s.bS(0)}else{s===$&&A.b() +s.d9(0)}}}, +aCp(a){var s,r=this +if(a!==r.pF$){r.a7(new A.aYi(r,a)) +s=r.tc$ +if(a){s===$&&A.b() +s.bS(0)}else{s===$&&A.b() +s.d9(0)}}}, +gfA(){var s,r=this,q=A.aY(t.ui) +if(r.gdT()==null)q.G(0,B.o) +if(r.pF$)q.G(0,B.A) +if(r.pE$)q.G(0,B.y) +s=r.gk(r) +if(s!==!1)q.G(0,B.B) +return q}, +a7l(a,b,c,d,e,f){var s,r,q,p,o,n,m,l,k,j,i=this,h=null,g=i.EV$ +if(g===$){s=A.ap([B.ii,new A.cq(i.ga5g(),new A.bb(A.a([],t.h),t.d),t.wY)],t.n,t.od) +i.EV$!==$&&A.am() +i.EV$=s +g=s}r=i.gdT() +q=c.a.$1(i.gfA()) +p=i.gdT() +o=i.gdT()!=null?i.gaCr():h +n=i.gdT()!=null?i.ga5g():h +m=i.gdT()!=null?i.ga1M():h +l=i.gdT()!=null?i.ga1M():h +k=i.gdT() +j=A.jv(h,h,h,e,f) +return A.aCc(g,!1,A.dM(h,new A.bu(A.bI(h,h,h,h,h,h,h,h,h,h,k!=null,h,h,h,h,h,h,h,h,h,h,h,h,h,h,h,h,h,h,h,h,h,h,h,h,h,h,h,h,h,h,h,h,h,h,h,h,h,h,h,h,h,h,h,h,h,h,h),!1,!1,!1,!1,j,h),B.C,p==null,h,h,h,h,h,h,h,h,h,h,h,h,h,h,h,h,h,h,h,h,h,n,l,o,m,h,!1,B.ai),r!=null,b,q,d,i.gaCm(),i.gaCo(),h)}, +a7j(a,b,c,d,e){return this.a7l(a,b,c,null,d,e)}} +A.aYj.prototype={ +$0(){this.a.qK$=this.b.c}, +$S:0} +A.aYl.prototype={ +$0(){this.a.qK$=null}, +$S:0} +A.aYg.prototype={ +$0(){this.a.pE$=this.b}, +$S:0} +A.aYi.prototype={ +$0(){this.a.pF$=this.b}, +$S:0} +A.ES.prototype={ +scQ(a,b){var s=this,r=s.a +if(b===r)return +if(r!=null)r.a.J(0,s.geL()) +b.a.P(0,s.geL()) +s.a=b +s.ag()}, +sWC(a){var s=this,r=s.b +if(a===r)return +if(r!=null)r.a.J(0,s.geL()) +a.a.P(0,s.geL()) +s.b=a +s.ag()}, +sWE(a){var s=this,r=s.c +if(a===r)return +if(r!=null)r.a.J(0,s.geL()) +a.a.P(0,s.geL()) +s.c=a +s.ag()}, +sWF(a){var s=this,r=s.d +if(a===r)return +if(r!=null)r.a.J(0,s.geL()) +a.a.P(0,s.geL()) +s.d=a +s.ag()}, +suv(a){if(J.i(this.e,a))return +this.e=a +this.ag()}, +sAO(a){if(J.i(this.f,a))return +this.f=a +this.ag()}, +sVi(a){if(a.l(0,this.r))return +this.r=a +this.ag()}, +sWD(a){if(a.l(0,this.w))return +this.w=a +this.ag()}, +sqN(a){if(a.l(0,this.x))return +this.x=a +this.ag()}, +ska(a){if(a.l(0,this.y))return +this.y=a +this.ag()}, +siO(a){if(a===this.z)return +this.z=a +this.ag()}, +sAc(a){if(J.i(a,this.Q))return +this.Q=a +this.ag()}, +sqS(a){if(a===this.as)return +this.as=a +this.ag()}, +sVw(a){if(a===this.at)return +this.at=a +this.ag()}, +Wn(a,b){var s,r,q,p,o=this,n=o.b +if(n.gaL(n)===B.Q){n=o.c +if(n.gaL(n)===B.Q){n=o.d +n=n.gaL(n)!==B.Q}else n=!0}else n=!0 +if(n){s=$.as().bn() +n=o.r +n.toString +r=o.w +r.toString +q=o.a +q=A.W(n,r,q.gk(q)) +r=o.x +r.toString +n=o.d +n=A.W(q,r,n.gk(n)) +r=o.y +r.toString +q=o.c +q=A.W(n,r,q.gk(q)) +q.toString +s.sa5(0,q) +q=o.z +q.toString +n=o.as +n.toString +if(!n){n=o.at +n.toString}else n=!0 +if(n)p=q +else{n=o.b +p=new A.aO(0,q,t.Y).a_(0,n.gk(n))}if(p>0)a.ha(b.T(0,B.i),p,s)}}, +m(){var s=this,r=s.a +if(r!=null)r.a.J(0,s.geL()) +r=s.b +if(r!=null)r.a.J(0,s.geL()) +r=s.c +if(r!=null)r.a.J(0,s.geL()) +r=s.d +if(r!=null)r.a.J(0,s.geL()) +s.eH()}, +fw(a){return!0}, +AM(a){return null}, +gCd(){return null}, +H7(a){return!1}, +j(a){return"#"+A.bt(this)}} +A.afQ.prototype={ +aX(a){var s=new A.aki(!0,this.e,null,this.r,B.cw,B.bv,null,A.aB(t.T)) +s.aW() +s.sbN(null) +return s}} +A.aki.prototype={ +dc(a,b){var s,r=this,q=$.bkH +$.bkH=!1 +if(r.gq(r).n(0,b)){s=r.dY(a,b)||r.C===B.bv +if((s||r.C===B.aN)&&!$.bkG){$.bkG=!0 +a.G(0,new A.w4(b,r))}}else s=!1 +if(q){$.bkH=!0 +$.bkG=!1}return s}} +A.OW.prototype={ +a8(){return new A.EV(new A.aKV(),A.aY(t.S),B.Q,null,null,B.m)}} +A.EV.prototype={ +gaB7(){this.a.toString +this.f===$&&A.b() +return B.rH}, +gapM(){this.a.toString +this.f===$&&A.b() +return!0}, +gSn(){var s=this.a.c +return s==null?null.ad0():s}, +gus(){var s,r=this,q=r.w +if(q==null){q=A.bw(B.z,null,B.cT,0,B.f1,1,null,r) +q.cL() +s=q.eo$ +s.b=!0 +s.a.push(r.gaCB()) +r.w=q}return q}, +aCC(a){var s,r,q,p,o,n,m,l,k,j,i=this +$label0$0:{s=new A.nH(A.bsG(i.Q),A.bsG(a)) +r=A.dr("#0#1",new A.aYu(s)) +q=A.dr("#0#3",new A.aYv(r)) +p=A.dr("#0#4",new A.aYw(s)) +o=A.dr("#0#6",new A.aYx(p)) +n=A.dr("#0#7",new A.aYy(r)) +m=A.dr("#0#8",new A.aYz(p)) +if(q.b1()&&o.b1()){B.b.F($.ze,i) +l=i.d +k=l.a +if(k!=null)k.xd() +else l.b=null +break $label0$0}if(n.b1()&&m.b1()){l=i.d +k=l.a +j=$.bjp+1 +if(k!=null){$.bjp=j +k.rz(0,j)}else l.b=$.bjp=j +$.ze.push(i) +A.aSd(i.gSn()) +break $label0$0}if(!(q.b1()&&m.b1()))l=n.b1()&&o.b1() +else l=!0 +if(l)break $label0$0}i.Q=a}, +aAa(a,b){var s,r,q=this,p=new A.aYB(q,a) +$label0$0:{s=q.gus().Q +s===$&&A.b() +r=A.dr("#0#2",new A.aYA(s)) +if(r.b1()&&b.a>0){if(q.r==null)q.r=A.d2(b,p) +break $label0$0}if(r.b1()||B.aY===s||B.aZ===s||B.a5===s)p.$0()}}, +a3U(a){return this.aAa(null,a)}, +z2(a){var s=this,r=s.r +if(r!=null)r.aQ(0) +s.r=null +r=s.w +if(r==null)r=null +else{r=r.Q +r===$&&A.b()}switch(r){case null:case void 0:case B.aZ:case B.Q:break +case B.aY:case B.a5:if(a.a>0){r=s.gus() +s.r=A.d2(a,r.gacL(r))}else s.gus().d9(0) +break}}, +ate(a){var s,r=this +r.a.toString +r.f===$&&A.b() +switch(1){case 1:s=r.x +if(s==null)s=r.x=A.aHi(r,null,B.ad7) +s.p1=r.gauk() +s.p2=r.gasH() +s.R8=r.gato() +s.zi(a) +break}}, +asr(a){var s=this,r=s.y +r=r==null?null:r.CW +if(r!==a.gcz()){r=s.x +r=r==null?null:r.CW +r=r===a.gcz()}else r=!0 +if(r)return +if(s.r==null){r=s.gus().Q +r===$&&A.b() +r=r===B.Q}else r=!1 +if(r||!t.pY.b(a))return +s.z2(B.F) +s.z.ab(0)}, +aul(){this.z2(B.F) +this.z.ab(0)}, +asI(){var s=this,r=s.e +r===$&&A.b() +if(!r)return +r=s.gus().Q +r===$&&A.b() +if(r===B.Q){s.gapM() +r=!0}else r=!1 +if(r){r=s.c +r.toString +A.aBf(r)}s.a.toString +s.a3U(B.F)}, +atp(){if(this.z.a!==0)return +this.z2(this.gaB7())}, +aCz(a){var s,r,q,p,o,n,m=this +m.z.G(0,a.goF(a)) +s=A.a($.ze.slice(0),A.ab($.ze)) +for(r=s.length,q=!1,p=0;p") +return new A.mk(A.aa(new A.ad(s,new A.b20(b),r),!0,r.h("ax.E")))}, +eY(a,b){return A.btE(a,this,b)}, +eZ(a,b){return A.btE(this,a,b)}, +fO(a,b){var s,r +for(s=this.a,r=0;r") +return new A.ad(new A.d1(s,r),new A.b21(),r.h("ad")).cq(0," + ")}} +A.b2_.prototype={ +$2(a,b){return a.G(0,b.goG())}, +$S:361} +A.b20.prototype={ +$1(a){return a.cl(0,this.a)}, +$S:362} +A.b21.prototype={ +$1(a){return a.j(0)}, +$S:363} +A.adC.prototype={} +A.XK.prototype={ +K(){return"BoxShape."+this.b}} +A.XF.prototype={ +ow(a,b,c){return null}, +G(a,b){return this.ow(a,b,!1)}, +fO(a,b){var s=$.as().cZ() +s.oy(this.goG().L(b).Es(a)) +return s}, +p8(a){return this.fO(a,null)}, +eh(a,b){var s=$.as().cZ() +s.oy(a) +return s}, +kv(a){return this.eh(a,null)}, +lp(a,b,c,d){a.el(b,c)}, +gkl(){return!0}} +A.ei.prototype={ +goG(){var s,r=this +if(r.ga6n()){s=r.a.ghp() +return new A.aK(s,s,s,s)}return new A.aK(r.d.ghp(),r.a.ghp(),r.b.ghp(),r.c.ghp())}, +gFm(){var s,r,q=this +if(q.gCM())if(q.ga6n())if(q.gDE()){s=q.a.d +r=q.d.d===s&&q.c.d===s&&q.b.d===s}else r=!1 +else r=!1 +else r=!1 +return r}, +gCM(){var s=this,r=s.a.a +return s.d.a.l(0,r)&&s.c.a.l(0,r)&&s.b.a.l(0,r)}, +ga6n(){var s=this,r=s.a.b +return s.d.b===r&&s.c.b===r&&s.b.b===r}, +gDE(){var s=this,r=s.a.c +return s.d.c===r&&s.c.c===r&&s.b.c===r}, +ow(a,b,c){var s=this +if(b instanceof A.ei&&A.pF(s.a,b.a)&&A.pF(s.b,b.b)&&A.pF(s.c,b.c)&&A.pF(s.d,b.d))return new A.ei(A.mE(s.a,b.a),A.mE(s.b,b.b),A.mE(s.c,b.c),A.mE(s.d,b.d)) +return null}, +G(a,b){return this.ow(a,b,!1)}, +cl(a,b){var s=this +return new A.ei(s.a.cl(0,b),s.b.cl(0,b),s.c.cl(0,b),s.d.cl(0,b))}, +eY(a,b){if(a instanceof A.ei)return A.atv(a,this,b) +return this.Hs(a,b)}, +eZ(a,b){if(a instanceof A.ei)return A.atv(this,a,b) +return this.Ht(a,b)}, +Mx(a,b,c,d,e){var s,r=this +if(r.gFm()){s=r.a +switch(s.c.a){case 0:return +case 1:switch(d.a){case 1:A.bob(a,b,s) +break +case 0:if(c!=null&&!c.l(0,B.aJ)){A.boc(a,b,s,c) +return}A.bod(a,b,s) +break}return}}if(r.gCM()&&r.gDE()){s=r.a +switch(s.c.a){case 0:return +case 1:A.boa(a,b,c,r.c,r.d,r.b,d,e,s) +return}}A.bx7(a,b,r.c,r.d,r.b,r.a)}, +hV(a,b,c){return this.Mx(a,b,null,B.aE,c)}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.a1(b)!==A.o(s))return!1 +return b instanceof A.ei&&b.a.l(0,s.a)&&b.b.l(0,s.b)&&b.c.l(0,s.c)&&b.d.l(0,s.d)}, +gv(a){var s=this +return A.X(s.a,s.b,s.c,s.d,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){var s,r,q=this +if(q.gFm())return"Border.all("+q.a.j(0)+")" +s=A.a([],t.s) +r=q.a +if(!r.l(0,B.t))s.push("top: "+r.j(0)) +r=q.b +if(!r.l(0,B.t))s.push("right: "+r.j(0)) +r=q.c +if(!r.l(0,B.t))s.push("bottom: "+r.j(0)) +r=q.d +if(!r.l(0,B.t))s.push("left: "+r.j(0)) +return"Border("+B.b.cq(s,", ")+")"}, +gBG(a){return this.a}} +A.iR.prototype={ +goG(){var s,r=this +if(r.gFm()){s=r.a.ghp() +return new A.eH(s,s,s,s)}return new A.eH(r.b.ghp(),r.a.ghp(),r.c.ghp(),r.d.ghp())}, +gFm(){var s,r,q,p,o=this +if(o.gCM()){s=o.a +r=s.b +q=o.b +if(q.b===r&&o.d.b===r&&o.c.b===r)if(o.gDE()){p=s.d +s=q.d===p&&o.d.d===p&&o.c.d===p}else s=!1 +else s=!1}else s=!1 +return s}, +gCM(){var s=this,r=s.a.a +return s.b.a.l(0,r)&&s.d.a.l(0,r)&&s.c.a.l(0,r)}, +gDE(){var s=this,r=s.a.c +return s.b.c===r&&s.d.c===r&&s.c.c===r}, +ow(a,b,c){var s,r,q,p=this,o=null +if(b instanceof A.iR){s=p.a +r=b.a +if(A.pF(s,r)&&A.pF(p.b,b.b)&&A.pF(p.c,b.c)&&A.pF(p.d,b.d))return new A.iR(A.mE(s,r),A.mE(p.b,b.b),A.mE(p.c,b.c),A.mE(p.d,b.d)) +return o}if(b instanceof A.ei){s=b.a +r=p.a +if(!A.pF(s,r)||!A.pF(b.c,p.d))return o +q=p.b +if(!q.l(0,B.t)||!p.c.l(0,B.t)){if(!b.d.l(0,B.t)||!b.b.l(0,B.t))return o +return new A.iR(A.mE(s,r),q,p.c,A.mE(b.c,p.d))}return new A.ei(A.mE(s,r),b.b,A.mE(b.c,p.d),b.d)}return o}, +G(a,b){return this.ow(a,b,!1)}, +cl(a,b){var s=this +return new A.iR(s.a.cl(0,b),s.b.cl(0,b),s.c.cl(0,b),s.d.cl(0,b))}, +eY(a,b){if(a instanceof A.iR)return A.bhM(a,this,b) +return this.Hs(a,b)}, +eZ(a,b){if(a instanceof A.iR)return A.bhM(this,a,b) +return this.Ht(a,b)}, +Mx(a,b,c,d,e){var s,r,q,p=this +if(p.gFm()){s=p.a +switch(s.c.a){case 0:return +case 1:switch(d.a){case 1:A.bob(a,b,s) +break +case 0:if(c!=null&&!c.l(0,B.aJ)){A.boc(a,b,s,c) +return}A.bod(a,b,s) +break}return}}switch(e.a){case 0:r=p.c +q=p.b +break +case 1:r=p.b +q=p.c +break +default:r=null +q=null}if(p.gCM()&&p.gDE()){s=p.a +switch(s.c.a){case 0:return +case 1:A.boa(a,b,c,p.d,r,q,d,e,s) +return}}A.bx7(a,b,p.d,r,q,p.a)}, +hV(a,b,c){return this.Mx(a,b,null,B.aE,c)}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.a1(b)!==A.o(s))return!1 +return b instanceof A.iR&&b.a.l(0,s.a)&&b.b.l(0,s.b)&&b.c.l(0,s.c)&&b.d.l(0,s.d)}, +gv(a){var s=this +return A.X(s.a,s.b,s.c,s.d,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){var s=this,r=A.a([],t.s),q=s.a +if(!q.l(0,B.t))r.push("top: "+q.j(0)) +q=s.b +if(!q.l(0,B.t))r.push("start: "+q.j(0)) +q=s.c +if(!q.l(0,B.t))r.push("end: "+q.j(0)) +q=s.d +if(!q.l(0,B.t))r.push("bottom: "+q.j(0)) +return"BorderDirectional("+B.b.cq(r,", ")+")"}, +gBG(a){return this.a}} +A.dJ.prototype={ +gdE(a){var s=this.c +s=s==null?null:s.goG() +return s==null?B.a4:s}, +GM(a,b){var s,r,q +switch(this.w.a){case 1:s=A.oL(a.gbH(),a.giN()/2) +r=$.as().cZ() +r.zh(s) +return r +case 0:r=this.d +if(r!=null){q=$.as().cZ() +q.fT(r.L(b).e2(a)) +return q}r=$.as().cZ() +r.oy(a) +return r}}, +cl(a,b){var s=this,r=null,q=A.W(r,s.a,b),p=A.boe(r,s.c,b),o=A.o0(r,s.d,b),n=A.bhO(r,s.e,b),m=s.f +m=m==null?r:m.cl(0,b) +return new A.dJ(q,s.b,p,o,n,m,s.w)}, +gLP(){return this.e!=null}, +eY(a,b){if(a==null)return this.cl(0,b) +if(a instanceof A.dJ)return A.bof(a,this,b) +return this.Of(a,b)}, +eZ(a,b){if(a==null)return this.cl(0,1-b) +if(a instanceof A.dJ)return A.bof(this,a,b) +return this.Og(a,b)}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r===b)return!0 +if(J.a1(b)!==A.o(r))return!1 +if(b instanceof A.dJ)if(J.i(b.a,r.a))if(J.i(b.c,r.c))if(J.i(b.d,r.d))if(A.e4(b.e,r.e))if(J.i(b.f,r.f))s=b.w===r.w +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +return s}, +gv(a){var s=this,r=s.e +r=r==null?null:A.dt(r) +return A.X(s.a,s.b,s.c,s.d,r,s.f,null,s.w,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +Vg(a,b,c){var s +switch(this.w.a){case 0:s=this.d +if(s!=null)return s.L(c).e2(new A.I(0,0,0+a.a,0+a.b)).n(0,b) +return!0 +case 1:return b.a2(0,a.mg(B.i)).ge3()<=Math.min(a.a,a.b)/2}}, +zP(a){return new A.adH(this,a)}} +A.adH.prototype={ +a2Y(a,b,c,d){var s=this.b +switch(s.w.a){case 1:a.ha(b.gbH(),b.giN()/2,c) +break +case 0:s=s.d +if(s==null||s.l(0,B.aJ))a.el(b,c) +else a.de(s.L(d).e2(b),c) +break}}, +amJ(a,b,c){var s,r,q,p,o,n,m=this.b.e +if(m==null)return +for(s=m.length,r=0;r0?n*0.57735+0.5:0)) +o=b.dw(q.b) +n=q.d +this.a2Y(a,new A.I(o.a-n,o.b-n,o.c+n,o.d+n),p,c)}}, +axQ(a,b,c){return}, +m(){this.YG()}, +kk(a,b,c){var s,r,q=this,p=c.e,o=b.a,n=b.b,m=new A.I(o,n,o+p.a,n+p.b),l=c.d +q.amJ(a,m,l) +p=q.b +o=p.a +n=o==null +if(!n||p.f!=null){if(q.c!=null)s=p.f!=null&&!J.i(q.d,m) +else s=!0 +if(s){r=$.as().bn() +if(!n)r.sa5(0,o) +o=p.f +if(o!=null){r.sCl(o.TZ(0,m,l)) +q.d=m}q.c=r}o=q.c +o.toString +q.a2Y(a,m,o,l)}q.axQ(a,m,c) +o=p.c +if(o!=null){n=p.d +n=n==null?null:n.L(l) +o.Mx(a,m,n,p.w,l)}}, +j(a){return"BoxPainter for "+this.b.j(0)}} +A.w3.prototype={ +K(){return"BoxFit."+this.b}} +A.a1_.prototype={} +A.c8.prototype={ +lu(){var s=$.as().bn() +s.sa5(0,this.a) +s.sM_(new A.xI(this.e,A.bJZ(this.c))) +return s}, +cl(a,b){var s=this +return new A.c8(s.d*b,s.e,s.a,s.b.au(0,b),s.c*b)}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.a1(b)!==A.o(s))return!1 +return b instanceof A.c8&&b.a.l(0,s.a)&&b.b.l(0,s.b)&&b.c===s.c&&b.d===s.d&&b.e===s.e}, +gv(a){var s=this +return A.X(s.a,s.b,s.c,s.d,s.e,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){var s=this +return"BoxShadow("+s.a.j(0)+", "+s.b.j(0)+", "+A.mt(s.c)+", "+A.mt(s.d)+", "+s.e.j(0)+")"}} +A.h3.prototype={ +cl(a,b){return new A.h3(this.b,this.a.cl(0,b))}, +eY(a,b){var s,r +if(a instanceof A.h3){s=A.bn(a.a,this.a,b) +r=A.ag(a.b,this.b,b) +r.toString +return new A.h3(A.S(r,0,1),s)}return this.yn(a,b)}, +eZ(a,b){var s,r +if(a instanceof A.h3){s=A.bn(this.a,a.a,b) +r=A.ag(this.b,a.b,b) +r.toString +return new A.h3(A.S(r,0,1),s)}return this.yo(a,b)}, +fO(a,b){var s=$.as().cZ() +s.zh(this.HB(a).dZ(-this.a.ghp())) +return s}, +p8(a){return this.fO(a,null)}, +eh(a,b){var s=$.as().cZ() +s.zh(this.HB(a)) +return s}, +kv(a){return this.eh(a,null)}, +lp(a,b,c,d){if(this.b===0)a.ha(b.gbH(),b.giN()/2,c) +else a.Af(this.HB(b),c)}, +gkl(){return!0}, +qB(a){var s=a==null?this.a:a +return new A.h3(this.b,s)}, +hV(a,b,c){var s,r=this.a +switch(r.c.a){case 0:break +case 1:s=r.b*r.d +if(this.b===0)a.ha(b.gbH(),(b.giN()+s)/2,r.lu()) +else a.Af(this.HB(b).dZ(s/2),r.lu()) +break}}, +aD(a,b){return this.hV(a,b,null)}, +HB(a){var s,r,q,p,o,n,m,l=this.b +if(l===0||a.c-a.a===a.d-a.b)return A.oL(a.gbH(),a.giN()/2) +s=a.c +r=a.a +q=s-r +p=a.d +o=a.b +n=p-o +l=1-l +if(q").b(b)&&A.bfW(b.b,s.b)}, +gv(a){return A.X(A.o(this),this.a,this.b,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){return"ColorSwatch(primary value: "+this.agA(0)+")"}} +A.kX.prototype={ +f2(){return"Decoration"}, +gdE(a){return B.a4}, +gLP(){return!1}, +eY(a,b){return null}, +eZ(a,b){return null}, +Vg(a,b,c){return!0}, +GM(a,b){throw A.c(A.a7("This Decoration subclass does not expect to be used for clipping."))}} +A.XI.prototype={ +m(){}} +A.af2.prototype={} +A.C6.prototype={ +K(){return"ImageRepeat."+this.b}} +A.a_O.prototype={ +Mw(a,b,c,d){var s,r,q=this,p=null,o=q.a,n=o.a.L(d) +n.gla(n) +q.c=n +n.P(0,new A.kj(q.gasx(),p,o.b)) +if(q.d==null)return +o=c!=null +if(o){a.eb(0) +a.mr(0,c)}s=q.d +r=s.a +A.bx8(B.X,a,p,p,s.c,B.hh,p,!1,r,!1,!1,1,b,B.ee,s.b) +if(o)a.dq(0)}, +asy(a,b){var s,r,q=this +if(J.i(q.d,a))return +s=q.d +if(s!=null)if(a.a.Vu(s.a)){r=s.b +s=r===r&&a.c==s.c}else s=!1 +else s=!1 +if(s){a.a.m() +return}s=q.d +if(s!=null)s.a.m() +q.d=a +if(!b)q.b.$0()}, +j(a){return"DecorationImagePainter(stream: "+A.h(this.c)+", image: "+A.h(this.d)+") for "+this.a.j(0)}} +A.eI.prototype={ +gdD(){var s=this +return s.giQ(s)+s.giR(s)+s.gkJ(s)+s.gkH()}, +aEn(a){var s=this +switch(a.a){case 0:return s.gdD() +case 1:return s.gcC(s)+s.gcH(s)}}, +G(a,b){var s=this +return new A.vh(s.giQ(s)+b.giQ(b),s.giR(s)+b.giR(b),s.gkJ(s)+b.gkJ(b),s.gkH()+b.gkH(),s.gcC(s)+b.gcC(b),s.gcH(s)+b.gcH(b))}, +hs(a,b,c){var s=this +return new A.vh(A.S(s.giQ(s),b.a,c.a),A.S(s.giR(s),b.c,c.b),A.S(s.gkJ(s),0,c.c),A.S(s.gkH(),0,c.d),A.S(s.gcC(s),b.b,c.e),A.S(s.gcH(s),b.d,c.f))}, +j(a){var s=this +if(s.gkJ(s)===0&&s.gkH()===0){if(s.giQ(s)===0&&s.giR(s)===0&&s.gcC(s)===0&&s.gcH(s)===0)return"EdgeInsets.zero" +if(s.giQ(s)===s.giR(s)&&s.giR(s)===s.gcC(s)&&s.gcC(s)===s.gcH(s))return"EdgeInsets.all("+B.e.az(s.giQ(s),1)+")" +return"EdgeInsets("+B.e.az(s.giQ(s),1)+", "+B.e.az(s.gcC(s),1)+", "+B.e.az(s.giR(s),1)+", "+B.e.az(s.gcH(s),1)+")"}if(s.giQ(s)===0&&s.giR(s)===0)return"EdgeInsetsDirectional("+B.e.az(s.gkJ(s),1)+", "+B.e.az(s.gcC(s),1)+", "+B.e.az(s.gkH(),1)+", "+B.e.az(s.gcH(s),1)+")" +return"EdgeInsets("+B.e.az(s.giQ(s),1)+", "+B.e.az(s.gcC(s),1)+", "+B.e.az(s.giR(s),1)+", "+B.e.az(s.gcH(s),1)+") + EdgeInsetsDirectional("+B.e.az(s.gkJ(s),1)+", 0.0, "+B.e.az(s.gkH(),1)+", 0.0)"}, +l(a,b){var s=this +if(b==null)return!1 +return b instanceof A.eI&&b.giQ(b)===s.giQ(s)&&b.giR(b)===s.giR(s)&&b.gkJ(b)===s.gkJ(s)&&b.gkH()===s.gkH()&&b.gcC(b)===s.gcC(s)&&b.gcH(b)===s.gcH(s)}, +gv(a){var s=this +return A.X(s.giQ(s),s.giR(s),s.gkJ(s),s.gkH(),s.gcC(s),s.gcH(s),B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}} +A.aK.prototype={ +giQ(a){return this.a}, +gcC(a){return this.b}, +giR(a){return this.c}, +gcH(a){return this.d}, +gkJ(a){return 0}, +gkH(){return 0}, +F9(a){var s=this +return new A.I(a.a-s.a,a.b-s.b,a.c+s.c,a.d+s.d)}, +Es(a){var s=this +return new A.I(a.a+s.a,a.b+s.b,a.c-s.c,a.d-s.d)}, +G(a,b){if(b instanceof A.aK)return this.T(0,b) +return this.YK(0,b)}, +hs(a,b,c){var s=this +return new A.aK(A.S(s.a,b.a,c.a),A.S(s.b,b.b,c.e),A.S(s.c,b.c,c.b),A.S(s.d,b.d,c.f))}, +a2(a,b){var s=this +return new A.aK(s.a-b.a,s.b-b.b,s.c-b.c,s.d-b.d)}, +T(a,b){var s=this +return new A.aK(s.a+b.a,s.b+b.b,s.c+b.c,s.d+b.d)}, +au(a,b){var s=this +return new A.aK(s.a*b,s.b*b,s.c*b,s.d*b)}, +L(a){return this}, +uH(a,b,c,d){var s=this,r=b==null?s.a:b,q=d==null?s.b:d,p=c==null?s.c:c +return new A.aK(r,q,p,a==null?s.d:a)}, +Ei(a){return this.uH(a,null,null,null)}, +a83(a,b){return this.uH(a,null,null,b)}, +aGh(a,b){return this.uH(null,a,b,null)}, +aG6(a){return this.uH(null,null,null,a)}} +A.eH.prototype={ +gkJ(a){return this.a}, +gcC(a){return this.b}, +gkH(){return this.c}, +gcH(a){return this.d}, +giQ(a){return 0}, +giR(a){return 0}, +G(a,b){if(b instanceof A.eH)return this.T(0,b) +return this.YK(0,b)}, +a2(a,b){var s=this +return new A.eH(s.a-b.a,s.b-b.b,s.c-b.c,s.d-b.d)}, +T(a,b){var s=this +return new A.eH(s.a+b.a,s.b+b.b,s.c+b.c,s.d+b.d)}, +au(a,b){var s=this +return new A.eH(s.a*b,s.b*b,s.c*b,s.d*b)}, +L(a){var s=this +switch(a.a){case 0:return new A.aK(s.c,s.b,s.a,s.d) +case 1:return new A.aK(s.a,s.b,s.c,s.d)}}} +A.vh.prototype={ +au(a,b){var s=this +return new A.vh(s.a*b,s.b*b,s.c*b,s.d*b,s.e*b,s.f*b)}, +L(a){var s=this +switch(a.a){case 0:return new A.aK(s.d+s.a,s.e,s.c+s.b,s.f) +case 1:return new A.aK(s.c+s.a,s.e,s.d+s.b,s.f)}}, +giQ(a){return this.a}, +giR(a){return this.b}, +gkJ(a){return this.c}, +gkH(){return this.d}, +gcC(a){return this.e}, +gcH(a){return this.f}} +A.b1Y.prototype={} +A.bed.prototype={ +$1(a){return a<=this.a}, +$S:365} +A.bdU.prototype={ +$1(a){var s=this,r=A.W(A.bvF(s.a,s.b,a),A.bvF(s.c,s.d,a),s.e) +r.toString +return r}, +$S:366} +A.aE0.prototype={ +QS(){var s,r,q,p=this.b +if(p!=null)return p +p=this.a.length +s=1/(p-1) +if(p>4294967295)A.q(A.cK(p,0,4294967295,"length",null)) +r=J.lK(new Array(p),t.i) +for(q=0;q") +return new A.u2(s.d,s.e,s.f,A.aa(new A.ad(r,new A.aH9(b),q),!0,q.h("ax.E")),s.b,null)}, +eY(a,b){var s=A.bqq(a,this,b) +return s}, +eZ(a,b){var s=A.bqq(this,a,b) +return s}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.a1(b)!==A.o(s))return!1 +return b instanceof A.u2&&b.d.l(0,s.d)&&b.e.l(0,s.e)&&b.f===s.f&&A.e4(b.a,s.a)&&A.e4(b.b,s.b)}, +gv(a){var s=this,r=A.dt(s.a),q=s.b +q=q==null?null:A.dt(q) +return A.X(s.d,s.e,s.f,s.c,r,q,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){var s=this,r=A.a(["begin: "+s.d.j(0),"end: "+s.e.j(0),"colors: "+A.h(s.a)],t.s),q=s.b +if(q!=null)r.push("stops: "+A.h(q)) +r.push("tileMode: "+s.f.j(0)) +return"LinearGradient("+B.b.cq(r,", ")+")"}} +A.aH9.prototype={ +$1(a){var s=A.W(null,a,this.a) +s.toString +return s}, +$S:111} +A.aFq.prototype={ +ab(a){var s,r,q,p +for(s=this.b,r=s.gbw(s),q=A.k(r),q=q.h("@<1>").S(q.z[1]),r=new A.c2(J.ao(r.a),r.b,q.h("c2<1,2>")),q=q.z[1];r.u();){p=r.a;(p==null?q.a(p):p).m()}s.ab(0) +for(s=this.a,r=s.gbw(s),q=A.k(r),q=q.h("@<1>").S(q.z[1]),r=new A.c2(J.ao(r.a),r.b,q.h("c2<1,2>")),q=q.z[1];r.u();){p=r.a +if(p==null)p=q.a(p) +p.a.J(0,p.b)}s.ab(0) +this.f=0}, +EJ(a){var s,r,q,p=this,o=p.c.F(0,a) +if(o!=null){s=o.a +r=o.d +r===$&&A.b() +if(s.w)A.q(A.R(u.V)) +B.b.F(s.x,r) +o.Zn()}q=p.a.F(0,a) +if(q!=null){q.a.J(0,q.b) +return!0}o=p.b.F(0,a) +if(o!=null){s=p.f +r=o.b +r.toString +p.f=s-r +o.m() +return!0}return!1}, +a5o(a,b,c){var s,r=this,q=b.b +if(q!=null&&q<=104857600&&!0){s=r.f +q.toString +r.f=s+q +r.b.p(0,a,b) +r.anE(c)}else b.m()}, +So(a,b,c){var s=this.c.cJ(0,a,new A.aFt(this,b,a)) +if(s.b==null)s.b=c}, +ac6(a,b,c,d){var s,r,q,p,o,n,m,l=this,k=null,j={},i=l.a,h=i.i(0,b),g=h==null?k:h.a +j.a=g +if(g!=null)return g +h=l.b +q=h.F(0,b) +if(q!=null){j=q.a +l.So(b,j,q.b) +h.p(0,b,q) +return j}p=l.c.i(0,b) +if(p!=null){j=p.a +l.a5o(b,new A.Q1(j,p.b,j.ic()),k) +return j}try{g=j.a=c.$0() +l.So(b,g,k) +h=g}catch(o){s=A.ai(o) +r=A.aH(o) +d.$2(s,r) +return k}j.b=!1 +n=A.b4("pendingImage") +m=new A.kj(new A.aFu(j,l,b,!0,k,n),k,k) +n.b=new A.aiZ(h,m) +i.p(0,b,n.aF()) +j.a.P(0,m) +return j.a}, +ao(a,b){return this.a.i(0,b)!=null||this.b.i(0,b)!=null}, +anE(a){var s,r,q,p,o,n=this,m=n.b,l=A.k(m).h("c9<1>") +while(!0){if(!(n.f>104857600||m.a>1000))break +s=new A.c9(m,l) +r=s.gaj(s) +if(!r.u())A.q(A.cf()) +q=r.gH(r) +p=m.i(0,q) +s=n.f +o=p.b +o.toString +n.f=s-o +p.m() +m.F(0,q)}}} +A.aFt.prototype={ +$0(){return A.bMN(this.b,new A.aFs(this.a,this.c))}, +$S:367} +A.aFs.prototype={ +$0(){this.a.c.F(0,this.b)}, +$S:0} +A.aFu.prototype={ +$2(a,b){var s,r,q,p,o,n=this +if(a!=null){s=a.a +r=s.gdm(s)*s.gf3(s)*4 +s.m()}else r=null +s=n.a +q=s.a +p=new A.Q1(q,r,q.ic()) +q=n.b +o=n.c +q.So(o,s.a,r) +if(n.d)q.a5o(o,p,n.e) +else p.m() +q.a.F(0,o) +if(!s.b){q=n.f.aF() +q.a.J(0,q.b)}s.b=!0}, +$S:320} +A.adO.prototype={ +m(){$.cF.p3$.push(new A.b1o(this))}} +A.b1o.prototype={ +$1(a){var s=this.a,r=s.c +if(r!=null)r.m() +s.c=null}, +$S:6} +A.Q1.prototype={} +A.Gb.prototype={ +alT(a,b,c){var s=new A.b67(this,b) +this.d=s +if(a.w)A.q(A.R(u.V)) +a.x.push(s)}, +j(a){return"#"+A.bt(this)}} +A.b67.prototype={ +$0(){var s,r,q +this.b.$0() +s=this.a +r=s.a +q=s.d +q===$&&A.b() +if(r.w)A.q(A.R(u.V)) +B.b.F(r.x,q) +s.Zn()}, +$S:0} +A.aiZ.prototype={} +A.xa.prototype={ +TM(a){var s=this +return new A.xa(s.a,s.b,s.c,s.d,a,s.f)}, +l(a,b){var s=this +if(b==null)return!1 +if(J.a1(b)!==A.o(s))return!1 +return b instanceof A.xa&&b.a==s.a&&b.b==s.b&&J.i(b.c,s.c)&&b.d==s.d&&J.i(b.e,s.e)&&b.f==s.f}, +gv(a){var s=this +return A.X(s.a,s.b,s.c,s.e,s.f,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){var s,r=this,q=""+"ImageConfiguration(",p=r.a +if(p!=null){q+="bundle: "+p.j(0) +s=!0}else s=!1 +p=r.b +if(p!=null){if(s)q+=", " +p=q+("devicePixelRatio: "+B.e.az(p,1)) +q=p +s=!0}p=r.c +if(p!=null){if(s)q+=", " +p=q+("locale: "+p.j(0)) +q=p +s=!0}p=r.d +if(p!=null){if(s)q+=", " +p=q+("textDirection: "+p.j(0)) +q=p +s=!0}p=r.e +if(p!=null){if(s)q+=", " +p=q+("size: "+p.j(0)) +q=p +s=!0}p=r.f +if(p!=null){if(s)q+=", " +p=q+("platform: "+p.b) +q=p}q+=")" +return q.charCodeAt(0)==0?q:q}} +A.jD.prototype={ +L(a){var s=new A.aFH() +this.aoK(a,new A.aFE(this,a,s),new A.aFF(this,a,s)) +return s}, +aoK(a,b,c){var s,r,q,p,o,n={} +n.a=null +n.b=!1 +s=new A.aFB(n,c) +r=null +try{r=this.M9(a)}catch(o){q=A.ai(o) +p=A.aH(o) +s.$2(q,p) +return}r.b9(new A.aFA(n,this,b,s),t.H).me(s)}, +Gc(a,b,c,d){var s,r +if(b.a!=null){s=$.hC.qH$ +s===$&&A.b() +s.ac6(0,c,new A.aFC(b),d) +return}s=$.hC.qH$ +s===$&&A.b() +r=s.ac6(0,c,new A.aFD(this,c),d) +if(r!=null)b.Y9(r)}, +LX(a,b,c){throw A.c(A.a7("Implement loadBuffer for faster image loading"))}, +Fs(a,b){return new A.Fm(A.a([],t.XZ),A.a([],t.qj))}, +Ft(a,b){return new A.Fm(A.a([],t.XZ),A.a([],t.qj))}, +j(a){return"ImageConfiguration()"}} +A.aFE.prototype={ +$2(a,b){this.a.Gc(this.b,this.c,a,b)}, +$S(){return A.k(this.a).h("~(jD.T,~(B,cz?))")}} +A.aFF.prototype={ +$3(a,b,c){return this.adS(a,b,c)}, +adS(a,b,c){var s=0,r=A.y(t.H),q=this,p +var $async$$3=A.u(function(d,e){if(d===1)return A.v(e,r) +while(true)switch(s){case 0:s=2 +return A.t(null,$async$$3) +case 2:p=q.c +if(p.a==null)p.Y9(new A.b3d(A.a([],t.XZ),A.a([],t.qj))) +p=p.a +p.toString +p.xI(A.bX("while resolving an image"),b,null,!0,c) +return A.w(null,r)}}) +return A.x($async$$3,r)}, +$S(){return A.k(this.a).h("U<~>(jD.T?,B,cz?)")}} +A.aFB.prototype={ +adR(a,b){var s=0,r=A.y(t.H),q,p=this,o +var $async$$2=A.u(function(c,d){if(c===1)return A.v(d,r) +while(true)switch(s){case 0:o=p.a +if(o.b){s=1 +break}o.b=!0 +p.b.$3(o.a,a,b) +case 1:return A.w(q,r)}}) +return A.x($async$$2,r)}, +$2(a,b){return this.adR(a,b)}, +$S:369} +A.aFA.prototype={ +$1(a){var s,r,q,p=this +p.a.a=a +try{p.c.$2(a,p.d)}catch(q){s=A.ai(q) +r=A.aH(q) +p.d.$2(s,r)}}, +$S(){return A.k(this.b).h("aE(jD.T)")}} +A.aFC.prototype={ +$0(){var s=this.a.a +s.toString +return s}, +$S:198} +A.aFD.prototype={ +$0(){var s=this.a,r=this.b,q=s.Ft(r,$.hC.gaKa()) +if(q instanceof A.Fm){q=s.Fs(r,$.hC.gaK8()) +if(q instanceof A.Fm)q=s.LX(0,r,$.hC.gaK5())}return q}, +$S:198} +A.Fm.prototype={} +A.nX.prototype={ +l(a,b){var s=this +if(b==null)return!1 +if(J.a1(b)!==A.o(s))return!1 +return b instanceof A.nX&&b.a===s.a&&b.b===s.b&&b.c===s.c}, +gv(a){return A.X(this.a,this.b,this.c,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){return"AssetBundleImageKey(bundle: "+this.a.j(0)+', name: "'+this.b+'", scale: '+A.h(this.c)+")"}} +A.X4.prototype={ +Ft(a,b){return A.bjj(this.avB(a,b),a.b,null,a.c)}, +Fs(a,b){return A.bjj(this.avC(a,b),a.b,null,a.c)}, +LX(a,b,c){return A.bjj(this.avD(b,c),b.b,null,b.c)}, +ug(a,b,c,d){return this.avE(a,b,c,d)}, +avD(a,b){return this.ug(a,null,null,b)}, +avC(a,b){return this.ug(a,null,b,null)}, +avB(a,b){return this.ug(a,b,null,null)}, +avE(a,b,c,d){var s=0,r=A.y(t.hP),q,p=2,o,n,m,l,k,j,i,h,g +var $async$ug=A.u(function(e,f){if(e===1){o=f +s=p}while(true)switch(s){case 0:s=b!=null?3:4 +break +case 3:n=null +p=6 +s=9 +return A.t(a.a.Fr(a.b),$async$ug) +case 9:n=f +p=2 +s=8 +break +case 6:p=5 +i=o +if(A.ai(i) instanceof A.q4){j=$.hC.qH$ +j===$&&A.b() +j.EJ(a) +throw i}else throw i +s=8 +break +case 5:s=2 +break +case 8:q=b.$1(n) +s=1 +break +case 4:s=c!=null?10:11 +break +case 10:m=null +p=13 +s=16 +return A.t(a.a.Fr(a.b),$async$ug) +case 16:m=f +p=2 +s=15 +break +case 13:p=12 +h=o +if(A.ai(h) instanceof A.q4){j=$.hC.qH$ +j===$&&A.b() +j.EJ(a) +throw h}else throw h +s=15 +break +case 12:s=2 +break +case 15:q=c.$1(m) +s=1 +break +case 11:l=null +p=18 +s=21 +return A.t(a.a.ke(0,a.b),$async$ug) +case 21:l=f +p=2 +s=20 +break +case 18:p=17 +g=o +if(A.ai(g) instanceof A.q4){j=$.hC.qH$ +j===$&&A.b() +j.EJ(a) +throw g}else throw g +s=20 +break +case 17:s=2 +break +case 20:d.toString +q=d.$1(A.dF(l.buffer,0,null)) +s=1 +break +case 1:return A.w(q,r) +case 2:return A.v(o,r)}}) +return A.x($async$ug,r)}} +A.b3d.prototype={} +A.mA.prototype={ +gAT(){return this.a}, +M9(a){var s,r={},q=a.a +if(q==null)q=$.aqP() +r.a=r.b=null +s=t.P +A.bGk(q.aL8("AssetManifest.bin",A.bQG(),t.jo).b9(new A.arJ(r,this,a,q),s),new A.arK(r),s,t.K) +s=r.a +if(s!=null)return s +s=new A.a8($.a9,t.Lv) +r.b=new A.aD(s,t.h8) +return s}, +ao_(a,b,c){var s,r,q,p,o +if(c==null||c.length===0||b.b==null)return new A.rX(null,a) +s=A.bjP(t.i,t.pR) +for(r=c.length,q=0;q(r+q)/2){s=a.i(0,q) +s.toString +return s}else{s=a.i(0,r) +s.toString +return s}}, +l(a,b){if(b==null)return!1 +if(J.a1(b)!==A.o(this))return!1 +return b instanceof A.mA&&b.gAT()===this.gAT()&&!0}, +gv(a){return A.X(this.gAT(),this.b,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){return"AssetImage(bundle: "+A.h(this.b)+', name: "'+this.gAT()+'")'}} +A.arJ.prototype={ +$1(a){var s,r,q=this,p=q.b,o=a.aej(p.gAT()),n=p.ao_(p.gAT(),q.c,o) +p=n.a +if(p==null)p=1 +s=new A.nX(q.d,n.b,p) +p=q.a +r=p.b +if(r!=null)r.cM(0,s) +else p.a=new A.ct(s,t.WT)}, +$S:371} +A.arK.prototype={ +$2(a,b){this.a.b.f6(a,b)}, +$S:23} +A.l5.prototype={ +ht(a){return new A.l5(this.a.ht(0),this.b,this.c)}, +j(a){var s=this.c +s=s!=null?s+" ":"" +return s+this.a.j(0)+" @ "+A.mt(this.b)+"x"}, +gv(a){return A.X(this.a,this.b,this.c,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +l(a,b){var s=this +if(b==null)return!1 +if(J.a1(b)!==A.o(s))return!1 +return b instanceof A.l5&&b.a===s.a&&b.b===s.b&&b.c==s.c}} +A.kj.prototype={ +gv(a){return A.X(this.a,this.b,this.c,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +l(a,b){var s=this +if(b==null)return!1 +if(J.a1(b)!==A.o(s))return!1 +return b instanceof A.kj&&J.i(b.a,s.a)&&J.i(b.b,s.b)&&J.i(b.c,s.c)}, +aLZ(a,b){return this.a.$2(a,b)}} +A.jC.prototype={} +A.aFH.prototype={ +Y9(a){var s,r=this +r.a=a +s=r.b +if(s!=null){r.b=null +a.f=!0 +B.b.af(s,a.gDV(a)) +r.a.f=!1}}, +P(a,b){var s=this.a +if(s!=null)return s.P(0,b) +s=this.b;(s==null?this.b=A.a([],t.XZ):s).push(b)}, +J(a,b){var s,r=this.a +if(r!=null)return r.J(0,b) +for(s=0;r=this.b,s")),n),!0,n.h("z.E")) +s=!1 +for(o=m.length,l=0;l")),r),!0,r.h("z.E")) +for(s=q.length,p=0;p=s.a}else r=!0 +if(r){s=p.at +p.a0x(new A.l5(s.gl9(s).ht(0),p.Q,p.d)) +p.ax=a +s=p.at +p.ay=s.gED(s) +s=p.at +s.gl9(s).m() +p.at=null +q=B.f.js(p.ch,p.z.gv5()) +if(p.z.gBr()===-1||q<=p.z.gBr())p.yC() +return}s.toString +r=p.ax +r===$&&A.b() +p.CW=A.d2(new A.bk(B.f.bi(s.a-(a.a-r.a))),new A.aJI(p))}, +yC(){var s=0,r=A.y(t.H),q,p=2,o,n=this,m,l,k,j,i +var $async$yC=A.u(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:j=n.at +if(j!=null)j.gl9(j).m() +n.at=null +p=4 +s=7 +return A.t(n.z.pa(),$async$yC) +case 7:n.at=b +p=2 +s=6 +break +case 4:p=3 +i=o +m=A.ai(i) +l=A.aH(i) +n.xI(A.bX("resolving an image frame"),m,n.as,!0,l) +s=1 +break +s=6 +break +case 3:s=2 +break +case 6:if(n.z.gv5()===1){if(n.a.length===0){s=1 +break}j=n.at +n.a0x(new A.l5(j.gl9(j).ht(0),n.Q,n.d)) +j=n.at +j.gl9(j).m() +n.at=null +s=1 +break}n.a3M() +case 1:return A.w(q,r) +case 2:return A.v(o,r)}}) +return A.x($async$yC,r)}, +a3M(){if(this.cx)return +this.cx=!0 +$.cF.H_(this.garE())}, +a0x(a){this.Ye(a);++this.ch}, +P(a,b){var s,r=this +if(r.a.length===0){s=r.z +if(s!=null)s=r.b==null||s.gv5()>1 +else s=!1}else s=!1 +if(s)r.yC() +r.YS(0,b)}, +J(a,b){var s,r=this +r.YT(0,b) +if(r.a.length===0){s=r.CW +if(s!=null)s.aQ(0) +r.CW=null}}, +IE(){this.ah0() +if(this.w)this.y=null}} +A.aJJ.prototype={ +$2(a,b){this.a.xI(A.bX("resolving an image codec"),a,this.b,!0,b)}, +$S:23} +A.aJI.prototype={ +$0(){this.a.a3M()}, +$S:0} +A.agN.prototype={} +A.agP.prototype={} +A.agO.prototype={} +A.Wx.prototype={} +A.qh.prototype={ +l(a,b){var s=this +if(b==null)return!1 +return b instanceof A.qh&&b.a===s.a&&b.b==s.b&&b.d===s.d&&A.e4(b.f,s.f)}, +gv(a){var s=this +return A.X(s.a,s.b,s.c,s.d,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){return"InlineSpanSemanticsInformation{text: "+this.a+", semanticsLabel: "+A.h(this.b)+", recognizer: "+A.h(this.c)+"}"}} +A.kl.prototype={ +XK(a){var s={} +s.a=null +this.ck(new A.aFU(s,a,new A.Wx())) +return s.a}, +Gj(a){var s,r=new A.cV("") +this.TF(r,!0,a) +s=r.a +return s.charCodeAt(0)==0?s:s}, +ad0(){return this.Gj(!0)}, +oD(a,b){var s={} +if(b<0)return null +s.a=null +this.ck(new A.aFT(s,b,new A.Wx())) +return s.a}, +l(a,b){if(b==null)return!1 +if(this===b)return!0 +if(J.a1(b)!==A.o(this))return!1 +return b instanceof A.kl&&J.i(b.a,this.a)}, +gv(a){return J.T(this.a)}} +A.aFU.prototype={ +$1(a){var s=a.XL(this.b,this.c) +this.a.a=s +return s==null}, +$S:101} +A.aFT.prototype={ +$1(a){var s=a.a7B(this.b,this.c) +this.a.a=s +return s==null}, +$S:101} +A.a6l.prototype={ +TF(a,b,c){a.a+=A.ep(65532)}, +Kt(a){a.push(B.Vg)}} +A.cE.prototype={ +cl(a,b){var s=this.a.cl(0,b) +return new A.cE(this.b.au(0,b),s)}, +eY(a,b){var s,r,q=this +if(a instanceof A.cE){s=A.bn(a.a,q.a,b) +r=A.o0(a.b,q.b,b) +r.toString +return new A.cE(r,s)}if(a instanceof A.h3){s=A.bn(a.a,q.a,b) +return new A.jg(q.b,1-b,a.b,s)}return q.yn(a,b)}, +eZ(a,b){var s,r,q=this +if(a instanceof A.cE){s=A.bn(q.a,a.a,b) +r=A.o0(q.b,a.b,b) +r.toString +return new A.cE(r,s)}if(a instanceof A.h3){s=A.bn(q.a,a.a,b) +return new A.jg(q.b,b,a.b,s)}return q.yo(a,b)}, +qB(a){var s=a==null?this.a:a +return new A.cE(this.b,s)}, +fO(a,b){var s=this.b.L(b).e2(a).dZ(-this.a.ghp()),r=$.as().cZ() +r.fT(s) +return r}, +p8(a){return this.fO(a,null)}, +eh(a,b){var s=$.as().cZ() +s.fT(this.b.L(b).e2(a)) +return s}, +kv(a){return this.eh(a,null)}, +lp(a,b,c,d){var s=this.b +if(s.l(0,B.aJ))a.el(b,c) +else a.de(s.L(d).e2(b),c)}, +gkl(){return!0}, +hV(a,b,c){var s,r,q,p,o=this.a +switch(o.c.a){case 0:break +case 1:s=this.b +if(o.b===0)a.de(s.L(c).e2(b),o.lu()) +else{r=$.as().bn() +r.sa5(0,o.a) +q=s.L(c).e2(b) +p=q.dZ(-o.ghp()) +a.Ae(q.dZ(o.gyi()),p,r)}break}}, +aD(a,b){return this.hV(a,b,null)}, +l(a,b){if(b==null)return!1 +if(J.a1(b)!==A.o(this))return!1 +return b instanceof A.cE&&b.a.l(0,this.a)&&b.b.l(0,this.b)}, +gv(a){return A.X(this.a,this.b,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){return"RoundedRectangleBorder("+this.a.j(0)+", "+this.b.j(0)+")"}} +A.jg.prototype={ +cl(a,b){var s=this.a.cl(0,b) +return new A.jg(this.b.au(0,b),b,this.d,s)}, +eY(a,b){var s,r,q,p=this +if(a instanceof A.cE){s=A.bn(a.a,p.a,b) +r=A.o0(a.b,p.b,b) +r.toString +return new A.jg(r,p.c*b,p.d,s)}if(a instanceof A.h3){s=A.bn(a.a,p.a,b) +r=p.c +return new A.jg(p.b,r+(1-r)*(1-b),a.b,s)}if(a instanceof A.jg){s=A.bn(a.a,p.a,b) +r=A.o0(a.b,p.b,b) +r.toString +q=A.ag(a.c,p.c,b) +q.toString +return new A.jg(r,q,p.d,s)}return p.yn(a,b)}, +eZ(a,b){var s,r,q,p=this +if(a instanceof A.cE){s=A.bn(p.a,a.a,b) +r=A.o0(p.b,a.b,b) +r.toString +return new A.jg(r,p.c*(1-b),p.d,s)}if(a instanceof A.h3){s=A.bn(p.a,a.a,b) +r=p.c +return new A.jg(p.b,r+(1-r)*b,a.b,s)}if(a instanceof A.jg){s=A.bn(p.a,a.a,b) +r=A.o0(p.b,a.b,b) +r.toString +q=A.ag(p.c,a.c,b) +q.toString +return new A.jg(r,q,p.d,s)}return p.yo(a,b)}, +Dx(a){var s,r,q,p,o,n,m,l,k=this.c +if(k===0||a.c-a.a===a.d-a.b)return a +s=a.c +r=a.a +q=s-r +p=a.d +o=a.b +n=p-o +m=1-this.d +if(q")),!0,t.Q2)}if(s.e.gkl())p.x=A.aa(new A.ad(r,new A.bay(a),A.ab(r).h("ad<1,I>")),!0,t.YT) +else p.y=A.aa(new A.ad(r,new A.baz(p,a,b),A.ab(r).h("ad<1,D6>")),!0,t.ke)}r=s.e +if(!r.gkl())q=p.r!=null||p.w!=null +else q=!1 +if(q)p.e=r.eh(a,b) +if(s.c!=null)p.f=r.fO(a,b) +p.c=a +p.d=b}, +axX(a,b,c){var s,r,q,p,o=this +if(o.w!=null){s=o.b.e +if(s.gkl()){r=0 +while(!0){q=o.w +q.toString +if(!(r>>0)+r+-56613888 +break $label0$0}if(56320===s){r=r.oD(0,a-1) +r.toString +r=(r<<10>>>0)+q+-56613888 +break $label0$0}r=q +break $label0$0}return r}, +aBe(a,b){var s,r=this.aob(b?a-1:a),q=b?a:a-1,p=this.a.oD(0,q) +if(!(r==null||p==null||A.btb(r)||A.btb(p))){q=A.bF("[\\p{Space_Separator}\\p{Punctuation}]",!0,!1,!0) +s=A.ep(r) +q=!q.b.test(s)}else q=!0 +return q}, +gabj(){var s=this,r=s.c +if(r===$){r!==$&&A.am() +r=s.c=new A.anJ(s.gaBd(),s)}return r}} +A.anJ.prototype={ +iJ(a){var s +if(a<0)return null +s=this.b.iJ(a) +return s==null||this.a.$2(s,!1)?s:this.iJ(s-1)}, +iL(a){var s=this.b.iL(Math.max(a,0)) +return s==null||this.a.$2(s,!0)?s:this.iL(s)}} +A.bbQ.prototype={ +vA(a){var s +switch(a.a){case 0:s=this.a +s=s.gE0(s) +break +case 1:s=this.a +s=s.gaaf(s) +break +default:s=null}return s}} +A.bbU.prototype={ +gr1(){var s,r,q=this.c +if(q===0)return B.i +s=this.a +r=s.a +if(!isFinite(r.gf3(r)))return B.aaK +r=this.b +s=s.a +return new A.l(q*(r-s.gf3(s)),0)}, +azt(a,b,c){var s,r,q=this,p=q.a,o=A.bum(a,b,c,p) +if(o===q.b)return!0 +if(!isFinite(q.gr1().a)){s=p.a +s=!isFinite(s.gf3(s))&&isFinite(a)}else s=!1 +if(s)return!1 +r=p.a.gxq() +p=p.a +if(p.gf3(p)-r>-1e-10&&b-r>-1e-10){q.b=o +return!0}return!1}} +A.zI.prototype={} +A.zE.prototype={} +A.aa7.prototype={ +a6(){var s=this.b +if(s!=null)s.a.a.m() +this.b=null}, +se9(a,b){var s,r,q,p=this +if(J.i(p.f,b))return +s=p.f +s=s==null?null:s.a +r=b==null +if(!J.i(s,r?null:b.a)){s=p.CW +if(s!=null)s.m() +p.CW=null}if(r)q=B.bR +else{s=p.f +s=s==null?null:s.bM(0,b) +q=s==null?B.bR:s}p.f=b +p.r=null +s=q.a +if(s>=3)p.a6() +else if(s>=2)p.c=!0}, +gnu(){var s=this.r +if(s==null){s=this.f +s=s==null?null:s.Gj(!1) +this.r=s}return s==null?"":s}, +sBx(a,b){if(this.w===b)return +this.w=b +this.a6()}, +scF(a){var s,r=this +if(r.x===a)return +r.x=a +r.a6() +s=r.CW +if(s!=null)s.m() +r.CW=null}, +stM(a){var s,r=this +if(r.y===a)return +r.y=a +r.a6() +s=r.CW +if(s!=null)s.m() +r.CW=null}, +saHk(a){if(this.z==a)return +this.z=a +this.a6()}, +sB2(a,b){if(J.i(this.Q,b))return +this.Q=b +this.a6()}, +sB5(a){if(this.as==a)return +this.as=a +this.a6()}, +srB(a){if(J.i(this.at,a))return +this.at=a +this.a6()}, +sBz(a){if(this.ax===a)return +this.ax=a}, +gaap(){var s,r,q,p=this.b +if(p==null)return null +s=p.gr1() +if(!isFinite(s.a)||!isFinite(s.b))return A.a([],t.Lx) +r=p.d +if(r==null)r=p.d=p.a.a.GI() +if(s.l(0,B.i))return r +q=A.ab(r).h("ad<1,hf>") +return A.aa(new A.ad(r,new A.aY1(s),q),!1,q.h("ax.E"))}, +tZ(a){if(a==null||a.length===0||A.e4(a,this.ch))return +this.ch=a +this.a6()}, +a04(a4){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1=this,a2=null,a3=a1.f.a +if(a3==null)a3=a2 +else{s=a1.w +r=a1.x +if(r==null)r=a4 +q=a1.y +p=a1.as +o=a1.ay +n=a1.z +m=a1.Q +l=a1.at +k=a3.at +o=k==null?a2:new A.OC(k) +j=a3.w +i=a3.x +h=a3.d +g=a3.r +if(g==null)g=14 +a3=a3.as +if(l==null)l=a2 +else{f=l.a +e=l.gpH() +d=l.d +d=d==null?a2:d*q +c=l.e +b=l.x +a=l.r +a0=l.w +l=l.y +b=$.as().a8l(f,e,d,a0,a,l,c,b,a2) +l=b}r=A.bjr(n,h,g*q,i,j,a3,m,p,l,s,r,o) +a3=r}if(a3==null){a3=a1.w +s=a1.x +if(s==null)s=a4 +r=a1.y +q=a1.as +p=a1.ay +p=A.bjr(a1.z,a2,14*r,a2,a2,a2,a1.Q,q,a2,a3,s,p) +a3=p}return a3}, +aoO(){return this.a04(null)}, +gf1(){var s,r,q=this,p=q.CW +if(p==null){p=q.a04(B.ab) +s=$.as().KE(p) +p=q.f +if(p==null)r=null +else{p=p.a +r=p==null?null:p.GX(q.y)}if(r!=null)s.Bm(r) +s.DY(" ") +p=s.aP() +p.ie(B.ab7) +q.CW=p}return p.gdm(p)}, +a03(a){var s=this,r=s.aoO(),q=$.as().KE(r) +r=s.y +a.Kf(q,s.ch,r) +s.c=!1 +return q.aP()}, +LW(a,b){var s,r,q,p,o,n,m,l,k=this,j=k.b,i=j==null +if(!i&&j.azt(b,a,k.ax))return +s=k.f +if(s==null)throw A.c(A.R("TextPainter.text must be set to a non-null value before using the TextPainter.")) +r=k.x +if(r==null)throw A.c(A.R("TextPainter.textDirection must be set to a non-null value before using the TextPainter.")) +q=A.bsx(k.w,r) +if(!(!isFinite(a)&&q!==0))p=a +else p=i?null:Math.ceil(j.a.a.gxq()) +o=p==null +k.d=o?a:p +n=i?null:j.a.a +if(n==null)n=k.a03(s) +n.ie(new A.qx(k.d)) +i=new A.bbQ(n) +m=A.bum(b,a,k.ax,i) +if(o&&isFinite(b)){l=Math.ceil(i.a.gxq()) +n.ie(new A.qx(l)) +k.d=l}k.b=new A.bbU(i,m,q)}, +ab2(){return this.LW(1/0,0)}, +aD(a,b){var s,r,q,p=this,o=p.b +if(o==null)throw A.c(A.R("TextPainter.paint called when text geometry was not yet calculated.\nPlease call layout() before paint() to position the text before painting it.")) +if(!isFinite(o.gr1().a)||!isFinite(o.gr1().b))return +if(p.c){s=o.a +r=s.a +q=p.f +q.toString +q=p.a03(q) +q.ie(new A.qx(p.d)) +s.a=q +r.m()}a.uO(o.a.a,b.T(0,o.gr1()))}, +XB(a){var s=this.f.oD(0,a) +if(s==null)return null +return(s&64512)===55296?a+2:a+1}, +XC(a){var s=a-1,r=this.f.oD(0,s) +if(r==null)return null +return(r&64512)===56320?a-2:s}, +a18(a){var s,r,q,p,o,n,m,l,k,j=this,i=j.gnu().length +if(i===0||a>i)return null +s=B.c.oD(j.gnu(),Math.max(0,a-1)) +r=s&64512 +q=r===55296||r===56320||j.f.oD(0,a)===8205||s===8207||s===8206 +p=q?2:1 +o=A.a([],t.Lx) +for(r=-i,n=!q,m=s===10;o.length===0;){l=a-p +o=j.b.a.a.Nt(Math.max(0,l),a,B.qe) +if(o.length===0){if(n&&m)break +if(l>>0,n=!q;o.length===0;){m=a+p +o=this.b.a.a.Nt(a,m,B.qe) +if(o.length===0){if(n)break +if(m>=r)break +p*=2 +continue}l=B.b.gN(o).e===B.j?B.b.gN(o):B.b.ga1(o) +r=l.e +n=r===B.j?l.a:l.c +k=l.b +return new A.zI(new A.l(n,k),r,l.d-k)}return null}, +rn(a,b){var s,r,q,p,o,n,m,l,k,j,i=this,h=null,g=i.b +g.toString +s=a.a<0?B.Lb:i.a_P(a) +$label0$0:{r=A.dr("#0#2",new A.aXZ(s)) +q=A.dr("#0#4",new A.aY_(s)) +p=A.dr("#0#7",new A.aY0(s)) +if(s instanceof A.zE)if(typeof r.b1()=="number"){o=r.b1() +n=!0}else{o=h +n=!1}else{o=h +n=!1}if(n){n=i.w +m=i.x +m.toString +l=A.bsx(n,m) +return new A.l(l===0?0:l*g.b,o)}n=s instanceof A.zI +if(n)if(B.j===q.b1())if(p.b1() instanceof A.l){k=p.b1() +m=!0}else{k=h +m=!1}else{k=h +m=!1}else{k=h +m=!1}if(m){j=k +break $label0$0}if(n)if(B.ab===q.b1())if(p.b1() instanceof A.l){k=p.b1() +n=!0}else{k=h +n=!1}else{k=h +n=!1}else{k=h +n=!1}j=n?new A.l(k.a-(b.c-b.a),k.b):h}return new A.l(A.S(j.a+g.gr1().a,0,g.b),j.b+g.gr1().b)}, +Xt(a,b){var s,r,q,p,o=null +if(a.a<0)return o +s=this.a_P(a) +r=A.dr("#0#2",new A.aXY(s)) +$label0$0:{if(s instanceof A.zI)if(typeof r.b1()=="number"){q=r.b1() +p=!0}else{q=o +p=!1}else{q=o +p=!1}if(p){p=q +break $label0$0}if(s instanceof A.zE){p=o +break $label0$0}p=o}return p}, +a_P(a){var s,r,q=this,p=q.b +if(a.l(0,p.f)){s=q.cx +s===$&&A.b() +return s}r=a.a +switch(a.b.a){case 0:s=q.a18(r) +if(s==null)s=q.a17(r) +break +case 1:s=q.a17(r) +if(s==null)s=q.a18(r) +break +default:s=null}p.f=a +return q.cx=s==null?B.Lb:s}, +xT(a,b,c){var s,r,q=this.b,p=q.gr1() +if(!isFinite(p.a)||!isFinite(p.b))return A.a([],t.Lx) +s=q.a.a.GJ(a.a,a.b,b,c) +if(p.l(0,B.i))r=s +else{r=A.ab(s).h("ad<1,hf>") +r=A.aa(new A.ad(s,new A.aXX(p),r),!1,r.h("ax.E"))}return r}, +rm(a){return this.xT(a,B.c3,B.bK)}, +hE(a){var s=this.b +return s.a.a.hE(a.a2(0,s.gr1()))}, +zG(){var s,r,q=this.b,p=q.gr1() +if(!isFinite(p.a)||!isFinite(p.b))return B.a1Q +s=q.e +if(s==null){s=q.a.a.zG() +q.e=s}if(p.l(0,B.i))r=s +else{r=A.ab(s).h("ad<1,u1>") +r=A.aa(new A.ad(s,new A.aXW(p),r),!1,r.h("ax.E"))}return r}, +m(){var s=this,r=s.CW +if(r!=null)r.m() +s.CW=null +r=s.b +if(r!=null)r.a.a.m() +s.f=s.b=null}} +A.aY1.prototype={ +$1(a){return A.bsy(a,this.a)}, +$S:173} +A.aXP.prototype={ +$0(){return this.a.a}, +$S:381} +A.aXR.prototype={ +$0(){return this.a.b}, +$S:192} +A.aXQ.prototype={ +$0(){return B.b3===this.a.b1()}, +$S:17} +A.aXS.prototype={ +$0(){return B.j===this.a.b1()}, +$S:17} +A.aXT.prototype={ +$0(){return B.ab===this.a.b1()}, +$S:17} +A.aXU.prototype={ +$0(){return B.l8===this.a.b1()}, +$S:17} +A.aXV.prototype={ +$0(){return B.p0===this.a.b1()}, +$S:17} +A.aXZ.prototype={ +$0(){return t.Wt.a(this.a).a}, +$S:80} +A.aY_.prototype={ +$0(){return t.YL.a(this.a).b}, +$S:192} +A.aY0.prototype={ +$0(){return t.YL.a(this.a).a}, +$S:383} +A.aXY.prototype={ +$0(){return t.YL.a(this.a).c}, +$S:80} +A.aXX.prototype={ +$1(a){return A.bsy(a,this.a)}, +$S:173} +A.aXW.prototype={ +$1(a){var s=this.a,r=a.gaa2(),q=a.ga6Y(),p=a.gU8(),o=a.gadi(),n=a.gdm(a),m=a.gf3(a),l=a.goU(a),k=a.gqw(),j=a.gVI(a) +return $.as().a8e(q,k+s.b,p,r,n,l+s.a,j,o,m)}, +$S:384} +A.uT.prototype={ +ga8s(a){return this.e}, +gXg(){return!0}, +oQ(a,b){t.pY.b(a)}, +Kf(a,b,c){var s,r,q,p,o,n=this.a,m=n!=null +if(m)a.Bm(n.GX(c)) +n=this.b +if(n!=null)try{a.DY(n)}catch(q){n=A.ai(q) +if(n instanceof A.kQ){s=n +r=A.aH(q) +A.dV(new A.cc(s,r,"painting library",A.bX("while building a TextSpan"),null,!1)) +a.DY("\ufffd")}else throw q}p=this.c +if(p!=null)for(n=p.length,o=0;o0?q:B.di +if(p===B.bR)return p}else p=B.di +s=n.c +if(s!=null)for(r=b.c,o=0;op.a)p=q +if(p===B.bR)return p}return p}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.a1(b)!==A.o(s))return!1 +if(!s.YV(0,b))return!1 +return b instanceof A.uT&&b.b==s.b&&s.e.l(0,b.e)&&A.e4(b.c,s.c)}, +gv(a){var s=this,r=null,q=A.kl.prototype.gv.call(s,s),p=s.c +p=p==null?r:A.dt(p) +return A.X(q,s.b,r,r,r,r,s.e,p,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +f2(){return"TextSpan"}, +$iaC:1, +$iow:1, +gW1(){return null}, +gW2(){return null}} +A.J.prototype={ +gpH(){var s,r=this.e +if(!(this.f==null))if(r==null)r=null +else{s=A.ab(r).h("ad<1,f>") +s=A.aa(new A.ad(r,new A.aY4(this),s),!0,s.h("ax.E")) +r=s}return r}, +gwr(a){var s,r=this.f +if(r!=null){s=this.d +return s==null?null:B.c.cv(s,("packages/"+r+"/").length)}return this.d}, +uG(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){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1=this,a2=c1==null?a1.a:c1,a3=a1.ay +if(a3==null&&b9==null)s=a6==null?a1.b:a6 +else s=null +r=a1.ch +if(r==null&&a4==null)q=a5==null?a1.c:a5 +else q=null +p=b5==null?a1.r:b5 +o=b8==null?a1.w:b8 +n=c3==null?a1.y:c3 +m=c9==null?a1.z:c9 +l=c8==null?a1.Q:c8 +k=c0==null?a1.as:c0 +j=c2==null?a1.at:c2 +a3=b9==null?a3:b9 +r=a4==null?r:a4 +i=c7==null?a1.dy:c7 +h=b7==null?a1.fx:b7 +g=a8==null?a1.CW:a8 +f=a9==null?a1.cx:a9 +e=b0==null?a1.cy:b0 +d=b1==null?a1.db:b1 +c=b2==null?a1.gwr(a1):b2 +b=b3==null?a1.e:b3 +a=c6==null?a1.f:c6 +a0=c5==null?a1.fy:c5 +return A.eb(r,q,s,null,g,f,e,d,c,b,a1.fr,p,a1.x,h,o,a3,k,a2,j,n,a1.ax,a0,a,i,l,m)}, +aGp(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5){return this.uG(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,null,r,s,a0,a1,a2,a3,a4,a5)}, +a86(a,b,c){return this.uG(null,null,a,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,b,null,null,null,null,null,c)}, +co(a){return this.uG(null,null,a,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null)}, +KB(a,b){return this.uG(null,null,a,null,null,null,null,null,null,null,null,b,null,null,null,null,null,null,null,null,null,null,null,null,null,null)}, +aG0(a){return this.uG(null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,a,null,null,null,null,null,null)}, +a7T(a){return this.uG(null,null,null,null,null,null,null,null,null,null,null,null,null,null,a,null,null,null,null,null,null,null,null,null,null,null)}, +a7V(a){return this.uG(null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,a,null,null,null,null,null,null,null,null)}, +a7U(a){return this.uG(null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,a,null,null,null,null,null,null,null,null,null)}, +jz(a,b,c,d,e,a0,a1,a2,a3){var s,r,q,p,o,n,m,l,k,j,i,h=this,g=null,f=h.ay +if(f==null)s=a==null?h.b:a +else s=g +r=h.ch +if(r==null)q=h.c +else q=g +p=h.gwr(h) +o=h.r +o=o==null?g:o*a2+a1 +n=h.w +n=n==null?g:B.xB[B.f.hs(n.a,0,8)] +m=h.y +m=m==null?g:m+0 +l=h.z +l=l==null?g:l+0 +k=h.as +k=k==null?g:k+0 +j=c==null?h.cx:c +i=h.db +i=i==null?g:i+0 +return A.eb(r,q,s,g,h.CW,j,h.cy,i,p,h.e,h.fr,o,h.x,h.fx,n,f,k,h.a,h.at,m,h.ax,h.fy,h.f,h.dy,h.Q,l)}, +T8(a){return this.jz(a,null,null,null,null,null,0,1,null)}, +cU(a4){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a3 +if(a4==null)return this +if(!a4.a)return a4 +s=a4.b +r=a4.c +q=a4.r +p=a4.w +o=a4.x +n=a4.y +m=a4.z +l=a4.Q +k=a4.as +j=a4.at +i=a4.ax +h=a4.ay +g=a4.ch +f=a4.dy +e=a4.fr +d=a4.fx +c=a4.CW +b=a4.cx +a=a4.cy +a0=a4.db +a1=a4.gwr(a4) +a2=a4.e +a3=a4.f +return this.aGp(g,r,s,null,c,b,a,a0,a1,a2,e,q,o,d,p,h,k,j,n,i,a4.fy,a3,f,l,m)}, +GX(a){var s,r,q=this,p=q.gpH(),o=q.r +o=o==null?null:o*a +s=q.ch +if(s==null){s=q.c +if(s!=null){r=$.as().bn() +r.sa5(0,s) +s=r}else s=null}return A.bsz(s,q.b,q.CW,q.cx,q.cy,q.db,q.d,p,q.fr,o,q.x,q.fx,q.w,q.ay,q.as,q.at,q.y,q.ax,q.dy,q.Q,q.z)}, +bM(a,b){var s=this +if(s===b)return B.di +if(s.a!==b.a||s.d!=b.d||s.r!=b.r||s.w!=b.w||s.y!=b.y||s.z!=b.z||s.Q!=b.Q||s.as!=b.as||s.at!=b.at||s.ay!=b.ay||s.ch!=b.ch||!A.e4(s.dy,b.dy)||!A.e4(s.fr,b.fr)||!A.e4(s.fx,b.fx)||!A.e4(s.gpH(),b.gpH())||s.fy!=b.fy)return B.bR +if(!J.i(s.b,b.b)||!J.i(s.c,b.c)||!J.i(s.CW,b.CW)||!J.i(s.cx,b.cx)||s.cy!=b.cy||s.db!=b.db)return B.aca +return B.di}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.a1(b)!==A.o(s))return!1 +return b instanceof A.J&&b.a===s.a&&J.i(b.b,s.b)&&J.i(b.c,s.c)&&b.r==s.r&&b.w==s.w&&b.y==s.y&&b.z==s.z&&b.Q==s.Q&&b.as==s.as&&b.at==s.at&&b.ay==s.ay&&b.ch==s.ch&&A.e4(b.dy,s.dy)&&A.e4(b.fr,s.fr)&&A.e4(b.fx,s.fx)&&J.i(b.CW,s.CW)&&J.i(b.cx,s.cx)&&b.cy==s.cy&&b.db==s.db&&b.d==s.d&&A.e4(b.gpH(),s.gpH())&&b.f==s.f&&b.fy==s.fy}, +gv(a){var s,r=this,q=null,p=r.gpH(),o=p==null?q:A.dt(p),n=A.X(r.cy,r.db,r.d,o,r.f,r.fy,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a),m=r.dy,l=r.fx +o=m==null?q:A.dt(m) +s=l==null?q:A.dt(l) +return A.X(r.a,r.b,r.c,r.r,r.w,r.x,r.y,r.z,r.Q,r.as,r.at,r.ax,r.ay,r.ch,o,q,s,r.CW,r.cx,n)}, +f2(){return"TextStyle"}} +A.aY4.prototype={ +$1(a){return"packages/"+A.h(this.a.f)+"/"+a}, +$S:19} +A.amY.prototype={} +A.a1h.prototype={ +alw(a,b,c,d,e){var s=this +s.r=A.bvt(new A.aCQ(s),s.gUr(s),0,10,0)}, +hD(a,b){var s,r,q=this +if(b>q.r)return q.gAz() +s=q.e +r=q.c +return q.d+s*Math.pow(q.b,b)/r-s/r-q.f/2*b*b}, +j1(a,b){var s=this +if(b>s.r)return 0 +return s.e*Math.pow(s.b,b)-s.f*b}, +gAz(){var s=this +if(s.f===0)return s.d-s.e/s.c +return s.hD(0,s.r)}, +acU(a){var s,r=this,q=r.d +if(a===q)return 0 +s=r.e +if(s!==0)if(s>0)q=ar.gAz() +else q=a>q||a=r.b&&r.c>=r.d +else q=!0 +if(q){n.h7(0) +n=o.df +o.id=n.a=n.b=new A.V(A.S(0,r.a,r.b),A.S(0,r.c,r.d)) +o.k7=B.Jc +n=o.E$ +if(n!=null)n.ie(r) +return}s.cX(r,!0) +switch(o.k7.a){case 0:n=o.df +s=o.E$ +n.a=n.b=s.gq(s) +o.k7=B.oq +break +case 1:s=o.df +q=s.b +p=o.E$ +if(!J.i(q,p.gq(p))){s.a=o.gq(o) +q=o.E$ +s.b=q.gq(q) +o.f7=0 +n.oO(0,0) +o.k7=B.ac8}else{q=n.x +q===$&&A.b() +if(q===n.b){n=o.E$ +s.a=s.b=n.gq(n)}else{s=n.r +if(!(s!=null&&s.a!=null))n.bS(0)}}break +case 2:s=o.df +q=s.b +p=o.E$ +if(!J.i(q,p.gq(p))){q=o.E$ +s.a=s.b=q.gq(q) +o.f7=0 +n.oO(0,0) +o.k7=B.ac9}else{o.k7=B.oq +s=n.r +if(!(s!=null&&s.a!=null))n.bS(0)}break +case 3:s=o.df +q=s.b +p=o.E$ +if(!J.i(q,p.gq(p))){q=o.E$ +s.a=s.b=q.gq(q) +o.f7=0 +n.oO(0,0)}else{n.h7(0) +o.k7=B.oq}break}n=o.df +s=o.em +s===$&&A.b() +s=n.a_(0,s.gk(s)) +s.toString +o.id=r.bI(s) +o.K6() +if(o.gq(o).a=a.b&&a.c>=a.d +else s=!0 +if(s)return new A.V(A.S(0,a.a,a.b),A.S(0,a.c,a.d)) +r=p.lC(a) +switch(q.k7.a){case 0:return a.bI(r) +case 1:if(!J.i(q.df.b,r))return a.bI(q.gq(q)) +else{p=q.dA +p===$&&A.b() +s=p.x +s===$&&A.b() +if(s===p.b)return a.bI(r)}break +case 3:case 2:if(!J.i(q.df.b,r))return a.bI(r) +break}p=q.em +p===$&&A.b() +p=q.df.a_(0,p.gk(p)) +p.toString +return a.bI(p)}, +aD(a,b){var s,r,q,p=this +if(p.E$!=null){s=p.e5 +s===$&&A.b() +s=s&&p.pB!==B.l}else s=!1 +r=p.a9g +if(s){s=p.gq(p) +q=p.cx +q===$&&A.b() +r.sb3(0,a.tE(q,b,new A.I(0,0,0+s.a,0+s.b),A.ys.prototype.giE.call(p),p.pB,r.a))}else{r.sb3(0,null) +p.ai2(a,b)}}, +m(){this.a9g.sb3(0,null) +this.jr()}} +A.aOJ.prototype={ +$0(){var s=this.a,r=s.dA +r===$&&A.b() +r=r.x +r===$&&A.b() +if(r!==s.f7)s.a6()}, +$S:0} +A.DG.prototype={ +V1(){var s=this,r=s.b6$ +r===$&&A.b() +r=r.e +r.toString +r.swG(s.a8p()) +if(s.b6$.e.E$!=null)s.af5()}, +Va(){}, +V4(){}, +a8p(){var s,r=$.bL().d.i(0,0),q=r.x +if(q==null){s=self.window.devicePixelRatio +q=s===0?1:s}return new A.aaU(r.gnt().i1(0,q),q)}, +aJZ(){var s,r=this.b8$ +if(r!=null){r.ah$=$.b5() +r.ak$=0}r=t.S +s=$.b5() +this.b8$=new A.a5a(new A.aPG(this),new A.aJp(B.bn,A.F(r,t.ZA)),A.F(r,t.xg),s)}, +atU(){var s=this.b6$ +s===$&&A.b() +s=s.e +s.y.ch.G(0,s) +s.y.Bs()}, +atY(a){var s=this.b6$ +s===$&&A.b() +s.e.toString +s=$.hx;(s==null?$.hx=A.pX():s).aP4(a)}, +atW(){var s=this.b6$ +s===$&&A.b() +s.e.zB()}, +auy(a){B.a9G.pl("first-frame",null,!1,t.H)}, +at8(a){this.Uq() +this.aA6()}, +aA6(){$.cF.p3$.push(new A.aPF(this))}, +a6K(){--this.cc$ +if(!this.fF$)this.XZ()}, +Uq(){var s=this,r=s.b6$ +r===$&&A.b() +r.a9y() +s.b6$.a9w() +s.b6$.a9z() +if(s.fF$||s.cc$===0){s.b6$.e.aFC() +s.b6$.a9A() +s.fF$=!0}}, +$iaC:1, +$ii6:1} +A.aPG.prototype={ +$2(a,b){var s=A.aEL(),r=this.a,q=r.b6$ +q===$&&A.b() +q.e.dc(s,a) +r.On(s,a,b) +return s}, +$S:386} +A.aPF.prototype={ +$1(a){this.a.b8$.aOU()}, +$S:6} +A.PP.prototype={ +m(){this.a.gDA().J(0,this.geL()) +this.eH()}} +A.aL.prototype={ +En(a,b,c,d){var s=this,r=d==null?s.a:d,q=b==null?s.b:b,p=c==null?s.c:c +return new A.aL(r,q,p,a==null?s.d:a)}, +aGj(a,b){return this.En(null,null,a,b)}, +TO(a,b){return this.En(null,a,null,b)}, +aGi(a,b){return this.En(a,null,b,null)}, +a7X(a){return this.En(a,null,null,null)}, +Ej(a){return this.En(null,a,null,null)}, +KO(a){var s=this,r=a.gdD(),q=a.gcC(a)+a.gcH(a),p=Math.max(0,s.a-r),o=Math.max(0,s.c-q) +return new A.aL(p,Math.max(p,s.b-r),o,Math.max(o,s.d-q))}, +wZ(a){var s=this,r=a.a,q=a.b,p=a.c,o=a.d +return new A.aL(A.S(s.a,r,q),A.S(s.b,r,q),A.S(s.c,p,o),A.S(s.d,p,o))}, +WV(a,b){var s,r,q=this,p=b==null,o=q.a,n=p?o:A.S(b,o,q.b),m=q.b +p=p?m:A.S(b,o,m) +o=a==null +m=q.c +s=o?m:A.S(a,m,q.d) +r=q.d +return new A.aL(n,p,s,o?r:A.S(a,m,r))}, +Gi(a){return this.WV(null,a)}, +N3(a){return this.WV(a,null)}, +bI(a){var s=this +return new A.V(A.S(a.a,s.a,s.b),A.S(a.b,s.c,s.d))}, +aFF(a){var s,r,q,p,o,n=this,m=n.a,l=n.b +if(m>=l&&n.c>=n.d)return new A.V(A.S(0,m,l),A.S(0,n.c,n.d)) +s=a.a +r=a.b +q=s/r +if(s>l){r=l/q +s=l}p=n.d +if(r>p){s=p*q +r=p}if(s=s.b&&s.c>=s.d}, +au(a,b){var s=this +return new A.aL(s.a*b,s.b*b,s.c*b,s.d*b)}, +gaKv(){var s=this,r=s.a +if(r>=0)if(r<=s.b){r=s.c +r=r>=0&&r<=s.d}else r=!1 +else r=!1 +return r}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.a1(b)!==A.o(s))return!1 +return b instanceof A.aL&&b.a===s.a&&b.b===s.b&&b.c===s.c&&b.d===s.d}, +gv(a){var s=this +return A.X(s.a,s.b,s.c,s.d,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){var s,r=this,q=r.gaKv()?"":"; NOT NORMALIZED",p=r.a +if(p===1/0&&r.c===1/0)return"BoxConstraints(biggest"+q+")" +if(p===0&&r.b===1/0&&r.c===0&&r.d===1/0)return"BoxConstraints(unconstrained"+q+")" +s=new A.atx() +return"BoxConstraints("+s.$3(p,r.b,"w")+", "+s.$3(r.c,r.d,"h")+q+")"}} +A.atx.prototype={ +$3(a,b,c){if(a===b)return c+"="+B.e.az(a,1) +return B.e.az(a,1)+"<="+c+"<="+B.e.az(b,1)}, +$S:387} +A.pG.prototype={ +T2(a,b,c){if(c!=null){c=A.xL(A.bjt(c)) +if(c==null)return!1}return this.DZ(a,b,c)}, +oz(a,b,c){var s,r=b==null,q=r?c:c.a2(0,b) +r=!r +if(r)this.c.push(new A.Gm(new A.l(-b.a,-b.b))) +s=a.$2(this,q) +if(r)this.MH() +return s}, +DZ(a,b,c){var s,r=c==null,q=r?b:A.cD(c,b) +r=!r +if(r)this.c.push(new A.RS(c)) +s=a.$2(this,q) +if(r)this.MH() +return s}, +a6J(a,b,c){var s,r=this +if(b!=null)r.c.push(new A.Gm(new A.l(-b.a,-b.b))) +else{c.toString +c=A.xL(A.bjt(c)) +c.toString +r.c.push(new A.RS(c))}s=a.$1(r) +r.MH() +return s}, +aEi(a,b){return this.a6J(a,null,b)}, +aEh(a,b){return this.a6J(a,b,null)}} +A.w4.prototype={ +j(a){return"#"+A.bt(this.a)+"@"+this.c.j(0)}} +A.ij.prototype={ +j(a){return"offset="+this.a.j(0)}, +sc6(a,b){return this.a=b}} +A.IK.prototype={} +A.G6.prototype={ +K(){return"_IntrinsicDimension."+this.b}} +A.RA.prototype={ +l(a,b){if(b==null)return!1 +return b instanceof A.RA&&b.a===this.a&&b.b===this.b}, +gv(a){return A.X(this.a,this.b,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}} +A.N.prototype={ +fR(a){if(!(a.b instanceof A.ij))a.b=new A.ij(B.i)}, +aB(a,b,c){var s=this.fx +if(s==null)s=this.fx=A.F(t.oc,t.i) +return s.cJ(0,new A.RA(a,b),new A.aOL(c,b))}, +c3(a){return 0}, +bV(a){return 0}, +bW(a){return 0}, +c1(a){return 0}, +lC(a){var s=this.fy +if(s==null)s=this.fy=A.F(t.k,t.FW) +return s.cJ(0,a,new A.aON(this,a))}, +ds(a){return B.x}, +gq(a){var s=this.id +return s==null?A.q(A.R("RenderBox was not laid out: "+A.o(this).j(0)+"#"+A.bt(this))):s}, +gru(){var s=this.gq(this) +return new A.I(0,0,0+s.a,0+s.b)}, +Nw(a,b){var s=null +try{s=this.q6(a)}finally{}if(s==null&&!b)return this.gq(this).b +return s}, +vA(a){return this.Nw(a,!1)}, +q6(a){var s=this.k1 +if(s==null)s=this.k1=A.F(t._0,t.PM) +return s.cJ(0,a,new A.aOM(this,a))}, +hL(a){return null}, +ga4(){return t.k.a(A.H.prototype.ga4.call(this))}, +ao4(){var s,r=this,q=r.k1,p=q==null +if(!(!p&&q.a!==0)){s=r.fx +if(!(s!=null&&s.a!==0)){s=r.fy +s=s!=null&&s.a!==0}else s=!0}else s=!0 +if(s){if(!p)q.ab(0) +q=r.fx +if(q!=null)q.ab(0) +q=r.fy +if(q!=null)q.ab(0) +return!0}return!1}, +a6(){var s=this +if(s.ao4()&&s.gbP(s) instanceof A.H){s.Fy() +return}s.ahU()}, +cX(a,b){var s,r=this +if(r.id!=null)if(!a.l(0,t.k.a(A.H.prototype.ga4.call(r)))){s=r.k1 +s=s!=null&&s.a!==0}else s=!1 +else s=!1 +if(s){s=r.k1 +if(s!=null)s.ab(0)}r.ahT(a,b)}, +ie(a){return this.cX(a,!1)}, +xB(){this.id=this.ds(t.k.a(A.H.prototype.ga4.call(this)))}, +cj(){}, +dc(a,b){var s=this +if(s.id.n(0,b))if(s.dY(a,b)||s.l8(b)){a.G(0,new A.w4(b,s)) +return!0}return!1}, +l8(a){return!1}, +dY(a,b){return!1}, +eI(a,b){var s,r=a.b +r.toString +s=t.q.a(r).a +b.bj(0,s.a,s.b)}, +jo(a){var s,r,q,p,o,n=this.cs(0,null) +if(n.k0(n)===0)return B.i +s=new A.d4(new Float64Array(3)) +s.h6(0,0,1) +r=new A.d4(new Float64Array(3)) +r.h6(0,0,0) +q=n.ME(r) +r=new A.d4(new Float64Array(3)) +r.h6(0,0,1) +p=n.ME(r).a2(0,q) +r=new A.d4(new Float64Array(3)) +r.h6(a.a,a.b,0) +o=n.ME(r) +r=o.a2(0,p.NO(s.wT(o)/s.wT(p))).a +return new A.l(r[0],r[1])}, +gr0(){var s=this.gq(this) +return new A.I(0,0,0+s.a,0+s.b)}, +oQ(a,b){this.ahS(a,b)}} +A.aOL.prototype={ +$0(){return this.a.$1(this.b)}, +$S:80} +A.aON.prototype={ +$0(){return this.a.ds(this.b)}, +$S:212} +A.aOM.prototype={ +$0(){return this.a.hL(this.b)}, +$S:388} +A.dR.prototype={ +a8z(a){var s,r,q,p=this.a3$ +for(s=A.k(this).h("dR.1?");p!=null;){r=s.a(p.b) +q=p.q6(a) +if(q!=null)return q+r.a.b +p=r.am$}return null}, +KL(a){var s,r,q,p,o=this.a3$ +for(s=A.k(this).h("dR.1"),r=null;o!=null;){q=o.b +q.toString +s.a(q) +p=o.q6(a) +if(p!=null){p+=q.a.b +r=r!=null?Math.min(r,p):p}o=q.am$}return r}, +zS(a,b){var s,r,q={},p=q.a=this.dk$ +for(s=A.k(this).h("dR.1");p!=null;p=r){p=p.b +p.toString +s.a(p) +if(a.oz(new A.aOK(q,b,p),p.a,b))return!0 +r=p.d0$ +q.a=r}return!1}, +wM(a,b){var s,r,q,p,o,n=this.a3$ +for(s=A.k(this).h("dR.1"),r=b.a,q=b.b;n!=null;){p=n.b +p.toString +s.a(p) +o=p.a +a.eg(n,new A.l(o.a+r,o.b+q)) +n=p.am$}}} +A.aOK.prototype={ +$2(a,b){return this.a.a.dc(a,b)}, +$S:16} +A.Qe.prototype={ +ap(a){this.Cu(0)}} +A.lR.prototype={ +j(a){return this.Hi(0)+"; id="+A.h(this.e)}} +A.aJF.prototype={ +iC(a,b){var s=this.b.i(0,a) +s.cX(b,!0) +return s.gq(s)}, +ja(a,b){var s=this.b.i(0,a).b +s.toString +t.Wz.a(s).a=b}, +any(a,b){var s,r,q,p,o,n,m=this,l=m.b +try{m.b=A.F(t.K,t.x) +for(r=t.Wz,q=b;q!=null;q=n){p=q.b +p.toString +s=r.a(p) +p=m.b +p.toString +o=s.e +o.toString +p.p(0,o,q) +n=s.am$}m.FS(a)}finally{m.b=l}}, +j(a){return"MultiChildLayoutDelegate"}} +A.MM.prototype={ +fR(a){if(!(a.b instanceof A.lR))a.b=new A.lR(null,null,B.i)}, +sdg(a){var s=this,r=s.B +if(r===a)return +if(A.o(a)!==A.o(r)||a.q9(r))s.a6() +s.B=a +if(s.y!=null){r=r.a +if(r!=null)r.J(0,s.gtv()) +r=a.a +if(r!=null)r.P(0,s.gtv())}}, +aA(a){var s +this.ajv(a) +s=this.B.a +if(s!=null)s.P(0,this.gtv())}, +ap(a){var s=this.B.a +if(s!=null)s.J(0,this.gtv()) +this.ajw(0)}, +c3(a){var s=A.jr(a,1/0),r=s.bI(new A.V(A.S(1/0,s.a,s.b),A.S(1/0,s.c,s.d))).a +if(isFinite(r))return r +return 0}, +bV(a){var s=A.jr(a,1/0),r=s.bI(new A.V(A.S(1/0,s.a,s.b),A.S(1/0,s.c,s.d))).a +if(isFinite(r))return r +return 0}, +bW(a){var s=A.jr(1/0,a),r=s.bI(new A.V(A.S(1/0,s.a,s.b),A.S(1/0,s.c,s.d))).b +if(isFinite(r))return r +return 0}, +c1(a){var s=A.jr(1/0,a),r=s.bI(new A.V(A.S(1/0,s.a,s.b),A.S(1/0,s.c,s.d))).b +if(isFinite(r))return r +return 0}, +ds(a){return a.bI(new A.V(A.S(1/0,a.a,a.b),A.S(1/0,a.c,a.d)))}, +cj(){var s=this,r=t.k.a(A.H.prototype.ga4.call(s)) +s.id=r.bI(new A.V(A.S(1/0,r.a,r.b),A.S(1/0,r.c,r.d))) +s.B.any(s.gq(s),s.a3$)}, +aD(a,b){this.wM(a,b)}, +dY(a,b){return this.zS(a,b)}} +A.SD.prototype={ +aA(a){var s,r,q +this.eR(a) +s=this.a3$ +for(r=t.Wz;s!=null;){s.aA(a) +q=s.b +q.toString +s=r.a(q).am$}}, +ap(a){var s,r,q +this.eS(0) +s=this.a3$ +for(r=t.Wz;s!=null;){s.ap(0) +q=s.b +q.toString +s=r.a(q).am$}}} +A.akf.prototype={} +A.a_G.prototype={ +P(a,b){var s=this.a +return s==null?null:s.P(0,b)}, +J(a,b){var s=this.a +return s==null?null:s.J(0,b)}, +gCd(){return null}, +H7(a){return this.fw(a)}, +AM(a){return null}, +j(a){var s=A.bt(this),r=this.a +r=r==null?null:r.j(0) +if(r==null)r="" +return"#"+s+"("+r+")"}} +A.MN.prototype={ +sxy(a){var s=this.C +if(s==a)return +this.C=a +this.a0d(a,s)}, +sa9E(a){var s=this.a0 +if(s==a)return +this.a0=a +this.a0d(a,s)}, +a0d(a,b){var s=this,r=a==null +if(r)s.aU() +else if(b==null||A.o(a)!==A.o(b)||a.fw(b))s.aU() +if(s.y!=null){if(b!=null)b.J(0,s.geE()) +if(!r)a.P(0,s.geE())}if(r){if(s.y!=null)s.bX()}else if(b==null||A.o(a)!==A.o(b)||a.H7(b))s.bX()}, +sr3(a){if(this.aw.l(0,a))return +this.aw=a +this.a6()}, +c3(a){var s +if(this.E$==null){s=this.aw.a +return isFinite(s)?s:0}return this.Oy(a)}, +bV(a){var s +if(this.E$==null){s=this.aw.a +return isFinite(s)?s:0}return this.Ow(a)}, +bW(a){var s +if(this.E$==null){s=this.aw.b +return isFinite(s)?s:0}return this.Ox(a)}, +c1(a){var s +if(this.E$==null){s=this.aw.b +return isFinite(s)?s:0}return this.Ov(a)}, +aA(a){var s,r=this +r.ys(a) +s=r.C +if(s!=null)s.P(0,r.geE()) +s=r.a0 +if(s!=null)s.P(0,r.geE())}, +ap(a){var s=this,r=s.C +if(r!=null)r.J(0,s.geE()) +r=s.a0 +if(r!=null)r.J(0,s.geE()) +s.u5(0)}, +dY(a,b){var s=this.a0 +if(s!=null){s=s.AM(b) +s=s===!0}else s=!1 +if(s)return!0 +return this.Hq(a,b)}, +l8(a){var s=this.C +if(s!=null){s=s.AM(a) +s=s!==!1}else s=!1 +return s}, +cj(){this.yq() +this.bX()}, +Ee(a){return a.bI(this.aw)}, +a34(a,b,c){A.b4("debugPreviousCanvasSaveCount") +a.eb(0) +if(!b.l(0,B.i))a.bj(0,b.a,b.b) +c.aD(a,this.gq(this)) +a.dq(0)}, +aD(a,b){var s,r,q=this +if(q.C!=null){s=a.gcR(a) +r=q.C +r.toString +q.a34(s,b,r) +q.a4k(a)}q.ol(a,b) +if(q.a0!=null){s=a.gcR(a) +r=q.a0 +r.toString +q.a34(s,b,r) +q.a4k(a)}}, +a4k(a){}, +hv(a){var s,r=this +r.jq(a) +s=r.C +r.fa=s==null?null:s.gCd() +s=r.a0 +r.hQ=s==null?null:s.gCd() +a.a=!1}, +zq(a,b,c){var s,r,q,p,o=this +o.fH=A.brF(o.fH,B.xR) +o.j7=A.brF(o.j7,B.xR) +s=o.fH +r=s!=null&&!s.gai(s) +s=o.j7 +q=s!=null&&!s.gai(s) +s=A.a([],t.QF) +if(r){p=o.fH +p.toString +B.b.I(s,p)}B.b.I(s,c) +if(q){p=o.j7 +p.toString +B.b.I(s,p)}o.Zf(a,b,s)}, +zB(){this.Ot() +this.j7=this.fH=null}} +A.axb.prototype={} +A.z7.prototype={ +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.a1(b)!==A.o(s))return!1 +return b instanceof A.z7&&b.a.l(0,s.a)&&b.b==s.b}, +j(a){var s=this +switch(s.b){case B.j:return s.a.j(0)+"-ltr" +case B.ab:return s.a.j(0)+"-rtl" +case null:case void 0:return s.a.j(0)}}, +gv(a){return A.X(this.a,this.b,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}} +A.aZQ.prototype={ +gdh(){var s=this +if(!s.f)return!1 +if(s.e.bc.zG()!==s.d)s.f=!1 +return s.f}, +a1q(a){var s,r,q=this,p=q.r,o=p.i(0,a) +if(o!=null)return o +s=new A.l(q.a.a,q.d[a].gqw()) +r=new A.aU(s,q.e.bc.hE(s),t.tO) +p.p(0,a,r) +return r}, +gH(a){return this.c}, +u(){var s,r=this,q=r.b+1 +if(q>=r.d.length)return!1 +s=r.a1q(q);++r.b +r.a=s.a +r.c=s.b +return!0}, +abk(){var s,r=this,q=r.b +if(q<=0)return!1 +s=r.a1q(q-1);--r.b +r.a=s.a +r.c=s.b +return!0}, +aLy(a){var s,r=this,q=r.a +if(a>=0){for(s=q.b+a;r.a.bs;)if(!r.abk())break +return!q.l(0,r.a)}} +A.yp.prototype={ +m(){var s,r=this,q=r.B +if(q!=null)q.ch.sb3(0,null) +r.B=null +q=r.Z +if(q!=null)q.ch.sb3(0,null) +r.Z=null +r.dk.sb3(0,null) +q=r.b8 +if(q!=null){q.ah$=$.b5() +q.ak$=0}q=r.b6 +if(q!=null){q.ah$=$.b5() +q.ak$=0}q=r.aT +s=q.ah$=$.b5() +q.ak$=0 +q=r.bK +q.ah$=s +q.ak$=0 +q=r.aS +q.ah$=s +q.ak$=0 +q=r.aG +q.ah$=s +q.ak$=0 +q=r.gi3() +q.ah$=s +q.ak$=0 +r.bc.m() +r.jr()}, +a5M(a){var s,r=this,q=r.ganl(),p=r.B +if(p==null){s=A.bu2(q) +r.m6(s) +r.B=s}else p.sxy(q) +r.Y=a}, +a5R(a){var s,r=this,q=r.ganm(),p=r.Z +if(p==null){s=A.bu2(q) +r.m6(s) +r.Z=s}else p.sxy(q) +r.av=a}, +gi3(){var s,r,q=this.ar +if(q===$){s=$.as().bn() +r=$.b5() +this.ar!==$&&A.am() +q=this.ar=new A.Q2(s,B.i,r)}return q}, +ganl(){var s=this,r=s.b8 +if(r==null){r=A.a([],t.xT) +if(s.a0)r.push(s.gi3()) +r=s.b8=new A.Fw(r,$.b5())}return r}, +ganm(){var s=this,r=s.b6 +if(r==null){r=A.a([s.aS,s.aG],t.xT) +if(!s.a0)r.push(s.gi3()) +r=s.b6=new A.Fw(r,$.b5())}return r}, +sN0(a){return}, +sBz(a){var s=this.bc +if(s.ax===a)return +s.sBz(a) +this.qW()}, +sA_(a,b){if(this.fm===b)return +this.fm=b +this.qW()}, +saLI(a){if(this.ak===a)return +this.ak=a +this.a6()}, +saLH(a){var s=this +if(s.ah===a)return +s.ah=a +s.dl=null +s.bX()}, +C0(a){var s=this.bc,r=s.b.a.a.NE(a) +if(this.ah)return A.de(B.q,0,s.gnu().length,!1) +return A.de(B.q,r.a,r.b,!1)}, +aDo(a){var s,r,q,p,o,n,m=this +if(!m.cg.gdh()){m.aT.sk(0,!1) +m.bK.sk(0,!1) +return}s=m.gq(m) +r=new A.I(0,0,0+s.a,0+s.b) +s=m.bc +q=m.cg +p=m.x0 +p===$&&A.b() +o=s.rn(new A.bR(q.a,q.e),p) +m.aT.sk(0,r.dZ(0.5).n(0,o.T(0,a))) +p=m.cg +n=s.rn(new A.bR(p.b,p.e),m.x0) +m.bK.sk(0,r.dZ(0.5).n(0,n.T(0,a)))}, +un(a,b){var s,r +if(a.gdh()){s=this.bG.a.c.a.a.length +a=a.Ek(Math.min(a.c,s),Math.min(a.d,s))}r=this.bG.a.c.a.mv(a) +this.bG.jT(r,b)}, +aU(){this.ahV() +var s=this.B +if(s!=null)s.aU() +s=this.Z +if(s!=null)s.aU()}, +qW(){this.cc=this.bp=null +this.a6()}, +CA(){var s=this +s.Or() +s.bc.a6() +s.cc=s.bp=null}, +se9(a,b){var s=this,r=s.bc +if(J.i(r.f,b))return +s.iB=null +r.se9(0,b) +s.UF=s.h_=s.dl=null +s.qW() +s.bX()}, +sBx(a,b){var s=this.bc +if(s.w===b)return +s.sBx(0,b) +this.qW()}, +scF(a){var s=this.bc +if(s.x===a)return +s.scF(a) +this.qW() +this.bX()}, +sB2(a,b){var s=this.bc +if(J.i(s.Q,b))return +s.sB2(0,b) +this.qW()}, +srB(a){var s=this.bc +if(J.i(s.at,a))return +s.srB(a) +this.qW()}, +safQ(a){var s=this,r=s.dG +if(r===a)return +if(s.y!=null)r.J(0,s.gJf()) +s.dG=a +if(s.y!=null){s.gi3().sNZ(s.dG.a) +s.dG.P(0,s.gJf())}}, +aB8(){this.gi3().sNZ(this.dG.a)}, +sdt(a){if(this.cS===a)return +this.cS=a +this.bX()}, +saIc(a){if(this.ep===a)return +this.ep=a +this.a6()}, +sWG(a,b){if(this.iz===b)return +this.iz=b +this.bX()}, +sB5(a){var s,r=this +if(r.dH==a)return +r.dH=a +s=a===1?1:null +r.bc.sB5(s) +r.qW()}, +saLs(a){return}, +sUA(a){return}, +stM(a){var s=this.bc +if(s.y===a)return +s.stM(a) +this.qW()}, +sy9(a){var s=this +if(s.cg.l(0,a))return +s.cg=a +s.aG.sLB(a) +s.aU() +s.bX()}, +sc6(a,b){var s=this,r=s.cI +if(r===b)return +if(s.y!=null)r.J(0,s.geE()) +s.cI=b +if(s.y!=null)b.P(0,s.geE()) +s.a6()}, +saGH(a){if(this.ez===a)return +this.ez=a +this.a6()}, +saGG(a){return}, +saMz(a){var s=this +if(s.a0===a)return +s.a0=a +s.b6=s.b8=null +s.a5M(s.Y) +s.a5R(s.av)}, +sagb(a){if(this.aw===a)return +this.aw=a +this.aU()}, +saHq(a){if(this.cu===a)return +this.cu=a +this.aU()}, +saHl(a){var s=this +if(s.fH===a)return +s.fH=a +s.qW() +s.bX()}, +ghG(){var s=this.fH +return s}, +rm(a){var s,r +this.pk() +s=this.bc.rm(a) +r=A.ab(s).h("ad<1,hf>") +return A.aa(new A.ad(s,new A.aOR(this),r),!0,r.h("ax.E"))}, +hv(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d=this +d.jq(a) +s=d.bc +r=s.f +r.toString +q=A.a([],t.O_) +r.Kt(q) +d.hc=q +if(B.b.ed(q,new A.aOQ())&&A.cb()!==B.dj){a.c=a.a=!0 +return}r=d.dl +if(r==null)if(d.ah){r=new A.dI(B.c.au(d.ak,s.gnu().length),B.aP) +d.dl=r}else{p=new A.cV("") +o=A.a([],t.oU) +for(r=d.hc,n=r.length,m=0,l=0,k="";lh){d=c0[h].dy +d=d!=null&&d.n(0,new A.qy(i,b7))}else d=!1 +if(!d)break +b=c0[h] +d=s.b +d.toString +m.a(d) +b5.push(b);++h}b7=s.b +b7.toString +s=n.a(b7).am$;++i}else{a=b6.rm(new A.i8(j,e,B.q,!1,c,d)) +if(a.length===0)continue +d=B.b.gN(a) +a0=new A.I(d.a,d.b,d.c,d.d) +a1=B.b.gN(a).e +for(d=A.ab(a),c=d.h("jW<1>"),a2=new A.jW(a,1,b4,c),a2.CB(a,1,b4,d.c),a2=new A.bZ(a2,a2.gt(a2),c.h("bZ")),c=c.h("ax.E");a2.u();){d=a2.d +if(d==null)d=c.a(d) +a0=a0.oH(new A.I(d.a,d.b,d.c,d.d)) +a1=d.e}d=a0.a +c=Math.max(0,d) +a2=a0.b +a3=Math.max(0,a2) +d=Math.min(a0.c-d,o.a(A.H.prototype.ga4.call(b3)).b) +a2=Math.min(a0.d-a2,o.a(A.H.prototype.ga4.call(b3)).d) +a4=Math.floor(c)-4 +a5=Math.floor(a3)-4 +d=Math.ceil(c+d)+4 +a2=Math.ceil(a3+a2)+4 +a6=new A.I(a4,a5,d,a2) +a7=A.oQ() +a8=k+1 +a7.k2=new A.xU(k,b4) +a7.e=!0 +a7.c5=l +a3=f.b +b7=a3==null?b7:a3 +a7.RG=new A.dI(b7,f.f) +b7=b8.r +if(b7!=null){a9=b7.he(a6) +if(a9.a>=a9.c||a9.b>=a9.d)b7=!(a4>=d||a5>=a2) +else b7=!1 +a7.ce(B.kZ,b7)}b0=A.b4("newChild") +b7=b3.dR +d=b7==null?b4:b7.a!==0 +if(d===!0){b7.toString +d=new A.c9(b7,A.k(b7).h("c9<1>")) +b1=d.gaj(d) +if(!b1.u())A.q(A.cf()) +b7=b7.F(0,b1.gH(b1)) +b7.toString +if(b0.b!==b0)A.q(A.ql(b0.a)) +b0.b=b7}else{b2=new A.kF() +b7=A.Nx(b2,b3.aoR(b2)) +if(b0.b!==b0)A.q(A.ql(b0.a)) +b0.b=b7}if(b7===b0)A.q(A.i0(b0.a)) +J.bnO(b7,a7) +if(!b7.e.l(0,a6)){b7.e=a6 +b7.m0()}b7=b0.b +if(b7===b0)A.q(A.i0(b0.a)) +d=b7.a +d.toString +r.p(0,d,b7) +b7=b0.b +if(b7===b0)A.q(A.i0(b0.a)) +b5.push(b7) +k=a8 +l=a1}}b3.dR=r +b8.tQ(0,b5,b9)}, +aoR(a){return new A.aOP(this,a)}, +au_(a){this.un(a,B.aG)}, +asY(a){var s=this,r=s.bc.XB(s.cg.d) +if(r==null)return +s.un(A.de(B.q,!a?r:s.cg.c,r,!1),B.aG)}, +asU(a){var s=this,r=s.bc.XC(s.cg.d) +if(r==null)return +s.un(A.de(B.q,!a?r:s.cg.c,r,!1),B.aG)}, +at_(a){var s,r=this,q=r.cg.gew(),p=r.a1a(r.bc.b.a.a.rp(q).b) +if(p==null)return +s=a?r.cg.c:p.a +r.un(A.de(B.q,s,p.a,!1),B.aG)}, +asW(a){var s,r=this,q=r.cg.gew(),p=r.a1c(r.bc.b.a.a.rp(q).a-1) +if(p==null)return +s=a?r.cg.c:p.a +r.un(A.de(B.q,s,p.a,!1),B.aG)}, +a1a(a){var s,r,q +for(s=this.bc;!0;){r=s.b.a.a.rp(new A.bR(a,B.q)) +q=r.a +if(!(q>=0&&r.b>=0)||q===r.b)return null +if(!this.a2V(r))return r +a=r.b}}, +a1c(a){var s,r,q +for(s=this.bc;a>=0;){r=s.b.a.a.rp(new A.bR(a,B.q)) +q=r.a +if(!(q>=0&&r.b>=0)||q===r.b)return null +if(!this.a2V(r))return r +a=q-1}return null}, +a2V(a){var s,r,q,p +for(s=a.a,r=a.b,q=this.bc;s=m.gnu().length)return A.EO(new A.bR(m.gnu().length,B.aQ)) +if(o.ah)return A.de(B.q,0,m.gnu().length,!1) +s=m.b.a.a.rp(a) +switch(a.b.a){case 0:r=n-1 +break +case 1:r=n +break +default:r=null}if(r>0&&A.bsw(m.gnu().charCodeAt(r))){m=s.a +q=o.a1c(m) +switch(A.cb().a){case 2:if(q==null){p=o.a1a(m) +if(p==null)return A.qZ(B.q,n) +return A.de(B.q,n,p.b,!1)}return A.de(B.q,q.a,n,!1) +case 0:if(o.iz){if(q==null)return A.de(B.q,n,n+1,!1) +return A.de(B.q,q.a,n,!1)}break +case 1:case 4:case 3:case 5:break}}return A.de(B.q,s.a,s.b,!1)}, +CT(a,b){var s=this,r=Math.max(0,a-(1+s.ez)),q=Math.min(b,r),p=s.dH!==1?r:1/0,o=s.ep?r:q +s.bc.LW(p,o) +s.cc=b +s.bp=a}, +a0u(a){return this.CT(a,0)}, +a0t(){return this.CT(1/0,0)}, +pk(){var s=t.k,r=s.a(A.H.prototype.ga4.call(this)) +this.CT(s.a(A.H.prototype.ga4.call(this)).b,r.a)}, +aoi(){var s,r,q=this +switch(A.cb().a){case 2:case 4:s=q.ez +r=q.bc.gf1() +q.x0=new A.I(0,0,s,0+(r+2)) +break +case 0:case 1:case 3:case 5:s=q.ez +r=q.bc.gf1() +q.x0=new A.I(0,2,s,2+(r-4)) +break}}, +anA(){var s=this.bc.f +s=s==null?null:s.ck(new A.aOO()) +return s!==!1}, +ds(a){var s,r,q,p,o=this,n=o.UF +if(!(n==null?o.UF=o.anA():n))return B.x +n=o.bc +s=a.b +n.tZ(o.xm(s,A.rI())) +r=a.a +o.CT(s,r) +if(o.ep)q=s +else{n=n.b +p=n.b +n=n.a.a +Math.ceil(n.gdm(n)) +q=A.S(p+(1+o.ez),r,s)}return new A.V(q,A.S(o.IT(s),a.c,a.d))}, +cj(){var s,r,q,p,o,n,m=this,l=t.k.a(A.H.prototype.ga4.call(m)),k=l.b,j=m.xm(k,A.vE()) +m.aHJ=j +s=m.bc +s.tZ(j) +m.pk() +j=s.gaap() +j.toString +m.abR(j) +m.aoi() +j=s.b +r=j.b +j=j.a.a +j=Math.ceil(j.gdm(j)) +if(m.ep)q=k +else{s=s.b +p=s.b +s=s.a.a +Math.ceil(s.gdm(s)) +q=A.S(p+(1+m.ez),l.a,k)}m.id=new A.V(q,A.S(m.IT(k),l.c,l.d)) +o=new A.V(r+(1+m.ez),j) +n=A.Ax(o) +j=m.B +if(j!=null)j.ie(n) +j=m.Z +if(j!=null)j.ie(n) +m.j7=m.ar7(o) +m.cI.qu(m.gaDH()) +m.cI.pr(0,m.j7)}, +Yc(a,b,c,d){var s,r,q,p=this +if(a===B.t6){p.qF=B.i +p.UG=null +p.hy=p.i7=p.d_=!1}s=a!==B.mS +p.fa=s +p.a3=d +if(s){p.hQ=c +if(d!=null){s=A.Br(B.rP,B.a4,d) +s.toString +r=s}else r=B.rP +s=p.gi3() +q=p.x0 +q===$&&A.b() +s.sa9u(r.F9(q).dw(b))}else p.gi3().sa9u(null) +p.gi3().w=p.a3==null}, +NU(a,b,c){return this.Yc(a,b,c,null)}, +avv(a,b){var s,r,q,p,o,n=this.bc.rn(a,B.Y) +for(s=b.length,r=n.b,q=0;p=b.length,qr)return new A.aU(J.bnv(o),new A.l(n.a,o.gqw()),t.DC)}s=Math.max(0,p-1) +r=p!==0?B.b.ga1(b).gqw()+B.b.ga1(b).gU8():0 +return new A.aU(s,new A.l(n.a,r),t.DC)}, +a3_(a,b){var s,r,q=this,p=b.T(0,q.giu()),o=q.fa +if(!o)q.aDo(p) +s=q.B +r=q.Z +if(r!=null)a.eg(r,b) +q.bc.aD(a.gcR(a),p) +q.abL(a,p) +if(s!=null)a.eg(s,b)}, +eI(a,b){if(a===this.B||a===this.Z)return +this.a8y(a,b)}, +aD(a,b){var s,r,q,p,o,n,m=this +m.pk() +s=(m.j7>0||!m.giu().l(0,B.i))&&m.iA!==B.l +r=m.dk +if(s){s=m.cx +s===$&&A.b() +q=m.gq(m) +r.sb3(0,a.tE(s,b,new A.I(0,0,0+q.a,0+q.b),m.gaxS(),m.iA,r.a))}else{r.sb3(0,null) +m.a3_(a,b)}p=m.cg +s=p.gdh() +if(s){s=m.Ny(p) +o=s[0].a +r=A.S(o.a,0,m.gq(m).a) +q=A.S(o.b,0,m.gq(m).b) +a.r6(A.bj1(m.aw,new A.l(r,q).T(0,b)),A.H.prototype.giE.call(m),B.i) +if(s.length===2){n=s[1].a +s=A.S(n.a,0,m.gq(m).a) +r=A.S(n.b,0,m.gq(m).b) +a.r6(A.bj1(m.cu,new A.l(s,r).T(0,b)),A.H.prototype.giE.call(m),B.i)}}}, +t6(a){var s,r=this +switch(r.iA.a){case 0:return null +case 1:case 2:case 3:if(r.j7>0||!r.giu().l(0,B.i)){s=r.gq(r) +s=new A.I(0,0,0+s.a,0+s.b)}else s=null +return s}}} +A.aOR.prototype={ +$1(a){var s=this.a +return new A.hf(a.a+s.giu().a,a.b+s.giu().b,a.c+s.giu().a,a.d+s.giu().b,a.e)}, +$S:173} +A.aOQ.prototype={ +$1(a){return!1}, +$S:390} +A.aOP.prototype={ +$0(){var s=this.a,r=s.dR.i(0,this.b) +r.toString +s.vO(s,r.e)}, +$S:0} +A.aOS.prototype={ +$2(a,b){var s=a==null?null:a.oH(new A.I(b.a,b.b,b.c,b.d)) +return s==null?new A.I(b.a,b.b,b.c,b.d):s}, +$S:391} +A.aOO.prototype={ +$1(a){var s,r +if(a instanceof A.nI){s=a.b +$label0$0:{if(B.kE===s||B.kF===s||B.kG===s){r=!1 +break $label0$0}if(B.kH===s||B.kI===s||B.dP===s){r=!0 +break $label0$0}r=null}}else r=!0 +return r}, +$S:101} +A.akg.prototype={ +gbP(a){return t.CA.a(A.H.prototype.gbP.call(this,this))}, +gib(){return!0}, +gog(){return!0}, +sxy(a){var s,r=this,q=r.B +if(a===q)return +r.B=a +s=a.fw(q) +if(s)r.aU() +if(r.y!=null){s=r.geE() +q.J(0,s) +a.P(0,s)}}, +aD(a,b){var s=this,r=t.CA.a(A.H.prototype.gbP.call(s,s)),q=s.B +if(r!=null){r.pk() +q.kk(a.gcR(a),s.gq(s),r)}}, +aA(a){this.eR(a) +this.B.P(0,this.geE())}, +ap(a){this.B.J(0,this.geE()) +this.eS(0)}, +ds(a){return new A.V(A.S(1/0,a.a,a.b),A.S(1/0,a.c,a.d))}} +A.uu.prototype={} +A.TR.prototype={ +sLA(a){if(J.i(a,this.w))return +this.w=a +this.ag()}, +sLB(a){if(J.i(a,this.x))return +this.x=a +this.ag()}, +sY5(a){if(this.y===a)return +this.y=a +this.ag()}, +sY6(a){if(this.z===a)return +this.z=a +this.ag()}, +kk(a,b,c){var s,r,q,p,o,n,m,l,k,j=this,i=j.x,h=j.w +if(i==null||h==null||i.a===i.b)return +s=j.r +s.sa5(0,h) +r=c.bc +q=r.xT(A.de(B.q,i.a,i.b,!1),j.y,j.z) +for(p=q.length,o=0;o>>16&255,o>>>8&255,o&255)}if(r||l==null||!i.r)return +r=A.lh(s,B.fz) +k=i.y +if(k===$){j=$.as().bn() +i.y!==$&&A.am() +i.y=j +k=j}k.sa5(0,l) +a.de(r,k)}, +fw(a){var s=this +if(s===a)return!1 +return!(a instanceof A.Q2)||a.r!==s.r||a.w!==s.w||!J.i(a.z,s.z)||!J.i(a.Q,s.Q)||!a.as.l(0,s.as)||!J.i(a.at,s.at)||!J.i(a.ax,s.ax)}} +A.Fw.prototype={ +P(a,b){var s,r,q +for(s=this.r,r=s.length,q=0;q")) +s=this.r +p=A.ab(s) +o=new J.e6(s,s.length,p.h("e6<1>")) +s=p.c +r=r.c +while(!0){if(!(q.u()&&o.u()))break +p=o.d +if(p==null)p=s.a(p) +n=q.d +if(p.fw(n==null?r.a(n):n))return!0}return!1}} +A.SF.prototype={ +aA(a){this.eR(a) +$.hC.ta$.a.G(0,this.gum())}, +ap(a){$.hC.ta$.a.F(0,this.gum()) +this.eS(0)}} +A.SG.prototype={ +aA(a){var s,r,q +this.ajx(a) +s=this.a3$ +for(r=t.ot;s!=null;){s.aA(a) +q=s.b +q.toString +s=r.a(q).am$}}, +ap(a){var s,r,q +this.ajy(0) +s=this.a3$ +for(r=t.ot;s!=null;){s.ap(0) +q=s.b +q.toString +s=r.a(q).am$}}} +A.akh.prototype={} +A.MP.prototype={ +alJ(a){var s,r,q,p,o=this +try{r=o.B +if(r!==""){q=$.bz6() +s=$.as().KE(q) +s.Bm($.bz7()) +s.DY(r) +r=s.aP() +o.Z!==$&&A.cl() +o.Z=r}else{o.Z!==$&&A.cl() +o.Z=null}}catch(p){}}, +bV(a){return 1e5}, +c1(a){return 1e5}, +gog(){return!0}, +l8(a){return!0}, +ds(a){return a.bI(B.adL)}, +aD(a,b){var s,r,q,p,o,n,m,l,k,j=this +try{p=a.gcR(a) +o=j.gq(j) +n=b.a +m=b.b +l=$.as().bn() +l.sa5(0,$.bz5()) +p.el(new A.I(n,m,n+o.a,m+o.b),l) +p=j.Z +p===$&&A.b() +if(p!=null){s=j.gq(j).a +r=0 +q=0 +if(s>328){s-=128 +r+=64}p.ie(new A.qx(s)) +if(j.gq(j).b>96+p.gdm(p)+12)q+=96 +a.gcR(a).uO(p,b.T(0,new A.l(r,q)))}}catch(k){}}} +A.a10.prototype={ +K(){return"FlexFit."+this.b}} +A.hW.prototype={ +j(a){return this.Hi(0)+"; flex="+A.h(this.e)+"; fit="+A.h(this.f)}} +A.a2T.prototype={ +K(){return"MainAxisSize."+this.b}} +A.u4.prototype={ +K(){return"MainAxisAlignment."+this.b}} +A.wh.prototype={ +K(){return"CrossAxisAlignment."+this.b}} +A.yq.prototype={ +saLe(a){if(this.Z!==a){this.Z=a +this.a6()}}, +sU0(a){if(this.av!==a){this.av=a +this.a6()}}, +fR(a){if(!(a.b instanceof A.hW))a.b=new A.hW(null,null,B.i)}, +I9(a,b,c){var s,r,q,p,o,n,m,l,k,j,i,h,g=this +if(g.av===B.ml)return 0 +s=g.B +r=g.a3$ +if(s===c){for(s=t.US,q=0,p=0,o=0;r!=null;){n=r.b +n.toString +m=s.a(n).e +if(m==null)m=0 +q+=m +if(m>0){n=a.$2(r,b) +l=r.b +l.toString +l=s.a(l).e +o=Math.max(o,n/(l==null?0:l))}else p+=a.$2(r,b) +n=r.b +n.toString +r=s.a(n).am$}return o*q+p}else{for(s=t.US,q=0,p=0,k=0;r!=null;){n=r.b +n.toString +m=s.a(n).e +if(m==null)m=0 +q+=m +j=A.b4("mainSize") +i=A.b4("crossSize") +if(m===0){switch(g.B.a){case 0:n=r.aB(B.ak,1/0,r.gc2()) +if(j.b!==j)A.q(A.ql(j.a)) +j.b=n +n=a.$2(r,n) +if(i.b!==i)A.q(A.ql(i.a)) +i.b=n +break +case 1:n=r.aB(B.br,1/0,r.gd4()) +if(j.b!==j)A.q(A.ql(j.a)) +j.b=n +n=a.$2(r,n) +if(i.b!==i)A.q(A.ql(i.a)) +i.b=n +break}n=j.b +if(n===j)A.q(A.i0(j.a)) +p+=n +n=i.b +if(n===i)A.q(A.i0(i.a)) +k=Math.max(k,A.kM(n))}n=r.b +n.toString +r=s.a(n).am$}h=Math.max(0,(b-p)/q) +r=g.a3$ +for(;r!=null;){n=r.b +n.toString +m=s.a(n).e +if(m==null)m=0 +if(m>0)k=Math.max(k,A.kM(a.$2(r,h*m))) +n=r.b +n.toString +r=s.a(n).am$}return k}}, +c3(a){return this.I9(new A.aOW(),a,B.aw)}, +bV(a){return this.I9(new A.aOU(),a,B.aw)}, +bW(a){return this.I9(new A.aOV(),a,B.R)}, +c1(a){return this.I9(new A.aOT(),a,B.R)}, +hL(a){if(this.B===B.aw)return this.KL(a) +return this.a8z(a)}, +I5(a){switch(this.B.a){case 0:return a.b +case 1:return a.a}}, +Ia(a){switch(this.B.a){case 0:return a.a +case 1:return a.b}}, +ds(a){var s +if(this.av===B.ml)return B.x +s=this.a0K(a,A.rI()) +switch(this.B.a){case 0:return a.bI(new A.V(s.a,s.b)) +case 1:return a.bI(new A.V(s.b,s.a))}}, +a0K(a2,a3){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c=this,b=null,a=c.B===B.aw?a2.b:a2.d,a0=a<1/0,a1=c.a3$ +for(s=t.US,r=a2.b,q=a2.d,p=b,o=0,n=0,m=0;a1!=null;){l=a1.b +l.toString +s.a(l) +k=l.e +if(k==null)k=0 +if(k>0){o+=k +p=a1}else{if(c.av===B.hd)switch(c.B.a){case 0:j=A.ii(q,b) +break +case 1:j=A.ii(b,r) +break +default:j=b}else switch(c.B.a){case 0:j=new A.aL(0,1/0,0,q) +break +case 1:j=new A.aL(0,r,0,1/0) +break +default:j=b}i=a3.$2(a1,j) +m+=c.Ia(i) +n=Math.max(n,c.I5(i))}a1=l.am$}h=Math.max(0,(a0?a:0)-m) +if(o>0){g=a0?h/o:0/0 +a1=c.a3$ +for(f=0;a1!=null;){l=a1.b +l.toString +k=s.a(l).e +if(k==null)k=0 +if(k>0){if(a0)e=a1===p?h-f:g*k +else e=1/0 +d=A.b4("minChildExtent") +l=a1.b +l.toString +l=s.a(l).f +switch((l==null?B.f3:l).a){case 0:if(d.b!==d)A.q(A.ql(d.a)) +d.b=e +break +case 1:if(d.b!==d)A.q(A.ql(d.a)) +d.b=0 +break}if(c.av===B.hd)switch(c.B.a){case 0:l=d.b +if(l===d)A.q(A.i0(d.a)) +j=new A.aL(l,e,q,q) +break +case 1:l=d.b +if(l===d)A.q(A.i0(d.a)) +j=new A.aL(r,r,l,e) +break +default:j=b}else switch(c.B.a){case 0:l=d.b +if(l===d)A.q(A.i0(d.a)) +j=new A.aL(l,e,0,q) +break +case 1:l=d.b +if(l===d)A.q(A.i0(d.a)) +j=new A.aL(0,r,l,e) +break +default:j=b}i=a3.$2(a1,j) +m+=c.Ia(i) +f+=e +n=Math.max(n,c.I5(i))}l=a1.b +l.toString +a1=s.a(l).am$}}return new A.b5Y(a0&&c.Y===B.T?a:m,n,m)}, +cj(){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a=this,a0="RenderBox was not laid out: ",a1=t.k.a(A.H.prototype.ga4.call(a)),a2=a.a0K(a1,A.vE()),a3=a2.a,a4=a2.b +if(a.av===B.ml){s=a.a3$ +for(r=t.US,q=0,p=0,o=0;s!=null;){n=a.aS +n.toString +m=s.Nw(n,!0) +if(m!=null){q=Math.max(q,m) +p=Math.max(m,p) +n=s.id +o=Math.max((n==null?A.q(A.R(a0+A.o(s).j(0)+"#"+A.bt(s))):n).b-m,o) +a4=Math.max(p+o,a4)}n=s.b +n.toString +s=r.a(n).am$}}else q=0 +switch(a.B.a){case 0:a.id=a1.bI(new A.V(a3,a4)) +a3=a.gq(a).a +a4=a.gq(a).b +break +case 1:a.id=a1.bI(new A.V(a4,a3)) +a3=a.gq(a).b +a4=a.gq(a).a +break}l=a3-a2.c +a.b8=Math.max(0,-l) +k=Math.max(0,l) +j=A.b4("leadingSpace") +i=A.b4("betweenSpace") +r=A.bvO(a.B,a.ar,a.aG) +h=r===!1 +switch(a.Z.a){case 0:j.sdX(0) +i.sdX(0) +break +case 1:j.sdX(k) +i.sdX(0) +break +case 2:j.sdX(k/2) +i.sdX(0) +break +case 3:j.sdX(0) +r=a.d_$ +i.sdX(r>1?k/(r-1):0) +break +case 4:r=a.d_$ +i.sdX(r>0?k/r:0) +j.sdX(i.aF()/2) +break +case 5:r=a.d_$ +i.sdX(r>0?k/(r+1):0) +j.sdX(i.aF()) +break}g=h?a3-j.aF():j.aF() +s=a.a3$ +for(r=t.US,n=a4/2,f=i.a;s!=null;){e=s.b +e.toString +r.a(e) +d=a.av +switch(d.a){case 0:case 1:if(A.bvO(A.bSq(a.B),a.ar,a.aG)===(d===B.cS))c=0 +else{d=s.id +c=a4-a.I5(d==null?A.q(A.R(a0+A.o(s).j(0)+"#"+A.bt(s))):d)}break +case 2:d=s.id +c=n-a.I5(d==null?A.q(A.R(a0+A.o(s).j(0)+"#"+A.bt(s))):d)/2 +break +case 3:c=0 +break +case 4:if(a.B===B.aw){d=a.aS +d.toString +m=s.Nw(d,!0) +c=m!=null?q-m:0}else c=0 +break +default:c=null}if(h){d=s.id +g-=a.Ia(d==null?A.q(A.R(a0+A.o(s).j(0)+"#"+A.bt(s))):d)}switch(a.B.a){case 0:e.a=new A.l(g,c) +break +case 1:e.a=new A.l(c,g) +break}if(h){d=i.b +if(d===i)A.q(A.i0(f)) +g-=d}else{d=s.id +d=a.Ia(d==null?A.q(A.R(a0+A.o(s).j(0)+"#"+A.bt(s))):d) +b=i.b +if(b===i)A.q(A.i0(f)) +g+=d+b}s=e.am$}}, +dY(a,b){return this.zS(a,b)}, +aD(a,b){var s,r,q,p=this +if(!(p.b8>1e-10)){p.wM(a,b) +return}s=p.gq(p) +if(s.gai(s))return +s=p.bp +r=p.cx +r===$&&A.b() +q=p.gq(p) +s.sb3(0,a.tE(r,b,new A.I(0,0,0+q.a,0+q.b),p.ga8A(),p.b6,s.a))}, +m(){this.bp.sb3(0,null) +this.ajB()}, +t6(a){var s,r=this +switch(r.b6.a){case 0:return null +case 1:case 2:case 3:if(r.b8>1e-10){s=r.gq(r) +s=new A.I(0,0,0+s.a,0+s.b)}else s=null +return s}}, +f2(){return this.ahW()}} +A.aOW.prototype={ +$2(a,b){return a.aB(B.ad,b,a.gbZ())}, +$S:79} +A.aOU.prototype={ +$2(a,b){return a.aB(B.ak,b,a.gc2())}, +$S:79} +A.aOV.prototype={ +$2(a,b){return a.aB(B.aA,b,a.gcD())}, +$S:79} +A.aOT.prototype={ +$2(a,b){return a.aB(B.br,b,a.gd4())}, +$S:79} +A.b5Y.prototype={} +A.akj.prototype={ +aA(a){var s,r,q +this.eR(a) +s=this.a3$ +for(r=t.US;s!=null;){s.aA(a) +q=s.b +q.toString +s=r.a(q).am$}}, +ap(a){var s,r,q +this.eS(0) +s=this.a3$ +for(r=t.US;s!=null;){s.ap(0) +q=s.b +q.toString +s=r.a(q).am$}}} +A.akk.prototype={} +A.SH.prototype={ +m(){var s,r,q +for(s=this.a9j$,r=s.length,q=0;q>")) +this.l6(new A.WJ(s,c.h("WJ<0>")),b,!0,c) +return s.length===0?null:B.b.gN(s).a}, +amg(a){var s,r=this +if(!r.w&&r.x!=null){s=r.x +s.toString +a.a6E(s) +return}r.m5(a) +r.w=!1}, +f2(){var s=this.agR() +return s+(this.y==null?" DETACHED":"")}} +A.aGJ.prototype={ +$0(){this.b.$1(this.a)}, +$S:0} +A.aGK.prototype={ +$0(){var s=this.a +s.a.F(0,this.b) +s.DN(-1)}, +$S:0} +A.a2w.prototype={ +sb3(a,b){var s=this.a +if(b==s)return +if(s!=null)if(--s.f===0)s.m() +this.a=b +if(b!=null)++b.f}, +j(a){var s=this.a +return"LayerHandle("+(s!=null?s.j(0):"DISPOSED")+")"}} +A.a6k.prototype={ +sabP(a){var s +this.hT() +s=this.ay +if(s!=null)s.m() +this.ay=a}, +m(){this.sabP(null) +this.YW()}, +m5(a){var s=this.ay +s.toString +a.a6B(B.i,s,this.ch,this.CW)}, +l6(a,b,c){return!1}} +A.hR.prototype={ +CZ(a){var s +this.ahc(a) +if(!a)return +s=this.ax +for(;s!=null;){s.CZ(!0) +s=s.Q}}, +aEP(a){var s=this +s.Nl() +s.m5(a) +if(s.b>0)s.CZ(!0) +s.w=!1 +return a.aP()}, +m(){this.WL() +this.a.ab(0) +this.YW()}, +Nl(){var s,r=this +r.ahf() +s=r.ax +for(;s!=null;){s.Nl() +r.w=r.w||s.w +s=s.Q}}, +l6(a,b,c,d){var s,r,q +for(s=this.ay,r=a.a;s!=null;s=s.as){if(s.l6(a,b,!0,d))return!0 +q=r.length +if(q!==0)return!1}return!1}, +aA(a){var s +this.ahd(a) +s=this.ax +for(;s!=null;){s.aA(a) +s=s.Q}}, +ap(a){var s +this.ahe(0) +s=this.ax +for(;s!=null;){s.ap(0) +s=s.Q}this.CZ(!1)}, +Ka(a,b){var s,r=this +if(!r.gzl())r.hT() +s=b.b +if(s!==0)r.DN(s) +b.r=r +s=r.y +if(s!=null)b.aA(s) +r.ra(b) +s=b.as=r.ay +if(s!=null)s.Q=b +r.ay=b +if(r.ax==null)r.ax=b +b.e.sb3(0,b)}, +jf(){var s,r,q=this.ax +for(;q!=null;){s=q.z +r=this.z +if(s<=r){q.z=r+1 +q.jf()}q=q.Q}}, +ra(a){var s=a.z,r=this.z +if(s<=r){a.z=r+1 +a.jf()}}, +a2f(a){var s,r=this +if(!r.gzl())r.hT() +s=a.b +if(s!==0)r.DN(-s) +a.r=null +if(r.y!=null)a.ap(0)}, +WL(){var s,r=this,q=r.ax +for(;q!=null;q=s){s=q.Q +q.Q=q.as=null +r.a2f(q) +q.e.sb3(0,null)}r.ay=r.ax=null}, +m5(a){this.ox(a)}, +ox(a){var s=this.ax +for(;s!=null;){s.amg(a) +s=s.Q}}, +zo(a,b){}} +A.oC.prototype={ +sc6(a,b){if(!b.l(0,this.k3))this.hT() +this.k3=b}, +l6(a,b,c,d){return this.u2(a,b.a2(0,this.k3),!0,d)}, +zo(a,b){var s=this.k3 +b.bj(0,s.a,s.b)}, +m5(a){var s=this,r=s.k3 +s.sjG(a.Ww(r.a,r.b,t.Ff.a(s.x))) +s.ox(a) +a.ik()}} +A.AW.prototype={ +l6(a,b,c,d){if(!this.k3.n(0,b))return!1 +return this.u2(a,b,!0,d)}, +m5(a){var s=this,r=s.k3 +r.toString +s.sjG(a.ac1(r,s.k4,t.GB.a(s.x))) +s.ox(a) +a.ik()}} +A.AU.prototype={ +l6(a,b,c,d){if(!this.k3.n(0,b))return!1 +return this.u2(a,b,!0,d)}, +m5(a){var s=this,r=s.k3 +r.toString +s.sjG(a.ac0(r,s.k4,t.cW.a(s.x))) +s.ox(a) +a.ik()}} +A.AT.prototype={ +l6(a,b,c,d){if(!this.k3.n(0,b))return!1 +return this.u2(a,b,!0,d)}, +m5(a){var s=this,r=s.k3 +r.toString +s.sjG(a.ac_(r,s.k4,t.L5.a(s.x))) +s.ox(a) +a.ik()}} +A.zg.prototype={ +sda(a,b){var s=this +if(b.l(0,s.c5))return +s.c5=b +s.bU=!0 +s.hT()}, +m5(a){var s,r,q=this +q.cO=q.c5 +if(!q.k3.l(0,B.i)){s=q.k3 +s=A.ou(s.a,s.b,0) +r=q.cO +r.toString +s.f_(0,r) +q.cO=s}q.sjG(a.FZ(q.cO.a,t.qf.a(q.x))) +q.ox(a) +a.ik()}, +Sq(a){var s,r=this +if(r.bU){s=r.c5 +s.toString +r.aV=A.xL(A.bjt(s)) +r.bU=!1}s=r.aV +if(s==null)return null +return A.cD(s,a)}, +l6(a,b,c,d){var s=this.Sq(b) +if(s==null)return!1 +return this.ahw(a,s,!0,d)}, +zo(a,b){var s=this.cO +if(s==null){s=this.c5 +s.toString +b.f_(0,s)}else b.f_(0,s)}} +A.LU.prototype={ +sT4(a,b){var s=this,r=s.c5 +if(b!=r){if(b===255||r===255)s.sjG(null) +s.c5=b +s.hT()}}, +m5(a){var s,r,q,p=this +if(p.ax==null){p.sjG(null) +return}s=p.c5 +s.toString +r=p.k3 +q=p.x +if(s<255)p.sjG(a.ac2(s,r,t.Zr.a(q))) +else p.sjG(a.Ww(r.a,r.b,t.Ff.a(q))) +p.ox(a) +a.ik()}} +A.NC.prototype={ +m5(a){var s,r,q=this,p=q.k3 +p.toString +s=q.k4 +s.toString +r=q.ok +r.toString +q.sjG(a.ac4(p,s,r,t.Ma.a(q.x))) +q.ox(a) +a.ik()}} +A.HV.prototype={ +shd(a,b){if(!b.l(0,this.k3)){this.k3=b +this.hT()}}, +m5(a){var s=this,r=s.k3 +r.toString +s.sjG(a.abZ(r,s.k4,t.tX.a(s.x))) +s.ox(a) +a.ik()}} +A.Co.prototype={ +j(a){var s=A.bt(this),r=this.a!=null?"":"" +return"#"+s+"("+r+")"}} +A.KM.prototype={ +sxn(a){var s=this,r=s.k3 +if(r===a)return +if(s.y!=null){if(r.a===s)r.a=null +a.a=s}s.k3=a}, +sc6(a,b){if(b.l(0,this.k4))return +this.k4=b +this.hT()}, +aA(a){this.agG(a) +this.k3.a=this}, +ap(a){var s=this.k3 +if(s.a===this)s.a=null +this.agH(0)}, +l6(a,b,c,d){return this.u2(a,b.a2(0,this.k4),!0,d)}, +m5(a){var s,r=this +if(!r.k4.l(0,B.i)){s=r.k4 +r.sjG(a.FZ(A.ou(s.a,s.b,0).a,t.qf.a(r.x)))}else r.sjG(null) +r.ox(a) +if(!r.k4.l(0,B.i))a.ik()}, +zo(a,b){var s +if(!this.k4.l(0,B.i)){s=this.k4 +b.bj(0,s.a,s.b)}}} +A.JY.prototype={ +Sq(a){var s,r,q,p,o=this +if(o.R8){s=o.Xx() +s.toString +o.p4=A.xL(s) +o.R8=!1}if(o.p4==null)return null +r=new A.nn(new Float64Array(4)) +r.H6(a.a,a.b,0,1) +s=o.p4.a_(0,r).a +q=s[0] +p=o.p1 +return new A.l(q-p.a,s[1]-p.b)}, +l6(a,b,c,d){var s,r=this +if(r.k3.a==null){if(r.k4)return r.u2(a,b.a2(0,r.ok),!0,d) +return!1}s=r.Sq(b) +if(s==null)return!1 +return r.u2(a,s,!0,d)}, +Xx(){var s,r +if(this.p3==null)return null +s=this.p2 +r=A.ou(-s.a,-s.b,0) +s=this.p3 +s.toString +r.f_(0,s) +return r}, +apX(){var s,r,q,p,o,n,m=this +m.p3=null +s=m.k3.a +if(s==null)return +r=t.KV +q=A.a([s],r) +p=A.a([m],r) +A.aCd(s,m,q,p) +o=A.bpE(q) +s.zo(null,o) +r=m.p1 +o.bj(0,r.a,r.b) +n=A.bpE(p) +if(n.k0(n)===0)return +n.f_(0,o) +m.p3=n +m.R8=!0}, +gzl(){return!0}, +m5(a){var s,r,q=this +if(q.k3.a==null&&!q.k4){q.p2=q.p3=null +q.R8=!0 +q.sjG(null) +return}q.apX() +s=q.p3 +r=t.qf +if(s!=null){q.p2=q.ok +q.sjG(a.FZ(s.a,r.a(q.x))) +q.ox(a) +a.ik()}else{q.p2=null +s=q.ok +q.sjG(a.FZ(A.ou(s.a,s.b,0).a,r.a(q.x))) +q.ox(a) +a.ik()}q.R8=!0}, +zo(a,b){var s=this.p3 +if(s!=null)b.f_(0,s) +else{s=this.ok +b.f_(0,A.ou(s.a,s.b,0))}}} +A.HK.prototype={ +l6(a,b,c,d){var s,r,q,p=this,o=p.u2(a,b,!0,d),n=a.a +if(n.length!==0&&!0)return o +s=p.k4 +if(s!=null){r=p.ok +q=r.a +r=r.b +s=!new A.I(q,r,q+s.a,r+s.b).n(0,b)}else s=!1 +if(s)return o +if(A.ck(p.$ti.c)===A.ck(d)){o=o||!1 +n.push(new A.HL(d.a(p.k3),b.a2(0,p.ok),d.h("HL<0>")))}return o}} +A.ahh.prototype={} +A.oq.prototype={} +A.MU.prototype={ +fR(a){if(!(a.b instanceof A.oq))a.b=new A.oq(null,null,B.i)}, +skT(a){if(this.B===a)return +this.B=a +this.a6()}, +ds(a){var s,r,q,p,o,n=this,m=n.a3$ +switch(n.B.a){case 1:case 3:s=a.d +r=A.ii(s,null) +for(q=A.k(n).h("aq.1"),p=0;m!=null;){p+=m.lC(r).a +o=m.b +o.toString +m=q.a(o).am$}return a.bI(new A.V(p,s)) +case 0:case 2:s=a.b +r=A.ii(null,s) +for(q=A.k(n).h("aq.1"),p=0;m!=null;){p+=m.lC(r).b +o=m.b +o.toString +m=q.a(o).am$}return a.bI(new A.V(s,p))}}, +cj(){var s,r,q,p,o,n,m,l=this,k=null,j="RenderBox was not laid out: ",i=t.k.a(A.H.prototype.ga4.call(l)),h=l.a3$ +switch(l.B.a){case 1:s=i.d +r=A.ii(s,k) +for(q=t.U9,p=0;h!=null;){h.cX(r,!0) +o=h.b +o.toString +q.a(o) +o.a=new A.l(p,0) +n=h.id +p+=(n==null?A.q(A.R(j+A.o(h).j(0)+"#"+A.bt(h))):n).a +h=o.am$}l.id=i.bI(new A.V(p,s)) +break +case 3:s=i.d +r=A.ii(s,k) +for(q=t.U9,p=0;h!=null;){h.cX(r,!0) +o=h.b +o.toString +q.a(o) +n=h.id +p+=(n==null?A.q(A.R(j+A.o(h).j(0)+"#"+A.bt(h))):n).a +h=o.am$}h=l.a3$ +for(m=0;h!=null;){o=h.b +o.toString +q.a(o) +n=h.id +m+=(n==null?A.q(A.R(j+A.o(h).j(0)+"#"+A.bt(h))):n).a +o.a=new A.l(p-m,0) +h=o.am$}l.id=i.bI(new A.V(p,s)) +break +case 2:s=i.b +r=A.ii(k,s) +for(q=t.U9,p=0;h!=null;){h.cX(r,!0) +o=h.b +o.toString +q.a(o) +o.a=new A.l(0,p) +n=h.id +p+=(n==null?A.q(A.R(j+A.o(h).j(0)+"#"+A.bt(h))):n).b +h=o.am$}l.id=i.bI(new A.V(s,p)) +break +case 0:s=i.b +r=A.ii(k,s) +for(q=t.U9,p=0;h!=null;){h.cX(r,!0) +o=h.b +o.toString +q.a(o) +n=h.id +p+=(n==null?A.q(A.R(j+A.o(h).j(0)+"#"+A.bt(h))):n).b +h=o.am$}h=l.a3$ +for(m=0;h!=null;){o=h.b +o.toString +q.a(o) +n=h.id +m+=(n==null?A.q(A.R(j+A.o(h).j(0)+"#"+A.bt(h))):n).b +o.a=new A.l(0,p-m) +h=o.am$}l.id=i.bI(new A.V(s,p)) +break}}, +I7(a){var s,r,q,p=this.a3$ +for(s=t.U9,r=0;p!=null;){r=Math.max(r,A.kM(a.$1(p))) +q=p.b +q.toString +p=s.a(q).am$}return r}, +I8(a){var s,r,q,p=this.a3$ +for(s=t.U9,r=0;p!=null;){r+=a.$1(p) +q=p.b +q.toString +p=s.a(q).am$}return r}, +c3(a){switch(A.bT(this.B).a){case 0:return this.I8(new A.aP7(a)) +case 1:return this.I7(new A.aP8(a))}}, +bV(a){switch(A.bT(this.B).a){case 0:return this.I8(new A.aP3(a)) +case 1:return this.I7(new A.aP4(a))}}, +bW(a){switch(A.bT(this.B).a){case 0:return this.I8(new A.aP5(a)) +case 1:return this.I7(new A.aP6(a))}}, +c1(a){switch(A.bT(this.B).a){case 0:return this.I8(new A.aP1(a)) +case 1:return this.I7(new A.aP2(a))}}, +hL(a){return this.a8z(a)}, +aD(a,b){this.wM(a,b)}, +dY(a,b){return this.zS(a,b)}} +A.aP7.prototype={ +$1(a){return a.aB(B.ad,this.a,a.gbZ())}, +$S:21} +A.aP8.prototype={ +$1(a){return a.aB(B.ad,this.a,a.gbZ())}, +$S:21} +A.aP3.prototype={ +$1(a){return a.aB(B.ak,this.a,a.gc2())}, +$S:21} +A.aP4.prototype={ +$1(a){return a.aB(B.ak,this.a,a.gc2())}, +$S:21} +A.aP5.prototype={ +$1(a){return a.aB(B.aA,this.a,a.gcD())}, +$S:21} +A.aP6.prototype={ +$1(a){return a.aB(B.aA,this.a,a.gcD())}, +$S:21} +A.aP1.prototype={ +$1(a){return a.aB(B.br,this.a,a.gd4())}, +$S:21} +A.aP2.prototype={ +$1(a){return a.aB(B.br,this.a,a.gd4())}, +$S:21} +A.akl.prototype={ +aA(a){var s,r,q +this.eR(a) +s=this.a3$ +for(r=t.U9;s!=null;){s.aA(a) +q=s.b +q.toString +s=r.a(q).am$}}, +ap(a){var s,r,q +this.eS(0) +s=this.a3$ +for(r=t.U9;s!=null;){s.ap(0) +q=s.b +q.toString +s=r.a(q).am$}}} +A.akm.prototype={} +A.ail.prototype={ +aNI(a){var s=this.a +this.a=a +return s}, +j(a){var s="#",r=A.bt(this.b),q=this.a.a +return s+A.bt(this)+"("+("latestEvent: "+(s+r))+", "+("annotations: [list of "+q+"]")+")"}} +A.aim.prototype={ +goF(a){var s=this.c +return s.goF(s)}} +A.a5a.prototype={ +a1U(a){var s,r,q,p,o,n,m=t._h,l=A.l9(null,null,m,t.xV) +for(s=a.a,r=s.length,q=0;q") +this.b.aIq(a.goF(a),a.d,A.mV(new A.c9(s,r),new A.aJs(),r.h("z.E"),t.Pb))}, +aP5(a,b){var s,r,q,p,o,n=this,m={} +if(a.gdS(a)!==B.bY)return +if(t.ks.b(a))return +m.a=null +if(t.PB.b(a))m.a=A.aEL() +else{s=a.gBP() +m.a=b==null?n.a.$2(a.gcQ(a),s):b}r=a.goF(a) +q=n.c +p=q.i(0,r) +if(!A.bHX(p,a))return +o=q.a +new A.aJv(m,n,p,a,r).$0() +if(o!==0!==(q.a!==0))n.ag()}, +aOU(){new A.aJt(this).$0()}} +A.aJs.prototype={ +$1(a){return a.ga8s(a)}, +$S:393} +A.aJv.prototype={ +$0(){var s=this +new A.aJu(s.a,s.b,s.c,s.d,s.e).$0()}, +$S:0} +A.aJu.prototype={ +$0(){var s,r,q,p,o,n=this,m=null,l=n.c +if(l==null){s=n.d +if(t.PB.b(s))return +n.b.c.p(0,n.e,new A.ail(A.l9(m,m,t._h,t.xV),s))}else{s=n.d +if(t.PB.b(s))n.b.c.F(0,s.goF(s))}r=n.b +q=r.c.i(0,n.e) +if(q==null){l.toString +q=l}p=q.b +q.b=s +o=t.PB.b(s)?A.l9(m,m,t._h,t.xV):r.a1U(n.a.a) +r.a1A(new A.aim(q.aNI(o),o,p,s))}, +$S:0} +A.aJt.prototype={ +$0(){var s,r,q,p,o,n,m +for(s=this.a,r=s.c,r=r.gbw(r),q=A.k(r),q=q.h("@<1>").S(q.z[1]),r=new A.c2(J.ao(r.a),r.b,q.h("c2<1,2>")),q=q.z[1];r.u();){p=r.a +if(p==null)p=q.a(p) +o=p.b +n=s.aqi(p) +m=p.a +p.a=n +s.a1A(new A.aim(m,n,o,null))}}, +$S:0} +A.aJq.prototype={ +$2(a,b){var s +if(!this.a.ao(0,a))if(a.gXg()&&a.gW2(a)!=null){s=a.gW2(a) +s.toString +s.$1(this.b.cW(this.c.i(0,a)))}}, +$S:394} +A.aJr.prototype={ +$1(a){return!this.a.ao(0,a)}, +$S:395} +A.aoJ.prototype={} +A.dQ.prototype={ +ap(a){}, +j(a){return""}} +A.D5.prototype={ +eg(a,b){var s,r=this +if(a.gib()){r.Hd() +if(!a.cy){s=a.ay +s===$&&A.b() +s=!s}else s=!0 +if(s)A.bra(a,null,!0) +else if(a.db)A.bIm(a) +s=a.ch.a +s.toString +t.gY.a(s) +s.sc6(0,b) +r.a6N(s)}else{s=a.ay +s===$&&A.b() +if(s){a.ch.sb3(0,null) +a.Rz(r,b)}else a.Rz(r,b)}}, +a6N(a){a.er(0) +this.a.Ka(0,a)}, +gcR(a){var s,r,q=this +if(q.e==null){q.c=A.bIp(q.b) +s=$.as() +r=s.a8j() +q.d=r +q.e=s.a8d(r,null) +r=q.c +r.toString +q.a.Ka(0,r)}s=q.e +s.toString +return s}, +Hd(){var s,r=this +if(r.e==null)return +s=r.c +s.toString +s.sabP(r.d.EH()) +r.e=r.d=r.c=null}, +Yg(){var s=this.c +if(s!=null)if(!s.ch){s.ch=!0 +s.hT()}}, +Bl(a,b,c,d){var s,r=this +if(a.ax!=null)a.WL() +r.Hd() +r.a6N(a) +s=r.aGy(a,d==null?r.b:d) +b.$2(s,c) +s.Hd()}, +r6(a,b,c){return this.Bl(a,b,c,null)}, +aGy(a,b){return new A.D5(a,b)}, +tE(a,b,c,d,e,f){var s,r,q=this +if(e===B.l){d.$2(q,b) +return null}s=c.dw(b) +if(a){r=f==null?new A.AW(B.E,A.F(t.S,t.Q),A.aB(t.kd)):f +if(!s.l(0,r.k3)){r.k3=s +r.hT()}if(e!==r.k4){r.k4=e +r.hT()}q.Bl(r,d,b,s) +return r}else{q.aFu(s,e,s,new A.aLl(q,d,b)) +return null}}, +Wv(a,b,c,d,e,f,g){var s,r,q,p=this +if(f===B.l){e.$2(p,b) +return null}s=c.dw(b) +r=d.dw(b) +if(a){q=g==null?new A.AU(B.bc,A.F(t.S,t.Q),A.aB(t.kd)):g +if(!r.l(0,q.k3)){q.k3=r +q.hT()}if(f!==q.k4){q.k4=f +q.hT()}p.Bl(q,e,b,s) +return q}else{p.aFs(r,f,s,new A.aLk(p,e,b)) +return null}}, +aMZ(a,b,c,d,e,f){return this.Wv(a,b,c,d,e,B.bc,f)}, +Wu(a,b,c,d,e,f,g){var s,r,q,p=this +if(f===B.l){e.$2(p,b) +return null}s=c.dw(b) +r=d.dw(b) +if(a){q=g==null?new A.AT(B.bc,A.F(t.S,t.Q),A.aB(t.kd)):g +if(r!==q.k3){q.k3=r +q.hT()}if(f!==q.k4){q.k4=f +q.hT()}p.Bl(q,e,b,s) +return q}else{p.aFq(r,f,s,new A.aLj(p,e,b)) +return null}}, +aMY(a,b,c,d,e,f){return this.Wu(a,b,c,d,e,B.bc,f)}, +G_(a,b,c,d,e){var s,r=this,q=b.a,p=b.b,o=A.ou(q,p,0) +o.f_(0,c) +o.bj(0,-q,-p) +if(a){s=e==null?A.bsK(null):e +s.sda(0,o) +r.Bl(s,d,b,A.bqJ(o,r.b)) +return s}else{q=r.gcR(r) +q.eb(0) +q.a_(0,o.a) +d.$2(r,b) +r.gcR(r).dq(0) +return null}}, +ac3(a,b,c,d){var s=d==null?A.a5G(null):d +s.sT4(0,b) +s.sc6(0,a) +this.r6(s,c,B.i) +return s}, +j(a){return"PaintingContext#"+A.cU(this)+"(layer: "+this.a.j(0)+", canvas bounds: "+this.b.j(0)+")"}} +A.aLl.prototype={ +$0(){return this.b.$2(this.a,this.c)}, +$S:0} +A.aLk.prototype={ +$0(){return this.b.$2(this.a,this.c)}, +$S:0} +A.aLj.prototype={ +$0(){return this.b.$2(this.a,this.c)}, +$S:0} +A.aws.prototype={} +A.Mi.prototype={ +Bs(){var s=this.cx +if(s!=null)s.a.Ux()}, +saO6(a){var s=this.e +if(s===a)return +if(s!=null)s.ap(0) +this.e=a +a.aA(this)}, +a9y(){var s,r,q,p,o,n,m,l,k,j,i,h=this +try{for(o=t.TT;n=h.r,n.length!==0;){s=n +h.r=A.a([],o) +n=s +m=new A.aLz() +if(!!n.immutable$list)A.q(A.a7("sort")) +l=n.length-1 +if(l-0<=32)A.a93(n,0,l,m) +else A.a92(n,0,l,m) +for(r=0;r")) +i.CB(m,l,k,j.c) +B.b.I(n,i) +break}}q=J.b3(s,r) +if(q.z&&q.y===h)q.avr()}h.f=!1}for(o=h.CW,o=A.ee(o,o.r,A.k(o).c),n=o.$ti.c;o.u();){m=o.d +p=m==null?n.a(m):m +p.a9y()}}finally{h.f=!1}}, +apN(a){try{a.$0()}finally{this.f=!0}}, +a9w(){var s,r,q,p,o=this.z +B.b.fz(o,new A.aLy()) +for(s=o.length,r=0;r0){if(s.at==null){r=t.bu +s.at=new A.Ny(s.c,A.aY(r),A.F(t.S,r),A.aY(r),$.b5()) +s.b.$0()}}else{r=s.at +if(r!=null){r.m() +s.at=null +s.d.$0()}}}, +a9A(){var s,r,q,p,o,n,m,l,k=this +if(k.at==null)return +try{p=k.ch +o=A.aa(p,!0,A.k(p).c) +B.b.fz(o,new A.aLB()) +s=o +p.ab(0) +for(p=s,n=p.length,m=0;m0;n=m){m=n-1 +r[n].eI(r[m],o)}return o}, +t6(a){return null}, +KQ(a){return null}, +hv(a){}, +Ce(a){var s,r=this +if(r.y.at==null)return +s=r.fr +if(s!=null&&!s.y)s.afk(a) +else if(r.gbP(r)!=null)r.gbP(r).Ce(a)}, +gJa(){var s,r=this +if(r.dx==null){s=A.oQ() +r.dx=s +r.hv(s)}s=r.dx +s.toString +return s}, +zB(){this.dy=!0 +this.fr=null +this.ck(new A.aPg())}, +bX(){var s,r,q,p,o=this,n=o.y +if(n==null||n.at==null){o.dx=null +return}if(o.fr!=null){n=o.dx +n=n==null?null:n.a +s=n===!0}else s=!1 +n=o.dx +r=(n==null?null:n.k1)!=null||o.gJa().k1!=null +o.dx=null +q=o.gJa().a&&s +p=o +while(!0){if(p.gbP(p) instanceof A.H)n=r||!q +else n=!1 +if(!n)break +if(p!==o&&p.dy)break +p.dy=!0 +if(q)r=!1 +p=p.gbP(p) +if(p.dx==null){n=A.oQ() +p.dx=n +p.hv(n)}q=p.dx.a +if(q&&p.fr==null)return}if(p!==o&&o.fr!=null&&o.dy)o.y.ch.F(0,o) +if(!p.dy){p.dy=!0 +n=o.y +if(n!=null){n.ch.G(0,p) +o.y.Bs()}}}, +aDq(){var s,r,q,p,o,n,m,l=this,k=null +if(l.z)return +s=l.fr +r=s==null +if(r)q=k +else{q=s.ch +if(q==null)q=k +else q=q.Q||q.y}s=r?k:s.z +p=t.pp.a(l.a1j(s===!0,q===!0)) +s=t.QF +o=A.a([],s) +n=A.a([],s) +s=l.fr +r=s==null +q=r?k:s.f +m=r?k:s.r +s=r?k:s.w +p.zF(s==null?0:s,m,q,o,n)}, +a1j(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=this,d={},c=e.gJa() +d.a=c.d +d.b=!c.e&&!c.a +s=a||c.b +r=b||c.p4 +q=A.a([],t.q1) +p=c.c||!(e.gbP(e) instanceof A.H) +o=c.k1!=null +n=t.pp +m=A.F(t.ZX,n) +l=t.CZ +k=A.a([],l) +j=A.a([],t.i1) +i=c.bQ +i=i==null?null:i.a!==0 +e.jl(new A.aPb(d,e,r,s,q,k,j,c,i===!0,o,m)) +if(p)for(n=k.length,h=0;h"))) +for(i=g.b,f=i.length,h=0;h#"+A.bt(this)}, +j(a){return this.f2()}, +i2(a,b,c,d){var s,r=this +if(r.gbP(r) instanceof A.H){s=r.gbP(r) +s.toString +s.i2(a,b==null?r:b,c,d)}}, +Cn(){return this.i2(B.aL,null,B.F,null)}, +vN(a){return this.i2(B.aL,null,B.F,a)}, +yd(a,b,c){return this.i2(a,null,b,c)}, +vO(a,b){return this.i2(B.aL,a,B.F,b)}, +$iaC:1} +A.aPe.prototype={ +$0(){var s=A.a([],t.R),r=this.a +s.push(A.bid("The following RenderObject was being processed when the exception was fired",B.R9,r)) +s.push(A.bid("RenderObject",B.Ra,r)) +return s}, +$S:42} +A.aPh.prototype={ +$0(){this.b.$1(this.c.a(this.a.ga4()))}, +$S:0} +A.aPf.prototype={ +$1(a){var s +a.a5E() +s=a.cx +s===$&&A.b() +if(s)this.a.cx=!0}, +$S:24} +A.aPg.prototype={ +$1(a){a.zB()}, +$S:24} +A.aPb.prototype={ +$1(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f=this,e=a.a1j(f.d,f.c) +if(e.a){B.b.ab(f.e) +B.b.ab(f.f) +B.b.ab(f.r) +if(!f.w.a)f.a.a=!0}for(s=e.gabg(),r=s.length,q=f.f,p=f.y,o=f.x,n=f.b,m=f.w,l=f.e,k=f.z,j=0;j1){b=new A.alj() +b.a_V(a3,a4,c)}else b=a2 +c=b.c +c===$&&A.b() +a=b.d +a===$&&A.b() +a0=A.j4(c,a) +e=e==null?a0:e.oH(a0) +c=b.b +if(c!=null){a1=A.j4(b.c,c) +f=f==null?a1:f.he(a1)}c=b.a +if(c!=null){a1=A.j4(b.c,c) +g=g==null?a1:g.he(a1)}d=d.c +if(d!=null)l.I(0,d)}}if(h!=null)j=!(e.a>=e.c||e.b>=e.d) +else j=!1 +if(j){if(i==null||a6.n(0,i.b))i=A.Nx(a2,B.b.gN(o).gyc()) +a6.G(0,i.b) +i.dy=l +if(!i.e.l(0,e)){i.e=e +i.m0()}if(!A.bjd(i.d,a2)){i.d=null +i.m0()}i.f=f +i.r=g +for(k=k.gaj(m);k.u();){j=k.gH(k) +if(j.gmt()!=null)B.b.gN(j.b).fr=i}i.adr(0,h) +a5.push(i)}}}, +zF(a,b,a0,a1,a2){var s,r,q,p,o,n,m,l,k,j,i,h,g,f=this,e=null,d=A.aY(t.S),c=f.y +for(s=f.x,r=s.length,q=0;q");s.u();){n=s.gH(s) +if(n instanceof A.zX){if(n.z){m=n.b +m=B.b.gN(m).fr!=null&&d.n(0,B.b.gN(m).fr.b)}else m=!1 +if(m)B.b.gN(n.b).fr=null}m=n.b +l=new A.jW(r,1,e,p) +l.CB(r,1,e,o) +B.b.I(m,l) +n.zF(a+f.f.y1,b,a0,a1,a2)}return}k=f.aoq(b,a0) +s=f.e +r=!s +if(r){if(k==null)p=e +else{p=k.d +p===$&&A.b() +if(!p.gai(p)){p=k.c +p===$&&A.b() +p=p.aaX()}else p=!0}p=p===!0}else p=!1 +if(p)return +p=f.b +o=B.b.gN(p) +if(o.fr==null)o.fr=A.Nx(e,B.b.gN(p).gyc()) +j=B.b.gN(p).fr +j.sVx(s) +j.dy=f.c +j.w=a +if(a!==0){f.HY() +s=f.f +s.sfl(0,s.y1+a)}if(k!=null){s=k.d +s===$&&A.b() +j.scE(0,s) +s=k.c +s===$&&A.b() +j.sda(0,s) +j.f=k.b +j.r=k.a +if(r&&k.e){f.HY() +f.f.ce(B.kZ,!0)}}s=t.QF +i=A.a([],s) +f.a2z(j.f,j.r,a2,d) +for(r=J.ao(c);r.u();){o=r.gH(r) +if(o instanceof A.zX){if(o.z){n=o.b +n=B.b.gN(n).fr!=null&&d.n(0,B.b.gN(n).fr.b)}else n=!1 +if(n)B.b.gN(o.b).fr=null}h=A.a([],s) +n=j.f +o.zF(0,j.r,n,i,h) +B.b.I(a2,h)}s=f.f +if(s.a)B.b.gN(p).zq(j,f.f,i) +else j.tQ(0,i,s) +a1.push(j) +for(s=a2.length,r=t.g3,q=0;q1){s=new A.alj() +s.a_V(b,a,r) +r=s}else r=null +return r}, +gmt(){return this.z?null:this.f}, +I(a,b){var s,r,q,p,o,n,m=this +for(s=b.length,r=m.y,q=0;q0;){r=c[s];--s +q=c[s] +a=r.KQ(q) +if(a!=null){m.b=a +m.a=A.bu6(m.a,r.t6(q))}else m.b=A.bu6(m.b,r.t6(q)) +l=$.bA0() +l.fQ() +A.bNg(r,q,m.c,l) +m.b=A.bu7(m.b,l) +m.a=A.bu7(m.a,l)}p=B.b.gN(c) +l=m.b +l=l==null?p.gru():l.he(p.gru()) +m.d=l +o=m.a +if(o!=null){n=o.he(l) +if(n.gai(n)){l=m.d +l=!l.gai(l)}else l=!1 +m.e=l +if(!l)m.d=n}}} +A.akq.prototype={} +A.qy.prototype={ +l(a,b){if(b==null)return!1 +return b instanceof A.qy&&b.b===this.b}, +gv(a){return A.X(B.ak7,this.b,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}} +A.mb.prototype={ +ap(a){this.a=this.b=null +this.akd(0)}, +j(a){var s=A.h(this.b),r=this.a +r=r==null?"not laid out":"offset: "+r.j(0) +return"widget: "+s+", "+r}} +A.a7g.prototype={ +fR(a){if(!(a.b instanceof A.mb))a.b=new A.mb(null,null)}, +xm(a,b){var s,r=A.a([],t.UY),q=this.a3$,p=A.k(this).h("aq.1") +while(q!=null){r.push(A.bJh(q,a,b)) +s=q.b +s.toString +q=p.a(s).am$}return r}, +abR(a){var s,r,q,p,o,n,m=this.a3$ +for(s=a.length,r=t.ot,q=A.k(this).h("aq.1"),p=0;ph){d=c0[h].dy +d=d!=null&&d.n(0,new A.qy(i,b7))}else d=!1 +if(!d)break +b=c0[h] +d=s.b +d.toString +if(m.a(d).a!=null)b5.push(b);++h}b7=s.b +b7.toString +s=n.a(b7).am$;++i}else{a=o.a(A.H.prototype.ga4.call(b3)) +b6.tZ(b3.fF) +a0=a.b +a0=b3.aG||b3.aS===B.ac?a0:1/0 +b6.LW(a0,a.a) +a1=b6.xT(new A.i8(j,e,B.q,!1,c,d),B.c3,B.bK) +if(a1.length===0)continue +d=B.b.gN(a1) +a2=new A.I(d.a,d.b,d.c,d.d) +a3=B.b.gN(a1).e +for(d=A.ab(a1),c=d.h("jW<1>"),a=new A.jW(a1,1,b4,c),a.CB(a1,1,b4,d.c),a=new A.bZ(a,a.gt(a),c.h("bZ")),c=c.h("ax.E");a.u();){d=a.d +if(d==null)d=c.a(d) +a2=a2.oH(new A.I(d.a,d.b,d.c,d.d)) +a3=d.e}d=a2.a +c=Math.max(0,d) +a=a2.b +a0=Math.max(0,a) +d=Math.min(a2.c-d,o.a(A.H.prototype.ga4.call(b3)).b) +a=Math.min(a2.d-a,o.a(A.H.prototype.ga4.call(b3)).d) +a4=Math.floor(c)-4 +a5=Math.floor(a0)-4 +d=Math.ceil(c+d)+4 +a=Math.ceil(a0+a)+4 +a6=new A.I(a4,a5,d,a) +a7=A.oQ() +a8=k+1 +a7.k2=new A.xU(k,b4) +a7.e=!0 +a7.c5=l +a0=f.b +b7=a0==null?b7:a0 +a7.RG=new A.dI(b7,f.f) +b7=b8.r +if(b7!=null){a9=b7.he(a6) +if(a9.a>=a9.c||a9.b>=a9.d)b7=!(a4>=d||a5>=a) +else b7=!1 +a7.ce(B.kZ,b7)}b0=A.b4("newChild") +b7=b3.ak +d=b7==null?b4:b7.a!==0 +if(d===!0){b7.toString +d=new A.c9(b7,A.k(b7).h("c9<1>")) +b1=d.gaj(d) +if(!b1.u())A.q(A.cf()) +b7=b7.F(0,b1.gH(b1)) +b7.toString +if(b0.b!==b0)A.q(A.ql(b0.a)) +b0.b=b7}else{b2=new A.kF() +b7=A.Nx(b2,b3.ay1(b2)) +if(b0.b!==b0)A.q(A.ql(b0.a)) +b0.b=b7}if(b7===b0)A.q(A.i0(b0.a)) +J.bnO(b7,a7) +if(!b7.e.l(0,a6)){b7.e=a6 +b7.m0()}b7=b0.b +if(b7===b0)A.q(A.i0(b0.a)) +d=b7.a +d.toString +r.p(0,d,b7) +b7=b0.b +if(b7===b0)A.q(A.i0(b0.a)) +b5.push(b7) +k=a8 +l=a3}}b3.ak=r +b8.tQ(0,b5,b9)}, +ay1(a){return new A.aPj(this,a)}, +zB(){this.Ot() +this.ak=null}} +A.aPm.prototype={ +$1(a){return a.x=null}, +$S:400} +A.aPn.prototype={ +$1(a){var s=a.w +s===$&&A.b() +return s.c!==B.fG}, +$S:401} +A.aPl.prototype={ +$2(a,b){return new A.V(a.aB(B.ad,1/0,a.gbZ()),0)}, +$S:113} +A.aPk.prototype={ +$2(a,b){return new A.V(a.aB(B.ak,1/0,a.gc2()),0)}, +$S:113} +A.aPi.prototype={ +$1(a){var s,r +if(a instanceof A.nI){s=a.b +$label0$0:{if(B.kE===s||B.kF===s||B.kG===s){r=!1 +break $label0$0}if(B.kH===s||B.kI===s||B.dP===s){r=!0 +break $label0$0}r=null}}else r=!0 +return r}, +$S:101} +A.aPj.prototype={ +$0(){var s=this.a,r=s.ak.i(0,this.b) +r.toString +s.vO(s,r.e)}, +$S:0} +A.ro.prototype={ +gk(a){var s=this.w +s===$&&A.b() +return s}, +ay2(){var s=this,r=s.a1i(),q=s.w +q===$&&A.b() +if(q.l(0,r))return +s.w=r +s.ag()}, +a1i(){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c=this,b=c.d +if(b==null||c.e==null)return B.Jr +s=b.a +r=c.e.a +b=c.b +q=b.Ic(new A.bR(s,B.q)) +p=s===r?q:b.Ic(new A.bR(r,B.q)) +o=b.B +n=o.x +n.toString +m=s>r!==(B.ab===n) +l=A.ou(c.gpn().a,c.gpn().b,0) +l.k0(l) +k=A.de(B.q,s,r,!1) +j=A.a([],t.AO) +for(b=b.rm(k),n=b.length,i=0;ir&&s.b>r)return B.bZ}p=A.b4("start") +o=A.b4("end") +r=l.a +q=s.b +if(r>q)p.b=o.b=new A.bR(r,B.q) +else{p.b=new A.bR(m,B.q) +o.b=new A.bR(q,B.aQ)}n.d=p.aF() +n.e=o.aF() +return B.bA}, +as_(a,b,c){var s,r,q,p,o,n,m,l=this,k=l.b,j=k.cs(0,null) +if(j.k0(j)===0)switch(c){case B.kU:case B.i0:return B.c_ +case B.kV:case B.i_:return B.bZ}s=A.cD(j,new A.l(a,0)).a +switch(c){case B.kU:case B.kV:if(b){k=l.e +k.toString +r=k}else{k=l.d +k.toString +r=k}q=l.auw(r,!1,s) +p=q.a +o=q.b +break +case B.i_:case B.i0:n=l.e +if(n==null){n=new A.bR(l.a.b,B.aQ) +l.e=n +r=n}else r=n +n=l.d +if(n==null){l.d=r +m=r}else m=n +p=k.hE(new A.l(s,k.Ic(b?r:m).b-k.B.gf1()/2)) +o=B.bA +break +default:p=null +o=null}if(b)l.e=p +else l.d=p +return o}, +ass(a,b,c){var s,r,q,p,o,n,m=this,l=m.e +if(l==null){l=m.a +l=a?new A.bR(l.a,B.q):new A.bR(l.b,B.aQ) +m.e=l +s=l}else s=l +l=m.d +if(l==null){m.d=s +r=s}else r=l +s=b?s:r +if(a&&s.a===m.a.b)return B.bZ +l=!a +if(l&&s.a===m.a.a)return B.c_ +switch(c){case B.aeY:l=m.a +q=m.Rm(s,a,new A.AH(B.c.U(m.c,l.a,l.b))) +p=B.bA +break +case B.aeZ:l=m.b.B +o=l.f +o.toString +q=m.Rm(s,a,new A.Fd(o,l.b.a.a).gabj()) +p=B.bA +break +case B.af_:q=m.awo(s,a,new A.Cu(m)) +p=B.bA +break +case B.af0:o=m.a +n=o.a +o=o.b +q=m.Rm(s,a,new A.wx(B.c.U(m.c,n,o))) +if(a&&q.a===o)p=B.bZ +else p=l&&q.a===n?B.c_:B.bA +break +default:p=null +q=null}if(b)m.e=q +else m.d=q +return p}, +Rm(a,b,c){var s,r=a.a +if(b){r=c.iL(r) +s=r==null?this.a.b:r}else{r=c.iJ(r-1) +s=r==null?this.a.a:r}return new A.bR(s,B.q)}, +awo(a,b,c){var s,r,q,p,o=this +switch(a.b.a){case 0:s=a.a +if(s<1&&!b)return B.ib +r=o.a.a +s=new A.AH(o.c).iJ(r+s) +if(s==null)s=r +q=Math.max(0,s)-1 +break +case 1:q=a.a +break +default:q=null}if(b){s=c.iL(q) +p=s==null?o.a.b:s}else{s=c.iJ(q) +p=s==null?o.a.a:s}return new A.bR(p,B.q)}, +auw(a,b,c){var s,r,q,p,o,n=this,m=n.b,l=m.B.zG(),k=m.rn(a,B.Y),j=l.length,i=j-1 +for(s=k.b,r=0;rs){i=J.bnv(q) +break}}if(b&&i===l.length-1)p=new A.bR(n.a.b,B.aQ) +else if(!b&&i===0)p=new A.bR(n.a.a,B.q) +else p=n.a_A(m.hE(new A.l(c,l[b?i+1:i-1].gqw()))) +m=p.a +j=n.a +if(m===j.a)o=B.c_ +else o=m===j.b?B.bZ:B.bA +return new A.aU(p,o,t.UH)}, +ayC(a){var s,r,q,p,o=this +if(o.d==null||o.e==null)return!1 +s=A.b4("currentStart") +r=A.b4("currentEnd") +q=o.d +q.toString +p=o.e +p.toString +if(A.bkJ(q,p)>0){s.b=q +r.b=p}else{s.b=p +r.b=q}return A.bkJ(s.aF(),a)>=0&&A.bkJ(r.aF(),a)<=0}, +cs(a,b){var s=A.ou(this.gpn().a,this.gpn().b,0) +s.f_(0,this.b.cs(0,b)) +return s}, +r5(a,b){if(this.b.y==null)return}, +gpn(){var s,r,q,p,o,n,m=this,l=m.x +if(l==null){l=m.b +s=m.a +r=s.a +q=l.rm(A.de(B.q,r,s.b,!1)) +if(q.length!==0){l=B.b.gN(q) +p=new A.I(l.a,l.b,l.c,l.d) +for(o=1;o=q)return r.a +s=this.Oy(a) +r=this.C +q=r.a +if(!(q>=1/0))return A.S(s,q,r.b) +return s}, +bV(a){var s,r=this.C,q=r.b +if(q<1/0&&r.a>=q)return r.a +s=this.Ow(a) +r=this.C +q=r.a +if(!(q>=1/0))return A.S(s,q,r.b) +return s}, +bW(a){var s,r=this.C,q=r.d +if(q<1/0&&r.c>=q)return r.c +s=this.Ox(a) +r=this.C +q=r.c +if(!(q>=1/0))return A.S(s,q,r.d) +return s}, +c1(a){var s,r=this.C,q=r.d +if(q<1/0&&r.c>=q)return r.c +s=this.Ov(a) +r=this.C +q=r.c +if(!(q>=1/0))return A.S(s,q,r.d) +return s}, +cj(){var s=this,r=t.k.a(A.H.prototype.ga4.call(s)),q=s.E$,p=s.C +if(q!=null){q.cX(p.wZ(r),!0) +q=s.E$ +s.id=q.gq(q)}else s.id=p.wZ(r).bI(B.x)}, +ds(a){var s=this.E$,r=this.C +if(s!=null)return s.lC(r.wZ(a)) +else return r.wZ(a).bI(B.x)}} +A.a7i.prototype={ +saLk(a,b){if(this.C===b)return +this.C=b +this.a6()}, +saLj(a,b){if(this.a0===b)return +this.a0=b +this.a6()}, +a2i(a){var s,r,q=a.a,p=a.b +p=p<1/0?p:A.S(this.C,q,p) +s=a.c +r=a.d +return new A.aL(q,p,s,r<1/0?r:A.S(this.a0,s,r))}, +Dr(a,b){var s=this.E$ +if(s!=null)return a.bI(b.$2(s,this.a2i(a))) +return this.a2i(a).bI(B.x)}, +ds(a){return this.Dr(a,A.rI())}, +cj(){this.id=this.Dr(t.k.a(A.H.prototype.ga4.call(this)),A.vE())}} +A.MT.prototype={ +sage(a){if(a==this.C)return +this.C=a +this.a6()}, +sagd(a){return}, +c3(a){return this.bV(a)}, +bV(a){var s=this.E$ +if(s==null)return 0 +return A.aP0(s.aB(B.ak,a,s.gc2()),this.C)}, +bW(a){var s,r=this +if(r.E$==null)return 0 +if(!isFinite(a))a=r.bV(1/0) +s=r.E$ +return A.aP0(s.aB(B.aA,a,s.gcD()),r.a0)}, +c1(a){var s,r=this +if(r.E$==null)return 0 +if(!isFinite(a))a=r.bV(1/0) +s=r.E$ +return A.aP0(s.aB(B.br,a,s.gd4()),r.a0)}, +Dr(a,b){var s=this.E$ +if(s!=null){if(!(a.a>=a.b))a=a.Gi(A.aP0(s.aB(B.ak,a.d,s.gc2()),this.C)) +s=this.E$ +s.toString +return b.$2(s,a)}else return new A.V(A.S(0,a.a,a.b),A.S(0,a.c,a.d))}, +ds(a){return this.Dr(a,A.rI())}, +cj(){this.id=this.Dr(t.k.a(A.H.prototype.ga4.call(this)),A.vE())}} +A.a7k.prototype={ +gqs(){return this.E$!=null&&this.C>0}, +gib(){return this.E$!=null&&this.C>0}, +sBc(a,b){var s,r,q,p,o=this +if(o.a0===b)return +s=o.E$!=null +r=s&&o.C>0 +q=o.C +o.a0=b +p=B.e.bi(A.aq3(b,0,1)*255) +o.C=p +if(r!==(s&&p>0))o.vh() +o.abd() +if(q!==0!==(o.C!==0)&&!0)o.bX()}, +sK9(a){return}, +xz(a){return this.C>0}, +BM(a){var s=a==null?A.a5G(null):a +s.sT4(0,this.C) +return s}, +aD(a,b){if(this.E$==null||this.C===0)return +this.ol(a,b)}, +jl(a){var s,r=this.E$ +if(r!=null)s=this.C!==0||!1 +else s=!1 +if(s){r.toString +a.$1(r)}}} +A.MJ.prototype={ +gib(){if(this.E$!=null){var s=this.UK$ +s.toString}else s=!1 +return s}, +BM(a){var s=a==null?A.a5G(null):a +s.sT4(0,this.Au$) +return s}, +sBc(a,b){var s=this,r=s.uW$ +if(r===b)return +if(s.y!=null&&r!=null)r.J(0,s.gJG()) +s.uW$=b +if(s.y!=null)b.P(0,s.gJG()) +s.SA()}, +sK9(a){if(a===this.UL$)return +this.UL$=a +this.bX()}, +SA(){var s,r=this,q=r.Au$,p=r.uW$ +p=r.Au$=B.e.bi(A.aq3(p.gk(p),0,1)*255) +if(q!==p){s=r.UK$ +p=p>0 +r.UK$=p +if(r.E$!=null&&s!==p)r.vh() +r.abd() +if(q===0||r.Au$===0)r.bX()}}, +xz(a){var s=this.uW$ +return s.gk(s)>0}, +jl(a){var s,r=this.E$ +if(r!=null)if(this.Au$===0){s=this.UL$ +s.toString}else s=!0 +else s=!1 +if(s){r.toString +a.$1(r)}}} +A.MI.prototype={} +A.a76.prototype={ +shd(a,b){if(this.C.l(0,b))return +this.C=b +this.aU()}, +swB(a){if(this.a0===a)return +this.a0=a +this.aU()}, +gqs(){return this.E$!=null}, +aD(a,b){var s,r,q,p=this +if(p.E$!=null){s=t.m2 +if(s.a(A.H.prototype.gb3.call(p,p))==null)p.ch.sb3(0,A.bo0(null)) +s.a(A.H.prototype.gb3.call(p,p)).shd(0,p.C) +r=s.a(A.H.prototype.gb3.call(p,p)) +q=p.a0 +if(q!==r.k4){r.k4=q +r.hT()}s=s.a(A.H.prototype.gb3.call(p,p)) +s.toString +a.r6(s,A.iw.prototype.giE.call(p),b)}else p.ch.sb3(0,null)}} +A.J2.prototype={ +P(a,b){return null}, +J(a,b){return null}, +j(a){return"CustomClipper"}} +A.uF.prototype={ +Nu(a){return this.b.eh(new A.I(0,0,0+a.a,0+a.b),this.c)}, +O_(a){if(A.o(a)!==B.akt)return!0 +t.jH.a(a) +return!a.b.l(0,this.b)||a.c!=this.c}} +A.Gx.prototype={ +szC(a){var s,r=this,q=r.C +if(q==a)return +r.C=a +s=a==null +if(s||q==null||A.o(a)!==A.o(q)||a.O_(q))r.yQ() +if(r.y!=null){if(q!=null)q.J(0,r.gIB()) +if(!s)a.P(0,r.gIB())}}, +aA(a){var s +this.ys(a) +s=this.C +if(s!=null)s.P(0,this.gIB())}, +ap(a){var s=this.C +if(s!=null)s.J(0,this.gIB()) +this.u5(0)}, +yQ(){this.a0=null +this.aU() +this.bX()}, +smq(a){if(a!==this.aw){this.aw=a +this.aU()}}, +cj(){var s=this,r=s.id!=null?s.gq(s):null +s.yq() +if(!J.i(r,s.gq(s)))s.a0=null}, +qp(){var s,r=this +if(r.a0==null){s=r.C +s=s==null?null:s.Nu(r.gq(r)) +r.a0=s==null?r.gCQ():s}}, +t6(a){var s,r=this +switch(r.aw.a){case 0:return null +case 1:case 2:case 3:if(r.C==null)s=null +else{s=r.gq(r) +s=new A.I(0,0,0+s.a,0+s.b)}if(s==null){s=r.gq(r) +s=new A.I(0,0,0+s.a,0+s.b)}return s}}, +m(){this.fG=null +this.jr()}} +A.a7a.prototype={ +gCQ(){var s=this.gq(this) +return new A.I(0,0,0+s.a,0+s.b)}, +dc(a,b){var s=this +if(s.C!=null){s.qp() +if(!s.a0.n(0,b))return!1}return s.qb(a,b)}, +aD(a,b){var s,r,q=this,p=q.E$ +if(p!=null){s=q.ch +if(q.aw!==B.l){q.qp() +p=q.cx +p===$&&A.b() +r=q.a0 +r.toString +s.sb3(0,a.tE(p,b,r,A.iw.prototype.giE.call(q),q.aw,t.EM.a(s.a)))}else{a.eg(p,b) +s.sb3(0,null)}}else q.ch.sb3(0,null)}} +A.a79.prototype={ +sTm(a,b){if(this.df.l(0,b))return +this.df=b +this.yQ()}, +scF(a){if(this.e5==a)return +this.e5=a +this.yQ()}, +gCQ(){var s=this.df,r=this.gq(this) +return s.e2(new A.I(0,0,0+r.a,0+r.b))}, +dc(a,b){var s=this +if(s.C!=null){s.qp() +if(!s.a0.n(0,b))return!1}return s.qb(a,b)}, +aD(a,b){var s,r,q=this,p=q.E$ +if(p!=null){s=q.ch +if(q.aw!==B.l){q.qp() +p=q.cx +p===$&&A.b() +r=q.a0 +s.sb3(0,a.Wv(p,b,new A.I(r.a,r.b,r.c,r.d),r,A.iw.prototype.giE.call(q),q.aw,t.eG.a(s.a)))}else{a.eg(p,b) +s.sb3(0,null)}}else q.ch.sb3(0,null)}} +A.a78.prototype={ +gCQ(){var s=$.as().cZ(),r=this.gq(this) +s.oy(new A.I(0,0,0+r.a,0+r.b)) +return s}, +dc(a,b){var s=this +if(s.C!=null){s.qp() +if(!s.a0.n(0,b))return!1}return s.qb(a,b)}, +aD(a,b){var s,r,q,p=this,o=p.E$ +if(o!=null){s=p.ch +if(p.aw!==B.l){p.qp() +o=p.cx +o===$&&A.b() +r=p.gq(p) +q=p.a0 +q.toString +s.sb3(0,a.Wu(o,b,new A.I(0,0,0+r.a,0+r.b),q,A.iw.prototype.giE.call(p),p.aw,t.JG.a(s.a)))}else{a.eg(o,b) +s.sb3(0,null)}}else p.ch.sb3(0,null)}} +A.SQ.prototype={ +sfl(a,b){if(this.df===b)return +this.df=b +this.aU()}, +sbR(a,b){if(this.e5.l(0,b))return +this.e5=b +this.aU()}, +sa5(a,b){if(this.f7.l(0,b))return +this.f7=b +this.aU()}, +hv(a){this.jq(a) +a.sfl(0,this.df)}} +A.a7l.prototype={ +scG(a,b){if(this.UH===b)return +this.UH=b +this.yQ()}, +sTm(a,b){if(J.i(this.d1,b))return +this.d1=b +this.yQ()}, +gCQ(){var s,r,q=this,p=q.gq(q),o=0+p.a +p=0+p.b +switch(q.UH.a){case 0:s=q.d1 +if(s==null)s=B.aJ +return s.e2(new A.I(0,0,o,p)) +case 1:s=(o-0)/2 +r=(p-0)/2 +return new A.lY(0,0,o,p,s,r,s,r,s,r,s,r,s===r)}}, +dc(a,b){var s=this +if(s.C!=null){s.qp() +if(!s.a0.n(0,b))return!1}return s.qb(a,b)}, +aD(a,b){var s,r,q,p,o,n,m,l,k,j=this +if(j.E$==null){j.ch.sb3(0,null) +return}j.qp() +s=j.a0.dw(b) +r=$.as() +q=r.cZ() +q.fT(s) +p=a.gcR(a) +o=j.df +if(o!==0&&!0){n=j.e5 +m=j.f7 +p.wV(q,n,o,(m.gk(m)>>>24&255)!==255)}l=j.aw===B.eW +if(!l){r=r.bn() +r.sa5(0,j.f7) +p.de(s,r)}r=j.cx +r===$&&A.b() +o=j.gq(j) +n=j.a0 +n.toString +m=j.ch +k=t.eG.a(m.a) +m.sb3(0,a.Wv(r,b,new A.I(0,0,0+o.a,0+o.b),n,new A.aPo(j,l),j.aw,k))}} +A.aPo.prototype={ +$2(a,b){var s,r +if(this.b){s=a.gcR(a) +r=$.as().bn() +r.sa5(0,this.a.f7) +s.Ag(r)}this.a.ol(a,b)}, +$S:15} +A.a7m.prototype={ +gCQ(){var s=$.as().cZ(),r=this.gq(this) +s.oy(new A.I(0,0,0+r.a,0+r.b)) +return s}, +dc(a,b){var s=this +if(s.C!=null){s.qp() +if(!s.a0.n(0,b))return!1}return s.qb(a,b)}, +aD(a,b){var s,r,q,p,o,n,m,l,k=this +if(k.E$==null){k.ch.sb3(0,null) +return}k.qp() +s=k.gq(k) +r=b.a +q=b.b +p=k.a0.dw(b) +o=a.gcR(a) +if(k.df!==0&&!0){o.el(new A.I(r,q,r+s.a,q+s.b).dZ(20),$.bBk()) +s=k.e5 +r=k.df +q=k.f7 +o.wV(p,s,r,(q.gk(q)>>>24&255)!==255)}n=k.aw===B.eW +if(!n){s=$.as().bn() +s.sa5(0,k.f7) +o.dV(p,s)}s=k.cx +s===$&&A.b() +r=k.gq(k) +q=k.a0 +q.toString +m=k.ch +l=t.JG.a(m.a) +m.sb3(0,a.Wu(s,b,new A.I(0,0,0+r.a,0+r.b),q,new A.aPp(k,n),k.aw,l))}} +A.aPp.prototype={ +$2(a,b){var s,r +if(this.b){s=a.gcR(a) +r=$.as().bn() +r.sa5(0,this.a.f7) +s.Ag(r)}this.a.ol(a,b)}, +$S:15} +A.a_P.prototype={ +K(){return"DecorationPosition."+this.b}} +A.a7b.prototype={ +sba(a){var s,r=this +if(a.l(0,r.a0))return +s=r.C +if(s!=null)s.m() +r.C=null +r.a0=a +r.aU()}, +scQ(a,b){if(b===this.aw)return +this.aw=b +this.aU()}, +swG(a){if(a.l(0,this.cu))return +this.cu=a +this.aU()}, +ap(a){var s=this,r=s.C +if(r!=null)r.m() +s.C=null +s.u5(0) +s.aU()}, +l8(a){var s=this +return s.a0.Vg(s.gq(s),a,s.cu.d)}, +aD(a,b){var s,r,q=this +if(q.C==null)q.C=q.a0.zP(q.geE()) +s=q.cu.TM(q.gq(q)) +if(q.aw===B.da){r=q.C +r.toString +r.kk(a.gcR(a),b,s) +if(q.a0.gLP())a.Yg()}q.ol(a,b) +if(q.aw===B.rE){r=q.C +r.toString +r.kk(a.gcR(a),b,s) +if(q.a0.gLP())a.Yg()}}} +A.a7C.prototype={ +sBe(a,b){return}, +sjy(a){var s=this +if(J.i(s.a0,a))return +s.a0=a +s.aU() +s.bX()}, +scF(a){var s=this +if(s.aw==a)return +s.aw=a +s.aU() +s.bX()}, +gqs(){return!1}, +sda(a,b){var s,r=this +if(J.i(r.fG,b))return +s=new A.bS(new Float64Array(16)) +s.cd(b) +r.fG=s +r.aU() +r.bX()}, +sv2(a){return}, +gPV(){var s,r,q=this,p=q.a0,o=p==null?null:p.L(q.aw) +if(o==null)return q.fG +s=new A.bS(new Float64Array(16)) +s.fQ() +r=o.K8(q.gq(q)) +s.bj(0,r.a,r.b) +p=q.fG +p.toString +s.f_(0,p) +s.bj(0,-r.a,-r.b) +return s}, +dc(a,b){return this.dY(a,b)}, +dY(a,b){var s=this.cu?this.gPV():null +return a.T2(new A.aPC(this),b,s)}, +aD(a0,a1){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a=this +if(a.E$!=null){s=a.gPV() +s.toString +r=A.aIG(s) +if(r==null){q=s.a +p=q[0] +o=q[5] +n=q[1] +m=q[4] +l=p*o-n*m +k=q[6] +j=q[2] +i=p*k-j*m +h=q[7] +g=q[3] +f=p*h-g*m +e=n*k-j*o +d=n*h-g*o +c=j*h-g*k +k=q[8] +g=q[9] +h=q[10] +j=q[11] +b=-(g*c-h*d+j*e)*q[12]+(k*c-h*f+j*i)*q[13]-(k*d-g*f+j*l)*q[14]+(k*e-g*i+h*l)*q[15] +if(b===0||!isFinite(b)){a.ch.sb3(0,null) +return}q=a.cx +q===$&&A.b() +p=A.iw.prototype.giE.call(a) +o=a.ch +n=o.a +o.sb3(0,a0.G_(q,a1,s,p,n instanceof A.zg?n:null))}else{a.ol(a0,a1.T(0,r)) +a.ch.sb3(0,null)}}}, +eI(a,b){var s=this.gPV() +s.toString +b.f_(0,s)}} +A.aPC.prototype={ +$2(a,b){return this.a.Hq(a,b)}, +$S:16} +A.a7e.prototype={ +saOR(a){var s=this +if(s.C.l(0,a))return +s.C=a +s.aU() +s.bX()}, +dc(a,b){return this.dY(a,b)}, +dY(a,b){var s=this,r=s.a0?new A.l(s.C.a*s.gq(s).a,s.C.b*s.gq(s).b):null +return a.oz(new A.aOY(s),r,b)}, +aD(a,b){var s=this +if(s.E$!=null)s.ol(a,new A.l(b.a+s.C.a*s.gq(s).a,b.b+s.C.b*s.gq(s).b))}, +eI(a,b){var s=this +b.bj(0,s.C.a*s.gq(s).a,s.C.b*s.gq(s).b)}} +A.aOY.prototype={ +$2(a,b){return this.a.Hq(a,b)}, +$S:16} +A.a7n.prototype={ +Ee(a){return new A.V(A.S(1/0,a.a,a.b),A.S(1/0,a.c,a.d))}, +oQ(a,b){var s,r=this,q=null +if(t.pY.b(a)){s=r.ee +return s==null?q:s.$1(a)}if(t.n2.b(a))return q +if(t.oN.b(a)){s=r.dA +return s==null?q:s.$1(a)}if(t.XA.b(a))return q +if(t.Ko.b(a)){s=r.df +return s==null?q:s.$1(a)}if(t.w5.b(a)){s=r.e5 +return s==null?q:s.$1(a)}if(t.DB.b(a))return q +if(t.WQ.b(a))return q +if(t.ks.b(a)){s=r.pB +return s==null?q:s.$1(a)}}} +A.MV.prototype={ +dc(a,b){return this.ai0(a,b)&&!0}, +oQ(a,b){var s=this.dA +if(s!=null&&t.XA.b(a))return s.$1(a)}, +ga8s(a){return this.df}, +gXg(){return this.e5}, +aA(a){this.ys(a) +this.e5=!0}, +ap(a){this.e5=!1 +this.u5(0)}, +Ee(a){return new A.V(A.S(1/0,a.a,a.b),A.S(1/0,a.c,a.d))}, +$iow:1, +gW1(a){return this.fZ}, +gW2(a){return this.em}} +A.a7q.prototype={ +gib(){return!0}} +A.MQ.prototype={ +saah(a){if(a===this.C)return +this.C=a +this.bX()}, +sVh(a){return}, +dc(a,b){return!this.C&&this.qb(a,b)}, +jl(a){this.yp(a)}, +hv(a){var s +this.jq(a) +if(this.C)s=!0 +else s=!1 +a.b=s}} +A.MW.prototype={ +sMa(a){var s=this +if(a===s.C)return +s.C=a +s.a6() +s.Fy()}, +c3(a){if(this.C)return 0 +return this.Oy(a)}, +bV(a){if(this.C)return 0 +return this.Ow(a)}, +bW(a){if(this.C)return 0 +return this.Ox(a)}, +c1(a){if(this.C)return 0 +return this.Ov(a)}, +hL(a){if(this.C)return null +return this.ajE(a)}, +gog(){return this.C}, +ds(a){if(this.C)return new A.V(A.S(0,a.a,a.b),A.S(0,a.c,a.d)) +return this.ai_(a)}, +xB(){this.Zd()}, +cj(){var s,r=this +if(r.C){s=r.E$ +if(s!=null)s.ie(t.k.a(A.H.prototype.ga4.call(r)))}else r.yq()}, +dc(a,b){return!this.C&&this.qb(a,b)}, +xz(a){return!this.C}, +aD(a,b){if(this.C)return +this.ol(a,b)}, +jl(a){if(this.C)return +this.yp(a)}} +A.MH.prototype={ +sa6u(a){if(this.C===a)return +this.C=a +this.bX()}, +sVh(a){return}, +dc(a,b){var s=this +return s.C?s.gq(s).n(0,b):s.qb(a,b)}, +jl(a){this.yp(a)}, +hv(a){var s +this.jq(a) +if(this.C)s=!0 +else s=!1 +a.b=s}} +A.qK.prototype={ +saP7(a){if(A.W4(a,this.ee))return +this.ee=a +this.bX()}, +stz(a){var s,r=this +if(J.i(r.fZ,a))return +s=r.fZ +r.fZ=a +if(a!=null!==(s!=null))r.bX()}, +svk(a){var s,r=this +if(J.i(r.dA,a))return +s=r.dA +r.dA=a +if(a!=null!==(s!=null))r.bX()}, +sabw(a){var s,r=this +if(J.i(r.em,a))return +s=r.em +r.em=a +if(a!=null!==(s!=null))r.bX()}, +sabF(a){var s,r=this +if(J.i(r.df,a))return +s=r.df +r.df=a +if(a!=null!==(s!=null))r.bX()}, +hv(a){var s,r=this +r.jq(a) +if(r.fZ!=null){s=r.ee +s=s==null||s.n(0,B.ey)}else s=!1 +if(s)a.stz(r.fZ) +if(r.dA!=null){s=r.ee +s=s==null||s.n(0,B.Jt)}else s=!1 +if(s)a.svk(r.dA) +if(r.em!=null){s=r.ee +if(s==null||s.n(0,B.i5))a.sMp(r.gayq()) +s=r.ee +if(s==null||s.n(0,B.i4))a.sMo(r.gayo())}if(r.df!=null){s=r.ee +if(s==null||s.n(0,B.i2))a.sMq(r.gays()) +s=r.ee +if(s==null||s.n(0,B.i3))a.sMn(r.gaym())}}, +ayp(){var s,r,q,p=this +if(p.em!=null){s=p.gq(p).a*-0.8 +r=p.em +r.toString +q=p.gq(p).mg(B.i) +q=A.cD(p.cs(0,null),q) +r.$1(new A.oc(null,new A.l(s,0),s,q))}}, +ayr(){var s,r,q,p=this +if(p.em!=null){s=p.gq(p).a*0.8 +r=p.em +r.toString +q=p.gq(p).mg(B.i) +q=A.cD(p.cs(0,null),q) +r.$1(new A.oc(null,new A.l(s,0),s,q))}}, +ayt(){var s,r,q,p=this +if(p.df!=null){s=p.gq(p).b*-0.8 +r=p.df +r.toString +q=p.gq(p).mg(B.i) +q=A.cD(p.cs(0,null),q) +r.$1(new A.oc(null,new A.l(0,s),s,q))}}, +ayn(){var s,r,q,p=this +if(p.df!=null){s=p.gq(p).b*0.8 +r=p.df +r.toString +q=p.gq(p).mg(B.i) +q=A.cD(p.cs(0,null),q) +r.$1(new A.oc(null,new A.l(0,s),s,q))}}} +A.N_.prototype={ +sabW(a){var s=this +if(s.C===a)return +s.C=a +s.a5x(a) +s.bX()}, +saFH(a){if(this.a0===a)return +this.a0=a +this.bX()}, +saHE(a){if(this.aw===a)return +this.aw=a +this.bX()}, +saHB(a){if(this.cu===a)return +this.cu=a +this.bX()}, +saEE(a){return}, +a5x(a){var s=this,r=a.fy +r=a.fx +r=r==null?null:new A.dI(r,B.aP) +s.fa=r +r=a.id +r=a.go +r=r==null?null:new A.dI(r,B.aP) +s.hQ=r +s.fH=null +s.j7=null +r=a.p1 +r=a.ok +r=r==null?null:new A.dI(r,B.aP) +s.iA=r}, +scF(a){if(this.hc==a)return +this.hc=a +this.bX()}, +jl(a){if(this.cu)return +this.yp(a)}, +hv(a){var s,r,q=this +q.jq(a) +a.a=q.a0 +a.c=q.aw +a.b=!1 +s=q.C.a +if(s!=null){a.ce(B.kY,!0) +a.ce(B.kW,s)}s=q.C.b +if(s!=null){a.ce(B.kX,!0) +a.ce(B.JE,s)}s=q.C.c +if(s!=null){a.ce(B.kX,!0) +a.ce(B.JG,s)}s=q.C.d +if(s!=null){a.ce(B.oC,!0) +a.ce(B.oA,s)}s=q.C.e +if(s!=null)a.ce(B.JI,s) +s=q.C.f +if(s!=null)a.ce(B.JM,s) +s=q.C.y +if(s!=null)a.ce(B.JL,s) +s=q.C.w +if(s!=null)a.ce(B.JJ,s) +s=q.C.as +if(s!=null)a.ce(B.JC,s) +s=q.C.at +if(s!=null)a.ce(B.oB,s) +s=q.C.ax +if(s!=null)a.ce(B.JD,s) +s=q.C.db +if(s!=null)a.ce(B.Jz,s) +s=q.fa +if(s!=null){a.RG=s +a.e=!0}s=q.hQ +if(s!=null){a.rx=s +a.e=!0}s=q.fH +if(s!=null){a.ry=s +a.e=!0}s=q.j7 +if(s!=null){a.to=s +a.e=!0}s=q.iA +if(s!=null){a.x1=s +a.e=!0}s=q.C +r=s.p2 +if(r!=null){a.x2=r +a.e=!0}s=s.p3 +if(s!=null)r=s.a!=null||!1 +else r=!1 +if(r)a.saJE(s) +s=q.C.cx +if(s!=null)a.ce(B.JB,s) +s=q.C.cy +if(s!=null)a.ce(B.JH,s) +s=q.C.dx +if(s!=null)a.ce(B.JF,s) +s=q.C.dy +if(s!=null)a.sM1(s) +s=q.C.fr +if(s!=null)a.sKG(s) +s=q.hc +if(s!=null){a.c5=s +a.e=!0}s=q.C +r=s.R8 +if(r!=null){a.k2=r +a.e=!0}s=s.RG +if(s!=null)a.T1(s) +if(q.C.rx!=null)a.stz(q.gayv()) +if(q.C.ry!=null)a.svk(q.gayh()) +if(q.C.ar!=null)a.sMf(q.gaye()) +if(q.C.c5!=null)a.sMb(0,q.gay8()) +if(q.C.cO!=null)a.sMc(0,q.gaya()) +if(q.C.aV!=null)a.sMl(0,q.gayj()) +if(q.C.Y!=null)a.sMe(q.gayc())}, +ayw(){var s=this.C.rx +if(s!=null)s.$0()}, +ayi(){var s=this.C.ry +if(s!=null)s.$0()}, +ayf(){var s=this.C.ar +if(s!=null)s.$0()}, +ay9(){var s=this.C.c5 +if(s!=null)s.$0()}, +ayb(){var s=this.C.cO +if(s!=null)s.$0()}, +ayk(){var s=this.C.aV +if(s!=null)s.$0()}, +ayd(){var s=this.C.Y +if(s!=null)s.$0()}} +A.a77.prototype={ +saEF(a){return}, +hv(a){this.jq(a) +a.d=!0}} +A.a7j.prototype={ +hv(a){this.jq(a) +a.e=a.p4=a.a=!0}} +A.a7c.prototype={ +saHC(a){if(a===this.C)return +this.C=a +this.bX()}, +jl(a){if(this.C)return +this.yp(a)}} +A.a7f.prototype={ +sdM(a,b){if(b===this.C)return +this.C=b +this.bX()}, +hv(a){this.jq(a) +a.k3=this.C +a.e=!0}} +A.a7h.prototype={ +sxn(a){var s=this,r=s.C +if(r===a)return +r.d=null +s.C=a +r=s.a0 +if(r!=null)a.d=r +s.aU()}, +gqs(){return!0}, +cj(){var s=this +s.yq() +s.a0=s.gq(s) +s.C.d=s.gq(s)}, +aD(a,b){var s=this.ch,r=s.a,q=this.C +if(r==null)s.sb3(0,A.bj1(q,b)) +else{t.rf.a(r) +r.sxn(q) +r.sc6(0,b)}s=s.a +s.toString +a.r6(s,A.iw.prototype.giE.call(this),B.i)}} +A.a7d.prototype={ +sxn(a){if(this.C===a)return +this.C=a +this.aU()}, +safU(a){if(this.a0===a)return +this.a0=a +this.aU()}, +sc6(a,b){if(this.aw.l(0,b))return +this.aw=b +this.aU()}, +saKP(a){if(this.cu.l(0,a))return +this.cu=a +this.aU()}, +saI8(a){if(this.fG.l(0,a))return +this.fG=a +this.aU()}, +ap(a){this.ch.sb3(0,null) +this.u5(0)}, +gqs(){return!0}, +Xs(){var s=t.RC.a(A.H.prototype.gb3.call(this,this)) +s=s==null?null:s.Xx() +if(s==null){s=new A.bS(new Float64Array(16)) +s.fQ()}return s}, +dc(a,b){if(this.C.a==null&&!this.a0)return!1 +return this.dY(a,b)}, +dY(a,b){return a.T2(new A.aOX(this),b,this.Xs())}, +aD(a,b){var s,r=this,q=r.C.d,p=q==null?r.aw:r.cu.K8(q).a2(0,r.fG.K8(r.gq(r))).T(0,r.aw),o=t.RC +if(o.a(A.H.prototype.gb3.call(r,r))==null)r.ch.sb3(0,new A.JY(r.C,r.a0,b,p,A.F(t.S,t.Q),A.aB(t.kd))) +else{s=o.a(A.H.prototype.gb3.call(r,r)) +if(s!=null){s.k3=r.C +s.k4=r.a0 +s.p1=p +s.ok=b}}o=o.a(A.H.prototype.gb3.call(r,r)) +o.toString +a.Bl(o,A.iw.prototype.giE.call(r),B.i,B.ac7)}, +eI(a,b){b.f_(0,this.Xs())}} +A.aOX.prototype={ +$2(a,b){return this.a.Hq(a,b)}, +$S:16} +A.MK.prototype={ +sk(a,b){if(this.C.l(0,b))return +this.C=b +this.aU()}, +sag_(a){return}, +aD(a,b){var s=this,r=s.C,q=s.gq(s) +a.r6(new A.HK(r,q,b,A.F(t.S,t.Q),A.aB(t.kd),s.$ti.h("HK<1>")),A.iw.prototype.giE.call(s),b)}, +gqs(){return!0}} +A.ak9.prototype={ +aA(a){var s=this +s.ys(a) +s.uW$.P(0,s.gJG()) +s.SA()}, +ap(a){this.uW$.J(0,this.gJG()) +this.u5(0)}, +aD(a,b){if(this.Au$===0)return +this.ol(a,b)}} +A.SR.prototype={ +aA(a){var s +this.eR(a) +s=this.E$ +if(s!=null)s.aA(a)}, +ap(a){var s +this.eS(0) +s=this.E$ +if(s!=null)s.ap(0)}} +A.SS.prototype={ +hL(a){var s=this.E$ +s=s==null?null:s.q6(a) +return s==null?this.Ho(a):s}} +A.uC.prototype={ +K(){return"SelectionResult."+this.b}} +A.hF.prototype={$iau:1} +A.a8e.prototype={ +sxG(a){var s=this,r=s.Aw$ +if(a==r)return +if(a==null)s.J(0,s.ga48()) +else if(r==null)s.P(0,s.ga48()) +s.a47() +s.Aw$=a +s.a49()}, +a49(){var s=this +if(s.Aw$==null){s.x7$=!1 +return}if(s.x7$&&!s.gk(s).e){s.Aw$.F(0,s) +s.x7$=!1}else if(!s.x7$&&s.gk(s).e){s.Aw$.G(0,s) +s.x7$=!0}}, +a47(){var s=this +if(s.x7$){s.Aw$.F(0,s) +s.x7$=!1}}} +A.Nu.prototype={ +K(){return"SelectionEventType."+this.b}} +A.EL.prototype={ +K(){return"TextGranularity."+this.b}} +A.aRM.prototype={} +A.IC.prototype={} +A.yI.prototype={} +A.DZ.prototype={ +K(){return"SelectionExtendDirection."+this.b}} +A.Nv.prototype={ +K(){return"SelectionStatus."+this.b}} +A.uB.prototype={ +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.a1(b)!==A.o(s))return!1 +return b instanceof A.uB&&J.i(b.a,s.a)&&J.i(b.b,s.b)&&b.d===s.d&&b.c===s.c&&b.e===s.e}, +gv(a){var s=this +return A.X(s.a,s.b,s.d,s.c,s.e,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}} +A.yJ.prototype={ +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.a1(b)!==A.o(s))return!1 +return b instanceof A.yJ&&b.a.l(0,s.a)&&b.b===s.b&&b.c===s.c}, +gv(a){return A.X(this.a,this.b,this.c,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}} +A.OJ.prototype={ +K(){return"TextSelectionHandleType."+this.b}} +A.ys.prototype={ +c3(a){var s=this.E$ +s=s==null?null:s.aB(B.ad,a,s.gbZ()) +return s==null?0:s}, +bV(a){var s=this.E$ +s=s==null?null:s.aB(B.ak,a,s.gc2()) +return s==null?0:s}, +bW(a){var s=this.E$ +s=s==null?null:s.aB(B.aA,a,s.gcD()) +return s==null?0:s}, +c1(a){var s=this.E$ +s=s==null?null:s.aB(B.br,a,s.gd4()) +return s==null?0:s}, +hL(a){var s,r,q=this.E$ +if(q!=null){s=q.q6(a) +r=q.b +r.toString +t.q.a(r) +if(s!=null)s+=r.a.b}else s=this.Ho(a) +return s}, +aD(a,b){var s,r=this.E$ +if(r!=null){s=r.b +s.toString +a.eg(r,t.q.a(s).a.T(0,b))}}, +dY(a,b){var s,r=this.E$ +if(r!=null){s=r.b +s.toString +t.q.a(s) +return a.oz(new A.aPq(b,s,r),s.a,b)}return!1}} +A.aPq.prototype={ +$2(a,b){return this.c.dc(a,b)}, +$S:16} +A.MX.prototype={ +uo(){var s=this +if(s.C!=null)return +s.C=s.a0.L(s.aw)}, +sdE(a,b){var s=this +if(s.a0.l(0,b))return +s.a0=b +s.C=null +s.a6()}, +scF(a){var s=this +if(s.aw==a)return +s.aw=a +s.C=null +s.a6()}, +c3(a){var s,r,q,p +this.uo() +s=this.C +r=s.a+s.c +q=s.b +s=s.d +p=this.E$ +if(p!=null)return p.aB(B.ad,Math.max(0,a-(q+s)),p.gbZ())+r +return r}, +bV(a){var s,r,q,p +this.uo() +s=this.C +r=s.a+s.c +q=s.b +s=s.d +p=this.E$ +if(p!=null)return p.aB(B.ak,Math.max(0,a-(q+s)),p.gc2())+r +return r}, +bW(a){var s,r,q,p +this.uo() +s=this.C +r=s.a +q=s.c +p=s.b+s.d +s=this.E$ +if(s!=null)return s.aB(B.aA,Math.max(0,a-(r+q)),s.gcD())+p +return p}, +c1(a){var s,r,q,p +this.uo() +s=this.C +r=s.a +q=s.c +p=s.b+s.d +s=this.E$ +if(s!=null)return s.aB(B.br,Math.max(0,a-(r+q)),s.gd4())+p +return p}, +ds(a){var s,r,q,p=this +p.uo() +if(p.E$==null){s=p.C +return a.bI(new A.V(s.a+s.c,s.b+s.d))}s=p.C +s.toString +r=a.KO(s) +q=p.E$.lC(r) +s=p.C +return a.bI(new A.V(s.a+q.a+s.c,s.b+q.b+s.d))}, +cj(){var s,r,q,p,o,n,m=this,l=t.k.a(A.H.prototype.ga4.call(m)) +m.uo() +if(m.E$==null){s=m.C +m.id=l.bI(new A.V(s.a+s.c,s.b+s.d)) +return}s=m.C +s.toString +r=l.KO(s) +m.E$.cX(r,!0) +s=m.E$.b +s.toString +t.q.a(s) +q=m.C +s.sc6(0,new A.l(q.a,q.b)) +q=m.C.a +s=m.E$ +s=s.gq(s) +p=m.C +o=p.c +p=p.b +n=m.E$ +m.id=l.bI(new A.V(q+s.a+o,p+n.gq(n).b+m.C.d))}} +A.a74.prototype={ +uo(){var s=this +if(s.C!=null)return +s.C=s.a0.L(s.aw)}, +sjy(a){var s=this +if(s.a0.l(0,a))return +s.a0=a +s.C=null +s.a6()}, +scF(a){var s=this +if(s.aw==a)return +s.aw=a +s.C=null +s.a6()}, +K6(){var s,r,q,p,o=this +o.uo() +s=o.E$.b +s.toString +t.q.a(s) +r=o.C +r.toString +q=o.gq(o) +p=o.E$ +s.sc6(0,r.wx(t.EP.a(q.a2(0,p.gq(p)))))}} +A.a7o.prototype={ +saPh(a){if(this.dA==a)return +this.dA=a +this.a6()}, +saJv(a){if(this.em==a)return +this.em=a +this.a6()}, +ds(a){var s,r,q=this,p=q.dA!=null||a.b===1/0,o=q.em!=null||a.d===1/0,n=q.E$ +if(n!=null){s=n.lC(new A.aL(0,a.b,0,a.d)) +if(p){n=q.dA +if(n==null)n=1 +n=s.a*n}else n=1/0 +if(o){r=q.em +if(r==null)r=1 +r=s.b*r}else r=1/0 +return a.bI(new A.V(n,r))}n=p?0:1/0 +return a.bI(new A.V(n,o?0:1/0))}, +cj(){var s,r,q=this,p=t.k.a(A.H.prototype.ga4.call(q)),o=q.dA!=null||p.b===1/0,n=q.em!=null||p.d===1/0,m=q.E$ +if(m!=null){m.cX(new A.aL(0,p.b,0,p.d),!0) +if(o){m=q.E$ +m=m.gq(m) +s=q.dA +if(s==null)s=1 +s=m.a*s +m=s}else m=1/0 +if(n){s=q.E$ +s=s.gq(s) +r=q.em +if(r==null)r=1 +r=s.b*r +s=r}else s=1/0 +q.id=p.bI(new A.V(m,s)) +q.K6()}else{m=o?0:1/0 +q.id=p.bI(new A.V(m,n?0:1/0))}}} +A.aT7.prototype={ +vE(a){return new A.V(A.S(1/0,a.a,a.b),A.S(1/0,a.c,a.d))}, +vz(a){return a}, +vC(a,b){return B.i}} +A.MO.prototype={ +sdg(a){var s=this,r=s.C +if(r===a)return +if(A.o(a)!==A.o(r)||a.q9(r))s.a6() +s.C=a +s.y!=null}, +aA(a){this.Zs(a)}, +ap(a){this.Zt(0)}, +c3(a){var s=A.jr(a,1/0),r=s.bI(this.C.vE(s)).a +if(isFinite(r))return r +return 0}, +bV(a){var s=A.jr(a,1/0),r=s.bI(this.C.vE(s)).a +if(isFinite(r))return r +return 0}, +bW(a){var s=A.jr(1/0,a),r=s.bI(this.C.vE(s)).b +if(isFinite(r))return r +return 0}, +c1(a){var s=A.jr(1/0,a),r=s.bI(this.C.vE(s)).b +if(isFinite(r))return r +return 0}, +ds(a){return a.bI(this.C.vE(a))}, +cj(){var s,r,q,p,o,n=this,m=t.k,l=m.a(A.H.prototype.ga4.call(n)) +n.id=l.bI(n.C.vE(l)) +if(n.E$!=null){s=n.C.vz(m.a(A.H.prototype.ga4.call(n))) +m=n.E$ +m.toString +l=s.a +r=s.b +q=l>=r +m.cX(s,!(q&&s.c>=s.d)) +m=n.E$.b +m.toString +t.q.a(m) +p=n.C +o=n.gq(n) +if(q&&s.c>=s.d)l=new A.V(A.S(0,l,r),A.S(0,s.c,s.d)) +else{l=n.E$ +l=l.gq(l)}m.sc6(0,p.vC(o,l))}}} +A.SU.prototype={ +aA(a){var s +this.eR(a) +s=this.E$ +if(s!=null)s.aA(a)}, +ap(a){var s +this.eS(0) +s=this.E$ +if(s!=null)s.ap(0)}} +A.a1A.prototype={ +K(){return"GrowthDirection."+this.b}} +A.uK.prototype={ +gaaT(){return!1}, +E4(a,b,c){if(a==null)a=this.w +switch(A.bT(this.a).a){case 0:return new A.aL(c,b,a,a) +case 1:return new A.aL(a,a,c,b)}}, +a6U(a,b){return this.E4(null,a,b)}, +a6T(){return this.E4(null,1/0,0)}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(!(b instanceof A.uK))return!1 +return b.a===s.a&&b.b===s.b&&b.d===s.d&&b.f===s.f&&b.r===s.r&&b.w===s.w&&b.x===s.x&&b.y===s.y&&b.Q===s.Q&&b.z===s.z}, +gv(a){var s=this +return A.X(s.a,s.b,s.d,s.f,s.r,s.w,s.x,s.y,s.Q,s.z,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){var s=this,r=A.a([s.a.j(0),s.b.j(0),s.c.j(0),"scrollOffset: "+B.e.az(s.d,1),"remainingPaintExtent: "+B.e.az(s.r,1)],t.s),q=s.f +if(q!==0)r.push("overlap: "+B.e.az(q,1)) +r.push("crossAxisExtent: "+B.e.az(s.w,1)) +r.push("crossAxisDirection: "+s.x.j(0)) +r.push("viewportMainAxisExtent: "+B.e.az(s.y,1)) +r.push("remainingCacheExtent: "+B.e.az(s.Q,1)) +r.push("cacheOrigin: "+B.e.az(s.z,1)) +return"SliverConstraints("+B.b.cq(r,", ")+")"}} +A.a8Q.prototype={ +f2(){return"SliverGeometry"}} +A.Eg.prototype={ +aEg(a,b,c,d,e,f){var s +this.c.push(new A.Gm(new A.l(-f.a,-f.b))) +s=c.$3$crossAxisPosition$mainAxisPosition(this,b-a,e-d) +this.MH() +return s}} +A.a8R.prototype={ +j(a){return A.o(this.a).j(0)+"@(mainAxis: "+A.h(this.c)+", crossAxis: "+A.h(this.d)+")"}} +A.qS.prototype={ +j(a){var s=this.a +return"layoutOffset="+(s==null?"None":B.e.az(s,1))}} +A.oR.prototype={} +A.oS.prototype={ +j(a){return"paintOffset="+this.a.j(0)}} +A.jO.prototype={} +A.d7.prototype={ +ga4(){return t.r.a(A.H.prototype.ga4.call(this))}, +gru(){return this.gr0()}, +gr0(){var s=this,r=t.r +switch(A.bT(r.a(A.H.prototype.ga4.call(s)).a).a){case 0:return new A.I(0,0,0+s.fx.c,0+r.a(A.H.prototype.ga4.call(s)).w) +case 1:return new A.I(0,0,0+r.a(A.H.prototype.ga4.call(s)).w,0+s.fx.c)}}, +xB(){}, +aaa(a,b,c){var s=this +if(c>=0&&c=0&&bs.r||s.d>0,p,l,q,0,p,0,q,l,l) +m.fx=r +n=m.E$ +n.toString +m.Y8(n,s,r)}} +A.akz.prototype={ +aA(a){var s +this.eR(a) +s=this.E$ +if(s!=null)s.aA(a)}, +ap(a){var s +this.eS(0) +s=this.E$ +if(s!=null)s.ap(0)}} +A.akA.prototype={} +A.alM.prototype={} +A.alN.prototype={ +ap(a){this.Cu(0)}} +A.alQ.prototype={ +ap(a){this.Cu(0)}} +A.a7t.prototype={ +gLS(){return t.r.a(A.H.prototype.ga4.call(this)).y*this.d0}, +sGA(a){if(this.d0===a)return +this.d0=a +this.a6()}} +A.a7s.prototype={ +cj(){var s,r,q,p=this,o=null,n=t.r.a(A.H.prototype.ga4.call(p)),m=n.y-n.e,l=p.E$ +if(l!=null){switch(A.bT(n.a).a){case 0:s=l.aB(B.ak,n.w,l.gc2()) +break +case 1:s=l.aB(B.br,n.w,l.gd4()) +break +default:s=o}m=Math.max(m,A.kM(s)) +l=p.E$ +l.toString +l.ie(n.a6U(m,m))}r=p.kV(n,0,m) +l=A.ky(o,m>n.r||n.d>0,o,o,r,0,r,0,m,o,o) +p.fx=l +q=p.E$ +if(q!=null)p.Y8(q,n,l)}} +A.a7u.prototype={ +aeE(a,b){var s,r +if(b>0){s=a/b +r=B.e.bi(s) +if(Math.abs(s*b-r*b)<1e-10)return r +return B.e.eA(s)}return 0}, +Xz(a,b){var s,r +if(b>0){s=a/b-1 +r=B.e.bi(s) +if(Math.abs(s*b-r*b)<1e-10)return Math.max(0,r) +return Math.max(0,B.e.eU(s))}return 0}, +anv(a){var s,r=this.a3$,q=A.k(this).h("aq.1"),p=t.V,o=0 +while(!0){if(r!=null){s=r.b +s.toString +s=p.a(s).b +s.toString +s=sa}else s=!1 +if(!s)break;++o +s=r.b +s.toString +r=q.a(s).d0$}return o}, +cj(){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=this,a6=null,a7=t.r.a(A.H.prototype.ga4.call(a5)),a8=a5.aV +a8.R8=!1 +s=a5.gLS() +r=a7.d +q=r+a7.z +p=q+a7.Q +o=a7.a6U(s,s) +n=a5.aeE(q,s) +m=isFinite(p)?a5.Xz(p,s):a6 +if(a5.a3$!=null){l=a5.anv(n) +a5.wF(l,m!=null?a5.anw(m):0)}else a5.wF(0,0) +if(a5.a3$==null)if(!a5.SY(n,s*n)){k=n<=0?0:a8.gEb()*s +a5.fx=A.ky(a6,!1,a6,a6,k,0,0,0,k,a6,a6) +a8.wO() +return}j=a5.a3$ +j.toString +j=j.b +j.toString +i=t.V +j=i.a(j).b +j.toString +h=j-1 +g=a6 +for(;h>=n;--h){f=a5.aav(o) +if(f==null){a5.fx=A.ky(a6,!1,a6,a6,0,0,0,0,0,h*s,a6) +return}j=f.b +j.toString +i.a(j).a=s*h +if(g==null)g=f}if(g==null){a5.a3$.ie(o) +g=a5.a3$ +j=g.b +j.toString +i.a(j).a=s*n}j=g.b +j.toString +j=i.a(j).b +j.toString +h=j+1 +j=A.k(a5).h("aq.1") +e=m!=null +while(!0){if(!(!e||h<=m)){d=1/0 +break}c=g.b +c.toString +f=j.a(c).am$ +if(f!=null){c=f.b +c.toString +c=i.a(c).b +c.toString +c=c!==h}else c=!0 +if(c){f=a5.aat(o,g) +if(f==null){d=h*s +break}}else f.ie(o) +c=f.b +c.toString +i.a(c) +b=c.b +b.toString +c.a=s*b;++h +g=f}j=a5.dk$ +j.toString +j=j.b +j.toString +j=i.a(j).b +j.toString +a=s*n +a0=s*(j+1) +d=Math.min(d,a8.Uz(a7,n,j,a,a0)) +a1=a5.kV(a7,a,a0) +a2=a5.uB(a7,a,a0) +a3=r+a7.r +a4=isFinite(a3)?a5.Xz(a3,s):a6 +a5.fx=A.ky(a2,a4!=null&&j>=a4||r>0,a6,a6,d,0,a1,0,d,a6,a6) +if(d===a0)a8.R8=!0 +a8.wO()}} +A.a7v.prototype={ +gLS(){return this.d0}, +sLS(a){if(this.d0===a)return +this.d0=a +this.a6()}} +A.aTD.prototype={ +aek(a){var s=this.c +return a.E4(this.d,s,s)}, +j(a){var s=this +return"SliverGridGeometry("+B.b.cq(A.a(["scrollOffset: "+A.h(s.a),"crossAxisOffset: "+A.h(s.b),"mainAxisExtent: "+A.h(s.c),"crossAxisExtent: "+A.h(s.d)],t.s),", ")+")"}} +A.aTE.prototype={} +A.aTF.prototype={ +aeD(a){var s=this.b +if(s>0)return Math.max(0,this.a*B.e.eU(a/s)-1) +return 0}, +ara(a){var s,r,q=this +if(q.f){s=q.c +r=q.e +return q.a*s-a-r-(s-r)}return a}, +Nz(a){var s=this,r=s.a,q=B.f.aH(a,r) +return new A.aTD(B.f.js(a,r)*s.b,s.ara(q*s.c),s.d,s.e)}, +a7J(a){var s +if(a===0)return 0 +s=this.b +return s*(B.f.js(a-1,this.a)+1)-(s-this.d)}} +A.aTB.prototype={} +A.aTC.prototype={ +Xy(a){var s=this,r=a.w,q=s.c,p=Math.max(1,B.e.eU(r/(s.a+q))),o=Math.max(0,r-q*(p-1))/p,n=o/s.d +return new A.aTF(p,n+s.b,o+q,n,o,A.aq1(a.x))}} +A.Ef.prototype={ +j(a){return"crossAxisOffset="+A.h(this.w)+"; "+this.aiD(0)}} +A.a7w.prototype={ +fR(a){if(!(a.b instanceof A.Ef))a.b=new A.Ef(!1,null,null)}, +saf1(a){var s,r=this +if(r.al===a)return +if(A.o(a)===A.o(r.al)){s=r.al +s=s.a!==a.a||s.b!==a.b||s.c!==a.c||s.d!==a.d||!1}else s=!0 +if(s)r.a6() +r.al=a}, +zz(a){var s=a.b +s.toString +s=t.h5.a(s).w +s.toString +return s}, +cj(){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=this,a8=null,a9=t.r.a(A.H.prototype.ga4.call(a7)),b0=a7.aV +b0.R8=!1 +s=a9.d +r=s+a9.z +q=r+a9.Q +p=a7.al.Xy(a9) +o=p.b +n=o>1e-10?p.a*B.e.js(r,o):0 +m=isFinite(q)?p.aeD(q):a8 +o=a7.a3$ +if(o!=null){o=o.b +o.toString +l=t.V +o=l.a(o).b +o.toString +k=a7.dk$ +k.toString +k=k.b +k.toString +k=l.a(k).b +k.toString +j=B.f.hs(n-o,0,a7.d_$) +a7.wF(j,m==null?0:B.f.hs(k-m,0,a7.d_$))}else a7.wF(0,0) +i=p.Nz(n) +if(a7.a3$==null)if(!a7.SY(n,i.a)){h=p.a7J(b0.gEb()) +a7.fx=A.ky(a8,!1,a8,a8,h,0,0,0,h,a8,a8) +b0.wO() +return}g=i.a +f=g+i.c +o=a7.a3$ +o.toString +o=o.b +o.toString +l=t.V +o=l.a(o).b +o.toString +e=o-1 +o=t.h5 +d=a8 +for(;e>=n;--e){c=p.Nz(e) +k=c.c +b=a7.aav(a9.E4(c.d,k,k)) +a=b.b +a.toString +o.a(a) +a0=c.a +a.a=a0 +a.w=c.b +if(d==null)d=b +f=Math.max(f,a0+k)}if(d==null){k=a7.a3$ +k.toString +k.ie(i.aek(a9)) +d=a7.a3$ +k=d.b +k.toString +o.a(k) +k.a=g +k.w=i.b}k=d.b +k.toString +k=l.a(k).b +k.toString +e=k+1 +k=A.k(a7).h("aq.1") +a=m!=null +while(!0){if(!(!a||e<=m))break +c=p.Nz(e) +a0=c.c +a1=a9.E4(c.d,a0,a0) +a2=d.b +a2.toString +b=k.a(a2).am$ +if(b!=null){a2=b.b +a2.toString +a2=l.a(a2).b +a2.toString +a2=a2!==e}else a2=!0 +if(a2){b=a7.aat(a1,d) +if(b==null)break}else b.ie(a1) +a2=b.b +a2.toString +o.a(a2) +a3=c.a +a2.a=a3 +a2.w=c.b +f=Math.max(f,a3+a0);++e +d=b}o=a7.dk$ +o.toString +o=o.b +o.toString +o=l.a(o).b +o.toString +a4=b0.Uz(a9,n,o,g,f) +a5=a7.kV(a9,Math.min(s,g),f) +a6=a7.uB(a9,g,f) +a7.fx=A.ky(a6,a4>a5||s>0||a9.f!==0,a8,a8,a4,0,a5,0,a4,a8,a8) +if(a4===f)b0.R8=!0 +b0.wO()}} +A.a7y.prototype={ +cj(){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a3=this,a4=null,a5={},a6=t.r.a(A.H.prototype.ga4.call(a3)),a7=a3.aV +a7.R8=!1 +s=a6.d +r=s+a6.z +q=r+a6.Q +p=a6.a6T() +if(a3.a3$==null)if(!a3.a6y()){a3.fx=B.oP +a7.wO() +return}a5.a=null +o=a3.a3$ +n=o.b +n.toString +m=t.V +if(m.a(n).a==null){n=A.k(a3).h("aq.1") +l=0 +while(!0){if(o!=null){k=o.b +k.toString +k=m.a(k).a==null}else k=!1 +if(!k)break +k=o.b +k.toString +o=n.a(k).am$;++l}a3.wF(l,0) +if(a3.a3$==null)if(!a3.a6y()){a3.fx=B.oP +a7.wO() +return}}o=a3.a3$ +n=o.b +n.toString +n=m.a(n).a +n.toString +j=n +i=a4 +for(;j>r;j=h,i=o){o=a3.Vl(p,!0) +if(o==null){n=a3.a3$ +k=n.b +k.toString +m.a(k).a=0 +if(r===0){n.cX(p,!0) +o=a3.a3$ +if(a5.a==null)a5.a=o +i=o +break}else{a3.fx=A.ky(a4,!1,a4,a4,0,0,0,0,0,-r,a4) +return}}n=a3.a3$ +n.toString +h=j-a3.xx(n) +if(h<-1e-10){a3.fx=A.ky(a4,!1,a4,a4,0,0,0,0,0,-h,a4) +a7=a3.a3$.b +a7.toString +m.a(a7).a=0 +return}n=o.b +n.toString +m.a(n).a=h +if(a5.a==null)a5.a=o}if(r<1e-10)while(!0){n=a3.a3$ +n.toString +n=n.b +n.toString +m.a(n) +k=n.b +k.toString +if(!(k>0))break +n=n.a +n.toString +o=a3.Vl(p,!0) +k=a3.a3$ +k.toString +h=n-a3.xx(k) +k=a3.a3$.b +k.toString +m.a(k).a=0 +if(h<-1e-10){a3.fx=A.ky(a4,!1,a4,a4,0,0,0,0,0,-h,a4) +return}}if(i==null){o.cX(p,!0) +a5.a=o}a5.b=!0 +a5.c=o +n=o.b +n.toString +m.a(n) +k=n.b +k.toString +a5.d=k +n=n.a +n.toString +a5.e=n+a3.xx(o) +g=new A.aPs(a5,a3,p) +for(f=0;a5.es+a6.r||s>0,a4,a4,a,0,a1,0,a,a4,a4) +if(a===n)a7.R8=!0 +a7.wO()}} +A.aPs.prototype={ +$0(){var s,r,q,p=this.a,o=p.c,n=p.a +if(o==n)p.b=!1 +s=this.b +o=o.b +o.toString +r=p.c=A.k(s).h("aq.1").a(o).am$ +o=r==null +if(o)p.b=!1 +q=++p.d +if(!p.b){if(!o){o=r.b +o.toString +o=t.V.a(o).b +o.toString +q=o!==q +o=q}else o=!0 +q=this.c +if(o){r=s.aau(q,n,!0) +p.c=r +if(r==null)return!1}else r.cX(q,!0) +o=p.a=p.c}else o=r +n=o.b +n.toString +t.V.a(n) +q=p.e +n.a=q +p.e=q+s.xx(o) +return!0}, +$S:17} +A.mS.prototype={$idQ:1} +A.aPw.prototype={ +fR(a){}} +A.he.prototype={ +j(a){var s=this.b,r=this.Av$?"keepAlive; ":"" +return"index="+A.h(s)+"; "+r+this.aiC(0)}} +A.oM.prototype={ +fR(a){if(!(a.b instanceof A.he))a.b=new A.he(!1,null,null)}, +m6(a){var s +this.Ze(a) +s=a.b +s.toString +if(!t.V.a(s).c)this.aV.U9(t.x.a(a))}, +Vj(a,b,c){this.Oe(0,b,c)}, +FE(a,b){var s,r=this,q=a.b +q.toString +t.V.a(q) +if(!q.c){r.agJ(a,b) +r.aV.U9(a) +r.a6()}else{s=r.bU +if(s.i(0,q.b)===a)s.F(0,q.b) +r.aV.U9(a) +q=q.b +q.toString +s.p(0,q,a)}}, +F(a,b){var s=b.b +s.toString +t.V.a(s) +if(!s.c){this.agK(0,b) +return}this.bU.F(0,s.b) +this.uP(b)}, +PE(a,b){this.LL(new A.aPt(this,a,b),t.r)}, +a08(a){var s,r=this,q=a.b +q.toString +t.V.a(q) +if(q.Av$){r.F(0,a) +s=q.b +s.toString +r.bU.p(0,s,a) +a.b=q +r.Ze(a) +q.c=!0}else r.aV.acl(a)}, +aA(a){var s,r,q +this.ajF(a) +for(s=this.bU,s=s.gbw(s),r=A.k(s),r=r.h("@<1>").S(r.z[1]),s=new A.c2(J.ao(s.a),s.b,r.h("c2<1,2>")),r=r.z[1];s.u();){q=s.a;(q==null?r.a(q):q).aA(a)}}, +ap(a){var s,r,q +this.ajG(0) +for(s=this.bU,s=s.gbw(s),r=A.k(s),r=r.h("@<1>").S(r.z[1]),s=new A.c2(J.ao(s.a),s.b,r.h("c2<1,2>")),r=r.z[1];s.u();){q=s.a;(q==null?r.a(q):q).ap(0)}}, +jf(){this.YJ() +var s=this.bU +s.gbw(s).af(0,this.gWI())}, +ck(a){var s +this.Hk(a) +s=this.bU +s.gbw(s).af(0,a)}, +jl(a){this.Hk(a)}, +SY(a,b){var s +this.PE(a,null) +s=this.a3$ +if(s!=null){s=s.b +s.toString +t.V.a(s).a=b +return!0}this.aV.R8=!0 +return!1}, +a6y(){return this.SY(0,0)}, +Vl(a,b){var s,r,q,p=this,o=p.a3$ +o.toString +o=o.b +o.toString +s=t.V +o=s.a(o).b +o.toString +r=o-1 +p.PE(r,null) +o=p.a3$ +o.toString +q=o.b +q.toString +q=s.a(q).b +q.toString +if(q===r){o.cX(a,b) +return p.a3$}p.aV.R8=!0 +return null}, +aav(a){return this.Vl(a,!1)}, +aau(a,b,c){var s,r,q,p=b.b +p.toString +s=t.V +p=s.a(p).b +p.toString +r=p+1 +this.PE(r,b) +p=b.b +p.toString +q=A.k(this).h("aq.1").a(p).am$ +if(q!=null){p=q.b +p.toString +p=s.a(p).b +p.toString +p=p===r}else p=!1 +if(p){q.cX(a,c) +return q}this.aV.R8=!0 +return null}, +aat(a,b){return this.aau(a,b,!1)}, +wF(a,b){var s={} +s.a=a +s.b=b +this.LL(new A.aPv(s,this),t.r)}, +xx(a){switch(A.bT(t.r.a(A.H.prototype.ga4.call(this)).a).a){case 0:return a.gq(a).a +case 1:return a.gq(a).b}}, +LC(a,b,c){var s,r,q=this.dk$,p=A.bhN(a) +for(s=A.k(this).h("aq.1");q!=null;){if(this.aab(p,q,b,c))return!0 +r=q.b +r.toString +q=s.a(r).d0$}return!1}, +Kp(a){var s=a.b +s.toString +s=t.V.a(s).a +s.toString +return s-t.r.a(A.H.prototype.ga4.call(this)).d}, +Tx(a){var s=a.b +s.toString +return t.V.a(s).a}, +xz(a){var s=t.MR.a(a.b) +return(s==null?null:s.b)!=null&&!this.bU.ao(0,s.b)}, +eI(a,b){if(!this.xz(a))b.Yk() +else this.aEt(a,b)}, +aD(a,a0){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c=this,b=null +if(c.a3$==null)return +s=t.r +switch(A.nP(s.a(A.H.prototype.ga4.call(c)).a,s.a(A.H.prototype.ga4.call(c)).b).a){case 0:r=a0.T(0,new A.l(0,c.fx.c)) +q=B.Fo +p=B.fq +o=!0 +break +case 1:r=a0 +q=B.fq +p=B.co +o=!1 +break +case 2:r=a0 +q=B.co +p=B.fq +o=!1 +break +case 3:r=a0.T(0,new A.l(c.fx.c,0)) +q=B.o1 +p=B.co +o=!0 +break +default:o=b +r=o +p=r +q=p}n=c.a3$ +for(m=A.k(c).h("aq.1"),l=t.V;n!=null;){k=n.b +k.toString +k=l.a(k).a +k.toString +j=k-s.a(A.H.prototype.ga4.call(c)).d +i=c.zz(n) +k=r.a +h=q.a +k=k+h*j+p.a*i +g=r.b +f=q.b +g=g+f*j+p.b*i +e=new A.l(k,g) +if(o){d=c.xx(n) +e=new A.l(k+h*d,g+f*d)}if(j0)a.eg(n,e) +k=n.b +k.toString +n=m.a(k).am$}}} +A.aPt.prototype={ +$1(a){var s=this.a,r=s.bU,q=this.b,p=this.c +if(r.ao(0,q)){r=r.F(0,q) +r.toString +q=r.b +q.toString +t.V.a(q) +s.uP(r) +r.b=q +s.Oe(0,r,p) +q.c=!1}else s.aV.aGx(q,p)}, +$S:183} +A.aPv.prototype={ +$1(a){var s,r,q +for(s=this.a,r=this.b;s.a>0;){q=r.a3$ +q.toString +r.a08(q);--s.a}for(;s.b>0;){q=r.dk$ +q.toString +r.a08(q);--s.b}s=r.bU +s=s.gbw(s) +q=A.k(s).h("be") +B.b.af(A.aa(new A.be(s,new A.aPu(),q),!0,q.h("z.E")),r.aV.gaNx())}, +$S:183} +A.aPu.prototype={ +$1(a){var s=a.b +s.toString +return!t.V.a(s).Av$}, +$S:406} +A.SW.prototype={ +aA(a){var s,r,q +this.eR(a) +s=this.a3$ +for(r=t.V;s!=null;){s.aA(a) +q=s.b +q.toString +s=r.a(q).am$}}, +ap(a){var s,r,q +this.eS(0) +s=this.a3$ +for(r=t.V;s!=null;){s.ap(0) +q=s.b +q.toString +s=r.a(q).am$}}} +A.akx.prototype={} +A.aky.prototype={} +A.alO.prototype={ +ap(a){this.Cu(0)}} +A.alP.prototype={} +A.N0.prototype={ +gTi(){var s=this,r=t.r +switch(A.nP(r.a(A.H.prototype.ga4.call(s)).a,r.a(A.H.prototype.ga4.call(s)).b).a){case 0:return s.gfq().d +case 1:return s.gfq().a +case 2:return s.gfq().b +case 3:return s.gfq().c}}, +gaEj(){var s=this,r=t.r +switch(A.nP(r.a(A.H.prototype.ga4.call(s)).a,r.a(A.H.prototype.ga4.call(s)).b).a){case 0:return s.gfq().b +case 1:return s.gfq().c +case 2:return s.gfq().d +case 3:return s.gfq().a}}, +gaGE(){switch(A.bT(t.r.a(A.H.prototype.ga4.call(this)).a).a){case 0:var s=this.gfq() +return s.gcC(s)+s.gcH(s) +case 1:return this.gfq().gdD()}}, +fR(a){if(!(a.b instanceof A.oS))a.b=new A.oS(B.i)}, +cj(){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0=this,a1=null,a2=t.r,a3=a2.a(A.H.prototype.ga4.call(a0)),a4=a0.gTi() +a0.gaEj() +s=a0.gfq() +s.toString +r=s.aEn(A.bT(a2.a(A.H.prototype.ga4.call(a0)).a)) +q=a0.gaGE() +if(a0.E$==null){p=a0.kV(a3,0,r) +a0.fx=A.ky(a0.uB(a3,0,r),!1,a1,a1,r,0,Math.min(p,a3.r),0,r,a1,a1) +return}o=a0.kV(a3,0,a4) +n=a3.f +if(n>0)n=Math.max(0,n-o) +a2=a0.E$ +a2.toString +s=Math.max(0,a3.d-a4) +m=Math.min(0,a3.z+a4) +l=a3.r +k=a0.kV(a3,0,a4) +j=a3.Q +i=a0.uB(a3,0,a4) +h=Math.max(0,a3.w-q) +g=a3.a +f=a3.b +a2.cX(new A.uK(g,f,a3.c,s,a4+a3.e,n,l-k,h,a3.x,a3.y,m,j-i),!0) +e=a0.E$.fx +a2=e.y +if(a2!=null){a0.fx=A.ky(a1,!1,a1,a1,0,0,0,0,0,a2,a1) +return}a2=e.a +s=a4+a2 +m=r+a2 +d=a0.kV(a3,s,m) +c=o+d +b=a0.uB(a3,0,a4) +a=a0.uB(a3,s,m) +s=e.c +k=e.d +p=Math.min(o+Math.max(s,k+d),l) +l=e.b +k=Math.min(c+k,p) +j=Math.min(a+b+e.z,j) +i=e.e +s=Math.max(c+s,o+e.r) +a0.fx=A.ky(j,e.x,s,k,r+i,0,p,l,m,a1,a1) +m=a0.E$.b +m.toString +t.jB.a(m) +switch(A.nP(g,f).a){case 0:m.a=new A.l(a0.gfq().a,a0.kV(a3,a0.gfq().d+a2,a0.gfq().d+a2+a0.gfq().b)) +break +case 1:m.a=new A.l(a0.kV(a3,0,a0.gfq().a),a0.gfq().b) +break +case 2:m.a=new A.l(a0.gfq().a,a0.kV(a3,0,a0.gfq().b)) +break +case 3:m.a=new A.l(a0.kV(a3,a0.gfq().c+a2,a0.gfq().c+a2+a0.gfq().a),a0.gfq().b) +break}}, +LC(a,b,c){var s,r,q=this,p=q.E$ +if(p!=null&&p.fx.r>0){p=p.b +p.toString +t.jB.a(p) +s=q.kV(t.r.a(A.H.prototype.ga4.call(q)),0,q.gTi()) +r=q.E$ +r.toString +r=q.zz(r) +p=p.a +a.aEg(r,b,q.E$.gaJF(),s,c,p)}return!1}, +zz(a){var s=this,r=t.r +switch(A.nP(r.a(A.H.prototype.ga4.call(s)).a,r.a(A.H.prototype.ga4.call(s)).b).a){case 0:case 2:return s.gfq().a +case 3:case 1:return s.gfq().b}}, +Tx(a){return this.gTi()}, +eI(a,b){var s=a.b +s.toString +s=t.jB.a(s).a +b.bj(0,s.a,s.b)}, +aD(a,b){var s,r=this.E$ +if(r!=null&&r.fx.w){s=r.b +s.toString +a.eg(r,b.T(0,t.jB.a(s).a))}}} +A.a7z.prototype={ +gfq(){return this.dG}, +aBh(){if(this.dG!=null)return +this.dG=this.cS}, +sdE(a,b){var s=this +if(s.cS.l(0,b))return +s.cS=b +s.dG=null +s.a6()}, +scF(a){var s=this +if(s.ep===a)return +s.ep=a +s.dG=null +s.a6()}, +cj(){this.aBh() +this.Zi()}} +A.akv.prototype={ +aA(a){var s +this.eR(a) +s=this.E$ +if(s!=null)s.aA(a)}, +ap(a){var s +this.eS(0) +s=this.E$ +if(s!=null)s.ap(0)}} +A.lj.prototype={ +dw(a){var s=this,r=a.a,q=a.b +return new A.lj(s.a+r,s.b+q,s.c-r,s.d-q)}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +return b instanceof A.lj&&b.a===s.a&&b.b===s.b&&b.c===s.c&&b.d===s.d}, +gv(a){var s=this +return A.X(s.a,s.b,s.c,s.d,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){var s=this +return"RelativeRect.fromLTRB("+B.e.az(s.a,1)+", "+B.e.az(s.b,1)+", "+B.e.az(s.c,1)+", "+B.e.az(s.d,1)+")"}} +A.fD.prototype={ +gLQ(){var s=this +return s.e!=null||s.f!=null||s.r!=null||s.w!=null||s.x!=null||s.y!=null}, +j(a){var s=this,r=A.a([],t.s),q=s.e +if(q!=null)r.push("top="+A.mt(q)) +q=s.f +if(q!=null)r.push("right="+A.mt(q)) +q=s.r +if(q!=null)r.push("bottom="+A.mt(q)) +q=s.w +if(q!=null)r.push("left="+A.mt(q)) +q=s.x +if(q!=null)r.push("width="+A.mt(q)) +q=s.y +if(q!=null)r.push("height="+A.mt(q)) +if(r.length===0)r.push("not positioned") +r.push(s.Hi(0)) +return B.b.cq(r,"; ")}} +A.a9v.prototype={ +K(){return"StackFit."+this.b}} +A.DE.prototype={ +fR(a){if(!(a.b instanceof A.fD))a.b=new A.fD(null,null,B.i)}, +aBn(){var s=this +if(s.Z!=null)return +s.Z=s.Y.L(s.av)}, +sjy(a){var s=this +if(s.Y.l(0,a))return +s.Y=a +s.Z=null +s.a6()}, +scF(a){var s=this +if(s.av==a)return +s.av=a +s.Z=null +s.a6()}, +sLk(a){if(this.ar!==a){this.ar=a +this.a6()}}, +smq(a){var s=this +if(a!==s.aG){s.aG=a +s.aU() +s.bX()}}, +c3(a){return A.yt(this.a3$,new A.aPA(a))}, +bV(a){return A.yt(this.a3$,new A.aPy(a))}, +bW(a){return A.yt(this.a3$,new A.aPz(a))}, +c1(a){return A.yt(this.a3$,new A.aPx(a))}, +hL(a){return this.KL(a)}, +ds(a){return this.a4C(a,A.rI())}, +a4C(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=this +e.aBn() +if(e.d_$===0){s=a.a +r=a.b +q=A.S(1/0,s,r) +p=a.c +o=a.d +n=A.S(1/0,p,o) +return isFinite(q)&&isFinite(n)?new A.V(A.S(1/0,s,r),A.S(1/0,p,o)):new A.V(A.S(0,s,r),A.S(0,p,o))}m=a.a +l=a.c +switch(e.ar.a){case 0:k=new A.aL(0,a.b,0,a.d) +break +case 1:k=A.Ax(new A.V(A.S(1/0,m,a.b),A.S(1/0,l,a.d))) +break +case 2:k=a +break +default:k=null}j=e.a3$ +for(s=t.Qv,i=l,h=m,g=!1;j!=null;){r=j.b +r.toString +s.a(r) +if(!r.gLQ()){f=b.$2(j,k) +h=Math.max(h,f.a) +i=Math.max(i,f.b) +g=!0}j=r.am$}return g?new A.V(h,i):new A.V(A.S(1/0,m,a.b),A.S(1/0,l,a.d))}, +cj(){var s,r,q,p,o,n,m,l=this,k="RenderBox was not laid out: ",j=t.k.a(A.H.prototype.ga4.call(l)) +l.B=!1 +l.id=l.a4C(j,A.vE()) +s=l.a3$ +for(r=t.Qv,q=t.EP;s!=null;){p=s.b +p.toString +r.a(p) +if(!p.gLQ()){o=l.Z +o.toString +n=l.id +if(n==null)n=A.q(A.R(k+A.o(l).j(0)+"#"+A.bt(l))) +m=s.id +p.sc6(0,o.wx(q.a(n.a2(0,m==null?A.q(A.R(k+A.o(s).j(0)+"#"+A.bt(s))):m))))}else{o=l.id +if(o==null)o=A.q(A.R(k+A.o(l).j(0)+"#"+A.bt(l))) +n=l.Z +n.toString +l.B=A.brG(s,p,o,n)||l.B}s=p.am$}}, +dY(a,b){return this.zS(a,b)}, +Mz(a,b){this.wM(a,b)}, +aD(a,b){var s,r=this,q=r.aG!==B.l&&r.B,p=r.aS +if(q){q=r.cx +q===$&&A.b() +s=r.gq(r) +p.sb3(0,a.tE(q,b,new A.I(0,0,0+s.a,0+s.b),r.gabM(),r.aG,p.a))}else{p.sb3(0,null) +r.Mz(a,b)}}, +m(){this.aS.sb3(0,null) +this.jr()}, +t6(a){var s,r=this +switch(r.aG.a){case 0:return null +case 1:case 2:case 3:if(r.B){s=r.gq(r) +s=new A.I(0,0,0+s.a,0+s.b)}else s=null +return s}}} +A.aPA.prototype={ +$1(a){return a.aB(B.ad,this.a,a.gbZ())}, +$S:21} +A.aPy.prototype={ +$1(a){return a.aB(B.ak,this.a,a.gc2())}, +$S:21} +A.aPz.prototype={ +$1(a){return a.aB(B.aA,this.a,a.gcD())}, +$S:21} +A.aPx.prototype={ +$1(a){return a.aB(B.br,this.a,a.gd4())}, +$S:21} +A.MS.prototype={ +jl(a){if(this.iA!=null&&this.a3$!=null)a.$1(this.Pi())}, +Pi(){var s,r=this.a3$,q=t.Qv,p=this.iA,o=0 +while(!0){if(r!=null){p.toString +s=o0)k.X7(c,l,e) +else k.X7(c,-a2+f,e) +i=Math.max(l+n.c,i) +m=n.a +a2-=m +r+=m +s+=n.d +m=n.z +if(m!==0){a0-=m-o +b=Math.min(p+m,0)}k.Xc(e,n) +c=a.$1(c)}return 0}, +t6(a){var s,r,q,p,o,n,m=this +switch(m.aS.a){case 0:return null +case 1:case 2:case 3:break}s=m.gq(m) +r=0+s.a +q=0+s.b +s=t.r +if(s.a(A.H.prototype.ga4.call(a)).f===0||!isFinite(s.a(A.H.prototype.ga4.call(a)).y))return new A.I(0,0,r,q) +p=s.a(A.H.prototype.ga4.call(a)).y-s.a(A.H.prototype.ga4.call(a)).r+s.a(A.H.prototype.ga4.call(a)).f +switch(A.nP(m.B,s.a(A.H.prototype.ga4.call(a)).b).a){case 2:o=0+p +n=0 +break +case 0:q-=p +n=0 +o=0 +break +case 1:n=0+p +o=0 +break +case 3:r-=p +n=0 +o=0 +break +default:n=0 +o=0}return new A.I(n,o,r,q)}, +KQ(a){var s,r,q,p,o=this +if(o.ar==null){s=o.gq(o) +return new A.I(0,0,0+s.a,0+s.b)}switch(A.bT(o.B).a){case 1:o.gq(o) +o.gq(o) +s=o.ar +s.toString +r=o.gq(o) +q=o.gq(o) +p=o.ar +p.toString +return new A.I(0,0-s,0+r.a,0+q.b+p) +case 0:o.gq(o) +s=o.ar +s.toString +o.gq(o) +r=o.gq(o) +q=o.ar +q.toString +return new A.I(0-s,0,0+r.a+q,0+o.gq(o).b)}}, +aD(a,b){var s,r,q,p=this +if(p.a3$==null)return +s=p.gVf()&&p.aS!==B.l +r=p.b8 +if(s){s=p.cx +s===$&&A.b() +q=p.gq(p) +r.sb3(0,a.tE(s,b,new A.I(0,0,0+q.a,0+q.b),p.gaDG(),p.aS,r.a))}else{r.sb3(0,null) +p.a6h(a,b)}}, +m(){this.b8.sb3(0,null) +this.jr()}, +a6h(a,b){var s,r,q,p,o +for(s=J.ao(this.gTy()),r=b.a,q=b.b;s.u();){p=s.gH(s) +if(p.fx.w){o=this.Wm(p) +a.eg(p,new A.l(r+o.a,q+o.b))}}}, +dY(a,b){var s,r,q,p,o=this,n={} +n.a=n.b=null +switch(A.bT(o.B).a){case 1:n.b=b.b +n.a=b.a +break +case 0:n.b=b.a +n.a=b.b +break}s=new A.Eg(a.a,a.b,a.c) +for(r=J.ao(o.ga7y());r.u();){q=r.gH(r) +if(!q.fx.w)continue +p=new A.bS(new Float64Array(16)) +p.fQ() +o.eI(q,p) +if(a.aEi(new A.aPD(n,o,q,s),p))return!0}return!1}, +vB(a,a0,a1){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d=this,c=null,b=a instanceof A.d7 +for(s=c,r=a,q=0;r.gbP(r)!==d;r=p){p=r.gbP(r) +p.toString +if(r instanceof A.N)s=r +if(p instanceof A.d7){o=p.Tx(r) +o.toString +q+=o}else{q=0 +b=!1}}if(s!=null){p=s.gbP(s) +p.toString +t.nl.a(p) +n=t.r.a(A.H.prototype.ga4.call(p)).b +switch(A.bT(d.B).a){case 0:m=s.gq(s).a +break +case 1:m=s.gq(s).b +break +default:m=c}if(a1==null)a1=a.gr0() +l=A.j4(a.cs(0,s),a1)}else{if(b){t.nl.a(a) +p=t.r +n=p.a(A.H.prototype.ga4.call(a)).b +m=a.fx.a +if(a1==null)switch(A.bT(d.B).a){case 0:a1=new A.I(0,0,0+m,0+p.a(A.H.prototype.ga4.call(a)).w) +break +case 1:a1=new A.I(0,0,0+p.a(A.H.prototype.ga4.call(a)).w,0+a.fx.a) +break}}else{p=d.Y.at +p.toString +a1.toString +return new A.oN(p,a1)}l=a1}t.nl.a(r) +switch(A.nP(d.B,n).a){case 0:p=l.d +q+=m-p +k=p-l.b +break +case 1:p=l.a +q+=p +k=l.c-p +break +case 2:p=l.b +q+=p +k=l.d-p +break +case 3:p=l.c +q+=m-p +k=p-l.a +break +default:k=c}j=r.fx.f>0&&q>=0 +q=d.Y0(r,q) +i=A.j4(a.cs(0,d),a1) +h=d.abf(r) +switch(t.r.a(A.H.prototype.ga4.call(r)).b.a){case 0:if(j&&a0<=0)return new A.oN(1/0,i) +q-=h +break +case 1:if(j&&a0>=1)return new A.oN(-1/0,i) +switch(A.bT(d.B).a){case 1:q-=i.d-i.b +break +case 0:q-=i.c-i.a +break}break}switch(A.bT(d.B).a){case 0:g=d.gq(d).a-h +break +case 1:g=d.gq(d).b-h +break +default:g=c}f=q-(g-k)*a0 +p=d.Y.at +p.toString +e=p-f +switch(d.B.a){case 2:i=i.bj(0,0,e) +break +case 1:i=i.bj(0,e,0) +break +case 0:i=i.bj(0,0,-e) +break +case 3:i=i.bj(0,-e,0) +break}return new A.oN(f,i)}, +aeH(a,b){return this.vB(a,b,null)}, +a7F(a,b,c){var s=this +switch(A.nP(s.B,c).a){case 0:return new A.l(0,s.gq(s).b-(b+a.fx.c)) +case 1:return new A.l(b,0) +case 2:return new A.l(0,b) +case 3:return new A.l(s.gq(s).a-(b+a.fx.c),0)}}, +i2(a,b,c,d){var s=this +if(!s.Y.r.grU())return s.Hp(a,b,c,d) +s.Hp(a,null,c,A.brH(a,b,c,s.Y,d,s))}, +Cn(){return this.i2(B.aL,null,B.F,null)}, +vN(a){return this.i2(B.aL,null,B.F,a)}, +yd(a,b,c){return this.i2(a,null,b,c)}, +vO(a,b){return this.i2(B.aL,a,B.F,b)}, +$iDB:1} +A.aPE.prototype={ +$1(a){var s=a.fx +return s.w||s.z>0}, +$S:407} +A.aPD.prototype={ +$1(a){var s=this,r=s.c,q=s.a,p=s.b.a7G(r,q.b) +return r.aaa(s.d,q.a,p)}, +$S:185} +A.uw.prototype={ +Zy(a,b,c,d,e,f,g,h,i){var s +this.I(0,f) +s=this.a3$ +if(s!=null)this.dR=s}, +fR(a){if(!(a.b instanceof A.jO))a.b=new A.jO(null,null,B.i)}, +giY(){return this.hc}, +siY(a){if(a===this.hc)return +this.hc=a +this.a6()}, +sbH(a){if(a==this.dR)return +this.dR=a +this.a6()}, +gog(){return!0}, +ds(a){return new A.V(A.S(1/0,a.a,a.b),A.S(1/0,a.c,a.d))}, +cj(){var s,r,q,p,o,n,m,l,k=this +switch(A.bT(k.B).a){case 1:k.Y.qu(k.gq(k).b) +break +case 0:k.Y.qu(k.gq(k).a) +break}if(k.dR==null){k.ti=k.iB=0 +k.pG=!1 +k.Y.pr(0,0) +return}switch(A.bT(k.B).a){case 1:s=k.gq(k).b +r=k.gq(k).a +break +case 0:s=k.gq(k).a +r=k.gq(k).b +break +default:s=null +r=null}k.dR.toString +q=0 +do{p=k.Y.at +p.toString +o=k.SM(s,r,p+0) +if(o!==0)k.Y.TT(o) +else{p=k.Y +n=k.iB +n===$&&A.b() +n=Math.min(0,n+s*k.giY()) +m=k.ti +m===$&&A.b() +if(p.pr(n,Math.max(0,m-s*(1-k.giY()))))break}l=q+1 +if(l<10){q=l +continue}else break}while(!0)}, +SM(a,b,c){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=this +e.ti=e.iB=0 +e.pG=!1 +s=a*e.giY()-c +r=A.S(s,0,a) +q=a-s +p=A.S(q,0,a) +switch(e.aG.a){case 0:e.ar=e.av +break +case 1:e.ar=a*e.av +break}o=e.ar +o.toString +n=a+2*o +m=s+o +l=A.S(m,0,n) +k=A.S(n-m,0,n) +j=e.dR.b +j.toString +i=A.k(e).h("aq.1").a(j).d0$ +j=i==null +if(!j){h=Math.max(a,s) +g=e.Fq(e.ga7x(),A.S(q,-o,0),i,b,B.mY,p,a,0,l,r,h-a) +if(g!==0)return-g}q=e.dR +o=-s +h=Math.max(0,o) +o=j?Math.min(0,o):0 +j=s>=a?s:r +f=e.ar +f.toString +return e.Fq(e.gTv(),A.S(s,-f,0),q,b,B.hi,j,a,o,k,p,h)}, +gVf(){return this.pG}, +Xc(a,b){var s,r=this +switch(a.a){case 0:s=r.ti +s===$&&A.b() +r.ti=s+b.a +break +case 1:s=r.iB +s===$&&A.b() +r.iB=s-b.a +break}if(b.x)r.pG=!0}, +X7(a,b,c){var s=a.b +s.toString +t.jB.a(s).a=this.a7F(a,b,c)}, +Wm(a){var s=a.b +s.toString +return t.jB.a(s).a}, +Y0(a,b){var s,r,q,p,o=this +switch(t.r.a(A.H.prototype.ga4.call(a)).b.a){case 0:s=o.dR +for(r=A.k(o).h("aq.1"),q=0;s!==a;){q+=s.fx.a +p=s.b +p.toString +s=r.a(p).am$}return q+b +case 1:r=o.dR.b +r.toString +p=A.k(o).h("aq.1") +s=p.a(r).d0$ +for(q=0;s!==a;){q-=s.fx.a +r=s.b +r.toString +s=p.a(r).d0$}return q-b}}, +abf(a){var s,r,q,p,o=this +switch(t.r.a(A.H.prototype.ga4.call(a)).b.a){case 0:s=o.dR +for(r=A.k(o).h("aq.1"),q=0;s!==a;){q+=s.fx.f +p=s.b +p.toString +s=r.a(p).am$}return q +case 1:r=o.dR.b +r.toString +p=A.k(o).h("aq.1") +s=p.a(r).d0$ +for(q=0;s!==a;){q+=s.fx.f +r=s.b +r.toString +s=p.a(r).d0$}return q}}, +eI(a,b){var s=a.b +s.toString +s=t.jB.a(s).a +b.bj(0,s.a,s.b)}, +a7G(a,b){var s,r=a.b +r.toString +t.jB.a(r) +s=t.r +switch(A.nP(s.a(A.H.prototype.ga4.call(a)).a,s.a(A.H.prototype.ga4.call(a)).b).a){case 2:return b-r.a.b +case 1:return b-r.a.a +case 0:return a.fx.c-(b-r.a.b) +case 3:return a.fx.c-(b-r.a.a)}}, +gTy(){var s,r,q=this,p=A.a([],t.Ry),o=q.a3$ +if(o==null)return p +for(s=A.k(q).h("aq.1");o!=q.dR;){o.toString +p.push(o) +r=o.b +r.toString +o=s.a(r).am$}o=q.dk$ +for(;!0;){o.toString +p.push(o) +if(o===q.dR)return p +r=o.b +r.toString +o=s.a(r).d0$}}, +ga7y(){var s,r,q,p=this,o=A.a([],t.Ry) +if(p.a3$==null)return o +s=p.dR +for(r=A.k(p).h("aq.1");s!=null;){o.push(s) +q=s.b +q.toString +s=r.a(q).am$}q=p.dR.b +q.toString +s=r.a(q).d0$ +for(;s!=null;){o.push(s) +q=s.b +q.toString +s=r.a(q).d0$}return o}} +A.a7r.prototype={ +fR(a){if(!(a.b instanceof A.oR))a.b=new A.oR(null,null)}, +cj(){var s,r,q,p,o,n,m,l,k,j,i,h,g=this,f=t.k.a(A.H.prototype.ga4.call(g)) +if(g.a3$==null){switch(A.bT(g.B).a){case 1:g.id=new A.V(f.b,f.c) +break +case 0:g.id=new A.V(f.a,f.d) +break}g.Y.qu(0) +g.dR=g.hc=0 +g.iB=!1 +g.Y.pr(0,0) +return}switch(A.bT(g.B).a){case 1:s=f.d +r=f.b +break +case 0:s=f.b +r=f.d +break +default:s=null +r=null}q=f.a +p=f.b +o=f.c +n=f.d +m=null +do{l=g.Y.at +l.toString +k=g.SM(s,r,l) +if(k!==0)g.Y.TT(k) +else{switch(A.bT(g.B).a){case 1:l=g.dR +l===$&&A.b() +m=A.S(l,o,n) +break +case 0:l=g.dR +l===$&&A.b() +m=A.S(l,q,p) +break}j=g.Y.qu(m) +l=g.Y +i=g.hc +i===$&&A.b() +h=l.pr(0,Math.max(0,i-m)) +if(j&&h)break}}while(!0) +switch(A.bT(g.B).a){case 1:g.id=new A.V(A.S(r,q,p),A.S(m,o,n)) +break +case 0:g.id=new A.V(A.S(m,q,p),A.S(r,o,n)) +break}}, +SM(a,b,c){var s,r,q,p,o,n=this +n.dR=n.hc=0 +n.iB=c<0 +switch(n.aG.a){case 0:n.ar=n.av +break +case 1:n.ar=a*n.av +break}s=n.a3$ +r=Math.max(0,c) +q=Math.min(0,c) +p=Math.max(0,-c) +o=n.ar +o.toString +return n.Fq(n.gTv(),-o,s,b,B.hi,p,a,q,a+2*o,a+q,r)}, +gVf(){return this.iB}, +Xc(a,b){var s=this,r=s.hc +r===$&&A.b() +s.hc=r+b.a +if(b.x)s.iB=!0 +r=s.dR +r===$&&A.b() +s.dR=r+b.e}, +X7(a,b,c){var s=a.b +s.toString +t.Xp.a(s).a=b}, +Wm(a){var s=a.b +s.toString +s=t.Xp.a(s).a +s.toString +return this.a7F(a,s,B.hi)}, +Y0(a,b){var s,r,q,p=this.a3$ +for(s=A.k(this).h("aq.1"),r=0;p!==a;){r+=p.fx.a +q=p.b +q.toString +p=s.a(q).am$}return r+b}, +abf(a){var s,r,q,p=this.a3$ +for(s=A.k(this).h("aq.1"),r=0;p!==a;){r+=p.fx.f +q=p.b +q.toString +p=s.a(q).am$}return r}, +eI(a,b){var s=this.Wm(t.nl.a(a)) +b.bj(0,s.a,s.b)}, +a7G(a,b){var s,r=this,q=a.b +q.toString +t.Xp.a(q) +s=t.r +switch(A.nP(s.a(A.H.prototype.ga4.call(a)).a,s.a(A.H.prototype.ga4.call(a)).b).a){case 2:case 1:q=q.a +q.toString +return b-q +case 0:s=r.gq(r) +q=q.a +q.toString +return s.b-b-q +case 3:s=r.gq(r) +q=q.a +q.toString +return s.a-b-q}}, +gTy(){var s,r,q=A.a([],t.Ry),p=this.dk$ +for(s=A.k(this).h("aq.1");p!=null;){q.push(p) +r=p.b +r.toString +p=s.a(r).d0$}return q}, +ga7y(){var s,r,q=A.a([],t.Ry),p=this.a3$ +for(s=A.k(this).h("aq.1");p!=null;){q.push(p) +r=p.b +r.toString +p=s.a(r).am$}return q}} +A.k2.prototype={ +aA(a){var s,r,q +this.eR(a) +s=this.a3$ +for(r=A.k(this).h("k2.0");s!=null;){s.aA(a) +q=s.b +q.toString +s=r.a(q).am$}}, +ap(a){var s,r,q +this.eS(0) +s=this.a3$ +for(r=A.k(this).h("k2.0");s!=null;){s.ap(0) +q=s.b +q.toString +s=r.a(q).am$}}} +A.Nj.prototype={ +K(){return"ScrollDirection."+this.b}} +A.iE.prototype={ +FF(a,b,c,d){var s=d.a===B.F.a +if(s){this.fc(b) +return A.d3(null,t.H)}else return this.iZ(b,c,d)}, +j(a){var s=this,r=A.a([],t.s) +s.aiv(r) +r.push(A.o(s.w).j(0)) +r.push(s.r.j(0)) +r.push(A.h(s.fr)) +r.push(s.k4.j(0)) +return"#"+A.bt(s)+"("+B.b.cq(r,", ")+")"}, +fX(a){var s=this.at +if(s!=null)a.push("offset: "+B.e.az(s,1))}} +A.acK.prototype={ +K(){return"WrapAlignment."+this.b}} +A.acL.prototype={ +K(){return"WrapCrossAlignment."+this.b}} +A.T_.prototype={} +A.p6.prototype={} +A.N2.prototype={ +st8(a,b){if(this.B===b)return +this.B=b +this.a6()}, +sjy(a){if(this.Z===a)return +this.Z=a +this.a6()}, +sO4(a,b){if(this.Y===b)return +this.Y=b +this.a6()}, +saOa(a){if(this.av===a)return +this.av=a +this.a6()}, +saOd(a){if(this.ar===a)return +this.ar=a +this.a6()}, +sU0(a){if(this.aG===a)return +this.aG=a +this.a6()}, +fR(a){if(!(a.b instanceof A.p6))a.b=new A.p6(null,null,B.i)}, +c3(a){var s,r,q,p,o=this +switch(o.B.a){case 0:s=o.a3$ +for(r=A.k(o).h("aq.1"),q=0;s!=null;){q=Math.max(q,s.aB(B.ad,1/0,s.gbZ())) +p=s.b +p.toString +s=r.a(p).am$}return q +case 1:return o.CN(new A.aL(0,1/0,0,a)).a}}, +bV(a){var s,r,q,p,o=this +switch(o.B.a){case 0:s=o.a3$ +for(r=A.k(o).h("aq.1"),q=0;s!=null;){q+=s.aB(B.ak,1/0,s.gc2()) +p=s.b +p.toString +s=r.a(p).am$}return q +case 1:return o.CN(new A.aL(0,1/0,0,a)).a}}, +bW(a){var s,r,q,p,o=this +switch(o.B.a){case 0:return o.CN(new A.aL(0,a,0,1/0)).b +case 1:s=o.a3$ +for(r=A.k(o).h("aq.1"),q=0;s!=null;){q=Math.max(q,s.aB(B.aA,1/0,s.gcD())) +p=s.b +p.toString +s=r.a(p).am$}return q}}, +c1(a){var s,r,q,p,o=this +switch(o.B.a){case 0:return o.CN(new A.aL(0,a,0,1/0)).b +case 1:s=o.a3$ +for(r=A.k(o).h("aq.1"),q=0;s!=null;){q+=s.aB(B.br,1/0,s.gd4()) +p=s.b +p.toString +s=r.a(p).am$}return q}}, +hL(a){return this.KL(a)}, +Qk(a){switch(this.B.a){case 0:return a.a +case 1:return a.b}}, +Qj(a){switch(this.B.a){case 0:return a.b +case 1:return a.a}}, +ar9(a,b){switch(this.B.a){case 0:return new A.l(a,b) +case 1:return new A.l(b,a)}}, +aqP(a,b,c){var s=b-c +switch(this.aG.a){case 0:return a?s:0 +case 1:return a?0:s +case 2:return s/2}}, +ds(a){return this.CN(a)}, +CN(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f=this +switch(f.B.a){case 0:s=a.b +r=new A.aL(0,s,0,1/0) +break +case 1:s=a.d +r=new A.aL(0,1/0,0,s) +break +default:r=null +s=0}q=f.a3$ +for(p=A.k(f).h("aq.1"),o=0,n=0,m=0,l=0,k=0;q!=null;){j=A.boo(q,r) +i=f.Qk(j) +h=f.Qj(j) +if(k>0&&m+i+f.Y>s){o=Math.max(o,m) +n+=l+f.ar +m=0 +l=0 +k=0}m+=i +l=Math.max(l,h) +if(k>0)m+=f.Y;++k +g=q.b +g.toString +q=p.a(g).am$}n+=l +o=Math.max(o,m) +switch(f.B.a){case 0:return a.bI(new A.V(o,n)) +case 1:return a.bI(new A.V(n,o))}}, +cj(){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=this,b4="RenderBox was not laid out: ",b5=t.k.a(A.H.prototype.ga4.call(b3)) +b3.bp=!1 +s=b3.a3$ +if(s==null){b3.id=new A.V(A.S(0,b5.a,b5.b),A.S(0,b5.c,b5.d)) +return}switch(b3.B.a){case 0:r=b5.b +q=new A.aL(0,r,0,1/0) +p=b3.aS===B.ab&&!0 +o=b3.b8===B.pi&&!0 +break +case 1:r=b5.d +q=new A.aL(0,1/0,0,r) +p=b3.b8===B.pi&&!0 +o=b3.aS===B.ab&&!0 +break +default:q=null +r=0 +p=!1 +o=!1}n=b3.Y +m=b3.ar +l=A.a([],t.M7) +for(k=t.aP,j=0,i=0,h=0,g=0,f=0;s!=null;){s.cX(q,!0) +e=s.id +d=b3.Qk(e==null?A.q(A.R(b4+A.o(s).j(0)+"#"+A.bt(s))):e) +e=s.id +c=b3.Qj(e==null?A.q(A.R(b4+A.o(s).j(0)+"#"+A.bt(s))):e) +if(f>0&&h+n+d>r){j=Math.max(j,h) +i+=g +if(l.length!==0)i+=m +l.push(new A.T_(h,g,f)) +h=0 +g=0 +f=0}h+=d +if(f>0)h+=n +g=Math.max(g,c);++f +e=s.b +e.toString +k.a(e) +e.e=l.length +s=e.am$}if(f>0){j=Math.max(j,h) +i+=g +if(l.length!==0)i+=m +l.push(new A.T_(h,g,f))}b=l.length +switch(b3.B.a){case 0:b3.id=b5.bI(new A.V(j,i)) +a=b3.gq(b3).a +a0=b3.gq(b3).b +break +case 1:b3.id=b5.bI(new A.V(i,j)) +a=b3.gq(b3).b +a0=b3.gq(b3).a +break +default:a=0 +a0=0}b3.bp=a1?a1/(b-1):0 +a2=0 +break +case 4:a3=a1/b +a2=a3/2 +break +case 5:a3=a1/(b+1) +a2=a3 +break +default:a2=0 +a3=0}a3+=m +a4=o?a0-a2:a2 +s=b3.a3$ +for(a5=0;a51?a7/(f-1):0 +a8=0 +break +case 4:a9=a7/f +a8=a9/2 +break +case 5:a9=a7/(f+1) +a8=a9 +break +default:a8=0 +a9=0}a9+=n +b0=p?a-a8:a8 +if(o)a4-=g +for(;s!=null;){e=s.b +e.toString +k.a(e) +if(e.e!==a5)break +b1=s.id +d=b3.Qk(b1==null?A.q(A.R(b4+A.o(s).j(0)+"#"+A.bt(s))):b1) +b1=s.id +b2=b3.aqP(o,g,b3.Qj(b1==null?A.q(A.R(b4+A.o(s).j(0)+"#"+A.bt(s))):b1)) +if(p)b0-=d +e.a=b3.ar9(b0,a4+b2) +b0=p?b0-a9:b0+(d+a9) +s=e.am$}a4=o?a4-a3:a4+(g+a3)}}, +dY(a,b){return this.zS(a,b)}, +aD(a,b){var s,r=this,q=r.bp&&r.b6!==B.l,p=r.cc +if(q){q=r.cx +q===$&&A.b() +s=r.gq(r) +p.sb3(0,a.tE(q,b,new A.I(0,0,0+s.a,0+s.b),r.ga8A(),r.b6,p.a))}else{p.sb3(0,null) +r.wM(a,b)}}, +m(){this.cc.sb3(0,null) +this.jr()}} +A.akH.prototype={ +aA(a){var s,r,q +this.eR(a) +s=this.a3$ +for(r=t.aP;s!=null;){s.aA(a) +q=s.b +q.toString +s=r.a(q).am$}}, +ap(a){var s,r,q +this.eS(0) +s=this.a3$ +for(r=t.aP;s!=null;){s.ap(0) +q=s.b +q.toString +s=r.a(q).am$}}} +A.akI.prototype={} +A.FW.prototype={} +A.yB.prototype={ +K(){return"SchedulerPhase."+this.b}} +A.aLt.prototype={} +A.i6.prototype={ +acq(a){var s=this.go$ +B.b.F(s,a) +if(s.length===0){s=$.bL() +s.ay=null +s.ch=$.a9}}, +aq0(a){var s,r,q,p,o,n,m,l,k=this.go$,j=A.aa(k,!0,t.ph) +for(p=j.length,o=0;o0)return!1 +if(j)A.q(A.R(l)) +s=k.HX(0) +j=s.b +if(m.k1$.$2$priority$scheduler(j,m)){try{if(k.c===0)A.q(A.R(l));++k.d +k.HX(0) +p=k.c-1 +o=k.HX(p) +k.b[p]=null +k.c=p +if(p>0)k.amO(o,0) +j=s +j.f.cM(0,j.aQ_())}catch(n){r=A.ai(n) +q=A.aH(n) +j=A.bX("during a task callback") +A.dV(new A.cc(r,q,"scheduler library",j,null,!1))}return k.c!==0}return!1}, +Cb(a,b){var s,r=this +r.rs() +s=++r.k4$ +r.ok$.p(0,s,new A.FW(a)) +return r.k4$}, +H_(a){return this.Cb(a,!1)}, +gaHs(){var s=this +if(s.p4$==null){if(s.RG$===B.fE)s.rs() +s.p4$=new A.aD(new A.a8($.a9,t.b),t.gR) +s.p3$.push(new A.aR4(s))}return s.p4$.a}, +ga9G(){return this.rx$}, +a4g(a){if(this.rx$===a)return +this.rx$=a +if(a)this.rs()}, +a97(){var s=$.bL() +if(s.w==null){s.w=this.garI() +s.x=$.a9}if(s.y==null){s.y=this.gas9() +s.z=$.a9}}, +Ux(){switch(this.RG$.a){case 0:case 4:this.rs() +return +case 1:case 2:case 3:return}}, +rs(){var s,r=this +if(!r.R8$)s=!(A.i6.prototype.ga9G.call(r)&&r.cu$) +else s=!0 +if(s)return +r.a97() +$.bL().rs() +r.R8$=!0}, +af5(){if(this.R8$)return +this.a97() +$.bL().rs() +this.R8$=!0}, +XZ(){var s,r,q=this +if(q.ry$||q.RG$!==B.fE)return +q.ry$=!0 +s=A.bsC() +s.Hc(0,"Warm-up frame") +r=q.R8$ +A.d2(B.F,new A.aR6(q)) +A.d2(B.F,new A.aR7(q,r)) +q.aLa(new A.aR8(q,s))}, +ZP(a){var s=this.to$ +return A.dC(B.e.bi((s==null?B.F:new A.bk(a.a-s.a)).a/1)+this.x1$.a,0,0)}, +arJ(a){if(this.ry$){this.c5$=!0 +return}this.a9N(a)}, +asa(){var s=this +if(s.c5$){s.c5$=!1 +s.p3$.push(new A.aR3(s)) +return}s.a9Q()}, +a9N(a){var s,r,q=this +if(q.to$==null)q.to$=a +r=a==null +q.xr$=q.ZP(r?q.x2$:a) +if(!r)q.x2$=a +q.R8$=!1 +try{q.RG$=B.Jk +s=q.ok$ +q.ok$=A.F(t.S,t.Jc) +J.f9(s,new A.aR5(q)) +q.p1$.ab(0)}finally{q.RG$=B.aco}}, +aNQ(a){var s=this,r=s.aV$,q=r==null +if(!q&&r!==a)return null +if(r===a)++s.bU$ +else if(q){s.aV$=a +s.bU$=1}return new A.aLt(s.gaph())}, +api(){if(--this.bU$===0){this.aV$=null +$.bL()}}, +a9Q(){var s,r,q,p,o,n,m,l=this +try{l.RG$=B.kQ +for(p=l.p2$,o=p.length,n=0;n0&&r<4){s=s.xr$ +s.toString +q.c=s}s=q.a +s.toString +return s}, +yh(a,b){var s=this,r=s.a +if(r==null)return +s.c=s.a=null +s.Nh() +if(b)r.a5a(s) +else r.a5b()}, +h7(a){return this.yh(a,!1)}, +aCe(a){var s,r=this +r.e=null +s=r.c +if(s==null)s=r.c=a +r.d.$1(new A.bk(a.a-s.a)) +if(!r.b&&r.a!=null&&r.e==null)r.e=$.cF.Cb(r.gJv(),!0)}, +Nh(){var s,r=this.e +if(r!=null){s=$.cF +s.ok$.F(0,r) +s.p1$.G(0,r) +this.e=null}}, +m(){var s=this,r=s.a +if(r!=null){s.a=null +s.Nh() +r.a5a(s)}}, +aOw(a,b){var s=""+"Ticker()" +return s.charCodeAt(0)==0?s:s}, +j(a){return this.aOw(a,!1)}} +A.zb.prototype={ +a5b(){this.c=!0 +this.a.fj(0) +var s=this.b +if(s!=null)s.fj(0)}, +a5a(a){var s +this.c=!1 +s=this.b +if(s!=null)s.ms(new A.OO(a))}, +adu(a){var s,r,q=this,p=new A.aYa(a) +if(q.b==null){s=q.b=new A.aD(new A.a8($.a9,t.b),t.gR) +r=q.c +if(r!=null)if(r)s.fj(0) +else s.ms(B.ajA)}q.b.a.fe(p,p,t.H)}, +zx(a,b){return this.a.a.zx(a,b)}, +me(a){return this.zx(a,null)}, +fe(a,b,c){return this.a.a.fe(a,b,c)}, +b9(a,b){return this.fe(a,null,b)}, +fv(a){return this.a.a.fv(a)}, +j(a){var s=A.bt(this),r=this.c +if(r==null)r="active" +else r=r?"complete":"canceled" +return"#"+s+"("+r+")"}, +$iU:1} +A.aYa.prototype={ +$1(a){this.a.$0()}, +$S:31} +A.OO.prototype={ +j(a){var s=this.a +if(s!=null)return"This ticker was canceled: "+s.j(0) +return'The ticker was canceled before the "orCancel" property was first used.'}, +$icm:1} +A.a8f.prototype={ +gDA(){var s,r=this.UI$ +if(r===$){s=A.ed($.bL().a.c,t.y) +this.UI$!==$&&A.am() +this.UI$=s +r=s}return r}, +ap5(){--this.UJ$ +this.gDA().sk(0,this.UJ$>0)}, +a1K(){var s,r=this +if($.bL().a.c){if(r.La$==null){++r.UJ$ +r.gDA().sk(0,!0) +r.La$=new A.aS2(r.gap4())}}else{s=r.La$ +if(s!=null)s.a.$0() +r.La$=null}}, +atR(a){var s,r,q=a.d +if(t.V4.b(q)){s=B.bj.k5(q) +if(J.i(s,B.iJ))s=q +r=new A.E0(a.a,a.b,a.c,s)}else r=a +s=this.b6$ +s===$&&A.b() +s=s.at +if(s!=null)s.aMI(r.c,r.a,r.d)}} +A.aS2.prototype={} +A.ne.prototype={ +j(a){return"SemanticsTag("+this.a+")"}} +A.AL.prototype={} +A.Y6.prototype={} +A.B9.prototype={ +gv(a){return A.X(null,this.b,this.c,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +l(a,b){if(b==null)return!1 +if(J.a1(b)!==A.o(this))return!1 +return b instanceof A.B9&&b.b===this.b&&b.c===this.c}, +j(a){return"CustomSemanticsAction("+A.h($.bi3.i(0,this))+", label:null, hint:"+this.b+", action:"+this.c.j(0)+")"}} +A.dI.prototype={ +T(a,b){var s,r,q,p,o,n,m,l=this.a,k=l.length +if(k===0)return b +s=b.a +if(s.length===0)return this +r=A.aa(this.b,!0,t.Vc) +q=b.b +p=q.length +if(p!==0)for(o=0;o=0;--o)r[o]=n[q-o-1].b}n=a3.fr +m=n.length +if(m!==0){l=new Int32Array(m) +for(o=0;o0?r[n-1].p2:null +if(n!==0)if(J.a1(l)===J.a1(o)){if(l!=null)o.toString +k=!0}else k=!1 +else k=!0 +if(!k&&p.length!==0){if(o!=null){if(!!p.immutable$list)A.q(A.a7("sort")) +s=p.length-1 +if(s-0<=32)A.a93(p,0,s,J.bla()) +else A.a92(p,0,s,J.bla())}B.b.I(q,p) +B.b.ab(p)}p.push(new A.ru(m,l,n))}if(o!=null)B.b.oh(p) +B.b.I(q,p) +s=t.J3 +return A.aa(new A.ad(q,new A.aS4(),s),!0,s.h("ax.E"))}, +afk(a){if(this.ay==null)return +B.lP.iM(0,a.acZ(this.b))}, +f2(){return"SemanticsNode#"+this.b}, +aOp(a,b,c){return new A.ali(a,this,b,!0,!0,null,c)}, +acW(a){return this.aOp(B.R2,null,a)}} +A.aS6.prototype={ +$1(a){var s,r,q,p=this.a +p.a=p.a|a.fr +s=p.b +r=a.z +q=a.dx +p.b=s|(r?q&$.aqB():q) +if(p.x==null)p.x=a.p1 +if(p.z==null)p.z=a.p3 +if(p.Q==null)p.Q=a.R8 +if(p.as==null)p.as=a.RG +if(p.at==null)p.at=a.rx +if(p.ax==null)p.ax=a.ry +if(p.ay==null)p.ay=a.to +p.ch=a.x1 +if(p.CW==null)p.CW=a.x2 +if(p.cx==null)p.cx=a.xr +if(p.d.a==="")p.d=a.fy +if(p.e.a==="")p.e=a.go +if(p.f.a==="")p.f=a.id +if(p.w==="")p.w=a.k2 +s=a.dy +if(s!=null){r=p.y;(r==null?p.y=A.aY(t.g3):r).I(0,s)}for(s=this.b.db,s=A.i1(s,s.r,A.k(s).c),r=this.c;s.u();)r.G(0,A.ax4(s.d)) +s=a.ok +if(s!=null){s=s.a +if(s!=null)r.G(0,A.ax4(new A.B9(s,B.ey))) +a.ok.toString}s=p.c +r=p.x +p.c=A.bdi(a.fx,a.p1,s,r) +r=p.r +s=p.x +p.r=A.bdi(a.k1,a.p1,r,s) +p.cy=Math.max(p.cy,a.k4+a.k3) +return!0}, +$S:166} +A.aS4.prototype={ +$1(a){return a.a}, +$S:413} +A.r9.prototype={ +bM(a,b){return B.e.bM(this.b,b.b)}, +$icu:1} +A.nJ.prototype={ +bM(a,b){return B.e.bM(this.a,b.a)}, +ag9(){var s,r,q,p,o,n,m,l,k,j=A.a([],t.TV) +for(s=this.c,r=s.length,q=0;q") +return A.aa(new A.ip(n,new A.bav(),s),!0,s.h("z.E"))}, +ag8(){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a3=this.c,a4=a3.length +if(a4<=1)return a3 +s=t.S +r=A.F(s,t.bu) +q=A.F(s,s) +for(p=this.b,o=p===B.ab,p=p===B.j,n=a4,m=0;m2.356194490192345 +else a0=!1 +if(a||a0)q.p(0,l.b,f.b)}}a1=A.a([],t.t) +a2=A.a(a3.slice(0),A.ab(a3)) +B.b.fz(a2,new A.bar()) +new A.ad(a2,new A.bas(),A.ab(a2).h("ad<1,m>")).af(0,new A.bau(A.aY(s),q,a1)) +a3=t.qn +a3=A.aa(new A.ad(a1,new A.bat(r),a3),!0,a3.h("ax.E")) +a4=A.ab(a3).h("d1<1>") +return A.aa(new A.d1(a3,a4),!0,a4.h("ax.E"))}, +$icu:1} +A.bav.prototype={ +$1(a){return a.ag8()}, +$S:184} +A.bar.prototype={ +$2(a,b){var s,r,q=a.e,p=A.zZ(a,new A.l(q.a,q.b)) +q=b.e +s=A.zZ(b,new A.l(q.a,q.b)) +r=B.e.bM(p.b,s.b) +if(r!==0)return-r +return-B.e.bM(p.a,s.a)}, +$S:180} +A.bau.prototype={ +$1(a){var s=this,r=s.a +if(r.n(0,a))return +r.G(0,a) +r=s.b +if(r.ao(0,a)){r=r.i(0,a) +r.toString +s.$1(r)}s.c.push(a)}, +$S:38} +A.bas.prototype={ +$1(a){return a.b}, +$S:416} +A.bat.prototype={ +$1(a){var s=this.a.i(0,a) +s.toString +return s}, +$S:417} +A.bdc.prototype={ +$1(a){return a.ag9()}, +$S:184} +A.ru.prototype={ +bM(a,b){var s,r=this.b +if(r==null||b.b==null)return this.c-b.c +r.toString +s=b.b +s.toString +return r.bM(0,s)}, +$icu:1} +A.Ny.prototype={ +m(){var s=this +s.b.ab(0) +s.c.ab(0) +s.d.ab(0) +s.eH()}, +afm(){var s,r,q,p,o,n,m,l,k,j,i,h,g=this,f=g.b +if(f.a===0)return +s=A.aY(t.S) +r=A.a([],t.QF) +for(q=A.k(f).h("be<1>"),p=q.h("z.E"),o=g.d;f.a!==0;){n=A.aa(new A.be(f,new A.aSa(g),q),!0,p) +f.ab(0) +o.ab(0) +m=new A.aSb() +if(!!n.immutable$list)A.q(A.a7("sort")) +l=n.length-1 +if(l-0<=32)A.a93(n,0,l,m) +else A.a92(n,0,l,m) +B.b.I(r,n) +for(m=n.length,k=0;k#"+A.bt(this)}} +A.aSa.prototype={ +$1(a){return!this.a.d.n(0,a)}, +$S:166} +A.aSb.prototype={ +$2(a,b){return a.CW-b.CW}, +$S:180} +A.aSc.prototype={ +$2(a,b){return a.CW-b.CW}, +$S:180} +A.aS9.prototype={ +$1(a){if(a.cy.ao(0,this.b)){this.a.a=a +return!1}return!0}, +$S:166} +A.nd.prototype={ +vX(a,b){var s=this +s.f.p(0,a,b) +s.r=s.r|a.a +s.e=!0}, +kE(a,b){this.vX(a,new A.aRS(b))}, +stz(a){a.toString +this.kE(B.ey,a) +this.w=a}, +svk(a){a.toString +this.kE(B.Jt,a)}, +sMo(a){this.kE(B.i4,a)}, +sMf(a){this.kE(B.acL,a)}, +sMp(a){this.kE(B.i5,a)}, +sMq(a){this.kE(B.i2,a)}, +sMn(a){this.kE(B.i3,a)}, +sMg(a){this.kE(B.Jv,a)}, +sMd(a){this.kE(B.Js,a)}, +sMb(a,b){this.kE(B.acM,b)}, +sMc(a,b){this.kE(B.acP,b)}, +sMl(a,b){this.kE(B.acH,b)}, +sMj(a){this.vX(B.acN,new A.aRW(a))}, +sMh(a){this.vX(B.acQ,new A.aRU(a))}, +sMk(a){this.vX(B.acO,new A.aRX(a))}, +sMi(a){this.vX(B.acG,new A.aRV(a))}, +sMr(a){this.vX(B.acI,new A.aRY(a))}, +sMs(a){this.vX(B.acJ,new A.aRZ(a))}, +sMe(a){this.kE(B.Ju,a)}, +sVZ(a){this.kE(B.Jw,a)}, +saf9(a){if(a==this.k4)return +this.k4=a +this.e=!0}, +safa(a){if(a==this.ok)return +this.ok=a +this.e=!0}, +sM1(a){if(a==this.p2)return +this.p2=a +this.e=!0}, +sKG(a){if(a==this.p3)return +this.p3=a +this.e=!0}, +saJE(a){if(a==null)return +this.xr=a +this.e=!0}, +sfl(a,b){if(b===this.y1)return +this.y1=b +this.e=!0}, +T1(a){var s=this.bQ;(s==null?this.bQ=A.aY(t.g3):s).G(0,a)}, +ce(a,b){var s=this,r=s.bO,q=a.a +if(b)s.bO=r|q +else s.bO=r&~q +s.e=!0}, +aaJ(a){var s=this +if(a==null||!a.e||!s.e)return!0 +if((s.r&a.r)!==0)return!1 +if((s.bO&a.bO)!==0)return!1 +if(s.p2!=null&&a.p2!=null)return!1 +if(s.p3!=null&&a.p3!=null)return!1 +if(s.rx.a.length!==0&&a.rx.a.length!==0)return!1 +return!0}, +uu(a){var s,r,q,p=this +if(!a.e)return +s=a.f +if(a.b)s.af(0,new A.aRT(p)) +else p.f.I(0,s) +s=p.r +r=a.b +q=a.r +p.r=s|(r?q&$.aqB():q) +p.R8.I(0,a.R8) +p.bO=p.bO|a.bO +if(p.cO==null)p.cO=a.cO +if(p.aV==null)p.aV=a.aV +if(p.bU==null)p.bU=a.bU +if(p.cb==null)p.cb=a.cb +if(p.xr==null)p.xr=a.xr +if(p.k3==null)p.k3=a.k3 +if(p.ok==null)p.ok=a.ok +if(p.k4==null)p.k4=a.k4 +p.p1=a.p1 +if(p.p2==null)p.p2=a.p2 +if(p.p3==null)p.p3=a.p3 +s=p.c5 +if(s==null){s=p.c5=a.c5 +p.e=!0}if(p.k2==null)p.k2=a.k2 +r=p.RG +p.RG=A.bdi(a.RG,a.c5,r,s) +if(p.rx.a==="")p.rx=a.rx +if(p.ry.a==="")p.ry=a.ry +if(p.to.a==="")p.to=a.to +s=p.x1 +r=p.c5 +p.x1=A.bdi(a.x1,a.c5,s,r) +if(p.x2==="")p.x2=a.x2 +p.y2=Math.max(p.y2,a.y2+a.y1) +p.e=p.e||a.e}, +aFS(){var s=this,r=A.oQ() +r.a=s.a +r.c=s.c +r.d=s.d +r.e=s.e +r.p4=s.p4 +r.c5=s.c5 +r.k2=s.k2 +r.RG=s.RG +r.ry=s.ry +r.rx=s.rx +r.to=s.to +r.x1=s.x1 +r.xr=s.xr +r.x2=s.x2 +r.y1=s.y1 +r.y2=s.y2 +r.bO=s.bO +r.bQ=s.bQ +r.cO=s.cO +r.aV=s.aV +r.bU=s.bU +r.cb=s.cb +r.r=s.r +r.k3=s.k3 +r.ok=s.ok +r.k4=s.k4 +r.p1=s.p1 +r.p2=s.p2 +r.p3=s.p3 +r.f.I(0,s.f) +r.R8.I(0,s.R8) +r.b=s.b +return r}} +A.aRS.prototype={ +$1(a){this.a.$0()}, +$S:11} +A.aRW.prototype={ +$1(a){a.toString +this.a.$1(A.vx(a))}, +$S:11} +A.aRU.prototype={ +$1(a){a.toString +this.a.$1(A.vx(a))}, +$S:11} +A.aRX.prototype={ +$1(a){a.toString +this.a.$1(A.vx(a))}, +$S:11} +A.aRV.prototype={ +$1(a){a.toString +this.a.$1(A.vx(a))}, +$S:11} +A.aRY.prototype={ +$1(a){var s,r,q +a.toString +s=J.aqT(t.f.a(a),t.N,t.S) +r=s.i(0,"base") +r.toString +q=s.i(0,"extent") +q.toString +this.a.$1(A.de(B.q,r,q,!1))}, +$S:11} +A.aRZ.prototype={ +$1(a){a.toString +this.a.$1(A.bs(a))}, +$S:11} +A.aRT.prototype={ +$2(a,b){if(($.aqB()&a.a)>0)this.a.f.p(0,a,b)}, +$S:419} +A.axc.prototype={ +K(){return"DebugSemanticsDumpOrder."+this.b}} +A.E1.prototype={ +bM(a,b){var s=this.aHe(b) +return s}, +$icu:1} +A.xU.prototype={ +aHe(a){var s=a.b,r=this.b +if(s===r)return 0 +return B.f.bM(r,s)}} +A.alh.prototype={} +A.alk.prototype={} +A.all.prototype={} +A.X2.prototype={ +K(){return"Assertiveness."+this.b}} +A.aS0.prototype={ +acZ(a){var s=A.ap(["type",this.a,"data",this.BW()],t.N,t.z) +if(a!=null)s.p(0,"nodeId",a) +return s}, +acY(){return this.acZ(null)}, +j(a){var s,r,q,p=A.a([],t.s),o=this.BW(),n=J.fJ(o.gcP(o)) +B.b.oh(n) +for(s=n.length,r=0;r#"+A.bt(this)+"()"}} +A.aur.prototype={ +B1(a,b){return this.agr(a,!0)}, +aL8(a,b,c){var s,r={},q=this.c +if(q.ao(0,a)){r=q.i(0,a) +r.toString +return c.h("U<0>").a(r)}r.a=r.b=null +this.ke(0,a).b9(b,c).fe(new A.aus(r,this,a,c),new A.aut(r),t.H) +s=r.a +if(s!=null)return s +s=new A.a8($.a9,c.h("a8<0>")) +r.b=new A.aD(s,c.h("aD<0>")) +q.p(0,a,s) +return r.b.a}} +A.aus.prototype={ +$1(a){var s=this,r=new A.ct(a,s.d.h("ct<0>")),q=s.a +q.a=r +s.b.c.p(0,s.c,r) +q=q.b +if(q!=null)q.cM(0,a)}, +$S(){return this.d.h("aE(0)")}} +A.aut.prototype={ +$2(a,b){this.a.b.f6(a,b)}, +$S:23} +A.aLC.prototype={ +ke(a,b){var s,r=null,q=B.cv.cN(A.f7(r,r,A.k6(B.nj,b,B.O,!1),r,r,r).e),p=$.ix.dG$ +p===$&&A.b() +s=p.H1(0,"flutter/assets",A.ks(q.buffer,0,r)).b9(new A.aLD(b),t.V4) +return s}, +Fr(a){return this.aL2(a)}, +aL2(a){var s=0,r=A.y(t.SG),q,p=this,o,n +var $async$Fr=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:o=A +n=A +s=3 +return A.t(p.ke(0,a),$async$Fr) +case 3:q=o.a1Z(n.dF(c.buffer,0,null)) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$Fr,r)}} +A.aLD.prototype={ +$1(a){if(a==null)throw A.c(A.BL(A.a([A.bOO(this.a),A.bX("The asset does not exist or has empty data.")],t.R))) +return a}, +$S:420} +A.Fs.prototype={ +aej(a){var s,r,q,p=this.b +if(!p.ao(0,a)){s=this.a +r=J.ak(s) +if(r.i(s,a)==null)return null +q=r.i(s,a) +if(q==null)q=[] +p.p(0,a,J.co(J.iP(t.VG.a(q),t.pE),new A.b0g(a),t.pR).fL(0)) +r.F(s,a)}p=p.i(0,a) +p.toString +return p}, +$iarM:1} +A.b0g.prototype={ +$1(a){var s,r=J.ak(a),q=r.i(a,"asset") +q.toString +A.bs(q) +s=r.i(a,"dpr") +r=r.i(a,"asset") +r.toString +A.bs(r) +return new A.rX(A.bkU(s),r)}, +$S:421} +A.rX.prototype={} +A.HU.prototype={ +b7(){var s,r,q=this +if(q.a){s=A.F(t.N,t.z) +s.p(0,"uniqueIdentifier",q.b) +s.p(0,"hints",q.c) +s.p(0,"editingValue",q.d.WY()) +r=q.e +if(r!=null)s.p(0,"hintText",r)}else s=null +return s}} +A.atn.prototype={} +A.E5.prototype={ +auO(){var s,r,q=this,p=t.v3,o=new A.aEa(A.F(p,t.bd),A.aY(t.SQ),A.a([],t.sA)) +q.dl$!==$&&A.cl() +q.dl$=o +s=$.bgU() +r=A.a([],t.K0) +q.h_$!==$&&A.cl() +q.h_$=new A.a2m(o,s,r,A.aY(p)) +p=q.dl$ +p===$&&A.b() +p.Hu().b9(new A.aSy(q),t.P)}, +F3(){var s=$.aqP() +s.a.ab(0) +s.b.ab(0) +s.c.ab(0)}, +v7(a){return this.aJf(a)}, +aJf(a){var s=0,r=A.y(t.H),q,p=this +var $async$v7=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:switch(A.bs(J.b3(t.a.a(a),"type"))){case"memoryPressure":p.F3() +break}s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$v7,r)}, +amb(){var s=A.b4("controller") +s.sdX(A.ln(null,new A.aSx(s),null,!1,t.hz)) +return J.bnz(s.aF())}, +aNa(){if(this.id$==null)$.bL() +return}, +QE(a){return this.asG(a)}, +asG(a){var s=0,r=A.y(t.v),q,p=this,o,n +var $async$QE=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:a.toString +o=A.bJW(a) +n=p.id$ +o.toString +B.b.af(p.aqI(n,o),p.gaIn()) +q=null +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$QE,r)}, +aqI(a,b){var s,r,q,p +if(a===b)return B.a1V +if(a===B.lM&&b===B.iA)return B.Yw +s=A.a([],t.QP) +if(a==null)s.push(b) +else{r=B.b.eX(B.jE,a) +q=B.b.eX(B.jE,b) +if(r>q)for(p=q;p") +r=A.i2(new A.c9(e,s),s.h("z.E")) +q=A.a([],t.K0) +p=e.i(0,d) +o=$.ix.x2$ +n=a.a +if(n==="")n=f +if(a instanceof A.oJ)if(p==null){m=new A.xl(d,c,n,o,!1) +r.G(0,d)}else m=new A.KI(d,p,n,o,!1) +else if(p==null)m=f +else{m=new A.tW(d,p,f,o,!1) +r.F(0,d)}for(s=this.c.d,l=A.k(s).h("c9<1>"),k=l.h("z.E"),j=r.wR(A.i2(new A.c9(s,l),k)),j=j.gaj(j),i=this.e;j.u();){h=j.gH(j) +if(h.l(0,d))q.push(new A.tW(h,c,f,o,!0)) +else{g=e.i(0,h) +g.toString +i.push(new A.tW(h,g,f,o,!0))}}for(e=A.i2(new A.c9(s,l),k).wR(r),e=e.gaj(e);e.u();){l=e.gH(e) +k=s.i(0,l) +k.toString +i.push(new A.xl(l,k,f,o,!0))}if(m!=null)i.push(m) +B.b.I(i,q)}} +A.aha.prototype={} +A.aGE.prototype={ +j(a){return"KeyboardInsertedContent("+this.a+", "+this.b+", "+A.h(this.c)+")"}, +l(a,b){var s,r,q=this +if(b==null)return!1 +if(J.a1(b)!==A.o(q))return!1 +if(b instanceof A.aGE)if(b.a===q.a)if(b.b===q.b){s=b.c +r=q.c +r=s==null?r==null:s===r +s=r}else s=!1 +else s=!1 +else s=!1 +return s}, +gv(a){return A.X(this.a,this.b,this.c,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}} +A.aGF.prototype={} +A.n.prototype={ +gv(a){return B.f.gv(this.a)}, +l(a,b){if(b==null)return!1 +if(this===b)return!0 +if(J.a1(b)!==A.o(this))return!1 +return b instanceof A.n&&b.a===this.a}} +A.L.prototype={ +gv(a){return B.f.gv(this.a)}, +l(a,b){if(b==null)return!1 +if(this===b)return!0 +if(J.a1(b)!==A.o(this))return!1 +return b instanceof A.L&&b.a===this.a}} +A.ahc.prototype={} +A.ov.prototype={ +j(a){return"MethodCall("+this.a+", "+A.h(this.b)+")"}} +A.y0.prototype={ +j(a){var s=this +return"PlatformException("+s.a+", "+A.h(s.b)+", "+A.h(s.c)+", "+A.h(s.d)+")"}, +$icm:1} +A.Ls.prototype={ +j(a){return"MissingPluginException("+A.h(this.a)+")"}, +$icm:1} +A.aWz.prototype={ +k5(a){if(a==null)return null +return B.cL.cN(A.dF(a.buffer,a.byteOffset,a.byteLength))}, +e4(a){if(a==null)return null +return A.ks(B.cv.cN(a).buffer,0,null)}} +A.aGc.prototype={ +e4(a){if(a==null)return null +return B.lZ.e4(B.at.l2(a))}, +k5(a){var s +if(a==null)return a +s=B.lZ.k5(a) +s.toString +return B.at.hu(0,s)}} +A.aGe.prototype={ +pA(a){var s=B.dZ.e4(A.ap(["method",a.a,"args",a.b],t.N,t.X)) +s.toString +return s}, +oE(a){var s,r,q,p=null,o=B.dZ.k5(a) +if(!t.f.b(o))throw A.c(A.cJ("Expected method call Map, got "+A.h(o),p,p)) +s=J.ak(o) +r=s.i(o,"method") +q=s.i(o,"args") +if(typeof r=="string")return new A.ov(r,q) +throw A.c(A.cJ("Invalid method call: "+A.h(o),p,p))}, +U4(a){var s,r,q,p=null,o=B.dZ.k5(a) +if(!t.j.b(o))throw A.c(A.cJ("Expected envelope List, got "+A.h(o),p,p)) +s=J.ak(o) +if(s.gt(o)===1)return s.i(o,0) +if(s.gt(o)===3)if(typeof s.i(o,0)=="string")r=s.i(o,1)==null||typeof s.i(o,1)=="string" +else r=!1 +else r=!1 +if(r){r=A.bs(s.i(o,0)) +q=A.ae(s.i(o,1)) +throw A.c(A.a6o(r,s.i(o,2),q,p))}if(s.gt(o)===4)if(typeof s.i(o,0)=="string")if(s.i(o,1)==null||typeof s.i(o,1)=="string")r=s.i(o,3)==null||typeof s.i(o,3)=="string" +else r=!1 +else r=!1 +else r=!1 +if(r){r=A.bs(s.i(o,0)) +q=A.ae(s.i(o,1)) +throw A.c(A.a6o(r,s.i(o,2),q,A.ae(s.i(o,3))))}throw A.c(A.cJ("Invalid envelope: "+A.h(o),p,p))}, +EG(a){var s=B.dZ.e4([a]) +s.toString +return s}, +wY(a,b,c){var s=B.dZ.e4([a,c,b]) +s.toString +return s}, +a94(a,b){return this.wY(a,null,b)}} +A.aVS.prototype={ +e4(a){var s +if(a==null)return null +s=A.b_2(64) +this.ip(0,s,a) +return s.uM()}, +k5(a){var s,r +if(a==null)return null +s=new A.ME(a) +r=this.jc(0,s) +if(s.b=b.a.byteLength)throw A.c(B.c7) +return this.tG(b.xZ(0),b)}, +tG(a,b){var s,r,q,p,o,n,m,l,k=this +switch(a){case 0:return null +case 1:return!0 +case 2:return!1 +case 3:s=b.b +r=$.fH() +q=b.a.getInt32(s,B.bi===r) +b.b+=4 +return q +case 4:return b.NC(0) +case 6:b.ql(8) +s=b.b +r=$.fH() +q=b.a.getFloat64(s,B.bi===r) +b.b+=8 +return q +case 5:case 7:p=k.jb(b) +return B.cL.cN(b.y_(p)) +case 8:return b.y_(k.jb(b)) +case 9:p=k.jb(b) +b.ql(4) +s=b.a +o=A.bqR(s.buffer,s.byteOffset+b.b,p) +b.b=b.b+4*p +return o +case 10:return b.ND(k.jb(b)) +case 14:p=k.jb(b) +b.ql(4) +s=b.a +r=s.buffer +s=s.byteOffset+b.b +A.VJ(r,s,p) +o=new Float32Array(r,s,p) +b.b=b.b+4*p +return o +case 11:p=k.jb(b) +b.ql(8) +s=b.a +o=A.bqP(s.buffer,s.byteOffset+b.b,p) +b.b=b.b+8*p +return o +case 12:p=k.jb(b) +n=A.aT(p,null,!1,t.X) +for(s=b.a,m=0;m=s.byteLength)A.q(B.c7) +b.b=r+1 +n[m]=k.tG(s.getUint8(r),b)}return n +case 13:p=k.jb(b) +s=t.X +n=A.F(s,s) +for(s=b.a,m=0;m=s.byteLength)A.q(B.c7) +b.b=r+1 +r=k.tG(s.getUint8(r),b) +l=b.b +if(l>=s.byteLength)A.q(B.c7) +b.b=l+1 +n.p(0,r,k.tG(s.getUint8(l),b))}return n +default:throw A.c(B.c7)}}, +kr(a,b){var s,r +if(b<254)a.iT(0,b) +else{s=a.d +if(b<=65535){a.iT(0,254) +r=$.fH() +s.setUint16(0,b,B.bi===r) +a.DB(a.e,0,2)}else{a.iT(0,255) +r=$.fH() +s.setUint32(0,b,B.bi===r) +a.DB(a.e,0,4)}}}, +jb(a){var s,r,q=a.xZ(0) +switch(q){case 254:s=a.b +r=$.fH() +q=a.a.getUint16(s,B.bi===r) +a.b+=2 +return q +case 255:s=a.b +r=$.fH() +q=a.a.getUint32(s,B.bi===r) +a.b+=4 +return q +default:return q}}} +A.aVU.prototype={ +$2(a,b){var s=this.a,r=this.b +s.ip(0,r,a) +s.ip(0,r,b)}, +$S:85} +A.aVW.prototype={ +pA(a){var s=A.b_2(64) +B.bj.ip(0,s,a.a) +B.bj.ip(0,s,a.b) +return s.uM()}, +oE(a){var s,r,q +a.toString +s=new A.ME(a) +r=B.bj.jc(0,s) +q=B.bj.jc(0,s) +if(typeof r=="string"&&s.b>=a.byteLength)return new A.ov(r,q) +else throw A.c(B.ta)}, +EG(a){var s=A.b_2(64) +s.iT(0,0) +B.bj.ip(0,s,a) +return s.uM()}, +wY(a,b,c){var s=A.b_2(64) +s.iT(0,1) +B.bj.ip(0,s,a) +B.bj.ip(0,s,c) +B.bj.ip(0,s,b) +return s.uM()}, +a94(a,b){return this.wY(a,null,b)}, +U4(a){var s,r,q,p,o,n +if(a.byteLength===0)throw A.c(B.SN) +s=new A.ME(a) +if(s.xZ(0)===0)return B.bj.jc(0,s) +r=B.bj.jc(0,s) +q=B.bj.jc(0,s) +p=B.bj.jc(0,s) +o=s.b=a.byteLength +else n=!1 +if(n)throw A.c(A.a6o(r,p,A.ae(q),o)) +else throw A.c(B.SO)}} +A.aJp.prototype={ +aIq(a,b,c){var s,r,q,p +if(t.PB.b(b)){this.b.F(0,a) +return}s=this.b +r=s.i(0,a) +q=A.bMj(c) +if(q==null)q=this.a +if(J.i(r==null?null:t.ZC.a(r.a),q))return +p=q.KF(a) +s.p(0,a,p) +B.aaV.e6("activateSystemCursor",A.ap(["device",p.b,"kind",t.ZC.a(p.a).a],t.N,t.z),t.H)}} +A.Lv.prototype={} +A.dY.prototype={ +j(a){var s=this.gzR() +return s}} +A.af8.prototype={ +KF(a){throw A.c(A.cL(null))}, +gzR(){return"defer"}} +A.amq.prototype={} +A.oW.prototype={ +gzR(){return"SystemMouseCursor("+this.a+")"}, +KF(a){return new A.amq(this,a)}, +l(a,b){if(b==null)return!1 +if(J.a1(b)!==A.o(this))return!1 +return b instanceof A.oW&&b.a===this.a}, +gv(a){return B.c.gv(this.a)}} +A.aik.prototype={} +A.t_.prototype={ +gE7(){var s=$.ix.dG$ +s===$&&A.b() +return s}, +iM(a,b){return this.afi(0,b,this.$ti.h("1?"))}, +afi(a,b,c){var s=0,r=A.y(c),q,p=this,o,n +var $async$iM=A.u(function(d,e){if(d===1)return A.v(e,r) +while(true)switch(s){case 0:o=p.b +n=o +s=3 +return A.t(p.gE7().H1(0,p.a,o.e4(b)),$async$iM) +case 3:q=n.k5(e) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$iM,r)}, +NV(a){this.gE7().Cj(this.a,new A.at7(this,a))}} +A.at7.prototype={ +$1(a){return this.adI(a)}, +adI(a){var s=0,r=A.y(t.CD),q,p=this,o,n +var $async$$1=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:o=p.a.b +n=o +s=3 +return A.t(p.b.$1(o.k5(a)),$async$$1) +case 3:q=n.e4(c) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$$1,r)}, +$S:187} +A.lQ.prototype={ +gE7(){var s,r=this.c +if(r==null){s=$.ix.dG$ +s===$&&A.b() +r=s}return r}, +pl(a,b,c,d){return this.av9(a,b,c,d,d.h("0?"))}, +av9(a,b,c,d,e){var s=0,r=A.y(e),q,p=this,o,n,m,l +var $async$pl=A.u(function(f,g){if(f===1)return A.v(g,r) +while(true)switch(s){case 0:o=p.b +n=o.pA(new A.ov(a,b)) +m=p.a +s=3 +return A.t(p.gE7().H1(0,m,n),$async$pl) +case 3:l=g +if(l==null){if(c){q=null +s=1 +break}throw A.c(A.bjh("No implementation found for method "+a+" on channel "+m))}q=d.h("0?").a(o.U4(l)) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$pl,r)}, +e6(a,b,c){return this.pl(a,b,!1,c)}, +LM(a,b,c){return this.aKi(a,b,c,c.h("e<0>?"))}, +aKi(a,b,c,d){var s=0,r=A.y(d),q,p=this,o +var $async$LM=A.u(function(e,f){if(e===1)return A.v(f,r) +while(true)switch(s){case 0:s=3 +return A.t(p.e6(a,b,t.j),$async$LM) +case 3:o=f +q=o==null?null:J.iP(o,c) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$LM,r)}, +LN(a,b,c,d){return this.aKj(a,b,c,d,c.h("@<0>").S(d).h("a6<1,2>?"))}, +Vq(a,b,c){return this.LN(a,null,b,c)}, +aKj(a,b,c,d,e){var s=0,r=A.y(e),q,p=this,o +var $async$LN=A.u(function(f,g){if(f===1)return A.v(g,r) +while(true)switch(s){case 0:s=3 +return A.t(p.e6(a,b,t.f),$async$LN) +case 3:o=g +q=o==null?null:J.aqT(o,c,d) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$LN,r)}, +tY(a){var s=this.gE7() +s.Cj(this.a,new A.aJ6(this,a))}, +Ig(a,b){return this.arG(a,b)}, +arG(a,b){var s=0,r=A.y(t.CD),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e +var $async$Ig=A.u(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:h=n.b +g=h.oE(a) +p=4 +e=h +s=7 +return A.t(b.$1(g),$async$Ig) +case 7:k=e.EG(d) +q=k +s=1 +break +p=2 +s=6 +break +case 4:p=3 +f=o +k=A.ai(f) +if(k instanceof A.y0){m=k +k=m.a +i=m.b +q=h.wY(k,m.c,i) +s=1 +break}else if(k instanceof A.Ls){q=null +s=1 +break}else{l=k +h=h.a94("error",J.cI(l)) +q=h +s=1 +break}s=6 +break +case 3:s=2 +break +case 6:case 1:return A.w(q,r) +case 2:return A.v(o,r)}}) +return A.x($async$Ig,r)}} +A.aJ6.prototype={ +$1(a){return this.a.Ig(a,this.b)}, +$S:187} +A.n_.prototype={ +e6(a,b,c){return this.aKk(a,b,c,c.h("0?"))}, +qQ(a,b){return this.e6(a,null,b)}, +aKk(a,b,c,d){var s=0,r=A.y(d),q,p=this +var $async$e6=A.u(function(e,f){if(e===1)return A.v(f,r) +while(true)switch(s){case 0:q=p.ahi(a,b,!0,c) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$e6,r)}} +A.aAL.prototype={ +aNn(){var s=new A.lQ(this.a,B.bM,null),r=A.b4("controller") +r.b=new A.ls(new A.aAN(this,r,s,null),new A.aAO(this,s,null),t.vh) +return J.bnz(r.aF())}} +A.aAN.prototype={ +$0(){var s=0,r=A.y(t.H),q=1,p,o=this,n,m,l,k,j,i,h +var $async$$0=A.u(function(a,b){if(a===1){p=b +s=q}while(true)switch(s){case 0:i=$.ix.dG$ +i===$&&A.b() +l=o.a +k=l.a +i.Cj(k,new A.aAM(l,o.b)) +q=3 +s=6 +return A.t(o.c.pl("listen",o.d,!1,t.H),$async$$0) +case 6:q=1 +s=5 +break +case 3:q=2 +h=p +n=A.ai(h) +m=A.aH(h) +i=A.bX("while activating platform stream on channel "+k) +A.dV(new A.cc(n,m,"services library",i,null,!1)) +s=5 +break +case 2:s=1 +break +case 5:return A.w(null,r) +case 1:return A.v(p,r)}}) +return A.x($async$$0,r)}, +$S:2} +A.aAM.prototype={ +$1(a){return this.adO(a)}, +adO(a){var s=0,r=A.y(t.P),q,p=this,o,n,m +var $async$$1=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:if(a==null)J.Hr(p.b.aF()) +else try{J.fu(p.b.aF(),B.bM.U4(a))}catch(l){m=A.ai(l) +if(m instanceof A.y0){o=m +p.b.aF().pp(o)}else throw l}q=null +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$$1,r)}, +$S:429} +A.aAO.prototype={ +$0(){var s=0,r=A.y(t.H),q=1,p,o=this,n,m,l,k,j,i +var $async$$0=A.u(function(a,b){if(a===1){p=b +s=q}while(true)switch(s){case 0:j=$.ix.dG$ +j===$&&A.b() +l=o.a.a +j.Cj(l,null) +q=3 +s=6 +return A.t(o.b.pl("cancel",o.c,!1,t.H),$async$$0) +case 6:q=1 +s=5 +break +case 3:q=2 +i=p +n=A.ai(i) +m=A.aH(i) +j=A.bX("while de-activating platform stream on channel "+l) +A.dV(new A.cc(n,m,"services library",j,null,!1)) +s=5 +break +case 2:s=1 +break +case 5:return A.w(null,r) +case 1:return A.v(p,r)}}) +return A.x($async$$0,r)}, +$S:2} +A.xm.prototype={ +K(){return"KeyboardSide."+this.b}} +A.lb.prototype={ +K(){return"ModifierKey."+this.b}} +A.MC.prototype={ +gaLw(){var s,r,q=A.F(t.xS,t.Di) +for(s=0;s<9;++s){r=B.yY[s] +if(this.aKu(r))q.p(0,r,B.f6)}return q}} +A.n7.prototype={} +A.aN8.prototype={ +$0(){var s,r,q,p=this.b,o=J.ak(p),n=A.ae(o.i(p,"key")),m=n==null +if(!m){s=n.length +s=s!==0&&s===1}else s=!1 +if(s)this.a.a=n +s=A.ae(o.i(p,"code")) +if(s==null)s="" +m=m?"":n +r=A.bv(o.i(p,"location")) +if(r==null)r=0 +q=A.bv(o.i(p,"metaState")) +if(q==null)q=0 +p=A.bv(o.i(p,"keyCode")) +return new A.a6M(s,m,r,q,p==null?0:p)}, +$S:430} +A.oJ.prototype={} +A.Dv.prototype={} +A.aNd.prototype={ +aJ1(a){var s,r,q,p,o,n,m,l,k,j,i=this +if(a instanceof A.oJ){p=a.c +i.d.p(0,p.gpT(),p.gFv())}else if(a instanceof A.Dv)i.d.F(0,a.c.gpT()) +i.aBU(a) +for(p=i.a,o=A.aa(p,!0,t.iS),n=o.length,m=0;m")),e),a0=a1 instanceof A.oJ +if(a0)a.G(0,g.gpT()) +for(s=g.a,r=null,q=0;q<9;++q){p=B.yY[q] +o=$.bz_() +n=o.i(0,new A.eV(p,B.dd)) +if(n==null)continue +m=B.F6.i(0,s) +if(n.n(0,m==null?new A.L(98784247808+B.c.gv(s)):m))r=p +if(f.i(0,p)===B.f6){c.I(0,n) +if(n.ed(0,a.gkY(a)))continue}l=f.i(0,p)==null?A.aY(e):o.i(0,new A.eV(p,f.i(0,p))) +if(l==null)continue +for(o=A.k(l),m=new A.mp(l,l.r,o.h("mp<1>")),m.c=l.e,o=o.c;m.u();){k=m.d +if(k==null)k=o.a(k) +j=$.byZ().i(0,k) +j.toString +d.p(0,k,j)}}i=b.i(0,B.eo)!=null&&!J.i(b.i(0,B.eo),B.hB) +for(e=$.bmi(),e=A.i1(e,e.r,A.k(e).c);e.u();){a=e.d +h=i&&a.l(0,B.eo) +if(!c.n(0,a)&&!h)b.F(0,a)}b.F(0,B.hQ) +b.I(0,d) +if(a0&&r!=null&&!b.ao(0,g.gpT())){e=g.gpT().l(0,B.fx) +if(e)b.p(0,g.gpT(),g.gFv())}}} +A.eV.prototype={ +l(a,b){if(b==null)return!1 +if(J.a1(b)!==A.o(this))return!1 +return b instanceof A.eV&&b.a===this.a&&b.b==this.b}, +gv(a){return A.X(this.a,this.b,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}} +A.ajP.prototype={} +A.ajO.prototype={} +A.a6M.prototype={ +gpT(){var s=this.a,r=B.F6.i(0,s) +return r==null?new A.L(98784247808+B.c.gv(s)):r}, +gFv(){var s,r=this.b,q=B.a9r.i(0,r),p=q==null?null:q[this.c] +if(p!=null)return p +s=B.a6O.i(0,r) +if(s!=null)return s +if(r.length===1)return new A.n(r.toLowerCase().charCodeAt(0)) +return new A.n(B.c.gv(this.a)+98784247808)}, +aKu(a){var s=this +switch(a.a){case 0:return(s.d&4)!==0 +case 1:return(s.d&1)!==0 +case 2:return(s.d&2)!==0 +case 3:return(s.d&8)!==0 +case 5:return(s.d&16)!==0 +case 4:return(s.d&32)!==0 +case 6:return(s.d&64)!==0 +case 7:case 8:return!1}}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.a1(b)!==A.o(s))return!1 +return b instanceof A.a6M&&b.a===s.a&&b.b===s.b&&b.c===s.c&&b.d===s.d&&b.e===s.e}, +gv(a){var s=this +return A.X(s.a,s.b,s.c,s.d,s.e,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}} +A.N6.prototype={ +gaO5(){var s=this +if(s.c)return new A.ct(s.a,t.hr) +if(s.b==null){s.b=new A.aD(new A.a8($.a9,t.X6),t.F0) +s.Ie()}return s.b.a}, +Ie(){var s=0,r=A.y(t.H),q,p=this,o +var $async$Ie=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:s=3 +return A.t(B.o3.qQ("get",t.pE),$async$Ie) +case 3:o=b +if(p.b==null){s=1 +break}p.a35(o) +case 1:return A.w(q,r)}}) +return A.x($async$Ie,r)}, +a35(a){var s,r=a==null +if(!r){s=J.b3(a,"enabled") +s.toString +A.vx(s)}else s=!1 +this.aJ3(r?null:t.n6.a(J.b3(a,"data")),s)}, +aJ3(a,b){var s,r,q=this,p=q.c&&b +q.d=p +if(p)$.cF.p3$.push(new A.aPN(q)) +s=q.a +if(b){p=q.aoT(a) +r=t.N +if(p==null){p=t.X +p=A.F(p,p)}r=new A.fp(p,q,null,"root",A.F(r,t.z4),A.F(r,t.I1)) +p=r}else p=null +q.a=p +q.c=!0 +r=q.b +if(r!=null)r.cM(0,p) +q.b=null +if(q.a!=s){q.ag() +if(s!=null)s.m()}}, +Rk(a){return this.awb(a)}, +awb(a){var s=0,r=A.y(t.H),q=this,p +var $async$Rk=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:p=a.a +switch(p){case"push":q.a35(t.pE.a(a.b)) +break +default:throw A.c(A.cL(p+" was invoked but isn't implemented by "+A.o(q).j(0)))}return A.w(null,r)}}) +return A.x($async$Rk,r)}, +aoT(a){if(a==null)return null +return t.J1.a(B.bj.k5(A.ks(a.buffer,a.byteOffset,a.byteLength)))}, +af6(a){var s=this +s.r.G(0,a) +if(!s.f){s.f=!0 +$.cF.p3$.push(new A.aPO(s))}}, +a0l(){var s,r,q,p,o,n=this +if(!n.f)return +n.f=!1 +for(s=n.r,r=A.ee(s,s.r,A.k(s).c),q=r.$ti.c;r.u();){p=r.d;(p==null?q.a(p):p).w=!1}s.ab(0) +o=B.bj.e4(n.a.a) +B.o3.e6("put",A.dF(o.buffer,o.byteOffset,o.byteLength),t.H)}, +a9x(){if($.cF.R8$)return +this.a0l()}} +A.aPN.prototype={ +$1(a){this.a.d=!1}, +$S:6} +A.aPO.prototype={ +$1(a){return this.a.a0l()}, +$S:6} +A.fp.prototype={ +gDs(){var s=J.Hs(this.a,"c",new A.aPK()) +s.toString +return t.pE.a(s)}, +guj(){var s=J.Hs(this.a,"v",new A.aPL()) +s.toString +return t.pE.a(s)}, +aNu(a,b,c){var s=this,r=J.jn(s.guj(),b),q=c.h("0?").a(J.pA(s.guj(),b)) +if(J.ce(s.guj()))J.pA(s.a,"v") +if(r)s.yR() +return q}, +aFh(a,b){var s,r,q,p,o=this,n=o.f +if(n.ao(0,a)||!J.jn(o.gDs(),a)){n=t.N +s=new A.fp(A.F(n,t.X),null,null,a,A.F(n,t.z4),A.F(n,t.I1)) +o.m6(s) +return s}r=t.N +q=o.c +p=J.b3(o.gDs(),a) +p.toString +s=new A.fp(t.pE.a(p),q,o,a,A.F(r,t.z4),A.F(r,t.I1)) +n.p(0,a,s) +return s}, +m6(a){var s=this,r=a.d +if(r!==s){if(r!=null)r.IX(a) +a.d=s +s.ZE(a) +if(a.c!=s.c)s.a3o(a)}}, +apz(a){this.IX(a) +a.d=null +if(a.c!=null){a.S_(null) +a.a6i(this.ga3n())}}, +yR(){var s,r=this +if(!r.w){r.w=!0 +s=r.c +if(s!=null)s.af6(r)}}, +a3o(a){a.S_(this.c) +a.a6i(this.ga3n())}, +S_(a){var s=this,r=s.c +if(r==a)return +if(s.w)if(r!=null)r.r.F(0,s) +s.c=a +if(s.w&&a!=null){s.w=!1 +s.yR()}}, +IX(a){var s,r,q,p=this +if(J.i(p.f.F(0,a.e),a)){J.pA(p.gDs(),a.e) +s=p.r +r=s.i(0,a.e) +if(r!=null){q=J.cn(r) +p.a0F(q.hj(r)) +if(q.gai(r))s.F(0,a.e)}if(J.ce(p.gDs()))J.pA(p.a,"c") +p.yR() +return}s=p.r +q=s.i(0,a.e) +if(q!=null)J.pA(q,a) +q=s.i(0,a.e) +q=q==null?null:J.ce(q) +if(q===!0)s.F(0,a.e)}, +ZE(a){var s=this +if(s.f.ao(0,a.e)){J.fu(s.r.cJ(0,a.e,new A.aPJ()),a) +s.yR() +return}s.a0F(a) +s.yR()}, +a0F(a){this.f.p(0,a.e,a) +J.ie(this.gDs(),a.e,a.a)}, +a6j(a,b){var s,r,q=this.f +q=q.gbw(q) +s=this.r +s=s.gbw(s) +r=q.UU(0,new A.ip(s,new A.aPM(),A.k(s).h("ip"))) +J.f9(b?A.aa(r,!1,A.k(r).h("z.E")):r,a)}, +a6i(a){return this.a6j(a,!1)}, +aNE(a){var s,r=this +if(a===r.e)return +s=r.d +if(s!=null)s.IX(r) +r.e=a +s=r.d +if(s!=null)s.ZE(r)}, +m(){var s,r=this +r.a6j(r.gapy(),!0) +r.f.ab(0) +r.r.ab(0) +s=r.d +if(s!=null)s.IX(r) +r.d=null +r.S_(null) +r.x=!0}, +j(a){return"RestorationBucket(restorationId: "+this.e+", owner: "+A.h(this.b)+")"}} +A.aPK.prototype={ +$0(){var s=t.X +return A.F(s,s)}, +$S:190} +A.aPL.prototype={ +$0(){var s=t.X +return A.F(s,s)}, +$S:190} +A.aPJ.prototype={ +$0(){return A.a([],t.QT)}, +$S:434} +A.aPM.prototype={ +$1(a){return a}, +$S:435} +A.uO.prototype={ +l(a,b){var s,r +if(b==null)return!1 +if(this===b)return!0 +if(b instanceof A.uO){s=b.a +r=this.a +s=s.a===r.a&&s.b===r.b&&A.e4(b.b,this.b)}else s=!1 +return s}, +gv(a){var s=this.a +return A.X(s.a,s.b,A.dt(this.b),B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}} +A.O3.prototype={ +l(a,b){if(b==null)return!1 +if(this===b)return!0 +return b instanceof A.O3&&b.a===this.a&&A.e4(b.b,this.b)}, +gv(a){return A.X(this.a,A.dt(this.b),B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}} +A.axh.prototype={ +L6(a,b){return this.aHI(a,b)}, +aHI(a0,a1){var s=0,r=A.y(t.EZ),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e,d,c,b,a +var $async$L6=A.u(function(a2,a3){if(a2===1){o=a3 +s=p}while(true)switch(s){case 0:d=null +c=a0.rP("-") +p=4 +m=n.b +m===$&&A.b() +a=t.j +s=7 +return A.t(m.e6("SpellCheck.initiateSpellCheck",A.a([c,a1],t.s),t.z),$async$L6) +case 7:d=a.a(a3) +p=2 +s=6 +break +case 4:p=3 +b=o +q=null +s=1 +break +s=6 +break +case 3:s=2 +break +case 6:k=A.a([],t.bt) +for(m=J.ao(d),j=t.f,i=t.N,h=t.z,g=t.j;m.u();){f=A.aHb(j.a(m.gH(m)),i,h) +k.push(new A.uO(new A.d8(A.fY(f.i(0,"startIndex")),A.fY(f.i(0,"endIndex"))),J.iP(g.a(f.i(0,"suggestions")),i)))}m=n.a +if(m!=null){j=m.a +e=A.e4(m.b,k) +if(j===a1&&e)k=A.bEz(n.a.b,k)}n.a=new A.O3(a1,k) +q=k +s=1 +break +case 1:return A.w(q,r) +case 2:return A.v(o,r)}}) +return A.x($async$L6,r)}} +A.wu.prototype={ +K(){return"DeviceOrientation."+this.b}} +A.arI.prototype={} +A.Ok.prototype={ +K(){return"SystemUiOverlay."+this.b}} +A.a9O.prototype={ +K(){return"SystemUiMode."+this.b}} +A.oX.prototype={ +a5c(){var s,r,q,p,o=this,n=o.a +n=n==null?null:n.a +s=o.e +s=s==null?null:s.a +r=o.f.K() +q=o.r.K() +p=o.c +p=p==null?null:p.K() +return A.ap(["systemNavigationBarColor",n,"systemNavigationBarDividerColor",null,"systemStatusBarContrastEnforced",o.w,"statusBarColor",s,"statusBarBrightness",r,"statusBarIconBrightness",q,"systemNavigationBarIconBrightness",p,"systemNavigationBarContrastEnforced",o.d],t.N,t.z)}, +j(a){return"SystemUiOverlayStyle("+this.a5c().j(0)+")"}, +gv(a){var s=this +return A.X(s.a,s.b,s.d,s.e,s.f,s.r,s.w,s.c,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +l(a,b){var s,r=this +if(b==null)return!1 +if(J.a1(b)!==A.o(r))return!1 +if(b instanceof A.oX)if(J.i(b.a,r.a))if(J.i(b.e,r.e))if(b.r===r.r)if(b.f===r.f)s=b.c==r.c +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +return s}} +A.aWV.prototype={ +$0(){if(!J.i($.EB,$.bjU)){B.by.e6("SystemChrome.setSystemUIOverlayStyle",$.EB.a5c(),t.H) +$.bjU=$.EB}$.EB=null}, +$S:0} +A.a9M.prototype={ +K(){return"SystemSoundType."+this.b}} +A.kD.prototype={ +iJ(a){var s +if(a<0)return null +s=this.C8(a).a +return s>=0?s:null}, +iL(a){var s=this.C8(Math.max(0,a)).b +return s>=0?s:null}, +C8(a){var s,r=this.iJ(a) +if(r==null)r=-1 +s=this.iL(a) +return new A.d8(r,s==null?-1:s)}} +A.AH.prototype={ +iJ(a){var s +if(a<0)return null +s=this.a +return A.aWy(s,Math.min(a,s.length)).b}, +iL(a){var s,r=this.a +if(a>=r.length)return null +s=A.aWy(r,Math.max(0,a+1)) +return s.b+s.gH(s).length}, +C8(a){var s,r,q,p=this +if(a<0){s=p.iL(a) +return new A.d8(-1,s==null?-1:s)}else{s=p.a +if(a>=s.length){s=p.iJ(a) +return new A.d8(s==null?-1:s,-1)}}r=A.aWy(s,a) +s=r.b +if(s!==r.c)s=new A.d8(s,s+r.gH(r).length) +else{q=p.iL(a) +s=new A.d8(s,q==null?-1:q)}return s}} +A.Cu.prototype={ +C8(a){return this.a.C0(new A.bR(Math.max(a,0),B.q))}} +A.M4.prototype={ +iJ(a){var s,r,q +if(a<0||this.a.length===0)return null +s=this.a +r=s.length +if(a>=r)return r +if(a===0)return 0 +if(a>1&&s.charCodeAt(a)===10&&s.charCodeAt(a-1)===13)q=a-2 +else q=A.bjW(s.charCodeAt(a))?a-1:a +for(;q>0;){if(A.bjW(s.charCodeAt(q)))return q+1;--q}return Math.max(q,0)}, +iL(a){var s,r=this.a,q=r.length +if(a>=q||q===0)return null +if(a<0)return 0 +for(s=a;!A.bjW(r.charCodeAt(s));){++s +if(s===q)return s}return s=s?null:s}} +A.i8.prototype={ +grW(){var s,r=this +if(!r.gdh()||r.c===r.d)s=r.e +else s=r.c=n&&o<=p.b)return p +s=p.c +r=p.d +q=s<=r +if(o<=n){if(b)return p.zL(a.b,p.b,o) +n=q?o:s +return p.Ek(n,q?r:o)}if(b)return p.zL(a.b,n,o) +n=q?s:o +return p.Ek(n,q?o:r)}, +a9d(a){if(this.gew().l(0,a))return this +return this.aG9(a.b,a.a)}} +A.uR.prototype={} +A.aa_.prototype={} +A.a9Z.prototype={} +A.aa0.prototype={} +A.EH.prototype={} +A.amL.prototype={} +A.a50.prototype={ +K(){return"MaxLengthEnforcement."+this.b}} +A.qY.prototype={} +A.aio.prototype={} +A.bbF.prototype={} +A.JN.prototype={ +a9F(a,b){var s,r,q,p,o,n,m,l,k,j,i=this,h=null,g=b.b +g=g.gdh()?new A.aio(g.c,g.d):h +s=b.c +s=s.gdh()&&s.a!==s.b?new A.aio(s.a,s.b):h +r=new A.bbF(b,new A.cV(""),g,s) +s=b.a +q=J.aqS(i.a,s) +for(g=q.gaj(q),p=i.b,o=!p,n=h;g.u();n=m){m=g.gH(g) +l=n==null?h:n.gcf(n) +if(l==null)l=0 +i.RF(p,l,m.gc0(m),r) +i.RF(o,m.gc0(m),m.gcf(m),r)}g=n==null?h:n.gcf(n) +if(g==null)g=0 +i.RF(p,g,s.length,r) +s=r.e=!0 +k=r.c +j=r.d +g=r.b.a +s=(j!=null?j.a===j.b:s)?B.c0:new A.d8(j.a,j.b) +if(k==null)p=B.id +else{p=r.a.b +p=A.de(p.e,k.a,k.b,p.f)}return new A.eN(g.charCodeAt(0)==0?g:g,p,s)}, +RF(a,b,c,d){var s,r,q,p +if(a)s=b===c?"":this.c +else s=B.c.U(d.a.a,b,c) +d.b.a+=s +if(s.length===c-b)return +r=new A.aBN(b,c,s) +q=d.c +p=q==null +if(!p)q.a=q.a+r.$1(d.a.b.c) +if(!p)q.b=q.b+r.$1(d.a.b.d) +q=d.d +p=q==null +if(!p)q.a=q.a+r.$1(d.a.c.a) +if(!p)q.b=q.b+r.$1(d.a.c.b)}} +A.aBN.prototype={ +$1(a){var s=this,r=s.a,q=a<=r&&a=r.a&&s<=this.a.length}else r=!1 +return r}, +acx(a,b){var s,r,q,p,o=this +if(!a.gdh())return o +s=a.a +r=a.b +q=B.c.iG(o.a,s,r,b) +if(r-s===b.length)return o.aG5(q) +s=new A.aXc(a,b) +r=o.b +p=o.c +return new A.eN(q,A.de(B.q,s.$1(r.c),s.$1(r.d),!1),new A.d8(s.$1(p.a),s.$1(p.b)))}, +WY(){var s=this.b,r=this.c +return A.ap(["text",this.a,"selectionBase",s.c,"selectionExtent",s.d,"selectionAffinity",s.e.K(),"selectionIsDirectional",s.f,"composingBase",r.a,"composingExtent",r.b],t.N,t.z)}, +j(a){return"TextEditingValue(text: \u2524"+this.a+"\u251c, selection: "+this.b.j(0)+", composing: "+this.c.j(0)+")"}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +return b instanceof A.eN&&b.a===s.a&&b.b.l(0,s.b)&&b.c.l(0,s.c)}, +gv(a){var s=this.b,r=this.c +return A.X(B.c.gv(this.a),s.gv(s),A.X(B.f.gv(r.a),B.f.gv(r.b),B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a),B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}} +A.aXc.prototype={ +$1(a){var s=this.a,r=s.a,q=a<=r&&a") +l=p.f +k=A.k(l).h("c9<1>") +j=k.h("en>") +q=A.aa(new A.en(new A.be(new A.c9(l,k),new A.aXH(p,A.aa(new A.ad(n,new A.aXI(),m),!0,m.h("ax.E"))),k.h("be")),new A.aXJ(p),j),!0,j.h("z.E")) +s=1 +break}else if(b==="TextInputClient.scribbleInteractionBegan"){p.r=!0 +s=1 +break}else if(b==="TextInputClient.scribbleInteractionFinished"){p.r=!1 +s=1 +break}n=p.d +if(n==null){s=1 +break}if(b==="TextInputClient.requestExistingInputState"){m=p.e +m===$&&A.b() +p.OZ(n,m) +p.Jd(p.d.r.a.c.a) +s=1 +break}n=t.j +o=n.a(a.b) +if(b===u.n){n=t.a +i=n.a(J.b3(o,1)) +for(m=J.bK(i),l=J.ao(m.gcP(i));l.u();)A.bsr(n.a(m.i(i,l.gH(l)))) +s=1 +break}m=J.ak(o) +h=A.fY(m.i(o,0)) +l=p.d +if(h!==l.f){s=1 +break}switch(b){case"TextInputClient.updateEditingState":g=A.bsr(t.a.a(m.i(o,1))) +$.du().aD0(g,$.aqw()) +break +case u.f:f=A.a([],t.sD) +l=t.a +for(n=J.ao(n.a(J.b3(l.a(m.i(o,1)),"deltas")));n.u();)f.push(A.bKG(l.a(n.gH(n)))) +t.Je.a(p.d.r).aQ0(f) +break +case"TextInputClient.performAction":if(A.bs(m.i(o,1))==="TextInputAction.commitContent"){n=t.a.a(m.i(o,2)) +m=J.ak(n) +A.bs(m.i(n,"mimeType")) +A.bs(m.i(n,"uri")) +if(m.i(n,"data")!=null)new Uint8Array(A.jk(A.hz(t.JY.a(m.i(n,"data")),!0,t.S))) +p.d.r.a.toString}else p.d.r.aMH(A.bQk(A.bs(m.i(o,1)))) +break +case"TextInputClient.performSelectors":e=J.iP(n.a(m.i(o,1)),t.N) +e.af(e,p.d.r.gaMJ()) +break +case"TextInputClient.performPrivateCommand":n=t.a +d=n.a(m.i(o,1)) +m=p.d.r +l=J.ak(d) +A.bs(l.i(d,"action")) +if(l.i(d,"data")!=null)n.a(l.i(d,"data")) +m.a.toString +break +case"TextInputClient.updateFloatingCursor":n=l.r +l=A.bQj(A.bs(m.i(o,1))) +m=t.a.a(m.i(o,2)) +if(l===B.mR){k=J.ak(m) +c=new A.l(A.nM(k.i(m,"X")),A.nM(k.i(m,"Y")))}else c=B.i +n.aOY(new A.aN7(c,l)) +break +case"TextInputClient.onConnectionClosed":n=l.r +if(n.glX()){n.z.toString +n.fy=n.z=$.du().d=null +n.I0(B.p2,!0)}break +case"TextInputClient.showAutocorrectionPromptRect":l.r.afN(A.fY(m.i(o,1)),A.fY(m.i(o,2))) +break +case"TextInputClient.showToolbar":l.r.of() +break +case"TextInputClient.insertTextPlaceholder":l.r.aK3(new A.V(A.nM(m.i(o,1)),A.nM(m.i(o,2)))) +break +case"TextInputClient.removeTextPlaceholder":l.r.acp() +break +default:throw A.c(A.bjh(null))}case 1:return A.w(q,r)}}) +return A.x($async$QJ,r)}, +aA4(){if(this.w)return +this.w=!0 +A.h_(new A.aXL(this))}, +aAL(a,b){var s,r,q,p,o,n,m,l,k,j +for(s=this.b,s=A.ee(s,s.r,A.k(s).c),r=t.jl,q=t.H,p=s.$ti.c,o=t.N,n=t.z;s.u();){m=s.d +if(m==null)p.a(m) +m=$.du() +l=m.c +l===$&&A.b() +k=m.d.f +j=b.b7() +if(m.a!==$.aqw())j.p(0,"inputType",A.ap(["name","TextInputType.none","signed",null,"decimal",null],o,n)) +l.e6("TextInput.setClient",A.a([k,j],r),q)}}, +a_C(){var s,r,q,p,o=this +o.d.toString +for(s=o.b,s=A.ee(s,s.r,A.k(s).c),r=t.H,q=s.$ti.c;s.u();){p=s.d +if(p==null)q.a(p) +p=$.du().c +p===$&&A.b() +p.qQ("TextInput.clearClient",r)}o.d=null +o.aA4()}, +a5F(a){var s,r,q,p,o,n,m,l +for(s=this.b,s=A.ee(s,s.r,A.k(s).c),r=t.H,q=s.$ti.c,p=t.N,o=t.z;s.u();){n=s.d +if(n==null)q.a(n) +n=$.du() +m=n.c +m===$&&A.b() +l=a.b7() +if(n.a!==$.aqw())l.p(0,"inputType",A.ap(["name","TextInputType.none","signed",null,"decimal",null],p,o)) +m.e6("TextInput.updateConfig",l,r)}}, +Jd(a){var s,r,q,p +for(s=this.b,s=A.ee(s,s.r,A.k(s).c),r=t.H,q=s.$ti.c;s.u();){p=s.d +if(p==null)q.a(p) +p=$.du().c +p===$&&A.b() +p.e6("TextInput.setEditingState",a.WY(),r)}}, +Se(){var s,r,q,p +for(s=this.b,s=A.ee(s,s.r,A.k(s).c),r=t.H,q=s.$ti.c;s.u();){p=s.d +if(p==null)q.a(p) +p=$.du().c +p===$&&A.b() +p.qQ("TextInput.show",r)}}, +auC(){var s,r,q,p +for(s=this.b,s=A.ee(s,s.r,A.k(s).c),r=t.H,q=s.$ti.c;s.u();){p=s.d +if(p==null)q.a(p) +p=$.du().c +p===$&&A.b() +p.qQ("TextInput.hide",r)}}, +aAO(a,b){var s,r,q,p,o,n,m,l,k +for(s=this.b,s=A.ee(s,s.r,A.k(s).c),r=a.a,q=a.b,p=b.a,o=t.N,n=t.z,m=t.H,l=s.$ti.c;s.u();){k=s.d +if(k==null)l.a(k) +k=$.du().c +k===$&&A.b() +k.e6("TextInput.setEditableSizeAndTransform",A.ap(["width",r,"height",q,"transform",p],o,n),m)}}, +aAM(a){var s,r,q,p,o,n,m,l,k,j +for(s=this.b,s=A.ee(s,s.r,A.k(s).c),r=a.a,q=a.c-r,p=a.b,o=a.d-p,n=t.N,m=t.z,l=t.H,k=s.$ti.c;s.u();){j=s.d +if(j==null)k.a(j) +j=$.du().c +j===$&&A.b() +j.e6("TextInput.setMarkedTextRect",A.ap(["width",q,"height",o,"x",r,"y",p],n,m),l)}}, +aAK(a){var s,r,q,p,o,n,m,l,k,j +for(s=this.b,s=A.ee(s,s.r,A.k(s).c),r=a.a,q=a.c-r,p=a.b,o=a.d-p,n=t.N,m=t.z,l=t.H,k=s.$ti.c;s.u();){j=s.d +if(j==null)k.a(j) +j=$.du().c +j===$&&A.b() +j.e6("TextInput.setCaretRect",A.ap(["width",q,"height",o,"x",r,"y",p],n,m),l)}}, +aAT(a){var s,r,q +for(s=this.b,s=A.ee(s,s.r,A.k(s).c),r=s.$ti.c;s.u();){q=s.d;(q==null?r.a(q):q).afF(a)}}, +aAU(a,b,c,d,e){var s,r,q,p,o,n,m,l,k +for(s=this.b,s=A.ee(s,s.r,A.k(s).c),r=d.a,q=e.a,p=t.N,o=t.z,n=t.H,m=c==null,l=s.$ti.c;s.u();){k=s.d +if(k==null)l.a(k) +k=$.du().c +k===$&&A.b() +k.e6("TextInput.setStyle",A.ap(["fontFamily",a,"fontSize",b,"fontWeightIndex",m?null:c.a,"textAlignIndex",r,"textDirectionIndex",q],p,o),n)}}, +azr(){var s,r,q,p +for(s=this.b,s=A.ee(s,s.r,A.k(s).c),r=t.H,q=s.$ti.c;s.u();){p=s.d +if(p==null)q.a(p) +p=$.du().c +p===$&&A.b() +p.qQ("TextInput.requestAutofill",r)}}, +aD0(a,b){var s,r,q,p +if(this.d==null)return +for(s=$.du().b,s=A.ee(s,s.r,A.k(s).c),r=s.$ti.c,q=t.H;s.u();){p=s.d +if((p==null?r.a(p):p)!==b){p=$.du().c +p===$&&A.b() +p.e6("TextInput.setEditingState",a.WY(),q)}}$.du().d.r.aOW(a)}} +A.aXK.prototype={ +$0(){var s=null +return A.a([A.kY("call",this.a,!0,B.bk,s,!1,s,s,B.aS,s,!1,!0,!0,B.c6,s,t.Pw)],t.R)}, +$S:42} +A.aXI.prototype={ +$1(a){return a}, +$S:436} +A.aXH.prototype={ +$1(a){var s,r,q,p=this.b,o=p[0],n=p[1],m=p[2] +p=p[3] +s=this.a.f +r=s.i(0,a) +p=r==null?null:r.aKq(new A.I(o,n,o+m,n+p)) +if(p!==!0)return!1 +p=s.i(0,a) +q=p==null?null:p.grX(p) +if(q==null)q=B.Y +if(!q.l(0,B.Y))p=isNaN(q.a)||isNaN(q.b)||isNaN(q.c)||isNaN(q.d)||q.gaaM(q) +else p=!0 +return!p}, +$S:10} +A.aXJ.prototype={ +$1(a){var s,r,q=this.a.f.i(0,a),p=q.grX(q) +q=[a] +s=p.a +r=p.b +B.b.I(q,[s,r,p.c-s,p.d-r]) +return q}, +$S:437} +A.aXL.prototype={ +$0(){var s=this.a +s.w=!1 +if(s.d==null)s.auC()}, +$S:0} +A.OE.prototype={} +A.aj2.prototype={ +afF(a){var s,r=$.du().c +r===$&&A.b() +s=A.ab(a).h("ad<1,e>") +r.e6("TextInput.setSelectionRects",A.aa(new A.ad(a,new A.b7L(),s),!0,s.h("ax.E")),t.H)}} +A.b7L.prototype={ +$1(a){var s=a.b,r=s.a,q=s.b +return A.a([r,q,s.c-r,s.d-q,a.a,a.c.a],t.a0)}, +$S:438} +A.aoQ.prototype={} +A.aax.prototype={ +K(){return"UndoDirection."+this.b}} +A.aay.prototype={ +gaCO(){var s=this.a +s===$&&A.b() +return s}, +QK(a){return this.aus(a)}, +aus(a){var s=0,r=A.y(t.z),q,p=this,o,n +var $async$QK=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:n=t.j.a(a.b) +if(a.a==="UndoManagerClient.handleUndo"){o=p.b +o.toString +o.aIX(p.aCk(A.bs(J.b3(n,0)))) +s=1 +break}throw A.c(A.bjh(null)) +case 1:return A.w(q,r)}}) +return A.x($async$QK,r)}, +aCk(a){switch(a){case"undo":return B.akU +case"redo":return B.akV}throw A.c(A.BL(A.a([A.ts("Unknown undo direction: "+a)],t.R)))}} +A.aZ1.prototype={} +A.bdT.prototype={ +$1(a){this.a.sdX(a) +return!1}, +$S:44} +A.bB.prototype={} +A.c7.prototype={ +iX(a){this.b=a}, +tn(a,b){return this.gpL()}, +CC(a,b){var s=this +if(A.k(s).h("f2").b(s))return s.tp(0,a,b) +return s.tn(0,a)}, +gpL(){return!0}, +zI(a){return!0}, +WZ(a,b){return this.zI(a)?B.hj:B.jg}, +D6(a,b){var s=this +if(A.k(s).h("f2").b(s))return s.hg(a,b) +return s.hf(a)}, +SS(a){var s=this.a +s.b=!0 +s.a.push(a) +return null}, +MR(a){return this.a.F(0,a)}, +fC(a){return new A.Sb(this,a,!1,!1,!1,!1,new A.bb(A.a([],t.h),t.d),A.k(this).h("Sb"))}} +A.f2.prototype={ +tp(a,b,c){return this.agp(0,b)}, +tn(a,b){return this.tp(a,b,null)}, +fC(a){return new A.Sc(this,a,!1,!1,!1,!1,new A.bb(A.a([],t.h),t.d),A.k(this).h("Sc"))}} +A.cq.prototype={ +hf(a){return this.c.$1(a)}} +A.arg.prototype={ +aaG(a,b,c){return a.D6(b,c)}, +aKg(a,b,c){if(a.CC(b,c))return new A.nH(!0,a.D6(b,c)) +return B.ac6}} +A.pB.prototype={ +a8(){return new A.Pu(A.aY(t.od),new A.B(),B.m)}} +A.ari.prototype={ +$1(a){var s=a.f +s.toString +t.L1.a(s) +return!1}, +$S:84} +A.arl.prototype={ +$1(a){var s,r=this,q=a.f +q.toString +s=A.arh(t.L1.a(q),r.b,r.d) +if(s!=null){r.c.Ok(a,null) +r.a.a=s +return!0}return!1}, +$S:84} +A.arj.prototype={ +$1(a){var s,r=a.f +r.toString +s=A.arh(t.L1.a(r),this.b,this.c) +if(s!=null){this.a.a=s +return!0}return!1}, +$S:84} +A.ark.prototype={ +$1(a){var s,r,q=this,p=a.f +p.toString +s=q.b +r=A.arh(t.L1.a(p),s,q.d) +p=r!=null +if(p&&r.CC(s,q.c))q.a.a=A.bhA(a).aaG(r,s,q.c) +return p}, +$S:84} +A.arm.prototype={ +$1(a){var s,r,q=this,p=a.f +p.toString +s=q.b +r=A.arh(t.L1.a(p),s,q.d) +p=r!=null +if(p&&r.CC(s,q.c))q.a.a=A.bhA(a).aaG(r,s,q.c) +return p}, +$S:84} +A.Pu.prototype={ +aR(){this.b5() +this.a5v()}, +arw(a){this.a7(new A.b_Q(this))}, +a5v(){var s,r,q,p,o=this,n=o.a.d +n=n.gbw(n) +s=A.i2(n,A.k(n).h("z.E")) +r=o.d.wR(s) +n=o.d +n.toString +q=s.wR(n) +for(n=r.gaj(r),p=o.ga1v();n.u();)n.gH(n).MR(p) +for(n=q.gaj(q);n.u();)n.gH(n).SS(p) +o.d=s}, +aY(a){this.br(a) +this.a5v()}, +m(){var s,r,q,p,o=this +o.aZ() +for(s=o.d,s=A.ee(s,s.r,A.k(s).c),r=o.ga1v(),q=s.$ti.c;s.u();){p=s.d;(p==null?q.a(p):p).MR(r)}o.d=null}, +A(a){var s=this.a +return new A.Pt(null,s.d,this.e,s.e,null)}} +A.b_Q.prototype={ +$0(){this.a.e=new A.B()}, +$S:0} +A.Pt.prototype={ +dr(a){var s +if(this.w===a.w)s=!A.bfW(a.r,this.r) +else s=!0 +return s}} +A.wW.prototype={ +a8(){return new A.R1(new A.bo(null,t.C),B.m)}} +A.R1.prototype={ +aR(){this.b5() +$.cF.p3$.push(new A.b4d(this)) +$.ar.al$.f.a.d.G(0,this.ga1C())}, +m(){$.ar.al$.f.a.d.F(0,this.ga1C()) +this.aZ()}, +a5O(a){this.ID(new A.b4b(this))}, +asq(a){if(this.c==null)return +this.a5O(a)}, +asQ(a){if(!this.e)this.ID(new A.b46(this))}, +asS(a){if(this.e)this.ID(new A.b47(this))}, +asm(a){var s,r=this +if(r.f!==a){r.ID(new A.b45(r,a)) +s=r.a.Q +if(s!=null)s.$1(r.f)}}, +a2t(a,b){var s,r,q,p,o,n,m=this,l=new A.b4a(m),k=new A.b49(m,new A.b48(m)) +if(a==null){s=m.a +s.toString +r=s}else r=a +q=l.$1(r) +p=k.$1(r) +if(b!=null)b.$0() +s=m.a +s.toString +o=l.$1(s) +s=m.a +s.toString +n=k.$1(s) +if(p!==n)m.a.y.$1(n) +if(q!==o){l=m.a.z +if(l!=null)l.$1(o)}}, +ID(a){return this.a2t(null,a)}, +aw3(a){return this.a2t(a,null)}, +aY(a){this.br(a) +if(this.a.c!==a.c)$.cF.p3$.push(new A.b4c(this,a))}, +ganB(){var s,r=this.c +r.toString +r=A.cT(r,B.fR) +s=r==null?null:r.ax +switch((s==null?B.fp:s).a){case 0:return this.a.c +case 1:return!0}}, +A(a){var s,r,q,p=this,o=null,n=p.a,m=n.as +n=n.d +s=p.ganB() +r=p.a +q=A.mX(A.tz(!1,s,r.ax,o,!0,!0,n,!0,o,p.gasl(),o,o,o,o),m,p.r,p.gasP(),p.gasR(),o) +n=r.c +if(n)m=r.w.a!==0 +else m=!1 +if(m)q=A.pC(r.w,q) +if(n){n=r.x +n=n!=null&&n.gdn(n)}else n=!1 +if(n){n=p.a.x +n.toString +q=A.NI(q,o,n)}return q}} +A.b4d.prototype={ +$1(a){var s=$.ar.al$.f.a.b +if(s==null)s=A.zG() +this.a.a5O(s)}, +$S:6} +A.b4b.prototype={ +$0(){var s=$.ar.al$.f.a.b +switch((s==null?A.zG():s).a){case 0:this.a.d=!1 +break +case 1:this.a.d=!0 +break}}, +$S:0} +A.b46.prototype={ +$0(){this.a.e=!0}, +$S:0} +A.b47.prototype={ +$0(){this.a.e=!1}, +$S:0} +A.b45.prototype={ +$0(){this.a.f=this.b}, +$S:0} +A.b4a.prototype={ +$1(a){var s=this.a +return s.e&&a.c&&s.d}, +$S:171} +A.b48.prototype={ +$1(a){var s,r=this.a.c +r.toString +r=A.cT(r,B.fR) +s=r==null?null:r.ax +switch((s==null?B.fp:s).a){case 0:return a.c +case 1:return!0}}, +$S:171} +A.b49.prototype={ +$1(a){var s=this.a +return s.f&&s.d&&this.b.$1(a)}, +$S:171} +A.b4c.prototype={ +$1(a){this.a.aw3(this.b)}, +$S:6} +A.aaZ.prototype={ +hf(a){a.aPI() +return null}} +A.Ji.prototype={ +zI(a){return this.c}, +hf(a){}} +A.rU.prototype={} +A.t3.prototype={} +A.kf.prototype={} +A.a0a.prototype={} +A.qH.prototype={} +A.a6x.prototype={ +tp(a,b,c){var s,r,q,p,o,n=$.ar.al$.f.c +if(n==null||n.e==null)return!1 +for(s=t.vz,r=0;r<2;++r){q=B.a0A[r] +p=n.e +p.toString +o=A.bhC(p,q,s) +if(o!=null&&o.CC(q,c)){this.e=o +this.f=q +return!0}}return!1}, +tn(a,b){return this.tp(a,b,null)}, +hg(a,b){var s,r=this.e +r===$&&A.b() +s=this.f +s===$&&A.b() +r.D6(s,b)}, +hf(a){return this.hg(a,null)}} +A.Gp.prototype={ +a24(a,b,c){var s +a.iX(this.guL()) +s=a.D6(b,c) +a.iX(null) +return s}, +hg(a,b){var s=this,r=A.bhB(s.gFw(),A.k(s).c) +return r==null?s.aaI(a,s.b,b):s.a24(r,a,b)}, +hf(a){return this.hg(a,null)}, +gpL(){var s,r,q=this,p=A.bhC(q.gFw(),null,A.k(q).c) +if(p!=null){p.iX(q.guL()) +s=p.gpL() +p.iX(null) +r=s}else r=q.guL().gpL() +return r}, +tp(a,b,c){var s,r=this,q=A.bhB(r.gFw(),A.k(r).c),p=q==null +if(!p)q.iX(r.guL()) +s=(p?r.guL():q).CC(b,c) +if(!p)q.iX(null) +return s}, +tn(a,b){return this.tp(a,b,null)}, +zI(a){var s,r=this,q=A.bhB(r.gFw(),A.k(r).c),p=q==null +if(!p)q.iX(r.guL()) +s=(p?r.guL():q).zI(a) +if(!p)q.iX(null) +return s}} +A.Sb.prototype={ +aaI(a,b,c){var s=this.e +if(b==null)return s.hf(a) +else return s.hf(a)}, +guL(){return this.e}, +gFw(){return this.f}} +A.Sc.prototype={ +a24(a,b,c){var s +c.toString +a.iX(new A.Qf(c,this.e,new A.bb(A.a([],t.h),t.d),this.$ti.h("Qf<1>"))) +s=a.D6(b,c) +a.iX(null) +return s}, +aaI(a,b,c){var s=this.e +if(b==null)return s.hg(a,c) +else return s.hg(a,c)}, +guL(){return this.e}, +gFw(){return this.f}} +A.Qf.prototype={ +iX(a){this.d.iX(a)}, +tn(a,b){return this.d.tp(0,b,this.c)}, +gpL(){return this.d.gpL()}, +zI(a){return this.d.zI(a)}, +SS(a){var s +this.ago(a) +s=this.d.a +s.b=!0 +s.a.push(a)}, +MR(a){this.agq(a) +this.d.a.F(0,a)}, +hf(a){return this.d.hg(a,this.c)}} +A.ad0.prototype={} +A.acZ.prototype={} +A.ah0.prototype={} +A.Vm.prototype={ +iX(a){this.YD(a) +this.e.iX(a)}} +A.Vn.prototype={ +iX(a){this.YD(a) +this.e.iX(a)}} +A.HC.prototype={ +a8(){return new A.adb(null,null,B.m)}} +A.adb.prototype={ +A(a){var s=this.a +return new A.ada(B.X,s.e,s.f,null,this,B.E,s.c,null)}, +$iaN:1} +A.ada.prototype={ +aX(a){var s=this +return A.bJf(s.e,s.y,s.f,s.r,s.w,A.eF(a),s.x)}, +b4(a,b){var s,r=this +b.sjy(r.e) +b.sED(0,r.r) +b.saO3(r.w) +b.saGI(0,r.f) +b.saPf(r.x) +b.scF(A.eF(a)) +s=r.y +if(s!==b.pB){b.pB=s +b.aU() +b.bX()}}} +A.ao5.prototype={ +m(){var s=this,r=s.c4$ +if(r!=null)r.J(0,s.ghI()) +s.c4$=null +s.aZ()}, +cn(){this.d3() +this.cT() +this.hJ()}} +A.v6.prototype={ +j(a){return"Entry#"+A.bt(this)+"("+this.d.j(0)+")"}} +A.HD.prototype={ +a8(){return new A.Pw(A.aY(t.Ie),B.a1N,null,null,B.m)}, +aOO(a,b){return this.w.$2(a,b)}, +aKN(a,b){return this.x.$2(a,b)}} +A.Pw.prototype={ +aR(){this.b5() +this.ZG(!1)}, +aY(a){var s,r,q,p=this +p.br(a) +if(!J.i(p.a.w,a.w)){p.e.af(0,p.gaDx()) +s=p.d +if(s!=null)p.SG(s) +p.f=null}s=p.a.c +r=s!=null +q=p.d +if(r===(q!=null))if(r){q=q.d +s=!(A.o(s)===A.o(q)&&J.i(s.a,q.a))}else s=!1 +else s=!0 +if(s){++p.r +p.ZG(!0)}else{s=p.d +if(s!=null){q=p.a.c +q.toString +s.d=q +p.SG(s) +p.f=null}}}, +ZG(a){var s,r,q,p=this,o=p.d +if(o!=null){p.e.G(0,o) +p.d.a.d9(0) +p.d=p.f=null}o=p.a +if(o.c==null)return +s=A.bw(B.z,null,o.d,0,o.e,1,null,p) +o=p.a +r=A.c_(o.f,s,o.r) +o=p.a +q=o.c +q.toString +p.d=p.awz(r,o.w,q,s) +if(a)s.bS(0) +else s.sk(0,1)}, +awz(a,b,c,d){var s=new A.v6(d,a,A.bH8(b.$2(c,a),this.r),c) +a.a.f4(new A.b08(this,s,d)) +return s}, +SG(a){var s=a.c +a.c=new A.ir(this.a.aOO(a.d,a.b),s.a)}, +ayZ(){if(this.f==null){var s=this.e +this.f=A.i3(new A.pV(s,new A.b09(),A.k(s).h("pV<1,d>")),t.l7)}}, +m(){var s,r,q,p,o,n=this.d +if(n!=null)n.a.m() +for(n=this.e,n=A.ee(n,n.r,A.k(n).c),s=n.$ti.c;n.u();){r=n.d +r=(r==null?s.a(r):r).a +r.r.m() +r.r=null +q=r.eo$ +q.b=!1 +B.b.ab(q.a) +p=q.c +if(p===$){o=A.dN(q.$ti.c) +q.c!==$&&A.am() +q.c=o +p=o}if(p.a>0){p.b=p.c=p.d=p.e=null +p.a=0}q=r.dB$ +q.b=!1 +B.b.ab(q.a) +p=q.c +if(p===$){o=A.dN(q.$ti.c) +q.c!==$&&A.am() +q.c=o +p=o}if(p.a>0){p.b=p.c=p.d=p.e=null +p.a=0}r.Cr()}this.akr()}, +A(a){var s,r,q,p,o=this +o.ayZ() +s=o.a +s.toString +r=o.d +r=r==null?null:r.c +q=o.f +q.toString +p=A.ab(q).h("be<1>") +p=A.i2(new A.be(q,new A.b0a(o),p),p.h("z.E")) +return s.aKN(r,A.aa(p,!0,A.k(p).c))}, +$iaN:1} +A.b08.prototype={ +$1(a){var s +if(a===B.Q){s=this.a +s.a7(new A.b07(s,this.b)) +this.c.m()}}, +$S:9} +A.b07.prototype={ +$0(){var s=this.a +s.e.F(0,this.b) +s.f=null}, +$S:0} +A.b09.prototype={ +$1(a){return a.c}, +$S:444} +A.b0a.prototype={ +$1(a){var s=this.a.d +s=s==null?null:s.c.a +return!J.i(a.a,s)}, +$S:445} +A.UV.prototype={ +cn(){this.d3() +this.cT() +this.es()}, +m(){var s=this,r=s.b_$ +if(r!=null)r.J(0,s.gej()) +s.b_$=null +s.aZ()}} +A.HJ.prototype={ +aX(a){var s=new A.MK(this.e,!0,null,A.aB(t.T),this.$ti.h("MK<1>")) +s.aW() +s.sbN(null) +return s}, +b4(a,b){b.sk(0,this.e) +b.sag_(!0)}} +A.Fc.prototype={ +a8(){return new A.Ur(B.m)}} +A.Ur.prototype={ +gauP(){$.ar.toString +var s=$.bL() +if(s.gKM()!=="/"){$.ar.toString +s=s.gKM()}else{this.a.toString +$.ar.toString +s=s.gKM()}return s}, +aR(){var s=this +s.b5() +s.aDj() +$.ar.toString +s.r=s.RZ($.bL().a.f,s.a.fy) +$.ar.cI$.push(s)}, +aY(a){this.br(a) +this.a5Z(a)}, +m(){B.b.F($.ar.cI$,this) +var s=this.d +if(s!=null)s.m() +this.aZ()}, +a_D(){var s=this.d +if(s!=null)s.m() +this.e=this.d=null}, +a5Z(a){var s,r=this +r.a.toString +if(r.ga6f()){r.a_D() +if(r.f!=null){r.a.toString +a.toString +s=!1}else s=!0 +if(s){s=r.a.c +r.f=new A.q9(r,t.rO)}}else{r.a_D() +r.f=null}}, +aDj(){return this.a5Z(null)}, +ga6f(){this.a.toString +var s=!1 +return s}, +ax9(a){var s,r=a.a +if(r==="/")this.a.toString +s=this.a.as.i(0,r) +return this.a.f.$1$2(a,s,t.z)}, +axG(a){return this.a.at.$1(a)}, +EA(){var s=0,r=A.y(t.y),q,p=this,o,n +var $async$EA=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:p.a.toString +o=p.f +n=o==null?null:o.gR() +if(n==null){q=!1 +s=1 +break}q=n.M3() +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$EA,r)}, +A1(a){return this.aH5(a)}, +aH5(a){var s=0,r=A.y(t.y),q,p=this,o,n,m,l +var $async$A1=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:p.a.toString +o=p.f +n=o==null?null:o.gR() +if(n==null){q=!1 +s=1 +break}m=a.ghm() +o=m.gdN(m).length===0?"/":m.gdN(m) +l=m.gtF() +l=l.gai(l)?null:m.gtF() +o=A.f7(m.goP().length===0?null:m.goP(),null,o,null,l,null).gwq() +l=t.X +o=n.S2(A.lv(o,0,o.length,B.O,!1),null,l) +o.toString +n.Bk(o,l) +q=!0 +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$A1,r)}, +RZ(a,b){this.a.toString +return A.bQQ(a,b)}, +a8H(a){var s=this,r=s.RZ(a,s.a.fy) +if(!r.l(0,s.r))s.a7(new A.bcI(s,r))}, +A(a){var s,r,q,p,o,n,m,l,k=this,j=null,i={} +i.a=null +k.a.toString +if(k.ga6f()){s=k.f +r=k.gauP() +q=k.a +q=q.ay +q.toString +i.a=A.aC7(!0,A.bqV(B.l,r,s,q,A.bx2(),k.gax8(),j,k.gaxF(),B.a1R,!0,!0,"nav"),"Navigator Scope",j,j)}else{s=k.a.z +if(s!=null){r=s.d +r===$&&A.b() +q=s.e +q===$&&A.b() +p=s.c +p===$&&A.b() +i.a=new A.DM(r,q,p,s.b,"router",j,t.SB)}}i.b=null +s=k.a +s.toString +o=new A.ej(new A.bcG(i,k),j) +i.b=o +i.b=A.fw(o,j,j,B.aR,!0,s.cy,j,j,B.aq) +s=k.a +s=s.dx +if(s!=null)n=k.RZ(A.a([s],t.ss),k.a.fy) +else{s=k.r +s.toString +n=s}s=k.a.p3 +r=A.bLC() +q=A.oo($.bzF(),t.n,t.od) +q.p(0,B.pb,new A.Ng(new A.bb(A.a([],t.h),t.d)).fC(a)) +p=A.bjA() +m=t.a9 +l=A.a([],m) +B.b.I(l,k.a.dy) +l.push(B.OP) +m=A.a(l.slice(0),m) +return new A.N8(new A.NE(A.NI(new A.a_W(A.pC(q,A.bpC(new A.a9V(new A.NG(new A.KW(n,m,new A.ej(new A.bcH(i,k),j),j),j),j),p)),j),"",r),j),s,j)}} +A.bcI.prototype={ +$0(){this.a.r=this.b}, +$S:0} +A.bcG.prototype={ +$1(a){return this.b.a.ch.$2(a,this.a.a)}, +$S:12} +A.bcH.prototype={ +$1(a){var s=this.b,r=s.a.cx.$1(a) +s=s.a.db +return new A.ER(r,A.K(255,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255),this.a.b,null)}, +$S:448} +A.apQ.prototype={} +A.Ap.prototype={ +a8(){return new A.PK(B.m)}} +A.PK.prototype={ +aR(){this.b5() +this.a5B()}, +aY(a){this.br(a) +this.a5B()}, +a5B(){this.e=new A.dP(this.gam6(),this.a.c,null,t.Jd)}, +m(){var s,r,q=this.d +if(q!=null)for(q=A.i1(q,q.r,A.k(q).c);q.u();){s=q.d +r=this.d.i(0,s) +r.toString +s.J(0,r)}this.aZ()}, +am7(a){var s,r=this,q=a.a,p=r.d +if(p==null)p=r.d=A.F(t.I_,t.Q) +p.p(0,q,r.aoH(q)) +p=r.d.i(0,q) +p.toString +q.P(0,p) +if(!r.f){r.f=!0 +s=r.a0Y() +if(s!=null)r.a5S(s) +else $.cF.p3$.push(new A.b0u(r))}return!1}, +a0Y(){var s={},r=this.c +r.toString +s.a=null +r.ck(new A.b0z(s)) +return t.xO.a(s.a)}, +a5S(a){var s,r +this.c.toString +s=this.f +r=this.e +r===$&&A.b() +a.a__(t.Fw.a(A.bH2(r,s)))}, +aoH(a){var s=A.b4("callback"),r=new A.b0y(this,a,s) +s.sdX(r) +return r}, +A(a){var s=this.f,r=this.e +r===$&&A.b() +return new A.KE(s,r,null)}} +A.b0u.prototype={ +$1(a){var s,r=this.a +if(r.c==null)return +s=r.a0Y() +s.toString +r.a5S(s)}, +$S:6} +A.b0z.prototype={ +$1(a){this.a.a=a}, +$S:22} +A.b0y.prototype={ +$0(){var s=this.a,r=this.b +s.d.F(0,r) +r.J(0,this.c.aF()) +if(s.d.a===0)if($.cF.RG$.a<3)s.a7(new A.b0w(s)) +else{s.f=!1 +A.h_(new A.b0x(s))}}, +$S:0} +A.b0w.prototype={ +$0(){this.a.f=!1}, +$S:0} +A.b0x.prototype={ +$0(){var s=this.a +if(s.c!=null&&s.d.a===0)s.a7(new A.b0v(s))}, +$S:0} +A.b0v.prototype={ +$0(){}, +$S:0} +A.Cj.prototype={} +A.KF.prototype={ +m(){this.ag() +this.eH()}} +A.vW.prototype={ +CV(){var s=new A.KF($.b5()) +this.mN$=s +this.c.iv(new A.Cj(s))}, +xO(){var s,r=this +if(r.gGB()){if(r.mN$==null)r.CV()}else{s=r.mN$ +if(s!=null){s.ag() +s.eH() +r.mN$=null}}}, +A(a){if(this.gGB()&&this.mN$==null)this.CV() +return B.aow}} +A.aiF.prototype={ +A(a){throw A.c(A.ty("Widgets that mix AutomaticKeepAliveClientMixin into their State must call super.build() but must ignore the return value of the superclass."))}} +A.anB.prototype={ +Ya(a,b){}, +xv(a){A.buo(this,new A.bcl(this,a))}} +A.bcl.prototype={ +$1(a){var s=a.z +if(s!=null&&s.n(0,this.a))a.cp()}, +$S:22} +A.bck.prototype={ +$1(a){A.buo(a,this.a)}, +$S:22} +A.anC.prototype={ +bJ(a){return new A.anB(A.cx(null,null,null,t.F,t.X),this,B.al)}} +A.lG.prototype={ +dr(a){return this.w!==a.w}} +A.a5E.prototype={ +aX(a){var s=this.e +s=new A.a7k(B.e.bi(A.aq3(s,0,1)*255),s,!1,null,A.aB(t.T)) +s.aW() +s.sbN(null) +return s}, +b4(a,b){b.sBc(0,this.e) +b.sK9(!1)}} +A.Xk.prototype={ +aX(a){var s=new A.a76(this.e,B.eQ,null,A.aB(t.T)) +s.aW() +s.sbN(null) +return s}, +b4(a,b){b.shd(0,this.e) +b.swB(B.eQ)}} +A.J3.prototype={ +aX(a){var s=new A.MN(this.e,this.f,this.r,!1,!1,null,A.aB(t.T)) +s.aW() +s.sbN(null) +return s}, +b4(a,b){b.sxy(this.e) +b.sa9E(this.f) +b.sr3(this.r) +b.fG=b.cu=!1}, +EC(a){a.sxy(null) +a.sa9E(null)}} +A.AV.prototype={ +aX(a){var s=new A.a7a(null,this.f,null,A.aB(t.T)) +s.aW() +s.sbN(null) +return s}, +b4(a,b){b.szC(null) +b.smq(this.f)}, +EC(a){a.szC(null)}} +A.Yp.prototype={ +aX(a){var s=new A.a79(this.e,A.eF(a),null,this.r,null,A.aB(t.T)) +s.aW() +s.sbN(null) +return s}, +b4(a,b){b.sTm(0,this.e) +b.smq(this.r) +b.szC(null) +b.scF(A.eF(a))}} +A.AS.prototype={ +aX(a){var s=new A.a78(this.e,this.f,null,A.aB(t.T)) +s.aW() +s.sbN(null) +return s}, +b4(a,b){b.szC(this.e) +b.smq(this.f)}, +EC(a){a.szC(null)}} +A.aw2.prototype={ +$1(a){return A.aw0(this.c,this.b,new A.uF(this.a,A.eF(a)))}, +$S:451} +A.a6h.prototype={ +aX(a){var s=this,r=new A.a7l(s.e,s.r,s.w,s.y,s.x,null,s.f,null,A.aB(t.T)) +r.aW() +r.sbN(null) +return r}, +b4(a,b){var s=this +b.scG(0,s.e) +b.smq(s.f) +b.sTm(0,s.r) +b.sfl(0,s.w) +b.sa5(0,s.x) +b.sbR(0,s.y)}} +A.a6i.prototype={ +aX(a){var s=this,r=new A.a7m(s.r,s.x,s.w,s.e,s.f,null,A.aB(t.T)) +r.aW() +r.sbN(null) +return r}, +b4(a,b){var s=this +b.szC(s.e) +b.smq(s.f) +b.sfl(0,s.r) +b.sa5(0,s.w) +b.sbR(0,s.x)}} +A.p1.prototype={ +aX(a){var s=this,r=A.eF(a),q=new A.a7C(s.w,null,A.aB(t.T)) +q.aW() +q.sbN(null) +q.sda(0,s.e) +q.sjy(s.r) +q.scF(r) +q.sv2(s.x) +q.sBe(0,null) +return q}, +b4(a,b){var s=this +b.sda(0,s.e) +b.sBe(0,null) +b.sjy(s.r) +b.scF(A.eF(a)) +b.cu=s.w +b.sv2(s.x)}} +A.wc.prototype={ +aX(a){var s=new A.a7h(this.e,null,A.aB(t.T)) +s.aW() +s.sbN(null) +return s}, +b4(a,b){b.sxn(this.e)}} +A.AZ.prototype={ +aX(a){var s=new A.a7d(this.e,this.f,this.x,B.eO,B.eO,null,A.aB(t.T)) +s.aW() +s.sbN(null) +return s}, +b4(a,b){b.sxn(this.e) +b.safU(this.f) +b.sc6(0,this.x) +b.saKP(B.eO) +b.saI8(B.eO)}} +A.a1f.prototype={ +aX(a){var s=new A.a7e(this.e,this.f,null,A.aB(t.T)) +s.aW() +s.sbN(null) +return s}, +b4(a,b){b.saOR(this.e) +b.a0=this.f}} +A.b8.prototype={ +aX(a){var s=new A.MX(this.e,A.eF(a),null,A.aB(t.T)) +s.aW() +s.sbN(null) +return s}, +b4(a,b){b.sdE(0,this.e) +b.scF(A.eF(a))}} +A.e5.prototype={ +aX(a){var s=new A.a7o(this.f,this.r,this.e,A.eF(a),null,A.aB(t.T)) +s.aW() +s.sbN(null) +return s}, +b4(a,b){b.sjy(this.e) +b.saPh(this.f) +b.saJv(this.r) +b.scF(A.eF(a))}} +A.t8.prototype={} +A.kV.prototype={ +aX(a){var s=new A.MO(this.e,null,A.aB(t.T)) +s.aW() +s.sbN(null) +return s}, +b4(a,b){b.sdg(this.e)}} +A.KJ.prototype={ +zm(a){var s,r,q=a.b +q.toString +t.Wz.a(q) +s=this.f +if(q.e!==s){q.e=s +r=a.gbP(a) +if(r instanceof A.H)r.a6()}}} +A.tk.prototype={ +aX(a){var s=new A.MM(this.e,0,null,null,A.aB(t.T)) +s.aW() +s.I(0,null) +return s}, +b4(a,b){b.sdg(this.e)}} +A.ez.prototype={ +aX(a){return A.brD(A.ii(this.f,this.e))}, +b4(a,b){b.sT3(A.ii(this.f,this.e))}, +f2(){var s,r=this,q=r.e +if(q===1/0&&r.f===1/0)s="SizedBox.expand" +else s=q===0&&r.f===0?"SizedBox.shrink":"SizedBox" +q=r.a +return q==null?s:s+"-"+q.j(0)}} +A.ew.prototype={ +aX(a){return A.brD(this.e)}, +b4(a,b){b.sT3(this.e)}} +A.a2I.prototype={ +aX(a){var s=new A.a7i(this.e,this.f,null,A.aB(t.T)) +s.aW() +s.sbN(null) +return s}, +b4(a,b){b.saLk(0,this.e) +b.saLj(0,this.f)}} +A.CX.prototype={ +aX(a){var s=new A.MW(this.e,null,A.aB(t.T)) +s.aW() +s.sbN(null) +return s}, +b4(a,b){b.sMa(this.e)}, +bJ(a){return new A.aiM(this,B.al)}} +A.aiM.prototype={} +A.a2b.prototype={ +aX(a){var s=null,r=this.e +if(r===0)r=s +r=new A.MT(r,s,s,A.aB(t.T)) +r.aW() +r.sbN(s) +return r}, +b4(a,b){var s=this.e +b.sage(s===0?null:s) +b.sagd(null)}} +A.iy.prototype={ +aX(a){var s=new A.a7B(null,A.aB(t.T)) +s.aW() +s.sbN(null) +return s}} +A.yU.prototype={ +aX(a){var s=a.ae(t.I) +s.toString +s=new A.a7z(this.e,s.w,null,A.aB(t.T)) +s.aW() +s.sbN(null) +return s}, +b4(a,b){var s +b.sdE(0,this.e) +s=a.ae(t.I) +s.toString +b.scF(s.w)}} +A.a2J.prototype={ +aX(a){var s=new A.MU(A.bfs(a,B.R,!1),0,null,null,A.aB(t.T)) +s.aW() +s.I(0,null) +return s}, +b4(a,b){b.skT(A.bfs(a,B.R,!1))}} +A.uN.prototype={ +aX(a){var s=A.eF(a) +return A.bJm(this.e,null,this.w,this.r,s)}, +b4(a,b){var s +b.sjy(this.e) +s=A.eF(a) +b.scF(s) +b.sLk(this.r) +b.smq(this.w)}} +A.a23.prototype={ +A(a){var s,r,q=this.w,p=q.length,o=J.om(p,t.l7) +for(s=this.r,r=0;r0&&n.b>0){n=a.gcR(a) +s=o.gq(o) +r=b.a +q=b.b +p=$.as().bn() +p.sa5(0,o.ee) +n.el(new A.I(r,q,r+s.a,q+s.b),p)}n=o.E$ +if(n!=null)a.eg(n,b)}} +A.bcK.prototype={ +$1(a){var s=a==null?t.K.a(a):a +return this.a.v7(s)}, +$S:452} +A.hj.prototype={ +EA(){return A.d3(!1,t.y)}, +a8L(a){return A.d3(!1,t.y)}, +A1(a){var s=null,r=a.ghm(),q=r.gdN(r).length===0?"/":r.gdN(r),p=r.gtF() +p=p.gai(p)?s:r.gtF() +q=A.f7(r.goP().length===0?s:r.goP(),s,q,s,p,s).gwq() +return this.a8L(A.lv(q,0,q.length,B.O,!1))}, +Ua(){}, +a8J(){}, +a8I(){}, +a8H(a){}, +a8G(a){}, +Uf(){var s=0,r=A.y(t.s1),q +var $async$Uf=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:q=B.pQ +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$Uf,r)}} +A.P6.prototype={ +Lr(){var s=0,r=A.y(t.s1),q,p=this,o,n,m,l +var $async$Lr=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:o=p.cI$,n=o.length,m=!1,l=0 +case 3:if(!(l"))}, +aX(a){return this.d}, +b4(a,b){}, +aEy(a,b){var s,r={} +r.a=b +if(b==null){a.aba(new A.aP9(r,this,a)) +s=r.a +s.toString +a.E9(s,new A.aPa(r))}else{b.p2=this +b.ef()}r=r.a +r.toString +return r}, +f2(){return this.e}} +A.aP9.prototype={ +$0(){var s=this.b,r=A.bJj(s,s.$ti.c) +this.a.a=r +r.r=this.c}, +$S:0} +A.aPa.prototype={ +$0(){var s=this.a.a +s.toString +s.Zr(null,null) +s.IV()}, +$S:0} +A.uv.prototype={ +ck(a){var s=this.p1 +if(s!=null)a.$1(s)}, +oN(a){this.p1=null +this.qa(a)}, +hU(a,b){this.Zr(a,b) +this.IV()}, +c_(a,b){this.rE(0,b) +this.IV()}, +pS(){var s=this,r=s.p2 +if(r!=null){s.p2=null +s.rE(0,s.$ti.h("yr<1>").a(r)) +s.IV()}s.Ou()}, +IV(){var s,r,q,p,o,n,m,l=this +try{o=l.p1 +n=l.f +n.toString +l.p1=l.fM(o,l.$ti.h("yr<1>").a(n).c,B.iJ)}catch(m){s=A.ai(m) +r=A.aH(m) +o=A.bX("attaching to the render tree") +q=new A.cc(s,r,"widgets library",o,null,!1) +A.dV(q) +p=A.JG(q) +l.p1=l.fM(null,p,B.iJ)}}, +ga9(){return this.$ti.h("b1<1>").a(A.c0.prototype.ga9.call(this))}, +oT(a,b){var s=this.$ti +s.h("b1<1>").a(A.c0.prototype.ga9.call(this)).sbN(s.c.a(a))}, +oV(a,b,c){}, +q1(a,b){this.$ti.h("b1<1>").a(A.c0.prototype.ga9.call(this)).sbN(null)}} +A.ab_.prototype={$iaC:1} +A.SO.prototype={ +hU(a,b){this.vU(a,b)}} +A.Us.prototype={ +mS(){this.agt() +$.iX=this +var s=$.bL() +s.Q=this.gatb() +s.as=$.a9}, +X4(){this.agv() +this.Q7()}} +A.Ut.prototype={ +mS(){this.akg() +$.cF=this}, +xe(){this.agu()}} +A.Uu.prototype={ +mS(){var s,r=this +r.aki() +$.ix=r +r.dG$!==$&&A.cl() +r.dG$=B.OB +s=new A.N6(A.aY(t.z4),$.b5()) +B.o3.tY(s.gawa()) +r.cS$=s +r.auO() +s=$.bqo +if(s==null)s=$.bqo=A.a([],t.iO) +s.push(r.gama()) +B.LG.NV(new A.bcK(r)) +B.LF.NV(r.gasF()) +B.by.tY(r.gat9()) +$.du() +r.aNa() +r.LH()}, +xe(){this.akj()}} +A.Uv.prototype={ +mS(){this.akk() +$.hC=this +var s=t.K +this.qH$=new A.aFq(A.F(s,t.Sc),A.F(s,t.B6),A.F(s,t.pt))}, +F3(){this.aiz() +var s=this.qH$ +s===$&&A.b() +s.ab(0)}, +v7(a){return this.aJg(a)}, +aJg(a){var s=0,r=A.y(t.H),q,p=this +var $async$v7=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:s=3 +return A.t(p.aiA(a),$async$v7) +case 3:switch(A.bs(J.b3(t.a.a(a),"type"))){case"fontsChange":p.ta$.ag() +break}s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$v7,r)}} +A.Uw.prototype={ +mS(){var s,r,q=this +q.akn() +$.a8g=q +s=$.bL() +q.Lb$=s.a.a +s.p2=q.gatS() +r=$.a9 +s.p3=r +s.p4=q.gatQ() +s.R8=r +q.a1K()}} +A.Ux.prototype={ +mS(){var s,r,q,p,o=this +o.ako() +$.a7E=o +s=t.TT +o.b6$=new A.Mi(o.gatT(),o.gatX(),o.gatV(),A.a([],s),A.a([],s),A.a([],s),A.aY(t.I9),A.aY(t.NA)) +s=$.bL() +s.f=o.gaIO() +r=s.r=$.a9 +s.go=o.gaJo() +s.id=r +s.k3=o.gaIW() +s.k4=r +r=o.a8p() +s=s.d.i(0,0) +s.toString +s=new A.a7D(B.x,r,s,null,A.aB(t.T)) +s.aW() +s.sbN(null) +r=o.b6$ +r===$&&A.b() +r.saO6(s) +s=o.b6$.e +s.Q=s +s.y.r.push(s) +r=s.a5P() +s.ch.sb3(0,r) +s.y.Q.push(s) +o.p2$.push(o.gat7()) +o.aJZ() +o.p3$.push(o.gaux()) +s=o.b6$ +q=o.aG$ +if(q===$){p=new A.PP(o,$.b5()) +o.gDA().P(0,p.geL()) +o.aG$!==$&&A.am() +o.aG$=p +q=p}s.aA(q)}, +xe(){this.akl()}} +A.Uy.prototype={ +V1(){var s,r,q +this.ai4() +for(s=this.cI$,r=s.length,q=0;q=s.b&&s.c>=s.d) +else s=!0}else s=!1 +if(s)m=new A.a2I(0,0,new A.ew(B.iE,n,n),n) +else{s=o.d +if(s!=null)m=new A.e5(s,n,n,m,n)}r=o.gaxL() +if(r!=null)m=new A.b8(r,m,n) +s=o.f +if(s!=null)m=new A.th(s,m,n) +s=o.as +if(s!==B.l){q=A.eF(a) +p=o.r +p.toString +m=A.aw0(m,s,new A.af1(q==null?B.j:q,p))}s=o.r +if(s!=null)m=A.tl(m,s,B.da) +s=o.w +if(s!=null)m=A.tl(m,s,B.rE) +s=o.x +if(s!=null)m=new A.ew(s,m,n) +s=o.y +if(s!=null)m=new A.b8(s,m,n) +m.toString +return m}} +A.af1.prototype={ +Nu(a){return this.c.GM(new A.I(0,0,0+a.a,0+a.b),this.b)}, +O_(a){return!a.c.l(0,this.c)||a.b!==this.b}} +A.wf.prototype={ +K(){return"ContextMenuButtonType."+this.b}} +A.ht.prototype={ +l(a,b){var s=this +if(b==null)return!1 +if(J.a1(b)!==A.o(s))return!1 +return b instanceof A.ht&&b.c==s.c&&J.i(b.a,s.a)&&b.b===s.b}, +gv(a){return A.X(this.c,this.a,this.b,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){return"ContextMenuButtonItem "+this.b.j(0)+", "+A.h(this.c)}} +A.YE.prototype={ +Yn(a,b,c){var s,r +A.bou() +s=A.aHq(b,t.N1) +s.toString +r=A.bqX(b) +if(r==null)r=null +else{r=r.c +r.toString}r=A.qu(new A.awv(A.Kr(b,r),c),!1) +$.B3=r +s.xf(0,r) +$.pP=this}, +er(a){if($.pP!==this)return +A.bou()}} +A.awv.prototype={ +$1(a){return new A.ra(this.a.a,this.b.$1(a),null)}, +$S:12} +A.tm.prototype={ +xQ(a,b,c){return A.axf(c,this.w,null,this.y,this.x)}, +dr(a){return!J.i(this.w,a.w)||!J.i(this.x,a.x)||!J.i(this.y,a.y)}} +A.axg.prototype={ +$1(a){var s=a.ae(t.Uf) +if(s==null)s=B.f_ +return A.axf(this.e,s.w,this.a,this.d,s.x)}, +$S:453} +A.aiG.prototype={ +A(a){throw A.c(A.ty("A DefaultSelectionStyle constructed with DefaultSelectionStyle.fallback cannot be incorporated into the widget tree, it is meant only to provide a fallback value returned by DefaultSelectionStyle.of() when no enclosing default selection style is present in a BuildContext."))}} +A.a_W.prototype={ +aqW(){return $.byo()}, +A(a){var s=A.NI(this.c,"",this.aqW()) +return A.NI(s,"",A.bEA())}} +A.a01.prototype={ +vz(a){return new A.aL(0,a.b,0,a.d)}, +vC(a,b){var s,r=this.b,q=r.a,p=q+b.a-a.a +r=r.b +s=r+b.b-a.b +if(p>0)q-=p +return new A.l(q,s>0?r-s:r)}, +q9(a){return!this.b.l(0,a.b)}} +A.Jh.prototype={ +A(a){var s=A.aS(a,null,t.l).w,r=s.a,q=r.a,p=r.b,o=A.bES(a),n=A.bEQ(o,r),m=A.bER(A.boO(new A.I(0,0,0+q,0+p),A.boN(s)),n) +return new A.b8(new A.aK(m.a,m.b,q-m.c,p-m.d),A.la(this.d,s.aNy(m),null),null)}} +A.ayb.prototype={ +$1(a){var s +if(!a.grX(a).giN().af2(0,0)){a.gd8(a) +s=!1}else s=!0 +return s}, +$S:195} +A.ayc.prototype={ +$1(a){return a.grX(a)}, +$S:455} +A.a0b.prototype={ +gca(a){var s=this.a +if(s==null)return null +s=s.c +s.toString +return s}} +A.a0m.prototype={ +A(a){return new A.Rq(this.d,this.c,null)}} +A.GB.prototype={} +A.Rq.prototype={} +A.Bq.prototype={ +a8(){return new A.QH(A.lX(null),A.lX(null),B.m)}, +aIj(a,b,c){return this.d.$3(a,b,c)}, +aO2(a,b,c){return this.e.$3(a,b,c)}} +A.QH.prototype={ +aR(){var s,r=this +r.b5() +s=r.a.c +r.d=s.gaL(s) +s=r.a.c +s.cL() +s=s.eo$ +s.b=!0 +s.a.push(r.gOV()) +r.a0s()}, +ZX(a){var s,r=this,q=r.d +q===$&&A.b() +s=r.anu(a,q) +r.d=s +if(q!==s)r.a0s()}, +aY(a){var s,r,q=this +q.br(a) +s=a.c +if(s!==q.a.c){r=q.gOV() +s.e8(r) +s=q.a.c +s.cL() +s=s.eo$ +s.b=!0 +s.a.push(r) +r=q.a.c +q.ZX(r.gaL(r))}}, +anu(a,b){switch(a.a){case 0:case 3:return a +case 1:switch(b.a){case 0:case 3:case 1:return a +case 2:return b}break +case 2:switch(b.a){case 0:case 3:case 2:return a +case 1:return b}break}}, +a0s(){var s=this,r=s.d +r===$&&A.b() +switch(r.a){case 0:case 1:s.e.sbP(0,s.a.c) +s.f.sbP(0,B.bN) +break +case 2:case 3:s.e.sbP(0,B.eU) +s.f.sbP(0,new A.jL(s.a.c,new A.bb(A.a([],t.x8),t.jc),0)) +break}}, +m(){this.a.c.e8(this.gOV()) +this.aZ()}, +A(a){var s=this.a +return s.aIj(a,this.e,s.aO2(a,this.f,s.f))}} +A.aee.prototype={ +aX(a){var s=new A.akc(this.e,this.f,null,A.aB(t.T)) +s.aW() +s.sbN(null) +return s}, +b4(a,b){var s +this.Zg(a,b) +s=this.f +b.aw=s +if(!s){s=b.a0 +if(s!=null)s.$0() +b.a0=null}else if(b.a0==null)b.aU()}} +A.akc.prototype={ +aD(a,b){var s=this +if(s.aw)if(s.a0==null)s.a0=a.a.aE7(s.C) +s.ol(a,b)}} +A.qX.prototype={ +se9(a,b){this.vV(0,this.a.El(B.c0,B.id,b))}, +sk(a,b){this.vV(0,b)}, +a7i(a,b,c){var s,r,q,p,o=null +if(!this.a.gaaK()||!c)return A.di(o,b,this.a.a) +s=b.cU(B.KJ) +r=this.a +q=r.c +r=r.a +p=q.a +q=q.b +return A.di(A.a([A.di(o,o,B.c.U(r,0,p)),A.di(o,s,B.c.U(r,p,q)),A.di(o,o,B.c.cv(r,q))],t.Ne),b,o)}, +sy9(a){var s,r,q,p,o=this +if(!o.aaS(a))throw A.c(A.ty("invalid text selection: "+a.j(0))) +s=a.a +r=a.b +if(s===r){q=o.a.c +s=s>=q.a&&r<=q.b}else s=!1 +p=s?o.a.c:B.c0 +o.vV(0,o.a.aGc(p,a))}, +aaS(a){var s=this.a.a.length +return a.a<=s&&a.b<=s}} +A.EU.prototype={} +A.kH.prototype={} +A.b2M.prototype={ +j1(a,b){return 0}, +tm(a){return a>=this.b}, +hD(a,b){var s,r,q,p=this.c,o=this.d +if(p[o].a>b){s=o +o=0}else s=11 +for(r=s-1;o=n)return r.i(s,o) +else if(a<=n)q=o-1 +else p=o+1}return null}, +aEW(){var s,r=this,q=null,p=r.a.z +if(p===B.p6)return q +s=A.a([],t.ZD) +if(p.b&&r.gKH())s.push(new A.ht(new A.azC(r),B.rn,q)) +if(p.a&&r.gKw())s.push(new A.ht(new A.azD(r),B.ro,q)) +if(p.c&&r.gBg())s.push(new A.ht(new A.azE(r),B.rp,q)) +if(p.d&&r.gY3())s.push(new A.ht(new A.azF(r),B.rq,q)) +return s}, +ar1(){var s,r,q,p,o,n,m,l=this,k=l.a.c.a.b,j=l.gac().bc.f.ad0(),i=l.a.c.a.a +if(j!==i||!k.gdh()||k.a===k.b)return new A.agt(l.gac().bc.gf1(),l.gac().bc.gf1()) +s=k.a +r=k.b +q=B.c.U(i,s,r) +p=q.length===0 +o=p?B.bS:new A.fe(q) +o=o.gN(o) +n=l.gac().C5(new A.d8(s,s+o.length)) +s=p?B.bS:new A.fe(q) +s=s.ga1(s) +m=l.gac().C5(new A.d8(r-s.length,r)) +s=n==null?null:n.d-n.b +if(s==null)s=l.gac().bc.gf1() +r=m==null?null:m.d-m.b +return new A.agt(s,r==null?l.gac().bc.gf1():r)}, +gaFL(){var s,r,q,p,o=this +if(o.gac().Ar!=null){s=o.gac().Ar +s.toString +return new A.OL(s,null)}r=o.ar1() +q=o.a.c.a.b +p=o.gac().Ny(q) +return A.bKN(r.b,o.gac(),p,r.a)}, +gaFM(){var s,r,q,p,o,n,m,l,k=this,j=null,i=k.aEW() +if(i==null){i=k.x.a +s=k.gKw()?new A.azG(k):j +r=k.gKH()?new A.azH(k):j +q=k.gBg()?new A.azI(k):j +p=k.gY3()?new A.azJ(k):j +o=k.gab8()?new A.azK(k):j +n=t.ZD +m=A.a([],n) +l=q!=null +if(!l||i!==B.h1){i=A.a([],n) +if(r!=null)i.push(new A.ht(r,B.rn,j)) +if(s!=null)i.push(new A.ht(s,B.ro,j)) +if(l)i.push(new A.ht(q,B.rp,j)) +if(p!=null)i.push(new A.ht(p,B.rq,j)) +B.b.I(m,i)}if(o!=null)m.push(new A.ht(o,B.QA,j)) +i=m}return i}, +aR(){var s=this +s.ajb() +s.x.P(0,s.ga2M()) +s.a.c.P(0,s.gHV()) +s.a.d.P(0,s.gQD()) +s.giS().P(0,s.gax_()) +s.r.sk(0,s.a.as) +s.cy=A.bFo(s.a.bG)}, +cp(){var s,r,q,p,o=this +o.ei() +s=o.c +s.toString +s=A.cT(s,B.pw) +s=s==null?null:s.at +r=o.a +o.db=s===!0?r.CW.cU(B.ie):r.CW +o.c.ae(t.BY) +if(!o.CW&&o.a.k4){o.CW=!0 +$.cF.p3$.push(new A.azM(o))}s=o.c +s.toString +q=A.aae(s) +if(o.fx!==q){o.fx=q +if(o.gJe())o.DC() +else if(!o.fx&&o.d!=null)o.a4I()}if(A.cb()!==B.bo&&A.cb()!==B.bT)return +s=o.c +s.toString +s=A.aS(s,B.Lf,t.l).w +p=s.gBd(s) +s=o.fr +if(s==null){o.fr=p +return}if(p!==s){o.fr=p +if(A.cb()===B.bo)o.v9(!1) +if(A.cb()===B.bT)o.kc()}}, +aY(a){var s,r,q,p,o=this +o.br(a) +s=a.c +if(o.a.c!==s){r=o.gHV() +s.J(0,r) +o.a.c.P(0,r) +o.SC()}if(!o.a.c.a.b.l(0,s.a.b)){s=o.Q +if(s!=null)s.c_(0,o.a.c.a)}s=o.Q +if(s!=null)s.saa1(o.a.Q) +s=o.a +s.b6!=a.b6 +r=a.d +if(s.d!==r){s=o.gQD() +r.J(0,s) +o.a.d.P(0,s) +o.xO()}s=o.a +s.toString +if(a.x&&s.d.gdt())$.cF.p3$.push(new A.azO(o)) +s=o.glX() +if(s){s=o.a +if(a.x!==s.x){o.z.toString +s=s.b6 +s=(s==null?o:s).gtL() +$.du().a5F(s)}}if(o.glX()){s=o.a +if(a.f!==s.f){o.z.toString +s=s.b6 +s=(s==null?o:s).gtL() +$.du().a5F(s)}}if(!o.a.CW.l(0,a.CW)){s=o.c +s.toString +s=A.cT(s,B.pw) +s=s==null?null:s.at +r=o.a +o.db=s===!0?r.CW.cU(B.ie):r.CW +if(o.glX()){s=o.z +s.toString +r=o.db +q=o.gDG() +s.NY(r.d,r.r,r.w,o.a.db,q)}}if(o.a.as!==a.as)o.Sg() +s=o.a.p1 +if(t.qY.b(s))p=o.gBg() +else{s=s==null&&null +p=s===!0}if(o.a.Y&&o.gBg()&&p)o.x.ff(0)}, +m(){var s=this,r=s.at +if(r!=null)r.m() +s.a.c.J(0,s.gHV()) +r=s.dy +if(r!=null)r.m() +s.dy=null +s.a_G() +r=s.d +if(r!=null)r.aQ(0) +s.d=null +r=s.e +if(r!=null)r.m() +s.e=null +r=s.Q +if(r!=null)r.m() +s.Q=null +s.a.d.J(0,s.gQD()) +B.b.F($.ar.cI$,s) +r=s.x +r.J(0,s.ga2M()) +r.m() +r=s.r +r.ah$=$.b5() +r.ak$=0 +$.ar.al$.f.J(0,s.gDJ()) +s.ajc()}, +aOW(a){var s,r,q,p,o,n,m=this,l=m.a.c.a +if(a.a===l.a){s=a.b +r=s.a +q=l.b +p=q.a +s=r===s.b===(p===q.b)&&r===p&&s.e!==q.e}else s=!1 +if(s)a=a.mv(a.b.aFV(l.b.e)) +l=m.a +if(l.x)a=l.c.a.mv(a.b) +m.fy=a +if(a.l(0,m.a.c.a))return +l=a.a +s=m.a.c.a +if(l===s.a&&a.c.l(0,s.c)){l=m.z==null?null:$.du().r +if(l===!0)o=B.kT +else o=m.k1!=null?B.hY:B.aG +m.Ik(a.b,o)}else{if(l!==m.a.c.a.a)m.v9(!1) +s=m.ry=null +if(m.glX()){r=m.a +if(r.f){$.ar.toString +$.bL() +r=r.c.a +l=l.length===r.a.length+1 +n=l}else n=!1}else n=!1 +m.p3=n?3:0 +m.p4=n?m.a.c.a.b.c:s +m.aqF(a,B.aG)}if(m.gJe()&&m.d!=null){m.Jm(!1) +m.DC()}m.J5(!0)}, +aMH(a){var s=this +switch(a.a){case 12:if(s.a.k1===1)s.I0(a,!0) +break +case 2:case 3:case 6:case 7:case 4:case 5:s.I0(a,!0) +break +case 8:case 11:case 9:case 0:case 10:case 1:s.I0(a,!1) +break}}, +aOY(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f=this,e=null,d=f.dy +if(d==null){d=A.bw(B.z,e,e,0,e,1,e,f) +d.cL() +s=d.dB$ +s.b=!0 +s.a.push(f.gax7()) +f.dy=d}s=a.b +switch(s.a){case 0:r=d.r +if(r!=null&&r.a!=null){d.h7(0) +f.a2P()}f.Jm(!1) +f.gqe().sk(0,1) +f.k1=a.a +q=new A.bR(f.gac().cg.c,f.gac().cg.e) +d=f.gac().p9(q) +f.go=d +f.k2=d.gbH().a2(0,new A.l(0,f.gac().bc.gf1()/2)) +f.id=q +d=f.gac() +r=f.k2 +r.toString +p=f.id +p.toString +d.NU(s,r,p) +break +case 1:d=f.k1 +d.toString +o=a.a.a2(0,d) +n=f.go.gbH().T(0,o).a2(0,new A.l(0,f.gac().bc.gf1()/2)) +d=f.gac() +r=d.bc +p=r.b.a.a +m=Math.ceil(p.gdm(p))-r.gf1()+5 +l=r.b.b+4 +r=d.UG +k=r!=null?n.a2(0,r):B.i +if(d.i6&&k.a>0){d.qF=new A.l(n.a- -4,d.qF.b) +d.i6=!1}else if(d.hy&&k.a<0){d.qF=new A.l(n.a-l,d.qF.b) +d.hy=!1}if(d.i7&&k.b>0){d.qF=new A.l(d.qF.a,n.b- -4) +d.i7=!1}else if(d.d_&&k.b<0){d.qF=new A.l(d.qF.a,n.b-m) +d.d_=!1}r=d.qF +j=n.a-r.a +i=n.b-r.b +h=Math.min(Math.max(j,-4),l) +g=Math.min(Math.max(i,-4),m) +if(j<-4&&k.a<0)d.i6=!0 +else if(j>l&&k.a>0)d.hy=!0 +if(i<-4&&k.b<0)d.i7=!0 +else if(i>m&&k.b>0)d.d_=!0 +d.UG=n +f.k2=new A.l(h,g) +d=f.gac() +r=f.gac() +p=f.k2 +p.toString +p=p.T(0,new A.l(0,f.gac().bc.gf1()/2)) +f.id=d.iK(A.cD(r.cs(0,e),p)) +p=f.gac() +r=f.k2 +r.toString +d=f.id +d.toString +p.NU(s,r,d) +break +case 2:f.DC() +if(f.id!=null&&f.k2!=null){f.dy.sk(0,0) +d=f.dy +d.z=B.aI +d.jW(1,B.dt,B.mx)}break}}, +a2P(){var s,r,q,p,o=this,n=o.gac(),m=o.id +m.toString +s=n.p9(m).gaF3().a2(0,new A.l(0,o.gac().bc.gf1()/2)) +n=o.dy +if(n.gaL(n)===B.a5){n=o.gac() +m=o.id +m.toString +n.NU(B.mS,s,m) +n=o.gac().cg +if(n.a===n.b){n=o.id +n.toString +o.Ik(A.EO(n),B.hY)}o.k2=o.k1=o.id=o.go=null}else{n=o.dy.x +n===$&&A.b() +m=o.k2 +r=A.ag(m.a,s.a,n) +r.toString +m=A.ag(m.b,s.b,n) +m.toString +q=o.gac() +p=o.id +p.toString +q.Yc(B.mR,new A.l(r,m),p,n)}}, +I0(a,b){var s,r,q,p,o,n,m=this,l=m.a,k=l.R8 +if(k!=null)try{k.$0()}catch(n){s=A.ai(n) +r=A.aH(n) +l=A.bX("while calling onEditingComplete for "+a.j(0)) +A.dV(new A.cc(s,r,"widgets",l,null,!1))}else{l=l.c +l.vV(0,l.a.a7R(B.c0)) +if(b){switch(a.a){case 0:case 1:case 2:case 3:case 4:case 5:case 8:case 9:case 10:case 11:case 12:m.a.d.vu() +break +case 6:l=m.a.d +k=l.e +k.toString +A.wV(k).Dg(l,!0) +break +case 7:l=m.a.d +k=l.e +k.toString +A.wV(k).Dg(l,!1) +break}b=!0}}l=m.a +q=l.RG +if(q==null)return +try{q.$1(l.c.a.a)}catch(s){p=A.ai(s) +o=A.aH(s) +l=A.bX("while calling onSubmitted for "+a.j(0)) +A.dV(new A.cc(p,o,"widgets",l,null,!1))}if(b)m.aA8()}, +SC(){var s,r=this +if(r.k3>0||!r.glX())return +s=r.a.c.a +if(s.l(0,r.fy))return +r.z.toString +$.du().Jd(s) +r.fy=s}, +a1b(a){var s,r,q,p,o,n,m,l,k=this +if(!B.b.gaI(k.giS().f).r.grU()){s=B.b.gaI(k.giS().f).at +s.toString +return new A.oN(s,a)}s=k.gac() +r=s.gq(s) +if(k.a.k1===1){s=a.c +q=a.a +p=r.a +o=s-q>=p?p/2-a.gbH().a:A.S(0,s-p,q) +n=B.fq}else{m=A.bjB(a.gbH(),Math.max(a.d-a.b,k.gac().bc.gf1()),a.c-a.a) +s=m.d +q=m.b +p=r.b +o=s-q>=p?p/2-m.gbH().b:A.S(0,s-p,q) +n=B.co}s=B.b.gaI(k.giS().f).at +s.toString +q=B.b.gaI(k.giS().f).z +q.toString +p=B.b.gaI(k.giS().f).Q +p.toString +l=A.S(o+s,q,p) +p=B.b.gaI(k.giS().f).at +p.toString +return new A.oN(l,a.dw(n.au(0,p-l)))}, +IQ(){var s,r,q,p,o,n=this +if(!n.glX()){s=n.a +r=s.c.a +s=s.b6;(s==null?n:s).gtL() +s=n.a.b6 +s=(s==null?n:s).gtL() +q=A.bsu(n) +$.du().OZ(q,s) +s=q +n.z=s +n.a64() +n.a3P() +s=n.z +s.toString +p=n.db +p===$&&A.b() +o=n.gDG() +s.NY(p.d,p.r,p.w,n.a.db,o) +o=$.du() +o.Jd(r) +o.Se() +s=n.a.b6 +if((s==null?n:s).gtL().e.a){n.z.toString +o.azr()}n.fy=r}else{n.z.toString +$.du().Se()}}, +a_G(){var s,r,q=this +if(q.glX()){s=q.z +s.toString +r=$.du() +if(r.d===s)r.a_C() +q.R8=q.fy=q.z=null +q.acp()}}, +aA8(){if(this.k4)return +this.k4=!0 +A.h_(this.gazy())}, +azz(){var s,r,q,p,o,n=this +n.k4=!1 +if(n.glX())s=!1 +else s=!0 +if(s)return +s=n.z +s.toString +r=$.du() +if(r.d===s)r.a_C() +n.fy=n.z=null +s=n.a.b6;(s==null?n:s).gtL() +s=n.a.b6 +s=(s==null?n:s).gtL() +q=A.bsu(n) +r.OZ(q,s) +p=q +n.z=p +r.Se() +s=n.db +s===$&&A.b() +o=n.gDG() +p.NY(s.d,s.r,s.w,n.a.db,o) +r.Jd(n.a.c.a) +n.fy=n.a.c.a}, +aCP(){this.ok=!1 +$.ar.al$.f.J(0,this.gDJ())}, +WQ(){var s=this +if(s.a.d.gdt())s.IQ() +else{s.ok=!0 +$.ar.al$.f.P(0,s.gDJ()) +s.a.d.nS()}}, +a5Q(){var s,r,q=this +if(q.Q!=null){s=q.a.d.gdt() +r=q.Q +if(s){r.toString +r.c_(0,q.a.c.a)}else{r.m() +q.Q=null}}}, +ax0(){var s=this.Q +if(s!=null){s.ws() +s=s.e +s===$&&A.b() +s.ef()}this.R8=null}, +PF(){var s,r,q,p,o,n,m,l,k,j,i,h=this,g=h.a,f=g.ah,e=h.c +e.toString +s=g.c.a +r=h.gac() +q=h.a +p=q.p1 +o=q.av +n=q.to +q=q.aT +m=t.y +l=A.ed(!1,m) +k=A.ed(!1,m) +m=A.ed(!1,m) +j=new A.aa8(e,r,p,h,new A.azl(h,f),s,l,k,m) +s=j.ga67() +r.aT.P(0,s) +r.bK.P(0,s) +j.SF() +s=j.garC() +r=r.Ar +i=A.ed(B.a6t,t.wf) +j.e!==$&&A.cl() +j.e=new A.a8d(e,i,new A.xz(),q,B.ic,0,l,j.gatM(),j.gatO(),s,B.ic,0,k,j.gatG(),j.gatI(),s,m,B.a1Y,g,h.ax,h.ay,h.ch,p,h,o,n,h.x,r,new A.YE(),new A.YE()) +return j}, +Ik(a,b){var s,r,q,p,o,n=this +if(!n.a.c.aaS(a))return +n.a.c.sy9(a) +switch(b){case null:case void 0:case B.Jp:case B.aD:case B.hY:case B.bz:case B.kT:case B.b2:case B.be:n.WQ() +break +case B.aG:if(n.a.d.gdt())n.WQ() +break}q=n.a +q.toString +p=n.Q +if(p==null)n.Q=n.PF() +else p.c_(0,q.c.a) +q=n.Q +q.toString +q.saa1(n.a.Q) +q=n.Q +q.ws() +q=q.e +q===$&&A.b() +q.afR() +try{n.a.ry.$2(a,b)}catch(o){s=A.ai(o) +r=A.aH(o) +q=A.bX("while calling onSelectionChanged for "+A.h(b)) +A.dV(new A.cc(s,r,"widgets",q,null,!1))}if(n.gJe()&&n.d!=null){n.Jm(!1) +n.DC()}}, +J5(a){if(this.p1)return +this.p1=!0 +$.cF.p3$.push(new A.azt(this,a))}, +Ua(){var s,r=this,q=r.c +if(q==null)return +s=A.P4(q) +s.toString +q=r.p2 +q===$&&A.b() +if(q!==s.f.d){$.cF.p3$.push(new A.azN(r)) +if(r.p2>>16&255,q.gk(q)>>>8&255,q.gk(q)&255) +r.gi3().sTr(q) +if(s.a.as){r=s.gqe().x +r===$&&A.b() +r=r>0}else r=!1 +s.r.sk(0,r)}, +gJe(){var s,r +if(this.a.d.gdt()){s=this.a +r=s.c.a.b +s=r.a===r.b&&s.as&&this.fx}else s=!1 +return s}, +DC(){var s,r=this +if(!r.a.as)return +if(!r.fx)return +s=r.d +if(s!=null)s.aQ(0) +r.gqe().sk(0,1) +if(r.a.aV)r.gqe().T6(r.ga26()).a.a.fv(r.ga2O()) +else r.d=A.bsD(B.bu,new A.azx(r))}, +Rt(){var s,r=this,q=r.p3 +if(q>0){$.ar.toString +$.bL();--q +r.p3=q +if(q===0)r.a7(new A.azq())}if(r.a.aV){q=r.d +if(q!=null)q.aQ(0) +r.d=A.d2(B.F,new A.azr(r))}else{q=r.d +q=q==null?null:q.b!=null +if(q!==!0&&r.fx)r.d=A.bsD(B.bu,new A.azs(r)) +q=r.gqe() +s=r.gqe().x +s===$&&A.b() +q.sk(0,s===0?1:0)}}, +Jm(a){var s,r=this +r.gqe().sk(0,0) +s=r.d +if(s!=null)s.aQ(0) +r.d=null +if(a)r.p3=0}, +a4I(){return this.Jm(!0)}, +Sg(){var s=this +if(!s.gJe())s.a4I() +else if(s.d==null)s.DC()}, +a0c(){var s,r,q,p=this +if(p.a.d.gdt()&&!p.a.c.a.b.gdh()){s=p.gHV() +p.a.c.J(0,s) +r=p.a.c +q=p.ZS() +q.toString +r.sy9(q) +p.a.c.P(0,s)}p.SC() +p.Sg() +p.a5Q() +p.a7(new A.azm()) +p.gSL().agf()}, +asn(){var s,r,q,p=this +if(p.a.d.gdt()&&p.a.d.aFG())p.IQ() +else if(!p.a.d.gdt()){p.a_G() +s=p.a.c +s.vV(0,s.a.a7R(B.c0))}p.Sg() +p.a5Q() +s=p.a.d.gdt() +r=$.ar +if(s){r.cI$.push(p) +s=p.c +s.toString +p.p2=A.P4(s).f.d +if(!p.a.x)p.J5(!0) +q=p.ZS() +if(q!=null)p.Ik(q,null)}else{B.b.F(r.cI$,p) +p.a7(new A.azo(p))}p.xO()}, +ZS(){var s,r=this.a +if(r.Y&&r.k1===1&&!this.ok)s=A.de(B.q,0,r.c.a.a.length,!1) +else s=!r.c.a.b.gdh()?A.qZ(B.q,this.a.c.a.a.length):null +return s}, +aoh(a){if(this.gac().y==null||!this.glX())return +this.a64()}, +a64(){var s=this.gac(),r=s.gq(s),q=this.gac().cs(0,null) +s=this.z +if(!r.l(0,s.a)||!q.l(0,s.b)){s.a=r +s.b=q +$.du().aAO(r,q)}}, +a3Q(a){var s,r,q,p=this +if(!p.glX())return +p.aDp() +s=p.a.c.a.c +r=p.gac().C5(s) +if(r==null){q=s.gdh()?s.a:0 +r=p.gac().p9(new A.bR(q,B.q))}p.z.afr(r) +p.aD_() +$.cF.p3$.push(p.gaA7())}, +a3P(){return this.a3Q(null)}, +a61(a0){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b=this,a=null +b.a.toString +s=A.cb() +if(s!==B.bo)return +if(B.b.gaI(b.giS().f).k4!==B.fF)return +s=b.gac().bc.f +s.toString +r=b.a.db +q=b.gDG() +p=b.a.fx +o=b.c +o.toString +o=A.cT(o,B.bb) +p=o==null?a:o.c +if(p==null)p=1 +b.a.toString +o=b.c +o.toString +o=A.bib(o) +n=b.a.grB() +m=b.rx +l=b.gac() +k=new A.b9W(r,q,p,o,a,n,m,l.gq(l),s) +if(a0)j=B.bR +else{r=b.R8 +r=r==null?a:r.TE(k) +j=r==null?B.bR:r}if(j.a<3)return +b.R8=k +i=A.a([],t.u1) +h=s.Gj(!1) +g=new A.Es(h,0,0) +for(f=0;g.HC(1,g.c);f=e){s=g.d +e=f+(s==null?g.d=B.c.U(h,g.b,g.c):s).length +s=b.gac() +r=f1){m=n.a.c.a.b +m=m.a!==m.b||m.c===0}else m=!0 +if(m)return +m=n.a.c.a +s=m.a +m=m.b.c +r=A.aWy(s,m) +q=r.b +if(m===s.length)r.a3H(2,q) +else{r.a3H(1,q) +r.HC(1,r.b)}m=r.a +q=B.c.U(m,0,r.b) +p=new A.fe(r.gH(r)) +p=p.ga1(p) +o=new A.fe(r.gH(r)) +n.jT(new A.eN(q+p+o.gN(o)+B.c.cv(m,r.c),A.qZ(B.q,r.b+r.gH(r).length),B.c0),B.aG)}, +a3y(a){var s=this.a.c.a,r=a.a.acx(a.c,a.b) +this.jT(r,a.d) +if(r.l(0,s))this.a0c()}, +aAg(a){if(a.a)this.mc(new A.bR(this.a.c.a.a.length,B.q)) +else this.mc(B.ib)}, +aAd(a){var s,r,q,p,o,n,m,l=this +if(a.b!==B.hX)return +s=B.b.gaI(l.giS().f) +if(l.a.k1===1){r=l.giS() +q=s.Q +q.toString +r.fc(q) +return}r=s.Q +r.toString +if(r===0){r=s.z +r.toString +r=r===0}else r=!1 +if(r)return +p=t._N.a(l.as.gR()) +p.toString +o=A.aR9(p,a) +r=s.at +r.toString +q=s.z +q.toString +n=s.Q +n.toString +m=A.S(r+o,q,n) +if(m===r)return +l.giS().fc(m)}, +aq6(a){var s,r,q,p,o,n,m,l,k,j,i=this +if(i.a.k1===1)return +s=i.gac().p9(i.a.c.a.b.gew()) +r=t._N.a(i.as.gR()) +r.toString +q=A.aR9(r,new A.hE(a.gLl(a)?B.ag:B.af,B.hX)) +p=B.b.gaI(i.giS().f) +if(a.gLl(a)){o=i.a.c.a +if(o.b.d>=o.a.length)return +o=s.b+q +n=p.Q +n.toString +m=i.gac() +m=m.gq(m) +l=p.at +l.toString +k=o+l>=n+m.b?new A.bR(i.a.c.a.a.length,B.q):i.gac().iK(A.cD(i.gac().cs(0,null),new A.l(s.a,o))) +j=i.a.c.a.b.TL(k.a)}else{if(i.a.c.a.b.d<=0)return +o=s.b+q +n=p.at +n.toString +k=o+n<=0?B.ib:i.gac().iK(A.cD(i.gac().cs(0,null),new A.l(s.a,o))) +j=i.a.c.a.b.TL(k.a)}i.mc(j.gew()) +i.jT(i.a.c.a.mv(j),B.aG)}, +aDm(a){var s=a.b +this.mc(s.gew()) +this.jT(a.a.mv(s),a.c)}, +gSL(){var s,r=this,q=r.xr +if(q===$){s=A.a([],t.h) +r.xr!==$&&A.am() +q=r.xr=new A.Uf(r,new A.bb(s,t.d),t.Wp)}return q}, +auE(a){var s=this.Q +if(s==null)s=null +else{s=s.e +s===$&&A.b() +s=s.gN8()}if(s===!0){this.v9(!1) +return null}s=this.c +s.toString +return A.vP(s,a,t.xm)}, +aoY(a){switch(A.cb().a){case 0:case 2:case 1:switch(a.gdS(a).a){case 0:this.a.d.vu() +break +case 1:case 2:case 3:case 5:this.a.d.vu() +break +case 4:throw A.c(A.cL("Unexpected pointer down event for trackpad"))}break +case 3:case 4:case 5:this.a.d.vu() +break}}, +gam0(){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=this,b1=b0.y1 +if(b1===$){s=t.h +r=A.a([],s) +q=t.d +b1=b0.x1 +if(b1===$){p=A.a([],s) +b0.x1!==$&&A.am() +b1=b0.x1=new A.cq(b0.gazm(),new A.bb(p,q),t.Tx)}o=b0.x2 +if(o===$){p=A.a([],s) +b0.x2!==$&&A.am() +o=b0.x2=new A.cq(b0.gaDl(),new A.bb(p,q),t.Vg)}p=A.a([],s) +n=A.a([],s) +m=b0.ganD() +l=b0.gawj() +k=A.a([],s) +j=b0.c +j.toString +j=new A.rc(b0,m,l,new A.bb(k,q),t.rZ).fC(j) +k=b0.gawE() +i=A.a([],s) +h=b0.c +h.toString +h=new A.rc(b0,k,l,new A.bb(i,q),t.UB).fC(h) +i=b0.gavw() +g=b0.gawm() +f=A.a([],s) +e=b0.c +e.toString +e=new A.rc(b0,i,g,new A.bb(f,q),t.Fb).fC(e) +m=A.vu(b0,m,l,!1,!1,!1,t._w) +f=b0.c +f.toString +f=m.fC(f) +m=A.a([],s) +d=b0.c +d.toString +d=new A.cq(b0.gaq5(),new A.bb(m,q),t.vr).fC(d) +m=A.vu(b0,k,l,!1,!0,!1,t.P9) +c=b0.c +c.toString +c=m.fC(c) +m=b0.gay3() +b=A.vu(b0,m,l,!1,!0,!1,t.cP) +a=b0.c +a.toString +a=b.fC(a) +b=A.vu(b0,i,g,!1,!0,!1,t.OO) +a0=b0.c +a0.toString +a0=b.fC(a0) +b=b0.gSL() +a1=b0.c +a1.toString +a1=b.fC(a1) +b=b0.gSL() +a2=b0.c +a2.toString +a2=b.fC(a2) +m=A.vu(b0,m,l,!1,!0,!1,t.b7) +b=b0.c +b.toString +b=m.fC(b) +m=b0.gapn() +a3=A.vu(b0,m,l,!1,!0,!1,t.HH) +a4=b0.c +a4.toString +a4=a3.fC(a4) +l=A.vu(b0,k,l,!1,!0,!1,t.eI) +k=b0.c +k.toString +k=l.fC(k) +l=A.a([],s) +a3=b0.c +a3.toString +a3=new A.cq(b0.gaAf(),new A.bb(l,q),t.sl).fC(a3) +l=A.a([],s) +i=A.vu(b0,i,g,!1,!0,!0,t.oB) +a5=b0.c +a5.toString +a5=i.fC(a5) +g=A.vu(b0,m,g,!0,!0,!0,t.bh) +m=b0.c +m.toString +m=g.fC(m) +g=A.a([],s) +i=b0.c +i.toString +i=new A.alb(b0,new A.bb(g,q)).fC(i) +g=A.a([],s) +a6=b0.c +a6.toString +a6=new A.aez(b0,new A.bb(g,q)).fC(a6) +g=A.a([],s) +a7=b0.c +a7.toString +a7=new A.cq(new A.azk(b0),new A.bb(g,q),t.gv).fC(a7) +a8=b0.to +if(a8===$){s=A.a([],s) +b0.to!==$&&A.am() +a8=b0.to=new A.cq(b0.gaCH(),new A.bb(s,q),t.j5)}s=b0.c +s.toString +a9=A.ap([B.akN,new A.Ji(!1,new A.bb(r,q)),B.akp,b1,B.akD,o,B.KX,new A.Jf(!0,new A.bb(p,q)),B.p8,new A.cq(b0.gauD(),new A.bb(n,q),t.OX),B.ajY,j,B.akS,h,B.ajZ,e,B.ajR,f,B.ak2,d,B.ajN,c,B.ajT,a,B.ajP,a0,B.akK,a1,B.akL,a2,B.akQ,b,B.ajO,a4,B.akO,k,B.ajS,a3,B.pb,new A.cq(b0.gaAc(),new A.bb(l,q),t.fn),B.akP,a5,B.akM,m,B.aks,i,B.ajW,a6,B.akj,a7,B.akx,a8.fC(s)],t.n,t.od) +b0.y1!==$&&A.am() +b0.y1=a9 +b1=a9}return b1}, +A(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f=this,e=null +f.Oc(a) +s=f.a.p1 +r=f.glX() +q=f.a +q=q.xr +if(q==null)q=B.oW +p=f.gam0() +o=f.a +n=o.c +m=o.d +l=o.cx +o=o.k1!==1?B.ag:B.eP +k=f.giS() +j=f.a +i=j.aG +h=j.av +j=j.cc +g=A.DT(a).a85(!1,f.a.k1!==1) +return new A.aee(f.gaog(),r,A.aa2(A.mX(A.pC(p,new A.F_(n,new A.azz(f),new A.azA(f),m,l,A.tz(!1,e,A.aRm(o,B.E,k,h,!0,f.as,i,j,g,e,new A.azB(f,s)),e,e,e,m,!1,e,e,e,e,e,e),e,t.pm)),q,e,e,e,e),e,f.gaoX()),e)}, +a7h(){var s,r,q,p,o,n,m,l,k,j,i=this,h=null,g=i.a +if(g.f){s=g.c.a.a +s=B.c.au(g.e,s.length) +$.ar.toString +$.bL() +r=B.ad6.n(0,A.cb()) +if(r){q=i.p3>0?i.p4:h +if(q!=null&&q>=0&&q=0&&p<=g.c.a.a.length){o=A.a([],t.s6) +g=i.a +n=g.c.a.a.length-i.rx +if(g.k1!==1){o.push(B.aoK) +g=i.gac() +o.push(new A.nI(new A.V(g.gq(g).a,0),B.a_,B.dP,h,h))}else o.push(B.aoL) +g=i.db +g===$&&A.b() +p=A.a([A.di(h,h,B.c.U(i.a.c.a.a,0,n))],t.VO) +B.b.I(p,o) +p.push(A.di(h,h,B.c.cv(i.a.c.a.a,n))) +return A.di(p,g,h)}m=!g.x&&g.d.gdt() +if(i.ga4z()){l=!i.a.c.a.gaaK()||!m +g=i.a.c.a +p=i.db +p===$&&A.b() +k=i.cy +k===$&&A.b() +k=k.c +k.toString +j=i.dx +j.toString +return A.bQV(g,l,p,k,j)}g=i.a.c +p=i.c +p.toString +k=i.db +k===$&&A.b() +return g.a7i(p,k,m)}, +$iaN:1} +A.azp.prototype={ +$0(){}, +$S:0} +A.azL.prototype={ +$1(a){var s=this.a +if(s.c!=null)s.mc(s.a.c.a.b.gew())}, +$S:6} +A.azQ.prototype={ +$1(a){var s=this.a +if(s.c!=null)s.mc(s.a.c.a.b.gew())}, +$S:6} +A.azC.prototype={ +$0(){this.a.KI(B.be)}, +$S:0} +A.azD.prototype={ +$0(){this.a.Kx(B.be)}, +$S:0} +A.azE.prototype={ +$0(){this.a.xA(B.be)}, +$S:0} +A.azF.prototype={ +$0(){this.a.NR(B.be)}, +$S:0} +A.azG.prototype={ +$0(){return this.a.Kx(B.be)}, +$S:0} +A.azH.prototype={ +$0(){return this.a.KI(B.be)}, +$S:0} +A.azI.prototype={ +$0(){return this.a.xA(B.be)}, +$S:0} +A.azJ.prototype={ +$0(){return this.a.NR(B.be)}, +$S:0} +A.azK.prototype={ +$0(){return this.a.aBr(B.be)}, +$S:0} +A.azM.prototype={ +$1(a){var s,r=this.a +if(r.c!=null&&r.gac().id!=null){r.ok=!0 +$.ar.al$.f.P(0,r.gDJ()) +s=r.c +s.toString +A.a18(s).a72(0,r.a.d)}}, +$S:6} +A.azO.prototype={ +$1(a){this.a.IQ()}, +$S:6} +A.azl.prototype={ +$1(a){return this.b.$2(a,this.a)}, +$S:12} +A.azt.prototype={ +$1(a){var s,r,q,p,o,n,m,l,k,j,i,h=this.a +h.p1=!1 +s=$.ar.al$.z.i(0,h.w) +s=s==null?null:s.ga9() +t.CA.a(s) +if(s!=null){r=s.cg.gdh() +r=!r||h.giS().f.length===0}else r=!0 +if(r)return +q=s.bc.gf1() +p=h.a.Z.d +r=h.Q +if((r==null?null:r.c)!=null){o=r.c.BZ(q).b +n=Math.max(o,48) +p=Math.max(o/2-h.Q.c.BY(B.ic,q).b+n/2,p)}m=h.a.Z.Ei(p) +l=h.a1b(s.p9(s.cg.gew())) +k=h.a.c.a.b +if(k.a===k.b)j=l.b +else{i=s.rm(k) +if(i.length===0)j=l.b +else if(k.c>>16&255,p.gk(p)>>>8&255,p.gk(p)&255) +n=b6.a +m=n.id +l=n.y +k=n.x +n=n.d.gdt() +j=b6.a +i=j.k1 +h=j.k2 +j=j.grB() +g=b6.Q +if(g==null)g=b5 +else{g=g.e +g===$&&A.b() +g=$.pP===g.p1}if(g===!0){b6.cy===$&&A.b() +g=b6.a +f=g.ok +e=f +f=g +g=e}else{g=b6.a +f=g.ok +e=f +f=g +g=e}f=f.fx +d=A.cT(c0,B.bb) +f=d==null?b5:d.c +if(f==null)f=1 +d=b6.a.db +c=b6.gDG() +b6.a.toString +b=A.bib(c0) +a=b6.a +a0=a.w +a1=a.e +a2=a.f +a3=a.y2 +a4=a.c5 +a5=a.cO +a6=a.bU +if(a6==null)a6=B.i +a7=a.bQ +a8=a.bO +a9=a.cb +if(a.Y)a=!a.x||!a2 +else a=!1 +b0=b6.c +b0.toString +b0=A.aS(b0,B.d7,t.l).w +b1=b6.ry +b2=b6.a +b3=b2.go +b2=b2.bp +b4=A.bta(q,f) +return new A.wc(b6.ax,new A.bu(A.bI(b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b8,b9,b5,b5,b5,b5,b5,b5,b5,b5,b7,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5,b5),!1,!1,!1,!1,new A.T4(new A.QI(q,o,p,b6.ay,b6.ch,m,b6.r,l,k,n,i,h,!1,j,g,f,d,c,b5,a1,a2,b,a0,c1,!0,a3,a4,a5,a6,a9,a7,a8,a,b6,b0.b,b1,b3,b2,b4,r),s,r,new A.azy(b6),!0,b5),b5),b5)}, +$S:472} +A.azy.prototype={ +$0(){var s=this.a +s.IQ() +s.a61(!0)}, +$S:0} +A.QI.prototype={ +aX(a){var s,r,q=this,p=null,o=q.ax,n=A.KX(a),m=q.f.b,l=A.bul(),k=A.bul(),j=t.y,i=A.ed(!0,j) +j=A.ed(!0,j) +s=A.aB(t.O5) +r=o===1?1:p +r=A.OG(p,n,r,q.CW,q.e,q.db,q.dx,q.fy,q.cy,q.go) +o=new A.yp(l,k,!0,q.RG,q.fr,q.fx,q.R8,i,j,r,q.z,q.at,q.Q,q.as,o,q.ay,!1,m,q.id,q.k2,q.k3,q.p1,q.w,q.x,q.p4,q.to,B.i,s,0,p,p,!1,A.aB(t.T)) +o.aW() +l.sLA(q.cx) +l.sLB(m) +l.sY5(q.p2) +l.sY6(q.p3) +k.sLA(q.ry) +k.sLB(q.rx) +o.gi3().sTr(q.r) +o.gi3().sa8u(q.k4) +o.gi3().sa8t(q.ok) +o.gi3().sa74(q.y) +o.a5M(p) +o.a5R(p) +o.I(0,p) +return o}, +b4(a,b){var s,r,q=this +b.se9(0,q.e) +b.gi3().sTr(q.r) +b.sagb(q.w) +b.saHq(q.x) +b.gi3().sa74(q.y) +b.safQ(q.z) +b.saIc(q.Q) +b.sWG(0,q.as) +b.sdt(q.at) +b.sB5(q.ax) +b.saLs(q.ay) +b.sUA(!1) +b.srB(q.CW) +s=b.aG +s.sLA(q.cx) +b.stM(q.cy) +b.sBx(0,q.db) +b.scF(q.dx) +r=A.KX(a) +b.sB2(0,r) +b.sy9(q.f.b) +b.sc6(0,q.id) +b.fF=!0 +b.sN0(q.fy) +b.sBz(q.go) +b.saLI(q.fr) +b.saLH(q.fx) +b.saGH(q.k2) +b.saGG(q.k3) +b.gi3().sa8u(q.k4) +b.gi3().sa8t(q.ok) +s.sY5(q.p2) +s.sY6(q.p3) +b.saHl(q.p4) +b.bG=q.R8 +b.sA_(0,q.RG) +b.saMz(q.p1) +s=b.aS +s.sLA(q.ry) +r=q.to +if(r!==b.iA){b.iA=r +b.aU() +b.bX()}s.sLB(q.rx)}} +A.b9W.prototype={ +TE(a){var s,r,q=this +if(a===q)return B.di +if(q.a===a.a)if(q.b===a.b){if(q.c===a.c)s=!B.KE.l(0,B.KE)||!q.f.l(0,a.f)||q.r!==a.r||!q.w.l(0,a.w) +else s=!0 +r=s}else r=!0 +else r=!0 +return r?B.bR:q.x.bM(0,a.x)}} +A.T4.prototype={ +a8(){var s=$.bu4 +$.bu4=s+1 +return new A.al3(B.f.j(s),B.m)}, +aP3(){return this.f.$0()}} +A.al3.prototype={ +aR(){var s=this +s.b5() +s.a.toString +$.du().f.p(0,s.d,s)}, +aY(a){this.br(a) +this.a.toString}, +m(){$.du().f.F(0,this.d) +this.aZ()}, +gac(){var s=this.a.e +s=$.ar.al$.z.i(0,s) +s=s==null?null:s.ga9() +return t.CA.a(s)}, +aKq(a){var s,r,q,p,o,n=this,m=n.grX(n),l=n.gac() +l=l==null?null:l.iz +if(l===!0)return!1 +if(m.l(0,B.Y))return!1 +if(!m.FP(a))return!1 +s=m.he(a) +r=A.aEL() +l=$.ar +l.toString +q=s.gbH() +p=n.c +p.toString +p=A.P4(p).a +o=l.b6$ +o===$&&A.b() +o.e.dc(r,q) +l.On(r,q,p) +return B.b.ed(r.a,new A.b9X(n))}, +grX(a){var s=t.aA.a(this.c.ga9()) +if(s==null||this.c==null||s.y==null)return B.Y +return A.j4(s.cs(0,null),new A.I(0,0,0+s.gq(s).a,0+s.gq(s).b))}, +A(a){return this.a.c}, +$ibrN:1} +A.b9X.prototype={ +$1(a){return a.a.l(0,this.a.gac())}, +$S:473} +A.nI.prototype={ +Kf(a,b,c){var s=this.a,r=s!=null +if(r)a.Bm(s.GX(c)) +s=this.x +a.a6C(s.a,s.b,this.b,c) +if(r)a.ik()}} +A.aeb.prototype={ +a_5(a){var s=this.a +return(s.charCodeAt(a-1)&64512)===55296&&(s.charCodeAt(a)&64512)===56320}, +iJ(a){var s=this.a.length +if(s===0||a<0)return null +if(a===0)return 0 +if(a>=s)return s +if(s<=1)return a +return this.a_5(a)?a-1:a}, +iL(a){var s=this.a.length +if(s===0||a>=s)return null +if(a<0)return 0 +if(a===s-1)return s +if(s<=1)return a +s=a+1 +return this.a_5(s)?a+2:s}} +A.rc.prototype={ +hg(a,b){var s,r,q,p,o,n=this.e,m=n.a.c.a.b +if(!m.gdh())return null +s=n.a_h() +r=m.a +q=m.b +if(r!==q){r=s.iJ(r) +if(r==null)r=n.a.c.a.a.length +q=s.iL(q-1) +if(q==null)q=0 +b.toString +return A.vP(b,new A.n8(n.a.c.a,"",new A.d8(r,q),B.aG),t.UM)}r=a.a +p=this.r.$3(m.grW(),r,this.f.$0()).a +q=m.c +if(r){r=s.iJ(q) +if(r==null)r=n.a.c.a.a.length}else{r=s.iL(q-1) +if(r==null)r=0}o=A.de(B.q,r,p,!1) +b.toString +return A.vP(b,new A.n8(n.a.c.a,"",o,B.aG),t.UM)}, +hf(a){return this.hg(a,null)}, +gpL(){var s=this.e.a +return!s.x&&s.c.a.b.gdh()}} +A.Ue.prototype={ +hg(a,b){var s,r,q,p,o,n,m,l,k=this,j=k.e,i=j.a,h=i.c.a,g=h.b,f=a.b||!i.Y +i=g.a +s=g.b +r=i===s +if(!r&&!k.f&&f){b.toString +return A.vP(b,new A.me(h,A.qZ(B.q,a.a?s:i),B.aG),t.gU)}q=g.gew() +if(a.d){i=a.a +if(i){h=j.gac().C0(q).b +if(new A.bR(h,B.aQ).l(0,q)){s=j.a.c.a.a +h=h!==s.length&&s.charCodeAt(q.a)!==10}else h=!1}else h=!1 +if(h)q=new A.bR(q.a,B.q) +else{if(!i){i=j.gac().C0(q).a +i=new A.bR(i,B.q).l(0,q)&&i!==0&&j.a.c.a.a.charCodeAt(q.a-1)!==10}else i=!1 +if(i)q=new A.bR(q.a,B.aQ)}}i=k.r +if(i){h=g.c +s=g.d +p=a.a?h>s:h"))}, +gpq(){var s,r,q=this.x +if(q==null){s=A.a([],t.bp) +r=this.Q +for(;r!=null;){s.push(r) +r=r.Q}this.x=s +q=s}return q}, +gdt(){if(!this.gv8()){var s=this.w +if(s==null)s=null +else{s=s.c +s=s==null?null:B.b.n(s.gpq(),this)}s=s===!0}else s=!0 +return s}, +gv8(){var s=this.w +return(s==null?null:s.c)===this}, +gxt(){return this.gk6()}, +gk6(){var s,r,q,p +for(s=this.gpq(),r=s.length,q=0;q#"+s+q}, +$iau:1} +A.aC6.prototype={ +$1(a){return!a.glM()&&a.geJ()}, +$S:45} +A.wU.prototype={ +gxt(){return this}, +gGp(){if(!this.geJ())return B.ql +return A.eJ.prototype.gGp.call(this)}, +Ci(a){if(a.Q==null)this.RR(a) +if(this.gdt())a.u9(!0) +else a.z4()}, +a72(a,b){var s,r=this +if(b.Q==null)r.RR(b) +s=r.w +if(s!=null)s.f.push(new A.adr(r,b)) +s=r.w +if(s!=null)s.Df()}, +u9(a){var s,r,q=this,p=q.fr +while(!0){if((p.length!==0?B.b.ga1(p):null)!=null)s=!(p.length!==0?B.b.ga1(p):null).geJ() +else s=!1 +if(!s)break +p.pop()}r=p.length!==0?B.b.ga1(p):null +if(!a||r==null){if(q.geJ()){q.z4() +q.a2q(q)}return}r.u9(!0)}} +A.tA.prototype={ +K(){return"FocusHighlightMode."+this.b}} +A.aC5.prototype={ +K(){return"FocusHighlightStrategy."+this.b}} +A.JW.prototype={ +m(){var s=this.a,r=$.ix.h_$ +r===$&&A.b() +if(J.i(r.a,s.ga9U())){$.iX.bQ$.b.F(0,s.ga9W()) +r=$.ix.h_$ +r===$&&A.b() +r.a=null}s.d=new A.BZ(A.l9(null,null,t.Su,t.S),t.op) +this.eH()}, +Df(){if(this.r)return +this.r=!0 +A.h_(this.gamv())}, +amw(){var s,r,q,p,o,n,m,l,k,j,i,h=this +h.r=!1 +s=h.c +for(r=h.f,q=r.length,p=h.b,o=0;o"))),o=null;l.u();o=n){n=l.gH(l) +if(o==r){l=b?B.ev:B.ew +m.a.$2$alignmentPolicy(n,l) +return!0}}return!1}} +A.aCb.prototype={ +$1(a){var s,r,q,p,o,n,m +for(s=a.c,r=s.length,q=this.b,p=this.a,o=0;o")) +if(!o.gai(o))q=o}if(b===B.KV){n=J.fJ(q) +q=new A.d1(n,A.ab(n).h("d1<1>"))}m=J.lC(q,new A.ay6(new A.I(f.gcE(f).a,-1/0,f.gcE(f).c,1/0))) +if(!m.gai(m)){p=B.b.gN(A.bEN(f.gcE(f).gbH(),m)) +break}p=B.b.gN(A.bEO(f.gcE(f).gbH(),q)) +break +case 1:case 3:q=j.aBj(b,f.gcE(f),h.gGp()) +if(q.length===0){p=i +break}if(r!=null&&!r.d.ga7_()){o=new A.be(q,new A.ay7(r),A.ab(q).h("be<1>")) +if(!o.gai(o))q=o}if(b===B.ajL){n=J.fJ(q) +q=new A.d1(n,A.ab(n).h("d1<1>"))}m=J.lC(q,new A.ay8(new A.I(-1/0,f.gcE(f).b,1/0,f.gcE(f).d))) +if(!m.gai(m)){p=B.b.gN(A.bEM(f.gcE(f).gbH(),m)) +break}p=B.b.gN(A.bEP(f.gcE(f).gbH(),q)) +break +default:p=i}if(p!=null){n=j.EU$ +l=n.i(0,h) +k=new A.FF(b,f) +if(l!=null)l.a.push(k) +else n.p(0,h,new A.aff(A.a([k],t.Kj))) +switch(g){case 0:case 3:j.a.$2$alignmentPolicy(p,B.ew) +break +case 2:case 1:j.a.$2$alignmentPolicy(p,B.ev) +break}return!0}return!1}} +A.b8I.prototype={ +$1(a){return a.b===this.a}, +$S:477} +A.ay0.prototype={ +$2(a,b){if(this.a)if(this.b)return B.e.bM(a.gcE(a).b,b.gcE(b).b) +else return B.e.bM(b.gcE(b).d,a.gcE(a).d) +else if(this.b)return B.e.bM(a.gcE(a).a,b.gcE(b).a) +else return B.e.bM(b.gcE(b).c,a.gcE(a).c)}, +$S:62} +A.ay2.prototype={ +$2(a,b){var s=a.gcE(a).gbH(),r=b.gcE(b).gbH(),q=this.a,p=A.bih(q,s,r) +if(p===0)return A.big(q,s,r) +return p}, +$S:62} +A.ay1.prototype={ +$2(a,b){var s=a.gcE(a).gbH(),r=b.gcE(b).gbH(),q=this.a,p=A.big(q,s,r) +if(p===0)return A.bih(q,s,r) +return p}, +$S:62} +A.ay3.prototype={ +$2(a,b){var s,r,q,p=this.a,o=a.gcE(a),n=b.gcE(b),m=o.a,l=p.a,k=o.c +m=Math.abs(m-l)=s.c}, +$S:45} +A.axX.prototype={ +$2(a,b){return B.e.bM(a.gcE(a).gbH().a,b.gcE(b).gbH().a)}, +$S:62} +A.axY.prototype={ +$1(a){var s=this.a +return!a.gcE(a).l(0,s)&&a.gcE(a).gbH().b<=s.b}, +$S:45} +A.axZ.prototype={ +$1(a){var s=this.a +return!a.gcE(a).l(0,s)&&a.gcE(a).gbH().b>=s.d}, +$S:45} +A.ay_.prototype={ +$2(a,b){return B.e.bM(a.gcE(a).gbH().b,b.gcE(b).gbH().b)}, +$S:62} +A.axU.prototype={ +$1(a){var s,r,q=this,p=q.b.a.pop().b,o=p.e +o.toString +o=A.m2(o) +s=$.ar.al$.f.c.e +s.toString +if(o!=A.m2(s)){o=q.a +s=q.c +o.yl(s) +o.EU$.F(0,s) +return!1}switch(a.a){case 0:case 3:r=B.ew +break +case 1:case 2:r=B.ev +break +default:r=null}q.a.a.$2$alignmentPolicy(p,r) +return!0}, +$S:479} +A.ay5.prototype={ +$1(a){var s=a.e +s.toString +return A.m2(s)===this.a}, +$S:45} +A.ay6.prototype={ +$1(a){var s=a.gcE(a).he(this.a) +return!s.gai(s)}, +$S:45} +A.ay7.prototype={ +$1(a){var s=a.e +s.toString +return A.m2(s)===this.a}, +$S:45} +A.ay8.prototype={ +$1(a){var s=a.gcE(a).he(this.a) +return!s.gai(s)}, +$S:45} +A.fX.prototype={ +ga8N(){var s=this.d +if(s==null){s=this.c.e +s.toString +s=this.d=new A.b8G().$1(s)}s.toString +return s}} +A.b8F.prototype={ +$1(a){var s=a.ga8N() +return A.op(s,A.ab(s).c)}, +$S:480} +A.b8H.prototype={ +$2(a,b){switch(this.a.a){case 1:return B.e.bM(a.b.a,b.b.a) +case 0:return B.e.bM(b.b.c,a.b.c)}}, +$S:202} +A.b8G.prototype={ +$1(a){var s,r,q=A.a([],t.vl),p=t.I,o=a.oc(p) +for(;o!=null;){s=o.f +s.toString +q.push(p.a(s)) +s=A.bP9(o) +if(s==null)o=null +else{s=s.y +r=s==null?null:s.i(0,A.ck(p)) +o=r}}return q}, +$S:482} +A.pk.prototype={ +gcE(a){var s,r,q,p,o=this +if(o.b==null)for(s=o.a,r=A.ab(s).h("ad<1,I>"),s=new A.ad(s,new A.b8D(),r),s=new A.bZ(s,s.gt(s),r.h("bZ")),r=r.h("ax.E");s.u();){q=s.d +if(q==null)q=r.a(q) +p=o.b +if(p==null){o.b=q +p=q}o.b=p.oH(q)}s=o.b +s.toString +return s}} +A.b8D.prototype={ +$1(a){return a.b}, +$S:483} +A.b8E.prototype={ +$2(a,b){switch(this.a.a){case 1:return B.e.bM(a.gcE(a).a,b.gcE(b).a) +case 0:return B.e.bM(b.gcE(b).c,a.gcE(a).c)}}, +$S:484} +A.aOu.prototype={ +aoc(a){var s,r,q,p,o,n=B.b.gN(a).a,m=t.qi,l=A.a([],m),k=A.a([],t.jE) +for(s=a.length,r=0;r") +return A.aa(new A.be(b,new A.aOx(new A.I(-1/0,s.b,1/0,s.d)),r),!0,r.h("z.E"))}, +$S:485} +A.aOx.prototype={ +$1(a){var s=a.b.he(this.a) +return!s.gai(s)}, +$S:486} +A.JX.prototype={ +a8(){return new A.agj(B.m)}} +A.R0.prototype={} +A.agj.prototype={ +gdC(a){var s,r,q,p=this,o=p.d +if(o===$){s=p.a.c +r=A.a([],t.bp) +q=$.b5() +p.d!==$&&A.am() +o=p.d=new A.R0(s,!1,!0,!0,!0,null,null,r,q)}return o}, +m(){this.gdC(this).m() +this.aZ()}, +aY(a){var s=this +s.br(a) +if(a.c!==s.a.c)s.gdC(s).dy=s.a.c}, +A(a){var s=null,r=this.gdC(this) +return A.tz(!1,!1,this.a.f,s,!0,!0,r,!1,s,s,s,s,s,!0)}} +A.a7F.prototype={ +hf(a){a.aPY(a.gdC(a))}} +A.xS.prototype={} +A.a5s.prototype={ +hf(a){var s=$.ar.al$.f.c,r=s.e +r.toString +return A.wV(r).Dg(s,!0)}, +WZ(a,b){return b?B.hj:B.jg}} +A.yb.prototype={} +A.a6u.prototype={ +hf(a){var s=$.ar.al$.f.c,r=s.e +r.toString +return A.wV(r).Dg(s,!1)}, +WZ(a,b){return b?B.hj:B.jg}} +A.tp.prototype={} +A.Jf.prototype={ +hf(a){var s,r +if(!this.c){s=$.ar.al$.f.c +r=s.e +r.toString +A.wV(r).aJN(s,a.a)}}} +A.agk.prototype={} +A.ajX.prototype={ +Tt(a,b){var s +this.agX(a,b) +s=this.EU$.i(0,b) +if(s!=null){s=s.a +if(!!s.fixed$length)A.q(A.a7("removeWhere")) +B.b.ul(s,new A.b8I(a),!0)}}} +A.aoW.prototype={} +A.aoX.prototype={} +A.K2.prototype={ +a8(){return new A.K4(A.aY(t.gx),B.m)}} +A.K4.prototype={ +aq8(){var s=this +s.a.toString +s.e=s.f.ed(0,new A.aCC()) +s.a0O()}, +a0O(){this.a7(new A.aCD(this))}, +A(a){var s,r=this +switch(r.a.f.a){case 1:r.wt() +break +case 2:if(r.e)r.wt() +break +case 0:break}s=r.a +return new A.zr(new A.R3(r,r.d,s.c,null),null,null)}, +wt(){var s,r,q,p,o,n,m,l={},k=l.a="" +for(s=this.f,s=A.ee(s,s.r,A.k(s).c),r=s.$ti.c,q=!1;s.u();){p=s.d +if(p==null)p=r.a(p) +q=!p.aP9()||q +o=l.a +p=p.e +n=p.y +p=n==null?A.k(p).h("dh.T").a(n):n +l.a=o+(p==null?k:p)}if(l.a.length!==0){k=this.c.ae(t.I) +k.toString +m=k.w +if(A.cb()===B.bo)A.BP(new A.aCE(l,m),t.H) +else A.Nz(l.a,m,B.pX)}return!q}} +A.aCC.prototype={ +$1(a){var s=a.f,r=s.y +return r==null?A.k(s).h("dh.T").a(r):r}, +$S:487} +A.aCD.prototype={ +$0(){++this.a.d}, +$S:0} +A.aCE.prototype={ +$0(){var s=0,r=A.y(t.H),q=this +var $async$$0=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:s=2 +return A.t(A.BQ(B.e3,null,t.H),$async$$0) +case 2:A.Nz(q.a.a,q.b,B.pX) +return A.w(null,r)}}) +return A.x($async$$0,r)}, +$S:2} +A.R3.prototype={ +dr(a){return this.r!==a.r}} +A.q6.prototype={ +a8(){return A.bGa(A.k(this).h("q6.T"))}} +A.l2.prototype={ +ga6g(){var s=this.d +return s===$?this.d=this.a.f:s}, +aP9(){var s,r +this.a7(new A.aCB(this)) +s=this.e +r=s.y +return(r==null?A.k(s).h("dh.T").a(r):r)==null}, +wt(){this.e.sk(0,this.a.d.$1(this.ga6g()))}, +KS(a){var s +this.a7(new A.aCA(this,a)) +s=this.c +s.toString +s=A.biK(s) +if(s!=null)s.aq8()}, +ghZ(){return this.a.x}, +kn(a,b){var s=this +s.rb(s.e,"error_text") +s.rb(s.f,"has_interacted_by_user")}, +fk(){var s=this.c +s.toString +s=A.biK(s) +if(s!=null)s.f.F(0,this) +this.rF()}, +A(a){var s,r=this,q=r.a +switch(q.w.a){case 1:r.wt() +break +case 2:q=r.f +s=q.y +if(s==null?A.k(q).h("dh.T").a(s):s)r.wt() +break +case 0:break}q=A.biK(a) +if(q!=null)q.f.G(0,r) +return r.a.e.$1(r)}} +A.aCB.prototype={ +$0(){this.a.wt()}, +$S:0} +A.aCA.prototype={ +$0(){var s=this.a +s.d=this.b +s.f.Oz(0,!0)}, +$S:0} +A.asv.prototype={ +K(){return"AutovalidateMode."+this.b}} +A.b4e.prototype={ +$2(a,b){if(!a.a)a.J(0,b)}, +$S:63} +A.FU.prototype={ +aY(a){this.br(a) +this.wQ()}, +cp(){var s,r,q,p,o=this +o.ei() +s=o.d5$ +r=o.gtH() +q=o.c +q.toString +q=A.uy(q) +o.j5$=q +p=o.ut(q,r) +if(r){o.kn(s,o.hb$) +o.hb$=!1}if(p)if(s!=null)s.m()}, +m(){var s,r=this +r.j4$.af(0,new A.b4e()) +s=r.d5$ +if(s!=null)s.m() +r.d5$=null +r.aZ()}} +A.hy.prototype={ +gR(){var s,r=$.ar.al$.z.i(0,this) +if(r instanceof A.i7){s=r.ok +s.toString +if(A.k(this).c.b(s))return s}return null}} +A.bo.prototype={ +j(a){var s=this,r=s.a,q=r!=null?" "+r:"" +if(A.o(s)===B.akc)return"[GlobalKey#"+A.bt(s)+q+"]" +return"["+("#"+A.bt(s))+q+"]"}} +A.q9.prototype={ +l(a,b){if(b==null)return!1 +if(J.a1(b)!==A.o(this))return!1 +return this.$ti.b(b)&&b.a===this.a}, +gv(a){return A.rL(this.a)}, +j(a){var s="GlobalObjectKey",r=B.c.hM(s,">")?B.c.U(s,0,-8):s +return"["+r+" "+("#"+A.bt(this.a))+"]"}} +A.d.prototype={ +f2(){var s=this.a +return s==null?"Widget":"Widget-"+s.j(0)}, +l(a,b){if(b==null)return!1 +return this.rD(0,b)}, +gv(a){return A.B.prototype.gv.call(this,this)}} +A.a4.prototype={ +bJ(a){return new A.Eo(this,B.al)}} +A.P.prototype={ +bJ(a){return A.bKl(this)}} +A.baR.prototype={ +K(){return"_StateLifecycle."+this.b}} +A.af.prototype={ +gc7(){var s=this.a +s.toString +return s}, +aR(){}, +aY(a){}, +a7(a){a.$0() +this.c.ef()}, +fk(){}, +cn(){}, +m(){}, +cp(){}} +A.b2.prototype={} +A.ha.prototype={ +bJ(a){return new A.xZ(this,B.al,A.k(this).h("xZ"))}} +A.bi.prototype={ +bJ(a){return A.bGG(this)}} +A.aG.prototype={ +b4(a,b){}, +EC(a){}} +A.a2z.prototype={ +bJ(a){return new A.a2y(this,B.al)}} +A.by.prototype={ +bJ(a){return new A.NJ(this,B.al)}} +A.fz.prototype={ +bJ(a){return A.bHY(this)}} +A.FN.prototype={ +K(){return"_ElementLifecycle."+this.b}} +A.agQ.prototype={ +a5u(a){a.ck(new A.b56(this,a)) +a.lw()}, +aCT(){var s,r,q,p=this +p.a=!0 +r=p.b +q=A.aa(r,!0,A.k(r).c) +B.b.fz(q,A.bfm()) +s=q +r.ab(0) +try{r=s +new A.d1(r,A.ch(r).h("d1<1>")).af(0,p.gaCR())}finally{p.a=!1}}} +A.b56.prototype={ +$1(a){this.a.a5u(a)}, +$S:22} +A.au2.prototype={ +XY(a){var s=this +if(a.at){s.e=!0 +return}if(!s.d&&s.a!=null){s.d=!0 +s.a.$0()}s.c.push(a) +a.at=!0}, +aba(a){try{a.$0()}finally{}}, +E9(a,b){var s,r,q,p,o,n,m,l,k,j=this,i={},h=b==null +if(h&&j.c.length===0)return +try{j.d=!0 +if(!h){i.a=null +j.e=!1 +try{b.$0()}finally{}}h=j.c +B.b.fz(h,A.bfm()) +j.e=!1 +i.b=h.length +i.c=0 +for(o=0;o=l){m=j.e +m.toString}else m=!0 +if(m){if(!!h.immutable$list)A.q(A.a7("sort")) +o=l-1 +if(o-0<=32)A.a93(h,0,o,A.bfm()) +else A.a92(h,0,o,A.bfm()) +o=j.e=!1 +i.b=h.length +while(!0){m=i.c +if(!(m>0?h[m-1].as:o))break +i.c=m-1}o=m}}}finally{for(h=j.c,o=h.length,k=0;k").S(d.z[1]),g=new A.c2(J.ao(g.a),g.b,d.h("c2<1,2>")),d=d.z[1];g.u();){m=g.a +if(m==null)m=d.a(m) +if(!a3.n(0,m)){m.a=null +m.Ew() +l=k.r.b +if(m.w===B.eJ){m.fk() +m.ck(A.bfn())}l.b.G(0,m)}}return c}, +hU(a,b){var s,r,q,p=this +p.a=a +p.d=b +p.w=B.eJ +s=a!=null +if(s){r=a.e +r===$&&A.b();++r}else r=1 +p.e=r +if(s)p.r=a.r +q=p.gc7().a +if(q instanceof A.hy)p.r.z.p(0,q,p) +p.Sz() +p.Tf()}, +c_(a,b){this.f=b}, +adq(a,b){new A.aA4(b).$1(a)}, +SE(a){this.d=a}, +a5G(a){var s=a+1,r=this.e +r===$&&A.b() +if(r")),s=s.c;p.u();){r=p.d;(r==null?s.a(r):r).aV.F(0,q)}q.y=null +q.w=B.anJ}, +lw(){var s=this,r=s.f,q=r==null?null:r.a +if(q instanceof A.hy){r=s.r.z +if(J.i(r.i(0,q),s))r.F(0,q)}s.z=s.f=null +s.w=B.La}, +gq(a){var s=this.ga9() +if(s instanceof A.N)return s.gq(s) +return null}, +zY(a,b){var s=this.z;(s==null?this.z=A.dN(t.pq):s).G(0,a) +a.adl(this,b) +s=a.f +s.toString +return t.WB.a(s)}, +U7(a){return this.zY(a,null)}, +a8E(a,b){var s=this.y,r=s==null?null:s.i(0,A.ck(b)) +if(r!=null)return b.a(this.zY(r,a)) +this.Q=!0 +return null}, +ae(a){return this.a8E(null,a)}, +NB(a){var s=this.oc(a) +if(s==null)s=null +else{s=s.f +s.toString}return a.h("0?").a(s)}, +oc(a){var s=this.y +return s==null?null:s.i(0,A.ck(a))}, +Tf(){var s=this.a +this.c=s==null?null:s.c}, +Sz(){var s=this.a +this.y=s==null?null:s.y}, +xa(a){var s,r=this.a +while(!0){s=r==null +if(!(!s&&A.o(r.gc7())!==A.ck(a)))break +r=r.a}s=s?null:r.gc7() +return a.h("0?").a(s)}, +F_(a){var s,r,q=this.a +for(;s=q==null,!s;){if(q instanceof A.i7){r=q.ok +r.toString +r=a.b(r)}else r=!1 +if(r)break +q=q.a}t.lE.a(q) +if(s)s=null +else{s=q.ok +s.toString}return a.h("0?").a(s)}, +aHY(a){var s,r,q=this.a +for(s=null;q!=null;){if(q instanceof A.i7){r=q.ok +r.toString +r=a.b(r)}else r=!1 +if(r)s=q +q=q.a}if(s==null)r=null +else{r=s.ok +r.toString}return a.h("0?").a(r)}, +x9(a){var s=this.a +for(;s!=null;){if(s instanceof A.c0&&a.b(s.ga9()))return a.a(s.ga9()) +s=s.a}return null}, +tR(a){var s=this.a +while(!0){if(!(s!=null&&a.$1(s)))break +s=s.a}}, +cp(){this.ef()}, +iv(a){var s=this.c +if(s!=null)s.iv(a)}, +f2(){var s=this.f +s=s==null?null:s.f2() +return s==null?"#"+A.bt(this)+"(DEFUNCT)":s}, +ef(){var s=this +if(s.w!==B.eJ)return +if(s.as)return +s.as=!0 +s.r.XY(s)}, +MP(a){var s +if(this.w===B.eJ)s=!this.as&&!a +else s=!0 +if(s)return +try{this.pS()}finally{}}, +acb(){return this.MP(!1)}, +pS(){this.as=!1}, +$iE:1} +A.aA1.prototype={ +$1(a){this.a.a=a}, +$S:22} +A.aA_.prototype={ +$1(a){this.a.push(a) +return!0}, +$S:44} +A.azZ.prototype={ +$1(a){var s=null +return A.kY("",a,!0,B.bk,s,!1,s,s,B.aS,s,!1,!0,!0,B.e2,s,t.F)}, +$S:488} +A.aA2.prototype={ +$1(a){var s=this.a.n(0,a) +return s?null:a}, +$S:489} +A.aA3.prototype={ +$2(a,b){return new A.tN(b,a,t.Bc)}, +$S:490} +A.aA4.prototype={ +$1(a){a.SE(this.a) +if(!(a instanceof A.c0))a.ck(this)}, +$S:22} +A.azX.prototype={ +$1(a){a.a5G(this.a)}, +$S:22} +A.aA0.prototype={ +$1(a){a.Ew()}, +$S:22} +A.azY.prototype={ +$1(a){a.Kd(this.a)}, +$S:22} +A.a0K.prototype={ +aX(a){var s=this.d,r=new A.MP(s,A.aB(t.T)) +r.aW() +r.alJ(s) +return r}} +A.IH.prototype={ +hU(a,b){this.YO(a,b) +this.Q4()}, +Q4(){this.acb()}, +pS(){var s,r,q,p,o,n,m=this,l=null +try{l=m.aP() +m.f.toString}catch(o){s=A.ai(o) +r=A.aH(o) +n=A.JG(A.blg(A.bX("building "+m.j(0)),s,r,new A.awl())) +l=n}finally{m.Om()}try{m.ay=m.fM(m.ay,l,m.d)}catch(o){q=A.ai(o) +p=A.aH(o) +n=A.JG(A.blg(A.bX("building "+m.j(0)),q,p,new A.awm())) +l=n +m.ay=m.fM(null,l,m.d)}}, +ck(a){var s=this.ay +if(s!=null)a.$1(s)}, +oN(a){this.ay=null +this.qa(a)}} +A.awl.prototype={ +$0(){var s=A.a([],t.R) +return s}, +$S:42} +A.awm.prototype={ +$0(){var s=A.a([],t.R) +return s}, +$S:42} +A.Eo.prototype={ +aP(){var s=this.f +s.toString +return t.Iz.a(s).A(this)}, +c_(a,b){this.Hl(0,b) +this.MP(!0)}} +A.i7.prototype={ +aP(){return this.ok.A(this)}, +Q4(){this.ok.aR() +this.ok.cp() +this.agB()}, +pS(){var s=this +if(s.p1){s.ok.cp() +s.p1=!1}s.agC()}, +c_(a,b){var s,r,q,p=this +p.Hl(0,b) +s=p.ok +r=s.a +r.toString +q=p.f +q.toString +s.a=t.d3.a(q) +s.aY(r) +p.MP(!0)}, +cn(){this.YL() +this.ok.cn() +this.ef()}, +fk(){this.ok.fk() +this.Oj()}, +lw(){var s=this +s.yk() +s.ok.m() +s.ok=s.ok.c=null}, +zY(a,b){return this.Ok(a,b)}, +U7(a){return this.zY(a,null)}, +cp(){this.Ol() +this.p1=!0}} +A.Mu.prototype={ +aP(){var s=this.f +s.toString +return t.yH.a(s).b}, +c_(a,b){var s=this,r=s.f +r.toString +t.yH.a(r) +s.Hl(0,b) +s.Xe(r) +s.MP(!0)}, +Xe(a){this.xv(a)}} +A.xZ.prototype={ +a__(a){this.ck(new A.aLo(a))}, +xv(a){var s=this.f +s.toString +this.a__(this.$ti.h("ha<1>").a(s))}} +A.aLo.prototype={ +$1(a){if(a instanceof A.c0)this.a.zm(a.ga9()) +else a.ck(this)}, +$S:22} +A.iY.prototype={ +Sz(){var s=this,r=s.a,q=r==null?null:r.y +if(q==null)q=B.aba +r=s.f +r.toString +s.y=q.Wx(0,A.o(r),s)}, +Ya(a,b){this.aV.p(0,a,b)}, +adl(a,b){this.Ya(a,null)}, +abr(a,b){b.cp()}, +Xe(a){var s=this.f +s.toString +if(t.WB.a(s).dr(a))this.ahK(a)}, +xv(a){var s,r,q +for(s=this.aV,r=A.k(s),s=new A.G0(s,s.HP(),r.h("G0<1>")),r=r.c;s.u();){q=s.d +this.abr(a,q==null?r.a(q):q)}}} +A.c0.prototype={ +ga9(){var s=this.ay +s.toString +return s}, +aqh(){var s=this.a +while(!0){if(!(s!=null&&!(s instanceof A.c0)))break +s=s.a}return t.p3.a(s)}, +aqg(){var s,r={},q=r.a=this.a +r.b=null +while(!0){if(!(q!=null&&!(q instanceof A.c0)))break +if(q instanceof A.xZ){r.b=q +break}s=q.a +r.a=s +q=s}return r.b}, +hU(a,b){var s=this +s.YO(a,b) +s.ay=t.F5.a(s.gc7()).aX(s) +s.Kd(b) +s.Om()}, +c_(a,b){this.Hl(0,b) +this.a39()}, +pS(){this.a39()}, +a39(){var s=this +t.F5.a(s.gc7()).b4(s,s.ga9()) +s.Om()}, +fk(){this.Oj()}, +lw(){var s=this,r=t.F5.a(s.gc7()) +s.yk() +r.EC(s.ga9()) +s.ay.m() +s.ay=null}, +SE(a){var s,r=this,q=r.d +r.agS(a) +s=r.CW +s.toString +s.oV(r.ga9(),q,r.d)}, +Kd(a){var s,r,q=this +q.d=a +s=q.CW=q.aqh() +if(s!=null)s.oT(q.ga9(),a) +r=q.aqg() +if(r!=null){s=r.f +s.toString +t.oS.a(s).zm(q.ga9())}}, +Ew(){var s=this,r=s.CW +if(r!=null){r.q1(s.ga9(),s.d) +s.CW=null}s.d=null}} +A.aPR.prototype={} +A.a2y.prototype={ +oN(a){this.qa(a)}, +oT(a,b){}, +oV(a,b,c){}, +q1(a,b){}} +A.NJ.prototype={ +ck(a){var s=this.p1 +if(s!=null)a.$1(s)}, +oN(a){this.p1=null +this.qa(a)}, +hU(a,b){var s,r,q=this +q.vU(a,b) +s=q.p1 +r=q.f +r.toString +q.p1=q.fM(s,t.Mp.a(r).c,null)}, +c_(a,b){var s,r,q=this +q.rE(0,b) +s=q.p1 +r=q.f +r.toString +q.p1=q.fM(s,t.Mp.a(r).c,null)}, +oT(a,b){var s=this.ay +s.toString +t.GM.a(s).sbN(a)}, +oV(a,b,c){}, +q1(a,b){var s=this.ay +s.toString +t.GM.a(s).sbN(null)}} +A.kr.prototype={ +ga9(){return t.Az.a(A.c0.prototype.ga9.call(this))}, +ghK(a){var s=this.p1 +s===$&&A.b() +return new A.be(s,new A.aJG(this),A.ab(s).h("be<1>"))}, +oT(a,b){var s=this.ga9(),r=b.a +s.Vj(0,a,r==null?null:r.ga9())}, +oV(a,b,c){var s=this.ga9(),r=c.a +s.FE(a,r==null?null:r.ga9())}, +q1(a,b){this.ga9().F(0,a)}, +ck(a){var s,r,q,p,o=this.p1 +o===$&&A.b() +s=o.length +r=this.p2 +q=0 +for(;q") +h.d=new A.aw(t.m.a(p),new A.dq(new A.eE(new A.dO(n,1,B.Z)),o,m),m.h("aw"))}}if(s)s=!(isFinite(q.a)&&isFinite(q.b)) +else s=!0 +h.w=s}, +Hc(a,b){var s,r,q,p=this +p.f=b +switch(b.a.a){case 1:s=p.e +s===$&&A.b() +s.sbP(0,new A.jL(b.gek(b),new A.bb(A.a([],t.x8),t.jc),0)) +r=!1 +break +case 0:s=p.e +s===$&&A.b() +s.sbP(0,b.gek(b)) +r=!0 +break +default:r=null}s=p.f +p.b=s.Eq(s.ga9J(),p.f.gN5()) +p.f.f.O8(r) +p.f.r.O7() +s=p.f +q=A.qu(p.gan4(),!1) +p.r=q +s.b.xf(0,q) +q=p.e +q===$&&A.b() +q.cL() +q=q.dB$ +q.b=!0 +q.a.push(p.gabE())}, +j(a){var s,r,q,p,o,n=this.f +n===$&&A.b() +s=n.d.b +r=n.e.b +n=n.f.a.c.j(0) +q=s.j(0) +p=r.j(0) +o=this.e +o===$&&A.b() +return"HeroFlight(for: "+n+", from: "+q+", to: "+p+" "+A.h(o.c)+")"}} +A.b4P.prototype={ +$2(a,b){var s,r=null,q=this.a,p=q.b +p===$&&A.b() +s=q.e +s===$&&A.b() +s=p.a_(0,s.gk(s)) +s.toString +p=q.f +p===$&&A.b() +p=p.c +return A.hc(p.b-s.d,A.tK(new A.cS(q.d,!1,b,r),!0,r),r,r,s.a,p.a-s.c,s.b,r)}, +$S:508} +A.b4Q.prototype={ +$0(){var s,r=this.a +r.x=!1 +this.b.cx.J(0,this) +s=r.e +s===$&&A.b() +r.a37(s.gaL(s))}, +$S:0} +A.lJ.prototype={ +KV(){var s,r,q,p=$.nS() +A.pZ(this) +if(p.a.get(this).cx.a)return +p=this.b +p=p.gbw(p) +s=A.k(p).h("be") +r=A.aa(new A.be(p,new A.aEm(),s),!1,s.h("z.E")) +for(p=r.length,q=0;q"),a=t.k2;s.u();){a0=s.gH(s) +a1=a0.a +a2=a0.b +a3=k.i(0,a1) +a4=p.i(0,a1) +if(a3==null)a5=null +else{a0=o.id +if(a0==null)a0=A.q(A.R("RenderBox was not laid out: "+A.o(o).j(0)+"#"+A.bt(o))) +a6=a3.a.f +if(a6==null)a6=a2.a.f +if(a6==null)a6=j +a5=new A.b4O(b2,q,a0,b0,b1,a2,a3,r,a6,b3,a4!=null)}if(a5!=null&&a5.gdh()){k.F(0,a1) +if(a4!=null){a0=a4.f +a0===$&&A.b() +a6=a0.a +if(a6===B.ec&&a5.a===B.ed){a0=a4.e +a0===$&&A.b() +a0.sbP(0,new A.jL(a5.gek(a5),new A.bb(A.a([],h),g),0)) +a0=a4.b +a0===$&&A.b() +a4.b=new A.N7(a0,a0.b,a0.a,a)}else{a6=a6===B.ed&&a5.a===B.ec +a7=a4.e +if(a6){a7===$&&A.b() +a0=a5.gek(a5) +a6=a4.f +a6=a6.gek(a6) +a6=a6.gk(a6) +a7.sbP(0,new A.aw(c.a(a0),new A.aO(a6,1,d),b)) +a0=a4.f +a6=a0.f +a7=a5.r +if(a6!==a7){a6.Aj(!0) +a7.O7() +a0=a4.f +a6=a4.b +a6===$&&A.b() +a4.b=a0.Eq(a6.b,a5.gN5())}else{a6=a4.b +a6===$&&A.b() +a4.b=a0.Eq(a6.b,a6.a)}}else{a6=a4.b +a6===$&&A.b() +a7===$&&A.b() +a4.b=a0.Eq(a6.a_(0,a7.gk(a7)),a5.gN5()) +a4.c=null +a0=a5.a +a6=a4.e +if(a0===B.ed)a6.sbP(0,new A.jL(a5.gek(a5),new A.bb(A.a([],h),g),0)) +else a6.sbP(0,a5.gek(a5)) +a4.f.f.Aj(!0) +a4.f.r.Aj(!0) +a5.f.O8(a0===B.ec) +a5.r.O7() +a0=a4.r.f.gR() +if(a0!=null)a0.a2p()}}a4.f=a5}else{a0=new A.rj(i,B.eU) +a6=A.a([],h) +a7=new A.bb(a6,g) +a8=new A.Mt(a7,new A.bb(A.a([],f),e),0) +a8.a=B.Q +a8.b=0 +a8.cL() +a7.b=!0 +a6.push(a0.garB()) +a0.e=a8 +a0.Hc(0,a5) +p.p(0,a1,a0)}}else if(a4!=null)a4.w=!0}for(s=J.ao(k.gbw(k));s.u();)s.gH(s).a95()}, +asj(a){var s=a.f +s===$&&A.b() +this.b.F(0,s.f.a.c)}, +aoW(a,b,c,d,e){var s=t.rA.a(e.gc7()),r=A.cT(e,null),q=A.cT(d,null) +if(r==null||q==null)return s.e +return A.h1(b,new A.aEk(r,c,q.f,r.f,b,s),null)}} +A.aEm.prototype={ +$1(a){var s=a.f +s===$&&A.b() +if(s.y)if(s.a===B.ed){s=a.e +s===$&&A.b() +s=s.gaL(s)===B.Q}else s=!1 +else s=!1 +return s}, +$S:511} +A.aEl.prototype={ +$1(a){var s=this,r=s.b +if(r.a==null||s.c.a==null)return +s.a.a4D(r,s.c,s.d,s.e)}, +$S:6} +A.aEk.prototype={ +$2(a,b){var s=this,r=s.c,q=s.d,p=s.e +r=s.b===B.ec?new A.Jw(r,q).a_(0,p.gk(p)):new A.Jw(q,r).a_(0,p.gk(p)) +return A.la(s.f.e,s.a.wH(r),null)}, +$S:512} +A.bC.prototype={ +A(a){var s,r,q,p,o,n,m,l,k,j,i,h,g=this,f=null,e=a.ae(t.I) +e.toString +s=e.w +r=A.Km(a) +q=g.d +if(q==null)q=r.a +p=r.b +o=r.c +n=r.d +m=r.e +e=g.c +if(e==null){e=A.cZ(f,q,q) +return new A.bu(A.bI(f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,g.z,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,f,f,f,f,f,f,f,f,f,f),!1,!1,!1,!1,e,f)}l=r.r +k=l==null?f:A.S(l,0,1) +if(k==null)k=1 +j=g.x +if(j==null){l=r.f +l.toString +j=l}if(k!==1)j=A.K(B.e.bi(255*((j.gk(j)>>>24&255)/255*k)),j.gk(j)>>>16&255,j.gk(j)>>>8&255,j.gk(j)&255) +l=A.ep(e.a) +i=A.a([],t.uf) +if(p!=null)i.push(new A.tB("FILL",p)) +if(o!=null)i.push(new A.tB("wght",o)) +if(n!=null)i.push(new A.tB("GRAD",n)) +if(m!=null)i.push(new A.tB("opsz",m)) +h=A.bjD(f,f,B.afd,f,f,!0,f,A.di(f,A.eb(f,f,j,f,f,f,f,f,e.b,f,f,q,f,i,f,f,f,!1,f,f,f,f,e.c,r.w,f,f),l),B.b3,s,f,1,B.aq) +if(e.d)switch(s.a){case 0:e=new A.bS(new Float64Array(16)) +e.fQ() +e.rq(0,-1,1,1) +h=A.EW(B.X,h,e,!1) +break +case 1:break}e=A.cZ(A.f1(h,f,f),q,q) +return new A.bu(A.bI(f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,g.z,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,f,f,f,f,f,f,f,f,f,f),!1,!1,!1,!1,new A.pY(!0,e,f),f)}, +geB(a){return this.c}} +A.aM.prototype={ +l(a,b){var s=this +if(b==null)return!1 +if(J.a1(b)!==A.o(s))return!1 +return b instanceof A.aM&&b.a===s.a&&b.b===s.b&&b.c==s.c&&b.d===s.d&&A.e4(null,null)}, +gv(a){var s=this +return A.X(s.a,s.b,s.c,s.d,A.dt(B.a1W),B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){return"IconData(U+"+B.c.eM(B.f.o0(this.a,16).toUpperCase(),5,"0")+")"}} +A.x8.prototype={ +dr(a){return!this.w.l(0,a.w)}, +xQ(a,b,c){return A.x9(c,this.w,null)}} +A.aFp.prototype={ +$1(a){return A.x9(this.c,A.bq4(a).cU(this.b),this.a)}, +$S:513} +A.cX.prototype={ +wJ(a,b,c,d,e,f,g,h){var s,r=this,q=g==null?r.a:g,p=b==null?r.b:b,o=h==null?r.c:h,n=c==null?r.d:c,m=e==null?r.e:e,l=a==null?r.f:a +if(d==null){s=r.r +s=s==null?null:A.S(s,0,1)}else s=d +return new A.cX(q,p,o,n,m,l,s,f==null?r.w:f)}, +co(a){return this.wJ(a,null,null,null,null,null,null,null)}, +a7Y(a){return this.wJ(null,null,null,a,null,null,null,null)}, +cU(a){var s=a.r +s=s==null?null:A.S(s,0,1) +return this.wJ(a.f,a.b,a.d,s,a.e,a.w,a.a,a.c)}, +L(a){return this}, +l(a,b){var s,r,q=this +if(b==null)return!1 +if(J.a1(b)!==A.o(q))return!1 +if(b instanceof A.cX)if(b.a==q.a)if(b.b==q.b)if(b.c==q.c)if(b.d==q.d)if(b.e==q.e)if(J.i(b.f,q.f)){s=b.r +s=s==null?null:A.S(s,0,1) +r=q.r +s=s==(r==null?null:A.S(r,0,1))&&A.e4(b.w,q.w)}else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +return s}, +gv(a){var s,r=this,q=r.r +q=q==null?null:A.S(q,0,1) +s=r.w +s=s==null?null:A.dt(s) +return A.X(r.a,r.b,r.c,r.d,r.e,r.f,q,s,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}} +A.agM.prototype={} +A.C3.prototype={ +a8(){return new A.Rj(B.m)}} +A.Rj.prototype={ +aR(){var s=this +s.b5() +$.ar.cI$.push(s) +s.z=new A.a0b(s,t.uZ)}, +m(){var s,r=this +B.b.F($.ar.cI$,r) +r.aBw() +s=r.at +if(s!=null)s.m() +s=r.z +s===$&&A.b() +s.a=null +r.RS(null) +r.aZ()}, +cp(){var s,r=this +r.aD6() +r.a3E() +s=r.c +s.toString +if(A.aae(s))r.avy() +else r.a4K(!0) +r.ei()}, +aY(a){var s,r,q=this +q.br(a) +if(q.r&&q.a.e==null!==(a.e==null)){s=q.D1() +r=q.d +r.toString +r.P(0,q.a14(!0)) +q.d.J(0,s)}if(!q.a.c.l(0,a.c))q.a3E()}, +aD6(){var s=this.c +s.toString +s=A.cT(s,B.ao9) +s=s==null?null:s.z +if(s==null){s=$.a8g.Lb$ +s===$&&A.b() +s=(s.a&2)!==0}this.w=s}, +a3E(){var s,r,q,p,o=this,n=o.z +n===$&&A.b() +s=o.a +r=s.c +q=o.c +q.toString +p=s.r +if(p!=null&&s.w!=null){p.toString +s=s.w +s.toString +s=new A.V(p,s)}else s=null +o.aDv(new A.Nh(n,r,t.JE).L(A.VV(q,s)))}, +a14(a){var s,r=this,q=r.ax +if(q==null||a){r.as=r.Q=null +q=r.a +s=q.e==null?null:r.gasz() +q=q.f!=null||!1?new A.b50(r):null +q=r.ax=new A.kj(r.gasB(),s,q)}q.toString +return q}, +D1(){return this.a14(!1)}, +asC(a,b){this.a7(new A.b52(this,a,b))}, +asA(a){this.a7(new A.b51(this,a))}, +RS(a){var s=this.e +$.cF.p3$.push(new A.b53(s)) +this.e=a}, +aDv(a){var s,r,q=this,p=q.d +if(p==null)s=null +else{s=p.a +if(s==null)s=p}r=a.a +if(s===(r==null?a:r))return +if(q.r){p.toString +p.J(0,q.D1())}q.a.toString +q.a7(new A.b54(q)) +q.a7(new A.b55(q)) +q.d=a +if(q.r)a.P(0,q.D1())}, +avy(){var s,r=this +if(r.r)return +s=r.d +s.toString +s.P(0,r.D1()) +s=r.at +if(s!=null)s.m() +r.at=null +r.r=!0}, +a4K(a){var s,r=this +if(!r.r)return +if(a)if(r.at==null){s=r.d +s=(s==null?null:s.a)!=null}else s=!1 +else s=!1 +if(s)r.at=r.d.a.ic() +s=r.d +s.toString +s.J(0,r.D1()) +r.r=!1}, +aBw(){return this.a4K(!1)}, +A(a){var s,r,q,p,o,n,m,l,k,j,i,h,g=this,f=null,e=g.Q +if(e!=null){s=g.a.f +if(s!=null)return s.$3(a,e,g.as)}e=g.e +s=e==null +r=s?f:e.a +q=s?f:e.c +p=g.a +o=p.r +n=p.w +e=s?f:e.b +if(e==null)e=1 +s=p.x +m=p.Q +l=p.as +k=p.at +j=p.ax +i=g.w +i===$&&A.b() +h=new A.a6L(r,q,o,n,e,s,f,p.z,m,l,k,j,f,!1,i,!1,f) +if(!p.cy)h=new A.bu(A.bI(f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,!0,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,f,f,f,f,f,f,f,f,f,f,f,f,f),!1,!1,!1,!1,h,f) +e=p.d +if(e!=null)h=e.$4(a,h,g.x,g.y) +e=g.a.e +return e!=null?e.$3(a,h,g.f):h}} +A.b50.prototype={ +$2(a,b){var s=this.a +s.a7(new A.b5_(s,a,b))}, +$S:514} +A.b5_.prototype={ +$0(){var s=this.a +s.Q=this.b +s.as=this.c}, +$S:0} +A.b52.prototype={ +$0(){var s,r=this.a +r.RS(this.b) +r.as=r.Q=r.f=null +s=r.x +r.x=s==null?0:s+1 +r.y=B.b0.tX(r.y,this.c)}, +$S:0} +A.b51.prototype={ +$0(){var s=this.a +s.f=this.b +s.as=s.Q=null}, +$S:0} +A.b53.prototype={ +$1(a){var s=this.a +if(s!=null)s.a.m() +return null}, +$S:6} +A.b54.prototype={ +$0(){this.a.RS(null)}, +$S:0} +A.b55.prototype={ +$0(){var s=this.a +s.x=s.f=null +s.y=!1}, +$S:0} +A.aoy.prototype={} +A.a1W.prototype={ +A(a){var s,r,q,p=null,o=A.Km(a),n=this.d +if(n==null)n=o.a +s=o.r +r=s==null?p:A.S(s,0,1) +q=this.e +if(q==null){s=o.f +s.toString +q=s}if(r!=null&&r!==1)q=A.K(B.e.bi(255*((q.gk(q)>>>24&255)/255*r)),q.gk(q)>>>16&255,q.gk(q)>>>8&255,q.gk(q)&255) +s=A.bq5(B.X,q,p,p,!0,B.hh,B.qd,p,n,this.c,p,p,!1,B.ee,n) +return new A.bu(A.bI(p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p),!1,!1,!1,!1,s,p)}} +A.a_Q.prototype={ +hh(a){var s=A.axe(this.a,this.b,a) +s.toString +return s}} +A.Jw.prototype={ +hh(a){var s=A.Br(this.a,this.b,a) +s.toString +return s}} +A.wC.prototype={ +hh(a){var s=A.fx(this.a,this.b,a) +s.toString +return s}} +A.w_.prototype={ +hh(a){return A.mD(this.a,this.b,a)}} +A.XE.prototype={ +hh(a){return A.atv(this.a,this.b,a)}} +A.p_.prototype={ +hh(a){var s=A.c1(this.a,this.b,a) +s.toString +return s}} +A.a2_.prototype={} +A.C7.prototype={ +gwa(){var s,r=this,q=r.d +if(q===$){s=A.bw(B.z,null,r.a.d,0,null,1,null,r) +r.d!==$&&A.am() +r.d=s +q=s}return q}, +ghH(){var s,r=this,q=r.e +if(q===$){s=r.gwa() +q=r.e=A.c_(r.a.c,s,null)}return q}, +aR(){var s,r=this +r.b5() +s=r.gwa() +s.cL() +s=s.eo$ +s.b=!0 +s.a.push(new A.aFO(r)) +r.a_W() +r.Uj()}, +aY(a){var s,r=this +r.br(a) +if(r.a.c!==a.c){r.ghH().m() +s=r.gwa() +r.e=A.c_(r.a.c,s,null)}r.gwa().e=r.a.d +if(r.a_W()){r.v4(new A.aFN(r)) +s=r.gwa() +s.sk(0,0) +s.bS(0) +r.Uj()}}, +m(){this.ghH().m() +this.gwa().m() +this.ajk()}, +aDy(a,b){var s +if(a==null)return +s=this.ghH() +a.sTj(a.a_(0,s.gk(s))) +a.scf(0,b)}, +a_W(){var s={} +s.a=!1 +this.v4(new A.aFM(s,this)) +return s.a}, +Uj(){}, +$iaN:1} +A.aFO.prototype={ +$1(a){switch(a.a){case 3:this.a.a.toString +break +case 0:case 1:case 2:break}}, +$S:9} +A.aFN.prototype={ +$3(a,b,c){this.a.aDy(a,b) +return a}, +$S:214} +A.aFM.prototype={ +$3(a,b,c){var s +if(b!=null){if(a==null)a=c.$1(b) +s=a.b +if(!J.i(b,s==null?a.a:s))this.a.a=!0 +else if(a.b==null)a.scf(0,a.a)}else a=null +return a}, +$S:214} +A.Ai.prototype={ +aR(){this.ah2() +var s=this.gwa() +s.cL() +s=s.dB$ +s.b=!0 +s.a.push(this.garz())}, +arA(){this.a7(new A.ars())}} +A.ars.prototype={ +$0(){}, +$S:0} +A.Hz.prototype={ +a8(){return new A.ad7(null,null,B.m)}} +A.ad7.prototype={ +v4(a){this.CW=t.QS.a(a.$3(this.CW,this.a.r,new A.b_W()))}, +A(a){var s,r=this.CW +r.toString +s=this.ghH() +return new A.b8(J.bns(r.a_(0,s.gk(s)),B.a4,B.py),this.a.w,null)}} +A.b_W.prototype={ +$1(a){return new A.wC(t.A0.a(a),null)}, +$S:516} +A.HB.prototype={ +a8(){return new A.ad9(null,null,B.m)}} +A.ad9.prototype={ +v4(a){var s,r=this,q=null,p=t.ir +r.CW=p.a(a.$3(r.CW,r.a.w,new A.b00())) +r.cx=p.a(a.$3(r.cx,r.a.x,new A.b01())) +s=r.cy +r.a.toString +r.cy=p.a(a.$3(s,q,new A.b02())) +s=r.db +r.a.toString +r.db=p.a(a.$3(s,q,new A.b03())) +s=r.dx +r.a.toString +r.dx=p.a(a.$3(s,q,new A.b04())) +s=r.dy +r.a.toString +r.dy=p.a(a.$3(s,q,new A.b05()))}, +A(a){var s,r,q,p,o,n,m=this,l=null,k=m.CW +if(k==null)k=l +else{s=m.ghH() +s=k.a_(0,s.gk(s)) +k=s}s=m.cx +if(s==null)s=l +else{r=m.ghH() +r=s.a_(0,r.gk(r)) +s=r}r=m.cy +if(r==null)r=l +else{q=m.ghH() +q=r.a_(0,q.gk(q)) +r=q}q=m.db +if(q==null)q=l +else{p=m.ghH() +p=q.a_(0,p.gk(p)) +q=p}p=m.dx +if(p==null)p=l +else{o=m.ghH() +o=p.a_(0,o.gk(o)) +p=o}o=m.dy +if(o==null)o=l +else{n=m.ghH() +n=o.a_(0,n.gk(n)) +o=n}return A.hc(q,m.a.r,o,l,k,r,s,p)}} +A.b00.prototype={ +$1(a){return new A.aO(A.pt(a),null,t.Y)}, +$S:50} +A.b01.prototype={ +$1(a){return new A.aO(A.pt(a),null,t.Y)}, +$S:50} +A.b02.prototype={ +$1(a){return new A.aO(A.pt(a),null,t.Y)}, +$S:50} +A.b03.prototype={ +$1(a){return new A.aO(A.pt(a),null,t.Y)}, +$S:50} +A.b04.prototype={ +$1(a){return new A.aO(A.pt(a),null,t.Y)}, +$S:50} +A.b05.prototype={ +$1(a){return new A.aO(A.pt(a),null,t.Y)}, +$S:50} +A.Hy.prototype={ +a8(){return new A.ad6(null,null,B.m)}} +A.ad6.prototype={ +v4(a){this.z=t.ir.a(a.$3(this.z,this.a.w,new A.b_V()))}, +Uj(){var s=this.ghH(),r=this.z +r.toString +this.Q=new A.aw(t.m.a(s),r,A.k(r).h("aw"))}, +A(a){var s=this.Q +s===$&&A.b() +return new A.cS(s,!1,this.a.r,null)}} +A.b_V.prototype={ +$1(a){return new A.aO(A.pt(a),null,t.Y)}, +$S:50} +A.Hw.prototype={ +a8(){return new A.ad5(null,null,B.m)}} +A.ad5.prototype={ +v4(a){this.CW=t.Dh.a(a.$3(this.CW,this.a.w,new A.b_U()))}, +A(a){var s,r=null,q=this.CW +q.toString +s=this.ghH() +s=q.a_(0,s.gk(s)) +return A.fw(this.a.r,r,r,B.aR,!0,s,r,r,B.aq)}} +A.b_U.prototype={ +$1(a){return new A.p_(t.em.a(a),null)}, +$S:517} +A.HA.prototype={ +a8(){return new A.ad8(null,null,B.m)}} +A.ad8.prototype={ +v4(a){var s=this,r=s.CW +s.a.toString +s.CW=t.eJ.a(a.$3(r,B.aJ,new A.b_X())) +s.cx=t.ir.a(a.$3(s.cx,s.a.z,new A.b_Y())) +r=t.YJ +s.cy=r.a(a.$3(s.cy,s.a.Q,new A.b_Z())) +s.db=r.a(a.$3(s.db,s.a.at,new A.b0_()))}, +A(a){var s,r,q,p,o,n=this,m=n.a,l=m.w +m=m.x +s=n.CW +s.toString +r=n.ghH() +r=s.a_(0,r.gk(r)) +s=n.cx +s.toString +q=n.ghH() +q=s.a_(0,q.gk(q)) +s=n.a.Q +p=n.db +p.toString +o=n.ghH() +o=p.a_(0,o.gk(o)) +o.toString +return new A.a6h(l,m,r,q,s,o,n.a.r,null)}} +A.b_X.prototype={ +$1(a){return new A.w_(t.m_.a(a),null)}, +$S:518} +A.b_Y.prototype={ +$1(a){return new A.aO(A.pt(a),null,t.Y)}, +$S:50} +A.b_Z.prototype={ +$1(a){return new A.dk(t.n8.a(a),null)}, +$S:108} +A.b0_.prototype={ +$1(a){return new A.dk(t.n8.a(a),null)}, +$S:108} +A.G4.prototype={ +m(){var s=this,r=s.c4$ +if(r!=null)r.J(0,s.ghI()) +s.c4$=null +s.aZ()}, +cn(){this.d3() +this.cT() +this.hJ()}} +A.oj.prototype={ +bJ(a){return new A.Kq(A.cx(null,null,null,t.F,t.X),this,B.al,A.k(this).h("Kq"))}} +A.Kq.prototype={ +adl(a,b){var s=this.aV,r=this.$ti,q=r.h("bz<1>?").a(s.i(0,a)),p=q==null +if(!p&&q.gai(q))return +if(b==null)s.p(0,a,A.dN(r.c)) +else{p=p?A.dN(r.c):q +p.G(0,r.c.a(b)) +s.p(0,a,p)}}, +abr(a,b){var s,r=this.$ti,q=r.h("bz<1>?").a(this.aV.i(0,b)) +if(q==null)return +if(!q.gai(q)){s=this.f +s.toString +s=r.h("oj<1>").a(s).adp(a,q) +r=s}else r=!0 +if(r)b.cp()}} +A.kk.prototype={ +dr(a){return a.f!==this.f}, +bJ(a){var s=new A.G5(A.cx(null,null,null,t.F,t.X),this,B.al,A.k(this).h("G5")) +this.f.P(0,s.gQL()) +return s}} +A.G5.prototype={ +c_(a,b){var s,r,q=this,p=q.f +p.toString +s=q.$ti.h("kk<1>").a(p).f +r=b.f +if(s!==r){p=q.gQL() +s.J(0,p) +r.P(0,p)}q.ahJ(0,b)}, +aP(){var s,r=this +if(r.ak){s=r.f +s.toString +r.YU(r.$ti.h("kk<1>").a(s)) +r.ak=!1}return r.Z8()}, +aut(){this.ak=!0 +this.ef()}, +xv(a){this.YU(a) +this.ak=!1}, +lw(){var s=this,r=s.f +r.toString +s.$ti.h("kk<1>").a(r).f.J(0,s.gQL()) +s.yk()}} +A.dE.prototype={} +A.aFS.prototype={ +$1(a){var s,r,q +if(a.l(0,this.a))return!1 +if(a instanceof A.iY){s=a.f +s.toString +s=s instanceof A.dE}else s=!1 +if(s){s=a.f +s.toString +t.og.a(s) +r=A.o(s) +q=this.c +if(!q.n(0,r)){q.G(0,r) +this.d.push(s)}}return!0}, +$S:44} +A.XV.prototype={} +A.ra.prototype={ +A(a){var s,r,q,p=this.d +for(s=this.c,r=s.length,q=0;qMath.abs(0))return B.lo +else return B.is}, +axr(a){var s,r,q=this +q.a.toString +s=q.y +s===$&&A.b() +r=s.r +if(r!=null&&r.a!=null){s.h7(0) +s=q.y +s.sk(0,s.a) +s=q.r +if(s!=null)s.a.J(0,q.gIL()) +q.r=null}s=q.z +s===$&&A.b() +r=s.r +if(r!=null&&r.a!=null){s.h7(0) +s=q.z +s.sk(0,s.a) +s=q.w +if(s!=null)s.a.J(0,q.gIP()) +q.w=null}q.Q=q.ch=null +q.at=q.d.a.xW() +q.as=q.d.lv(a.b) +q.ax=q.ay}, +axt(a){var s,r,q,p,o,n,m=this,l=m.d.a.xW(),k=m.x=a.c,j=m.d.lv(k),i=m.ch +if(i===B.is)i=m.ch=m.a0Z(a) +else if(i==null){i=m.a0Z(a) +m.ch=i}if(!m.I4(i)){m.a.toString +return}switch(m.ch.a){case 1:i=m.at +i.toString +s=m.d +s.sk(0,m.Rg(s.a,i*a.d/l)) +r=m.d.lv(k) +i=m.d +s=i.a +q=m.as +q.toString +i.sk(0,m.yS(s,r.a2(0,q))) +p=m.d.lv(k) +k=m.as +k.toString +if(!A.blh(k).l(0,A.blh(p)))m.as=p +break +case 2:i=a.r +if(i===0){m.a.toString +return}s=m.ax +s.toString +o=s+i +i=m.d +i.sk(0,m.aw2(i.a,m.ay-o,k)) +m.ay=o +break +case 0:if(a.d!==1){m.a.toString +return}if(m.Q==null){i=m.as +i.toString +m.Q=A.bPe(i,j)}i=m.as +i.toString +n=j.a2(0,i) +i=m.d +i.sk(0,m.yS(i.a,n)) +m.as=m.d.lv(k) +break}m.a.toString}, +axp(a){var s,r,q,p,o,n,m,l,k,j,i,h=this +h.a.toString +h.as=h.ax=h.at=null +s=h.r +if(s!=null)s.a.J(0,h.gIL()) +s=h.w +if(s!=null)s.a.J(0,h.gIP()) +s=h.y +s===$&&A.b() +s.sk(0,s.a) +s=h.z +s===$&&A.b() +s.sk(0,s.a) +if(!h.I4(h.ch)){h.Q=null +return}s=h.ch +if(s===B.is){s=a.a.a +if(s.ge3()<50){h.Q=null +return}r=h.d.a.NK().a +q=r[0] +r=r[1] +h.a.toString +p=A.aCP(0.0000135,q,s.a,0) +h.a.toString +o=A.aCP(0.0000135,r,s.b,0) +s=s.ge3() +h.a.toString +n=A.bve(s,0.0000135,10) +s=p.gAz() +m=o.gAz() +l=t.Ni +k=A.c_(B.dt,h.y,null) +h.r=new A.aw(k,new A.aO(new A.l(q,r),new A.l(s,m),l),l.h("aw")) +h.y.e=A.dC(0,B.e.bi(n*1000),0) +k.P(0,h.gIL()) +h.y.bS(0)}else if(s===B.lo){s=a.b +r=Math.abs(s) +if(r<0.1){h.Q=null +return}j=h.d.a.xW() +h.a.toString +i=A.aCP(0.0026999999999999997,j,s/10,0) +h.a.toString +n=A.bve(r,0.0000135,0.1) +s=i.hD(0,n) +r=t.Y +q=A.c_(B.dt,h.z,null) +h.w=new A.aw(q,new A.aO(j,s,r),r.h("aw")) +h.z.e=A.dC(0,B.e.bi(n*1000),0) +q.P(0,h.gIP()) +h.z.bS(0)}}, +az1(a){var s,r,q,p,o,n,m,l=this +if(t.Mj.b(a)){if(a.gdS(a)===B.bF){l.a.toString +s=!0}else s=!1 +if(s){l.a.toString +s=a.gcQ(a).T(0,a.gpc()) +r=a.gpc() +q=A.y2(a.gda(a),null,r,s) +if(!l.I4(B.is)){l.a.toString +return}s=l.d +s.toString +p=s.lv(a.geD()) +s=l.d +s.toString +o=s.lv(a.geD().a2(0,q)) +s=l.d +s.sk(0,l.yS(s.a,o.a2(0,p))) +l.a.toString +return}if(a.gpc().b===0)return +s=a.gpc() +l.a.toString +n=Math.exp(-s.b/200)}else if(t.RH.b(a))n=a.glG(a) +else return +l.a.toString +if(!l.I4(B.lo)){l.a.toString +return}s=l.d +s.toString +p=s.lv(a.geD()) +s=l.d +s.sk(0,l.Rg(s.a,n)) +s=l.d +s.toString +m=s.lv(a.geD()) +s=l.d +s.sk(0,l.yS(s.a,m.a2(0,p))) +l.a.toString}, +awQ(){var s,r,q,p,o=this,n=o.y +n===$&&A.b() +n=n.r +if(!(n!=null&&n.a!=null)){o.Q=null +n=o.r +if(n!=null)n.a.J(0,o.gIL()) +o.r=null +n=o.y +n.sk(0,n.a) +return}n=o.d.a.NK().a +s=n[0] +n=n[1] +r=o.d.lv(new A.l(s,n)) +n=o.d +n.toString +s=o.r +q=s.b +s=s.a +p=n.lv(q.a_(0,s.gk(s))).a2(0,r) +s=o.d +s.sk(0,o.yS(s.a,p))}, +axn(){var s,r,q,p,o,n=this,m=n.z +m===$&&A.b() +m=m.r +if(!(m!=null&&m.a!=null)){n.Q=null +m=n.w +if(m!=null)m.a.J(0,n.gIP()) +n.w=null +m=n.z +m.sk(0,m.a) +return}m=n.w +s=m.b +m=m.a +r=s.a_(0,m.gk(m)) +m=n.d.a.xW() +s=n.d +s.toString +q=n.x +q===$&&A.b() +p=s.lv(q) +q=n.d +q.sk(0,n.Rg(q.a,r/m)) +o=n.d.lv(n.x) +m=n.d +m.sk(0,n.yS(m.a,o.a2(0,p)))}, +axE(){this.a7(new A.b5F())}, +aR(){var s,r=this,q=null +r.b5() +r.a.toString +s=A.bLc() +r.d=s +s.P(0,r.ga2U()) +r.y=A.bw(B.z,q,q,0,q,1,q,r) +r.z=A.bw(B.z,q,q,0,q,1,q,r)}, +aY(a){this.br(a) +this.a.toString}, +m(){var s=this,r=s.y +r===$&&A.b() +r.m() +r=s.z +r===$&&A.b() +r.m() +s.d.J(0,s.ga2U()) +s.a.toString +r=s.d +r.toString +r.ah$=$.b5() +r.ak$=0 +s.akO()}, +A(a){var s,r,q=this,p=null,o=q.a +o.toString +s=q.d.a +r=new A.ah1(o.x,q.e,B.E,!0,s,p,p) +return A.u3(B.c8,A.dM(B.bv,r,B.C,!1,p,p,p,p,p,p,p,p,p,p,p,p,p,p,q.gaxo(),q.gaxq(),q.gaxs(),p,p,p,p,p,p,p,p,p,!1,new A.l(0,-0.005)),q.f,p,p,p,q.gaz0(),p)}, +$iaN:1} +A.b5F.prototype={ +$0(){}, +$S:0} +A.ah1.prototype={ +A(a){var s=this,r=A.EW(s.w,new A.ir(s.c,s.d),s.r,!0) +return A.tb(r,s.e)}} +A.aap.prototype={ +lv(a){var s=this.a,r=new A.bS(new Float64Array(16)) +if(r.k0(s)===0)A.q(A.eR(s,"other","Matrix cannot be inverted")) +s=new A.d4(new Float64Array(3)) +s.h6(a.a,a.b,0) +s=r.rj(s).a +return new A.l(s[0],s[1])}} +A.R7.prototype={ +K(){return"_GestureType."+this.b}} +A.aLm.prototype={ +K(){return"PanAxis."+this.b}} +A.Vh.prototype={ +cn(){this.d3() +this.cT() +this.es()}, +m(){var s=this,r=s.b_$ +if(r!=null)r.J(0,s.gej()) +s.b_$=null +s.aZ()}} +A.ti.prototype={ +bJ(a){return new A.G8(this,B.al,A.k(this).h("G8"))}} +A.G8.prototype={ +ga9(){return this.$ti.h("lk<1,H>").a(A.c0.prototype.ga9.call(this))}, +ck(a){var s=this.p1 +if(s!=null)a.$1(s)}, +oN(a){this.p1=null +this.qa(a)}, +hU(a,b){var s=this +s.vU(a,b) +s.$ti.h("lk<1,H>").a(A.c0.prototype.ga9.call(s)).X5(s.ga2g())}, +c_(a,b){var s,r=this +r.rE(0,b) +s=r.$ti.h("lk<1,H>") +s.a(A.c0.prototype.ga9.call(r)).X5(r.ga2g()) +s=s.a(A.c0.prototype.ga9.call(r)) +s.Lc$=!0 +s.a6()}, +pS(){var s=this.$ti.h("lk<1,H>").a(A.c0.prototype.ga9.call(this)) +s.Lc$=!0 +s.a6() +this.Ou()}, +lw(){this.$ti.h("lk<1,H>").a(A.c0.prototype.ga9.call(this)).X5(null) +this.ahY()}, +avm(a){this.r.E9(this,new A.b5V(this,a))}, +oT(a,b){this.$ti.h("lk<1,H>").a(A.c0.prototype.ga9.call(this)).sbN(a)}, +oV(a,b,c){}, +q1(a,b){this.$ti.h("lk<1,H>").a(A.c0.prototype.ga9.call(this)).sbN(null)}} +A.b5V.prototype={ +$0(){var s,r,q,p,o,n,m,l,k=this,j=null +try{o=k.a +n=o.f +n.toString +j=o.$ti.h("ti<1>").a(n).c.$2(o,k.b) +o.f.toString}catch(m){s=A.ai(m) +r=A.aH(m) +l=A.JG(A.bvz(A.bX("building "+k.a.f.j(0)),s,r,new A.b5W())) +j=l}try{o=k.a +o.p1=o.fM(o.p1,j,null)}catch(m){q=A.ai(m) +p=A.aH(m) +o=k.a +l=A.JG(A.bvz(A.bX("building "+o.f.j(0)),q,p,new A.b5X())) +j=l +o.p1=o.fM(null,j,o.d)}}, +$S:0} +A.b5W.prototype={ +$0(){var s=A.a([],t.R) +return s}, +$S:42} +A.b5X.prototype={ +$0(){var s=A.a([],t.R) +return s}, +$S:42} +A.lk.prototype={ +X5(a){if(J.i(a,this.UM$))return +this.UM$=a +this.a6()}} +A.Cp.prototype={ +aX(a){var s=new A.SL(null,!0,null,null,A.aB(t.T)) +s.aW() +return s}} +A.SL.prototype={ +c3(a){return 0}, +bV(a){return 0}, +bW(a){return 0}, +c1(a){return 0}, +ds(a){return B.x}, +cj(){var s=this,r=t.k,q=r.a(A.H.prototype.ga4.call(s)) +if(s.Lc$||!r.a(A.H.prototype.ga4.call(s)).l(0,s.a9k$)){s.a9k$=r.a(A.H.prototype.ga4.call(s)) +s.Lc$=!1 +r=s.UM$ +r.toString +s.LL(r,A.k(s).h("lk.0"))}r=s.E$ +if(r!=null){r.cX(q,!0) +r=s.E$ +s.id=q.bI(r.gq(r))}else s.id=new A.V(A.S(1/0,q.a,q.b),A.S(1/0,q.c,q.d))}, +hL(a){var s=this.E$ +if(s!=null)return s.q6(a) +return this.Ho(a)}, +dY(a,b){var s=this.E$ +s=s==null?null:s.dc(a,b) +return s===!0}, +aD(a,b){var s=this.E$ +if(s!=null)a.eg(s,b)}} +A.ap2.prototype={ +aA(a){var s +this.eR(a) +s=this.E$ +if(s!=null)s.aA(a)}, +ap(a){var s +this.eS(0) +s=this.E$ +if(s!=null)s.ap(0)}} +A.ap3.prototype={} +A.Gr.prototype={} +A.be4.prototype={ +$1(a){return this.a.a=a}, +$S:55} +A.be5.prototype={ +$1(a){return a.b}, +$S:523} +A.be6.prototype={ +$1(a){var s,r,q,p +for(s=J.ak(a),r=this.a,q=this.b,p=0;ps.b?B.kB:B.kA}, +wI(a,b,c,d,e){var s=this,r=c==null?s.c:c,q=b==null?s.f:b,p=e==null?s.r:e,o=d==null?s.e:d,n=a==null?s.ch:a +return new A.Lm(s.a,s.b,r,s.d,o,q,p,s.w,!1,s.y,s.z,s.Q,s.as,s.at,s.ax,s.ay,n)}, +zK(a){return this.wI(null,null,a,null,null)}, +aGl(a,b){return this.wI(null,a,null,null,b)}, +aGo(a,b){return this.wI(null,null,null,a,b)}, +wH(a){return this.wI(null,a,null,null,null)}, +aGu(a,b,c,d){return this.wI(a,b,null,c,d)}, +aG8(a){return this.wI(null,null,null,a,null)}, +aGk(a,b){return this.wI(null,a,null,b,null)}, +WM(a,b,c,d){var s,r,q,p,o,n,m=this,l=null +if(!(b||d||c||a))return m +s=m.f +r=b?0:l +q=d?0:l +p=c?0:l +r=s.uH(a?0:l,r,p,q) +q=m.r +p=b?Math.max(0,q.a-s.a):l +o=d?Math.max(0,q.b-s.b):l +n=c?Math.max(0,q.c-s.c):l +return m.aGl(r,q.uH(a?Math.max(0,q.d-s.d):l,p,n,o))}, +aNC(a){return this.WM(!1,!1,!1,a)}, +acr(a,b,c,d){var s,r,q,p,o,n,m=this,l=null +if(!b)!d +s=m.r +r=b?Math.max(0,s.a-m.e.a):l +q=d?Math.max(0,s.b-m.e.b):l +p=c?Math.max(0,s.c-m.e.c):l +o=m.e +n=Math.max(0,s.d-o.d) +s=s.uH(n,r,p,q) +r=b?0:l +q=d?0:l +p=c?0:l +return m.aGo(o.uH(0,r,p,q),s)}, +aND(a){return this.acr(a,!1,!1,!1)}, +aNy(a){var s,r,q,p,o,n,m,l,k,j,i,h=this,g=a.c,f=a.a,e=a.d,d=a.b,c=h.a +if(new A.V(g-f,e-d).l(0,c)&&new A.l(f,d).l(0,B.i))return h +s=c.a-g +r=c.b-e +g=h.f +e=Math.max(0,g.a-f) +c=Math.max(0,g.b-d) +q=Math.max(0,g.c-s) +g=Math.max(0,g.d-r) +p=h.r +o=Math.max(0,p.a-f) +n=Math.max(0,p.b-d) +m=Math.max(0,p.c-s) +p=Math.max(0,p.d-r) +l=h.e +f=Math.max(0,l.a-f) +d=Math.max(0,l.b-d) +k=Math.max(0,l.c-s) +l=Math.max(0,l.d-r) +j=h.ch +i=A.ab(j).h("be<1>") +return h.aGu(A.aa(new A.be(j,new A.aIJ(a),i),!0,i.h("z.E")),new A.aK(e,c,q,g),new A.aK(f,d,k,l),new A.aK(o,n,m,p))}, +l(a,b){var s=this +if(b==null)return!1 +if(J.a1(b)!==A.o(s))return!1 +return b instanceof A.Lm&&b.a.l(0,s.a)&&b.b===s.b&&b.c===s.c&&b.d===s.d&&b.f.l(0,s.f)&&b.r.l(0,s.r)&&b.e.l(0,s.e)&&b.w.l(0,s.w)&&b.Q===s.Q&&b.as===s.as&&b.z===s.z&&b.y===s.y&&b.at===s.at&&b.ax===s.ax&&b.ay.l(0,s.ay)&&A.e4(b.ch,s.ch)}, +gv(a){var s=this +return A.X(s.a,s.b,s.c,s.d,s.f,s.r,s.e,!1,s.Q,s.as,s.z,s.y,s.at,s.ax,s.ay,A.dt(s.ch),B.a,B.a,B.a,B.a)}, +j(a){var s=this +return"MediaQueryData("+B.b.cq(A.a(["size: "+s.a.j(0),"devicePixelRatio: "+B.e.az(s.b,1),"textScaleFactor: "+B.e.az(s.c,1),"platformBrightness: "+s.d.j(0),"padding: "+s.f.j(0),"viewPadding: "+s.r.j(0),"viewInsets: "+s.e.j(0),"systemGestureInsets: "+s.w.j(0),"alwaysUse24HourFormat: false","accessibleNavigation: "+s.y,"highContrast: "+s.Q,"disableAnimations: "+s.as,"invertColors: "+s.z,"boldText: "+s.at,"navigationMode: "+s.ax.b,"gestureSettings: "+s.ay.j(0),"displayFeatures: "+A.h(s.ch)],t.s),", ")+")"}} +A.aIJ.prototype={ +$1(a){return this.a.FP(a.grX(a))}, +$S:195} +A.qp.prototype={ +dr(a){return!this.w.l(0,a.w)}, +adp(a6,a7){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 +for(s=a7.gaj(a7),r=this.w,q=a6.w,p=r.ch!==q.ch,o=r.ay,n=q.ay,m=r.ax!==q.ax,l=r.at!==q.at,k=r.as!==q.as,j=r.Q!==q.Q,i=r.z!==q.z,h=r.y!==q.y,g=r.r,f=q.r,e=r.w,d=q.w,c=r.e,b=q.e,a=r.f,a0=q.f,a1=r.d!==q.d,a2=r.c!==q.c,a3=r.b!==q.b,r=r.a,q=q.a,a4=r.a,r=r.b;s.u();){a5=s.gH(s) +if(a5 instanceof A.hM)switch(a5.a){case 0:if(!(q.a===a4&&q.b===r))return!0 +break +case 1:a5=a4>r?B.kB:B.kA +if(a5!==(q.a>q.b?B.kB:B.kA))return!0 +break +case 2:if(a3)return!0 +break +case 3:if(a2)return!0 +break +case 4:if(a1)return!0 +break +case 5:if(!a.l(0,a0))return!0 +break +case 6:if(!c.l(0,b))return!0 +break +case 7:if(!e.l(0,d))return!0 +break +case 8:if(!g.l(0,f))return!0 +break +case 9:break +case 10:if(h)return!0 +break +case 11:if(i)return!0 +break +case 12:if(j)return!0 +break +case 13:if(k)return!0 +break +case 14:if(l)return!0 +break +case 15:if(m)return!0 +break +case 16:if(!o.l(0,n))return!0 +break +case 17:if(p)return!0 +break}}return!1}} +A.aKl.prototype={ +K(){return"NavigationMode."+this.b}} +A.RT.prototype={ +a8(){return new A.ai7(B.m)}} +A.ai7.prototype={ +aR(){this.b5() +$.ar.cI$.push(this)}, +cp(){this.ei() +this.aDd() +this.DM()}, +aY(a){var s,r=this +r.br(a) +s=r.a +s.toString +if(r.e==null||a.c!==s.c)r.DM()}, +aDd(){var s,r=this +r.a.toString +s=r.c +s.toString +s=A.cT(s,null) +r.d=s +r.e=null}, +DM(){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=this,d=null,c=e.a.c,b=e.d,a=c.gnt(),a0=c.x +if(a0==null){a0=self.window.devicePixelRatio +if(a0===0)a0=1}a0=a.i1(0,a0) +a=c.x +if(a==null){a=self.window.devicePixelRatio +if(a===0)a=1}s=b==null +r=s?d:b.c +if(r==null)r=c.b.a.e +q=s?d:b.d +if(q==null)q=c.b.a.d +c.gwu() +p=c.x +if(p==null){p=self.window.devicePixelRatio +if(p===0)p=1}p=A.az3(B.ij,p) +c.gwu() +o=c.x +if(o==null){o=self.window.devicePixelRatio +if(o===0)o=1}o=A.az3(B.ij,o) +n=c.f +m=c.x +if(m==null){m=self.window.devicePixelRatio +if(m===0)m=1}m=A.az3(n,m) +c.gwu() +n=c.x +if(n==null){n=self.window.devicePixelRatio +if(n===0)n=1}n=A.az3(B.ij,n) +l=s?d:b.y +if(l==null)l=(c.b.a.a.a&1)!==0 +k=s?d:b.z +if(k==null)k=(c.b.a.a.a&2)!==0 +j=s?d:b.as +if(j==null)j=(c.b.a.a.a&4)!==0 +i=s?d:b.at +if(i==null)i=(c.b.a.a.a&8)!==0 +h=s?d:b.Q +if(h==null)h=(c.b.a.a.a&32)!==0 +g=s&&d +b=s?d:b.ax +if(b==null)b=B.fp +c.gwu() +c.gwu() +f=new A.Lm(a0,a,r,q,m,p,o,n,g===!0,l,k,h,j,i,b,new A.a02(d),B.a1P) +if(!f.l(0,e.e))e.a7(new A.b6y(e,f))}, +Ua(){this.DM()}, +a8J(){if(this.d==null)this.DM()}, +a8I(){if(this.d==null)this.DM()}, +m(){B.b.F($.ar.cI$,this) +this.aZ()}, +A(a){var s=this.e +s.toString +return A.la(this.a.e,s,null)}} +A.b6y.prototype={ +$0(){this.a.e=this.b}, +$S:0} +A.aoH.prototype={} +A.alg.prototype={ +aX(a){var s=new A.aku(this.e,null,A.aB(t.T)) +s.aW() +s.sbN(null) +return s}, +b4(a,b){b.saFo(this.e)}} +A.aku.prototype={ +saFo(a){var s=this,r=s.C +if(r===a)return +if(s.y!=null)r.J(0,s.gB4()) +s.C=a +a.P(0,s.gB4()) +s.bX()}, +gru(){var s=this.C.a,r=A.N.prototype.gru.call(this) +return new A.I(r.a+s.a,r.b+s.b,r.c-s.c,r.d-s.d)}, +aA(a){this.ys(a) +this.C.P(0,this.gB4())}, +ap(a){this.C.J(0,this.gB4()) +this.u5(0)}, +hv(a){this.jq(a) +a.a=!0}} +A.a58.prototype={ +A(a){var s,r,q,p,o,n,m,l,k,j,i,h=this,g=null +switch(A.cb().a){case 1:case 3:case 5:s=!1 +break +case 0:case 2:case 4:s=!0 +break +default:s=g}r=h.d&&s +q=new A.aJf(h,a) +p=h.x +o=r&&h.r!=null?q:g +n=r&&h.r!=null?q:g +m=r?h.r:g +if(r&&h.r!=null){l=a.ae(t.I) +l.toString +l=l.w}else l=g +k=h.c +k=A.mX(new A.ew(B.iE,k==null?g:new A.th(k,g,g),g),B.bn,g,g,g,g) +j=new A.bu(A.bI(g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,p!=null||!1?new A.Nw(p,g):g,g,g,g,g,m,g,g,g,g,g,g,g,g,g,g,g,g,n,g,g,g,g,g,g,g,g,g,g,g,o,g,g,g,g,g,g,l,g,g,g,g),!1,!1,!1,!1,k,g) +i=!r||!1 +if(!i&&h.w!=null){p=h.w +p.toString +j=new A.alg(p,j,g)}return A.bo3(new A.pY(i,new A.aii(j,q,g),g))}} +A.aJf.prototype={ +$0(){if(this.a.d)A.aKu(this.b) +else A.a9N(B.aeQ)}, +$S:0} +A.WG.prototype={ +A(a){var s=this,r=t.Bs.a(s.c) +return A.aJe(!0,s.x,r.gk(r),s.e,null,s.f,s.y)}} +A.Fp.prototype={ +mW(a){if(this.aV==null)return!1 +return this.ym(a)}, +a9Y(a){}, +a9Z(a,b){var s=this.aV +if(s!=null)this.e1("onAnyTapUp",s)}, +Lt(a,b,c){}} +A.adh.prototype={ +a7N(){var s=t.S,r=A.dN(s) +return new A.Fp(B.b_,18,B.dy,A.F(s,t.SP),r,null,null,A.Hj(),A.F(s,t.Au))}, +aao(a){a.aV=this.a}} +A.aii.prototype={ +A(a){return new A.n6(this.c,A.ap([B.akG,new A.adh(this.d)],t.n,t.xR),B.bv,!1,null)}} +A.LJ.prototype={ +A(a){var s,r,q=this,p=a.ae(t.I) +p.toString +s=A.a([],t.p) +r=q.c +if(r!=null)s.push(A.KK(r,B.lH)) +r=q.d +if(r!=null)s.push(A.KK(r,B.lI)) +r=q.e +if(r!=null)s.push(A.KK(r,B.lJ)) +return new A.tk(new A.bca(q.f,q.r,p.w,null),s,null)}} +A.U2.prototype={ +K(){return"_ToolbarSlot."+this.b}} +A.bca.prototype={ +FS(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=this +if(e.b.i(0,B.lH)!=null){s=a.a +r=a.b +q=e.iC(B.lH,new A.aL(0,s,r,r)).a +switch(e.f.a){case 0:p=s-q +break +case 1:p=0 +break +default:p=null}e.ja(B.lH,new A.l(p,0))}else q=0 +if(e.b.i(0,B.lJ)!=null){o=e.iC(B.lJ,A.t2(a)) +switch(e.f.a){case 0:n=0 +break +case 1:n=a.a-o.a +break +default:n=null}m=o.a +e.ja(B.lJ,new A.l(n,(a.b-o.b)/2))}else m=0 +if(e.b.i(0,B.lI)!=null){s=a.a +r=e.e +l=Math.max(s-q-m-r*2,0) +k=e.iC(B.lI,A.t2(a).Ej(l)) +j=q+r +if(e.d){i=k.a +h=(s-i)/2 +g=s-m +if(h+i>g)h=g-i-r +else if(h=1)return!0}return!1}, +gFi(){var s=this.a +if(s==null)return!1 +s=s.a0J(A.bkI(this)) +s=s==null?null:s.gaaP() +return s===!0}} +A.aQo.prototype={ +$1(a){var s=this.a.a,r=s==null?null:s.a.ax +if(r===!0){s=s.y.gk6() +if(s!=null)s.nS()}}, +$S:20} +A.aQn.prototype={ +$1(a){var s=this.a.a +if(s!=null){s=s.y.gk6() +if(s!=null)s.nS()}}, +$S:20} +A.jM.prototype={ +j(a){var s=this.a +s=s==null?"none":'"'+s+'"' +return"RouteSettings("+s+", "+A.h(this.b)+")"}} +A.f5.prototype={ +j(a){return'Page("'+A.h(this.a)+'", '+A.h(this.c)+", "+A.h(this.b)+")"}} +A.oy.prototype={} +A.x2.prototype={ +dr(a){return a.f!=this.f}} +A.qN.prototype={} +A.aaq.prototype={} +A.a_Y.prototype={ +aNR(a,b,c){var s,r,q,p,o=A.a([],t.Fm),n=new A.axm(a,c,o) +n.$2(null,b.length===0) +for(s=b.length,r=0;r=10)return +this.x=!0 +this.d=B.Lk}, +aFA(a,b){var s=this +if(s.d.a>=10)return +s.x=!0 +s.w=b +s.d=B.aoI}, +cM(a,b){return this.aFA(a,b,t.z)}, +m(){var s,r,q,p,o,n,m,l=this,k={} +l.d=B.aoF +s=l.a +r=s.gMu() +q=new A.b9F() +p=A.ab(r) +o=new A.be(r,q,p.h("be<1>")) +if(!o.gaj(o).u()){l.d=B.lw +s.m() +return}k.a=o.gt(o) +n=s.a +n.f.G(0,l) +for(s=B.b.gaj(r),p=new A.jc(s,q,p.h("jc<1>"));p.u();){r=s.gH(s) +m=A.b4("listener") +q=new A.b9G(k,l,r,m,n) +m.b=q +r.d.P(0,q)}}, +gadv(){var s=this.d.a +return s<=7&&s>=1}, +gaaP(){var s=this.d.a +return s<=10&&s>=1}} +A.b9H.prototype={ +$0(){var s=this.a +if(s.d===B.Lm){s.d=B.fS +this.b.I1()}}, +$S:0} +A.b9F.prototype={ +$1(a){return a.d.a!=null}, +$S:530} +A.b9G.prototype={ +$0(){var s=this,r=s.a;--r.a +s.c.d.J(0,s.d.aF()) +if(r.a===0)return A.h_(new A.b9E(s.b,s.e))}, +$S:0} +A.b9E.prototype={ +$0(){var s=this.a +if(!this.b.f.F(0,s))return +s.d=B.lw +s.a.m()}, +$S:0} +A.b9I.prototype={ +$1(a){return a.a===this.a}, +$S:95} +A.vi.prototype={} +A.Gl.prototype={ +tw(a){a.IH(this.b,this.a,B.ec,!1)}} +A.Gk.prototype={ +tw(a){var s=$.nS() +A.pZ(a) +if(!s.a.get(a).cx.a)a.IH(this.a,this.b,B.ed,!1)}} +A.S5.prototype={ +tw(a){}} +A.S6.prototype={ +tw(a){var s=this.a,r=s.gtl() +if(r)a.IH(this.b,s,B.ec,!1)}} +A.kt.prototype={ +aR(){var s,r,q,p=this +p.b5() +for(s=J.ao(p.a.x);s.u();){r=s.gH(s) +q=$.nS() +q.a.set(r,p)}p.as=p.a.x +s=p.c.oc(t.mS) +if(s==null)s=null +else{s=s.f +s.toString}t._I.a(s) +p.Sy(s==null?null:s.f) +if(p.a.as)B.kz.qQ("selectSingleEntryHistory",t.H)}, +kn(a,b){var s,r,q,p,o,n,m=this +m.rb(m.at,"id") +s=m.r +m.rb(s,"history") +m.a0P() +m.d=new A.bo(null,t.ku) +B.b.I(m.e,s.acH(null,m)) +for(r=J.ao(m.a.c);r.u();){q=r.gH(r) +p=m.c +p.toString +p=q.uI(p) +q=$.aqx() +o=new A.ic(p,null,!0,B.lv,q,q,q) +m.e.push(o) +B.b.I(m.e,s.acH(o,m))}if(s.y==null){s=m.a +n=s.f +if((J.ce(s.c)?n==null?"/":n:n)!=null){s=m.e +r=m.a +q=r.f +B.b.I(s,J.co(r.aLY(m,q==null?"/":q),new A.aKs(m),t.Ez))}}m.I1()}, +Uh(a){var s,r=this +r.ai8(a) +s=r.r +if(r.d5$!=null)s.c_(0,r.e) +else s.ab(0)}, +ghZ(){return this.a.y}, +cp(){var s,r,q,p,o=this +o.ajp() +s=o.c.ae(t.mS) +o.Sy(s==null?null:s.f) +for(r=o.e,q=r.length,p=0;pa3.c)break +j=J.b3(a1.a.c,k) +if(!m.Tp(j))break +i=m.a +if(i.b!==j){i.b=j +i.pu()}q.push(m) +a3.b=k+1 +l=n+1 +a3.a=l +k=l +o=m}h=A.a([],r) +k=s +while(!0){if(!(n<=k&&a3.b<=a3.c))break +c$1:{m=a1.e[k] +if(!m.c){h.push(m) +s=k-1 +a3.d=s +k=s +break c$1}i=a1.a.c +g=a3.c +if(!m.Tp(J.b3(i,g)))break +if(h.length!==0){p.cJ(0,m,new A.aKp(h)) +B.b.ab(h)}s=k-1 +a3.d=s +a3.c=g-1 +k=s}}s=k+h.length +a3.d=s +k=t.Ez +f=A.F(t.f0,k) +e=A.aY(k) +for(k=t.pw;n<=s;){m=a1.e[n];++n +if(!m.c)continue +i=k.a(m.a.b).c +if(i==null)continue +g=m.d.a +if(!(g<=7&&g>=1)){e.G(0,m) +continue}f.p(0,i,m)}for(d=!1;i=a3.b,i<=a3.c;){c=J.b3(a1.a.c,i) +a3.b=i+1 +i=c.c +if(i==null||!f.ao(0,i)||!f.i(0,i).Tp(c)){i=a1.c +i.toString +i=c.uI(i) +g=$.aqx() +q.push(new A.ic(i,a2,!0,B.Lj,g,g,g)) +d=!0}else{i=f.F(0,i) +i.toString +g=i.a +if(g.b!==c){g.b=c +g.pu()}q.push(i)}}b=A.F(t.oW,t.N2) +for(;i=a3.a,i<=a3.d;){a=a1.e[i] +a3.a=i+1 +if(!a.c){J.fu(p.cJ(0,o,new A.aKq()),a) +if(o.y){i=a.d.a +i=i<=7&&i>=1}else i=!1 +if(i)a.y=!0 +continue}i=k.a(a.a.b).c +if(i==null||f.ao(0,i)||e.n(0,a)){b.p(0,o,a) +i=a.d.a +if(i<=7&&i>=1)a.y=!0}o=a}a3.c=J.aZ(a1.a.c)-1 +s=a1.e.length-1 +a3.d=s +k=i +while(!0){if(!(k<=s&&a3.b<=a3.c))break +c$4:{m=a1.e[k] +if(!m.c){J.fu(p.cJ(0,o,new A.aKr()),m) +break c$4}i=a1.a.c +g=a3.b +j=J.b3(i,g) +i=m.a +if(i.b!==j){i.b=j +i.pu()}q.push(m) +l=k+1 +a3.a=l +a3.b=g+1 +k=l +o=m}}if(d||b.a!==0){a1.a.toString +a0=B.Nt.aNR(b,q,p) +a0=new A.ik(a0,A.ab(a0).h("ik<1,ic>"))}else a0=q +a1.e=A.a([],r) +if(p.ao(0,a2)){r=a1.e +k=p.i(0,a2) +k.toString +B.b.I(r,k)}for(r=J.ao(a0);r.u();){k=r.gH(r) +a1.e.push(k) +if(p.ao(0,k)){i=a1.e +k=p.i(0,k) +k.toString +B.b.I(i,k)}}a1.I1()}, +I2(a0){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b=this,a=null +b.ch=!0 +s=b.e +r=s.length-1 +q=s[r] +p=r>0?s[r-1]:a +o=A.a([],t.uD) +$label0$1:for(s=b.x,n=b.w,m=a,l=m,k=!1,j=!1;r>=0;){switch(q.d.a){case 1:i=b.uc(r-1,A.rK()) +h=i>=0?b.e[i]:a +h=h==null?a:h.a +g=q.a +g.a=b +g.vd() +q.d=B.aoG +n.iP(0,new A.Gl(g,h)) +continue $label0$1 +case 2:if(k||l==null){h=q.a +h.Ex() +q.d=B.fS +if(l==null)h.Ey(a) +continue $label0$1}break +case 3:case 4:case 6:h=p==null?a:p.a +i=b.uc(r-1,A.rK()) +g=i>=0?b.e[i]:a +g=g==null?a:g.a +q.aJ_(l==null,b,h,g) +if(q.d===B.fS)continue $label0$1 +break +case 5:if(!j&&m!=null){q.a.A0(m) +q.f=m}j=!0 +break +case 7:if(!j&&m!=null){q.a.A0(m) +q.f=m}k=!0 +j=!0 +break +case 8:i=b.uc(r,A.W1()) +h=i>=0?b.e[i]:a +if(!q.aIZ(b,h==null?a:h.a))continue $label0$1 +if(!j){if(m!=null){q.a.A0(m) +q.f=m}m=q.a}h=q.a +i=b.uc(r,A.W1()) +g=i>=0?b.e[i]:a +s.iP(0,new A.Gk(h,g==null?a:g.a)) +if(q.d===B.pC)continue $label0$1 +k=!0 +break +case 11:break +case 9:h=q.a +g=q.w +if(g==null)g=a +h=h.d.a +if((h.a&30)!==0)A.q(A.R("Future already completed")) +h.lR(g) +q.w=null +q.d=B.Lk +continue $label0$1 +case 10:if(!j){if(m!=null)q.a.A0(m) +m=a}i=b.uc(r,A.W1()) +h=i>=0?b.e[i]:a +h=h==null?a:h.a +q.d=B.aoE +if(q.x)s.iP(0,new A.S5(q.a,h)) +continue $label0$1 +case 12:if(!k&&l!=null)break +q.d=B.pC +continue $label0$1 +case 13:o.push(B.b.jO(b.e,r)) +q=l +break +case 14:case 15:case 0:break}--r +f=r>0?b.e[r-1]:a +l=q +q=p +p=f}b.aqu() +b.aqw() +if(b.a.as){e=b.Da(A.rK()) +d=e==null?a:e.a.b.a +if(d!=null&&d!==b.ax){A.bsp(a,!1,a,A.dH(d,0,a)) +b.ax=d}}for(s=o.length,c=0;c=0;){s=m.e[k] +r=s.d.a +if(!(r<=12&&r>=3)){--k +continue}q=m.arj(k+1,A.bx3()) +r=q==null +p=r?l:q.a +o=s.r +if(p!=o){if(!((r?l:q.a)==null&&s.f===o)){p=s.a +p.Ey(r?l:q.a)}s.r=r?l:q.a}--k +n=m.uc(k,A.bx3()) +r=n>=0?m.e[n]:l +p=r==null +o=p?l:r.a +if(o!=s.e){o=s.a +o.Ez(p?l:r.a) +s.e=p?l:r.a}}}, +a1f(a,b){a=this.uc(a,b) +return a>=0?this.e[a]:null}, +uc(a,b){while(!0){if(!(a>=0&&!b.$1(this.e[a])))break;--a}return a}, +arj(a,b){var s +while(!0){s=this.e +if(!(a?") +q=r.a(this.a.r.$1(s)) +return q==null&&!b?r.a(this.a.w.$1(s)):q}, +S2(a,b,c){return this.J4(a,!1,b,c)}, +Bk(a){var s=A.bu3(a,B.pD,!1,null) +this.e.push(s) +this.I1() +this.P8() +return a.d.a}, +aF0(){var s=this.e,r=B.b.gaj(s),q=new A.jc(r,A.rK(),A.ab(s).h("jc<1>")) +if(!q.u())return!1 +if(r.gH(r).a.gNo())return!0 +if(!q.u())return!1 +return!0}, +FA(a){var s=0,r=A.y(t.y),q,p=this,o,n +var $async$FA=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)$async$outer:switch(s){case 0:n=p.Da(A.rK()) +if(n==null){q=!1 +s=1 +break}s=3 +return A.t(n.a.p6(),$async$FA) +case 3:o=c +if(p.c==null){q=!0 +s=1 +break}if(n!==p.Da(A.rK())){q=!0 +s=1 +break}switch(o.a){case 2:q=!1 +s=1 +break $async$outer +case 0:p.e7(a) +q=!0 +s=1 +break $async$outer +case 1:q=!0 +s=1 +break $async$outer}case 1:return A.w(q,r)}}) +return A.x($async$FA,r)}, +aLl(a){return this.FA(a,t.X)}, +M3(){return this.FA(null,t.X)}, +MF(a){var s=this,r=B.b.aKK(s.e,A.rK()) +if(r.c){if(s.a.d.$2(r.a,a)&&r.d===B.fS)r.d=B.iu}else{r.w=a +r.d=B.iu}if(r.d===B.iu)s.I2(!1) +s.P8()}, +ik(){return this.MF(null,t.X)}, +e7(a){return this.MF(a,t.X)}, +a9o(a){var s,r=this,q=B.b.vb(r.e,A.bkI(a)),p=r.e[q] +if(p.c&&p.d.a<8){s=r.a1f(q-1,A.W1()) +s=s==null?null:s.a +r.x.iP(0,new A.Gk(a,s))}p.d=B.pC +if(!r.ch)r.I2(!1)}, +sa6e(a){this.CW=a +this.cx.sk(0,a>0)}, +aH6(){var s,r,q,p,o=this +o.sa6e(o.CW+1) +if(o.CW===1){s=o.uc(o.e.length-1,A.W1()) +r=o.e[s].a +q=!r.gNo()&&s>0?o.a1f(s-1,A.W1()).a:null +p=o.as +p===$&&A.b() +p=J.ao(p) +for(;p.u();)p.gH(p).IH(r,q,B.ed,!0)}}, +KV(){var s,r=this +r.sa6e(r.CW-1) +if(r.CW===0){s=r.as +s===$&&A.b() +s=J.ao(s) +for(;s.u();)s.gH(s).KV()}}, +aww(a){this.cy.G(0,a.gcz())}, +atl(a){this.cy.F(0,a.gcz())}, +P8(){if($.cF.RG$===B.fE){var s=this.d +s===$&&A.b() +s=$.ar.al$.z.i(0,s) +this.a7(new A.aKm(s==null?null:s.x9(t.MY)))}s=this.cy +B.b.af(A.aa(s,!0,A.k(s).c),$.ar.gaF1())}, +aqs(a){var s,r,q,p +for(s=this.e,r=s.length,q=0;q7){h=i.a +h.c.sk(0,b) +continue}if(i.c){l=l||r.length!==J.aZ(p) +if(r.length!==0){g=m==null?b:m.ghZ() +o.p(0,g,r) +n.F(0,g)}k=i.ghZ()!=null +h=i.a +f=k?i.ghZ():b +h.c.sk(0,f) +if(k){r=A.a([],s) +h=c.y +h.toString +p=J.b3(h,i.ghZ()) +if(p==null)p=B.cY}else{r=B.cY +p=B.cY}m=i +continue}if(k){h=i.b +h=h==null?b:h.gaaR() +k=h===!0}else k=!1 +h=i.a +f=k?i.ghZ():b +h.c.sk(0,f) +if(k){h=i.b +f=h.b +h=f==null?h.b=h.Ku():f +if(!l){f=J.ak(p) +e=f.gt(p) +d=r.length +l=e<=d||!J.i(f.i(p,d),h)}else l=!0 +B.b.G(r,h)}}l=l||r.length!==J.aZ(p) +c.aqd(r,m,o,n) +if(l||n.gdn(n)){c.y=o +c.ag()}}, +aqd(a,b,c,d){var s +if(a.length!==0){s=b==null?null:b.ghZ() +c.p(0,s,a) +d.F(0,s)}}, +ab(a){if(this.y==null)return +this.y=null +this.ag()}, +acH(a,b){var s,r,q,p,o,n=A.a([],t.uD) +if(this.y!=null)s=a!=null&&a.ghZ()==null +else s=!0 +if(s)return n +s=this.y +s.toString +r=J.b3(s,a==null?null:a.ghZ()) +if(r==null)return n +for(s=J.ao(r);s.u();){q=A.bNb(s.gH(s)) +p=q.uI(b) +o=$.aqx() +n.push(new A.ic(p,q,!1,B.lv,o,o,o))}return n}, +KD(){return null}, +AF(a){a.toString +return J.Wr(t.f.a(a),new A.b4U(),t.v,t.UX)}, +aak(a){this.y=a}, +BC(){return this.y}, +gAi(a){return this.y!=null}} +A.b4U.prototype={ +$2(a,b){return new A.aU(A.ae(a),A.hz(t.j.a(b),!0,t.K),t.qE)}, +$S:535} +A.b7f.prototype={ +$2(a,b){if(!a.a)a.J(0,b)}, +$S:63} +A.S7.prototype={ +cn(){this.d3() +this.cT() +this.es()}, +m(){var s=this,r=s.b_$ +if(r!=null)r.J(0,s.gej()) +s.b_$=null +s.aZ()}} +A.S8.prototype={ +aY(a){this.br(a) +this.wQ()}, +cp(){var s,r,q,p,o=this +o.ei() +s=o.d5$ +r=o.gtH() +q=o.c +q.toString +q=A.uy(q) +o.j5$=q +p=o.ut(q,r) +if(r){o.kn(s,o.hb$) +o.hb$=!1}if(p)if(s!=null)s.m()}, +m(){var s,r=this +r.j4$.af(0,new A.b7f()) +s=r.d5$ +if(s!=null)s.m() +r.d5$=null +r.ajo()}} +A.a5w.prototype={ +j(a){var s=A.a([],t.s) +this.fX(s) +return"Notification("+B.b.cq(s,", ")+")"}, +fX(a){}} +A.dP.prototype={ +bJ(a){return new A.S9(this,B.al,this.$ti.h("S9<1>"))}} +A.S9.prototype={ +aby(a){var s,r=this.f +r.toString +s=this.$ti +s.h("dP<1>").a(r) +if(s.c.b(a))return r.d.$1(a) +return!1}, +xv(a){}} +A.lL.prototype={} +A.aoM.prototype={} +A.a5M.prototype={ +K(){return"OverflowBarAlignment."+this.b}} +A.a5L.prototype={ +aX(a){var s=this,r=null,q=a.ae(t.I) +q.toString +q=q.w +q=new A.Gy(s.e,s.f,s.r,s.w,s.x,q,B.l,0,r,r,A.aB(t.T)) +q.aW() +q.I(0,r) +return q}, +b4(a,b){var s,r=this +t.Tq.a(b) +b.sO4(0,r.e) +b.sjy(r.f) +b.saMs(r.r) +b.saMq(r.w) +b.saMr(r.x) +s=a.ae(t.I) +s.toString +b.scF(s.w) +b.smq(B.l)}} +A.pi.prototype={} +A.Gy.prototype={ +sO4(a,b){if(this.B===b)return +this.B=b +this.a6()}, +sjy(a){if(this.Z==a)return +this.Z=a +this.a6()}, +saMs(a){if(this.Y===a)return +this.Y=a +this.a6()}, +saMq(a){if(this.av===a)return +this.av=a +this.a6()}, +saMr(a){if(this.ar===a)return +this.ar=a +this.a6()}, +scF(a){if(this.aG===a)return +this.aG=a +this.a6()}, +smq(a){var s=this +if(a===s.aS)return +s.aS=a +s.aU() +s.bX()}, +fR(a){if(!(a.b instanceof A.pi))a.b=new A.pi(null,null,B.i)}, +bW(a){var s,r,q,p,o,n=this,m=n.a3$ +if(m==null)return 0 +for(s=A.k(n).h("aq.1"),r=0;m!=null;){r+=m.aB(B.ad,1/0,m.gbZ()) +q=m.b +q.toString +m=s.a(q).am$}q=n.B +p=n.d_$ +m=n.a3$ +if(r+q*(p-1)>a){for(o=0;m!=null;){o+=m.aB(B.aA,a,m.gcD()) +q=m.b +q.toString +m=s.a(q).am$}return o+n.Y*(n.d_$-1)}else{for(o=0;m!=null;){o=Math.max(o,m.aB(B.aA,a,m.gcD())) +q=m.b +q.toString +m=s.a(q).am$}return o}}, +c1(a){var s,r,q,p,o,n=this,m=n.a3$ +if(m==null)return 0 +for(s=A.k(n).h("aq.1"),r=0;m!=null;){r+=m.aB(B.ad,1/0,m.gbZ()) +q=m.b +q.toString +m=s.a(q).am$}q=n.B +p=n.d_$ +m=n.a3$ +if(r+q*(p-1)>a){for(o=0;m!=null;){o+=m.aB(B.br,a,m.gd4()) +q=m.b +q.toString +m=s.a(q).am$}return o+n.Y*(n.d_$-1)}else{for(o=0;m!=null;){o=Math.max(o,m.aB(B.br,a,m.gd4())) +q=m.b +q.toString +m=s.a(q).am$}return o}}, +c3(a){var s,r,q,p=this,o=p.a3$ +if(o==null)return 0 +for(s=A.k(p).h("aq.1"),r=0;o!=null;){r+=o.aB(B.ad,1/0,o.gbZ()) +q=o.b +q.toString +o=s.a(q).am$}return r+p.B*(p.d_$-1)}, +bV(a){var s,r,q,p=this,o=p.a3$ +if(o==null)return 0 +for(s=A.k(p).h("aq.1"),r=0;o!=null;){r+=o.aB(B.ak,1/0,o.gc2()) +q=o.b +q.toString +o=s.a(q).am$}return r+p.B*(p.d_$-1)}, +hL(a){return this.KL(a)}, +ds(a){var s,r,q,p,o,n,m,l,k,j=this,i=j.a3$ +if(i==null)return new A.V(A.S(0,a.a,a.b),A.S(0,a.c,a.d)) +s=a.b +r=new A.aL(0,s,0,a.d) +for(q=A.k(j).h("aq.1"),p=0,o=0,n=0;i!=null;){m=i.lC(r) +p+=m.a +l=m.b +o=Math.max(o,l) +n+=l+j.Y +l=i.b +l.toString +i=q.a(l).am$}k=p+j.B*(j.d_$-1) +if(k>s)return a.bI(new A.V(s,n-j.Y)) +else return a.bI(new A.V(j.Z==null?k:s,o))}, +cj(){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2=this,a3="RenderBox was not laid out: ",a4={},a5=a4.a=a2.a3$ +if(a5==null){s=t.k.a(A.H.prototype.ga4.call(a2)) +a2.id=new A.V(A.S(0,s.a,s.b),A.S(0,s.c,s.d)) +return}s=t.k +r=s.a(A.H.prototype.ga4.call(a2)) +q=new A.aL(0,r.b,0,r.d) +for(r=A.k(a2).h("aq.1"),p=a5,o=0,n=0,m=0;p!=null;p=a5){p.cX(q,!0) +p=a4.a +l=p.id +o+=(l==null?A.q(A.R(a3+A.o(p).j(0)+"#"+A.bt(p))):l).a +n=Math.max(n,l.b) +m=Math.max(m,l.a) +p=p.b +p.toString +a5=r.a(p).am$ +a4.a=a5}k=a2.aG===B.ab +j=o+a2.B*(a2.d_$-1) +if(j>s.a(A.H.prototype.ga4.call(a2)).b){a5=a2.ar===B.cr?a2.a3$:a2.dk$ +a4.a=a5 +i=new A.b9b(a4,a2) +for(r=t.pi,p=a5,h=0;p!=null;p=a5){l=p.b +l.toString +r.a(l) +switch(a2.av.a){case 0:if(k){p=s.a(A.H.prototype.ga4.call(a2)) +g=a4.a +f=g.id +if(f==null)f=A.q(A.R(a3+A.o(g).j(0)+"#"+A.bt(g))) +e=p.b-f.a +p=g}else e=0 +break +case 2:p=s.a(A.H.prototype.ga4.call(a2)) +g=a4.a +f=g.id +if(f==null)f=A.q(A.R(a3+A.o(g).j(0)+"#"+A.bt(g))) +e=(p.b-f.a)/2 +p=g +break +case 1:if(k)e=0 +else{p=s.a(A.H.prototype.ga4.call(a2)) +g=a4.a +f=g.id +if(f==null)f=A.q(A.R(a3+A.o(g).j(0)+"#"+A.bt(g))) +e=p.b-f.a +p=g}break +default:e=0}l.a=new A.l(e,h) +l=p.id +p=l==null?A.q(A.R(a3+A.o(p).j(0)+"#"+A.bt(p))):l +h+=p.b+a2.Y +a5=i.$0() +a4.a=a5}a2.id=s.a(A.H.prototype.ga4.call(a2)).bI(new A.V(s.a(A.H.prototype.ga4.call(a2)).b,h-a2.Y))}else{a5=a4.a=a2.a3$ +d=a5.gq(a5).a +c=a2.Z==null?j:s.a(A.H.prototype.ga4.call(a2)).b +a2.id=s.a(A.H.prototype.ga4.call(a2)).bI(new A.V(c,n)) +e=A.b4("x") +b=a2.B +switch(a2.Z){case null:case void 0:e.b=k?a2.gq(a2).a-d:0 +break +case B.D:e.b=k?a2.gq(a2).a-d:0 +break +case B.dg:a=(a2.gq(a2).a-j)/2 +e.b=k?a2.gq(a2).a-a-d:a +break +case B.nR:e.b=k?j-d:a2.gq(a2).a-j +break +case B.fk:b=(a2.gq(a2).a-o)/(a2.d_$-1) +e.b=k?a2.gq(a2).a-d:0 +break +case B.a6u:b=a2.d_$>0?(a2.gq(a2).a-o)/a2.d_$:0 +s=b/2 +e.b=k?a2.gq(a2).a-s-d:s +break +case B.ko:b=(a2.gq(a2).a-o)/(a2.d_$+1) +e.b=k?a2.gq(a2).a-b-d:b +break}for(s=!k,p=t.pi,l=e.a;g=a4.a,g!=null;){f=g.b +f.toString +p.a(f) +a0=e.b +if(a0===e)A.q(A.i0(l)) +a1=g.id +f.a=new A.l(a0,(n-(a1==null?A.q(A.R(a3+A.o(g).j(0)+"#"+A.bt(g))):a1).b)/2) +if(s)g=e.b=a0+(a1.a+b) +else g=a0 +a5=a4.a=r.a(f).am$ +if(k&&a5!=null){f=a5.id +e.b=g-((f==null?A.q(A.R(a3+A.o(a5).j(0)+"#"+A.bt(a5))):f).a+b)}}}}, +dY(a,b){return this.zS(a,b)}, +aD(a,b){this.wM(a,b)}} +A.b9b.prototype={ +$0(){var s=this.b,r=s.ar,q=this.a.a +s=A.k(s).h("aq.1") +if(r===B.cr){r=q.b +r.toString +r=s.a(r).am$ +s=r}else{r=q.b +r.toString +r=s.a(r).d0$ +s=r}return s}, +$S:536} +A.ap5.prototype={ +aA(a){var s,r,q +this.eR(a) +s=this.a3$ +for(r=t.pi;s!=null;){s.aA(a) +q=s.b +q.toString +s=r.a(q).am$}}, +ap(a){var s,r,q +this.eS(0) +s=this.a3$ +for(r=t.pi;s!=null;){s.ap(0) +q=s.b +q.toString +s=r.a(q).am$}}} +A.ap6.prototype={} +A.qt.prototype={ +stA(a){var s +if(this.b===a)return +this.b=a +s=this.e +if(s!=null)s.a0b()}, +stt(a){if(this.c)return +this.c=!0 +this.e.a0b()}, +P(a,b){this.d.P(0,b)}, +J(a,b){this.d.J(0,b)}, +er(a){var s,r=this.e +r.toString +this.e=null +if(r.c==null)return +B.b.F(r.d,this) +s=$.cF +if(s.RG$===B.kQ)s.p3$.push(new A.aKU(r)) +else r.a2n()}, +ef(){var s=this.f.gR() +if(s!=null)s.a2p()}, +j(a){return"#"+A.bt(this)+"(opaque: "+this.b+"; maintainState: "+this.c+")"}, +$iau:1} +A.aKU.prototype={ +$1(a){this.a.a2n()}, +$S:6} +A.rk.prototype={ +a8(){return new A.Gn(B.m)}} +A.Gn.prototype={ +axK(a,b){var s,r,q,p=this.e +if(p==null)p=this.e=new A.jF(t.oM) +s=p.b===0?null:p.ga1(p) +r=b.a +while(!0){q=s==null +if(!(!q&&s.a>r))break +s=s.gBj()}if(q){p.yO(p.c,b,!0) +p.c=b}else s.i6$.yO(s.hy$,b,!1)}, +gDn(){var s,r=this,q=r.f +if(q===$){s=r.PD(!1) +r.f!==$&&A.am() +r.f=s +q=s}return q}, +PD(a){return new A.k4(this.aoI(a),t.bm)}, +aoI(a){var s=this +return function(){var r=a +var q=0,p=2,o,n,m,l +return function $async$PD(b,c,d){if(c===1){o=d +q=p}while(true)switch(q){case 0:l=s.e +if(l==null||l.b===0){q=1 +break}n=r?l.ga1(l):l.gN(l) +case 3:if(!(n!=null)){q=4 +break}m=n.d +n=r?n.gBj():n.gnh(n) +q=m!=null?5:6 +break +case 5:q=7 +return b.b=m,1 +case 7:case 6:q=3 +break +case 4:case 1:return 0 +case 2:return b.c=o,3}}}}, +aR(){var s,r=this +r.b5() +r.a.c.d.sk(0,r) +s=r.c.x9(t.im) +s.toString +r.d=s}, +aY(a){var s,r=this +r.br(a) +if(a.d!==r.a.d){s=r.c.x9(t.im) +s.toString +r.d=s}}, +m(){var s,r=this +r.a.c.d.sk(0,null) +s=r.a.c +if(s.r){s=s.d +s.ah$=$.b5() +s.ak$=0}r.e=null +r.aZ()}, +A(a){var s=this.a,r=s.e,q=this.d +q===$&&A.b() +return new A.zc(r,new A.zR(q,this,s.c.a.$1(a),null),null)}, +a2p(){this.a7(new A.b7t())}} +A.b7t.prototype={ +$0(){}, +$S:0} +A.CY.prototype={ +a8(){return new A.D_(A.a([],t.wi),null,null,B.m)}} +A.D_.prototype={ +aR(){this.b5() +this.aas(0,this.a.c)}, +QZ(a,b){if(a!=null)return B.b.eX(this.d,a) +return this.d.length}, +aaq(a,b,c){b.e=this +this.a7(new A.aKZ(this,c,null,b))}, +xf(a,b){return this.aaq(a,b,null)}, +aas(a,b){var s,r=b.length +if(r===0)return +for(s=0;s"),s=new A.d1(s,r),s=new A.bZ(s,s.gt(s),r.h("bZ")),r=r.h("ax.E"),q=!0,p=0;s.u();){o=s.d +if(o==null)o=r.a(o) +if(q){++p +m.push(new A.rk(o,n,!0,o.f)) +q=!o.b||!1}else if(o.c)m.push(new A.rk(o,n,!1,o.f))}s=t.MV +return new A.TZ(m.length-p,n.a.d,A.aa(new A.d1(m,s),!1,s.h("ax.E")),null)}, +$iaN:1} +A.aKZ.prototype={ +$0(){var s=this,r=s.a +B.b.fu(r.d,r.QZ(s.b,s.c),s.d)}, +$S:0} +A.aKY.prototype={ +$0(){var s=this,r=s.a +B.b.Ff(r.d,r.QZ(s.b,s.c),s.d)}, +$S:0} +A.aL_.prototype={ +$0(){var s,r,q=this,p=q.a,o=p.d +B.b.ab(o) +s=q.b +B.b.I(o,s) +r=q.c +r.ack(s) +B.b.Ff(o,p.QZ(q.d,q.e),r)}, +$S:0} +A.aKX.prototype={ +$0(){}, +$S:0} +A.aKW.prototype={ +$0(){}, +$S:0} +A.TZ.prototype={ +bJ(a){return new A.an1(A.dN(t.F),this,B.al)}, +aX(a){var s=a.ae(t.I) +s.toString +s=new A.vq(s.w,this.e,this.f,A.aB(t.O5),0,null,null,A.aB(t.T)) +s.aW() +s.I(0,null) +return s}, +b4(a,b){var s=this.e +if(b.Y!==s){b.Y=s +b.a6()}s=a.ae(t.I) +s.toString +b.scF(s.w) +s=this.f +if(s!==b.av){b.av=s +b.aU() +b.bX()}}} +A.an1.prototype={ +ga9(){return t.im.a(A.kr.prototype.ga9.call(this))}, +oT(a,b){var s,r +this.YY(a,b) +s=a.b +s.toString +t.i9.a(s) +r=this.f +r.toString +s.at=t.KJ.a(t.f2.a(r).c[b.b]).c}, +oV(a,b,c){this.YZ(a,b,c)}} +A.zS.prototype={ +fR(a){if(!(a.b instanceof A.fD))a.b=new A.fD(null,null,B.i)}, +gog(){return!0}, +cj(){var s,r,q,p,o,n,m,l=this,k="RenderBox was not laid out: ",j=l.CI(),i=j.gaj(j) +j=l.ga4() +s=A.Ax(new A.V(A.S(1/0,j.a,j.b),A.S(1/0,j.c,j.d))) +j=l.gacS() +r=j.B +if(r==null)r=j.B=B.bs.L(j.Z) +for(j=t.Qv,q=t.EP;i.u();){p=i.gH(i) +o=p.b +o.toString +j.a(o) +if(!o.gLQ()){p.cX(s,!0) +n=l.id +if(n==null)n=A.q(A.R(k+A.o(l).j(0)+"#"+A.bt(l))) +m=p.id +o.sc6(0,r.wx(q.a(n.a2(0,m==null?A.q(A.R(k+A.o(p).j(0)+"#"+A.bt(p))):m))))}else{n=l.id +A.brG(p,o,n==null?A.q(A.R(k+A.o(l).j(0)+"#"+A.bt(l))):n,r)}}}, +dY(a,b){var s,r,q,p=this.Pj(),o=p.gaj(p) +p=t.Qv +s=!1 +while(!0){if(!(!s&&o.u()))break +r=o.gH(o) +q=r.b +q.toString +s=a.oz(new A.b9q(r),p.a(q).a,b)}return s}, +aD(a,b){var s,r,q,p,o,n +for(s=this.CI(),s=s.gaj(s),r=t.Qv,q=b.a,p=b.b;s.u();){o=s.gH(s) +n=o.b +n.toString +n=r.a(n).a +a.eg(o,new A.l(n.a+q,n.b+p))}}} +A.b9q.prototype={ +$2(a,b){return this.a.dc(a,b)}, +$S:16} +A.H0.prototype={} +A.vq.prototype={ +gacS(){return this}, +fR(a){if(!(a.b instanceof A.H0))a.b=new A.H0(null,null,B.i)}, +aA(a){var s,r,q,p,o +this.al1(a) +s=this.a3$ +for(r=t.i9;s!=null;){q=s.b +q.toString +r.a(q) +p=q.at +if(p==null)o=null +else{p=p.d.a.gDn() +o=new A.po(p.a(),p.$ti.h("po<1>"))}if(o!=null)for(;o.u();)o.b.aA(a) +s=q.am$}}, +ap(a){var s,r,q,p +this.al2(0) +s=this.a3$ +for(r=t.i9;s!=null;){q=s.b +q.toString +r.a(q) +p=q.at +if(p!=null)p.d.a.gDn().af(0,A.bU_()) +s=q.am$}}, +jf(){return this.ck(this.gWI())}, +scF(a){var s=this +if(s.Z===a)return +s.Z=a +s.B=null +s.a6()}, +OL(a){this.ar=!0 +this.m6(a) +a.C.a6() +this.ar=!1}, +RN(a){this.ar=!0 +this.uP(a) +this.ar=!1}, +a6(){if(this.ar)return +this.Cx()}, +gw7(){var s,r,q,p,o=this +if(o.Y===A.aq.prototype.gEb.call(o))return null +s=A.aq.prototype.gaI_.call(o,o) +for(r=o.Y,q=t.Qv;r>0;--r){p=s.b +p.toString +s=q.a(p).am$}return s}, +c3(a){return A.yt(this.gw7(),new A.b9u(a))}, +bV(a){return A.yt(this.gw7(),new A.b9s(a))}, +bW(a){return A.yt(this.gw7(),new A.b9t(a))}, +c1(a){return A.yt(this.gw7(),new A.b9r(a))}, +hL(a){var s,r,q,p,o=this.gw7() +for(s=t.Qv,r=null;o!=null;){q=o.b +q.toString +s.a(q) +p=o.q6(a) +if(p!=null){p+=q.a.b +r=r!=null?Math.min(r,p):p}o=q.am$}return r}, +ds(a){return new A.V(A.S(1/0,a.a,a.b),A.S(1/0,a.c,a.d))}, +CI(){return new A.k4(this.anS(),t.bm)}, +anS(){var s=this +return function(){var r=0,q=1,p,o,n,m,l,k +return function $async$CI(a,b,c){if(b===1){p=c +r=q}while(true)switch(r){case 0:k=s.gw7() +o=t.i9 +case 2:if(!(k!=null)){r=3 +break}r=4 +return a.b=k,1 +case 4:n=k.b +n.toString +o.a(n) +m=n.at +if(m==null)l=null +else{m=m.d.a.gDn() +l=new A.po(m.a(),m.$ti.h("po<1>"))}r=l!=null?5:6 +break +case 5:case 7:if(!l.u()){r=8 +break}r=9 +return a.b=l.b,1 +case 9:r=7 +break +case 8:case 6:k=n.am$ +r=2 +break +case 3:return 0 +case 1:return a.c=p,3}}}}, +Pj(){return new A.k4(this.anR(),t.bm)}, +anR(){var s=this +return function(){var r=0,q=1,p,o,n,m,l,k,j,i,h +return function $async$Pj(a,b,c){if(b===1){p=c +r=q}while(true)switch(r){case 0:i=s.Y===A.aq.prototype.gEb.call(s)?null:s.dk$ +h=s.d_$-s.Y +o=t.i9 +case 2:if(!(i!=null)){r=3 +break}n=i.b +n.toString +o.a(n) +m=n.at +if(m==null)l=null +else{m=m.d.a +k=m.r +if(k===$){j=m.PD(!0) +m.r!==$&&A.am() +m.r=j +k=j}l=new A.po(k.a(),k.$ti.h("po<1>"))}r=l!=null?4:5 +break +case 4:case 6:if(!l.u()){r=7 +break}r=8 +return a.b=l.b,1 +case 8:r=6 +break +case 7:case 5:r=9 +return a.b=i,1 +case 9:--h +i=h<=0?null:n.d0$ +r=2 +break +case 3:return 0 +case 1:return a.c=p,3}}}}, +aD(a,b){var s,r,q=this,p=q.aG +if(q.av!==B.l){s=q.cx +s===$&&A.b() +r=q.gq(q) +p.sb3(0,a.tE(s,b,new A.I(0,0,0+r.a,0+r.b),A.zS.prototype.giE.call(q),q.av,p.a))}else{p.sb3(0,null) +q.ajH(a,b)}}, +m(){this.aG.sb3(0,null) +this.jr()}, +ck(a){var s,r,q,p=this.a3$ +for(s=t.i9;p!=null;){a.$1(p) +r=p.b +r.toString +s.a(r) +q=r.at +if(q!=null)q.d.a.gDn().af(0,a) +p=r.am$}}, +jl(a){var s,r,q,p=this.gw7() +for(s=t.i9;p!=null;){a.$1(p) +r=p.b +r.toString +s.a(r) +q=r.at +if(q!=null)q.d.a.gDn().af(0,a) +p=r.am$}}, +t6(a){var s +switch(this.av.a){case 0:return null +case 1:case 2:case 3:s=this.gq(this) +return new A.I(0,0,0+s.a,0+s.b)}}} +A.b9u.prototype={ +$1(a){return a.aB(B.ad,this.a,a.gbZ())}, +$S:21} +A.b9s.prototype={ +$1(a){return a.aB(B.ak,this.a,a.gc2())}, +$S:21} +A.b9t.prototype={ +$1(a){return a.aB(B.aA,this.a,a.gcD())}, +$S:21} +A.b9r.prototype={ +$1(a){return a.aB(B.br,this.a,a.gd4())}, +$S:21} +A.aKV.prototype={ +j(a){return"OverlayPortalController"+(this.a!=null?"":" DETACHED")}} +A.LW.prototype={ +a8(){return new A.aiT(B.m)}} +A.aiT.prototype={ +ar6(a,b){var s,r,q=this,p=q.f,o=A.dr("marker",new A.b7u(q,!1)) +if(p!=null)if(q.e){s=o.b1() +s=p.b===s.r&&p.c===s.f +r=s}else r=!0 +else r=!1 +q.e=!1 +if(r)return p +return q.f=new A.vk(a,o.b1().r,o.b1().f)}, +aR(){this.b5() +this.a4n(this.a.c)}, +a4n(a){var s,r=a.b,q=this.d +if(q!=null)s=r!=null&&r>q +else s=!0 +if(s)this.d=r +a.b=null +a.a=this}, +cp(){this.ei() +this.e=!0}, +aY(a){var s,r,q=this +q.br(a) +if(!q.e){q.a.toString +s=!1}else s=!0 +q.e=s +s=a.c +r=q.a.c +if(s!==r){s.a=null +q.a4n(r)}}, +m(){this.a.c.a=null +this.f=null +this.aZ()}, +rz(a,b){this.a7(new A.b7w(this,b)) +this.f=null}, +xd(){this.a7(new A.b7v(this)) +this.f=null}, +A(a){var s,r,q=this,p=null,o=q.d +if(o==null)return new A.Go(p,q.a.e,p,p) +q.a.toString +s=q.ar6(o,!1) +r=q.a +return new A.Go(new A.af7(new A.ej(r.d,p),p),r.e,s,p)}} +A.b7u.prototype={ +$0(){var s=this.a.c +s.toString +return A.bN9(s,this.b)}, +$S:537} +A.b7w.prototype={ +$0(){this.a.d=this.b}, +$S:0} +A.b7v.prototype={ +$0(){this.a.d=null}, +$S:0} +A.vk.prototype={ +ZN(a){var s,r=this +r.d=a +r.b.axK(0,r) +s=r.c +s.aU() +s.vh() +s.bX()}, +a3u(a){var s,r=this +r.d=null +s=r.b.e +if(s!=null)s.F(0,r) +s=r.c +s.aU() +s.vh() +s.bX()}, +j(a){var s=A.bt(this) +return"_OverlayEntryLocation["+s+"] "}} +A.zR.prototype={ +dr(a){return a.f!==this.f||a.r!==this.r}} +A.Go.prototype={ +bJ(a){return new A.aiS(this,B.al)}, +aX(a){var s=new A.SM(null,A.aB(t.T)) +s.aW() +s.sbN(null) +return s}} +A.aiS.prototype={ +ga9(){return t.SN.a(A.c0.prototype.ga9.call(this))}, +hU(a,b){var s,r=this +r.vU(a,b) +s=r.f +s.toString +t.eU.a(s) +r.p2=r.fM(r.p2,s.d,null) +r.p1=r.fM(r.p1,s.c,s.e)}, +c_(a,b){var s=this +s.rE(0,b) +s.p2=s.fM(s.p2,b.d,null) +s.p1=s.fM(s.p1,b.c,b.e)}, +oN(a){this.p2=null +this.qa(a)}, +ck(a){var s=this.p2,r=this.p1 +if(s!=null)a.$1(s) +if(r!=null)a.$1(r)}, +cn(){var s,r,q +this.YL() +s=this.p1 +if(s!=null){r=t.x6.a(s.ga9()) +if(r!=null){q=s.d +q.toString +t.Vl.a(q) +q.c.OL(r) +q.d=r}}}, +fk(){var s,r,q=this.p1 +if(q!=null){s=t.x6.a(q.ga9()) +if(s!=null){r=q.d +r.toString +t.Vl.a(r) +r.c.RN(s) +r.d=null}}this.ahX()}, +oT(a,b){var s=t.SN +if(b!=null){s=s.a(A.c0.prototype.ga9.call(this)) +t.Lj.a(a) +s.C=a +b.ZN(a) +b.c.OL(a)}else s.a(A.c0.prototype.ga9.call(this)).sbN(a)}, +oV(a,b,c){var s=b.c,r=c.c +if(s!==r){s.RN(a) +r.OL(a)}if(b.b!==c.b||b.a!==c.a){b.a3u(a) +c.ZN(a)}}, +q1(a,b){if(b==null){t.SN.a(A.c0.prototype.ga9.call(this)).sbN(null) +return}t.Lj.a(a) +b.a3u(a) +b.c.RN(a) +t.SN.a(A.c0.prototype.ga9.call(this)).C=null}} +A.af7.prototype={ +aX(a){var s,r=a.x9(t.SN) +r.toString +s=new A.vp(r,null,A.aB(t.T)) +s.aW() +s.sbN(null) +return r.C=s}, +b4(a,b){}} +A.vp.prototype={ +CI(){var s=this.E$ +return s==null?B.NA:A.bGY(1,new A.b94(s),t.x)}, +Pj(){return this.CI()}, +gacS(){var s=this.d +return s instanceof A.vq?s:A.q(A.ty(A.h(s)+" of "+this.j(0)+" is not a _RenderTheater"))}, +jf(){this.C.ra(this) +this.Zh()}, +Fy(){var s=this +if(s.a0)return +s.aw=s.a0=!0 +s.Cx() +s.C.a6() +s.a0=!1}, +a6(){this.aw=!0 +this.Cx()}, +aKO(){var s,r=t.gW.a(this.d) +if(r==null||this.y==null)return +s=t.k.a(A.H.prototype.ga4.call(r)) +this.Os(A.Ax(new A.V(A.S(1/0,s.a,s.b),A.S(1/0,s.c,s.d))),!1)}, +cX(a,b){var s,r=this,q=r.aw||!t.k.a(A.H.prototype.ga4.call(r)).l(0,a) +r.cu=!0 +r.Os(a,b) +r.aw=r.cu=!1 +if(q){s=r.d +s.toString +t.im.a(s).LL(new A.b95(r),t.k)}}, +ie(a){return this.cX(a,!1)}, +xB(){var s=t.k.a(A.H.prototype.ga4.call(this)) +this.id=new A.V(A.S(1/0,s.a,s.b),A.S(1/0,s.c,s.d))}, +cj(){var s=this +if(s.cu){s.aw=!1 +return}if(s.E$==null){s.aw=!1 +return}s.ajI() +s.aw=!1}, +eI(a,b){var s,r=a.b +r.toString +s=t.q.a(r).a +b.bj(0,s.a,s.b)}} +A.b94.prototype={ +$1(a){return this.a}, +$S:538} +A.b95.prototype={ +$1(a){var s=this.a +s.aw=!0 +s.Cx()}, +$S:539} +A.SM.prototype={ +jf(){this.Zh() +var s=this.C +if(s!=null&&s.y!=null)this.ra(s)}, +cj(){this.yq() +var s=this.C +if(s!=null)s.aKO()}} +A.aiU.prototype={ +cn(){this.d3() +this.cT() +this.es()}, +m(){var s=this,r=s.b_$ +if(r!=null)r.J(0,s.gej()) +s.b_$=null +s.aZ()}} +A.ap0.prototype={} +A.ap1.prototype={} +A.Vv.prototype={ +aA(a){var s,r,q +this.eR(a) +s=this.a3$ +for(r=t.Qv;s!=null;){s.aA(a) +q=s.b +q.toString +s=r.a(q).am$}}, +ap(a){var s,r,q +this.eS(0) +s=this.a3$ +for(r=t.Qv;s!=null;){s.ap(0) +q=s.b +q.toString +s=r.a(q).am$}}} +A.ap9.prototype={} +A.Kb.prototype={ +a8(){var s=t.y +return new A.R9(A.ap([!1,!0,!0,!0],s,s),null,null,B.m)}, +qZ(a){return A.Hk().$1(a)}} +A.R9.prototype={ +aR(){var s,r,q=this +q.b5() +s=q.a +r=s.f +q.d=A.btN(A.bT(s.e),r,q) +r=q.a +s=r.f +s=A.btN(A.bT(r.e),s,q) +q.e=s +r=q.d +r.toString +q.f=new A.vg(A.a([r,s],t.Eo))}, +aY(a){var s,r=this +r.br(a) +if(!a.f.l(0,r.a.f)||A.bT(a.e)!==A.bT(r.a.e)){s=r.d +s.toString +s.sa5(0,r.a.f) +s=r.d +s.toString +s.sa73(A.bT(r.a.e)) +s=r.e +s.toString +s.sa5(0,r.a.f) +s=r.e +s.toString +s.sa73(A.bT(r.a.e))}}, +Ry(a){var s,r,q,p,o,n,m,l,k,j,i,h=this +if(!h.a.qZ(a))return!1 +s=a.a +r=s.e +if(A.bT(r)!==A.bT(h.a.e))return!1 +q=h.d +q.toString +p=s.c +p.toString +o=s.a +o.toString +q.e=-Math.min(p-o,q.d) +o=h.e +o.toString +s=s.b +s.toString +o.e=-Math.min(s-p,o.d) +if(a instanceof A.n0){s=a.e +if(s<0)n=q +else if(s>0)n=o +else n=null +m=n===q +l=new A.ue(m,0) +q=h.c +q.iv(l) +q=h.w +q.p(0,m,l.c) +q=q.i(0,m) +q.toString +if(q)n.d=0 +q=h.w.i(0,m) +q.toString +if(q){q=a.f +if(q!==0){s=n.c +if(s!=null)s.aQ(0) +n.c=null +k=A.S(Math.abs(q),100,1e4) +s=n.f +if(n.a===B.lp)r=0.3 +else{r=n.r +r===$&&A.b() +q=r.a +q=r.b.a_(0,q.gk(q)) +r=q}s.a=r +r.toString +s.b=A.S(k*0.00006,r,0.5) +r=n.w +s=n.x +s===$&&A.b() +q=s.a +r.a=s.b.a_(0,q.gk(q)) +r.b=Math.min(0.025+75e-8*k*k,1) +r=n.b +r===$&&A.b() +r.e=A.dC(0,B.e.bi(0.15+k*0.02),0) +r.oO(0,0) +n.as=0.5 +n.a=B.anX}else{q=a.d +if(q!=null){p=a.b.ga9() +p.toString +t.x.a(p) +j=p.gq(p) +i=p.jo(q.d) +switch(A.bT(r).a){case 0:n.toString +r=j.b +n.abX(0,Math.abs(s),j.a,A.S(i.b,0,r),r) +break +case 1:n.toString +r=j.a +n.abX(0,Math.abs(s),j.b,A.S(i.a,0,r),r) +break}}}}}else{if(!(a instanceof A.oP&&a.d!=null))s=a instanceof A.kw&&a.d!=null +else s=!0 +if(s){if(q.a===B.lq)q.wj(B.he) +s=h.e +if(s.a===B.lq)s.wj(B.he)}}h.r=A.o(a) +return!1}, +m(){this.d.m() +this.e.m() +this.akJ()}, +A(a){var s=this,r=null,q=s.a,p=s.d,o=s.e,n=q.e,m=s.f +return new A.dP(s.gRx(),new A.i5(A.jv(new A.i5(q.w,r),new A.ags(p,o,n,m),r,r,B.x),r),r,t.WA)}, +$iaN:1} +A.FZ.prototype={ +K(){return"_GlowState."+this.b}} +A.R8.prototype={ +sa5(a,b){if(this.ax.l(0,b))return +this.ax=b +this.ag()}, +sa73(a){if(this.ay===a)return +this.ay=a +this.ag()}, +m(){var s=this,r=s.b +r===$&&A.b() +r.m() +r=s.y +r===$&&A.b() +r.w.dL$.F(0,r) +r.Zl() +r=s.c +if(r!=null)r.aQ(0) +s.eH()}, +abX(a,b,c,d,e){var s,r,q,p=this,o=p.c +if(o!=null)o.aQ(0) +p.at=p.at+b/200 +o=p.f +s=p.r +s===$&&A.b() +r=s.b +s=s.a +o.a=r.a_(0,s.gk(s)) +o.b=Math.min(r.a_(0,s.gk(s))+b/c*0.8,0.5) +q=Math.min(c,e*0.20096189432249995) +s=p.w +r=p.x +r===$&&A.b() +o=r.b +r=r.a +s.a=o.a_(0,r.gk(r)) +s.b=Math.max(1-1/(0.7*Math.sqrt(p.at*q)),A.kM(o.a_(0,r.gk(r)))) +r=d/e +p.Q=r +if(r!==p.as){o=p.y +o===$&&A.b() +if(!o.gaKA())o.vP(0)}else{o=p.y +o===$&&A.b() +o.h7(0) +p.z=null}o=p.b +o===$&&A.b() +o.e=B.dc +if(p.a!==B.lq){o.oO(0,0) +p.a=B.lq}else{o=o.r +if(!(o!=null&&o.a!=null))p.ag()}p.c=A.d2(B.dc,new A.b4z(p))}, +Pe(a){var s=this +if(a!==B.a5)return +switch(s.a.a){case 1:s.wj(B.he) +break +case 3:s.a=B.lp +s.at=0 +break +case 2:case 0:break}}, +wj(a){var s,r,q=this,p=q.a +if(p===B.Ld||p===B.lp)return +p=q.c +if(p!=null)p.aQ(0) +q.c=null +p=q.f +s=q.r +s===$&&A.b() +r=s.a +p.a=s.b.a_(0,r.gk(r)) +p.b=0 +p=q.w +r=q.x +r===$&&A.b() +s=r.a +p.a=r.b.a_(0,s.gk(s)) +p.b=0 +p=q.b +p===$&&A.b() +p.e=a +p.oO(0,0) +q.a=B.Ld}, +aCg(a){var s,r=this,q=r.z +if(q!=null){q=q.a +s=r.Q +r.as=s-(s-r.as)*Math.pow(2,-(a.a-q)/$.bzR().a) +r.ag()}if(A.W2(r.Q,r.as,0.001)){q=r.y +q===$&&A.b() +q.h7(0) +r.z=null}else r.z=a}, +aD(a,b){var s,r,q,p,o,n,m,l,k,j=this,i=j.r +i===$&&A.b() +s=i.a +if(J.i(i.b.a_(0,s.gk(s)),0))return +s=b.a +r=b.b +q=s>r?r/s:1 +p=s*3/2 +o=Math.min(r,s*0.20096189432249995) +r=j.x +r===$&&A.b() +n=r.a +n=r.b.a_(0,n.gk(n)) +r=j.as +m=$.as().bn() +l=j.ax +k=i.a +m.sa5(0,A.K(B.e.bi(255*i.b.a_(0,k.gk(k))),l.gk(l)>>>16&255,l.gk(l)>>>8&255,l.gk(l)&255)) +a.eb(0) +a.bj(0,0,j.d+j.e) +a.hF(0,1,n*q) +a.uD(new A.I(0,0,0+s,0+o)) +a.ha(new A.l(s/2*(0.5+r),o-p),p,m) +a.dq(0)}, +j(a){return"_GlowController(color: "+this.ax.j(0)+", axis: "+this.ay.b+")"}} +A.b4z.prototype={ +$0(){return this.a.wj(B.e4)}, +$S:0} +A.ags.prototype={ +a31(a,b,c,d,e){var s +if(c==null)return +switch(A.nP(d,e).a){case 0:c.aD(a,b) +break +case 2:a.eb(0) +a.bj(0,0,b.b) +a.hF(0,1,-1) +c.aD(a,b) +a.dq(0) +break +case 3:a.eb(0) +a.tJ(0,1.5707963267948966) +a.hF(0,1,-1) +c.aD(a,new A.V(b.b,b.a)) +a.dq(0) +break +case 1:a.eb(0) +s=b.a +a.bj(0,s,0) +a.tJ(0,1.5707963267948966) +c.aD(a,new A.V(b.b,s)) +a.dq(0) +break}}, +aD(a,b){var s=this,r=s.d +s.a31(a,b,s.b,r,B.mY) +s.a31(a,b,s.c,r,B.hi)}, +fw(a){return a.b!=this.b||a.c!=this.c}, +j(a){return"_GlowingOverscrollIndicatorPainter("+A.h(this.b)+", "+A.h(this.c)+")"}} +A.amb.prototype={ +K(){return"_StretchDirection."+this.b}} +A.Oe.prototype={ +a8(){return new A.TG(null,null,B.m)}, +qZ(a){return A.Hk().$1(a)}} +A.TG.prototype={ +gwp(){var s,r,q,p,o,n,m=this,l=null,k=m.d +if(k===$){s=t.Y +r=new A.aO(0,0,s) +q=new A.TF(r,B.pH,B.eM,$.b5()) +p=A.bw(B.z,l,l,0,l,1,l,m) +p.cL() +o=p.eo$ +o.b=!0 +o.a.push(q.gPd()) +q.a!==$&&A.cl() +q.a=p +n=A.c_(B.dt,p,l) +n.a.P(0,q.geL()) +t.m.a(n) +q.b!==$&&A.cl() +q.b=new A.aw(n,r,s.h("aw")) +m.d!==$&&A.am() +m.d=q +k=q}return k}, +Ry(a){var s,r,q,p,o,n,m,l,k=this +if(!k.a.qZ(a))return!1 +s=a.a +if(A.bT(s.e)!==A.bT(k.a.c))return!1 +if(a instanceof A.n0){k.f=a +J.a1(k.e) +r=a.e +q=new A.ue(r<0,0) +p=k.c +p.iv(q) +k.w=q.c +if(k.w){r=k.r+=r +p=a.f +if(p!==0){s=k.gwp() +r=k.r +o=A.S(Math.abs(p),1,1e4) +p=s.c +n=s.b +n===$&&A.b() +m=n.a +p.a=n.b.a_(0,m.gk(m)) +p.b=Math.min(0.016+1.01/o,1) +p=s.a +p===$&&A.b() +p.e=A.dC(0,B.e.bi(o*0.02),0) +p.oO(0,0) +s.d=B.aoR +s.f=r>0?B.eM:B.Lo}else if(a.d!=null){s=s.d +s.toString +l=A.S(Math.abs(r)/s,0,1) +k.gwp().aMW(0,l,k.r)}}}else if(a instanceof A.oP||a instanceof A.kw){k.r=0 +s=k.gwp() +if(s.d===B.pI)s.wj(B.my)}k.e=a +return!1}, +aqM(a){switch(this.a.c.a){case 0:return a===B.eM?B.pN:B.pM +case 1:return a===B.eM?B.dn:B.iy +case 2:return a===B.eM?B.pM:B.pN +case 3:return a===B.eM?B.iy:B.dn}}, +m(){var s=this.gwp(),r=s.a +r===$&&A.b() +r.m() +s.eH() +this.alg()}, +A(a){var s={},r=A.aS(a,B.it,t.l).w +s.a=null +return new A.dP(this.gRx(),A.h1(this.gwp(),new A.baY(s,this,r.a),null),null,t.WA)}, +$iaN:1} +A.baY.prototype={ +$2(a,b){var s,r,q,p,o,n,m=this,l=m.b,k=l.gwp().b +k===$&&A.b() +s=k.a +s=k.b.a_(0,s.gk(s)) +switch(A.bT(l.a.c).a){case 0:r=1+s +m.a.a=m.c.a +q=1 +break +case 1:q=1+s +m.a.a=m.c.b +r=1 +break +default:r=1 +q=1}p=l.aqM(l.gwp().f) +k=l.f +if(k==null)o=null +else{k=k.a.d +k.toString +o=k}if(o==null)o=m.a.a +k=A.u7(r,q,1) +l=l.a +n=A.EW(p,l.f,k,!0) +return A.tb(n,s!==0&&o!==m.a.a?l.e:B.l)}, +$S:540} +A.GT.prototype={ +K(){return"_StretchState."+this.b}} +A.TF.prototype={ +aMW(a,b,c){var s,r,q,p=this,o=c>0?B.eM:B.Lo +if(p.f!==o&&p.d===B.pJ)return +p.f=o +p.e=b +s=p.c +r=p.b +r===$&&A.b() +q=r.a +s.a=r.b.a_(0,q.gk(q)) +q=p.e +s.b=0.016*q+0.016*(1-Math.exp(-q*8.237217661997105)) +q=p.a +q===$&&A.b() +q.e=B.my +if(p.d!==B.pI){q.oO(0,0) +p.d=B.pI}else{s=q.r +if(!(s!=null&&s.a!=null))p.ag()}}, +Pe(a){var s=this +if(a!==B.a5)return +switch(s.d.a){case 1:s.wj(B.my) +break +case 3:s.d=B.pH +s.e=0 +break +case 2:case 0:break}}, +wj(a){var s,r,q=this,p=q.d +if(p===B.pJ||p===B.pH)return +p=q.c +s=q.b +s===$&&A.b() +r=s.a +p.a=s.b.a_(0,r.gk(r)) +p.b=0 +p=q.a +p===$&&A.b() +p.e=a +p.oO(0,0) +q.d=B.pJ}, +m(){var s=this.a +s===$&&A.b() +s.m() +this.eH()}, +j(a){return"_StretchController()"}} +A.ue.prototype={ +fX(a){this.ajs(a) +a.push("side: "+(this.a?"leading edge":"trailing edge"))}} +A.Sd.prototype={ +fX(a){var s,r +this.Op(a) +s=this.j6$ +r=s===0?"local":"remote" +a.push("depth: "+s+" ("+r+")")}} +A.Vd.prototype={ +cn(){this.d3() +this.cT() +this.es()}, +m(){var s=this,r=s.b_$ +if(r!=null)r.J(0,s.gej()) +s.b_$=null +s.aZ()}} +A.VE.prototype={ +cn(){this.d3() +this.cT() +this.es()}, +m(){var s=this,r=s.b_$ +if(r!=null)r.J(0,s.gej()) +s.b_$=null +s.aZ()}} +A.TA.prototype={ +l(a,b){if(b==null)return!1 +if(J.a1(b)!==A.o(this))return!1 +return b instanceof A.TA&&A.e4(b.a,this.a)}, +gv(a){return A.dt(this.a)}, +j(a){return"StorageEntryIdentifier("+B.b.cq(this.a,":")+")"}} +A.oD.prototype={ +ZT(a){var s=A.a([],t.g8) +if(A.br6(a,s))a.tR(new A.aL4(s)) +return s}, +Nr(a,b){var s,r=this +if(r.a==null)r.a=A.F(t.K,t.z) +s=r.ZT(a) +if(s.length!==0)r.a.p(0,new A.TA(s),b)}, +MO(a){var s +if(this.a==null)return null +s=this.ZT(a) +return s.length!==0?this.a.i(0,new A.TA(s)):null}} +A.aL4.prototype={ +$1(a){return A.br6(a,this.a)}, +$S:44} +A.D1.prototype={ +A(a){return this.c}} +A.xW.prototype={ +T5(a,b,c){var s=t.gQ.a(B.b.gaI(this.f)) +if(s.aG!=null){s.aG=a +return A.d3(null,t.H)}return s.iZ(s.xX(a),b,c)}, +aaZ(a){var s=t.gQ.a(B.b.gaI(this.f)) +if(s.aG!=null){s.aG=a +return}s.fc(s.xX(a))}, +TY(a,b,c){var s=null,r=new A.vl(this.as,this.ax,B.fF,a,b,!0,s,A.ed(!1,t.y),$.b5()) +r.OG(b,s,!0,c,a) +r.OH(b,s,s,!0,c,a) +return r}, +aA(a){this.aio(a) +t.gQ.a(a).sGA(this.ax)}} +A.a5N.prototype={} +A.vl.prototype={ +Uw(a,b,c,d,e,f){return this.aix(a,b,c,d,e,null)}, +sGA(a){var s,r=this +if(r.aS===a)return +s=r.giD(r) +r.aS=a +if(s!=null)r.UW(r.xX(s))}, +gIp(){var s=this.ax +s.toString +return Math.max(0,s*(this.aS-1)/2)}, +GR(a,b){var s=Math.max(0,a-this.gIp())/(b*this.aS),r=B.e.Bv(s) +if(Math.abs(s-r)<1e-10)return r +return s}, +xX(a){var s=this.ax +s.toString +return a*s*this.aS+this.gIp()}, +giD(a){var s,r,q=this,p=q.at +if(p!=null)s=!(q.z!=null&&q.Q!=null) +else s=!0 +if(s)p=null +else{s=q.aG +if(s==null){p.toString +s=q.z +s.toString +r=q.Q +r.toString +r=A.S(p,s,r) +s=q.ax +s.toString +s=q.GR(r,s) +p=s}else p=s}return p}, +XW(){var s,r,q=this,p=q.w,o=p.c +o.toString +o=A.xX(o) +if(o!=null){p=p.c +p.toString +s=q.aG +if(s==null){s=q.at +s.toString +r=q.ax +r.toString +r=q.GR(s,r) +s=r}o.Nr(p,s)}}, +acJ(){var s,r +if(this.at==null){s=this.w +r=s.c +r.toString +r=A.xX(r) +if(r==null)s=null +else{s=s.c +s.toString +s=r.MO(s)}A.bkU(s) +if(s!=null)this.ar=s}}, +XV(){var s,r=this,q=r.aG +if(q==null){q=r.at +q.toString +s=r.ax +s.toString +s=r.GR(q,s) +q=s}r.w.r.sk(0,q) +q=$.ix.cS$ +q===$&&A.b() +q.a9x()}, +acI(a,b){if(b)this.ar=a +else this.fc(this.xX(a))}, +qu(a){var s,r,q,p,o=this,n=o.ax +n=n!=null?n:null +if(a===n)return!0 +o.ait(a) +s=o.at +s=s!=null?s:null +if(s==null)r=o.ar +else if(n===0){q=o.aG +q.toString +r=q}else{n.toString +r=o.GR(s,n)}p=o.xX(r) +o.aG=a===0?r:null +if(p!==s){o.at=p +return!1}return!0}, +uu(a){var s +this.aiy(a) +if(!(a instanceof A.vl))return +s=a.aG +if(s!=null)this.aG=s}, +pr(a,b){var s=a+this.gIp() +return this.Zj(s,Math.max(s,b-this.gIp()))}, +pv(){var s,r,q,p,o,n,m=this,l=null,k=m.z +if(k!=null&&m.Q!=null)k.toString +else k=l +if(m.z!=null&&m.Q!=null){s=m.Q +s.toString}else s=l +r=m.at +r=r!=null?r:l +q=m.ax +q=q!=null?q:l +p=m.w +o=p.a.c +n=m.aS +p=p.f +p===$&&A.b() +return new A.a5N(n,k,s,r,q,o,p)}} +A.R2.prototype={ +qt(a){return new A.R2(!1,this.pt(a))}, +grU(){return this.b}} +A.D0.prototype={ +qt(a){return new A.D0(this.pt(a))}, +arb(a){var s,r +if(a instanceof A.vl){s=a.giD(a) +s.toString +return s}s=a.at +s.toString +r=a.ax +r.toString +return s/r}, +arf(a,b){var s +if(a instanceof A.vl)return a.xX(b) +s=a.ax +s.toString +return b*s}, +zO(a,b){var s,r,q,p,o,n=this +if(b<=0){s=a.at +s.toString +r=a.z +r.toString +r=s<=r +s=r}else s=!1 +if(!s)if(b>=0){s=a.at +s.toString +r=a.Q +r.toString +r=s>=r +s=r}else s=!1 +else s=!0 +if(s)return n.aiq(a,b) +q=n.Gn(a) +p=n.arb(a) +s=q.c +if(b<-s)p-=0.5 +else if(b>s)p+=0.5 +o=n.arf(a,B.e.Bv(p)) +s=a.at +s.toString +if(o!==s){s=n.gyg() +r=a.at +r.toString +return new A.uA(o,A.GM(s,r-o,b),q)}return null}, +grU(){return!1}} +A.D2.prototype={ +a8(){return new A.aiY(B.m)}} +A.aiY.prototype={ +aR(){this.b5() +this.d=this.a.r.as}, +aqV(a){var s,r=this.a +switch(r.e.a){case 0:r=a.ae(t.I) +r.toString +s=A.bgz(r.w) +return this.a.f?A.blA(s):s +case 1:return r.f?B.af:B.ag}}, +A(a){var s,r,q,p=this,o=null,n=p.aqV(a),m=p.a.w +if(m==null)m=o +m=new A.D0(B.Fv.pt(m)) +m=new A.R2(!1,o).pt(m) +s=p.a +r=s.Q +s=s.r +q=A.DT(a).a8_(!1) +return new A.dP(new A.b7y(p),A.aRm(n,B.E,s,r,!1,o,new A.R2(!1,m),o,q,o,new A.b7z(p,n)),o,t.WA)}} +A.b7y.prototype={ +$1(a){if(a.j6$===0)this.a.a.toString +return!1}, +$S:47} +A.b7z.prototype={ +$2(a,b){var s=null,r=this.a.a +return A.bt8(0,this.b,0,B.OR,s,r.as,s,s,b,A.a([new A.a8O(r.r.ax,!0,r.z,s)],t.p))}, +$S:541} +A.jJ.prototype={ +gtA(){return!0}, +gqv(){return!1}, +Kl(a){return a instanceof A.jJ}, +a7q(a){return a instanceof A.jJ}, +gpI(){return this.cb}} +A.LY.prototype={ +kU(a,b,c){return this.al.$3(a,b,c)}, +zv(a,b,c,d){return this.cg.$4(a,b,c,d)}, +gtO(){return B.bt}, +gMX(){return B.bt}, +gtA(){return this.C}, +gqv(){return!1}, +gps(){return null}, +grV(){return null}, +gtt(){return!0}} +A.aJ1.prototype={} +A.aLG.prototype={} +A.a_V.prototype={ +Rj(a){return this.aw9(a)}, +aw9(a){var s=0,r=A.y(t.H),q,p=this,o,n,m +var $async$Rj=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:n=A.fY(a.b) +m=p.a +if(!m.ao(0,n)){s=1 +break}m=m.i(0,n) +m.toString +o=a.a +if(o==="Menu.selectedCallback"){m.gaPX().$0() +m.gaM8() +o=$.ar.al$.f.c.e +o.toString +A.bCR(o,m.gaM8(),t.vz)}else if(o==="Menu.opened")m.gaPW(m).$0() +else if(o==="Menu.closed")m.gaPV(m).$0() +case 1:return A.w(q,r)}}) +return A.x($async$Rj,r)}} +A.uo.prototype={ +A(a){return this.c}, +$iqF:1, +gr3(){return this.d}} +A.Dj.prototype={ +dr(a){return this.f!=a.f}} +A.ux.prototype={ +a8(){return new A.akN(null,A.F(t.yb,t.Q),null,!0,null,B.m)}} +A.akN.prototype={ +ghZ(){return this.a.d}, +kn(a,b){}, +A(a){return A.P1(this.d5$,this.a.c)}} +A.zi.prototype={ +dr(a){return a.f!=this.f}} +A.N8.prototype={ +a8(){return new A.SY(B.m)}} +A.SY.prototype={ +cp(){var s,r=this +r.ei() +s=r.c +s.toString +r.r=A.uy(s) +r.R9() +if(r.d==null){r.a.toString +r.d=!1}}, +aY(a){this.br(a) +this.R9()}, +ga2a(){this.a.toString +return!1}, +R9(){var s,r=this +if(r.ga2a()&&!r.w){r.w=!0;++$.a7E.cc$ +s=$.ix.cS$ +s===$&&A.b() +s.gaO5().b9(new A.b9A(r),t.P)}}, +azl(){var s,r=this +r.e=!1 +r.f=null +s=$.ix.cS$ +s===$&&A.b() +s.J(0,r.gRT()) +r.R9()}, +m(){if(this.e){var s=$.ix.cS$ +s===$&&A.b() +s.J(0,this.gRT())}this.aZ()}, +A(a){var s,r,q=this,p=q.d +p.toString +if(p&&q.ga2a())return B.a_ +p=q.r +if(p==null)p=q.f +s=q.a +r=s.d +return A.P1(p,new A.ux(s.c,r,null))}} +A.b9A.prototype={ +$1(a){var s,r=this.a +r.w=!1 +if(r.c!=null){s=$.ix.cS$ +s===$&&A.b() +s.P(0,r.gRT()) +r.a7(new A.b9z(r,a))}$.a7E.a6K()}, +$S:542} +A.b9z.prototype={ +$0(){var s=this.a +s.f=this.b +s.e=!0 +s.d=!1}, +$S:0} +A.fT.prototype={ +gAi(a){return!0}, +m(){var s=this,r=s.c +if(r!=null)r.aCU(s) +s.eH() +s.a=!0}} +A.lZ.prototype={ +Uh(a){}, +rb(a,b){var s,r,q=this,p=q.d5$ +p=p==null?null:J.jn(p.guj(),b) +s=p===!0 +r=s?a.AF(J.b3(q.d5$.guj(),b)):a.KD() +if(a.b==null){a.b=b +a.c=q +p=new A.aPP(q,a) +a.P(0,p) +q.j4$.p(0,a,p)}a.aak(r) +if(!s&&a.gAi(a)&&q.d5$!=null)q.SB(a)}, +wQ(){var s,r,q=this +if(q.j5$!=null){s=q.d5$ +s=s==null?null:s.e +s=s==q.ghZ()||q.gtH()}else s=!0 +if(s)return +r=q.d5$ +if(q.ut(q.j5$,!1))if(r!=null)r.m()}, +gtH(){var s,r,q=this +if(q.hb$)return!0 +if(q.ghZ()==null)return!1 +s=q.c +s.toString +r=A.uy(s) +if(r!=q.j5$){if(r==null)s=null +else{s=r.c +s=s==null?null:s.d +s=s===!0}s=s===!0}else s=!1 +return s}, +ut(a,b){var s,r,q=this +if(q.ghZ()==null||a==null)return q.a4i(null,b) +if(b||q.d5$==null){s=q.ghZ() +s.toString +return q.a4i(a.aFh(s,q),b)}s=q.d5$ +s.toString +r=q.ghZ() +r.toString +s.aNE(r) +r=q.d5$ +r.toString +a.m6(r) +return!1}, +a4i(a,b){var s,r=this,q=r.d5$ +if(a==q)return!1 +r.d5$=a +if(!b){if(a!=null){s=r.j4$ +new A.c9(s,A.k(s).h("c9<1>")).af(0,r.gaDg())}r.Uh(q)}return!0}, +SB(a){var s,r=a.gAi(a),q=this.d5$ +if(r){if(q!=null){r=a.b +r.toString +s=a.BC() +if(!J.i(J.b3(q.guj(),r),s)||!J.jn(q.guj(),r)){J.ie(q.guj(),r,s) +q.yR()}}}else if(q!=null){r=a.b +r.toString +q.aNu(0,r,t.K)}}, +aCU(a){var s=this.j4$.F(0,a) +s.toString +a.J(0,s) +a.c=a.b=null}} +A.aPP.prototype={ +$0(){var s=this.a +if(s.d5$==null)return +s.SB(this.b)}, +$S:0} +A.bcW.prototype={ +$2(a,b){if(!a.a)a.J(0,b)}, +$S:63} +A.apa.prototype={ +aY(a){this.br(a) +this.wQ()}, +cp(){var s,r,q,p,o=this +o.ei() +s=o.d5$ +r=o.gtH() +q=o.c +q.toString +q=A.uy(q) +o.j5$=q +p=o.ut(q,r) +if(r){o.kn(s,o.hb$) +o.hb$=!1}if(p)if(s!=null)s.m()}, +m(){var s,r=this +r.j4$.af(0,new A.bcW()) +s=r.d5$ +if(s!=null)s.m() +r.d5$=null +r.aZ()}} +A.dh.prototype={ +sk(a,b){var s=this.y +if(b==null?s!=null:b!==s){this.y=b +this.Uk(s)}}, +aak(a){this.y=a}} +A.lu.prototype={ +KD(){return this.cy}, +Uk(a){this.ag()}, +AF(a){return A.k(this).h("lu.T").a(a)}, +BC(){var s=this.y +return s==null?A.k(this).h("dh.T").a(s):s}} +A.SX.prototype={ +AF(a){return this.ajL(a)}, +BC(){var s=this.ajM() +s.toString +return s}} +A.N4.prototype={} +A.yx.prototype={} +A.N5.prototype={} +A.bcX.prototype={ +$2(a,b){if(!a.a)a.J(0,b)}, +$S:63} +A.lm.prototype={ +glc(a){var s,r=this,q=null,p=r.a +if(p!=null)return p +p=r.ghm() +if(p.gdN(p).length===0)p="/" +else{p=r.ghm() +p=p.gdN(p)}s=r.ghm().gtF() +s=s.gai(s)?q:r.ghm().gtF() +p=A.f7(r.ghm().goP().length===0?q:r.ghm().goP(),q,p,q,s,q).gwq() +return A.lv(p,0,p.length,B.O,!1)}, +ghm(){var s=this.b +if(s!=null)return s +s=this.a +s.toString +return A.dH(s,0,null)}} +A.DM.prototype={ +a8(){return new A.GC(new A.akK($.b5()),null,A.F(t.yb,t.Q),null,!0,null,B.m,this.$ti.h("GC<1>"))}} +A.aQg.prototype={ +K(){return"RouteInformationReportingType."+this.b}} +A.GC.prototype={ +ghZ(){return this.a.r}, +aR(){var s,r=this +r.b5() +s=r.a.c +if(s!=null)s.P(0,r.gIj()) +r.a.f.JY(r.gQp()) +r.a.e.P(0,r.gQF())}, +kn(a,b){var s,r,q=this,p=q.f +q.rb(p,"route") +s=p.y +r=s==null +if((r?A.k(p).h("dh.T").a(s):s)!=null){p=r?A.k(p).h("dh.T").a(s):s +p.toString +q.IU(p,new A.b9Q(q))}else{p=q.a.c +if(p!=null)q.IU(p.gk(p),new A.b9R(q))}}, +aA9(){var s=this +if(s.w||s.a.c==null)return +s.w=!0 +$.cF.p3$.push(s.gazp())}, +azq(a){var s,r,q,p=this +p.w=!1 +s=p.f +r=s.y +q=r==null +if((q?A.k(s).h("dh.T").a(r):r)!=null){s=q?A.k(s).h("dh.T").a(r):r +s.toString +r=p.a.c +r.toString +q=p.e +q.toString +r.aO7(s,q)}p.e=B.Ji}, +azD(){var s=this.a,r=s.e.d +s=s.d +return s==null?null:s.aNX(r)}, +IF(){var s=this +s.f.sk(0,s.azD()) +if(s.e==null)s.e=B.Ji +s.aA9()}, +cp(){var s,r=this +r.r=!0 +r.al5() +s=r.a.c +if(s!=null&&r.r)r.IU(s.gk(s),new A.b9P(r)) +r.r=!1 +r.IF()}, +aY(a){var s,r,q,p=this +p.al6(a) +s=p.a +r=a.c +q=s.c==r +if(!q||s.f!==a.f||s.d!=a.d||s.e!==a.e)p.d=new A.B() +if(!q){s=r==null +if(!s)r.J(0,p.gIj()) +q=p.a.c +if(q!=null)q.P(0,p.gIj()) +s=s?null:r.gk(r) +r=p.a.c +if(s!=(r==null?null:r.gk(r)))p.a1J()}s=a.f +if(p.a.f!==s){r=p.gQp() +s.MS(r) +p.a.f.JY(r)}s=a.e +if(p.a.e!==s){r=p.gQF() +s.J(0,r) +p.a.e.P(0,r) +p.IF()}}, +m(){var s=this,r=s.a.c +if(r!=null)r.J(0,s.gIj()) +s.a.f.MS(s.gQp()) +s.a.e.J(0,s.gQF()) +s.d=null +s.al7()}, +IU(a,b){var s,r,q=this +q.r=!1 +q.d=new A.B() +s=q.a.d +s.toString +r=q.c +r.toString +s.aMB(a,r).b9(q.ayO(q.d,b),t.H)}, +ayO(a,b){return new A.b9N(this,a,b)}, +a1J(){var s,r=this +r.r=!0 +s=r.a.c +r.IU(s.gk(s),new A.b9K(r))}, +arH(){var s=this +s.d=new A.B() +return s.a.e.MG().b9(s.atw(s.d),t.y)}, +atw(a){return new A.b9L(this,a)}, +a3J(){this.a7(new A.b9O()) +this.IF() +return new A.ct(null,t.kO)}, +atx(){this.a7(new A.b9M()) +this.IF()}, +A(a){var s=this.d5$,r=this.a,q=r.c,p=r.f,o=r.d +r=r.e +return A.P1(s,new A.akY(q,p,o,r,this,new A.ej(r.gTn(),null),null))}} +A.b9Q.prototype={ +$0(){return this.a.a.e.gafD()}, +$S(){return this.a.$ti.h("U<~>(1)()")}} +A.b9R.prototype={ +$0(){return this.a.a.e.gafu()}, +$S(){return this.a.$ti.h("U<~>(1)()")}} +A.b9P.prototype={ +$0(){return this.a.a.e.gYh()}, +$S(){return this.a.$ti.h("U<~>(1)()")}} +A.b9N.prototype={ +$1(a){var s=0,r=A.y(t.H),q,p=this,o,n +var $async$$1=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:o=p.a +n=p.b +if(o.d!=n){s=1 +break}s=3 +return A.t(p.c.$0().$1(a),$async$$1) +case 3:if(o.d==n)o.a3J() +case 1:return A.w(q,r)}}) +return A.x($async$$1,r)}, +$S(){return this.a.$ti.h("U<~>(1)")}} +A.b9K.prototype={ +$0(){return this.a.a.e.gYh()}, +$S(){return this.a.$ti.h("U<~>(1)()")}} +A.b9L.prototype={ +$1(a){var s=this.a +if(this.b!=s.d)return new A.ct(!0,t.d9) +s.a3J() +return new A.ct(a,t.d9)}, +$S:544} +A.b9O.prototype={ +$0(){}, +$S:0} +A.b9M.prototype={ +$0(){}, +$S:0} +A.akY.prototype={ +dr(a){var s=this +return s.f!=a.f||s.r!==a.r||s.w!=a.w||s.x!==a.x||s.y!==a.y}} +A.mj.prototype={ +gaa3(){return this.a.a.length!==0}, +JY(a){var s=this.a +s.b=!0 +s.a.push(a) +return null}, +MS(a){return this.a.F(0,a)}, +Vp(a){var s,r,q,p=this.a +if(p.a.length===0)return a +try{p=p.afZ(0) +return p}catch(q){s=A.ai(q) +r=A.aH(q) +p=A.bX("while invoking the callback for "+A.o(this).j(0)) +A.dV(new A.cc(s,r,"widget library",p,new A.b1p(this),!1)) +return a}}} +A.b1p.prototype={ +$0(){var s=null,r=this.a +return A.a([A.kY("The "+A.o(r).j(0)+" that invoked the callback was",r,!0,B.bk,s,!1,s,s,B.aS,s,!1,!0,!0,B.c6,s,A.k(r).h("mj"))],t.R)}, +$S:42} +A.Xi.prototype={ +gHN(a){var s,r=this.b +if(r===$){s=t.uF.a(A.aY(t.Ox)) +r!==$&&A.am() +this.b=s +r=s}return r}, +Vp(a){var s,r,q,p=this,o={} +if(p.gHN(p).a!==0){s=p.gHN(p) +r=A.aa(s,!0,A.k(s).c) +q=r.length-1 +o.a=q +return r[q].aLG(a).b9(new A.asw(o,p,r,a),t.y)}return p.Zo(a)}} +A.asw.prototype={ +$1(a){var s,r,q,p=this +if(a)return new A.ct(!0,t.d9) +s=p.a +r=s.a +if(r>0){q=r-1 +s.a=q +return p.c[q].aLG(p.d).b9(p,t.y)}return p.b.Zo(p.d)}, +$S:545} +A.a7J.prototype={ +JY(a){var s=this +if(!(A.mj.prototype.gaa3.call(s)||s.gHN(s).a!==0))$.ar.cI$.push(s) +s.aj7(a)}, +MS(a){var s=this +s.aj8(a) +if(!(A.mj.prototype.gaa3.call(s)||s.gHN(s).a!==0))B.b.F($.ar.cI$,s)}, +EA(){return this.Vp(A.d3(!1,t.y))}} +A.a7P.prototype={} +A.DN.prototype={ +afv(a){return this.NW(a)}, +afE(a){return this.NW(a)}} +A.a7Q.prototype={} +A.akK.prototype={ +KD(){return null}, +Uk(a){this.ag()}, +AF(a){var s,r,q=null +if(a==null)return q +t.Dn.a(a) +s=J.cn(a) +r=A.ae(s.gN(a)) +if(r==null)return q +return new A.lm(q,A.dH(r,0,q),s.ga1(a))}, +BC(){var s,r=this,q=r.y,p=q==null +if((p?A.k(r).h("dh.T").a(q):q)==null)q=null +else{q=(p?A.k(r).h("dh.T").a(q):q).ghm().j(0) +s=r.y +q=[q,(s==null?A.k(r).h("dh.T").a(s):s).c]}return q}} +A.akR.prototype={} +A.Ha.prototype={ +aY(a){this.br(a) +this.wQ()}, +cp(){var s,r,q,p,o=this +o.ei() +s=o.d5$ +r=o.gtH() +q=o.c +q.toString +q=A.uy(q) +o.j5$=q +p=o.ut(q,r) +if(r){o.kn(s,o.hb$) +o.hb$=!1}if(p)if(s!=null)s.m()}, +m(){var s,r=this +r.j4$.af(0,new A.bcX()) +s=r.d5$ +if(s!=null)s.m() +r.d5$=null +r.aZ()}} +A.CZ.prototype={ +gMu(){return this.e}, +vd(){var s,r=this,q=A.qu(r.gan0(),!1) +r.ok=q +r.gtt() +s=A.qu(r.gan2(),!0) +r.p2=s +B.b.I(r.e,A.a([q,s],t.wi)) +r.aij()}, +t7(a){var s,r=this +r.aie(a) +s=r.at.Q +s===$&&A.b() +if(s===B.Q&&!r.Q)r.a.a9o(r) +return!0}, +m(){var s,r,q,p,o +for(s=this.e,r=s.length,q=0;q"))}} +A.kJ.prototype={ +aR(){var s,r,q=this +q.b5() +s=A.a([],t.Eo) +r=q.a.c.go +if(r!=null)s.push(r) +r=q.a.c.id +if(r!=null)s.push(r) +q.e=new A.vg(s)}, +aY(a){this.br(a) +this.a5K()}, +cp(){this.ei() +this.d=null +this.a5K()}, +a5K(){var s,r,q=this.a.c,p=q.fx +if(!(p!=null)){q.a.a.toString +p=B.ajM}s=this.f +s.dy=p +if(q.gtl()&&this.a.c.a.a.ax){r=q.a.y.gk6() +if(r!=null)r.Ci(s)}}, +aqE(){this.a7(new A.b6G(this))}, +m(){this.f.m() +this.aZ()}, +ga4r(){var s=this.a.c.go +if((s==null?null:s.gaL(s))!==B.aZ){s=this.a.c.a +s=s==null?null:s.cx.a +s=s===!0}else s=!0 +return s}, +A(a){var s,r,q=this,p=null,o=q.a.c,n=o.gtl(),m=q.a.c +if(!m.gAH()){m=m.hP$ +m=m!=null&&m.length!==0}else m=!0 +s=q.a.c +s=s.gAH()||s.mO$>0 +r=q.a.c +return A.h1(o.c,new A.b6K(q),new A.RW(n,m,s,o,new A.CX(r.fy,new A.D1(new A.ej(new A.b6L(q),p),r.k4,p),p),p))}} +A.b6G.prototype={ +$0(){this.a.d=null}, +$S:0} +A.b6K.prototype={ +$2(a,b){var s=this.a.a.c.c.a +b.toString +return new A.ux(b,s,null)}, +$S:547} +A.b6L.prototype={ +$1(a){var s,r=null,q=A.ap([B.p8,new A.afh(a,new A.bb(A.a([],t.h),t.d))],t.n,t.od),p=this.a,o=p.e +o===$&&A.b() +s=p.d +if(s==null)s=p.d=new A.i5(new A.ej(new A.b6I(p),r),p.a.c.k3) +return A.pC(q,A.brk(A.aC7(!1,new A.i5(A.h1(o,new A.b6J(p),s),r),r,r,p.f),p.r))}, +$S:548} +A.b6J.prototype={ +$2(a,b){var s,r,q=this.a,p=q.a.c,o=p.go +o.toString +s=p.id +s.toString +r=p.a +r=r==null?null:r.cx +if(r==null)r=A.ed(!1,t.y) +return p.zv(a,o,s,A.h1(r,new A.b6H(q),b))}, +$S:51} +A.b6H.prototype={ +$2(a,b){var s=this.a,r=s.ga4r() +s.f.seJ(!r) +return A.tK(b,r,null)}, +$S:549} +A.b6I.prototype={ +$1(a){var s,r=this.a.a.c,q=r.go +q.toString +s=r.id +s.toString +return r.kU(a,q,s)}, +$S:12} +A.dX.prototype={ +a7(a){var s,r=this.k2 +if(r.gR()!=null){r=r.gR() +if(r.a.c.gtl()&&!r.ga4r()&&r.a.c.a.a.ax){s=r.a.c.a.y.gk6() +if(s!=null)s.Ci(r.f)}r.a7(a)}else a.$0()}, +zv(a,b,c,d){return d}, +vd(){var s=this +s.aiY() +s.go=A.lX(A.fg.prototype.gek.call(s,s)) +s.id=A.lX(A.fg.prototype.gY2.call(s))}, +EB(){var s,r=this,q=r.k2 +if(q.gR()!=null&&r.a.a.ax){s=r.a.y.gk6() +if(s!=null)s.Ci(q.gR().f)}return r.aiX()}, +Ex(){var s,r=this,q=r.k2 +if(q.gR()!=null&&r.a.a.ax){s=r.a.y.gk6() +if(s!=null)s.Ci(q.gR().f)}r.aiV()}, +sMa(a){var s,r=this +if(r.fy===a)return +r.a7(new A.aJi(r,a)) +s=r.go +s.toString +s.sbP(0,r.fy?B.eU:A.fg.prototype.gek.call(r,r)) +s=r.id +s.toString +s.sbP(0,r.fy?B.bN:A.fg.prototype.gY2.call(r)) +r.pu()}, +p6(){var s=0,r=A.y(t.oj),q,p=this,o,n,m +var $async$p6=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:p.k2.gR() +o=A.aa(p.k1,!0,t.UA),n=o.length,m=0 +case 3:if(!(m>>24&255)!==0&&!n.fy){s=n.go +s.toString +r=n.gps().a +r=A.K(0,r>>>16&255,r>>>8&255,r&255) +q=n.gps() +p=t.IC.h("dq") +o=A.bnQ(!0,m,new A.aw(t.m.a(s),new A.dq(new A.eE(B.aL),new A.dk(r,q),p),p.h("aw")),n.gqv(),n.grV(),m)}else o=A.aJe(!0,m,m,n.gqv(),m,n.grV(),m) +return o}, +an3(a){var s=this,r=null,q=s.p1 +if(q==null)q=s.p1=new A.bu(A.bI(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,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,B.aaY,r,r,r,r,r,r),!1,!1,!1,!1,new A.Gj(s,s.k2,A.k(s).h("Gj")),r) +return q}, +j(a){return"ModalRoute("+this.b.j(0)+", animation: "+A.h(this.as)+")"}} +A.aJi.prototype={ +$0(){this.a.fy=this.b}, +$S:0} +A.aJh.prototype={ +$0(){}, +$S:0} +A.Mm.prototype={ +gtA(){return!1}, +gtt(){return!0}} +A.MB.prototype={ +gqv(){return!0}, +grV(){return this.al}, +gps(){return this.cg}, +gtO(a){return this.cI}, +kU(a,b,c){var s=null,r=this.dH.$3(a,b,c) +return new A.bu(A.bI(s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,!0,s,s,s,s,s,s,s,s,s),!1,!0,!1,!1,new A.Jh(this.C,r,s),s)}, +zv(a,b,c,d){return this.ez.$4(a,b,c,d)}} +A.Gi.prototype={ +p6(){var s=0,r=A.y(t.oj),q,p=this,o +var $async$p6=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:o=p.hP$ +if(o!=null&&o.length!==0){q=B.Jj +s=1 +break}q=p.aik() +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$p6,r)}, +t7(a){var s,r,q=this,p=q.hP$ +if(p!=null&&p.length!==0){s=p.pop() +s.b=null +s.a2L() +r=s.c&&--q.mO$===0 +if(q.hP$.length===0||r)q.pu() +return!1}q.aiW(a) +return!0}} +A.a7X.prototype={ +A(a){var s,r,q,p,o,n,m=this,l=A.aS(a,B.bJ,t.l).w.f,k=m.c,j=k?l.a:0,i=m.r +j=Math.max(j,i.a) +s=m.d +r=s?l.b:0 +r=Math.max(r,i.b) +q=m.e +p=q?l.c:0 +p=Math.max(p,i.c) +o=m.f +n=o?l.d:0 +return new A.b8(new A.aK(j,r,p,Math.max(n,i.d)),A.aIK(m.x,a,o,k,q,s),null)}} +A.a81.prototype={ +acB(){}, +a8S(a,b){if(b!=null)b.iv(new A.DV(null,a,b,0))}, +a8T(a,b,c){b.iv(A.bjG(b,null,null,a,c))}, +KW(a,b,c){b.iv(new A.n0(null,c,0,a,b,0))}, +a8R(a,b){b.iv(new A.oP(null,a,b,0))}, +E3(){}, +m(){}, +j(a){return"#"+A.bt(this)}} +A.tJ.prototype={ +E3(){this.a.pb(0)}, +grw(){return!1}, +gpN(){return!1}, +gkq(){return 0}} +A.aEN.prototype={ +grw(){return!1}, +gpN(){return!1}, +gkq(){return 0}, +m(){this.b.$0() +this.Hr()}} +A.aRf.prototype={ +ami(a,b){var s,r,q=this +if(b==null)return a +if(a===0){if(q.d!=null)if(q.r==null){s=q.e +s=b.a-s.a>5e4}else s=!1 +else s=!1 +if(s)q.r=0 +return 0}else{s=q.r +if(s==null)return a +else{s+=a +q.r=s +r=q.d +r.toString +if(Math.abs(s)>r){q.r=null +s=Math.abs(a) +if(s>24)return a +else return Math.min(r/3,s)*J.kN(a)}else return 0}}}, +c_(a,b){var s,r,q,p,o=this +o.x=b +s=b.c +s.toString +r=s===0 +if(!r)o.e=b.a +q=b.a +if(o.f)if(r)if(q!=null){r=o.e +r=q.a-r.a>2e4}else r=!0 +else r=!1 +else r=!1 +if(r)o.f=!1 +p=o.ami(s,q) +if(p===0)return +s=o.a +if(A.aq1(s.w.a.c))p=-p +s.Xd(p>0?B.ov:B.ow) +r=s.at +r.toString +s.OA(r-s.r.Tc(s,p))}, +m(){this.x=null +this.b.$0()}, +j(a){return"#"+A.bt(this)}} +A.ayX.prototype={ +a8S(a,b){var s=t.uL.a(this.b.x) +if(b!=null)b.iv(new A.DV(s,a,b,0))}, +a8T(a,b,c){b.iv(A.bjG(b,null,t.zk.a(this.b.x),a,c))}, +KW(a,b,c){b.iv(new A.n0(t.zk.a(this.b.x),c,0,a,b,0))}, +a8R(a,b){var s=this.b.x +b.iv(new A.oP(s instanceof A.jx?s:null,a,b,0))}, +grw(){var s=this.b +return(s==null?null:s.w)!==B.bF}, +gpN(){return!0}, +gkq(){return 0}, +m(){this.b=null +this.Hr()}, +j(a){return"#"+A.bt(this)+"("+A.h(this.b)+")"}} +A.Xo.prototype={ +acB(){var s=this.a,r=this.b +r===$&&A.b() +s.pb(r.gkq())}, +E3(){var s=this.a,r=this.b +r===$&&A.b() +s.pb(r.gkq())}, +S7(){var s=this.b +s===$&&A.b() +s=s.x +s===$&&A.b() +if(!(Math.abs(this.a.OA(s))<1e-10)){s=this.a +s.oA(new A.tJ(s))}}, +S5(){this.a.pb(0)}, +KW(a,b,c){var s=this.b +s===$&&A.b() +b.iv(new A.n0(null,c,s.gkq(),a,b,0))}, +gpN(){return!0}, +gkq(){var s=this.b +s===$&&A.b() +return s.gkq()}, +m(){var s=this.b +s===$&&A.b() +s.m() +this.Hr()}, +j(a){var s=A.bt(this),r=this.b +r===$&&A.b() +return"#"+s+"("+r.j(0)+")"}, +grw(){return this.c}} +A.a0r.prototype={ +S7(){var s=this.a,r=this.c +r===$&&A.b() +r=r.x +r===$&&A.b() +if(s.OA(r)!==0){s=this.a +s.oA(new A.tJ(s))}}, +S5(){var s=this.a,r=this.c +r===$&&A.b() +s.pb(r.gkq())}, +KW(a,b,c){var s=this.c +s===$&&A.b() +b.iv(new A.n0(null,c,s.gkq(),a,b,0))}, +grw(){return!0}, +gpN(){return!0}, +gkq(){var s=this.c +s===$&&A.b() +return s.gkq()}, +m(){var s=this.b +s===$&&A.b() +s.fj(0) +s=this.c +s===$&&A.b() +s.m() +this.Hr()}, +j(a){var s=A.bt(this),r=this.c +r===$&&A.b() +return"#"+s+"("+r.j(0)+")"}} +A.Nh.prototype={ +Gc(a,b,c,d){var s,r=this +if(b.a==null){s=$.hC.qH$ +s===$&&A.b() +s=s.ao(0,c)}else s=!0 +if(s){r.b.Gc(a,b,c,d) +return}s=r.a +if(s.gca(s)==null)return +s=s.gca(s) +s.toString +if(A.bJF(s)){$.cF.H_(new A.aRb(r,a,b,c,d)) +return}r.b.Gc(a,b,c,d)}, +LX(a,b,c){return this.b.LX(0,b,c)}, +Fs(a,b){return this.b.Fs(a,b)}, +Ft(a,b){return this.b.Ft(a,b)}, +M9(a){return this.b.M9(a)}} +A.aRb.prototype={ +$1(a){var s=this +A.h_(new A.aRa(s.a,s.b,s.c,s.d,s.e))}, +$S:6} +A.aRa.prototype={ +$0(){var s=this +return s.a.Gc(s.b,s.c,s.d,s.e)}, +$S:0} +A.WE.prototype={ +K(){return"AndroidOverscrollIndicator."+this.b}} +A.a82.prototype={ +qC(a,b,c,d,e,f,g){return new A.bcM(this,g!==!1,c!==!1,d,e,b,f,a)}, +a8_(a){return this.qC(null,null,null,null,null,null,a)}, +a7Z(a){return this.qC(null,null,a,null,null,null,null)}, +a89(a,b,c,d){return this.qC(null,null,a,b,c,null,d)}, +a85(a,b){return this.qC(null,null,a,null,null,null,b)}, +ro(a){return A.cb()}, +guN(){return B.JQ}, +gFV(){return A.em([B.cl,B.cH],t.bd)}, +Kj(a,b,c){var s=null +switch(this.ro(a).a){case 3:case 4:case 5:return A.bJ6(b,c.b,B.bt,s,s,A.Hk(),B.F,s,s,s,s,B.he,s) +case 0:case 1:case 2:return b}}, +Ki(a,b,c){switch(this.ro(a).a){case 2:case 3:case 4:case 5:return b +case 0:switch(1){case 1:break}break +case 1:break}return A.bpN(c.a,b,B.n)}, +Nm(a){switch(this.ro(a).a){case 2:return new A.aRc() +case 4:return new A.aRd() +case 0:case 1:case 3:case 5:return new A.aRe()}}, +xY(a){switch(this.ro(a).a){case 2:return B.M_ +case 4:return B.M0 +case 0:case 1:case 3:case 5:return B.P5}}, +Yl(a){return!1}, +j(a){return"ScrollBehavior"}} +A.aRc.prototype={ +$1(a){return A.bGC(a.gdS(a))}, +$S:550} +A.aRd.prototype={ +$1(a){var s=a.gdS(a),r=t.av +return new A.CC(A.aT(20,null,!1,r),s,A.aT(20,null,!1,r))}, +$S:551} +A.aRe.prototype={ +$1(a){return new A.k_(a.gdS(a),A.aT(20,null,!1,t.av))}, +$S:220} +A.bcM.prototype={ +guN(){var s=this.f +return s==null?B.JQ:s}, +gFV(){var s=this.r +return s==null?A.em([B.cl,B.cH],t.bd):s}, +Ki(a,b,c){if(this.c)return this.a.Ki(a,b,c) +return b}, +Kj(a,b,c){if(this.b)return this.a.Kj(a,b,c) +return b}, +qC(a,b,c,d,e,f,g){var s=this,r=g==null?s.b:g,q=c==null?s.c:c,p=s.guN(),o=s.gFV(),n=d==null?s.d:d,m=e==null?s.e:e,l=s.w +if(l==null)l=B.lK +return s.a.qC(l,p,q,n,m,o,r)}, +a8_(a){return this.qC(null,null,null,null,null,null,a)}, +a7Z(a){return this.qC(null,null,a,null,null,null,null)}, +a89(a,b,c,d){return this.qC(null,null,a,b,c,null,d)}, +a85(a,b){return this.qC(null,null,a,null,null,null,b)}, +ro(a){var s=this.e +return s==null?this.a.ro(a):s}, +xY(a){var s=this.d +return s==null?this.a.xY(a):s}, +Yl(a){var s=this +return A.o(a.a)!==A.o(s.a)||a.b!==s.b||a.c!==s.c||!A.W4(a.guN(),s.guN())||!A.W4(a.gFV(),s.gFV())||a.d!=s.d||a.e!=s.e||!1}, +Nm(a){return this.a.Nm(a)}, +j(a){return"_WrappedScrollBehavior"}} +A.Ni.prototype={ +dr(a){var s=this.f,r=a.f +if(A.o(s)===A.o(r))s=s!==r&&s.Yl(r) +else s=!0 +return s}} +A.yC.prototype={ +iZ(a,b,c){return this.aEo(a,b,c)}, +aEo(a,b,c){var s=0,r=A.y(t.H),q=this,p,o,n +var $async$iZ=A.u(function(d,e){if(d===1)return A.v(e,r) +while(true)switch(s){case 0:n=A.a([],t.mo) +for(p=q.f,o=0;o#"+A.bt(this)+"("+B.b.cq(r,", ")+")"}} +A.uJ.prototype={ +gAm(){return null}, +UR(a){return null}, +j(a){var s=A.a([],t.s) +this.fX(s) +return"#"+A.bt(this)+"("+B.b.cq(s,", ")+")"}, +fX(a){var s,r,q +try{s=this.gAm() +if(s!=null)a.push("estimated child count: "+A.h(s))}catch(q){r=A.ai(q) +a.push("estimated child count: EXCEPTION ("+J.a1(r).j(0)+")")}}} +A.GD.prototype={} +A.kx.prototype={ +UR(a){return null}, +aJ(a,b){var s,r,q,p,o,n,m,l,k=this,j=null +if(b>=0){p=k.b +p=p!=null&&b>=p}else p=!0 +if(p)return j +s=null +try{s=k.a.$2(a,b)}catch(o){r=A.ai(o) +q=A.aH(o) +n=new A.cc(r,q,"widgets library",A.bX("building"),j,!1) +A.dV(n) +s=A.JG(n)}if(s==null)return j +if(s.a!=null){p=s.a +p.toString +m=new A.GD(p)}else m=j +p=s +s=new A.i5(p,j) +if(k.e){l=k.r.$2(s,b) +if(l!=null)s=new A.C8(l,s,j)}p=s +s=new A.Ap(new A.GF(p,j),j) +return new A.ir(s,m)}, +gAm(){return this.b}, +Ym(a){return!0}} +A.a8M.prototype={ +aqk(a){var s,r,q,p=null,o=this.r +if(!o.ao(0,a)){s=o.i(0,p) +s.toString +for(r=this.f,q=s;q=this.f.length)return o +s=this.f[b] +r=s.a +q=r!=null?new A.GD(r):o +s=new A.i5(s,o) +p=A.bvk(s,b) +s=p!=null?new A.C8(p,s,o):s +return new A.ir(new A.Ap(new A.GF(s,o),o),q)}, +gAm(){return this.f.length}, +Ym(a){return this.f!==a.f}} +A.GF.prototype={ +a8(){return new A.Ti(null,B.m)}} +A.Ti.prototype={ +gGB(){return this.r}, +aKZ(a){return new A.bap(this,a)}, +JH(a,b){var s,r=this +if(b){s=r.d;(s==null?r.d=A.aY(t.x9):s).G(0,a)}else{s=r.d +if(s!=null)s.F(0,a)}s=r.d +s=s==null?null:s.a!==0 +s=s===!0 +if(r.r!==s){r.r=s +r.xO()}}, +cp(){var s,r,q,p=this +p.ei() +s=p.c +s.toString +r=A.a8c(s) +s=p.f +if(s!=r){if(s!=null){q=p.e +if(q!=null)new A.c9(q,A.k(q).h("c9<1>")).af(0,s.gls(s))}p.f=r +if(r!=null){s=p.e +if(s!=null)new A.c9(s,A.k(s).h("c9<1>")).af(0,r.gjx(r))}}}, +G(a,b){var s,r=this,q=r.aKZ(b) +b.P(0,q) +s=r.e;(s==null?r.e=A.F(t.x9,t.Q):s).p(0,b,q) +r.f.G(0,b) +if(b.gk(b).c!==B.fG)r.JH(b,!0)}, +F(a,b){var s=this.e +if(s==null)return +s=s.F(0,b) +s.toString +b.J(0,s) +this.f.F(0,b) +this.JH(b,!1)}, +m(){var s,r,q=this,p=q.e +if(p!=null){for(p=A.i1(p,p.r,A.k(p).c);p.u();){s=p.d +q.f.F(0,s) +r=q.e.i(0,s) +r.toString +s.J(0,r)}q.e=null}q.d=null +q.aZ()}, +A(a){var s=this +s.Oc(a) +if(s.f==null)return s.a.c +return A.brP(s.a.c,s)}} +A.bap.prototype={ +$0(){var s=this.b,r=this.a +if(s.gk(s).c!==B.fG)r.JH(s,!0) +else r.JH(s,!1)}, +$S:0} +A.ape.prototype={ +aR(){this.b5() +if(this.r)this.CV()}, +fk(){var s=this.mN$ +if(s!=null){s.ag() +s.eH() +this.mN$=null}this.rF()}} +A.m1.prototype={ +pv(){var s=this,r=null,q=s.gVb()?s.gkg():r,p=s.gVb()?s.gkf():r,o=s.gaa5()?s.gf0():r,n=s.gaa8()?s.gGz():r,m=s.gkT(),l=s.gA_(s) +return new A.JR(q,p,o,n,m,l)}, +gWj(){var s=this +return s.gf0()s.gkf()}, +ga7_(){var s=this +return s.gf0()===s.gkg()||s.gf0()===s.gkf()}, +gx_(){var s=this +return s.gGz()-A.S(s.gkg()-s.gf0(),0,s.gGz())-A.S(s.gf0()-s.gkf(),0,s.gGz())}} +A.JR.prototype={ +gkg(){var s=this.a +s.toString +return s}, +gkf(){var s=this.b +s.toString +return s}, +gVb(){return this.a!=null&&this.b!=null}, +gf0(){var s=this.c +s.toString +return s}, +gaa5(){return this.c!=null}, +gGz(){var s=this.d +s.toString +return s}, +gaa8(){return this.d!=null}, +j(a){var s=this +return"FixedScrollMetrics("+B.e.az(Math.max(s.gf0()-s.gkg(),0),1)+"..["+B.e.az(s.gx_(),1)+"].."+B.e.az(Math.max(s.gkf()-s.gf0(),0),1)+")"}, +gkT(){return this.e}, +gA_(a){return this.f}} +A.ag7.prototype={} +A.k0.prototype={} +A.aaX.prototype={ +aby(a){if(t.rS.b(a))++a.j6$ +return!1}} +A.jN.prototype={ +fX(a){this.ak3(a) +a.push(this.a.j(0))}} +A.DV.prototype={ +fX(a){var s +this.Cy(a) +s=this.d +if(s!=null)a.push(s.j(0))}} +A.kw.prototype={ +fX(a){var s +this.Cy(a) +a.push("scrollDelta: "+A.h(this.e)) +s=this.d +if(s!=null)a.push(s.j(0))}} +A.n0.prototype={ +fX(a){var s,r=this +r.Cy(a) +a.push("overscroll: "+B.e.az(r.e,1)) +a.push("velocity: "+B.e.az(r.f,1)) +s=r.d +if(s!=null)a.push(s.j(0))}} +A.oP.prototype={ +fX(a){var s +this.Cy(a) +s=this.d +if(s!=null)a.push(s.j(0))}} +A.aaK.prototype={ +fX(a){this.Cy(a) +a.push("direction: "+this.d.j(0))}} +A.T7.prototype={ +fX(a){var s,r +this.Op(a) +s=this.j6$ +r=s===0?"local":"remote" +a.push("depth: "+s+" ("+r+")")}} +A.T6.prototype={ +dr(a){return this.f!==a.f}} +A.ve.prototype={ +aKY(a,b){return this.a.$1(b)}} +A.Nk.prototype={ +a8(){return new A.Nl(new A.jF(t.z_),B.m)}} +A.Nl.prototype={ +J(a,b){var s,r,q=this.d +q.toString +q=A.bky(q,q.$ti.c) +s=q.$ti.c +for(;q.u();){r=q.c +if(r==null)r=s.a(r) +if(J.i(r.a,b)){q=r.i6$ +q.toString +q.Sv(A.k(r).h("j1.E").a(r)) +return}}}, +a3W(a){var s,r,q,p,o,n,m,l,k=this.d +if(k.b===0)return +p=A.aa(k,!0,t.Sx) +for(k=p.length,o=0;oMath.max(Math.abs(s.a),Math.abs(s.b))}return s.acd(a,b,c)}, +E2(a,b){var s=this.a +if(s==null)return 0 +return s.E2(a,b)}, +K5(a,b,c,d){var s=this.a +if(s==null){s=b.c +s.toString +return s}return s.K5(a,b,c,d)}, +zO(a,b){var s=this.a +if(s==null)return null +return s.zO(a,b)}, +gyg(){var s=this.a +s=s==null?null:s.gyg() +return s==null?$.bzb():s}, +Gn(a){var s=this.a +s=s==null?null:s.Gn(a) +if(s==null){s=a.w.f +s===$&&A.b() +s=new A.OV(1/s,1/(0.05*s))}return s}, +gVP(){var s=this.a +s=s==null?null:s.gVP() +return s==null?18:s}, +gM4(){var s=this.a +s=s==null?null:s.gM4() +return s==null?50:s}, +gFz(){var s=this.a +s=s==null?null:s.gFz() +return s==null?8000:s}, +Ts(a){var s=this.a +if(s==null)return 0 +return s.Ts(a)}, +gUo(){var s=this.a +return s==null?null:s.gUo()}, +grU(){return!0}, +ga6L(){return!0}, +j(a){var s=this.a +if(s==null)return"ScrollPhysics" +return"ScrollPhysics -> "+s.j(0)}} +A.a6K.prototype={ +qt(a){return new A.a6K(this.pt(a))}, +K5(a,b,c,d){var s,r,q,p,o,n,m,l +if(d!==0){s=!1 +r=!1}else{s=!0 +r=!0}q=c.a +q.toString +p=b.a +p.toString +if(q===p){o=c.b +o.toString +n=b.b +n.toString +n=o===n +o=n}else o=!1 +if(o)s=!1 +o=c.c +o.toString +n=b.c +n.toString +if(o!==n){if(isFinite(q)){n=c.b +n.toString +if(isFinite(n))if(isFinite(p)){n=b.b +n.toString +n=isFinite(n)}else n=!1 +else n=!1}else n=!1 +if(n)r=!1 +s=!1}n=om}else m=!0 +if(m)r=!1 +if(s){if(n&&p>q)return p-(q-o) +q=c.b +q.toString +if(o>q){n=b.b +n.toString +n=n0&&b<0))n=p>0&&b>0 +else n=!0 +s=a.ax +if(n){s.toString +m=this.a9I((o-Math.abs(b))/s)}else{s.toString +m=this.a9I(o/s)}l=J.kN(b) +if(n&&this.b===B.Jm)return l*Math.abs(b) +return l*A.bDi(o,Math.abs(b),m)}, +E2(a,b){return 0}, +zO(a,b){var s,r,q,p,o,n,m,l=this.Gn(a) +if(Math.abs(b)>=l.c||a.gWj()){switch(this.b.a){case 1:s=1400 +break +case 0:s=0 +break +default:s=null}r=this.gyg() +q=a.at +q.toString +p=a.z +p.toString +o=a.Q +o.toString +n=new A.atw(p,o,r,l) +if(qo){n.f=new A.uA(o,A.GM(r,q-o,b),B.d5) +n.r=-1/0}else{q=n.e=A.aCP(0.135,q,b,s) +m=q.gAz() +if(b>0&&m>o){p=q.acU(o) +n.r=p +n.f=new A.uA(o,A.GM(r,o-o,Math.min(q.j1(0,p),5000)),B.d5)}else if(b<0&&mr)q=r +else q=o +r=a.z +r.toString +if(s0){r=a.at +r.toString +p=a.Q +p.toString +p=r>=p +r=p}else r=!1 +if(r)return o +if(b<0){r=a.at +r.toString +p=a.z +p.toString +p=r<=p +r=p}else r=!1 +if(r)return o +r=a.at +r.toString +r=new A.avV(r,b,n) +p=$.bgL() +s=p*0.35*Math.pow(s/2223.8657884799995,1/(p-1)) +r.e=s +r.f=b*s/p +return r}} +A.WC.prototype={ +qt(a){return new A.WC(this.pt(a))}, +u0(a){return!0}} +A.a5r.prototype={ +qt(a){return new A.a5r(this.pt(a))}, +ga6L(){return!1}, +grU(){return!1}} +A.yF.prototype={ +K(){return"ScrollPositionAlignmentPolicy."+this.b}} +A.nc.prototype={ +OG(a,b,c,d,e){if(d!=null)this.uu(d) +if(this.x)this.acJ()}, +gkg(){var s=this.z +s.toString +return s}, +gkf(){var s=this.Q +s.toString +return s}, +gVb(){return this.z!=null&&this.Q!=null}, +gf0(){var s=this.at +s.toString +return s}, +gaa5(){return this.at!=null}, +gGz(){var s=this.ax +s.toString +return s}, +gaa8(){return this.ax!=null}, +uu(a){var s=this,r=a.z +if(r!=null&&a.Q!=null){r.toString +s.z=r +r=a.Q +r.toString +s.Q=r}r=a.at +if(r!=null)s.at=r +r=a.ax +if(r!=null)s.ax=r +s.fr=a.fr +a.fr=null +if(A.o(a)!==A.o(s))s.fr.acB() +s.w.Yd(s.fr.grw()) +s.dy.sk(0,s.fr.gpN())}, +gA_(a){var s=this.w.f +s===$&&A.b() +return s}, +afy(a){var s,r,q,p=this,o=p.at +o.toString +if(a!==o){s=p.r.E2(p,a) +o=p.at +o.toString +r=a-s +p.at=r +if(r!==o){p.SD() +p.Hj() +r=p.at +r.toString +p.Ui(r-o)}if(Math.abs(s)>1e-10){o=p.fr +o.toString +r=p.pv() +q=$.ar.al$.z.i(0,p.w.Q) +q.toString +o.KW(r,q,s) +return s}}return 0}, +TT(a){var s=this.at +s.toString +this.at=s+a +this.ch=!0}, +UW(a){var s=this,r=s.at +r.toString +s.as=a-r +s.at=a +s.SD() +s.Hj() +$.cF.p3$.push(new A.aRj(s))}, +XW(){var s,r=this.w,q=r.c +q.toString +q=A.xX(q) +if(q!=null){r=r.c +r.toString +s=this.at +s.toString +q.Nr(r,s)}}, +acJ(){var s,r +if(this.at==null){s=this.w +r=s.c +r.toString +r=A.xX(r) +if(r==null)s=null +else{s=s.c +s.toString +s=r.MO(s)}A.bkU(s) +if(s!=null)this.at=s}}, +acI(a,b){if(b)this.at=a +else this.fc(a)}, +XV(){var s=this.at +s.toString +this.w.r.sk(0,s) +s=$.ix.cS$ +s===$&&A.b() +s.a9x()}, +qu(a){if(this.ax!==a){this.ax=a +this.ch=!0}return!0}, +pr(a,b){var s,r,q,p=this +if(!A.W2(p.z,a,0.001)||!A.W2(p.Q,b,0.001)||p.ch||p.db!==A.bT(p.gkT())){p.z=a +p.Q=b +p.db=A.bT(p.gkT()) +s=p.ay?p.pv():null +p.ch=!1 +p.CW=!0 +if(p.ay){r=p.cx +r.toString +s.toString +r=!p.aGw(r,s)}else r=!1 +if(r)return!1 +p.ay=!0}if(p.CW){p.ais() +p.w.afp(p.r.u0(p)) +p.CW=!1}s=p.pv() +if(p.cx!=null){r=Math.max(s.gf0()-s.gkg(),0) +q=p.cx +if(r===Math.max(q.gf0()-q.gkg(),0))if(s.gx_()===p.cx.gx_()){r=Math.max(s.gkf()-s.gf0(),0) +q=p.cx +r=r===Math.max(q.gkf()-q.gf0(),0)&&s.e===p.cx.e}else r=!1 +else r=!1 +r=!r}else r=!0 +if(r){if(!p.cy){A.h_(p.gaH7()) +p.cy=!0}p.cx=p.pv()}return!0}, +aGw(a,b){var s=this,r=s.r.K5(s.fr.gpN(),b,a,s.fr.gkq()),q=s.at +q.toString +if(r!==q){s.at=r +return!1}return!0}, +E3(){this.fr.E3() +this.SD()}, +SD(){var s,r,q,p,o,n=this,m=n.w +switch(m.a.c.a){case 0:s=B.i3 +r=B.i2 +break +case 1:s=B.i4 +r=B.i5 +break +case 2:s=B.i2 +r=B.i3 +break +case 3:s=B.i5 +r=B.i4 +break +default:s=null +r=null}q=A.aY(t._S) +p=n.at +p.toString +o=n.z +o.toString +if(p>o)q.G(0,r) +p=n.at +p.toString +o=n.Q +o.toString +if(pr)o=r +break +default:o=m}r=n.at +r.toString +if(o===r)return A.d3(m,t.H) +if(e.a===B.F.a){n.fc(o) +return A.d3(m,t.H)}return n.iZ(o,d,e)}, +FF(a,b,c,d){var s,r=this.z +r.toString +s=this.Q +s.toString +b=A.S(b,r,s) +return this.aj_(0,b,c,d)}, +oA(a){var s,r,q=this,p=q.fr +if(p!=null){s=p.grw() +r=q.fr.gpN() +if(r&&!a.gpN())q.Uc() +q.fr.m()}else{r=!1 +s=!1}q.fr=a +if(s!==a.grw())q.w.Yd(q.fr.grw()) +q.dy.sk(0,q.fr.gpN()) +if(!r&&q.fr.gpN())q.Ug()}, +Ug(){var s=this.fr +s.toString +s.a8S(this.pv(),$.ar.al$.z.i(0,this.w.Q))}, +Ui(a){var s,r,q=this.fr +q.toString +s=this.pv() +r=$.ar.al$.z.i(0,this.w.Q) +r.toString +q.a8T(s,r,a)}, +Uc(){var s,r,q=this,p=q.fr +p.toString +s=q.pv() +r=$.ar.al$.z.i(0,q.w.Q) +r.toString +p.a8R(s,r) +q.XV() +if(q.x)q.XW()}, +aH8(){var s,r,q +this.cy=!1 +s=this.w.Q +if($.ar.al$.z.i(0,s)!=null){r=this.pv() +q=$.ar.al$.z.i(0,s) +q.toString +s=$.ar.al$.z.i(0,s) +if(s!=null)s.iv(new A.yD(r,q,0))}}, +m(){var s=this,r=s.fr +if(r!=null)r.m() +s.fr=null +r=s.dy +r.ah$=$.b5() +r.ak$=0 +s.eH()}, +fX(a){var s,r,q=this +q.aiZ(a) +s=q.z +s=s==null?null:B.e.az(s,1) +r=q.Q +r=r==null?null:B.e.az(r,1) +a.push("range: "+A.h(s)+".."+A.h(r)) +r=q.ax +a.push("viewport: "+A.h(r==null?null:B.e.az(r,1)))}} +A.aRj.prototype={ +$1(a){this.a.as=0}, +$S:6} +A.yD.prototype={ +a6W(){return A.bjG(this.b,this.j6$,null,this.a,null)}, +fX(a){this.ak2(a) +a.push(this.a.j(0))}} +A.T5.prototype={ +fX(a){var s,r +this.Op(a) +s=this.j6$ +r=s===0?"local":"remote" +a.push("depth: "+s+" ("+r+")")}} +A.al4.prototype={} +A.yG.prototype={ +OH(a,b,c,d,e,f){var s=this +if(s.at==null&&c!=null)s.at=c +if(s.fr==null)s.oA(new A.tJ(s))}, +gkT(){return this.w.a.c}, +uu(a){var s,r=this +r.air(a) +r.fr.a=r +r.k4=a.k4 +s=a.ok +if(s!=null){r.ok=s +s.a=r +a.ok=null}}, +oA(a){var s,r=this +r.k3=0 +r.aiu(a) +s=r.ok +if(s!=null)s.m() +r.ok=null +if(!r.fr.gpN())r.Xd(B.fF)}, +pb(a){var s,r,q,p=this,o=p.r.zO(p,a) +if(o!=null){s=p.fr +s=s==null?null:s.grw() +s=new A.Xo(s!==!1,p) +r=A.bhH(null,0,p.w) +r.cL() +q=r.dB$ +q.b=!0 +q.a.push(s.gS6()) +r.T6(o).a.a.fv(s.gS4()) +s.b=r +p.oA(s)}else p.oA(new A.tJ(p))}, +Xd(a){var s,r,q,p=this +if(p.k4===a)return +p.k4=a +s=p.pv() +r=p.w.Q +q=$.ar.al$.z.i(0,r) +q.toString +r=$.ar.al$.z.i(0,r) +if(r!=null)r.iv(new A.aaK(a,s,q,0))}, +iZ(a,b,c){var s,r,q,p=this,o=p.at +o.toString +if(A.W2(a,o,p.r.Gn(p).a)){p.fc(a) +return A.d3(null,t.H)}o=p.at +o.toString +s=new A.a0r(p) +r=new A.aD(new A.a8($.a9,t.b),t.gR) +s.b=r +o=A.bhH("DrivenScrollActivity",o,p.w) +o.cL() +q=o.dB$ +q.b=!0 +q.a.push(s.gS6()) +o.z=B.aI +o.jW(a,b,c).a.a.fv(s.gS4()) +s.c!==$&&A.cl() +s.c=o +p.oA(s) +return r.a}, +fc(a){var s,r,q=this +q.oA(new A.tJ(q)) +s=q.at +s.toString +if(s!==a){q.UW(a) +q.Ug() +r=q.at +r.toString +q.Ui(r-s) +q.Uc()}q.pb(0)}, +Wq(a){var s,r,q,p,o=this +if(a===0){o.pb(0) +return}s=o.at +s.toString +r=o.z +r.toString +r=Math.max(s+a,r) +q=o.Q +q.toString +p=Math.min(r,q) +if(p!==s){o.oA(new A.tJ(o)) +o.Xd(-a>0?B.ov:B.ow) +s=o.at +s.toString +o.dy.sk(0,!0) +o.UW(p) +o.Ug() +r=o.at +r.toString +o.Ui(r-s) +o.Uc() +o.pb(0)}}, +m(){var s=this.ok +if(s!=null)s.m() +this.ok=null +this.aiw()}} +A.atw.prototype={ +Sf(a){var s,r=this,q=r.r +q===$&&A.b() +if(a>q){if(!isFinite(q))q=0 +r.w=q +q=r.f +q===$&&A.b() +s=q}else{r.w=0 +q=r.e +q===$&&A.b() +s=q}s.a=r.a +return s}, +hD(a,b){return this.Sf(b).hD(0,b-this.w)}, +j1(a,b){return this.Sf(b).j1(0,b-this.w)}, +tm(a){return this.Sf(a).tm(a-this.w)}, +j(a){return"BouncingScrollSimulation(leadingExtent: "+A.h(this.b)+", trailingExtent: "+A.h(this.c)+")"}} +A.avV.prototype={ +hD(a,b){var s,r=this.e +r===$&&A.b() +s=A.S(b/r,0,1) +r=this.f +r===$&&A.b() +return this.b+r*(1-Math.pow(1-s,$.bgL()))}, +j1(a,b){var s=this.e +s===$&&A.b() +return this.c*Math.pow(1-A.S(b/s,0,1),$.bgL()-1)}, +tm(a){var s=this.e +s===$&&A.b() +return a>=s}} +A.a86.prototype={ +K(){return"ScrollViewKeyboardDismissBehavior."+this.b}} +A.a85.prototype={ +a7n(a,b,c,d){var s=this +if(s.x)return new A.a8x(c,b,s.ch,d,null) +return A.bt8(s.giY(),c,s.Q,B.h0,s.y,s.ch,null,null,b,d)}, +A(a){var s,r,q,p=this,o=p.a7f(a),n=p.c,m=A.bfs(a,n,p.d),l=p.f +if(l==null)l=p.e==null&&A.brm(a,n) +s=l?A.Dk(a):p.e +r=A.aRm(m,p.ch,s,p.at,!1,null,p.r,p.ay,p.w,p.as,new A.aRk(p,m,o)) +q=l&&s!=null?A.brl(r):r +if(p.ax===B.acv)return new A.dP(new A.aRl(a),q,null,t.kj) +else return q}, +giY(){return this.z}} +A.aRk.prototype={ +$2(a,b){return this.a.a7n(a,b,this.b,this.c)}, +$S:555} +A.aRl.prototype={ +$1(a){var s=A.a18(this.a) +if(a.d!=null&&s.gdt())s.vu() +return!1}, +$S:556} +A.J5.prototype={ +a7f(a){return this.cx}} +A.XJ.prototype={ +a7f(a){var s,r,q,p,o=this.Kg(a),n=this.cx +if(n==null){s=A.cT(a,null) +if(s!=null){r=s.f +q=r.a83(0,0) +p=r.aGh(0,0) +r=this.c===B.R +n=r?p:q +o=A.la(o,s.wH(r?q:p),null)}}return A.a([n!=null?new A.yU(n,o,null):o],t.p)}} +A.xy.prototype={ +Kg(a){var s=this.p3 +if(s!=null)return A.bK9(this.R8,s) +return new A.m6(this.R8,null)}} +A.a1z.prototype={ +Kg(a){return A.aTA(this.p4,this.p3)}} +A.baj.prototype={ +$2(a,b){if(!a.a)a.J(0,b)}, +$S:63} +A.Nm.prototype={ +a8(){var s=null,r=t.C +return new A.DW(new A.akL($.b5()),new A.bo(s,r),new A.bo(s,t.hA),new A.bo(s,r),B.F2,s,A.F(t.yb,t.Q),s,!0,s,s,s,B.m)}, +aPd(a,b){return this.f.$2(a,b)}} +A.aRt.prototype={ +$1(a){return null}, +$S:557} +A.T9.prototype={ +dr(a){return this.r!==a.r}} +A.DW.prototype={ +ga8D(){var s,r=this +switch(r.a.c.a){case 2:s=r.d.at +s.toString +return new A.l(0,s) +case 0:s=r.d.at +s.toString +return new A.l(0,-s) +case 3:s=r.d.at +s.toString +return new A.l(-s,0) +case 1:s=r.d.at +s.toString +return new A.l(s,0)}}, +gDz(){var s=this.a.d +if(s==null){s=this.x +s.toString}return s}, +ghZ(){return this.a.z}, +a5U(){var s,r,q,p=this,o=p.a.Q +if(o==null){o=p.c +o.toString +o=A.DT(o)}p.w=o +s=p.c +s.toString +s=o.xY(s) +p.e=s +o=p.a +r=o.e +if(r!=null)p.e=r.qt(s) +else{o=o.Q +if(o!=null){s=p.c +s.toString +p.e=o.xY(s).qt(p.e)}}q=p.d +if(q!=null){p.gDz().Ev(0,q) +A.h_(q.gev())}o=p.gDz() +s=p.e +s.toString +p.d=o.TY(s,p,q) +s=p.gDz() +o=p.d +o.toString +s.aA(o)}, +kn(a,b){var s,r,q,p=this.r +this.rb(p,"offset") +s=p.y +r=s==null +if((r?A.k(p).h("dh.T").a(s):s)!=null){q=this.d +q.toString +p=r?A.k(p).h("dh.T").a(s):s +p.toString +q.acI(p,b)}}, +aR(){if(this.a.d==null)this.x=A.DU(0,!0) +this.b5()}, +cp(){var s=this,r=s.c +r.toString +r=A.cT(r,B.lr) +s.y=r==null?null:r.ay +r=s.c +r.toString +r=A.cT(r,B.d7) +r=r==null?null:r.b +if(r==null){r=s.c +r.toString +r=A.P4(r).x +if(r==null){r=self.window.devicePixelRatio +if(r===0)r=1}}s.f=r +s.a5U() +s.ak5()}, +aB6(a){var s,r,q,p=this,o=null,n=p.a,m=n.e +if(m==null){n=n.Q +if(n==null)m=o +else{s=p.c +s.toString +s=n.xY(s) +m=s}}r=a.e +if(r==null){n=a.Q +if(n==null)r=o +else{s=p.c +s.toString +s=n.xY(s) +r=s}}do{n=m==null +s=n?o:A.o(m) +q=r==null +if(s!=(q?o:A.o(r)))return!0 +m=n?o:m.a +r=q?o:r.a}while(m!=null||r!=null) +n=p.a.d +n=n==null?o:A.o(n) +s=a.d +return n!=(s==null?o:A.o(s))}, +aY(a){var s,r,q=this +q.ak6(a) +s=a.d +if(q.a.d!=s){if(s==null){s=q.x +s.toString +r=q.d +r.toString +s.Ev(0,r) +q.x.m() +q.x=null}else{r=q.d +r.toString +s.Ev(0,r) +if(q.a.d==null)q.x=A.DU(0,!0)}s=q.gDz() +r=q.d +r.toString +s.aA(r)}if(q.aB6(a))q.a5U()}, +m(){var s,r=this,q=r.a.d +if(q!=null){s=r.d +s.toString +q.Ev(0,s)}else{q=r.x +if(q!=null){s=r.d +s.toString +q.Ev(0,s)}q=r.x +if(q!=null)q.m()}r.d.m() +r.r.m() +r.ak7()}, +afp(a){var s,r,q=this +if(a===q.ay)s=!a||A.bT(q.a.c)===q.ch +else s=!1 +if(s)return +if(!a){q.at=B.F2 +q.a3Y()}else{switch(A.bT(q.a.c).a){case 1:q.at=A.ap([B.le,new A.dy(new A.aRp(q),new A.aRq(q),t.ok)],t.n,t.xR) +break +case 0:q.at=A.ap([B.pe,new A.dy(new A.aRr(q),new A.aRs(q),t.Uv)],t.n,t.xR) +break}a=!0}q.ay=a +q.ch=A.bT(q.a.c) +s=q.Q +if(s.gR()!=null){s=s.gR() +s.Si(q.at) +if(!s.a.f){r=s.c.ga9() +r.toString +t.Wx.a(r) +s.e.aEx(r)}}}, +Yd(a){var s,r=this +if(r.ax===a)return +r.ax=a +s=r.as +if($.ar.al$.z.i(0,s)!=null){s=$.ar.al$.z.i(0,s).ga9() +s.toString +t.f1.a(s).saah(r.ax)}}, +aAh(a){var s=this.d,r=s.fr.gkq(),q=new A.aEN(this.gape(),s) +s.oA(q) +s.k3=r +this.cx=q}, +aAj(a){var s,r,q=this.d,p=q.r,o=p.Ts(q.k3) +p=p.gUo() +s=p==null?null:0 +r=new A.aRf(q,this.gapc(),o,p,a.a,o!==0,s,a.d,a) +q.oA(new A.ayX(r,q)) +this.CW=q.ok=r}, +aAk(a){var s=this.CW +if(s!=null)s.c_(0,a)}, +aAi(a){var s,r,q,p,o=this.CW +if(o!=null){s=a.b +s.toString +r=-s +if(A.aq1(o.a.w.a.c))r=-r +o.x=a +if(o.f){s=J.kN(r) +q=o.c +p=Math.abs(r)>Math.abs(q)*0.5 +if(s===J.kN(q)&&p)r+=q}o.a.pb(r)}}, +a3Y(){if($.ar.al$.z.i(0,this.Q)==null)return +var s=this.cx +if(s!=null)s.a.pb(0) +s=this.CW +if(s!=null)s.a.pb(0)}, +apf(){this.cx=null}, +apd(){this.CW=null}, +a43(a){var s,r=this.d,q=r.at +q.toString +s=r.z +s.toString +s=Math.max(q+a,s) +r=r.Q +r.toString +return Math.min(s,r)}, +a42(a){var s,r,q=A.b4("delta"),p=$.ix.dl$ +p===$&&A.b() +p=p.a +p=p.gbw(p) +s=A.i2(p,A.k(p).h("z.E")) +p=this.w +p===$&&A.b() +p=p.gFV() +r=s.ed(0,p.gkY(p))&&a.gdS(a)===B.bY +switch(A.bT(this.a.c).a){case 0:q.b=r?a.gpc().b:a.gpc().a +break +case 1:q.b=r?a.gpc().a:a.gpc().b +break}if(A.aq1(this.a.c))q.b=q.aF()*-1 +return q.aF()}, +aAq(a){var s,r,q,p,o=this +if(t.Mj.b(a)&&o.d!=null){s=o.e +if(s!=null){r=o.d +r.toString +r=!s.u0(r) +s=r}else s=!1 +if(s)return +q=o.a42(a) +p=o.a43(q) +if(q!==0){s=o.d.at +s.toString +s=p!==s}else s=!1 +if(s)$.iX.B$.acg(0,a,o.gaAl())}else if(t.xb.b(a))o.d.Wq(0)}, +aAm(a){var s,r=this,q=r.a42(a),p=r.a43(q) +if(q!==0){s=r.d.at +s.toString +s=p!==s}else s=!1 +if(s)r.d.Wq(q)}, +aAo(a){var s,r +if(a.j6$===0){s=$.ar.al$.z.i(0,this.z) +r=s==null?null:s.ga9() +if(r!=null)r.bX()}return!1}, +A(a){var s,r,q,p,o,n,m,l=this,k=null,j=l.d +j.toString +s=l.at +r=l.a +q=r.w +p=l.ax +p=A.tK(r.aPd(a,j),p,l.as) +o=new A.T9(l,j,A.u3(B.c8,new A.n6(new A.bu(A.bI(k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k),!1,!q,!1,!1,p,k),s,B.bv,q,l.Q),k,k,k,k,l.gaAp(),k),k) +j=l.a +if(!j.w){j=l.d +j.toString +s=l.e.grU() +r=l.a +o=new A.dP(l.gaAn(),new A.al5(j,s,r.x,o,l.z),k,t.ji) +j=r}s=l.gDz() +r=l.a.as +n=new A.a87(j.c,s,r) +j=l.w +j===$&&A.b() +o=j.Kj(a,j.Ki(a,o,n),n) +m=A.a8c(a) +if(m!=null){j=l.d +j.toString +o=new A.Tb(l,j,o,m,k)}return o}, +$iaN:1} +A.aRp.prototype={ +$0(){var s=this.a.w +s===$&&A.b() +return A.bk6(null,s.guN())}, +$S:152} +A.aRq.prototype={ +$1(a){var s,r,q=this.a +a.ax=q.ga3Z() +a.ay=q.ga40() +a.ch=q.ga41() +a.CW=q.ga4_() +a.cx=q.ga3X() +s=q.e +a.cy=s==null?null:s.gVP() +s=q.e +a.db=s==null?null:s.gM4() +s=q.e +a.dx=s==null?null:s.gFz() +s=q.w +s===$&&A.b() +r=q.c +r.toString +a.fr=s.Nm(r) +a.at=q.a.y +a.b=q.y +a.c=q.w.guN()}, +$S:158} +A.aRr.prototype={ +$0(){var s=this.a.w +s===$&&A.b() +return A.a1L(null,s.guN())}, +$S:207} +A.aRs.prototype={ +$1(a){var s,r,q=this.a +a.ax=q.ga3Z() +a.ay=q.ga40() +a.ch=q.ga41() +a.CW=q.ga4_() +a.cx=q.ga3X() +s=q.e +a.cy=s==null?null:s.gVP() +s=q.e +a.db=s==null?null:s.gM4() +s=q.e +a.dx=s==null?null:s.gFz() +s=q.w +s===$&&A.b() +r=q.c +r.toString +a.fr=s.Nm(r) +a.at=q.a.y +a.b=q.y +a.c=q.w.guN()}, +$S:208} +A.Tb.prototype={ +a8(){return new A.al6(B.m)}} +A.al6.prototype={ +aR(){var s,r,q,p +this.b5() +s=this.a +r=s.c +s=s.d +q=t.x9 +p=t.i +q=new A.Ta(r,new A.az2(r,30),s,A.F(q,p),A.F(q,p),A.a([],t.D1),A.aY(q),B.acE,$.b5()) +s.P(0,q.ga3O()) +this.d=q}, +aY(a){var s,r +this.br(a) +s=this.a.d +if(a.d!==s){r=this.d +r===$&&A.b() +r.scQ(0,s)}}, +m(){var s=this.d +s===$&&A.b() +s.m() +this.aZ()}, +A(a){var s=this.a,r=s.f,q=this.d +q===$&&A.b() +return new A.DY(r,s.e,q,null)}} +A.Ta.prototype={ +scQ(a,b){var s,r=this.id +if(b===r)return +s=this.ga3O() +r.J(0,s) +this.id=b +b.P(0,s)}, +aA5(){if(this.fr)return +this.fr=!0 +$.cF.p3$.push(new A.bag(this))}, +Ub(){var s=this,r=s.b,q=A.op(r,A.ab(r).c) +r=s.k1 +r.G9(r,new A.bah(q)) +r=s.k2 +r.G9(r,new A.bai(q)) +s.ahn()}, +V7(a){var s,r,q,p,o,n=this +if(n.fy==null&&n.fx==null)n.go=n.a1t(a.b) +s=A.apW(n.dx) +r=a.b +q=-s.a +p=-s.b +if(a.a===B.hZ){r=n.fy=n.a1X(r) +a=new A.yI(new A.l(r.a+q,r.b+p),B.hZ)}else{r=n.fx=n.a1X(r) +a=new A.yI(new A.l(r.a+q,r.b+p),B.Jq)}o=n.ahv(a) +if(o===B.oy){n.dy.e=!1 +return o}if(n.go){r=n.dy +r.aga(A.bjB(a.b,0,0)) +if(r.e)return B.oy}return o}, +a1X(a){var s,r,q,p=this.dx,o=p.c.ga9() +o.toString +t.x.a(o) +s=o.jo(a) +if(!this.go){r=s.b +if(r<0||s.a<0)return A.cD(o.cs(0,null),B.i) +if(r>o.gq(o).b||s.a>o.gq(o).a)return B.aaE}q=A.apW(p) +return A.cD(o.cs(0,null),new A.l(s.a+q.a,s.b+q.b))}, +Sx(a,b){var s,r,q,p=this,o=p.dx,n=A.apW(o) +o=o.c.ga9() +o.toString +t.x.a(o) +s=o.cs(0,null) +r=p.d +if(r!==-1)q=p.fx==null||b +else q=!1 +if(q){r=J.lB(p.b[r]).a +r.toString +p.fx=A.cD(s,A.cD(J.bhw(p.b[p.d],o),r.a.T(0,new A.l(0,-r.b/2))).T(0,n))}r=p.c +if(r!==-1)q=!0 +else q=!1 +if(q){r=J.lB(p.b[r]).b +r.toString +p.fy=A.cD(s,A.cD(J.bhw(p.b[p.c],o),r.a.T(0,new A.l(0,-r.b/2))).T(0,n))}}, +a5H(){return this.Sx(!0,!0)}, +a2c(a){var s,r,q,p,o,n,m,l,k=this,j=k.b +if(a){s=j[k.c] +r=s.gk(s).b +q=s.gk(s).b.b}else{s=j[k.d] +r=s.gk(s).a +j=s.gk(s).a +q=j==null?null:j.b}if(q==null||r==null)return +j=k.dx +p=j.c.ga9() +p.toString +t.x.a(p) +o=A.cD(s.cs(0,p),r.a) +n=p.gq(p).a +p=p.gq(p).b +switch(j.a.c.a){case 0:m=o.b +l=m-q +if(m>=p&&l<=0)return +if(m>p){j=k.id +n=j.at +n.toString +j.fc(n+p-m) +return}if(l<0){j=k.id +p=j.at +p.toString +j.fc(p+0-l)}return +case 1:r=o.a +if(r>=n&&r<=0)return +if(r>n){j=k.id +p=j.at +p.toString +j.fc(p+r-n) +return}if(r<0){j=k.id +p=j.at +p.toString +j.fc(p+r-0)}return +case 2:m=o.b +l=m-q +if(m>=p&&l<=0)return +if(m>p){j=k.id +n=j.at +n.toString +j.fc(n+m-p) +return}if(l<0){j=k.id +p=j.at +p.toString +j.fc(p+l-0)}return +case 3:r=o.a +if(r>=n&&r<=0)return +if(r>n){j=k.id +p=j.at +p.toString +j.fc(p+n-r) +return}if(r<0){j=k.id +p=j.at +p.toString +j.fc(p+0-r)}return}}, +a1t(a){var s,r=this.dx.c.ga9() +r.toString +t.x.a(r) +s=r.jo(a) +return new A.I(0,0,0+r.gq(r).a,0+r.gq(r).b).n(0,s)}, +l_(a,b){var s,r,q=this +switch(b.a.a){case 0:s=q.dx.d.at +s.toString +q.k1.p(0,a,s) +q.L1(a) +break +case 1:s=q.dx.d.at +s.toString +q.k2.p(0,a,s) +q.L1(a) +break +case 5:case 6:q.L1(a) +s=q.dx +r=s.d.at +r.toString +q.k1.p(0,a,r) +s=s.d.at +s.toString +q.k2.p(0,a,s) +break +case 2:q.k2.F(0,a) +q.k1.F(0,a) +break +case 3:case 4:s=q.dx +r=s.d.at +r.toString +q.k2.p(0,a,r) +s=s.d.at +s.toString +q.k1.p(0,a,s) +break}return q.aho(a,b)}, +L1(a){var s,r,q,p,o,n=this,m=n.dx,l=m.d.at +l.toString +s=n.k1.i(0,a) +r=n.fx +if(r!=null)q=s==null||Math.abs(l-s)>1e-10 +else q=!1 +if(q){p=A.apW(m) +a.Aa(new A.yI(new A.l(r.a+-p.a,r.b+-p.b),B.Jq))}o=n.k2.i(0,a) +r=n.fy +if(r!=null)l=o==null||Math.abs(l-o)>1e-10 +else l=!1 +if(l){p=A.apW(m) +a.Aa(new A.yI(new A.l(r.a+-p.a,r.b+-p.b),B.hZ))}}, +m(){var s=this +s.k1.ab(0) +s.k2.ab(0) +s.fr=!1 +s.dy.e=!1 +s.ahp()}} +A.bag.prototype={ +$1(a){var s=this.a +if(!s.fr)return +s.fr=!1 +s.JI()}, +$S:6} +A.bah.prototype={ +$2(a,b){return!this.a.n(0,a)}, +$S:223} +A.bai.prototype={ +$2(a,b){return!this.a.n(0,a)}, +$S:223} +A.al5.prototype={ +aX(a){var s=this.e,r=new A.akt(s,this.f,this.r,null,A.aB(t.T)) +r.aW() +r.sbN(null) +s.P(0,r.gB4()) +return r}, +b4(a,b){b.srU(this.f) +b.scQ(0,this.e) +b.saff(this.r)}} +A.akt.prototype={ +scQ(a,b){var s,r=this,q=r.C +if(b===q)return +s=r.gB4() +q.J(0,s) +r.C=b +b.P(0,s) +r.bX()}, +srU(a){if(a===this.a0)return +this.a0=a +this.bX()}, +saff(a){if(a==this.aw)return +this.aw=a +this.bX()}, +hv(a){var s,r,q=this +q.jq(a) +a.a=!0 +if(q.C.ay){a.ce(B.acS,q.a0) +s=q.C +r=s.at +r.toString +a.aV=r +a.e=!0 +r=s.Q +r.toString +a.bU=r +s=s.z +s.toString +a.cb=s +a.saf9(q.aw)}}, +zq(a,b,c){var s,r,q,p,o,n,m,l=this +if(c.length!==0){s=B.b.gN(c).dy +s=!(s!=null&&s.n(0,B.JN))}else s=!0 +if(s){l.cu=null +l.Zf(a,b,c) +return}s=l.cu +if(s==null)s=l.cu=A.Nx(null,l.gyc()) +s.sVx(a.Q||a.y) +s.scE(0,a.e) +s=l.cu +s.toString +r=t.QF +q=A.a([s],r) +p=A.a([],r) +for(s=c.length,o=null,n=0;n#"+A.bt(r)+"("+B.b.cq(q,", ")+")"}, +gv(a){return A.X(this.a,this.b,null,this.d,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r===b)return!0 +if(J.a1(b)!==A.o(r))return!1 +if(b instanceof A.a87)if(b.a===r.a)if(b.b===r.b)s=b.d===r.d +else s=!1 +else s=!1 +else s=!1 +return s}} +A.aRo.prototype={ +$2(a,b){if(b!=null)this.a.push(a+b.j(0))}, +$S:559} +A.az2.prototype={ +Rs(a,b){switch(b.a){case 0:return a.a +case 1:return a.b}}, +aBb(a,b){switch(b.a){case 0:return a.a +case 1:return a.b}}, +aga(a){var s=this,r=s.a.ga8D() +s.d=a.bj(0,r.a,r.b) +if(s.e)return +s.z3()}, +z3(){var s=0,r=A.y(t.H),q,p=this,o,n,m,l,k,j,i,h,g,f,e,d,c +var $async$z3=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:d=p.a +c=d.c.ga9() +c.toString +t.x.a(c) +o=A.j4(c.cs(0,null),new A.I(0,0,0+c.gq(c).a,0+c.gq(c).b)) +c=p.e=!0 +n=d.ga8D() +m=o.a +l=o.b +k=p.Rs(new A.l(m+n.a,l+n.b),A.bT(d.a.c)) +j=k+p.aBb(new A.V(o.c-m,o.d-l),A.bT(d.a.c)) +l=p.d +l===$&&A.b() +i=p.Rs(new A.l(l.a,l.b),A.bT(d.a.c)) +l=p.d +h=p.Rs(new A.l(l.c,l.d),A.bT(d.a.c)) +switch(d.a.c.a){case 0:case 3:if(h>j){m=d.d +l=m.at +l.toString +m=m.z +m.toString +m=l>m}else m=!1 +if(m){g=Math.min(h-j,20) +m=d.d +l=m.z +l.toString +m=m.at +m.toString +f=Math.max(l,m-g)}else{if(im}else m=!1 +if(m){g=Math.min(k-i,20) +m=d.d +l=m.z +l.toString +m=m.at +m.toString +f=Math.max(l,m-g)}else{if(h>j){m=d.d +l=m.at +l.toString +m=m.Q +m.toString +m=l>>24&255)/255*q.gk(q))),r.gk(r)>>>16&255,r.gk(r)>>>8&255,r.gk(r)&255)) +return s}, +a33(a){var s,r,q,p=this +if(a){s=$.as().bn() +r=p.c +q=p.r +s.sa5(0,A.K(B.e.bi(255*((r.gk(r)>>>24&255)/255*q.gk(q))),r.gk(r)>>>16&255,r.gk(r)>>>8&255,r.gk(r)&255)) +s.scK(0,B.aj) +s.sfB(1) +return s}s=$.as().bn() +r=p.b +q=p.r +s.sa5(0,A.K(B.e.bi(255*((r.gk(r)>>>24&255)/255*q.gk(q))),r.gk(r)>>>16&255,r.gk(r)>>>8&255,r.gk(r)&255)) +return s}, +ay_(){return this.a33(!1)}, +axW(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=this,d=null +e.gJ1() +switch(e.gJ1().a){case 0:s=e.f +r=e.cy +r===$&&A.b() +q=new A.V(s,r) +s+=2*e.x +r=e.db.d +r.toString +p=e.dx +p=p===B.ag||p===B.af +o=e.Q +n=new A.V(s,r-(p?o.gcC(o)+o.gcH(o):o.gdD())) +r=e.x +m=r+e.Q.a +o=e.cx +o===$&&A.b() +r=m-r +l=e.gIy() +k=new A.l(r,l) +j=k.T(0,new A.l(s,0)) +i=e.db.d +i.toString +p=e.dx +p=p===B.ag||p===B.af +h=e.Q +p=p?h.gcC(h)+h.gcH(h):h.gdD() +g=new A.l(r+s,l+(i-p)) +f=o +break +case 1:s=e.f +r=e.cy +r===$&&A.b() +q=new A.V(s,r) +r=e.x +p=e.db.d +p.toString +o=e.dx +o=o===B.ag||o===B.af +l=e.Q +o=o?l.gcC(l)+l.gcH(l):l.gdD() +n=new A.V(s+2*r,p-o) +o=e.f +p=e.x +m=b.a-o-p-e.Q.c +o=e.cx +o===$&&A.b() +p=m-p +r=e.gIy() +k=new A.l(p,r) +s=e.db.d +s.toString +l=e.dx +l=l===B.ag||l===B.af +i=e.Q +g=new A.l(p,r+(s-(l?i.gcC(i)+i.gcH(i):i.gdD()))) +j=k +f=o +break +case 2:s=e.cy +s===$&&A.b() +q=new A.V(s,e.f) +s=e.db.d +s.toString +r=e.dx +r=r===B.ag||r===B.af +p=e.Q +r=r?p.gcC(p)+p.gcH(p):p.gdD() +p=e.f +o=e.x +p+=2*o +n=new A.V(s-r,p) +r=e.cx +r===$&&A.b() +f=o+e.Q.b +o=e.gIy() +s=f-e.x +k=new A.l(o,s) +j=k.T(0,new A.l(0,p)) +l=e.db.d +l.toString +i=e.dx +i=i===B.ag||i===B.af +h=e.Q +g=new A.l(o+(l-(i?h.gcC(h)+h.gcH(h):h.gdD())),s+p) +m=r +break +case 3:s=e.cy +s===$&&A.b() +q=new A.V(s,e.f) +s=e.db.d +s.toString +r=e.dx +r=r===B.ag||r===B.af +p=e.Q +r=r?p.gcC(p)+p.gcH(p):p.gdD() +p=e.f +o=e.x +n=new A.V(s-r,p+2*o) +r=e.cx +r===$&&A.b() +f=b.b-p-o-e.Q.d +o=e.gIy() +p=f-e.x +k=new A.l(o,p) +s=e.db.d +s.toString +l=e.dx +l=l===B.ag||l===B.af +i=e.Q +g=new A.l(o+(s-(l?i.gcC(i)+i.gcH(i):i.gdD())),p) +j=k +m=r +break +default:g=d +j=g +k=j +n=k +q=n +f=q +m=f}s=k.a +r=k.b +e.ch=new A.I(s,r,s+n.a,r+n.b) +e.CW=new A.I(m,f,m+q.a,f+q.b) +s=e.r +if(s.gk(s)!==0){s=e.ch +s.toString +a.el(s,e.ay_()) +a.jF(j,g,e.a33(!0)) +s=e.y +if(s!=null){r=e.CW +r.toString +a.de(A.lh(r,s),e.ga32()) +return}s=e.CW +s.toString +a.el(s,e.ga32()) +return}}, +aD(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g=this,f=g.dx +if(f!=null){s=g.db +if(s!=null){r=s.b +r.toString +s=s.a +s.toString +s=r<=s}else s=!0}else s=!0 +if(s)return +s=g.db.d +s.toString +f=f===B.ag||f===B.af +r=g.Q +f=f?r.gcC(r)+r.gcH(r):r.gdD() +if(s-f-2*g.w<=0)return +f=g.db +s=f.b +s.toString +if(s==1/0||s==-1/0)return +f=f.gx_() +s=g.dx +s=s===B.ag||s===B.af +r=g.Q +s=s?r.gcC(r)+r.gcH(r):r.gdD() +r=g.db +q=r.b +q.toString +p=r.a +p.toString +r=r.d +r.toString +o=g.dx +o=o===B.ag||o===B.af +n=g.Q +o=o?n.gcC(n)+n.gcH(n):n.gdD() +m=A.S((f-s)/(q-p+r-o),0,1) +o=g.db.d +o.toString +f=g.dx +f=f===B.ag||f===B.af +s=g.Q +f=f?s.gcC(s)+s.gcH(s):s.gdD() +f=Math.min(o-f-2*g.w,g.at) +o=g.db.d +o.toString +s=g.dx +s=s===B.ag||s===B.af +r=g.Q +s=s?r.gcC(r)+r.gcH(r):r.gdD() +l=Math.max(f,(o-s-2*g.w)*m) +s=g.db.gx_() +o=g.db.d +o.toString +f=g.as +r=g.dx +r=r===B.ag||r===B.af +q=g.Q +r=r?q.gcC(q)+q.gcH(q):q.gdD() +k=Math.min(f,o-r-2*g.w) +f=g.dx +f=f===B.af||f===B.dq +r=g.db +if((f?Math.max(r.gkf()-r.gf0(),0):Math.max(r.gf0()-r.gkg(),0))>0){f=g.dx +f=f===B.af||f===B.dq +r=g.db +r=(f?Math.max(r.gf0()-r.gkg(),0):Math.max(r.gkf()-r.gf0(),0))>0 +f=r}else f=!1 +j=f?k:k*(1-A.S(1-s/o,0,0.2)/0.2) +f=g.db.d +f.toString +s=g.dx +s=s===B.ag||s===B.af +r=g.Q +s=s?r.gcC(r)+r.gcH(r):r.gdD() +s=A.S(l,j,f-s-2*g.w) +g.cy=s +f=g.db +r=f.b +r.toString +q=f.a +q.toString +i=r-q +if(i>0){r=f.c +r.toString +h=A.S((r-q)/i,0,1)}else h=0 +r=g.dx +q=r===B.af +p=q||r===B.dq?1-h:h +f=f.d +f.toString +r=r===B.ag||q +q=g.Q +r=r?q.gcC(q)+q.gcH(q):q.gdD() +g.cx=p*(f-r-2*g.w-s)+g.gavs() +return g.axW(a,b)}, +XN(a){var s,r,q,p,o=this,n=o.db,m=n.b +m.toString +s=n.a +s.toString +n=n.d +n.toString +r=o.dx +r=r===B.ag||r===B.af +q=o.Q +r=r?q.gcC(q)+q.gcH(q):q.gdD() +q=o.w +p=o.cy +p===$&&A.b() +return(m-s)*a/(n-r-2*q-p)}, +AM(a){var s,r,q=this +if(q.CW==null)return null +if(!q.ay){s=q.r +if(s.gk(s)!==0){s=q.db +r=s.a +r.toString +s=s.b +s.toString +s=r===s}else s=!0}else s=!0 +if(s)return!1 +return q.ch.n(0,a)}, +aad(a,b,c){var s,r,q,p=this,o=p.ch +if(o==null)return!1 +if(p.ay)return!1 +s=p.db +r=s.a +r.toString +s=s.b +s.toString +if(r===s)return!1 +q=o.oH(A.oL(p.CW.gbH(),24)) +s=p.r +if(s.gk(s)===0){if(c&&b===B.bY)return q.n(0,a) +return!1}switch(b.a){case 0:case 4:return q.n(0,a) +case 1:case 2:case 3:case 5:return o.n(0,a)}}, +aJH(a,b){return this.aad(a,b,!1)}, +aae(a,b){var s,r,q=this +if(q.CW==null)return!1 +if(q.ay)return!1 +s=q.r +if(s.gk(s)===0)return!1 +s=q.db +r=s.a +r.toString +s=s.b +s.toString +if(r===s)return!1 +switch(b.a){case 0:case 4:s=q.CW +return s.oH(A.oL(s.gbH(),24)).n(0,a) +case 1:case 2:case 3:case 5:return q.CW.n(0,a)}}, +fw(a){var s,r=this +if(r.a.l(0,a.a))if(r.b.l(0,a.b))if(r.c.l(0,a.c))if(r.e==a.e)if(r.f===a.f)if(r.r===a.r)if(r.w===a.w)if(r.x===a.x)if(J.i(r.y,a.y))if(r.Q.l(0,a.Q))if(r.as===a.as)if(r.at===a.at)s=r.ay!==a.ay +else s=!0 +else s=!0 +else s=!0 +else s=!0 +else s=!0 +else s=!0 +else s=!0 +else s=!0 +else s=!0 +else s=!0 +else s=!0 +else s=!0 +return s}, +H7(a){return!1}, +gCd(){return null}, +j(a){return"#"+A.bt(this)}, +m(){this.r.a.J(0,this.geL()) +this.eH()}} +A.aRx.prototype={ +$1(a){var s,r +if(a!=null){s=a.b +s.toString +r=a.a +r.toString +r=s>r +s=r}else s=!1 +return s}, +$S:560} +A.Dx.prototype={ +a8(){return A.bJ7(t.jV)}, +qZ(a){return this.cx.$1(a)}} +A.oK.prototype={ +gw6(){var s=this.a.d +if(s==null){s=this.c +s.toString +s=A.Dk(s)}return s}, +gye(){var s=this.a.e +return s===!0}, +ga4u(){if(this.gye())this.a.toString +return!1}, +gwW(){this.a.toString +return!0}, +aR(){var s,r,q,p,o=this,n=null +o.b5() +s=A.bw(B.z,n,o.a.ay,0,n,1,n,o) +s.cL() +r=s.eo$ +r.b=!0 +r.a.push(o.gaDB()) +o.x=s +s=o.y=A.c_(B.a3,s,n) +r=o.a +q=r.w +if(q==null)q=6 +p=r.r +r=r.db +r=new A.DX(B.m3,B.u,B.u,n,q,s,0,0,p,n,B.a4,18,18,r,$.b5()) +s.a.P(0,r.geL()) +o.at!==$&&A.cl() +o.at=r}, +cp(){this.ei()}, +aDC(a){if(a!==B.Q)if(this.gw6()!=null)this.gwW()}, +Gu(){var s,r=this,q=r.at +q===$&&A.b() +r.a.toString +q.sa5(0,B.m3) +r.a.toString +q.saOL(null) +if(r.ga4u()){r.a.toString +s=B.Pi}else s=B.u +q.sp5(s) +if(r.ga4u()){r.a.toString +s=B.Qt}else s=B.u +q.sadc(s) +s=r.c.ae(t.I) +s.toString +q.scF(s.w) +s=r.a.w +q.sWU(s==null?6:s) +q.sG2(r.a.r) +r.a.toString +s=r.c +s.toString +s=A.aS(s,B.bJ,t.l).w +q.sdE(0,s.f) +q.sNP(r.a.db) +r.a.toString +q.sVK(0) +r.a.toString +q.scG(0,null) +r.a.toString +q.sU1(0) +r.a.toString +q.sVR(0,18) +r.a.toString +q.sabh(18) +q.saag(!r.gwW())}, +aY(a){var s,r=this +r.br(a) +s=r.a.e +if(s!=a.e)if(s===!0){s=r.w +if(s!=null)s.aQ(0) +s=r.x +s===$&&A.b() +s.z=B.aI +s.jW(1,B.Z,null)}else{s=r.x +s===$&&A.b() +s.d9(0)}}, +aDk(a){var s,r,q,p,o,n=this,m=B.b.gaI(n.r.f),l=A.b4("primaryDeltaFromDragStart"),k=A.b4("primaryDeltaFromLastDragUpdate") +switch(m.w.a.c.a){case 0:s=a.b +l.b=n.d.b-s +k.b=n.e.b-s +break +case 1:s=a.a +l.b=s-n.d.a +k.b=s-n.e.a +break +case 2:s=a.b +l.b=s-n.d.b +k.b=s-n.e.b +break +case 3:s=a.a +l.b=n.d.a-s +k.b=n.e.a-s +break}s=n.at +s===$&&A.b() +r=l.aF() +q=n.f +q.toString +p=s.XN(r+q) +if(l.aF()>0){r=m.at +r.toString +r=pr}else r=!1 +else r=!0 +if(r){r=m.at +r.toString +p=r+s.XN(k.aF())}s=m.at +s.toString +if(p!==s){o=p-m.r.E2(m,p) +s=n.c +s.toString +s=A.DT(s) +r=n.c +r.toString +switch(s.ro(r).a){case 1:case 3:case 4:case 5:s=m.z +s.toString +r=m.Q +r.toString +o=A.S(o,s,r) +break +case 2:case 0:break}m.fc(o)}}, +IG(){var s,r=this +if(!r.gye()){s=r.w +if(s!=null)s.aQ(0) +r.w=A.d2(r.a.ch,new A.aNn(r))}}, +vD(){var s=this.r.f +if(s.length!==0)return A.bT(B.b.gaI(s).gkT()) +return null}, +Lu(){if(this.vD()==null)return +var s=this.w +if(s!=null)s.aQ(0)}, +Lw(a){var s,r,q,p,o,n,m=this +m.r=m.gw6() +if(m.vD()==null)return +s=m.w +if(s!=null)s.aQ(0) +s=m.x +s===$&&A.b() +s.bS(0) +m.e=m.d=a +s=m.at +s===$&&A.b() +r=s.db +q=r.b +q.toString +p=r.a +p.toString +o=q-p +if(o>0){q=r.c +q.toString +n=A.S(q/o,0,1)}else n=0 +r=r.d +r.toString +q=s.dx +q=q===B.ag||q===B.af +p=s.Q +q=q?p.gcC(p)+p.gcH(p):p.gdD() +p=s.w +s=s.cy +s===$&&A.b() +m.f=n*(r-q-2*p-s) +m.as=!0}, +aJp(a){var s,r=this +if(J.i(r.e,a))return +s=B.b.gaI(r.r.f) +if(!s.r.u0(s))return +if(r.vD()==null)return +r.aDk(a) +r.e=a}, +Lv(a,b){var s=this +s.as=!1 +if(s.vD()==null)return +s.IG() +s.r=s.f=s.e=s.d=null}, +auq(a){var s,r,q,p,o,n=this,m=n.gw6() +n.r=m +s=B.b.gaI(m.f) +if(!s.r.u0(s))return +m=s.w +switch(m.a.c.a){case 0:case 2:r=n.at +r===$&&A.b() +r=r.cx +r===$&&A.b() +q=a.c.b>r?B.ag:B.af +break +case 3:case 1:r=n.at +r===$&&A.b() +r=r.cx +r===$&&A.b() +q=a.c.a>r?B.eP:B.dq +break +default:q=null}m=$.ar.al$.z.i(0,m.Q) +m.toString +p=A.m2(m) +p.toString +o=A.aR9(p,new A.hE(q,B.hX)) +m=B.b.gaI(n.r.f) +r=B.b.gaI(n.r.f).at +r.toString +m.FF(0,r+o,B.du,B.b_)}, +Sd(a){var s,r,q=this.gw6() +if(q==null)return!0 +s=q.f +r=s.length +if(r>1)return!1 +return r===0||A.bT(B.b.gaI(s).gkT())===a}, +atB(a){var s,r,q=this,p=q.a +p.toString +if(!p.qZ(a.a6W()))return!1 +if(q.gye()){p=q.x +p===$&&A.b() +s=p.Q +s===$&&A.b() +if(s!==B.aY&&s!==B.a5)p.bS(0)}r=a.a +p=r.e +if(q.Sd(A.bT(p))){s=q.at +s===$&&A.b() +s.iI(0,r,p)}return!1}, +aAs(a){var s,r,q,p=this +if(!p.a.qZ(a))return!1 +s=a.a +r=s.b +r.toString +q=s.a +q.toString +if(r<=q){r=p.x +r===$&&A.b() +q=r.Q +q===$&&A.b() +if(q!==B.Q&&q!==B.aZ)r.d9(0) +r=s.e +if(p.Sd(A.bT(r))){q=p.at +q===$&&A.b() +q.iI(0,s,r)}return!1}if(a instanceof A.kw||a instanceof A.n0){r=p.x +r===$&&A.b() +q=r.Q +q===$&&A.b() +if(q!==B.aY&&q!==B.a5)r.bS(0) +r=p.w +if(r!=null)r.aQ(0) +r=s.e +if(p.Sd(A.bT(r))){q=p.at +q===$&&A.b() +q.iI(0,s,r)}}else if(a instanceof A.oP)if(p.d==null)p.IG() +return!1}, +gaqL(){var s=this,r=A.F(t.n,t.xR) +if(s.gw6()==null||!s.gwW())return r +r.p(0,B.akI,new A.dy(new A.aNj(s),new A.aNk(s),t.fi)) +r.p(0,B.akJ,new A.dy(new A.aNl(s),new A.aNm(s),t.EK)) +return r}, +aaN(a,b,c){var s,r=this.z +if($.ar.al$.z.i(0,r)==null)return!1 +s=A.bl8(r,a) +r=this.at +r===$&&A.b() +return r.aad(s,b,!0)}, +UZ(a){var s,r=this +if(r.aaN(a.gcQ(a),a.gdS(a),!0)){r.Q=!0 +s=r.x +s===$&&A.b() +s.bS(0) +s=r.w +if(s!=null)s.aQ(0)}else if(r.Q){r.Q=!1 +r.IG()}}, +V_(a){this.Q=!1 +this.IG()}, +a3c(a){var s=A.bT(B.b.gaI(this.r.f).gkT())===B.aw?a.gpc().a:a.gpc().b +return A.aq1(B.b.gaI(this.r.f).w.a.c)?s*-1:s}, +a4W(a){var s,r=B.b.gaI(this.r.f).at +r.toString +s=B.b.gaI(this.r.f).z +s.toString +s=Math.max(r+a,s) +r=B.b.gaI(this.r.f).Q +r.toString +return Math.min(s,r)}, +atj(a){var s,r,q,p=this +p.r=p.gw6() +s=p.a3c(a) +r=p.a4W(s) +if(s!==0){q=B.b.gaI(p.r.f).at +q.toString +q=r!==q}else q=!1 +if(q)B.b.gaI(p.r.f).Wq(s)}, +aAu(a){var s,r,q,p,o=this +o.r=o.gw6() +s=o.at +s===$&&A.b() +s=s.AM(a.geD()) +if(s===!0){s=o.r +if(s!=null)if(s.f.length!==0)s=!0 +else s=!1 +else s=!1}else s=!1 +if(s){r=B.b.gaI(o.r.f) +if(t.Mj.b(a)){if(!r.r.u0(r))return +q=o.a3c(a) +p=o.a4W(q) +if(q!==0){s=r.at +s.toString +s=p!==s}else s=!1 +if(s)$.iX.B$.acg(0,a,o.gati())}else if(t.xb.b(a)){s=r.at +s.toString +r.fc(s)}}}, +m(){var s=this,r=s.x +r===$&&A.b() +r.m() +r=s.w +if(r!=null)r.aQ(0) +r=s.at +r===$&&A.b() +r.r.a.J(0,r.geL()) +r.eH() +s.ajt()}, +A(a){var s,r,q=this,p=null +q.Gu() +s=q.gaqL() +r=q.at +r===$&&A.b() +return new A.dP(q.gatA(),new A.dP(q.gaAr(),new A.i5(A.u3(B.c8,new A.n6(A.mX(A.jv(new A.i5(q.a.c,p),r,q.z,p,B.x),B.cw,p,p,new A.aNo(q),new A.aNp(q)),s,p,!1,p),p,p,p,p,q.gaAt(),p),p),p,t.WA),p,t.ji)}, +$iaN:1} +A.aNn.prototype={ +$0(){var s=this.a,r=s.x +r===$&&A.b() +r.d9(0) +s.w=null}, +$S:0} +A.aNj.prototype={ +$0(){var s=this.a,r=s.a.CW,q=t.S,p=A.dN(q),o=A.bwV() +return new A.pq(s.z,r,null,B.dy,A.F(q,t.SP),p,s,null,o,A.F(q,t.Au))}, +$S:561} +A.aNk.prototype={ +$1(a){var s=this.a +a.p2=s.gaa_() +a.p3=new A.aNg(s) +a.p4=new A.aNh(s) +a.RG=new A.aNi(s)}, +$S:562} +A.aNg.prototype={ +$1(a){return this.a.Lw(a.b)}, +$S:70} +A.aNh.prototype={ +$1(a){return this.a.aJp(a.b)}, +$S:97} +A.aNi.prototype={ +$1(a){return this.a.Lv(a.b,a.c)}, +$S:124} +A.aNl.prototype={ +$0(){var s=this.a,r=t.S,q=A.dN(r) +return new A.pr(s.z,B.b_,18,B.dy,A.F(r,t.SP),q,s,null,A.Hj(),A.F(r,t.Au))}, +$S:564} +A.aNm.prototype={ +$1(a){a.aV=this.a.gaup()}, +$S:565} +A.aNo.prototype={ +$1(a){var s +switch(a.gdS(a).a){case 1:case 4:s=this.a +if(s.gwW())s.V_(a) +break +case 2:case 3:case 5:case 0:break}}, +$S:64} +A.aNp.prototype={ +$1(a){var s +switch(a.gdS(a).a){case 1:case 4:s=this.a +if(s.gwW())s.UZ(a) +break +case 2:case 3:case 5:case 0:break}}, +$S:566} +A.pq.prototype={ +mW(a){if(!this.QR(this.aT,a.gcQ(a),a.gdS(a)))return!1 +return this.ahh(a)}, +QR(a,b,c){var s +if($.ar.al$.z.i(0,a)==null)return!1 +s=t.ip.a($.ar.al$.z.i(0,a).gc7()).f +s.toString +return t.sm.a(s).aae(A.bl8(a,b),c)}} +A.pr.prototype={ +mW(a){if(!this.QR(this.E,a.gcQ(a),a.gdS(a)))return!1 +return this.aiP(a)}, +QR(a,b,c){var s,r +if($.ar.al$.z.i(0,a)==null)return!1 +s=t.ip.a($.ar.al$.z.i(0,a).gc7()).f +s.toString +t.sm.a(s) +r=A.bl8(a,b) +return s.aJH(r,c)&&!s.aae(r,c)}} +A.Gv.prototype={ +cn(){this.d3() +this.cT() +this.es()}, +m(){var s=this,r=s.b_$ +if(r!=null)r.J(0,s.gej()) +s.b_$=null +s.aZ()}} +A.CQ.prototype={ +G(a,b){this.Q.G(0,b) +this.a3T()}, +F(a,b){var s,r,q=this +if(q.Q.F(0,b))return +s=B.b.eX(q.b,b) +B.b.jO(q.b,s) +r=q.c +if(s<=r)q.c=r-1 +r=q.d +if(s<=r)q.d=r-1 +b.J(0,q.gQG()) +q.a3T()}, +a3T(){var s,r +if(!this.y){this.y=!0 +s=new A.aJY(this) +r=$.cF +if(r.RG$===B.Jl)A.h_(s) +else r.p3$.push(s)}}, +aqt(){var s,r,q,p,o,n,m,l,k=this,j=k.Q,i=A.aa(j,!0,A.k(j).c) +B.b.fz(i,k.gPt()) +s=k.b +k.b=A.a([],t.D1) +r=k.d +q=k.c +j=k.gQG() +p=0 +o=0 +while(!0){n=i.length +if(!(pMath.min(n,l))k.L1(m) +m.P(0,j) +B.b.G(k.b,m);++p}}k.c=q +k.d=r +k.Q=A.aY(t.x9)}, +Ub(){this.JI()}, +JI(){var s=this,r=s.aeT() +if(!s.at.l(0,r)){s.at=r +s.ag()}s.aD2()}, +gaFy(){return this.gPt()}, +aoe(a,b){var s=A.j4(a.cs(0,null),new A.I(0,0,0+a.gq(a).a,0+a.gq(a).b)),r=A.j4(b.cs(0,null),new A.I(0,0,0+b.gq(b).a,0+b.gq(b).b)),q=A.bI_(s,r) +if(q!==0)return q +return A.bHZ(s,r)}, +atF(){if(this.x)return +this.JI()}, +aeT(){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d=this,c=null,b=d.c +if(b===-1||d.d===-1||d.b.length===0)return new A.uB(c,c,B.fG,B.nq,d.b.length!==0) +if(!d.as){b=d.ZR(d.d,b) +d.d=b +d.c=d.ZR(d.c,b)}s=J.lB(d.b[d.d]) +b=d.c +r=d.d +q=b>=r +while(!0){if(!(r!==d.c&&s.a==null))break +r+=q?1:-1 +s=J.lB(d.b[r])}b=s.a +if(b!=null){p=d.b[r] +o=d.a.ga9() +o.toString +n=A.cD(p.cs(0,t.x.a(o)),b.a) +m=isFinite(n.a)&&isFinite(n.b)?new A.yJ(n,b.b,b.c):c}else m=c +l=J.lB(d.b[d.c]) +k=d.c +while(!0){if(!(k!==d.d&&l.b==null))break +k+=q?-1:1 +l=J.lB(d.b[k])}b=l.b +if(b!=null){p=d.b[k] +o=d.a.ga9() +o.toString +j=A.cD(p.cs(0,t.x.a(o)),b.a) +i=isFinite(j.a)&&isFinite(j.b)?new A.yJ(j,b.b,b.c):c}else i=c +h=A.a([],t.AO) +g=d.gaJs()?new A.I(0,0,0+d.ga7O().a,0+d.ga7O().b):c +for(f=d.d;f<=d.c;++f){e=J.lB(d.b[f]).d +b=new A.ad(e,new A.aJZ(d,f,g),A.ab(e).h("ad<1,I>")).Cs(0,new A.aK_()) +B.b.I(h,A.aa(b,!0,b.$ti.h("z.E")))}return new A.uB(m,i,!s.l(0,l)?B.oz:s.c,h,!0)}, +ZR(a,b){var s=b>a +while(!0){if(!(a!==b&&J.lB(this.b[a]).c!==B.oz))break +a+=s?1:-1}return a}, +r5(a,b){return}, +aD2(){var s,r=this,q=null,p=r.e,o=r.r,n=r.d +if(n===-1||r.c===-1){n=r.f +if(n!=null){n.r5(q,q) +r.f=null}n=r.w +if(n!=null){n.r5(q,q) +r.w=null}return}if(!J.i(r.b[n],r.f)){n=r.f +if(n!=null)n.r5(q,q)}if(!J.i(r.b[r.c],r.w)){n=r.w +if(n!=null)n.r5(q,q)}n=r.b +s=r.d +n=r.f=n[s] +if(s===r.c){r.w=n +n.r5(p,o) +return}n.r5(p,q) +n=r.b[r.c] +r.w=n +n.r5(q,o)}, +aJc(a){var s,r,q,p=this +for(s=p.b,r=s.length,q=0;q")).af(0,new A.aK1(n)) +n.d=n.c=r}return B.bA}else if(s===B.bZ){n.d=n.c=r-1 +return B.bA}}return B.bA}, +aIp(a){var s,r,q,p=this +for(s=p.b,r=s.length,q=0;q0&&r===B.c_))break;--s +r=p.l_(p.b[s],a)}if(a.gpM())p.c=s +else p.d=s +return r}, +aIr(a){var s,r,q,p=this +if(p.d===-1)switch(a.gt8(a)){case B.kU:case B.i0:p.d=p.c=p.b.length +break +case B.kV:case B.i_:p.d=p.c=0 +break}s=a.gpM()?p.c:p.d +r=p.l_(p.b[s],a) +switch(a.gt8(a)){case B.kU:if(r===B.c_)if(s>0){--s +r=p.l_(p.b[s],a.aFX(B.i0))}break +case B.kV:if(r===B.bZ){q=p.b +if(s=0&&n==null))break +r=o.b=q.l_(s[p],a) +switch(r.a){case 2:case 3:case 4:n=r +break +case 0:if(m===!1){++p +n=B.bA}else if(p===q.b.length-1)n=r +else{++p +m=!0}break +case 1:if(m===!0){--p +n=B.bA}else if(p===0)n=r +else{--p +m=!1}break}}if(b)q.c=p +else q.d=p +n.toString +return n}, +aFz(a,b){return this.gaFy().$2(a,b)}} +A.aJY.prototype={ +$1(a){var s=this.a +if(!s.y)return +s.y=!1 +if(s.Q.a!==0)s.aqt() +s.Ub()}, +$0(){return this.$1(null)}, +$C:"$1", +$R:0, +$D(){return[null]}, +$S:196} +A.aJZ.prototype={ +$1(a){var s,r=this.a,q=r.b[this.b] +r=r.a.ga9() +r.toString +s=A.j4(q.cs(0,t.x.a(r)),a) +r=this.c +if(r!=null)return r.he(s) +return s}, +$S:568} +A.aK_.prototype={ +$1(a){return a.gFk(a)&&!a.gai(a)}, +$S:569} +A.aK0.prototype={ +$1(a){return a!==this.a.b[this.b]}, +$S:570} +A.aK1.prototype={ +$1(a){return this.a.l_(a,B.P6)}, +$S:96} +A.ain.prototype={} +A.DY.prototype={ +a8(){return new A.alf(A.aY(t.Q),null,!1,B.m)}} +A.alf.prototype={ +aR(){var s,r,q,p=this +p.b5() +s=p.a +r=s.e +if(r!=null){q=p.c +q.toString +r.a=q +s=s.c +if(s!=null)p.sxG(s)}}, +aY(a){var s,r,q,p,o,n=this +n.br(a) +s=a.e +if(s!=n.a.e){r=s==null +if(!r){s.a=null +n.d.af(0,s.gacn(s))}q=n.a.e +if(q!=null){p=n.c +p.toString +q.a=p +n.d.af(0,q.gDV(q))}s=r?null:s.at +r=n.a.e +if(!J.i(s,r==null?null:r.at))for(s=n.d,s=A.aa(s,!1,A.k(s).c),r=s.length,o=0;op.gq(p).a)){s=p.E$ +s=r+s.gq(s).b>p.gq(p).b}else s=!0}else s=!0}else s=!0 +return s}}, +aD(a,b){var s,r,q,p,o,n=this +if(n.E$!=null){s=n.Z.at +s.toString +r=n.Dm(s) +s=new A.b9f(n,r) +q=n.av +if(n.a4q(r)){p=n.cx +p===$&&A.b() +o=n.gq(n) +q.sb3(0,a.tE(p,b,new A.I(0,0,0+o.a,0+o.b),s,n.Y,q.a))}else{q.sb3(0,null) +s.$2(a,b)}}}, +m(){this.av.sb3(0,null) +this.jr()}, +eI(a,b){var s,r=this.Z.at +r.toString +s=this.Dm(r) +b.bj(0,s.a,s.b)}, +t6(a){var s=this,r=s.Z.at +r.toString +r=s.a4q(s.Dm(r)) +if(r){r=s.gq(s) +return new A.I(0,0,0+r.a,0+r.b)}return null}, +dY(a,b){var s,r=this +if(r.E$!=null){s=r.Z.at +s.toString +return a.oz(new A.b9e(r,b),r.Dm(s),b)}return!1}, +vB(a,b,c){var s,r,q,p,o,n,m,l=this +if(c==null)c=a.gr0() +if(!(a instanceof A.N)){s=l.Z.at +s.toString +return new A.oN(s,c)}r=A.j4(a.cs(0,l.E$),c) +s=l.E$ +q=s.gq(s) +switch(l.B.a){case 0:p=l.gq(l).b +s=r.d +o=q.b-s +n=s-r.b +break +case 1:p=l.gq(l).a +o=r.a +n=r.c-o +break +case 2:p=l.gq(l).b +o=r.b +n=r.d-o +break +case 3:p=l.gq(l).a +s=r.c +o=q.a-s +n=s-r.a +break +default:o=null +n=null +p=null}m=o-(p-n)*b +return new A.oN(m,r.dw(l.Dm(m)))}, +i2(a,b,c,d){var s=this +if(!s.Z.r.grU())return s.Hp(a,b,c,d) +s.Hp(a,null,c,A.brH(a,b,c,s.Z,d,s))}, +Cn(){return this.i2(B.aL,null,B.F,null)}, +vN(a){return this.i2(B.aL,null,B.F,a)}, +yd(a,b,c){return this.i2(a,null,b,c)}, +vO(a,b){return this.i2(B.aL,a,B.F,b)}, +KQ(a){var s,r,q=this,p=q.ga2s(),o=q.Z.at +o.toString +s=p-o +switch(q.B.a){case 0:q.gq(q) +q.gq(q) +p=q.gq(q) +o=q.gq(q) +r=q.Z.at +r.toString +return new A.I(0,0-s,0+p.a,0+o.b+r) +case 1:q.gq(q) +p=q.Z.at +p.toString +q.gq(q) +return new A.I(0-p,0,0+q.gq(q).a+s,0+q.gq(q).b) +case 2:q.gq(q) +q.gq(q) +p=q.Z.at +p.toString +return new A.I(0,0-p,0+q.gq(q).a,0+q.gq(q).b+s) +case 3:q.gq(q) +q.gq(q) +p=q.gq(q) +o=q.Z.at +o.toString +return new A.I(0-s,0,0+p.a+o,0+q.gq(q).b)}}, +$iDB:1} +A.b9f.prototype={ +$2(a,b){var s=this.a.E$ +s.toString +a.eg(s,b.T(0,this.b))}, +$S:15} +A.b9e.prototype={ +$2(a,b){return this.a.E$.dc(a,b)}, +$S:16} +A.Vt.prototype={ +aA(a){var s +this.eR(a) +s=this.E$ +if(s!=null)s.aA(a)}, +ap(a){var s +this.eS(0) +s=this.E$ +if(s!=null)s.ap(0)}} +A.apf.prototype={} +A.apg.prototype={} +A.a8S.prototype={} +A.kz.prototype={ +bJ(a){return A.bs8(this,!1)}, +Uy(a,b,c,d,e){return null}} +A.m6.prototype={ +bJ(a){return A.bs8(this,!0)}, +aX(a){var s=new A.a7y(t.Gt.a(a),A.F(t.S,t.x),0,null,null,A.aB(t.T)) +s.aW() +return s}} +A.a8P.prototype={ +aX(a){var s=new A.a7v(this.f,t.Gt.a(a),A.F(t.S,t.x),0,null,null,A.aB(t.T)) +s.aW() +return s}, +b4(a,b){b.sLS(this.f)}} +A.Ee.prototype={ +aX(a){var s=new A.a7w(this.f,t.Gt.a(a),A.F(t.S,t.x),0,null,null,A.aB(t.T)) +s.aW() +return s}, +b4(a,b){b.saf1(this.f)}, +Uy(a,b,c,d,e){var s,r +this.aiE(a,b,c,d,e) +s=this.f.Xy(a) +r=this.d.gAm() +r.toString +r=s.a7J(r) +return r}} +A.Eh.prototype={ +ga9(){return t.Ss.a(A.c0.prototype.ga9.call(this))}, +c_(a,b){var s,r,q=this.f +q.toString +t.M0.a(q) +this.rE(0,b) +s=b.d +r=q.d +if(s!==r)q=A.o(s)!==A.o(r)||s.Ym(r) +else q=!1 +if(q)this.pS()}, +pS(){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.Ou() +a.p3=null +a1.a=!1 +try{i=t.S +s=A.bjP(i,t.Dv) +r=A.cx(a0,a0,a0,i,t.i) +i=a.f +i.toString +q=t.M0.a(i) +p=new A.aTJ(a1,a,s,q,r) +for(i=a.p2,h=i.$ti,h=h.h("@<1>").S(h.h("jh<1,2>")).h("rq<1,2>"),h=A.aa(new A.rq(i,h),!0,h.h("z.E")),g=h.length,f=t.MR,e=a.p1,d=0;d").S(g.h("jh<1,2>")).h("rq<1,2>")).af(0,p) +if(!a1.a&&a.R8){b=i.ab1() +k=b==null?-1:b +j=k+1 +J.ie(s,j,i.i(0,j)) +p.$1(j)}}finally{a.p4=null +a.ga9()}}, +aGx(a,b){this.r.E9(this,new A.aTG(this,b,a))}, +fM(a,b,c){var s,r,q,p,o=null +if(a==null)s=o +else{s=a.ga9() +s=s==null?o:s.b}r=t.MR +r.a(s) +q=this.agT(a,b,c) +if(q==null)p=o +else{p=q.ga9() +p=p==null?o:p.b}r.a(p) +if(s!=p&&s!=null&&p!=null)p.a=s.a +return q}, +oN(a){this.p2.F(0,a.d) +this.qa(a)}, +acl(a){var s,r=this +r.ga9() +s=a.b +s.toString +s=t.V.a(s).b +s.toString +r.r.E9(r,new A.aTK(r,s))}, +Uz(a,b,c,d,e){var s,r,q=this.f +q.toString +s=t.M0 +r=s.a(q).d.gAm() +if(r==null)return 1/0 +q=this.f +q.toString +s.a(q) +d.toString +q=q.Uy(a,b,c,d,e) +return q==null?A.bKa(b,c,d,e,r):q}, +gEb(){var s,r,q,p,o,n,m=this,l=m.f +l.toString +s=t.M0 +r=s.a(l).d.gAm() +if(r==null){l=m.f +l.toString +for(l=s.a(l).d,q=0,p=1;o=p-1,l.aJ(m,o)!=null;q=o)if(p<4503599627370496)p*=2 +else{if(p>=9007199254740992)throw A.c(A.ty("Could not find the number of children in "+l.j(0)+".\nThe childCount getter was called (implying that the delegate's builder returned null for a positive index), but even building the child with index "+p+" (the maximum possible integer) did not return null. Consider implementing childCount to avoid the cost of searching for the final child.")) +p=9007199254740992}for(;s=p-q,s>1;){n=B.f.cY(s,2)+q +if(l.aJ(m,n-1)==null)p=n +else q=n}r=q}return r}, +wO(){var s=this.p2 +s.aI0() +s.ab1() +s=this.f +s.toString +t.M0.a(s)}, +U9(a){var s=a.b +s.toString +t.V.a(s).b=this.p4}, +oT(a,b){this.ga9().Oe(0,t.x.a(a),this.p3)}, +oV(a,b,c){this.ga9().FE(t.x.a(a),this.p3)}, +q1(a,b){this.ga9().F(0,t.x.a(a))}, +ck(a){var s=this.p2,r=s.$ti +r=r.h("@<1>").S(r.z[1]).h("zU<1,2>") +r=A.dx(new A.zU(s,r),r.h("z.E"),t.F) +B.b.af(A.aa(r,!0,A.k(r).h("z.E")),a)}} +A.aTJ.prototype={ +$1(a){var s,r,q,p,o=this,n=o.b +n.p4=a +q=n.p2 +if(q.i(0,a)!=null&&!J.i(q.i(0,a),o.c.i(0,a))){q.p(0,a,n.fM(q.i(0,a),null,a)) +o.a.a=!0}s=n.fM(o.c.i(0,a),o.d.d.aJ(n,a),a) +if(s!=null){p=o.a +p.a=p.a||!J.i(q.i(0,a),s) +q.p(0,a,s) +q=s.ga9().b +q.toString +r=t.V.a(q) +if(a===0)r.a=0 +else{q=o.e +if(q.ao(0,a))r.a=q.i(0,a)}if(!r.c)n.p3=t.aA.a(s.ga9())}else{o.a.a=!0 +q.F(0,a)}}, +$S:38} +A.aTH.prototype={ +$0(){return null}, +$S:5} +A.aTI.prototype={ +$0(){return this.a.p2.i(0,this.b)}, +$S:576} +A.aTG.prototype={ +$0(){var s,r,q,p=this,o=p.a +o.p3=p.b==null?null:t.aA.a(o.p2.i(0,p.c-1).ga9()) +s=null +try{q=o.f +q.toString +r=t.M0.a(q) +q=o.p4=p.c +s=o.fM(o.p2.i(0,q),r.d.aJ(o,q),q)}finally{o.p4=null}q=p.c +o=o.p2 +if(s!=null)o.p(0,q,s) +else o.F(0,q)}, +$S:0} +A.aTK.prototype={ +$0(){var s,r,q,p=this +try{r=p.a +q=r.p4=p.b +s=r.fM(r.p2.i(0,q),null,q)}finally{p.a.p4=null}p.a.p2.F(0,p.b)}, +$S:0} +A.KE.prototype={ +zm(a){var s,r,q=a.b +q.toString +t.Cl.a(q) +s=this.f +if(q.Av$!==s){q.Av$=s +r=a.gbP(a) +if(r instanceof A.H&&!s)r.a6()}}} +A.a8O.prototype={ +A(a){var s=this.c,r=A.S(1-s,0,1) +return new A.alL(r/2,new A.alK(s,this.e,null),null)}} +A.alK.prototype={ +aX(a){var s=new A.a7t(this.f,t.Gt.a(a),A.F(t.S,t.x),0,null,null,A.aB(t.T)) +s.aW() +return s}, +b4(a,b){b.sGA(this.f)}} +A.alL.prototype={ +aX(a){var s=new A.akw(this.e,null,A.aB(t.T)) +s.aW() +return s}, +b4(a,b){b.sGA(this.e)}} +A.akw.prototype={ +sGA(a){var s=this +if(s.cS===a)return +s.cS=a +s.ep=null +s.a6()}, +gfq(){return this.ep}, +aBg(){var s,r,q=this +if(q.ep!=null&&J.i(q.dG,t.r.a(A.H.prototype.ga4.call(q))))return +s=t.r +r=s.a(A.H.prototype.ga4.call(q)).y*q.cS +q.dG=s.a(A.H.prototype.ga4.call(q)) +switch(A.bT(s.a(A.H.prototype.ga4.call(q)).a).a){case 0:q.ep=new A.aK(r,0,r,0) +break +case 1:q.ep=new A.aK(0,r,0,r) +break}return}, +cj(){this.aBg() +this.Zi()}} +A.a8N.prototype={ +A(a){return new A.alJ(this.c,null)}} +A.alJ.prototype={ +aX(a){var s=new A.a7s(null,A.aB(t.T)) +s.aW() +s.sbN(null) +return s}} +A.NP.prototype={} +A.iz.prototype={ +bJ(a){var s=A.k(this),r=t.F +return new A.NQ(A.F(s.h("iz.0"),r),A.F(t.D2,r),this,B.al,s.h("@").S(s.h("iz.1")).h("NQ<1,2>"))}} +A.m7.prototype={ +ghK(a){var s=this.d1$ +return s.gbw(s)}, +jf(){J.f9(this.ghK(this),this.gWI())}, +ck(a){J.f9(this.ghK(this),a)}, +Jc(a,b){var s=this.d1$,r=s.i(0,b) +if(r!=null){this.uP(r) +s.F(0,b)}if(a!=null){s.p(0,b,a) +this.m6(a)}}} +A.NQ.prototype={ +ga9(){return this.$ti.h("m7<1,2>").a(A.c0.prototype.ga9.call(this))}, +ck(a){var s=this.p1 +s.gbw(s).af(0,a)}, +oN(a){this.p1.F(0,a.d) +this.qa(a)}, +hU(a,b){this.vU(a,b) +this.a5C()}, +c_(a,b){this.rE(0,b) +this.a5C()}, +a5C(){var s,r,q,p,o,n,m,l,k,j,i,h,g,f=this,e=f.f +e.toString +s=f.$ti +s.h("iz<1,2>").a(e) +r=f.p2 +q=t.F +f.p2=A.F(t.D2,q) +p=f.p1 +s=s.c +f.p1=A.F(s,q) +for(q=e.gO3(),o=q.length,n=0;n").a(A.c0.prototype.ga9.call(this)).Jc(a,b)}, +q1(a,b){var s=this.$ti.h("m7<1,2>") +if(s.a(A.c0.prototype.ga9.call(this)).d1$.i(0,b)===a)s.a(A.c0.prototype.ga9.call(this)).Jc(null,b)}, +oV(a,b,c){var s=this.$ti.h("m7<1,2>").a(A.c0.prototype.ga9.call(this)) +if(s.d1$.i(0,b)===a)s.Jc(null,b) +s.Jc(a,c)}} +A.Tq.prototype={ +b4(a,b){return this.Zg(a,b)}} +A.a8X.prototype={ +K(){return"SnapshotMode."+this.b}} +A.NT.prototype={ +sK7(a){return}} +A.a8Z.prototype={ +aX(a){var s=new A.GA(A.aS(a,B.d7,t.l).w.b,this.w,this.e,this.f,!0,null,A.aB(t.T)) +s.aW() +s.sbN(null) +return s}, +b4(a,b){t.xL.a(b) +b.sqA(0,this.e) +b.saLv(0,this.f) +b.sA_(0,A.aS(a,B.d7,t.l).w.b) +b.sxy(this.w) +b.saEz(!0)}} +A.GA.prototype={ +sA_(a,b){var s,r=this +if(b===r.C)return +r.C=b +s=r.fa +if(s==null)return +else{s.m() +r.fa=null +r.aU()}}, +sxy(a){var s,r=this,q=r.a0 +if(a===q)return +s=r.geE() +q.J(0,s) +r.a0=a +if(A.o(q)!==A.o(r.a0)||r.a0.fw(q))r.aU() +if(r.y!=null)r.a0.P(0,s)}, +sqA(a,b){var s,r=this,q=r.aw +if(b===q)return +s=r.gIN() +q.J(0,s) +r.aw=b +if(r.y!=null)b.P(0,s)}, +saLv(a,b){if(b===this.cu)return +this.cu=b +this.aU()}, +saEz(a){return}, +aA(a){var s=this +s.aw.P(0,s.gIN()) +s.a0.P(0,s.geE()) +s.ys(a)}, +ap(a){var s,r=this +r.fH=!1 +r.aw.J(0,r.gIN()) +r.a0.J(0,r.geE()) +s=r.fa +if(s!=null)s.m() +r.hQ=r.fa=null +r.u5(0)}, +m(){var s,r=this +r.aw.J(0,r.gIN()) +r.a0.J(0,r.geE()) +s=r.fa +if(s!=null)s.m() +r.hQ=r.fa=null +r.jr()}, +axl(){var s,r=this +r.fH=!1 +s=r.fa +if(s!=null)s.m() +r.hQ=r.fa=null +r.aU()}, +aD(a,b){var s=this,r=s.gq(s) +if(r.gai(r)){r=s.fa +if(r!=null)r.m() +s.hQ=s.fa=null +return}r=s.fa +if(r!=null)r.m() +s.hQ=s.fa=null +s.a0.Mw(a,b,s.gq(s),A.iw.prototype.giE.call(s)) +return}} +A.a8Y.prototype={} +A.Qw.prototype={ +P(a,b){}, +m(){}, +J(a,b){}, +$iau:1} +A.a9r.prototype={ +A(a){return A.dD(B.a_,1)}} +A.O2.prototype={ +aGv(a,b,c,d){var s=this +if(!s.e)return B.ia +return new A.O2(c,s.b,s.c,s.d,!0)}, +aG4(a){return this.aGv(null,null,a,null)}, +j(a){var s=this +return B.c.dI(" spell check enabled : "+s.e+"\n spell check service : "+A.h(s.a)+"\n misspelled text style : "+A.h(s.c)+"\n spell check suggestions toolbar builder: "+A.h(s.d)+"\n")}, +l(a,b){var s +if(b==null)return!1 +if(this===b)return!0 +if(b instanceof A.O2)if(b.a==this.a)s=b.e===this.e +else s=!1 +else s=!1 +return s}, +gv(a){var s=this +return A.X(s.a,s.c,s.d,s.e,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}} +A.O9.prototype={ +a8(){return new A.Tz(B.m)}} +A.Tz.prototype={ +aR(){this.b5() +this.a.c.f4(this.gOW())}, +aY(a){var s,r,q=this +q.br(a) +s=a.c +if(q.a.c!==s){r=q.gOW() +s.e8(r) +q.a.c.f4(r)}}, +m(){this.a.c.e8(this.gOW()) +this.aZ()}, +amp(a){this.a7(new A.baU())}, +A(a){var s=this.a +return s.rZ(a,s.f)}} +A.baU.prototype={ +$0(){}, +$S:0} +A.QB.prototype={ +K(){return"_DragState."+this.b}} +A.Op.prototype={} +A.Os.prototype={} +A.Or.prototype={} +A.Ot.prototype={} +A.Oq.prototype={} +A.TO.prototype={ +gFn(){var s=this.Le$ +return s==null?A.aY(t.bd):s}, +kb(a){var s,r,q=this +if(t.n2.b(a)){s=A.vC(a.gdS(a),q.b) +r=q.Lf$ +if(a.gcQ(a).a2(0,r.b).ge3()>s){q.HQ() +q.EX$=q.EW$=null}}else if(t.oN.b(a)){q.Ax$=a +if(q.tf$!=null){q.HQ() +if(q.x8$==null)q.x8$=A.d2(B.bt,q.gaot())}}else if(t.Ko.b(a))q.Js()}, +jh(a){this.Js()}, +auA(a){var s=this.EW$ +s.toString +if(a===s)return!0 +else return!1}, +avj(a){var s=this.EX$ +if(s==null)return!1 +return a.a2(0,s).ge3()<=100}, +HQ(){var s=this.x8$ +if(s!=null){s.aQ(0) +this.x8$=null}}, +aou(){}, +Js(){var s=this +s.HQ() +s.EX$=s.Lf$=s.EW$=null +s.qL$=0 +s.Ax$=s.tf$=s.Le$=null}} +A.I0.prototype={ +as8(){var s=this +if(s.cy!=null)s.e1("onDragUpdate",new A.at5(s)) +s.p2=s.p3=null}, +mW(a){var s=this +if(s.fy==null)switch(a.gfV(a)){case 1:if(s.ch==null&&s.cx==null&&s.cy==null&&s.db==null&&s.CW==null&&s.dx==null)return!1 +break +default:return!1}else if(a.gcz()!==s.fy)return!1 +return s.ym(a)}, +kN(a){var s,r=this +if(r.k1===B.ir){r.aj1(a) +r.fy=a.gcz() +r.ok=r.k4=0 +r.k1=B.pt +s=a.gcQ(a) +r.k3=new A.j6(a.geD(),s) +r.go=A.d2(B.b_,new A.at6(r,a))}}, +AG(a){if(a.gfV(a)!==1)if(!this.fx)this.Z_(a)}, +kM(a){var s,r=this +if(a!==r.fy)return +r.Jn() +r.p4.G(0,a) +s=r.tf$ +if(s!=null)r.a_t(s) +r.fx=!0 +s=r.k2 +if(s!=null)r.OK(s) +s=r.Ax$ +if(s!=null)r.a_u(s)}, +A2(a){var s,r=this +switch(r.k1.a){case 0:r.a4S() +r.L(B.aM) +break +case 1:if(r.dy)if(r.fx){if(r.tf$!=null){if(!r.p4.F(0,a))r.MU(a,B.aM) +r.k1=B.lk +s=r.tf$ +s.toString +r.OK(s) +r.a_l()}}else{r.a4S() +r.L(B.aM)}else{s=r.Ax$ +if(s!=null)r.a_u(s)}break +case 2:r.a_l() +break}r.Jn() +r.k1=B.ir +r.dy=!1}, +kb(a){var s,r,q,p,o,n,m=this +if(a.gcz()!==m.fy)return +m.akb(a) +if(t.n2.b(a)){s=A.vC(a.gdS(a),m.b) +if(!m.dy){r=m.k3 +r===$&&A.b() +r=a.gcQ(a).a2(0,r.b).ge3()>s}else r=!0 +m.dy=r +r=m.k1 +if(r===B.lk)m.a_n(a) +else if(r===B.pt){if(m.k2==null){if(a.gda(a)==null)q=null +else{r=a.gda(a) +r.toString +q=A.xL(r)}p=m.a4T(a.gqU()) +r=m.k4 +r===$&&A.b() +o=A.y2(q,null,p,a.geD()).ge3() +n=m.a4U(p) +m.k4=r+o*J.kN(n==null?1:n) +r=m.ok +r===$&&A.b() +m.ok=r+A.y2(q,null,a.gqU(),a.geD()).ge3()*B.f.gO2(1) +if(!m.a4V(a.gdS(a)))r=m.fx&&Math.abs(m.ok)>A.beK(a.gdS(a),m.b) +else r=!0 +if(r){m.k2=a +m.k1=B.lk +if(!m.fx)m.L(B.cz)}}r=m.k2 +if(r!=null)m.OK(r)}}else if(t.oN.b(a)){r=m.k1 +if(r===B.pt)m.He(a) +else if(r===B.lk)m.Sj(a.gcz())}else if(t.Ko.b(a)){m.k1=B.ir +m.Sj(a.gcz())}}, +jh(a){var s=this +if(a!==s.fy)return +s.akc(a) +s.Jn() +s.Sj(a) +s.J0() +s.J_()}, +m(){this.Jn() +this.J_() +this.aj2()}, +OK(a){var s,r,q,p,o,n=this +if(!n.fx)return +if(n.at===B.C){s=n.k3 +s===$&&A.b() +r=a.gzX() +n.k3=s.T(0,new A.j6(a.gqU(),r))}n.anF(a) +if(!a.gqU().l(0,B.i)){if(a.gda(a)!=null){s=a.gda(a) +s.toString +q=A.xL(s)}else q=null +s=n.k3 +s===$&&A.b() +p=s.a.T(0,a.gqU()) +o=A.y2(q,null,a.gqU(),p) +s=a.gqU() +n.p1=n.k3.T(0,new A.j6(s,o)) +n.a_n(a) +n.p1=null}}, +a_t(a){var s,r,q,p,o,n=this +if(n.fr)return +s=a.gcQ(a) +r=a.geD() +q=n.e.i(0,a.gcz()) +q.toString +p=n.qL$ +o=n.gFn() +if(n.ch!=null)n.e1("onTapDown",new A.at3(n,new A.Op(s,r,q,p,o))) +n.fr=!0}, +a_u(a){var s,r,q,p,o,n=this +if(!n.fx)return +s=a.gdS(a) +r=a.gcQ(a) +q=a.geD() +p=n.qL$ +o=n.gFn() +if(n.CW!=null)n.e1("onTapUp",new A.at4(n,new A.Os(r,q,s,p,o))) +n.J0() +if(!n.p4.F(0,a.gcz()))n.MU(a.gcz(),B.aM)}, +anF(a){var s,r,q,p=this +if(p.cx!=null){s=a.gjR(a) +r=p.k3 +r===$&&A.b() +q=p.e.i(0,a.gcz()) +q.toString +p.e1("onDragStart",new A.at1(p,new A.Or(s,r.b,r.a,q,p.qL$,p.gFn())))}p.k2=null}, +a_n(a){var s,r,q,p,o,n,m,l=this,k=l.p1,j=k!=null?k.b:a.gcQ(a) +k=l.p1 +s=k!=null?k.a:a.geD() +k=a.gjR(a) +r=a.gqU() +q=l.e.i(0,a.gcz()) +q.toString +p=l.k3 +p===$&&A.b() +p=j.a2(0,p.b) +o=s.a2(0,l.k3.a) +n=l.qL$ +m=l.gFn() +if(l.cy!=null)l.e1("onDragUpdate",new A.at2(l,new A.Ot(k,r,j,s,q,p,o,n,m)))}, +a_l(){var s,r=this,q=r.p3 +if(q!=null){q.aQ(0) +r.as8()}q=r.qL$ +s=r.gFn() +if(r.db!=null)r.e1("onDragEnd",new A.at0(r,new A.Oq(0,q,s))) +r.J0() +r.J_()}, +a4S(){var s,r=this +if(!r.fr)return +s=r.dx +if(s!=null)r.e1("onCancel",s) +r.J_() +r.J0()}, +Sj(a){this.oi(a) +if(!this.p4.F(0,a))this.MU(a,B.aM)}, +J0(){this.fx=this.fr=!1 +this.fy=null}, +J_(){return}, +Jn(){var s=this.go +if(s!=null){s.aQ(0) +this.go=null}}} +A.at5.prototype={ +$0(){var s=this.a,r=s.cy +r.toString +s=s.p2 +s.toString +return r.$1(s)}, +$S:0} +A.at6.prototype={ +$0(){var s=this.a,r=s.tf$ +if(r!=null){s.a_t(r) +if(s.qL$>1)s.L(B.cz)}return null}, +$S:0} +A.at3.prototype={ +$0(){return this.a.ch.$1(this.b)}, +$S:0} +A.at4.prototype={ +$0(){return this.a.CW.$1(this.b)}, +$S:0} +A.at1.prototype={ +$0(){return this.a.cx.$1(this.b)}, +$S:0} +A.at2.prototype={ +$0(){return this.a.cy.$1(this.b)}, +$S:0} +A.at0.prototype={ +$0(){return this.a.db.$1(this.b)}, +$S:0} +A.oY.prototype={ +a4V(a){var s=this.k4 +s===$&&A.b() +return Math.abs(s)>A.vC(a,this.b)}, +a4T(a){return new A.l(a.a,0)}, +a4U(a){return a.a}} +A.oZ.prototype={ +a4V(a){var s=this.k4 +s===$&&A.b() +return Math.abs(s)>A.beK(a,this.b)}, +a4T(a){return a}, +a4U(a){return null}} +A.PN.prototype={ +kN(a){var s,r=this +r.Ct(a) +s=r.x8$ +if(s!=null&&s.b==null)r.Js() +r.Ax$=null +if(r.tf$!=null)s=!(r.x8$!=null&&r.avj(a.gcQ(a))&&r.auA(a.gfV(a))) +else s=!1 +if(s)r.qL$=1 +else ++r.qL$ +r.HQ() +r.tf$=a +s=$.ix.dl$ +s===$&&A.b() +s=s.a +s=s.gbw(s) +r.Le$=A.i2(s,A.k(s).h("z.E")) +r.EW$=a.gfV(a) +r.EX$=a.gcQ(a) +r.Lf$=new A.j6(a.geD(),a.gcQ(a))}, +m(){this.Js() +this.pi()}} +A.amx.prototype={} +A.amy.prototype={} +A.amz.prototype={} +A.amA.prototype={} +A.amB.prototype={} +A.a9V.prototype={ +aX(a){var s=new A.N1(new A.BD(new WeakMap(),null,t.ii),A.aY(t.Cn),A.F(t.X,t.hh),B.c8,null,A.aB(t.T)) +s.aW() +s.sbN(null) +return s}, +b4(a,b){}} +A.N1.prototype={ +Ng(a){var s +this.fZ.F(0,a) +s=this.dA +s.i(0,a.e5).F(0,a) +if(s.i(0,a.e5).a===0)s.F(0,a.e5)}, +dc(a,b){var s,r,q=this +if(!q.gq(q).n(0,b))return!1 +s=q.dY(a,b)||q.C===B.bv +if(s){r=new A.w4(b,q) +q.ee.p(0,r,a) +a.G(0,r)}return s}, +oQ(a,b){var s,r,q,p,o,n,m,l,k=this +if(!t.pY.b(a)||a.gfV(a)!==1)return +s=k.fZ +if(s.a===0)return +A.pZ(b) +r=k.ee.a.get(b) +if(r==null)return +q=k.ari(s,r.a) +p=t.Cn +o=A.aSz(q,q.gRp(),A.k(q).c,p).ao8() +n=A.aY(p) +for(q=o.gaj(o),p=k.dA;q.u();){m=q.gH(q) +m=p.i(0,m.e5) +m.toString +n.I(0,m)}l=s.wR(n) +for(s=l.gaj(l);s.u();){q=s.gH(s).fZ +if(q!=null)q.$1(a)}for(s=A.ee(n,n.r,n.$ti.c),q=s.$ti.c;s.u();){p=s.d +if(p==null)q.a(p)}}, +ari(a,b){var s,r,q,p,o=A.aY(t.zE) +for(s=b.length,r=this.fZ,q=0;q")),s.h("anD<1>")),B.m,s.h("F0<1>"))}} +A.F0.prototype={ +gaCb(){var s=this.e +s===$&&A.b() +return s}, +gDI(){var s=this.a.r,r=this.x +if(r==null){s=$.b5() +s=new A.P0(new A.im(s),new A.im(s),B.akW,s) +this.x=s}else s=r +return s}, +Gq(){var s,r,q,p=this,o=p.d +if(o.gjC()==null)return +s=p.f +r=s==null +q=r?null:s.b!=null +if(q===!0){if(!r)s.aQ(0) +p.Su(0,o.gjC())}else p.Su(0,o.Gq()) +p.JJ()}, +G5(){this.Su(0,this.d.G5()) +this.JJ()}, +JJ(){var s=this.gDI(),r=this.d,q=r.a,p=q.length!==0&&r.b>0 +s.sk(0,new A.F1(p,r.ga7p())) +if(A.cb()!==B.bo)return +s=$.bmm() +if(s.b===this){q=q.length!==0&&r.b>0 +r=r.ga7p() +s=s.a +s===$&&A.b() +s.e6("UndoManager.setUndoState",A.ap(["canUndo",q,"canRedo",r],t.N,t.y),t.H)}}, +aCN(a){this.Gq()}, +az6(a){this.G5()}, +Su(a,b){var s=this +if(b==null)return +if(J.i(b,s.w))return +s.w=b +s.r=!0 +try{s.a.e.$1(b)}finally{s.r=!1}}, +a3g(){var s,r=this +if(J.i(r.a.c.a,r.w))return +if(r.r)return +s=r.a +s=s.d.$2(r.w,s.c.a) +if(!(s==null?!0:s))return +s=r.a.c.a +r.w=s +r.f=r.aCc(s)}, +a1B(){if(!this.a.f.gdt())return +$.bmm().b=this +this.JJ()}, +aIX(a){switch(a.a){case 0:this.Gq() +break +case 1:this.G5() +break}}, +aR(){var s,r=this +r.b5() +s=A.bQf(B.bu,new A.aZ0(r),r.$ti.c) +r.e!==$&&A.cl() +r.e=s +r.a3g() +r.a.c.P(0,r.gRI()) +r.a1B() +r.a.f.P(0,r.gQC()) +r.gDI().w.P(0,r.gadg()) +r.gDI().x.P(0,r.gacf())}, +aY(a){var s,r,q=this +q.br(a) +s=a.c +if(q.a.c!==s){r=q.d +B.b.ab(r.a) +r.b=-1 +r=q.gRI() +s.J(0,r) +q.a.c.P(0,r)}s=a.f +if(q.a.f!==s){r=q.gQC() +s.J(0,r) +q.a.f.P(0,r)}q.a.toString}, +m(){var s,r=this +r.a.c.J(0,r.gRI()) +r.a.f.J(0,r.gQC()) +r.gDI().w.J(0,r.gadg()) +r.gDI().x.J(0,r.gacf()) +s=r.x +if(s!=null)s.m() +s=r.f +if(s!=null)s.aQ(0) +r.aZ()}, +A(a){var s=t.h,r=t.d +return A.pC(A.ap([B.akC,new A.cq(this.gaCM(),new A.bb(A.a([],s),r),t._n).fC(a),B.ako,new A.cq(this.gaz5(),new A.bb(A.a([],s),r),t.fN).fC(a)],t.n,t.od),this.a.w)}, +aCc(a){return this.gaCb().$1(a)}} +A.aZ0.prototype={ +$1(a){var s=this.a +s.d.xF(a) +s.JJ()}, +$S(){return this.a.$ti.h("~(1)")}} +A.F1.prototype={ +j(a){return"UndoHistoryValue(canUndo: "+this.a+", canRedo: "+this.b+")"}, +l(a,b){if(b==null)return!1 +if(this===b)return!0 +return b instanceof A.F1&&b.a===this.a&&b.b===this.b}, +gv(a){var s=this.a?519018:218159 +return A.X(s,this.b?519018:218159,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}} +A.P0.prototype={ +m(){var s=this.w,r=$.b5() +s.ah$=r +s.ak$=0 +s=this.x +s.ah$=r +s.ak$=0 +this.eH()}} +A.anD.prototype={ +gjC(){var s=this.a +return s.length===0?null:s[this.b]}, +ga7p(){var s=this.a.length +return s!==0&&this.b"))}} +A.H5.prototype={ +aR(){var s,r=this +r.b5() +s=r.a.c +r.d=s.a +s.P(0,r.gSK())}, +aY(a){var s,r,q=this +q.br(a) +s=a.c +if(s!==q.a.c){r=q.gSK() +s.J(0,r) +s=q.a.c +q.d=s.a +s.P(0,r)}}, +m(){this.a.c.J(0,this.gSK()) +this.aZ()}, +aDE(){this.a7(new A.bcA(this))}, +A(a){var s,r=this.a +r.toString +s=this.d +s===$&&A.b() +return r.d.$3(a,s,null)}} +A.bcA.prototype={ +$0(){var s=this.a +s.d=s.a.c.a}, +$S:0} +A.aaT.prototype={ +A(a){var s=this.c +return new A.Up(s,new A.RT(s,this.d,null),null)}} +A.Up.prototype={ +dr(a){return this.f!==a.f}} +A.r4.prototype={ +aX(a){var s=this,r=s.e,q=A.aaY(a,r) +return A.bJn(s.giY(),r,s.y,s.z,null,null,s.Q,q,s.w)}, +b4(a,b){var s=this,r=s.e +b.skT(r) +r=A.aaY(a,r) +b.sa8q(r) +b.siY(s.giY()) +b.sc6(0,s.w) +b.saEX(s.y) +b.saEY(s.z) +b.smq(s.Q)}, +bJ(a){return new A.anQ(A.dN(t.F),this,B.al)}, +giY(){return this.r}} +A.anQ.prototype={ +ga9(){return t.E1.a(A.kr.prototype.ga9.call(this))}, +hU(a,b){var s=this +s.bO=!0 +s.ahk(a,b) +s.a5A() +s.bO=!1}, +c_(a,b){var s=this +s.bO=!0 +s.ahm(0,b) +s.a5A() +s.bO=!1}, +a5A(){var s,r,q,p,o=this,n=o.f +n.toString +n=t.Dg.a(n).x +if(n!=null){for(s=o.ghK(o),r=J.ao(s.a),s=new A.jc(r,s.b,s.$ti.h("jc<1>")),q=0;s.u();){p=r.gH(r) +if(J.i(p.gc7().a,n)){t.E1.a(A.kr.prototype.ga9.call(o)).sbH(t.IT.a(p.ga9())) +break}++q}o.B=q}else{n=o.ghK(o) +s=t.E1 +if(!n.gai(n)){n=s.a(A.kr.prototype.ga9.call(o)) +s=o.ghK(o) +n.sbH(t.IT.a(s.gN(s).ga9())) +o.B=0}else{s.a(A.kr.prototype.ga9.call(o)).sbH(null) +o.B=null}}}, +oT(a,b){var s=this +s.YY(a,b) +if(!s.bO&&b.b===s.B)t.E1.a(A.kr.prototype.ga9.call(s)).sbH(t.IT.a(a))}, +oV(a,b,c){this.YZ(a,b,c)}, +q1(a,b){var s=this +s.ahl(a,b) +if(!s.bO&&t.E1.a(A.kr.prototype.ga9.call(s)).dR===a)t.E1.a(A.kr.prototype.ga9.call(s)).sbH(null)}} +A.a8x.prototype={ +aX(a){var s=this.e,r=A.aaY(a,s),q=A.aB(t.O5) +s=new A.a7r(s,r,this.r,250,B.h0,this.w,q,0,null,null,A.aB(t.T)) +s.aW() +s.I(0,null) +return s}, +b4(a,b){var s=this.e +b.skT(s) +s=A.aaY(a,s) +b.sa8q(s) +b.sc6(0,this.r) +b.smq(this.w)}} +A.apO.prototype={} +A.apP.prototype={} +A.F9.prototype={ +A(a){var s=this,r=s.e,q=!r&&!s.y,p=new A.anR(r,s.x,A.tK(s.c,q,null),null) +return new A.Uq(r,p,null)}} +A.aZR.prototype={ +$1(a){this.a.a=a +return!1}, +$S:44} +A.Uq.prototype={ +dr(a){return this.f!==a.f}} +A.anR.prototype={ +aX(a){var s=new A.akG(this.e,this.f,null,A.aB(t.T)) +s.aW() +s.sbN(null) +return s}, +b4(a,b){b.saPe(0,this.e) +b.saLf(this.f)}} +A.akG.prototype={ +saPe(a,b){if(b===this.C)return +this.C=b +this.aU()}, +saLf(a){if(a===this.a0)return +this.a0=a +this.bX()}, +jl(a){if(this.a0||this.C)this.yp(a)}, +aD(a,b){if(!this.C)return +this.ol(a,b)}} +A.Fb.prototype={ +Kf(a,b,c){var s,r=this.a,q=r!=null +if(q)a.Bm(r.GX(c)) +b.toString +s=b[a.gabQ()] +r=s.a +a.a6D(r.a,r.b,this.b,s.d,s.c) +if(q)a.ik()}, +ck(a){return a.$1(this)}, +XL(a,b){var s=b.a +if(a.a===s)return this +b.a=s+1 +return null}, +a7B(a,b){var s=b.a +b.a=s+1 +return a-s===0?65532:null}, +bM(a,b){var s,r,q,p,o,n=this +if(n===b)return B.di +if(A.o(b)!==A.o(n))return B.bR +s=n.a +r=s==null +q=b.a +if(r!==(q==null))return B.bR +t.a7.a(b) +if(!n.e.rD(0,b.e)||n.b!==b.b)return B.bR +if(!r){q.toString +p=s.bM(0,q) +o=p.a>0?p:B.di +if(o===B.bR)return o}else o=B.di +return o}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.a1(b)!==A.o(s))return!1 +if(!s.YV(0,b))return!1 +return b instanceof A.nI&&b.e.rD(0,s.e)&&b.b===s.b&&!0}, +gv(a){var s=this +return A.X(A.kl.prototype.gv.call(s,s),s.e,s.b,s.c,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}} +A.aZW.prototype={ +$1(a){var s,r=null +if(a instanceof A.nI){s=this.a.a++ +this.b.push(new A.anW(a,new A.bu(A.bI(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,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,new A.qy(s,"PlaceholderSpanIndexSemanticsTag("+s+")"),r,r,r,r,r),!1,!1,!1,!1,new A.adq(a,this.c,a.e,r),r),r))}return!0}, +$S:101} +A.anW.prototype={ +zm(a){var s=a.b +s.toString +t.ot.a(s).b=this.f}} +A.adq.prototype={ +aX(a){var s=this.e +s=new A.ST(this.f,s.b,s.c,null,A.aB(t.T)) +s.aW() +return s}, +b4(a,b){var s=this.e +b.sjy(s.b) +b.sqw(s.c) +b.slG(0,this.f)}} +A.ST.prototype={ +slG(a,b){if(b===this.B)return +this.B=b +this.a6()}, +sjy(a){if(this.Z===a)return +this.Z=a +this.a6()}, +sqw(a){return}, +c1(a){var s=this.E$ +s=s==null?null:s.c1(a/this.B) +if(s==null)s=0 +return s*this.B}, +bV(a){var s=this.E$ +s=s==null?null:s.bV(a/this.B) +if(s==null)s=0 +return s*this.B}, +bW(a){var s=this.E$ +s=s==null?null:s.bW(a/this.B) +if(s==null)s=0 +return s*this.B}, +c3(a){var s=this.E$ +s=s==null?null:s.c3(a/this.B) +if(s==null)s=0 +return s*this.B}, +hL(a){var s=this.E$,r=s==null?null:s.q6(a) +$label0$0:{if(r==null){s=this.Ho(a) +break $label0$0}s=this.B*r +break $label0$0}return s}, +ds(a){var s=this.E$,r=s==null?null:s.ds(new A.aL(0,a.b/this.B,0,1/0)) +if(r==null)r=B.x +return a.bI(r.au(0,this.B))}, +cj(){var s,r=this,q=r.E$ +if(q==null)return +s=t.k +q.cX(new A.aL(0,s.a(A.H.prototype.ga4.call(r)).b/r.B,0,1/0),!0) +r.id=s.a(A.H.prototype.ga4.call(r)).bI(q.gq(q).au(0,r.B))}, +eI(a,b){var s=this.B +b.hF(0,s,s)}, +aD(a,b){var s,r,q,p=this,o=p.E$ +if(o==null){p.ch.sb3(0,null) +return}s=p.B +if(s===1){a.eg(o,b) +p.ch.sb3(0,null) +return}r=p.cx +r===$&&A.b() +q=p.ch +q.sb3(0,a.G_(r,b,A.u7(s,s,1),new A.b9d(o),t.zV.a(q.a)))}, +dY(a,b){var s,r=this.E$ +if(r==null)return!1 +s=this.B +return a.T2(new A.b9c(r),b,A.u7(s,s,1))}} +A.b9d.prototype={ +$2(a,b){return a.eg(this.a,b)}, +$S:15} +A.b9c.prototype={ +$2(a,b){return this.a.dc(a,b)}, +$S:16} +A.ap7.prototype={ +aA(a){var s +this.eR(a) +s=this.E$ +if(s!=null)s.aA(a)}, +ap(a){var s +this.eS(0) +s=this.E$ +if(s!=null)s.ap(0)}} +A.zr.prototype={ +a8(){return new A.ao_(B.m)}} +A.ao_.prototype={ +cp(){var s,r,q=this +q.ei() +s=q.a.d +if(s!=null){r=q.d +if(r!=null)B.b.F(r.k1,s)}s=q.c +s.toString +s=q.d=A.qq(s,t.X) +r=q.a.d +if(r!=null)if(s!=null)s.k1.push(r)}, +aY(a){var s,r=this +r.br(a) +s=a.d +if(!J.i(r.a.d,s)&&r.d!=null){if(s!=null)B.b.F(r.d.k1,s) +s=r.a.d +if(s!=null)r.d.k1.push(s)}}, +m(){var s,r=this.a.d +if(r!=null){s=this.d +if(s!=null)B.b.F(s.k1,r)}this.aZ()}, +A(a){return this.a.c}} +A.aBX.prototype={ +$1(a){return a?B.ST:B.SS}, +$S:588} +A.qa.prototype={ +K(){return"HardwareButton."+this.b}} +A.auc.prototype={ +alq(a){var s=A.or(null,t.ax) +this.c!==$&&A.cl() +this.c=new A.aZS(this.b,a.f,A.F(t.N,t.UL),s)}, +C6(a,b){return this.aeV(a,b)}, +aeV(a,b){var s=0,r=A.y(t.hS),q,p=this,o +var $async$C6=A.u(function(c,d){if(c===1)return A.v(d,r) +while(true)switch(s){case 0:s=3 +return A.t(p.b.xU(0,a,!1),$async$C6) +case 3:o=d +if(o!=null&&o.d.a>Date.now()){q=o.b +s=1 +break}s=4 +return A.t(p.Ad(a,b,a),$async$C6) +case 4:q=d.b +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$C6,r)}, +yX(a,b,c,d,e){return this.ayQ(a,b,c,d,!0)}, +ayQ(a,a0,a1,a2,a3){var s=0,r=A.y(t.H),q=1,p,o=[],n=this,m,l,k,j,i,h,g,f,e,d,c,b +var $async$yX=A.u(function(a4,a5){if(a4===1){p=a5 +s=q}while(true)switch(s){case 0:a1=a1 +a3=a3 +if(a1==null)a1=a0 +m=null +q=3 +s=6 +return A.t(n.b.xU(0,a1,!1),$async$yX) +case 6:m=a5 +if(m!=null){a.G(0,m) +a3=!1}q=1 +s=5 +break +case 3:q=2 +c=p +l=A.ai(c) +$.aqI() +A.h(l) +s=5 +break +case 2:s=1 +break +case 5:s=m==null||m.d.a") +case 16:s=18 +return A.t(h.u(),$async$yX) +case 18:if(!a5){s=17 +break}k=h.gH(h) +if(k instanceof A.kZ&&a3){f=k +e=a.b +if(e>=4)A.q(a.qd()) +if((e&1)!==0)a.ov(f) +else if((e&3)===0){e=a.yG() +f=new A.iI(f,g) +d=e.c +if(d==null)e.b=e.c=f +else{d.snh(0,f) +e.c=f}}}if(k instanceof A.of){f=k +e=a.b +if(e>=4)A.q(a.qd()) +if((e&1)!==0)a.ov(f) +else if((e&3)===0){e=a.yG() +f=new A.iI(f,g) +d=e.c +if(d==null)e.b=e.c=f +else{d.snh(0,f) +e.c=f}}}s=16 +break +case 17:o.push(15) +s=14 +break +case 13:o=[10] +case 14:q=10 +s=19 +return A.t(h.aQ(0),$async$yX) +case 19:s=o.pop() +break +case 15:q=1 +s=12 +break +case 10:q=9 +b=p +j=A.ai(b) +$.aqI() +A.h(j) +if(m==null&&(a.b&1)!==0)a.pp(j) +s=12 +break +case 9:s=1 +break +case 12:case 8:a.ad(0) +return A.w(null,r) +case 1:return A.v(p,r)}}) +return A.x($async$yX,r)}, +Ad(a,b,c){return this.aHg(a,b,c)}, +aHg(a,b,c){var s=0,r=A.y(t.IP),q,p=this,o,n +var $async$Ad=A.u(function(d,e){if(d===1)return A.v(e,r) +while(true)switch(s){case 0:o=p.c +o===$&&A.b() +n=t.IP +s=3 +return A.t(o.a8W(a,b,!1,c).Lj(0,new A.aud()),$async$Ad) +case 3:q=n.a(e) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$Ad,r)}} +A.aud.prototype={ +$1(a){return a instanceof A.of}, +$S:589} +A.wq.prototype={} +A.af4.prototype={} +A.aFr.prototype={} +A.auh.prototype={ +xU(a,b,c){return this.aet(0,b,!1)}, +aet(a,b,c){var s=0,r=A.y(t.TK),q,p=this,o,n +var $async$xU=A.u(function(d,e){if(d===1)return A.v(e,r) +while(true)switch(s){case 0:s=3 +return A.t(p.Ge(b,!1),$async$xU) +case 3:n=e +if(n==null){q=null +s=1 +break}s=4 +return A.t(p.d.t3(0,n.d),$async$xU) +case 4:o=e +$.aqI() +q=new A.of(o,B.Sz,n.e) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$xU,r)}, +MM(a){return this.aN3(a)}, +aN3(a){var s=0,r=A.y(t.H),q=this +var $async$MM=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:q.c.p(0,a.c,a) +s=2 +return A.t(q.DK(a),$async$MM) +case 2:return A.w(null,r)}}) +return A.x($async$MM,r)}, +Ge(a,b){return this.aNZ(a,!1)}, +aNY(a){return this.Ge(a,!1)}, +aNZ(a,b){var s=0,r=A.y(t.Cq),q,p=this,o,n +var $async$Ge=A.u(function(c,d){if(c===1)return A.v(d,r) +while(true)switch(s){case 0:o=p.c +n=o.ao(0,a) +s=n?3:4 +break +case 3:s=5 +return A.t(p.CY(o.i(0,a)),$async$Ge) +case 5:if(d){q=o.i(0,a) +s=1 +break}case 4:o=p.b +if(!o.ao(0,a)){n=new A.a8($.a9,t.LY) +p.yI(a).b9(new A.aul(p,a,new A.aD(n,t.It)),t.P) +o.p(0,a,n)}q=o.i(0,a) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$Ge,r)}, +CY(a){return this.aqb(a)}, +aqb(a){var s=0,r=A.y(t.y),q,p=this +var $async$CY=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:if(a==null){q=!1 +s=1 +break}s=3 +return A.t(p.d.t3(0,a.d),$async$CY) +case 3:q=c.EL() +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$CY,r)}, +yI(a){return this.aqO(a)}, +aqO(a){var s=0,r=A.y(t.Cq),q,p=this,o +var $async$yI=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:s=3 +return A.t(p.f,$async$yI) +case 3:s=4 +return A.t(A.d3(null,t.Cq),$async$yI) +case 4:o=c +s=5 +return A.t(p.CY(o),$async$yI) +case 5:if(c){o.toString +p.DK(o)}p.aA3() +q=o +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$yI,r)}, +aA3(){if(this.w!=null)return +this.w=A.d2(B.Ru,new A.auj(this))}, +DK(a){return this.aCY(a)}, +aCY(a){var s=0,r=A.y(t.z),q,p=this +var $async$DK=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:s=3 +return A.t(p.f,$async$DK) +case 3:q=A.d3(null,t.z) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$DK,r)}, +w0(){var s=0,r=A.y(t.H),q=this,p,o,n,m,l +var $async$w0=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:m=A.a([],t.t) +s=2 +return A.t(q.f,$async$w0) +case 2:p=t.Cs +o=t.a6 +l=J +s=3 +return A.t(A.d3(A.a([],p),o),$async$w0) +case 3:n=l.ao(b) +case 4:if(!n.u()){s=5 +break}q.uk(n.gH(n),m) +s=4 +break +case 5:l=J +s=6 +return A.t(A.d3(A.a([],p),o),$async$w0) +case 6:p=l.ao(b) +case 7:if(!p.u()){s=8 +break}q.uk(p.gH(p),m) +s=7 +break +case 8:s=9 +return A.t(A.d3(m.length,t.S),$async$w0) +case 9:return A.w(null,r)}}) +return A.x($async$w0,r)}, +Ah(){var s=0,r=A.y(t.H),q=this,p,o,n +var $async$Ah=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:s=2 +return A.t(q.f,$async$Ah) +case 2:p=A.a([],t.t) +n=J +s=3 +return A.t(A.d3(A.a([],t.Cs),t.a6),$async$Ah) +case 3:o=n.ao(b) +case 4:if(!o.u()){s=5 +break}q.uk(o.gH(o),p) +s=4 +break +case 5:s=6 +return A.t(A.d3(p.length,t.S),$async$Ah) +case 6:return A.w(null,r)}}) +return A.x($async$Ah,r)}, +uk(a,b){return this.azd(a,b)}, +azd(a,b){var s=0,r=A.y(t.H),q,p=this,o,n,m +var $async$uk=A.u(function(c,d){if(c===1)return A.v(d,r) +while(true)switch(s){case 0:m=a.a +if(B.b.n(b,m)){s=1 +break}m.toString +b.push(m) +m=p.c +o=a.c +if(m.ao(0,o))m.F(0,o) +m=p.b +if(m.ao(0,o))m.F(0,o) +s=3 +return A.t(p.d.t3(0,a.d),$async$uk) +case 3:n=d +s=6 +return A.t(n.EL(),$async$uk) +case 6:s=d?4:5 +break +case 4:s=7 +return A.t(n.a8B(0),$async$uk) +case 7:case 5:case 1:return A.w(q,r)}}) +return A.x($async$uk,r)}} +A.auk.prototype={ +$1(a){return this.a.a}, +$S:590} +A.aul.prototype={ +$1(a){return this.adJ(a)}, +adJ(a){var s=0,r=A.y(t.P),q=this,p,o,n +var $async$$1=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:p=q.a +o=q.b +n=p.c +if(a==null)n.F(0,o) +else n.p(0,o,a) +q.c.cM(0,a) +p.b.F(0,o) +return A.w(null,r)}}) +return A.x($async$$1,r)}, +$S:591} +A.auj.prototype={ +$0(){var s=this.a +s.w=null +s.w0()}, +$S:0} +A.awo.prototype={} +A.aub.prototype={} +A.kZ.prototype={ +gr4(){var s=this.b +if(s==null||this.c>s)return null +s.toString +return this.c/s}} +A.a0U.prototype={ +K(){return"FileSource."+this.b}} +A.of.prototype={} +A.l1.prototype={} +A.a5u.prototype={ +r_(a){var s=0,r=A.y(t.y),q +var $async$r_=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:q=!0 +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$r_,r)}, +$iaua:1} +A.lE.prototype={ +TS(a,b,c,d,e,f){var s=this,r=e==null?s.b:e,q=d==null?s.d:d,p=f==null?s.e:f,o=a==null?s.f:a,n=c==null?s.r:c +return A.boj(r,o,s.a,s.c,n,q,s.w,p)}, +aG7(a){return this.TS(null,null,null,null,a,null)}, +aGq(a,b,c){return this.TS(a,null,null,b,null,c)}, +aG_(a){return this.TS(null,null,a,null,null,null)}, +gt(a){return this.r}} +A.aIO.prototype={ +t3(a,b){return this.aGz(0,b)}, +aGz(a,b){var s=0,r=A.y(t.hS),q,p=this +var $async$t3=A.u(function(c,d){if(c===1)return A.v(d,r) +while(true)switch(s){case 0:s=3 +return A.t(p.a,$async$t3) +case 3:q=d.aFf(b) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$t3,r)}} +A.aBw.prototype={} +A.aFg.prototype={ +GG(a,b,c){return this.aed(0,b,c)}, +aed(a,b,c){var s=0,r=A.y(t.nZ),q,p=this,o,n +var $async$GG=A.u(function(d,e){if(d===1)return A.v(e,r) +while(true)switch(s){case 0:n=A.brI("GET",A.dH(b,0,null)) +n.r.I(0,c) +s=3 +return A.t(p.b.iM(0,n),$async$GG) +case 3:o=e +A.bw9() +q=new A.a1S(A.bm0(),o) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$GG,r)}} +A.a1S.prototype={ +gYz(a){return this.b.b}, +gaP8(){var s,r,q,p,o,n=this.b.e.i(0,"cache-control") +if(n!=null){s=n.split(",") +for(n=s.length,r=B.rL,q=0;q0)r=new A.bk(1e6*o)}}}else r=B.rL +return this.a.G(0,r)}, +$ibpt:1} +A.a6D.prototype={} +A.aZS.prototype={ +a8W(a,b,c,d){var s,r,q,p=this.c,o=p.i(0,d) +if(o==null||!1){s=t.cL +r=new A.ls(null,null,t.jx) +q=new A.ao0(B.qB,t.Bi) +o=new A.I1(q,r,A.bEC(A.bDc(q,r,!1,s),!0,s),t.UL) +p.p(0,d,o) +this.w5(a,d,b)}return new A.v4(o,A.k(o).h("v4<1>"))}, +Ad(a,b,c){return this.a8W(a,b,!1,c)}, +w5(a,b,c){return this.apq(a,b,c)}, +apq(a,a0,a1){var s=0,r=A.y(t.H),q,p=2,o,n=[],m=this,l,k,j,i,h,g,f,e,d,c,b +var $async$w5=A.u(function(a2,a3){if(a2===1){o=a3 +s=p}while(true)switch(s){case 0:c=m.e +if(c>=10){m.d.iP(0,new A.a6D(a,a0,a1)) +s=1 +break}$.aqI() +m.e=c+1 +c=m.c +h=c.i(0,a0) +h.toString +l=h +p=4 +h=new A.nK(A.fj(m.zb(a,a0,a1),"stream",t.K),t.r2) +p=7 +case 10:s=12 +return A.t(h.u(),$async$w5) +case 12:if(!a3){s=11 +break}k=h.gH(h) +g=l +f=k +if(g.c)A.q(A.R(u.g)) +e=g.b +if((e.c&4)===0){g=g.e +g.b=f +g.a=!0}if(!e.gwc())A.q(e.vY()) +e.ov(f) +s=10 +break +case 11:n.push(9) +s=8 +break +case 7:n=[4] +case 8:p=4 +s=13 +return A.t(h.aQ(0),$async$w5) +case 13:s=n.pop() +break +case 9:n.push(6) +s=5 +break +case 4:p=3 +b=o +j=A.ai(b) +i=A.aH(b) +l.dO(j,i) +n.push(6) +s=5 +break +case 3:n=[2] +case 5:p=2;--m.e +s=14 +return A.t(J.Hr(l),$async$w5) +case 14:c.F(0,a0) +m.anL() +s=n.pop() +break +case 6:case 1:return A.w(q,r) +case 2:return A.v(o,r)}}) +return A.x($async$w5,r)}, +anL(){var s,r=this.d +if(r.b===r.c)return +s=r.Bo() +this.w5(s.a,s.b,s.c)}, +zb(a,b,c){return this.aD1(a,b,c)}, +aD1(a,b,c){var $async$zb=A.u(function(d,e){switch(d){case 2:n=q +s=n.pop() +break +case 1:o=e +s=p}while(true)switch(s){case 0:s=3 +return A.hN(m.a.aNY(b),$async$zb,r) +case 3:j=e +if(j==null){A.bw9() +l=A.bm0() +j=A.boj(a,null,null,b,null,B.qy.ads()+".file",null,l)}else j=j.aG7(a) +l=t.N +k=A.F(l,l) +if(c!=null)k.I(0,c) +i=j +s=5 +return A.hN(m.b.GG(0,j.b,k),$async$zb,r) +case 5:s=4 +q=[1] +return A.hN(A.bMG(m.uh(i,e)),$async$zb,r) +case 4:case 1:return A.hN(null,0,r) +case 2:return A.hN(o,1,r)}}) +var s=0,r=A.blc($async$zb,t.cL),q,p=2,o,n=[],m=this,l,k,j,i +return A.bli(r)}, +uh(a,b){return this.avV(a,b)}, +avV(a5,a6){var $async$uh=A.u(function(a7,a8){switch(a7){case 2:n=q +s=n.pop() +break +case 1:o=a8 +s=p}while(true)switch(s){case 0:a={} +a0=a6.b +a1=a0.b +a2=B.b.n(B.uf,a1) +a3=B.b.n(B.ur,a1) +if(!a2&&!a3){a6.gYz(a6) +throw A.c(new A.a1P("Invalid statusCode: "+a6.gYz(a6),A.dH(a5.b,0,null)))}j=a0.e +i=j.i(0,"content-type") +if(i!=null){h=new A.b22() +h.alQ("",B.a6Y) +h.ay5(i,";",null,!1) +i=h.a +g=B.c.eX(i,"/") +if(g===-1||g===i.length-1)i=h.d=B.c.dI(i).toLowerCase() +else{f=h.d=B.c.dI(B.c.U(i,0,g)).toLowerCase() +h.e=B.c.dI(B.c.cv(i,g+1)).toLowerCase() +i=f}e=B.a6I.i(0,i+"/"+h.e) +if(e==null)e="."+h.e}else e="" +d=a5.d +if(!B.b.n(B.ur,a1)){if(!B.c.hM(d,e))m.wk(d) +d=B.qy.ads()+e}i=a6.gaP8() +c=a.a=a5.aGq(j.i(0,"etag"),d,i) +s=B.b.n(B.uf,a1)?3:5 +break +case 3:l=0 +b=A.ln(null,null,null,!1,t.S) +m.z0(b,c,a6) +a1=new A.nK(A.fj(new A.d_(b,A.k(b).h("d_<1>")),"stream",t.K),t.Hb) +p=6 +a0=a0.d +case 9:s=11 +return A.hN(a1.u(),$async$uh,r) +case 11:if(!a8){s=10 +break}k=a1.gH(a1) +l=k +s=12 +q=[1,7] +return A.hN(A.bkv(new A.kZ(a0,k)),$async$uh,r) +case 12:s=9 +break +case 10:n.push(8) +s=7 +break +case 6:n=[2] +case 7:p=2 +s=13 +return A.hN(a1.aQ(0),$async$uh,r) +case 13:s=n.pop() +break +case 8:a0=a.a=a.a.aG_(l) +s=4 +break +case 5:a0=c +case 4:a1=m.a +a1.MM(a0).b9(new A.aZT(a,m,a5),t.P) +a4=A +s=15 +return A.hN(a1.d.t3(0,a.a.d),$async$uh,r) +case 15:s=14 +q=[1] +return A.hN(A.bkv(new a4.of(a8,B.SA,a.a.e)),$async$uh,r) +case 14:case 1:return A.hN(null,0,r) +case 2:return A.hN(o,1,r)}}) +var s=0,r=A.blc($async$uh,t.cL),q,p=2,o,n=[],m=this,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a3,a4 +return A.bli(r)}, +z0(a,b,c){return this.azW(a,b,c)}, +azW(a,b,c){var s=0,r=A.y(t.H),q=1,p,o=this,n,m,l,k,j,i,h,g +var $async$z0=A.u(function(d,e){if(d===1){p=e +s=q}while(true)switch(s){case 0:i={} +s=2 +return A.t(o.a.d.t3(0,b.d),$async$z0) +case 2:h=e +q=4 +i.a=0 +k=h +k.a.d.$2(k.b,B.SE) +n=A.bMo(k,B.mO,B.O) +k=c.b.w +s=7 +return A.t(new A.nF(new A.aZU(i,a),k,A.k(k).h("nF>")).aMO(n),$async$z0) +case 7:q=1 +s=6 +break +case 4:q=3 +g=p +m=A.ai(g) +l=A.aH(g) +a.dO(m,l) +s=6 +break +case 3:s=1 +break +case 6:s=8 +return A.t(a.ad(0),$async$z0) +case 8:return A.w(null,r) +case 1:return A.v(p,r)}}) +return A.x($async$z0,r)}, +wk(a){return this.azi(a)}, +azi(a){var s=0,r=A.y(t.H),q=this,p +var $async$wk=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:s=2 +return A.t(q.a.d.t3(0,a),$async$wk) +case 2:p=c +s=5 +return A.t(p.EL(),$async$wk) +case 5:s=c?3:4 +break +case 3:s=6 +return A.t(p.a8B(0),$async$wk) +case 6:case 4:return A.w(null,r)}}) +return A.x($async$wk,r)}} +A.aZT.prototype={ +$1(a){var s=this.c.d +if(this.a.a.d!==s)this.b.wk(s)}, +$S:20} +A.aZU.prototype={ +$1(a){var s=this.a,r=s.a+J.aZ(a) +s.a=r +this.b.G(0,r) +return a}, +$S:592} +A.a1P.prototype={} +A.fK.prototype={} +A.adk.prototype={ +ke(a,b){return new A.ct(A.bTz(b),t.kL)}, +xj(a){return B.b.n(A.a(["ar","de","en","es","fr","ja","ko","pt","uk","zh"],t.s),a.ge_(a))}, +vM(a){return!1}} +A.WK.prototype={ +gkL(){return"\u062d\u0648\u0644"}, +gjX(){return"\u0625\u0636\u0627\u0641\u0629 \u0641\u0626\u0629"}, +gm4(){return"\u0625\u0636\u0627\u0641\u0629 \u0625\u0644\u0649 \u0627\u0644\u0645\u0643\u062a\u0628\u0629"}, +gm7(){return"\u0643\u0644 \u0641\u0631\u0642 \u0627\u0644\u062a\u0631\u062c\u0645\u0629"}, +gkO(){return"\u0644\u063a\u0629 \u0627\u0644\u062a\u0637\u0628\u064a\u0642"}, +gkP(){return"\u0645\u0638\u0647\u0631 \u0627\u0644\u062a\u0637\u0628\u064a\u0642"}, +gkQ(){return"\u062a\u0627\u0634\u064a\u062f\u064a\u0633\u0643 \u0633\u0648\u0631\u0627\u064a\u0648\u0645\u064a"}, +gkR(a){return"\u0627\u0644\u0645\u0638\u0647\u0631"}, +gkS(){return"\u0646\u0648\u0639 \u0627\u0644\u0645\u0635\u0627\u062f\u0642\u0629"}, +gm9(){return"\u0645\u0635\u0627\u062f\u0642\u0629 \u0623\u0633\u0627\u0633\u064a\u0629"}, +gma(){return"\u0628\u0644\u0627"}, +gjY(){return"\u0627\u0644\u0646\u0633\u062e \u0627\u0644\u0627\u062d\u062a\u064a\u0627\u0637\u064a \u0648 \u0627\u0644\u0627\u0633\u062a\u0639\u0627\u062f\u0629"}, +gmb(){return"\u0627\u0644\u0634\u0627\u0631\u0627\u062a"}, +gfU(){return"\u0644\u062f\u064a\u0647\u0627 \u0625\u0634\u0627\u0631\u0627\u062a \u0645\u0631\u062c\u0639\u064a\u0629"}, +gjB(){return"\u062a\u0635\u0641\u062d"}, +gj_(){return"\u062a\u0627\u0631\u064a\u062e \u0628\u0646\u0627\u0621 \u0627\u0644\u062e\u0627\u062f\u0645"}, +gmd(){return"\u062a\u0645 \u062a\u0646\u0638\u064a\u0641 \u0627\u0644\u0645\u0644\u0641\u0627\u062a \u0627\u0644\u0645\u0624\u0642\u062a\u0629"}, +gdP(a){return"\u0625\u0644\u063a\u0627\u0621"}, +gkW(){return"\u0627\u0644\u0641\u0626\u0627\u062a"}, +gmf(){return"\u062a\u062d\u062f\u064a\u062b \u0627\u0644\u0641\u0626\u0629"}, +gfW(a){return"\u0627\u0644\u0646\u0648\u0639"}, +mh(a){return"\u0627\u0644\u0641\u0635\u0644 "+A.h(a)}, +gmi(){return"\u062d\u0633\u0628 \u0627\u0644\u0645\u0648\u0642\u0639"}, +gmj(){return"\u062d\u0633\u0628 \u0627\u0644\u0645\u0635\u062f\u0631"}, +gmk(){return"\u062d\u0633\u0628 \u062a\u0627\u0631\u064a\u062e \u0627\u0644\u0625\u0636\u0627\u0641\u0629"}, +gml(){return"\u062a\u062d\u0642\u0642 \u0645\u0646 \u0648\u062c\u0648\u062f \u062a\u062d\u062f\u064a\u062b\u0627\u062a \u0627\u0644\u062e\u0627\u062f\u0645"}, +gmm(){return"\u062a\u062d\u0642\u0642 \u0645\u0646 \u0648\u062c\u0648\u062f \u062a\u062d\u062f\u064a\u062b\u0627\u062a"}, +gmn(){return"\u062a\u0646\u0638\u064a\u0641 \u0627\u0644\u0645\u0644\u0641\u0627\u062a \u0627\u0644\u0645\u0624\u0642\u062a\u0629"}, +gmo(a){return"\u0627\u0644\u0648\u0643\u064a\u0644"}, +gmp(){return"\u0625\u0635\u062f\u0627\u0631 \u0627\u0644\u0648\u0643\u064a\u0644"}, +gdU(a){return"\u0625\u063a\u0644\u0627\u0642"}, +gh8(a){return"\u0645\u0643\u062a\u0645\u0644\u0629"}, +mu(a){return"'"+a+"'\u202e \u062a\u0645 \u0646\u0633\u062e!"}, +gmw(){return"\u0627\u0644\u0646\u0633\u062e \u0627\u0644\u0627\u062d\u062a\u064a\u0627\u0637\u064a \u0644\u0645\u0643\u062a\u0628\u0629 Tachidesk"}, +gmx(){return"\u0625\u0646\u0634\u0627\u0621 \u0646\u0633\u062e\u0629 \u0627\u062d\u062a\u064a\u0627\u0637\u064a\u0629"}, +gkZ(a){return"\u0627\u0644\u0634\u0647\u0627\u062f\u0627\u062a"}, +my(a){return"\u0645\u0646\u0630 "+a+" \u0623\u064a\u0627\u0645"}, +gjE(){return"\u0627\u0644\u0641\u0626\u0629 \u0627\u0644\u0627\u0641\u062a\u0631\u0627\u0636\u064a\u0629 \u0639\u0646\u062f \u0625\u0636\u0627\u0641\u0629 \u0645\u0627\u0646\u062c\u0627 \u062c\u062f\u064a\u062f\u0629 \u0625\u0644\u0649 \u0627\u0644\u0645\u0643\u062a\u0628\u0629"}, +gks(a){return"\u062d\u0630\u0641"}, +gmz(){return"\u0633\u064a\u0624\u062f\u064a \u0625\u0644\u0649 \u062f\u0645\u062c \u062c\u0645\u064a\u0639 \u0627\u0644\u0645\u0627\u0646\u062c\u0627 \u0641\u064a \u0647\u0630\u0647 \u0627\u0644\u0641\u0626\u0629 \u0625\u0644\u0649 \u0627\u0644\u0627\u0641\u062a\u0631\u0627\u0636\u064a\u0629!"}, +gmA(){return"\u0647\u0644 \u0623\u0646\u062a \u0645\u062a\u0623\u0643\u062f\u061f"}, +gj0(){return"Discord"}, +gmB(a){return"\u0627\u0644\u0639\u0631\u0636"}, +gl0(){return"\u0648\u0636\u0639 \u0627\u0644\u0639\u0631\u0636"}, +gmC(){return"\u0642\u0627\u0626\u0645\u0629 \u0648\u0635\u0641\u064a\u0629"}, +gmD(){return"\u0634\u0628\u0643\u0629 \u0645\u062f\u0645\u062c\u0629"}, +gmE(){return"\u0642\u0627\u0626\u0645\u0629"}, +gfE(a){return"\u0645\u0646\u0632\u0644\u0629"}, +gl1(){return"\u0627\u0644\u062a\u0646\u0632\u064a\u0644\u0627\u062a"}, +gj2(){return"\u062a\u0639\u062f\u064a\u0644 \u0627\u0644\u0641\u0626\u0629"}, +gmF(){return"\u0644\u0627 \u064a\u0645\u0643\u0646 \u0623\u0646 \u064a\u0643\u0648\u0646 \u0627\u0633\u0645 \u0627\u0644\u0641\u0626\u0629 \u0641\u0627\u0631\u063a\u064b\u0627"}, +gl3(){return"\u062a\u0639\u0630\u0631 \u0627\u0644\u0639\u062b\u0648\u0631 \u0639\u0644\u0649 \u0627\u0644\u0625\u0636\u0627\u0641\u0629 \u0627\u0644\u0645\u062d\u062f\u062f\u0629"}, +gl4(){return"\u0644\u0645 \u064a\u062a\u0645 \u0627\u062e\u062a\u064a\u0627\u0631 \u0627\u0644\u0645\u0644\u0641!"}, +mG(a){return"\u0627\u0644\u0631\u062c\u0627\u0621 \u062a\u062d\u062f\u064a\u062f \u0645\u0644\u0641 \u0628\u0627\u0644\u0627\u0645\u062a\u062f\u0627\u062f "+a}, +mH(a){return'\u0641\u0634\u0644 \u0641\u064a \u0627\u0644\u0641\u062a\u062d!\n\u0646\u0633\u062e "'+a+'" \u0627\u0644\u0649 \u0627\u0644\u062d\u0627\u0641\u0638\u0629'}, +gmI(){return"\u0643\u0644\u0645\u0629 \u0627\u0644\u0633\u0631 \u0641\u0627\u0631\u063a\u0629"}, +gjH(){return"\u0647\u0646\u0627\u0643 \u062e\u0637\u0623 \u0645\u0627!"}, +gmJ(){return"\u0627\u0633\u0645 \u0627\u0644\u0645\u0633\u062a\u062e\u062f\u0645 \u0641\u0627\u0631\u063a"}, +gmK(){return"\u062a\u0645 \u062a\u062d\u0645\u064a\u0644 \u0627\u0644\u0625\u0636\u0627\u0641\u0629!"}, +gmL(){return"\u0642\u0627\u0626\u0645\u0629 \u0627\u0644\u0625\u0636\u0627\u0641\u0627\u062a \u0641\u0627\u0631\u063a\u0629"}, +gmM(a){return"\u0627\u0644\u0625\u0636\u0627\u0641\u0627\u062a"}, +ghx(){return"\u0641\u0634\u0644"}, +ghd(a){return"\u0641\u0631\u0632"}, +gmQ(a){return"\u0627\u0644\u0646\u0647\u0627\u064a\u0629"}, +gkt(){return"\u0639\u0627\u0645"}, +gkw(){return"GitHub"}, +glD(){return"\u0627\u0644\u0628\u062d\u062b \u0627\u0644\u0639\u0627\u0645"}, +glE(){return"\u062a\u062d\u062f\u064a\u062b \u0627\u0644\u0643\u0644"}, +gmR(){return"\u0645\u0633\u0627\u0639\u062f\u0629"}, +gfJ(){return"\u0641\u064a \u0627\u0644\u0645\u0643\u062a\u0628\u0629"}, +gmT(){return"\u062a\u062d\u0645\u064a\u0644"}, +gmU(a){return"\u062c\u0627\u0631 \u0627\u0644\u062a\u062d\u0645\u064a\u0644"}, +gmV(){return"\u062c\u0627\u0631\u064a \u062a\u062d\u0645\u064a\u0644 \u0627\u0644\u0627\u0636\u0627\u0641\u0629"}, +glb(a){return"\u0627\u0644\u0644\u063a\u0627\u062a"}, +gmZ(){return"\u0627\u0644\u0623\u062e\u064a\u0631"}, +ghz(){return"\u0627\u0644\u0645\u0643\u062a\u0628\u0629"}, +geq(){return"\u0645\u0627\u0646\u062c\u0627"}, +gn0(){return"\u062d\u062c\u0645 \u0634\u0628\u0643\u0629 \u0627\u0644\u0645\u0627\u0646\u062c\u0627"}, +gn1(){return"\u0645\u0635\u0627\u062f\u0631 \u0627\u0644\u0645\u0627\u0646\u062c\u0627 \u0627\u0644\u0645\u0641\u0642\u0648\u062f\u0629"}, +gn2(){return"\u0623\u0628\u062c\u062f\u064a"}, +gn3(){return"\u062a\u0627\u0631\u064a\u062e \u0627\u0644\u0625\u0636\u0627\u0641\u0629"}, +gn5(){return"\u063a\u064a\u0631 \u0645\u0642\u0631\u0648\u0621"}, +gn4(){return"\u0622\u062e\u0631 \u0642\u0631\u0627\u0621\u0629"}, +gn6(){return"\u0623\u0644\u063a\u064a\u062a"}, +gn7(){return"\u0645\u0643\u062a\u0645\u0644\u0629"}, +gn8(){return"\u0645\u0631\u062e\u0635\u0629"}, +gn9(){return"\u0641\u064a \u0641\u062a\u0631\u0629 \u062a\u0648\u0642\u0641"}, +gna(){return"\u0645\u0633\u062a\u0645\u0631\u0629"}, +gnb(){return"\u0627\u0646\u062a\u0647\u0649 \u0627\u0644\u0646\u0634\u0631"}, +gnc(){return"\u063a\u064a\u0631 \u0645\u0639\u0631\u0648\u0641"}, +gnd(){return"\u0625\u0636\u0627\u0641\u0627\u062a \u0645\u0641\u0642\u0648\u062f\u0629"}, +ghA(){return"\u0627\u0644\u062a\u062a\u0628\u0639\u0627\u062a \u0645\u0641\u0642\u0648\u062f\u0629"}, +glg(){return"\u0623\u0643\u062b\u0631"}, +gne(){return"\u0627\u0644\u0627\u0646\u062a\u0642\u0627\u0644 \u0625\u0644\u0649 \u0623\u0633\u0641\u0644"}, +gnf(){return"\u0627\u0644\u0627\u0646\u062a\u0642\u0627\u0644 \u0625\u0644\u0649 \u0627\u0644\u0623\u0639\u0644\u0649"}, +lh(a,b){return a+": "+b}, +gng(){return"\u062a\u062d\u062f\u064a\u062b \u062c\u062f\u064a\u062f \u0645\u062a\u0627\u062d"}, +pR(a){return"Next: "+a}, +gkh(){return"\u0644\u064a\u0633 \u0644\u062f\u064a\u0643 \u0623\u064a \u0641\u0626\u0627\u062a. \n(\u0646\u0635\u064a\u062d\u0629: \u0627\u0636\u063a\u0637 \u0639\u0644\u0649 \u0632\u0631 \u0639\u0644\u0627\u0645\u0629 \u0627\u0644\u0632\u0627\u0626\u062f \u0644\u0625\u0646\u0634\u0627\u0621 \u0641\u0626\u0629 \u0644\u062a\u0646\u0638\u064a\u0645 \u0645\u0643\u062a\u0628\u062a\u0643)"}, +gni(){return"\u0644\u064a\u0633 \u0644\u062f\u064a\u0643 \u0623\u064a \u0641\u0626\u0627\u062a.\n\u0642\u0645 \u0628\u0625\u0646\u0634\u0627\u0621 \u0641\u0626\u0629 \u0641\u064a \u0627\u0644\u0625\u0639\u062f\u0627\u062f\u0627\u062a \u0644\u062a\u0646\u0638\u064a\u0645 \u0645\u0643\u062a\u0628\u062a\u0643"}, +gnj(){return"\u0644\u0645 \u064a\u062a\u0645 \u0627\u0644\u0639\u062b\u0648\u0631 \u0639\u0644\u0649 \u0645\u0627\u0646\u062c\u0627 \u0641\u064a \u0647\u0630\u0647 \u0627\u0644\u0641\u0626\u0629. \n(\u0646\u0635\u064a\u062d\u0629: \u062a\u062d\u0642\u0642 \u0645\u0646 \u0627\u0644\u0628\u062d\u062b \u0648\u0627\u0644\u0641\u0644\u0627\u062a\u0631!)"}, +glj(){return"\u0644\u0627 \u064a\u0648\u062c\u062f \u0641\u0635\u0648\u0644"}, +gnk(){return"\u0644\u0627 \u064a\u0648\u062c\u062f \u062a\u0646\u0632\u064a\u0644\u0627\u062a"}, +gki(){return"\u0644\u0645 \u064a\u062a\u0645 \u0627\u0644\u0639\u062b\u0648\u0631 \u0639\u0644\u0649 \u0645\u0627\u0646\u063a\u0627"}, +lk(a){return""+a+" \u0641\u0635\u0644"}, +gnl(){return"\u0644\u0645 \u064a\u062a\u0645 \u0627\u0644\u0639\u062b\u0648\u0631 \u0639\u0644\u0649 \u0646\u062a\u0627\u0626\u062c"}, +gll(){return"\u0644\u0645 \u064a\u062a\u0645 \u0627\u0644\u0639\u062b\u0648\u0631 \u0639\u0644\u0649 \u0645\u0635\u0627\u062f\u0631"}, +glm(){return"\u0623\u0646\u062a \u062a\u0633\u062a\u062e\u062f\u0645 \u0623\u062d\u062f\u062b \u0625\u0635\u062f\u0627\u0631"}, +gnm(){return"\u0644\u0645 \u064a\u062a\u0645 \u0627\u0644\u0639\u062b\u0648\u0631 \u0639\u0644\u0649 \u062a\u062d\u062f\u064a\u062b\u0627\u062a"}, +gnn(){return"\u0625\u0638\u0647\u0627\u0631 \u0625\u0636\u0627\u0641\u0627\u062a \u0648\u0645\u0635\u0627\u062f\u0631 NSFW"}, +gno(){return"18+"}, +gnp(){return"\u0647\u0630\u0627 \u0644\u0627 \u064a\u0645\u0646\u0639 \u0627\u0644\u0625\u0636\u0627\u0641\u0627\u062a \u063a\u064a\u0631 \u0627\u0644\u0631\u0633\u0645\u064a\u0629 \u0623\u0648 \u0627\u0644\u062a\u064a \u064a\u062d\u062a\u0645\u0644 \u0623\u0646 \u064a\u062a\u0645 \u0648\u0636\u0639 \u0639\u0644\u0627\u0645\u0629 \u0639\u0644\u064a\u0647\u0627 \u0628\u0634\u0643\u0644 \u063a\u064a\u0631 \u0635\u062d\u064a\u062d \u0645\u0646 \u0627\u0644\u0638\u0647\u0648\u0631 \u0639\u0644\u0649 \u0645\u062d\u062a\u0648\u0649 NSFW (18+) \u062f\u0627\u062e\u0644 \u0627\u0644\u062a\u0637\u0628\u064a\u0642"}, +ln(a){return"\u0627\u0644\u0645\u062d\u062f\u062f\u0629 "+a}, +gjK(){return"\u0642\u062f\u064a\u0645\u0629"}, +nr(a,b){return"\u0627\u0644\u0635\u0641\u062d\u0629: "+b}, +gns(a){return"\u0643\u0644\u0645\u0629 \u0627\u0644\u0645\u0631\u0648\u0631"}, +gij(a){return"\u0625\u064a\u0642\u0627\u0641"}, +ghW(a){return"\u0641\u064a \u0627\u0644\u0627\u0646\u062a\u0638\u0627\u0631"}, +pV(a){return"Previous: "+a}, +gnv(){return"\u0627\u0630\u0647\u0628 \u0625\u0644\u0649 \u0627\u0644\u0641\u0626\u0629 'C'"}, +gny(){return"\u0644\u0644\u0628\u062d\u062b \u0639\u0646 \u0627\u0633\u062a\u0639\u0644\u0627\u0645 (\u0627\u0644\u0646\u062a\u0627\u0626\u062c \u0645\u0628\u0646\u064a\u0629 \u0639\u0644\u0649 \u0645\u0639\u0644\u0648\u0645\u0627\u062a \u0627\u0644\u0634\u0627\u0634\u0629)"}, +gnz(){return"\u0627\u0630\u0647\u0628 \u0625\u0644\u0649 \u0627\u0644\u0645\u0635\u062f\u0631 'S'"}, +gnA(){return"\u0627\u0628\u062d\u062b \u0639\u0646 \u0627\u0644\u0645\u0627\u0646\u062c\u0627 'M' \u0641\u064a \u0627\u0644\u0645\u0635\u062f\u0631 'S'"}, +gnw(){return"\u0627\u0630\u0647\u0628 \u0625\u0644\u0649 \u0627\u0644\u0645\u0627\u0646\u062c\u0627 'M' \u0641\u064a \u0627\u0644\u0641\u0626\u0629 'C'"}, +gnx(){return"\u0627\u0646\u062a\u0642\u0644 \u0625\u0644\u0649 \u0627\u0633\u0645 \u0627\u0644\u0641\u0635\u0644 'CN' \u0645\u0646 \u0627\u0644\u0645\u0627\u0646\u062c\u0627 'M' \u0641\u064a \u0627\u0644\u0641\u0626\u0629 'C'"}, +gpW(){return"Tip: Enter '?' to see all commands"}, +glq(){return"\u0627\u0644\u0642\u0627\u0631\u0626"}, +ghY(){return"\u0648\u0636\u0639 \u0627\u0644\u0642\u0631\u0627\u0621\u0629"}, +gnB(){return"\u0627\u0641\u0642\u064a \u0645\u0633\u062a\u0645\u0631 (\u0645\u0646 \u0627\u0644\u064a\u0633\u0627\u0631 \u0644\u0644\u064a\u0645\u064a\u0646)"}, +gnC(){return"\u0627\u0641\u0642\u064a \u0645\u0633\u062a\u0645\u0631 (\u0645\u0646 \u0627\u0644\u064a\u0645\u064a\u0646 \u0644\u0644\u064a\u0633\u0627\u0631)"}, +gnD(){return"\u0639\u0645\u0648\u062f\u064a \u0645\u0633\u062a\u0645\u0631"}, +gnE(){return"\u0627\u0644\u0627\u0641\u062a\u0631\u0627\u0636\u064a"}, +gnF(){return"\u0645\u0646 \u0627\u0644\u064a\u0633\u0627\u0631 \u0644\u0644\u064a\u0645\u064a\u0646"}, +gnG(){return"\u0645\u0646 \u0627\u0644\u064a\u0645\u064a\u0646 \u0644\u0644\u064a\u0633\u0627\u0631"}, +gnH(){return"\u0639\u0645\u0648\u062f\u064a\u0627"}, +gnI(){return"\u0648\u064a\u0628\u062a\u0648\u0646"}, +ghi(){return"\u0646\u0648\u0639 \u0627\u0644\u0627\u0646\u062a\u0642\u0627\u0644"}, +gnJ(){return"\u0627\u0644\u0627\u0641\u062a\u0631\u0627\u0636\u064a"}, +gnK(){return"\u062a\u0639\u0637\u064a\u0644"}, +gnL(){return"\u0641\u064a \u0627\u0644\u062d\u0627\u0641\u0629"}, +gnM(){return"\u0628\u0627\u0644\u0646\u0642\u0631"}, +gnQ(){return"\u0645\u0624\u062b\u0631\u0627\u062a \u0627\u0644\u0627\u0646\u062a\u0642\u0627\u0644 \u0628\u064a\u0646 \u0627\u0644\u0635\u0641\u062d\u0627\u062a"}, +goY(){return"\u0627\u0633\u062d\u0628 \u0644\u0644\u0627\u0646\u062a\u0642\u0627\u0644"}, +goZ(){return"\u0627\u0633\u062d\u0628 \u0644\u062a\u063a\u064a\u0631 \u0627\u0644\u0641\u0635\u0644 \u0641\u064a \u0627\u0644\u0642\u0627\u0631\u0626"}, +gnN(){return"\u0648\u0636\u0639 \u0627\u0644\u0643\u064a\u0646\u062f\u0644"}, +gnO(){return"\u0634\u0643\u0644 \u062d\u0631\u0641 L"}, +gnP(){return"\u064a\u0645\u064a\u0646\u0627 \u0648 \u064a\u0633\u0627\u0631\u0627"}, +gpX(){return"Reader initial overlay"}, +gpY(){return u.A}, +gje(){return"\u0645\u0644\u0627\u0621\u0645\u0629 \u0627\u0644\u0642\u0627\u0631\u0649\u0621"}, +gjd(){return"\u062d\u062c\u0645 \u0627\u0644\u062a\u0643\u0628\u064a\u0631"}, +gnR(){return"Reddit"}, +gfd(a){return"\u062a\u062d\u062f\u064a\u062b"}, +gq_(a){return"Reload"}, +gls(a){return"Remove"}, +grd(){return"Remove from Library?"}, +gnT(a){return"\u0625\u0639\u0627\u062f\u0629 \u0636\u0628\u0637"}, +gnU(){return"\u0627\u0633\u062a\u0639\u0627\u062f\u0629 Tachidesk \u0645\u0646 \u0627\u0644\u0646\u0633\u062e\u0629 \u0627\u0644\u0627\u062d\u062a\u064a\u0627\u0637\u064a\u0629"}, +gnV(){return"\u0627\u0633\u062a\u0639\u0627\u062f\u0629 \u0627\u0644\u0646\u0633\u062e\u0629 \u0627\u0644\u0627\u062d\u062a\u064a\u0627\u0637\u064a\u0629"}, +gnW(){return"\u062a\u0645\u062a \u0627\u0633\u062a\u0639\u0627\u062f\u0629 \u0627\u0644\u0646\u0633\u062e\u0629 \u0627\u0644\u0627\u062d\u062a\u064a\u0627\u0637\u064a\u0629!"}, +gnX(){return"\u062c\u0627\u0631\u064a \u0627\u0633\u062a\u0639\u0627\u062f\u0629 \u0627\u0644\u0646\u0633\u062e\u0629 \u0627\u0644\u0627\u062d\u062a\u064a\u0627\u0637\u064a\u0629"}, +gh4(a){return"\u0627\u0633\u062a\u0623\u0646\u0641"}, +gjP(){return"\u0623\u0639\u062f \u0627\u0644\u0645\u062d\u0627\u0648\u0644\u0629"}, +gi_(){return"\u062c\u0627\u0631\u064a"}, +giq(a){return"\u062d\u0641\u0638"}, +glH(){return"\u0641\u0631\u0642 \u0627\u0644\u062a\u0631\u062c\u0645\u0629"}, +gkx(a){return"\u0627\u0644\u0628\u062d\u062b"}, +gky(){return"\u0627\u0644\u0628\u062d\u062b \u0639\u0646 \u0627\u0644\u062a\u062d\u062f\u064a\u062b\u0627\u062a"}, +gpe(){return"Select next 10"}, +gpf(){return"Select Unread"}, +gpd(){return"Select in between"}, +gjp(){return"\u0633\u064a\u0631\u0641\u0631"}, +gkA(){return"\u0639\u0646\u0648\u0627\u0646 \u0627\u0644\u0633\u064a\u0631\u0641\u0631"}, +glJ(){return"\u0623\u062f\u062e\u0644 \u0639\u0646\u0648\u0627\u0646 \u0627\u0644\u0633\u064a\u0631\u0641\u0631"}, +gkz(){return"\u0645\u0646\u0641\u0630 \u0627\u0644\u0633\u064a\u0631\u0641\u0631"}, +glI(){return"\u0623\u062f\u062e\u0644 \u0645\u0646\u0641\u0630 \u0627\u0644\u0633\u064a\u0631\u0641\u0631"}, +glK(){return"\u0625\u0635\u062f\u0627\u0631 \u0627\u0644\u0633\u064a\u0631\u0641\u0631"}, +gkB(){return"\u0627\u0644\u0625\u0639\u062f\u0627\u062f\u0627\u062a"}, +gkC(a){return"\u062a\u0631\u062a\u064a\u0628"}, +gfS(a){return"\u0627\u0644\u0645\u0635\u062f\u0631"}, +glN(){return"\u0641\u0631\u0632"}, +glO(){return"\u0627\u0644\u062d\u062f\u064a\u062b\u0629"}, +glP(){return"\u0627\u0644\u0634\u0627\u0626\u0639\u0629"}, +glQ(){return"\u0627\u0644\u0645\u0635\u0627\u062f\u0631"}, +gc0(a){return"\u0627\u0628\u062f\u0623"}, +gnY(){return"\u062f\u0627\u0643\u0646"}, +gnZ(){return"\u0641\u0627\u062a\u062d"}, +go_(){return"\u0627\u0644\u0646\u0638\u0627\u0645"}, +gp0(){return"\u0627\u0644\u064a\u0648\u0645"}, +gp7(){return"\u0623\u0645\u0633"}, +go1(){return"\u0625\u0644\u063a\u0627\u0621 \u0627\u0644\u062a\u062b\u0628\u064a\u062a"}, +go2(){return"\u062c\u0627\u0631\u064a \u0625\u0644\u063a\u0627\u0621 \u0627\u0644\u062a\u062b\u0628\u064a\u062a"}, +go3(){return"\u0645\u0624\u0644\u0641 \u0645\u062c\u0647\u0648\u0644"}, +go4(){return"\u0645\u0627\u0646\u062c\u0627 \u063a\u064a\u0631 \u0645\u0639\u0631\u0648\u0641\u0629"}, +go5(){return"\u0627\u0644\u0645\u0635\u062f\u0631 \u0645\u062c\u0647\u0648\u0644"}, +gjS(){return"\u063a\u064a\u0631 \u0645\u0642\u0631\u0648\u0621"}, +gio(a){return"\u062a\u062d\u062f\u064a\u062b"}, +go6(){return"\u0627\u0643\u062a\u0645\u0644 \u0627\u0644\u062a\u062d\u062f\u064a\u062b"}, +glx(){return"\u0627\u0644\u062a\u062d\u062f\u064a\u062b\u0627\u062a"}, +gly(){return"\u0645\u0644\u062e\u0635 \u0627\u0644\u062a\u062d\u062f\u064a\u062b\u0627\u062a"}, +glz(a){return"\u062c\u0627\u0631\u064a \u0627\u0644\u062a\u062d\u062f\u064a\u062b"}, +go7(){return"\u0627\u0633\u0645 \u0627\u0644\u0645\u0633\u062a\u062e\u062f\u0645"}, +o8(a,b){return"\u0627\u0644\u0625\u0635\u062f\u0627\u0631 "+b+" \u0645\u062a\u0627\u062d \u0644\u0640 "+a+"!!"}, +go9(){return"\u0639\u0631\u0636 \u0627\u0644\u0648\u064a\u0628"}, +goa(){return"\u0645\u0627 \u0627\u0644\u062c\u062f\u064a\u062f\u061f"}} +A.WL.prototype={ +gkL(){return"\xdcber"}, +gjX(){return"Kategorie hinzuf\xfcgen"}, +gm4(){return"Zur Bibliothek hinzuf\xfcgen"}, +gm7(){return""}, +gkO(){return"App Sprache"}, +gkP(){return"App Design"}, +gkQ(){return"Tachidesk Sorayomi"}, +gkR(a){return"Aussehen"}, +gkS(){return"Authentifizierungsart"}, +gm9(){return"Basic Auth"}, +gma(){return"Keine"}, +gjY(){return"Sichern und wiederherstellen"}, +gmb(){return"Indikatoren"}, +gfU(){return"Hat Lesezeichen"}, +gjB(){return"Suchen"}, +gj_(){return"Build time"}, +gmd(){return"Zwischenspeicher geleert"}, +gdP(a){return"Abbrechen"}, +gkW(){return"Kategorien"}, +gmf(){return"Kategorie aktualisierung"}, +gfW(a){return"Kanal"}, +mh(a){return"Kapitel "+A.h(a)}, +gmi(){return"Nach Abrufdatum"}, +gmj(){return"Nach Quelle"}, +gmk(){return"Nach Hochladedatum"}, +gml(){return"Nach Serveraktualisierungen suchen"}, +gmm(){return"Nach Aktualisierungen suchen"}, +gmn(){return"Zwischenspeicher leeren"}, +gmo(a){return"Endger\xe4t"}, +gmp(){return"Endger\xe4t Version"}, +gdU(a){return"Schlie\xdfen"}, +gh8(a){return"Abgeschlossen"}, +mu(a){return"'"+a+"' kopiert!"}, +gmw(){return"Bibliothek als Tachidesk backup sichern"}, +gmx(){return"Sicherung erstellen"}, +gkZ(a){return"Anmeldedaten"}, +my(a){return""+a+" days ago"}, +gjE(){return"Standard Kategorie, wenn neue Manga zur Bibliothek hinzugef\xfcgt werden"}, +gks(a){return"L\xf6schen"}, +gmz(){return""}, +gmA(){return""}, +gj0(){return""}, +gmB(a){return""}, +gl0(){return""}, +gmC(){return""}, +gmD(){return""}, +gmE(){return""}, +gfE(a){return""}, +gl1(){return""}, +gj2(){return""}, +gmF(){return""}, +gl3(){return""}, +gl4(){return""}, +mG(a){return""}, +mH(a){return""}, +gmI(){return""}, +gjH(){return""}, +gmJ(){return""}, +gmK(){return""}, +gmL(){return""}, +gmM(a){return""}, +ghx(){return""}, +ghd(a){return""}, +gmQ(a){return""}, +gkt(){return""}, +gkw(){return""}, +glD(){return""}, +glE(){return""}, +gmR(){return""}, +gfJ(){return""}, +gmT(){return""}, +gmU(a){return""}, +gmV(){return""}, +glb(a){return""}, +gmZ(){return""}, +ghz(){return"Bibltiotek"}, +geq(){return""}, +gn0(){return""}, +gn1(){return""}, +gn2(){return""}, +gn3(){return""}, +gn5(){return""}, +gn4(){return""}, +gn6(){return""}, +gn7(){return""}, +gn8(){return""}, +gn9(){return""}, +gna(){return""}, +gnb(){return""}, +gnc(){return""}, +gnd(){return""}, +ghA(){return""}, +glg(){return""}, +gne(){return""}, +gnf(){return""}, +lh(a,b){return""}, +gng(){return""}, +pR(a){return"Next: "+a}, +gkh(){return""}, +gni(){return""}, +gnj(){return""}, +glj(){return""}, +gnk(){return""}, +gki(){return""}, +lk(a){return""}, +gnl(){return""}, +gll(){return""}, +glm(){return""}, +gnm(){return""}, +gnn(){return""}, +gno(){return""}, +gnp(){return""}, +ln(a){return""}, +gjK(){return""}, +nr(a,b){return""}, +gns(a){return""}, +gij(a){return""}, +ghW(a){return""}, +pV(a){return"Previous: "+a}, +gnv(){return""}, +gny(){return""}, +gnz(){return""}, +gnA(){return""}, +gnw(){return""}, +gnx(){return""}, +gpW(){return"Tip: Enter '?' to see all commands"}, +glq(){return""}, +ghY(){return""}, +gnB(){return""}, +gnC(){return""}, +gnD(){return""}, +gnE(){return""}, +gnF(){return""}, +gnG(){return""}, +gnH(){return""}, +gnI(){return""}, +ghi(){return""}, +gnJ(){return""}, +gnK(){return""}, +gnL(){return""}, +gnM(){return""}, +gnQ(){return""}, +goY(){return"Swipe toggle"}, +goZ(){return"Swipe to change chapter in reader"}, +gnN(){return""}, +gnO(){return""}, +gnP(){return""}, +gpX(){return"Reader initial overlay"}, +gpY(){return u.A}, +gje(){return""}, +gjd(){return""}, +gnR(){return""}, +gfd(a){return""}, +gq_(a){return"Reload"}, +gls(a){return"Remove"}, +grd(){return"Remove from Library?"}, +gnT(a){return""}, +gnU(){return""}, +gnV(){return""}, +gnW(){return""}, +gnX(){return""}, +gh4(a){return""}, +gjP(){return""}, +gi_(){return""}, +giq(a){return""}, +glH(){return""}, +gkx(a){return""}, +gky(){return""}, +gpe(){return"Select next 10"}, +gpf(){return"Select Unread"}, +gpd(){return"Select in between"}, +gjp(){return""}, +gkA(){return""}, +glJ(){return""}, +gkz(){return""}, +glI(){return""}, +glK(){return""}, +gkB(){return""}, +gkC(a){return""}, +gfS(a){return""}, +glN(){return""}, +glO(){return""}, +glP(){return""}, +glQ(){return""}, +gc0(a){return""}, +gnY(){return""}, +gnZ(){return""}, +go_(){return""}, +gp0(){return"Today"}, +gp7(){return"Yesterday"}, +go1(){return""}, +go2(){return""}, +go3(){return""}, +go4(){return""}, +go5(){return""}, +gjS(){return""}, +gio(a){return""}, +go6(){return""}, +glx(){return""}, +gly(){return""}, +glz(a){return""}, +go7(){return""}, +o8(a,b){return""}, +go9(){return""}, +goa(){return""}} +A.WM.prototype={ +gkL(){return"About"}, +gjX(){return"Add Category"}, +gm4(){return"Add to Library"}, +gm7(){return"All Scanlators"}, +gkO(){return"App Language"}, +gkP(){return"App Theme"}, +gkQ(){return"Tachidesk Sorayomi"}, +gkR(a){return"Appearance"}, +gkS(){return"Authentication Type"}, +gm9(){return"Basic Auth"}, +gma(){return"None"}, +gjY(){return"Backup & Restore"}, +gmb(){return"Badges"}, +gfU(){return"Bookmarked"}, +gjB(){return"Browse"}, +gj_(){return"Build time"}, +gmd(){return"Cache Cleared"}, +gdP(a){return"Cancel"}, +gkW(){return"Categories"}, +gmf(){return"Category Update"}, +gfW(a){return"Channel"}, +mh(a){return"Chapter "+A.h(a)}, +gmi(){return"By Fetched Date"}, +gmj(){return"By Source"}, +gmk(){return"By Upload Date"}, +gml(){return"Check for Server updates"}, +gmm(){return"Check for updates"}, +gmn(){return"Clear Cache"}, +gmo(a){return"Client"}, +gmp(){return"Client version"}, +gdU(a){return"Close"}, +gh8(a){return"Completed"}, +mu(a){return"'"+a+"' Copied!"}, +gmw(){return"Backup library as a Tachidesk backup"}, +gmx(){return"Create Backup"}, +gkZ(a){return"Credentials"}, +my(a){return""+a+" days ago"}, +gjE(){return u.t}, +gks(a){return"Delete"}, +gmz(){return u.r}, +gmA(){return"Are you sure?"}, +gj0(){return"Discord"}, +gmB(a){return"Display"}, +gl0(){return"Display Mode"}, +gmC(){return"Descriptive List"}, +gmD(){return"Grid"}, +gmE(){return"List"}, +gfE(a){return"Downloaded"}, +gl1(){return"Downloads"}, +gj2(){return"Edit Category"}, +gmF(){return"Category name can't be Empty"}, +gl3(){return"Can't find the selected extension"}, +gl4(){return"File not selected!"}, +mG(a){return"Please select a file with "+a+" extension"}, +mH(a){return'Failed to open!\nCopying "'+a+'" to clipboard'}, +gmI(){return"Password can't be empty"}, +gjH(){return"Something went wrong!"}, +gmJ(){return"UserName can't be empty"}, +gmK(){return"Extension Installed!"}, +gmL(){return"Extension list is Empty"}, +gmM(a){return"Extensions"}, +ghx(){return"Failed"}, +ghd(a){return"Filter"}, +gmQ(a){return"Finished"}, +gkt(){return"General"}, +gkw(){return"GitHub"}, +glD(){return"Global Search"}, +glE(){return"Global Update"}, +gmR(){return"Help"}, +gfJ(){return"In library"}, +gmT(){return"Install"}, +gmU(a){return"Installing"}, +gmV(){return"Installing Extension"}, +glb(a){return"Languages"}, +gmZ(){return"Latest"}, +ghz(){return"Library"}, +geq(){return"Manga"}, +gn0(){return"Manga Grid Size"}, +gn1(){return"Manga Missing Sources"}, +gn2(){return"Alphabetical"}, +gn3(){return"Date Added"}, +gn5(){return"Unread"}, +gn4(){return"Last Read"}, +gn6(){return"Cancelled"}, +gn7(){return"Completed"}, +gn8(){return"Licensed"}, +gn9(){return"On Hiatus"}, +gna(){return"Ongoing"}, +gnb(){return"Publishing Finished"}, +gnc(){return"Unknown"}, +gnd(){return"Missing Extensions"}, +ghA(){return"Missing Trackers"}, +glg(){return"More"}, +gne(){return"Move to Bottom"}, +gnf(){return"Move to top"}, +lh(a,b){return a+": "+b}, +gng(){return"New update available"}, +pR(a){return"Next: "+a}, +gkh(){return u.G}, +gni(){return u.N}, +gnj(){return u.B}, +glj(){return"No Chapters found"}, +gnk(){return"No Downloads"}, +gki(){return"No Mangas Found"}, +lk(a){return""+a+" Chapters"}, +gnl(){return"No results found"}, +gll(){return"No sources found"}, +glm(){return"You're using the latest version"}, +gnm(){return"No updates found"}, +gnn(){return"Show NSFW extensions and sources"}, +gno(){return"18+"}, +gnp(){return u.u}, +ln(a){return""+a+" Selected"}, +gjK(){return"Obsolete"}, +nr(a,b){return"Page: "+b}, +gns(a){return"Password"}, +gij(a){return"Pause"}, +ghW(a){return"Pending"}, +pV(a){return"Previous: "+a}, +gnv(){return"Go to Category 'C'"}, +gny(){return u.R}, +gnz(){return"Go to Source 'S'"}, +gnA(){return"Search for Manga 'M' in Source 'S'"}, +gnw(){return"Go to Manga 'M' in Category 'C'"}, +gnx(){return u.k}, +gpW(){return"Tip: Enter '?' to see all commands"}, +glq(){return"Reader"}, +ghY(){return"Reading Mode"}, +gnB(){return"Continuous Horizontal (LTR)"}, +gnC(){return"Continuous Horizontal (RTL)"}, +gnD(){return"Continuous Vertical"}, +gnE(){return"Default"}, +gnF(){return"Single Horizontal (LTR)"}, +gnG(){return"Single Horizontal (RTL)"}, +gnH(){return"Single Vertical"}, +gnI(){return"Webtoon"}, +ghi(){return"Navigation layout"}, +gnJ(){return"Default"}, +gnK(){return"Disabled"}, +gnL(){return"Edge"}, +gnM(){return"Invert tapping"}, +gnQ(){return"Scroll animation"}, +goY(){return"Swipe toggle"}, +goZ(){return"Swipe to change chapter in reader"}, +gnN(){return"Kindle-ish"}, +gnO(){return"L Shaped"}, +gnP(){return"Right And Left"}, +gpX(){return"Reader initial overlay"}, +gpY(){return u.A}, +gje(){return"Reader Padding"}, +gjd(){return"Magnifier Size"}, +gnR(){return"Reddit"}, +gfd(a){return"Refresh"}, +gq_(a){return"Reload"}, +gls(a){return"Remove"}, +grd(){return"Remove from Library?"}, +gnT(a){return"Reset"}, +gnU(){return"Restore Tachidesk from backup"}, +gnV(){return"Restore Backup"}, +gnW(){return"Backup restored!"}, +gnX(){return"Restoring backup"}, +gh4(a){return"Resume"}, +gjP(){return"Retry"}, +gi_(){return"Running"}, +giq(a){return"Save"}, +glH(){return"Scanlators"}, +gkx(a){return"Search"}, +gky(){return"Searching for updates"}, +gpe(){return"Select next 10"}, +gpf(){return"Select Unread"}, +gpd(){return"Select in between"}, +gjp(){return"Server"}, +gkA(){return"Server URL"}, +glJ(){return"Server url"}, +gkz(){return"Server Port"}, +glI(){return"Server port"}, +glK(){return"Server version"}, +gkB(){return"Settings"}, +gkC(a){return"Sort"}, +gfS(a){return"Source"}, +glN(){return"Filter"}, +glO(){return"Latest"}, +glP(){return"Popular"}, +glQ(){return"Sources"}, +gc0(a){return"Start"}, +gnY(){return"Dark"}, +gnZ(){return"Light"}, +go_(){return"System"}, +gp0(){return"Today"}, +gp7(){return"Yesterday"}, +go1(){return"Uninstall"}, +go2(){return"Uninstalling"}, +go3(){return"Unknown Author"}, +go4(){return"Unknown Manga"}, +go5(){return"Unknown Source"}, +gjS(){return"Unread"}, +gio(a){return"Update"}, +go6(){return"Update Completed"}, +glx(){return"Updates"}, +gly(){return"Updates Summary"}, +glz(a){return"Updating"}, +go7(){return"User Name"}, +o8(a,b){return"Version "+b+" available for "+a+"!!"}, +go9(){return"Web View"}, +goa(){return"What's New?"}} +A.WN.prototype={ +gkL(){return"Informaci\xf3n"}, +gjX(){return"A\xf1adir categor\xeda"}, +gm4(){return"A\xf1adir a biblioteca"}, +gm7(){return"Todos los esc\xe1neres"}, +gkO(){return"Idioma de la aplicaci\xf3n"}, +gkP(){return"Tema de la aplicaci\xf3n"}, +gkQ(){return"Tachidesk Sorayomi"}, +gkR(a){return"Apariencia"}, +gkS(){return"Tipo de autenticaci\xf3n"}, +gm9(){return"Autenticaci\xf3n normal"}, +gma(){return"Ninguna"}, +gjY(){return"Copia de seguridad y restauracion"}, +gmb(){return"Insignias"}, +gfU(){return"Favoritos"}, +gjB(){return"Explorar"}, +gj_(){return"Fecha de creaci\xf3n"}, +gmd(){return"Cach\xe9 borrada"}, +gdP(a){return"Cancelar"}, +gkW(){return"Categor\xedas"}, +gmf(){return"Actualizar categor\xeda"}, +gfW(a){return"Canal"}, +mh(a){return"Capitulo "+A.h(a)}, +gmi(){return"Por fecha de b\xfasqueda"}, +gmj(){return"Por fuente"}, +gmk(){return"Por fecha de subida"}, +gml(){return"Buscar actualizaci\xf3n del servidor"}, +gmm(){return"Buscar actualizaciones"}, +gmn(){return"Borrar la cach\xe9"}, +gmo(a){return"Cliente"}, +gmp(){return"Versi\xf3n del cliente"}, +gdU(a){return"Cerrar"}, +gh8(a){return"Completado"}, +mu(a){return"'"+a+"' \xa1Copiado!"}, +gmw(){return"Copia de seguridad de biblioteca como copia de seguridad de tachidesk"}, +gmx(){return"Crear copia de seguridad"}, +gkZ(a){return"Credenciales"}, +my(a){return"Hace "+a+" d\xedas"}, +gjE(){return"Categor\xeda por defecto al a\xf1adir un nuevo manga a la biblioteca"}, +gks(a){return"Eliminar"}, +gmz(){return"\xa1Esto quitar\xe1 todos los mangas de esta categor\xeda y los a\xf1adir\xe1 en predeterminado!"}, +gmA(){return"\xbfEst\xe1s seguro?"}, +gj0(){return"Discord"}, +gmB(a){return"Vista"}, +gl0(){return"Modo de visualizaci\xf3n"}, +gmC(){return"Lista descriptiva"}, +gmD(){return"Cuadricula"}, +gmE(){return"Lista"}, +gfE(a){return"Descargados"}, +gl1(){return"Descargas"}, +gj2(){return"Editar categor\xeda"}, +gmF(){return"El nombre de la categor\xeda no puede estar vac\xedo"}, +gl3(){return"No se encontr\xf3 la extensi\xf3n seleccionada"}, +gl4(){return"Archivo no seleccionado!"}, +mG(a){return"Por favor, selecciona un archivo con la extensi\xf3n "+a}, +mH(a){return'\xa1Error al abrir!\nCopiando "'+a+'" al portapapeles'}, +gmI(){return"La contrase\xf1a no puede estar en blanco"}, +gjH(){return"\xa1Algo sali\xf3 mal!"}, +gmJ(){return"Tu nombre no puede estar en blanco"}, +gmK(){return"\xa1La extensi\xf3n ha sido instalada!"}, +gmL(){return"La lista de extensiones est\xe1 vac\xeda"}, +gmM(a){return"Extensiones"}, +ghx(){return"Fallido"}, +ghd(a){return"Filtro"}, +gmQ(a){return"Finalizado"}, +gkt(){return"General"}, +gkw(){return"GitHub"}, +glD(){return"B\xfasqueda global"}, +glE(){return"Actualizaci\xf3n global"}, +gmR(){return"Ayuda"}, +gfJ(){return"En biblioteca"}, +gmT(){return"Instalar"}, +gmU(a){return"Instalando"}, +gmV(){return"Instalando la extensi\xf3n"}, +glb(a){return"Idioma"}, +gmZ(){return"Reciente"}, +ghz(){return"Biblioteca"}, +geq(){return"Manga"}, +gn0(){return"Tama\xf1o de la cuadr\xedcula del manga"}, +gn1(){return"Fuentes del manga faltantes"}, +gn2(){return"Alfab\xe9tico"}, +gn3(){return"Fecha a\xf1adida"}, +gn5(){return"No le\xeddo"}, +gn4(){return"\xdaltima lectura"}, +gn6(){return"Cancelado"}, +gn7(){return"Completado"}, +gn8(){return"Con Licencia"}, +gn9(){return"En receso"}, +gna(){return"En publicaci\xf3n"}, +gnb(){return"Serie terminada"}, +gnc(){return"Desconocido"}, +gnd(){return"Extensiones faltantes"}, +ghA(){return"Rastreadores faltantes"}, +glg(){return"Mas"}, +gne(){return"Mover al fondo"}, +gnf(){return"Mover al principio"}, +lh(a,b){return a+": "+b}, +gng(){return"Nueva actualizaci\xf3n disponible"}, +pR(a){return"Siguiente: "+a}, +gkh(){return"No tienes ninguna categor\xeda.\n(Tip:Presiona el bot\xf3n plus para crear uno y organizar tu biblioteca)"}, +gni(){return"No tienes ninguna categor\xeda.\nCrea uno en ajustes para organizar tu biblioteca"}, +gnj(){return"No hay ning\xfan manga en esta categor\xeda.\n(Tip: \xa1Mira tus b\xfasquedas y filtros!)"}, +glj(){return"No se encontraron los cap\xedtulos"}, +gnk(){return"No hay descargas"}, +gki(){return"No se encontraron los mangas"}, +lk(a){return""+a+" capitulos"}, +gnl(){return"Sin resultados"}, +gll(){return"No se encontraron fuentes"}, +glm(){return"Estas usando la \xfaltima versi\xf3n"}, +gnm(){return"Sin actualizaciones"}, +gnn(){return"Mostrar fuentes y extensiones NSFW"}, +gno(){return"18+"}, +gnp(){return"Esto no evita que extensiones no oficiales o posiblemente marcadas incorrectamente muestren contenido para adultos (18+) en la aplicaci\xf3n"}, +ln(a){return""+a+" seleccionado"}, +gjK(){return"Obsoleta"}, +nr(a,b){return"P\xe1gina: "+b}, +gns(a){return"Contrase\xf1a"}, +gij(a){return"Pausar"}, +ghW(a){return"Pendiente"}, +pV(a){return"Anterior: "+a}, +gnv(){return"Ir a la categor\xeda 'C'"}, +gny(){return"Busca la consulta X (los resultados se basan en el contexto de la pantalla)"}, +gnz(){return"Ir a la fuente 'S'"}, +gnA(){return"Buscar el manga 'M' en la fuente 'S'"}, +gnw(){return"Ir al manga 'M' en la categor\xeda 'C'"}, +gnx(){return'Ir al cap\xedtulo "CN" del manga "M" en la categor\xeda "C"'}, +gpW(){return"Consejo: Introduzca '?' para ver todos los comandos"}, +glq(){return"Lector"}, +ghY(){return"Modo de lectura"}, +gnB(){return"Horizontal Continuo (IZQ-DER)"}, +gnC(){return"Horizontal Continuo (DER-IZQ)"}, +gnD(){return"Vertical Continuo"}, +gnE(){return"Predeterminado"}, +gnF(){return"Horizontal Individual (IZQ-DER)"}, +gnG(){return"Horizontal Individual (DER-IZQ)"}, +gnH(){return"Horizontal Individual"}, +gnI(){return"Webtoon"}, +ghi(){return"Tipo de navegaci\xf3n"}, +gnJ(){return"Predeterminado"}, +gnK(){return"Deshabilitado"}, +gnL(){return"Borde"}, +gnM(){return"Invertir el toque"}, +gnQ(){return"Animaci\xf3n del desplazamiento"}, +goY(){return"Deslizar el dedo"}, +goZ(){return"Deslizar para cambiar de cap\xedtulo en el lector"}, +gnN(){return"Estilo Kindle"}, +gnO(){return"En forma de L"}, +gnP(){return"Derecha e Izquierda"}, +gpX(){return"Superposici\xf3n inicial del lector"}, +gpY(){return"Muestra el t\xedtulo y los ajustes r\xe1pidos al abrir un cap\xedtulo"}, +gje(){return"Anotaciones del lector"}, +gjd(){return"Tama\xf1o de la lupa"}, +gnR(){return"Reddit"}, +gfd(a){return"Refrescar"}, +gq_(a){return"Recargar"}, +gls(a){return"Quitar"}, +grd(){return"\xbfQuitar de la biblioteca?"}, +gnT(a){return"Restablecer"}, +gnU(){return"Restaurar Tachidesk desde copia de seguridad"}, +gnV(){return"Restaurar copia de seguridad"}, +gnW(){return"\xa1Copia de seguridad restaurada!"}, +gnX(){return"Restaurando la copia de seguridad"}, +gh4(a){return"Reanudar"}, +gjP(){return"Reintentar"}, +gi_(){return"Ejecutando"}, +giq(a){return"Guardar"}, +glH(){return"Scans"}, +gkx(a){return"Buscar"}, +gky(){return"Buscando actualizaciones"}, +gpe(){return"Seleccionar los 10 siguientes"}, +gpf(){return"Seleccionar los no le\xeddos"}, +gpd(){return"Seleccionar entre"}, +gjp(){return"Servidor"}, +gkA(){return"Enlace del servidor"}, +glJ(){return"Direcci\xf3n Url del servidor"}, +gkz(){return"Puerto del servidor"}, +glI(){return"Puerto del servidor"}, +glK(){return"Version del servidor"}, +gkB(){return"Ajustes"}, +gkC(a){return"Ordenar"}, +gfS(a){return"Fuente"}, +glN(){return"Filtro"}, +glO(){return"Reciente"}, +glP(){return"Popular"}, +glQ(){return"Fuentes"}, +gc0(a){return"Empezar"}, +gnY(){return"Oscuro"}, +gnZ(){return"Claro"}, +go_(){return"Sistema"}, +gp0(){return"Hoy"}, +gp7(){return"Ayer"}, +go1(){return"Desinstalar"}, +go2(){return"Desinstalando"}, +go3(){return"Autor desconocido"}, +go4(){return"Manga desconocido"}, +go5(){return"Fuente desconocida"}, +gjS(){return"Sin leer"}, +gio(a){return"Actualizar"}, +go6(){return"Actualizaci\xf3n completa"}, +glx(){return"Actualizaciones"}, +gly(){return"Resumen de actualizaciones"}, +glz(a){return"Actualizando"}, +go7(){return"Nombre de usuario"}, +o8(a,b){return"La versi\xf3n "+b+" est\xe1 disponible para "+a+"!!"}, +go9(){return"WebView"}, +goa(){return"\xbfQu\xe9 hay de nuevo?"}} +A.WO.prototype={ +gkL(){return"\xc0 propos"}, +gjX(){return"Ajouter une cat\xe9gorie"}, +gm4(){return"Ajouter \xe0 la biblioth\xe8que"}, +gm7(){return""}, +gkO(){return"Langue de l'application"}, +gkP(){return"Th\xe8me de l'application"}, +gkQ(){return"Tachidesk Sorayomi"}, +gkR(a){return"Apparence"}, +gkS(){return"Type d'authentification"}, +gm9(){return"Authentification simple"}, +gma(){return"Aucune"}, +gjY(){return"Sauvegarde et restauration"}, +gmb(){return"Badges"}, +gfU(){return"Marque-pages"}, +gjB(){return"Parcourir"}, +gj_(){return"Temps d'ex\xe9cution"}, +gmd(){return"Cache effac\xe9"}, +gdP(a){return"Annuler"}, +gkW(){return"Cat\xe9gories"}, +gmf(){return"Mise \xe0 jour de la cat\xe9gorie"}, +gfW(a){return"Canal"}, +mh(a){return"Chapitre "+A.h(a)}, +gmi(){return"Par donn\xe9es r\xe9cup\xe9r\xe9es"}, +gmj(){return"Par source"}, +gmk(){return"Par date d'import"}, +gml(){return"V\xe9rifier les mises \xe0 jour du serveur"}, +gmm(){return"V\xe9rifier les mises \xe0 jour"}, +gmn(){return"Effacer le cache"}, +gmo(a){return"Client"}, +gmp(){return"Version du client"}, +gdU(a){return"Fermer"}, +gh8(a){return"Termin\xe9"}, +mu(a){return"\xab\xa0"+a+"\xa0\xbb copi\xe9\xa0!"}, +gmw(){return"Sauvegarder la biblioth\xe8que en tant que sauvegarde Tachidesk"}, +gmx(){return"Cr\xe9er une sauvegarde"}, +gkZ(a){return"Identifiants"}, +my(a){return""+a+" days ago"}, +gjE(){return"Cat\xe9gorie par d\xe9faut lors de l'ajout d'un nouveau manga \xe0 la biblioth\xe8que"}, +gks(a){return"Supprimer"}, +gmz(){return"Tous les mangas de cette cat\xe9gorie seront ainsi ramen\xe9s \xe0 leur valeur par d\xe9faut\xa0!"}, +gmA(){return"Voulez-vous continuer\xa0?"}, +gj0(){return"Discord"}, +gmB(a){return"Affichage"}, +gl0(){return"Mode d'affichage"}, +gmC(){return"Liste descriptive"}, +gmD(){return"Grille"}, +gmE(){return"Liste"}, +gfE(a){return"T\xe9l\xe9charg\xe9"}, +gl1(){return"T\xe9l\xe9chargements"}, +gj2(){return"Modifier la cat\xe9gorie"}, +gmF(){return"Le nom de la cat\xe9gorie ne peut pas \xeatre vide"}, +gl3(){return"Impossible de trouver l'extension s\xe9lectionn\xe9e"}, +gl4(){return"Aucun fichier s\xe9lectionn\xe9\xa0!"}, +mG(a){return"Veuillez s\xe9lectionner un fichier avec l'extension "+a}, +mH(a){return"\xc9chec de l'ouverture\xa0!\nCopie de \xab\xa0"+a+"\xa0\xbb dans le presse-papier"}, +gmI(){return"Le mot de passe ne peut pas \xeatre vide"}, +gjH(){return"Une erreur s'est produite\xa0!"}, +gmJ(){return"Le nom d'utilisateur ne peut pas \xeatre vide"}, +gmK(){return"Extension install\xe9e\xa0!"}, +gmL(){return"La liste des extensions est vide"}, +gmM(a){return"Extensions"}, +ghx(){return"\xc9chec"}, +ghd(a){return"Filtrer"}, +gmQ(a){return"Termin\xe9"}, +gkt(){return"G\xe9n\xe9ral"}, +gkw(){return"GitHub"}, +glD(){return"Recherche globale"}, +glE(){return"Mise \xe0 jour globale"}, +gmR(){return"Aide"}, +gfJ(){return"Dans la biblioth\xe8que"}, +gmT(){return"Installer"}, +gmU(a){return"Installation"}, +gmV(){return"Installation de l'extension"}, +glb(a){return"Langues"}, +gmZ(){return"Le plus r\xe9cent"}, +ghz(){return"Biblioth\xe8que"}, +geq(){return"Manga"}, +gn0(){return"Taille de la grille des mangas"}, +gn1(){return"Sources manquantes des mangas"}, +gn2(){return"Ordre alphab\xe9tique"}, +gn3(){return"Date d'ajout"}, +gn5(){return"Non lu"}, +gn4(){return"Date de lecture"}, +gn6(){return"Annul\xe9"}, +gn7(){return"Termin\xe9"}, +gn8(){return"Sous licence"}, +gn9(){return"En suspens"}, +gna(){return"En cours"}, +gnb(){return"Publication termin\xe9e"}, +gnc(){return"Inconnu"}, +gnd(){return"Extensions manquantes"}, +ghA(){return"Pisteurs manquants"}, +glg(){return"Plus"}, +gne(){return"D\xe9placer vers le bas"}, +gnf(){return"D\xe9placer vers le haut"}, +lh(a,b){return a+"\xa0: "+b}, +gng(){return"Nouvelle mise \xe0 jour disponible"}, +pR(a){return"Next: "+a}, +gkh(){return"Vous n'avez aucune cat\xe9gorie.\xa0\n(Conseil\xa0: Appuyez sur le bouton Plus pour en cr\xe9er une et organiser votre biblioth\xe8que)"}, +gni(){return"Vous n'avez aucune cat\xe9gorie. \nCr\xe9ez-en une dans les param\xe8tres pour organiser votre biblioth\xe8que"}, +gnj(){return"Aucun manga trouv\xe9 dans cette cat\xe9gorie. \n(Conseil\xa0: V\xe9rifiez votre recherche et vos filtres\xa0!)"}, +glj(){return"Aucun chapitre trouv\xe9"}, +gnk(){return"Aucun t\xe9l\xe9chargement"}, +gki(){return"Aucun manga trouv\xe9"}, +lk(a){return""+a+" chapitres"}, +gnl(){return"Aucun r\xe9sultat trouv\xe9"}, +gll(){return"Aucune source trouv\xe9e"}, +glm(){return"Vous utilisez la derni\xe8re version"}, +gnm(){return"Aucune mise \xe0 jour disponible"}, +gnn(){return"Afficher les extensions et les sources comportant du contenu explicite"}, +gno(){return"18+"}, +gnp(){return"Cela n'emp\xeache pas les extensions non officielles ou potentiellement signal\xe9es de mani\xe8re incorrecte de faire appara\xeetre du contenu explicite (18+) dans l'application"}, +ln(a){return""+a+" s\xe9lectionn\xe9"}, +gjK(){return"Obsol\xe8te"}, +nr(a,b){return"Page\xa0: "+b}, +gns(a){return"Mot de passe"}, +gij(a){return"Mettre en pause"}, +ghW(a){return"En attente"}, +pV(a){return"Previous: "+a}, +gnv(){return""}, +gny(){return""}, +gnz(){return""}, +gnA(){return""}, +gnw(){return""}, +gnx(){return""}, +gpW(){return"Tip: Enter '?' to see all commands"}, +glq(){return"Lecteur"}, +ghY(){return"Mode de lecture"}, +gnB(){return"Horizontal en continu (De gauche \xe0 droite)"}, +gnC(){return"Horizontal en continu (De droite \xe0 gauche)"}, +gnD(){return"Vertical en continu"}, +gnE(){return"Par d\xe9faut"}, +gnF(){return"Horizontal simple (De gauche \xe0 droite)"}, +gnG(){return"Horizontal simple (De droite \xe0 gauche)"}, +gnH(){return"Vertical simple"}, +gnI(){return"Webtoon"}, +ghi(){return"Disposition de la navigation"}, +gnJ(){return"Par d\xe9faut"}, +gnK(){return"D\xe9sactiv\xe9e"}, +gnL(){return""}, +gnM(){return""}, +gnQ(){return"Animation de d\xe9filement"}, +goY(){return"Swipe toggle"}, +goZ(){return"Swipe to change chapter in reader"}, +gnN(){return"Fa\xe7on Kindle"}, +gnO(){return"En forme de L"}, +gnP(){return"\xc0 droite et \xe0 gauche"}, +gpX(){return"Reader initial overlay"}, +gpY(){return u.A}, +gje(){return"Marges du lecteur"}, +gjd(){return"Taille de la loupe"}, +gnR(){return"Reddit"}, +gfd(a){return"Actualiser"}, +gq_(a){return"Reload"}, +gls(a){return"Remove"}, +grd(){return"Remove from Library?"}, +gnT(a){return"R\xe9initialiser"}, +gnU(){return"Restaurer Tachidesk \xe0 partir d'une sauvegarde"}, +gnV(){return"Restaurer la sauvegarde"}, +gnW(){return"La sauvegarde a \xe9t\xe9 restaur\xe9e\xa0!"}, +gnX(){return"Restauration de la sauvegarde"}, +gh4(a){return"Reprendre"}, +gjP(){return"R\xe9essayer"}, +gi_(){return"En cours"}, +giq(a){return"Enregistrer"}, +glH(){return""}, +gkx(a){return"Rechercher"}, +gky(){return"Recherche de mises \xe0 jour"}, +gpe(){return"Select next 10"}, +gpf(){return"Select Unread"}, +gpd(){return"Select in between"}, +gjp(){return"Serveur"}, +gkA(){return"URL du serveur"}, +glJ(){return"Saisissez l'URL du serveur"}, +gkz(){return""}, +glI(){return""}, +glK(){return"Version du serveur"}, +gkB(){return"Param\xe8tres"}, +gkC(a){return"Trier"}, +gfS(a){return"Source"}, +glN(){return"Filtrer"}, +glO(){return"Le plus r\xe9cent"}, +glP(){return"Populaire"}, +glQ(){return"Sources"}, +gc0(a){return"Commencer"}, +gnY(){return"Sombre"}, +gnZ(){return"Clair"}, +go_(){return"Syst\xe8me"}, +gp0(){return"Today"}, +gp7(){return"Yesterday"}, +go1(){return"D\xe9sinstaller"}, +go2(){return"D\xe9sinstallation"}, +go3(){return"Auteur inconnu"}, +go4(){return"Manga inconnu"}, +go5(){return"Source inconnue"}, +gjS(){return"Non lu"}, +gio(a){return"Mettre \xe0 jour"}, +go6(){return"Mise \xe0 jour termin\xe9e"}, +glx(){return"Mises \xe0 jour"}, +gly(){return"R\xe9capitulatif des mises \xe0 jour"}, +glz(a){return"Mise \xe0 jour en cours"}, +go7(){return"Nom d'utilisateur"}, +o8(a,b){return"Version "+b+" disponible pour l'application "+a+"\xa0!"}, +go9(){return"Vue Web"}, +goa(){return"Quoi de neuf\xa0?"}} +A.WP.prototype={ +gkL(){return"\u3053\u306e\u30a2\u30d7\u30ea\u306b\u3064\u3044\u3066"}, +gjX(){return"\u30ab\u30c6\u30b4\u30ea\u30fc\u3092\u8ffd\u52a0"}, +gm4(){return"\u30e9\u30a4\u30d6\u30e9\u30ea\u306b\u8ffd\u52a0"}, +gm7(){return"All Scanlators"}, +gkO(){return"App Language"}, +gkP(){return"App Theme"}, +gkQ(){return"Tachidesk Sorayomi"}, +gkR(a){return"Appearance"}, +gkS(){return"Authentication Type"}, +gm9(){return"Basic Auth"}, +gma(){return"None"}, +gjY(){return"Backup & Restore"}, +gmb(){return"Badges"}, +gfU(){return"Bookmarked"}, +gjB(){return"Browse"}, +gj_(){return"Build time"}, +gmd(){return"Cache Cleared"}, +gdP(a){return"Cancel"}, +gkW(){return"Categories"}, +gmf(){return"Category Update"}, +gfW(a){return"Channel"}, +mh(a){return"Chapter "+A.h(a)}, +gmi(){return"By Fetched Date"}, +gmj(){return"By Source"}, +gmk(){return"By Upload Date"}, +gml(){return"Check for Server updates"}, +gmm(){return"Check for updates"}, +gmn(){return"Clear Cache"}, +gmo(a){return"Client"}, +gmp(){return"Client version"}, +gdU(a){return"Close"}, +gh8(a){return"Completed"}, +mu(a){return"'"+a+"' Copied!"}, +gmw(){return"Backup library as a Tachidesk backup"}, +gmx(){return"Create Backup"}, +gkZ(a){return"Credentials"}, +my(a){return""+a+" days ago"}, +gjE(){return u.t}, +gks(a){return"Delete"}, +gmz(){return u.r}, +gmA(){return"Are you sure?"}, +gj0(){return"Discord"}, +gmB(a){return"Display"}, +gl0(){return"Display Mode"}, +gmC(){return"Descriptive List"}, +gmD(){return"Grid"}, +gmE(){return"List"}, +gfE(a){return"Downloaded"}, +gl1(){return"Downloads"}, +gj2(){return"Edit Category"}, +gmF(){return"Category name can't be Empty"}, +gl3(){return"Can't find the selected extension"}, +gl4(){return"File not selected!"}, +mG(a){return"Please select a file with "+a+" extension"}, +mH(a){return'Failed to open!\nCopying "'+a+'" to clipboard'}, +gmI(){return"Password can't be empty"}, +gjH(){return"Something went wrong!"}, +gmJ(){return"UserName can't be empty"}, +gmK(){return"Extension Installed!"}, +gmL(){return"Extension list is Empty"}, +gmM(a){return"Extensions"}, +ghx(){return"Failed"}, +ghd(a){return"Filter"}, +gmQ(a){return"Finished"}, +gkt(){return"General"}, +gkw(){return"GitHub"}, +glD(){return"Global Search"}, +glE(){return"Global Update"}, +gmR(){return"Help"}, +gfJ(){return"In library"}, +gmT(){return"Install"}, +gmU(a){return"Installing"}, +gmV(){return"Installing Extension"}, +glb(a){return"Languages"}, +gmZ(){return"Latest"}, +ghz(){return"Library"}, +geq(){return"Manga"}, +gn0(){return"Manga Grid Size"}, +gn1(){return"Manga Missing Sources"}, +gn2(){return"Alphabetical"}, +gn3(){return"Date Added"}, +gn5(){return"Unread"}, +gn4(){return"Last Read"}, +gn6(){return"Cancelled"}, +gn7(){return"Completed"}, +gn8(){return"Licensed"}, +gn9(){return"On Hiatus"}, +gna(){return"Ongoing"}, +gnb(){return"Publishing Finished"}, +gnc(){return"Unknown"}, +gnd(){return"Missing Extensions"}, +ghA(){return"Missing Trackers"}, +glg(){return"More"}, +gne(){return"Move to Bottom"}, +gnf(){return"Move to top"}, +lh(a,b){return a+": "+b}, +gng(){return"New update available"}, +pR(a){return"Next: "+a}, +gkh(){return u.G}, +gni(){return u.N}, +gnj(){return u.B}, +glj(){return"No Chapters found"}, +gnk(){return"No Downloads"}, +gki(){return"No Mangas Found"}, +lk(a){return""+a+" Chapters"}, +gnl(){return"No results found"}, +gll(){return"No sources found"}, +glm(){return"You're using the latest version"}, +gnm(){return"No updates found"}, +gnn(){return"Show NSFW extensions and sources"}, +gno(){return"18+"}, +gnp(){return u.u}, +ln(a){return""+a+" Selected"}, +gjK(){return"Obsolete"}, +nr(a,b){return"Page: "+b}, +gns(a){return"Password"}, +gij(a){return"Pause"}, +ghW(a){return"Pending"}, +pV(a){return"Previous: "+a}, +gnv(){return"Go to Category 'C'"}, +gny(){return u.R}, +gnz(){return"Go to Source 'S'"}, +gnA(){return"Search for Manga 'M' in Source 'S'"}, +gnw(){return"Go to Manga 'M' in Category 'C'"}, +gnx(){return u.k}, +gpW(){return"Tip: Enter '?' to see all commands"}, +glq(){return"Reader"}, +ghY(){return"Reading Mode"}, +gnB(){return"Continuous Horizontal (LTR)"}, +gnC(){return"Continuous Horizontal (RTL)"}, +gnD(){return"Continuous Vertical"}, +gnE(){return"Default"}, +gnF(){return"Single Horizontal (LTR)"}, +gnG(){return"Single Horizontal (RTL)"}, +gnH(){return"Single Vertical"}, +gnI(){return"Webtoon"}, +ghi(){return"Navigation layout"}, +gnJ(){return"Default"}, +gnK(){return"Disabled"}, +gnL(){return"Edge"}, +gnM(){return"Invert tapping"}, +gnQ(){return"Scroll animation"}, +goY(){return"Swipe toggle"}, +goZ(){return"Swipe to change chapter in reader"}, +gnN(){return"Kindle-ish"}, +gnO(){return"L Shaped"}, +gnP(){return"Right And Left"}, +gpX(){return"Reader initial overlay"}, +gpY(){return u.A}, +gje(){return"Reader Padding"}, +gjd(){return"Magnifier Size"}, +gnR(){return"Reddit"}, +gfd(a){return"Refresh"}, +gq_(a){return"Reload"}, +gls(a){return"Remove"}, +grd(){return"Remove from Library?"}, +gnT(a){return"Reset"}, +gnU(){return"Restore Tachidesk from backup"}, +gnV(){return"Restore Backup"}, +gnW(){return"Backup restored!"}, +gnX(){return"Restoring backup"}, +gh4(a){return"Resume"}, +gjP(){return"Retry"}, +gi_(){return"Running"}, +giq(a){return"Save"}, +glH(){return"Scanlators"}, +gkx(a){return"Search"}, +gky(){return"Searching for updates"}, +gpe(){return"Select next 10"}, +gpf(){return"Select Unread"}, +gpd(){return"Select in between"}, +gjp(){return"Server"}, +gkA(){return"Server URL"}, +glJ(){return"Server url"}, +gkz(){return"Server Port"}, +glI(){return"Server port"}, +glK(){return"Server version"}, +gkB(){return"Settings"}, +gkC(a){return"Sort"}, +gfS(a){return"Source"}, +glN(){return"Filter"}, +glO(){return"Latest"}, +glP(){return"Popular"}, +glQ(){return"Sources"}, +gc0(a){return"Start"}, +gnY(){return"Dark"}, +gnZ(){return"Light"}, +go_(){return"System"}, +gp0(){return"Today"}, +gp7(){return"Yesterday"}, +go1(){return"Uninstall"}, +go2(){return"Uninstalling"}, +go3(){return"Unknown Author"}, +go4(){return"Unknown Manga"}, +go5(){return"Unknown Source"}, +gjS(){return"Unread"}, +gio(a){return"Update"}, +go6(){return"Update Completed"}, +glx(){return"Updates"}, +gly(){return"Updates Summary"}, +glz(a){return"Updating"}, +go7(){return"User Name"}, +o8(a,b){return"Version "+b+" available for "+a+"!!"}, +go9(){return"Web View"}, +goa(){return"What's New?"}} +A.WQ.prototype={ +gkL(){return"\uc815\ubcf4"}, +gjX(){return"\uce74\ud14c\uace0\ub9ac \ucd94\uac00"}, +gm4(){return"\ub77c\uc774\ube0c\ub7ec\ub9ac\uc5d0 \ucd94\uac00"}, +gm7(){return"All Scanlators"}, +gkO(){return"\uc571 \uc5b8\uc5b4"}, +gkP(){return"\uc571 \ud14c\ub9c8"}, +gkQ(){return"Tachidesk Sorayomi"}, +gkR(a){return"\ubaa8\uc591"}, +gkS(){return"\uc778\uc99d \uc720\ud615"}, +gm9(){return"\uae30\ubcf8 \uc778\uc99d"}, +gma(){return"\uc5c6\uc74c"}, +gjY(){return"\ubc31\uc5c5 \ubc0f \ubcf5\uc6d0"}, +gmb(){return"Badges"}, +gfU(){return"\ubd81\ub9c8\ud06c \ub428"}, +gjB(){return"\ucc3e\uc544\ubcf4\uae30"}, +gj_(){return"\ub9cc\ub4e4\uc5b4\uc9c4 \uc2dc\uac04"}, +gmd(){return"\uce90\uc2dc \uc815\ub9ac"}, +gdP(a){return"\ucde8\uc18c"}, +gkW(){return"\uce74\ud14c\uace0\ub9ac"}, +gmf(){return"\uce74\ud14c\uace0\ub9ac \uc5c5\ub370\uc774\ud2b8"}, +gfW(a){return"\ubc84\uc804"}, +mh(a){return"\ucc55\ud130 "+A.h(a)}, +gmi(){return"\ud68c\ucc28 \ubc88\ud638 \uae30\uc900"}, +gmj(){return"\uc18c\uc2a4 \uae30\uc900"}, +gmk(){return"\uc5c5\ub85c\ub4dc \ub0a0\uc9dc \uae30\uc900"}, +gml(){return"\uc11c\ubc84 \uc5c5\ub370\uc774\ud2b8 \ud655\uc778"}, +gmm(){return"\uc5c5\ub370\uc774\ud2b8 \ud655\uc778"}, +gmn(){return"\uce90\uc2dc \uc815\ub9ac"}, +gmo(a){return"Client"}, +gmp(){return"Client version"}, +gdU(a){return"\ub2eb\uae30"}, +gh8(a){return"\uc644\ub8cc\ub428"}, +mu(a){return"'"+a+"' \ubcf5\uc0ac\ub428!"}, +gmw(){return"Backup library as a Tachidesk backup"}, +gmx(){return"\ubc31\uc5c5 \uc0dd\uc131"}, +gkZ(a){return"\uc99d\uba85"}, +my(a){return""+a+" \uc77c \uc9c0\ub0a8"}, +gjE(){return u.t}, +gks(a){return"Delete"}, +gmz(){return u.r}, +gmA(){return"Are you sure?"}, +gj0(){return"Discord"}, +gmB(a){return"Display"}, +gl0(){return"Display Mode"}, +gmC(){return"Descriptive List"}, +gmD(){return"Grid"}, +gmE(){return"List"}, +gfE(a){return"Downloaded"}, +gl1(){return"Downloads"}, +gj2(){return"Edit Category"}, +gmF(){return"Category name can't be Empty"}, +gl3(){return"Can't find the selected extension"}, +gl4(){return"File not selected!"}, +mG(a){return"Please select a file with "+a+" extension"}, +mH(a){return'Failed to open!\nCopying "'+a+'" to clipboard'}, +gmI(){return"Password can't be empty"}, +gjH(){return"Something went wrong!"}, +gmJ(){return"UserName can't be empty"}, +gmK(){return"Extension Installed!"}, +gmL(){return"Extension list is Empty"}, +gmM(a){return"Extensions"}, +ghx(){return"Failed"}, +ghd(a){return"Filter"}, +gmQ(a){return"Finished"}, +gkt(){return"General"}, +gkw(){return"GitHub"}, +glD(){return"Global Search"}, +glE(){return"Global Update"}, +gmR(){return"Help"}, +gfJ(){return"In library"}, +gmT(){return"Install"}, +gmU(a){return"Installing"}, +gmV(){return"Installing Extension"}, +glb(a){return"Languages"}, +gmZ(){return"Latest"}, +ghz(){return"Library"}, +geq(){return"Manga"}, +gn0(){return"Manga Grid Size"}, +gn1(){return"Manga Missing Sources"}, +gn2(){return"Alphabetical"}, +gn3(){return"Date Added"}, +gn5(){return"Unread"}, +gn4(){return"Last Read"}, +gn6(){return"Cancelled"}, +gn7(){return"Completed"}, +gn8(){return"Licensed"}, +gn9(){return"On Hiatus"}, +gna(){return"Ongoing"}, +gnb(){return"Publishing Finished"}, +gnc(){return"Unknown"}, +gnd(){return"Missing Extensions"}, +ghA(){return"Missing Trackers"}, +glg(){return"More"}, +gne(){return"Move to Bottom"}, +gnf(){return"Move to top"}, +lh(a,b){return a+": "+b}, +gng(){return"New update available"}, +pR(a){return"Next: "+a}, +gkh(){return u.G}, +gni(){return u.N}, +gnj(){return u.B}, +glj(){return"No Chapters found"}, +gnk(){return"No Downloads"}, +gki(){return"No Mangas Found"}, +lk(a){return""+a+" Chapters"}, +gnl(){return"No results found"}, +gll(){return"No sources found"}, +glm(){return"You're using the latest version"}, +gnm(){return"No updates found"}, +gnn(){return"Show NSFW extensions and sources"}, +gno(){return"18+"}, +gnp(){return u.u}, +ln(a){return""+a+" Selected"}, +gjK(){return"Obsolete"}, +nr(a,b){return"Page: "+b}, +gns(a){return"Password"}, +gij(a){return"Pause"}, +ghW(a){return"Pending"}, +pV(a){return"Previous: "+a}, +gnv(){return"Go to Category 'C'"}, +gny(){return u.R}, +gnz(){return"Go to Source 'S'"}, +gnA(){return"Search for Manga 'M' in Source 'S'"}, +gnw(){return"Go to Manga 'M' in Category 'C'"}, +gnx(){return u.k}, +gpW(){return"Tip: Enter '?' to see all commands"}, +glq(){return"Reader"}, +ghY(){return"Reading Mode"}, +gnB(){return"Continuous Horizontal (LTR)"}, +gnC(){return"Continuous Horizontal (RTL)"}, +gnD(){return"Continuous Vertical"}, +gnE(){return"Default"}, +gnF(){return"Single Horizontal (LTR)"}, +gnG(){return"Single Horizontal (RTL)"}, +gnH(){return"Single Vertical"}, +gnI(){return"Webtoon"}, +ghi(){return"Navigation layout"}, +gnJ(){return"Default"}, +gnK(){return"Disabled"}, +gnL(){return"Edge"}, +gnM(){return"Invert tapping"}, +gnQ(){return"Scroll animation"}, +goY(){return"Swipe toggle"}, +goZ(){return"Swipe to change chapter in reader"}, +gnN(){return"Kindle-ish"}, +gnO(){return"L Shaped"}, +gnP(){return"Right And Left"}, +gpX(){return"Reader initial overlay"}, +gpY(){return u.A}, +gje(){return"Reader Padding"}, +gjd(){return"Magnifier Size"}, +gnR(){return"Reddit"}, +gfd(a){return"Refresh"}, +gq_(a){return"Reload"}, +gls(a){return"Remove"}, +grd(){return"Remove from Library?"}, +gnT(a){return"Reset"}, +gnU(){return"Restore Tachidesk from backup"}, +gnV(){return"Restore Backup"}, +gnW(){return"Backup restored!"}, +gnX(){return"Restoring backup"}, +gh4(a){return"Resume"}, +gjP(){return"Retry"}, +gi_(){return"Running"}, +giq(a){return"Save"}, +glH(){return"Scanlators"}, +gkx(a){return"Search"}, +gky(){return"Searching for updates"}, +gpe(){return"Select next 10"}, +gpf(){return"Select Unread"}, +gpd(){return"Select in between"}, +gjp(){return"Server"}, +gkA(){return"Server URL"}, +glJ(){return"Server url"}, +gkz(){return"Server Port"}, +glI(){return"Server port"}, +glK(){return"Server version"}, +gkB(){return"Settings"}, +gkC(a){return"Sort"}, +gfS(a){return"Source"}, +glN(){return"Filter"}, +glO(){return"Latest"}, +glP(){return"Popular"}, +glQ(){return"Sources"}, +gc0(a){return"Start"}, +gnY(){return"Dark"}, +gnZ(){return"Light"}, +go_(){return"System"}, +gp0(){return"Today"}, +gp7(){return"Yesterday"}, +go1(){return"Uninstall"}, +go2(){return"Uninstalling"}, +go3(){return"Unknown Author"}, +go4(){return"Unknown Manga"}, +go5(){return"Unknown Source"}, +gjS(){return"Unread"}, +gio(a){return"Update"}, +go6(){return"Update Completed"}, +glx(){return"Updates"}, +gly(){return"Updates Summary"}, +glz(a){return"Updating"}, +go7(){return"User Name"}, +o8(a,b){return"Version "+b+" available for "+a+"!!"}, +go9(){return"Web View"}, +goa(){return"What's New?"}} +A.HO.prototype={ +gkL(){return"Sobre"}, +gjX(){return"Adicionar Categoria"}, +gm4(){return"Adicionar \xe0 biblioteca"}, +gm7(){return"Todas as Scans"}, +gkO(){return"Idioma da aplica\xe7\xe3o"}, +gkP(){return"Tema da Aplica\xe7\xe3o"}, +gkQ(){return"Tachidesk Sorayomi"}, +gkR(a){return"Apar\xeancia"}, +gkS(){return"Tipo de autentica\xe7\xe3o"}, +gm9(){return"Autentica\xe7\xe3o B\xe1sica"}, +gma(){return"Nenhum"}, +gjY(){return"C\xf3pia de seguran\xe7a e restaurar"}, +gmb(){return"Distintivos"}, +gfU(){return"Marcado"}, +gjB(){return"Procurar"}, +gj_(){return"Tempo de compila\xe7\xe3o"}, +gmd(){return"Cache limpo"}, +gdP(a){return"Cancelar"}, +gkW(){return"Categorias"}, +gmf(){return"Atualiza\xe7\xe3o de categoria"}, +gfW(a){return"Canal"}, +mh(a){return"Cap\xedtulo "+A.h(a)}, +gmi(){return"Por dados recolhidos"}, +gmj(){return"Por fonte"}, +gmk(){return"Por ordem de envio"}, +gml(){return"Procurar atualiza\xe7\xf5es do servidor"}, +gmm(){return"Procurar atualiza\xe7\xf5es"}, +gmn(){return"Limpar Cache"}, +gmo(a){return"Client"}, +gmp(){return"Vers\xe3o Client"}, +gdU(a){return"Fechar"}, +gh8(a){return"Completo"}, +mu(a){return"'"+a+"' Copiado para \xe1rea de transfer\xeancia!"}, +gmw(){return u.p}, +gmx(){return"Criar c\xf3pia de seguran\xe7a"}, +gkZ(a){return"Credenciais"}, +my(a){return""+a+" days ago"}, +gjE(){return u.a}, +gks(a){return"Remover"}, +gmz(){return u.m}, +gmA(){return"Tem a certeza?"}, +gj0(){return"Discord"}, +gmB(a){return"Exibir"}, +gl0(){return"Modo de exibi\xe7\xe3o"}, +gmC(){return"Lista descritiva"}, +gmD(){return"Grelha"}, +gmE(){return"Lista"}, +gfE(a){return"Transferidos"}, +gl1(){return"Transfer\xeancias"}, +gj2(){return"Editar Categoria"}, +gmF(){return u.s}, +gl3(){return u.L}, +gl4(){return"Arquivo n\xe3o selecionado!"}, +mG(a){return"Por favor selecione um arquivo com "+a+" extens\xe3o"}, +mH(a){return'Falha ao abrir!\nA Copiar "'+a+'" para a \xe1rea de transfer\xeancia'}, +gmI(){return"Senha n\xe3o pode ficar em branco"}, +gjH(){return"Algo correu mal!"}, +gmJ(){return u.P}, +gmK(){return"Extens\xe3o instalada!"}, +gmL(){return"Lista de extens\xe3o est\xe1 vazia"}, +gmM(a){return"Extens\xf5es"}, +ghx(){return"Falha"}, +ghd(a){return"Filtro"}, +gmQ(a){return"Conclu\xeddo"}, +gkt(){return"Geral"}, +gkw(){return"GitHub"}, +glD(){return"Procura global"}, +glE(){return"Atualiza\xe7\xe3o global"}, +gmR(){return"Ajuda"}, +gfJ(){return"Na Biblioteca"}, +gmT(){return"Instalar"}, +gmU(a){return"A Instalar"}, +gmV(){return"Instalando extens\xe3o"}, +glb(a){return"Idiomas"}, +gmZ(){return"Mais recente"}, +ghz(){return"Biblioteca"}, +geq(){return"Manga"}, +gn0(){return"Tamanho da tela do mang\xe1"}, +gn1(){return"Fontes do manga em falta"}, +gn2(){return"Ordem alfab\xe9tica"}, +gn3(){return"Data adicionada"}, +gn5(){return"N\xe3o lido"}, +gn4(){return"\xdaltima leitura"}, +gn6(){return"Cancelado"}, +gn7(){return"Completo"}, +gn8(){return"Licenciado"}, +gn9(){return"Em curso"}, +gna(){return"Em pausa"}, +gnb(){return"Publica\xe7\xe3o conclu\xedda"}, +gnc(){return"Desconhecido"}, +gnd(){return"Extens\xf5es em falta"}, +ghA(){return"Rasteadores em falta"}, +glg(){return"Mais"}, +gne(){return"Mover para baixo"}, +gnf(){return"Mover para cima"}, +lh(a,b){return a+": "+b}, +gng(){return"Nova atualiza\xe7\xe3o dispon\xedvel"}, +pR(a){return"Next: "+a}, +gkh(){return"N\xe3o tem nenhuma categoria.\nToque no bot\xe3o mais para criar uma categoria para organizar a sua biblioteca"}, +gni(){return u._}, +gnj(){return u.H}, +glj(){return"Nenhum cap\xedtulo encontrado"}, +gnk(){return"Nenhuma transfer\xeancia"}, +gki(){return"Nenhum manga encontrado"}, +lk(a){return""+a+" Cap\xedtulos"}, +gnl(){return"Nenhum resultado encontrado"}, +gll(){return"Nenhuma fonte encontrada"}, +glm(){return"Est\xe1 a usar a vers\xe3o mais recente"}, +gnm(){return"Nenhuma atualiza\xe7\xe3o encontrada"}, +gnn(){return"Mostrar extens\xf5es e fontes NSFW"}, +gno(){return"18+"}, +gnp(){return u.j}, +ln(a){return""+a+" Selecionado"}, +gjK(){return"Obsoleta"}, +nr(a,b){return"P\xe1gina: "+b}, +gns(a){return"Senha"}, +gij(a){return"Pausa"}, +ghW(a){return"Pendente"}, +pV(a){return"Previous: "+a}, +gnv(){return"V\xe1 para categoria 'C'"}, +gny(){return"Pesquisa padr\xe3o (Resultado baseado nas informa\xe7\xf5es da tela)"}, +gnz(){return"Pesquisa a fonte 'S'"}, +gnA(){return"Pesquisa o mang\xe1 'M' na fonte 'S'"}, +gnw(){return"Pesquisa o Manga 'M' na categoria 'C'"}, +gnx(){return"Pesquisa o cap\xedtulo 'CN' na manga 'M' na Categoria 'C'"}, +gpW(){return"Tip: Enter '?' to see all commands"}, +glq(){return"Leitor"}, +ghY(){return"Modo de leitura"}, +gnB(){return"Horizontal Cont\xednuo (LTR)"}, +gnC(){return"Horizontal Cont\xednuo (RTL)"}, +gnD(){return"Vertical Cont\xednuo"}, +gnE(){return"Predefinido"}, +gnF(){return"Horizontal \xfanico (LTR)"}, +gnG(){return"Horizontal \xfanico (RTL)"}, +gnH(){return"Vertical \xfanico"}, +gnI(){return"Webtoon"}, +ghi(){return"Disposi\xe7\xe3o de Navega\xe7\xe3o"}, +gnJ(){return"Predefinido"}, +gnK(){return"Desativado"}, +gnL(){return"Borda"}, +gnM(){return"Inverter toque"}, +gnQ(){return"Anima\xe7\xe3o de rolagem"}, +goY(){return"Swipe toggle"}, +goZ(){return"Swipe to change chapter in reader"}, +gnN(){return"Formato Kindle-ish"}, +gnO(){return"Formato L"}, +gnP(){return"Direita para Esquerda"}, +gpX(){return"Reader initial overlay"}, +gpY(){return u.A}, +gje(){return"Preenchimento do leitor"}, +gjd(){return"Tamanho da Lupa"}, +gnR(){return"Reddit"}, +gfd(a){return"Recarregar"}, +gq_(a){return"Reload"}, +gls(a){return"Remove"}, +grd(){return"Remove from Library?"}, +gnT(a){return"Reiniciar"}, +gnU(){return u.b}, +gnV(){return"Restaurar c\xf3pia de seguran\xe7a"}, +gnW(){return"C\xf3pia de seguran\xe7a restaurada!"}, +gnX(){return"Restaurando backup"}, +gh4(a){return"Continuar"}, +gjP(){return"Tentar novamente"}, +gi_(){return"Em execu\xe7\xe3o"}, +giq(a){return"Guardar"}, +glH(){return"Scans"}, +gkx(a){return"Procurar"}, +gky(){return"Procurando por atualiza\xe7\xf5es"}, +gpe(){return"Select next 10"}, +gpf(){return"Select Unread"}, +gpd(){return"Select in between"}, +gjp(){return"Servidor"}, +gkA(){return"URL do Server"}, +glJ(){return"URL do servidor"}, +gkz(){return"Porta do servidor"}, +glI(){return"Porta do servidor"}, +glK(){return"Vers\xe3o do servidor"}, +gkB(){return"Defini\xe7\xf5es"}, +gkC(a){return"Ordenar"}, +gfS(a){return"Fonte"}, +glN(){return"Filtro"}, +glO(){return"Mais recentes"}, +glP(){return"Popular"}, +glQ(){return"Fontes"}, +gc0(a){return"Inicio"}, +gnY(){return"Escuro"}, +gnZ(){return"Claro"}, +go_(){return"Sistema"}, +gp0(){return"Today"}, +gp7(){return"Yesterday"}, +go1(){return"Desinstalar"}, +go2(){return"A Desinstalar"}, +go3(){return"Autor Desconhecido"}, +go4(){return"Manga Desconhecido"}, +go5(){return"Fonte Desconhecida"}, +gjS(){return"N\xe3o lida"}, +gio(a){return"Atualiza\xe7\xe3o"}, +go6(){return"Atualiza\xe7\xe3o Completa"}, +glx(){return"Atualiza\xe7\xf5es"}, +gly(){return"Resumo de Atualiza\xe7\xf5es"}, +glz(a){return"Atualizando"}, +go7(){return"Nome de Utilizador"}, +o8(a,b){return"Vers\xe3o "+b+" disponivel para "+a+"!!"}, +go9(){return"WebView"}, +goa(){return"O que h\xe1 de Novo?"}} +A.WR.prototype={ +gkL(){return"Sobre"}, +gjX(){return"Adicionar Categoria"}, +gm4(){return"Adicionar \xe0 biblioteca"}, +gm7(){return"Todas Scans"}, +gkO(){return"Idioma da aplica\xe7\xe3o"}, +gkP(){return"Tema da Aplica\xe7\xe3o"}, +gkQ(){return"Tachidesk Sorayomi"}, +gkR(a){return"Apar\xeancia"}, +gkS(){return"Tipo de autentica\xe7\xe3o"}, +gm9(){return"Autentica\xe7\xe3o B\xe1sica"}, +gma(){return"Nenhum"}, +gjY(){return"C\xf3pia de seguran\xe7a e restaurar"}, +gmb(){return"Distintivos"}, +gfU(){return"Marcado"}, +gjB(){return"Procurar"}, +gj_(){return"Tempo de compila\xe7\xe3o"}, +gmd(){return"Cache limpo"}, +gdP(a){return"Cancelar"}, +gkW(){return"Categorias"}, +gmf(){return"Atualiza\xe7\xe3o de categoria"}, +gfW(a){return"Canal"}, +mh(a){return"Cap\xedtulo "+A.h(a)}, +gmi(){return"Recolhidos por data"}, +gmj(){return"Por fonte"}, +gmk(){return"Por Data de Upload"}, +gml(){return"Procurar atualiza\xe7\xf5es do servidor"}, +gmm(){return"Procurar atualiza\xe7\xf5es"}, +gmn(){return"Limpar cache"}, +gmo(a){return"Client"}, +gmp(){return"Vers\xe3o Client"}, +gdU(a){return"Fechar"}, +gh8(a){return"Completo"}, +mu(a){return'"'+a+'" Copiado!'}, +gmw(){return u.p}, +gmx(){return"Criar c\xf3pia de seguran\xe7a"}, +gkZ(a){return"Credenciais"}, +my(a){return""+a+" dias atr\xe1s"}, +gjE(){return u.a}, +gks(a){return"Remover"}, +gmz(){return u.m}, +gmA(){return"Tem a certeza?"}, +gj0(){return"Discord"}, +gmB(a){return"Exibir"}, +gl0(){return"Modo de exibi\xe7\xe3o"}, +gmC(){return"Lista descritiva"}, +gmD(){return"Grelha"}, +gmE(){return"Lista"}, +gfE(a){return"Transferidos"}, +gl1(){return"Transfer\xeancias"}, +gj2(){return"Editar Categoria"}, +gmF(){return u.s}, +gl3(){return u.L}, +gl4(){return"Arquivo n\xe3o selecionado!"}, +mG(a){return"Por favor selecione um arquivo com "+a+" extens\xe3o"}, +mH(a){return'Falha ao abrir!\nA Copiar "'+a+'" para a \xe1rea de transfer\xeancia'}, +gmI(){return"Senha n\xe3o pode ficar em branco"}, +gjH(){return"Algo correu mal!"}, +gmJ(){return u.P}, +gmK(){return"Extens\xe3o instalada!"}, +gmL(){return"Lista de extens\xe3o est\xe1 vazia"}, +gmM(a){return"Extens\xf5es"}, +ghx(){return"Falha"}, +ghd(a){return"Filtro"}, +gmQ(a){return"Conclu\xeddo"}, +gkt(){return"Geral"}, +gkw(){return"GitHub"}, +glD(){return"Procura global"}, +glE(){return"Atualiza\xe7\xe3o global"}, +gmR(){return"Ajuda"}, +gfJ(){return"Na Biblioteca"}, +gmT(){return"Instalar"}, +gmU(a){return"A Instalar"}, +gmV(){return"A instalar extens\xf5es"}, +glb(a){return"Idiomas"}, +gmZ(){return"Mais recente"}, +ghz(){return"Biblioteca"}, +geq(){return"Manga"}, +gn0(){return"Tamanho do Manga na Grelha"}, +gn1(){return"Fontes do manga em falta"}, +gn2(){return"Ordem alfab\xe9tica"}, +gn3(){return"Data adicionada"}, +gn5(){return"N\xe3o lido"}, +gn4(){return"\xdaltima leitura"}, +gn6(){return"Cancelado"}, +gn7(){return"Completo"}, +gn8(){return"Licenciado"}, +gn9(){return"Em curso"}, +gna(){return"Em pausa"}, +gnb(){return"Publica\xe7\xe3o conclu\xedda"}, +gnc(){return"Desconhecido"}, +gnd(){return"Extens\xf5es em falta"}, +ghA(){return"Rasteadores em falta"}, +glg(){return"Mais"}, +gne(){return"Mover para baixo"}, +gnf(){return"Mover para cima"}, +lh(a,b){return a+": "+b}, +gng(){return"Nova atualiza\xe7\xe3o dispon\xedvel"}, +gkh(){return"N\xe3o tem nenhuma categoria.\n(Dica: Toque no bot\xe3o mais para criar uma categoria para organizar a sua biblioteca)"}, +gni(){return u._}, +gnj(){return u.H}, +glj(){return"Nenhum cap\xedtulo encontrado"}, +gnk(){return"Nenhuma transfer\xeancia"}, +gki(){return"Nenhum manga encontrado"}, +lk(a){return""+a+" Cap\xedtulos"}, +gnl(){return"Nenhum resultado encontrado"}, +gll(){return"Nenhuma fonte encontrada"}, +glm(){return"Est\xe1 a usar a vers\xe3o mais recente"}, +gnm(){return"Nenhuma atualiza\xe7\xe3o encontrada"}, +gnn(){return"Mostrar extens\xf5es e fontes NSFW"}, +gno(){return"18+"}, +gnp(){return u.j}, +ln(a){return""+a+" Selecionado"}, +gjK(){return"Obsoleta"}, +nr(a,b){return"P\xe1gina: "+b}, +gns(a){return"Senha"}, +gij(a){return"Pausa"}, +ghW(a){return"Pendente"}, +gnv(){return"Ir para a Categoria 'C'"}, +gny(){return""}, +gnz(){return""}, +gnA(){return""}, +gnw(){return""}, +gnx(){return""}, +glq(){return"Leitor"}, +ghY(){return"Modo de leitura"}, +gnB(){return"Horizontal Cont\xednuo (LTR)"}, +gnC(){return"Horizontal Cont\xednuo (RTL)"}, +gnD(){return"Vertical Cont\xednuo"}, +gnE(){return"Predefinido"}, +gnF(){return"Horizontal \xfanico (LTR)"}, +gnG(){return"Horizontal \xfanico (RTL)"}, +gnH(){return"Vertical \xfanico"}, +gnI(){return"Webtoon"}, +ghi(){return"Disposi\xe7\xe3o de Navega\xe7\xe3o"}, +gnJ(){return"Predefinido"}, +gnK(){return"Desativado"}, +gnL(){return"Borda"}, +gnM(){return"Inverter toque"}, +gnQ(){return""}, +gnN(){return"Kindle-ish"}, +gnO(){return"Formato L"}, +gnP(){return"Direita para Esquerda"}, +gje(){return"Preenchimento do Leitor"}, +gjd(){return""}, +gnR(){return"Reddit"}, +gfd(a){return"Recarregar"}, +gnT(a){return"Reiniciar"}, +gnU(){return u.b}, +gnV(){return"Restaurar c\xf3pia de seguran\xe7a"}, +gnW(){return"C\xf3pia de seguran\xe7a restaurada!"}, +gnX(){return"A restaurar c\xf3pia de seguran\xe7a"}, +gh4(a){return"Continuar"}, +gjP(){return"Tentar novamente"}, +gi_(){return"Em execu\xe7\xe3o"}, +giq(a){return"Guardar"}, +glH(){return""}, +gkx(a){return"Procurar"}, +gky(){return"\xc0 procura de atualiza\xe7\xf5es"}, +gjp(){return"Servidor"}, +gkA(){return"URL do Server"}, +glJ(){return"Url do server"}, +gkz(){return""}, +glI(){return""}, +glK(){return"Vers\xe3o do servidor"}, +gkB(){return"Defini\xe7\xf5es"}, +gkC(a){return"Ordenar"}, +gfS(a){return"Fonte"}, +glN(){return"Filtro"}, +glO(){return"Mais recentes"}, +glP(){return"Popular"}, +glQ(){return"Fontes"}, +gc0(a){return"Inicio"}, +gnY(){return"Escuro"}, +gnZ(){return"Claro"}, +go_(){return"Sistema"}, +go1(){return"Desinstalar"}, +go2(){return"A Desinstalar"}, +go3(){return"Autor Desconhecido"}, +go4(){return"Manga Desconhecido"}, +go5(){return"Fonte Desconhecida"}, +gjS(){return"N\xe3o lida"}, +gio(a){return"Atualiza\xe7\xe3o"}, +go6(){return"Atualiza\xe7\xe3o Completa"}, +glx(){return"Atualiza\xe7\xf5es"}, +gly(){return"Resumo de Atualiza\xe7\xf5es"}, +glz(a){return"Atualizando"}, +go7(){return"Nome de Utilizador"}, +o8(a,b){return"Vers\xe3o "+b+" disponivel para "+a+"!!"}, +go9(){return"WebView"}, +goa(){return"O que h\xe1 de Novo?"}} +A.WS.prototype={ +gkL(){return"\u041f\u0440\u043e \u0437\u0430\u0441\u0442\u043e\u0441\u0443\u043d\u043e\u043a"}, +gjX(){return"\u0414\u043e\u0434\u0430\u0442\u0438 \u043a\u0430\u0442\u0435\u0433\u043e\u0440\u0456\u044e"}, +gm4(){return"\u0414\u043e\u0434\u0430\u0442\u0438 \u0434\u043e \u0431\u0456\u0431\u043b\u0456\u043e\u0442\u0435\u043a\u0438"}, +gm7(){return"\u0412\u0441\u0456 \u0421\u043a\u0430\u043d\u043b\u0435\u0439\u0442\u043e\u0440\u0438"}, +gkO(){return"\u041c\u043e\u0432\u0430 \u0437\u0430\u0441\u0442\u043e\u0441\u0443\u043d\u043a\u0443"}, +gkP(){return"\u0422\u0435\u043c\u0430 \u0437\u0430\u0441\u0442\u043e\u0441\u0443\u043d\u043a\u0443"}, +gkQ(){return"Tachidesk Sorayomi"}, +gkR(a){return"\u0417\u043e\u0432\u043d\u0456\u0448\u043d\u0456\u0439 \u0432\u0438\u0433\u043b\u044f\u0434"}, +gkS(){return"\u0422\u0438\u043f \u0430\u0432\u0442\u0435\u043d\u0442\u0438\u0444\u0456\u043a\u0430\u0446\u0456\u0457"}, +gm9(){return"\u041e\u0441\u043d\u043e\u0432\u043d\u0430 \u0430\u0432\u0442\u043e\u0440\u0438\u0437\u0430\u0446\u0456\u044f"}, +gma(){return"\u041d\u0435\u043c\u0430\u0454"}, +gjY(){return"\u0420\u0435\u0437\u0435\u0440\u0432\u043d\u0435 \u043a\u043e\u043f\u0456\u044e\u0432\u0430\u043d\u043d\u044f \u0442\u0430 \u0432\u0456\u0434\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u044f"}, +gmb(){return"\u0417\u043d\u0430\u0447\u043a\u0438"}, +gfU(){return"\u0414\u043e\u0434\u0430\u043d\u043e \u0432 \u0437\u0430\u043a\u043b\u0430\u0434\u043a\u0438"}, +gjB(){return"\u041f\u0435\u0440\u0435\u0433\u043b\u044f\u0434"}, +gj_(){return"\u0427\u0430\u0441 \u0437\u0431\u0456\u0440\u043a\u0438"}, +gmd(){return"\u041a\u0435\u0448 \u043e\u0447\u0438\u0449\u0435\u043d\u043e"}, +gdP(a){return"\u0421\u043a\u0430\u0441\u0443\u0432\u0430\u0442\u0438"}, +gkW(){return"\u041a\u0430\u0442\u0435\u0433\u043e\u0440\u0456\u0457"}, +gmf(){return"\u041e\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u044f \u043a\u0430\u0442\u0435\u0433\u043e\u0440\u0456\u0457"}, +gfW(a){return"\u041a\u0430\u043d\u0430\u043b"}, +mh(a){return"\u0420\u043e\u0437\u0434\u0456\u043b "+A.h(a)}, +gmi(){return"\u0417\u0430 \u0434\u0430\u0442\u043e\u044e \u043e\u0442\u0440\u0438\u043c\u0430\u043d\u043d\u044f"}, +gmj(){return"\u0417\u0430 \u0434\u0436\u0435\u0440\u0435\u043b\u043e\u043c"}, +gmk(){return"\u0417\u0430 \u0434\u0430\u0442\u043e\u044e \u0437\u0430\u0432\u0430\u043d\u0442\u0430\u0436\u0435\u043d\u043d\u044f"}, +gml(){return"\u041f\u0435\u0440\u0435\u0432\u0456\u0440\u0438\u0442\u0438 \u043d\u0430\u044f\u0432\u043d\u0456\u0441\u0442\u044c \u043e\u043d\u043e\u0432\u043b\u0435\u043d\u044c \u0441\u0435\u0440\u0432\u0435\u0440\u0430"}, +gmm(){return"\u041f\u0435\u0440\u0435\u0432\u0456\u0440\u0438\u0442\u0438 \u043d\u0430\u044f\u0432\u043d\u0456\u0441\u0442\u044c \u043e\u043d\u043e\u0432\u043b\u0435\u043d\u044c"}, +gmn(){return"\u041e\u0447\u0438\u0441\u0442\u0438\u0442\u0438 \u043a\u0435\u0448"}, +gmo(a){return"\u041a\u043b\u0456\u0454\u043d\u0442"}, +gmp(){return"\u0412\u0435\u0440\u0441\u0456\u044f \u043a\u043b\u0456\u0454\u043d\u0442\u0443"}, +gdU(a){return"\u0417\u0430\u043a\u0440\u0438\u0442\u0438"}, +gh8(a){return"\u0417\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u043e"}, +mu(a){return"'"+a+"' \u0421\u043a\u043e\u043f\u0456\u0439\u043e\u0432\u0430\u043d\u043e!"}, +gmw(){return"\u0420\u0435\u0437\u0435\u0440\u0432\u043d\u0430 \u043a\u043e\u043f\u0456\u044f \u0431\u0456\u0431\u043b\u0456\u043e\u0442\u0435\u043a\u0438 \u044f\u043a \u0440\u0435\u0437\u0435\u0440\u0432\u043d\u0430 \u043a\u043e\u043f\u0456\u044f Tachidesk"}, +gmx(){return"\u0421\u0442\u0432\u043e\u0440\u0438\u0442\u0438 \u0440\u0435\u0437\u0435\u0440\u0432\u043d\u0443 \u043a\u043e\u043f\u0456\u044e"}, +gkZ(a){return"\u041e\u0431\u043b\u0456\u043a\u043e\u0432\u0456 \u0434\u0430\u043d\u0456"}, +my(a){return""+a+" \u0434\u043d\u0456\u0432 \u0442\u043e\u043c\u0443"}, +gjE(){return"\u041a\u0430\u0442\u0435\u0433\u043e\u0440\u0456\u044f \u0437\u0430 \u0437\u0430\u043c\u043e\u0432\u0447\u0443\u0432\u0430\u043d\u043d\u044f\u043c \u043f\u0440\u0438 \u0434\u043e\u0434\u0430\u0432\u0430\u043d\u043d\u0456 \u043d\u043e\u0432\u043e\u0457 \u043c\u0430\u043d\u0491\u0438 \u0434\u043e \u0431\u0456\u0431\u043b\u0456\u043e\u0442\u0435\u043a\u0438"}, +gks(a){return"\u0412\u0438\u0434\u0430\u043b\u0438\u0442\u0438"}, +gmz(){return"\u0426\u0435 \u043e\u0431'\u0454\u0434\u043d\u0430\u0454 \u0432\u0441\u0456 \u043c\u0430\u043d\u0491\u0438 \u0432 \u0446\u0456\u0439 \u043a\u0430\u0442\u0435\u0433\u043e\u0440\u0456\u0457 \u0437\u0430 \u0437\u0430\u043c\u043e\u0432\u0447\u0443\u0432\u0430\u043d\u043d\u044f\u043c!"}, +gmA(){return"\u0412\u0438 \u0432\u043f\u0435\u0432\u043d\u0435\u043d\u0456?"}, +gj0(){return"Discord"}, +gmB(a){return"\u0412\u0456\u0434\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u043d\u044f"}, +gl0(){return"\u0420\u0435\u0436\u0438\u043c \u0432\u0456\u0434\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u043d\u044f"}, +gmC(){return"\u041e\u043f\u0438\u0441\u043e\u0432\u0438\u0439 \u0441\u043f\u0438\u0441\u043e\u043a"}, +gmD(){return"\u0421\u0456\u0442\u043a\u0430"}, +gmE(){return"\u0421\u043f\u0438\u0441\u043e\u043a"}, +gfE(a){return"\u0417\u0430\u0432\u0430\u043d\u0442\u0430\u0436\u0435\u043d\u043e"}, +gl1(){return"\u0417\u0430\u0430\u0430\u043d\u0442\u0430\u0436\u0435\u043d\u043d\u044f"}, +gj2(){return"\u0420\u0435\u0434\u0430\u0433\u0443\u0432\u0430\u0442\u0438 \u043a\u0430\u0442\u0435\u0433\u043e\u0440\u0456\u044e"}, +gmF(){return"\u041d\u0430\u0437\u0432\u0430 \u043a\u0430\u0442\u0435\u0433\u043e\u0440\u0456\u0457 \u043d\u0435 \u043c\u043e\u0436\u0435 \u0431\u0443\u0442\u0438 \u043f\u043e\u0440\u043e\u0436\u043d\u044c\u043e\u044e"}, +gl3(){return"\u041d\u0435 \u0432\u0434\u0430\u0454\u0442\u044c\u0441\u044f \u0437\u043d\u0430\u0439\u0442\u0438 \u0432\u0438\u0431\u0440\u0430\u043d\u0435 \u0440\u043e\u0437\u0448\u0438\u0440\u0435\u043d\u043d\u044f"}, +gl4(){return"\u0424\u0430\u0439\u043b \u043d\u0435 \u0432\u0438\u0431\u0440\u0430\u043d\u043e!"}, +mG(a){return"\u0411\u0443\u0434\u044c \u043b\u0430\u0441\u043a\u0430, \u0432\u0438\u0431\u0435\u0440\u0456\u0442\u044c \u0444\u0430\u0439\u043b \u0437 \u0440\u043e\u0437\u0448\u0438\u0440\u0435\u043d\u043d\u044f\u043c "+a}, +mH(a){return'\u041d\u0435 \u0432\u0434\u0430\u043b\u043e\u0441\u044f \u0432\u0456\u0434\u043a\u0440\u0438\u0442\u0438!\n\u041a\u043e\u043f\u0456\u044e\u0432\u0430\u043d\u043d\u044f "'+a+'" \u0432 \u0431\u0443\u0444\u0435\u0440 \u043e\u0431\u043c\u0456\u043d\u0443'}, +gmI(){return"\u041f\u0430\u0440\u043e\u043b\u044c \u043d\u0435 \u043c\u043e\u0436\u0435 \u0431\u0443\u0442\u0438 \u043f\u043e\u0440\u043e\u0436\u043d\u0456\u043c"}, +gjH(){return"\u0429\u043e\u0441\u044c \u043f\u0456\u0448\u043b\u043e \u043d\u0435 \u0442\u0430\u043a!"}, +gmJ(){return"\u0406\u043c\u2019\u044f \u043a\u043e\u0440\u0438\u0441\u0442\u0443\u0432\u0430\u0447\u0430 \u043d\u0435 \u043c\u043e\u0436\u0435 \u0431\u0443\u0442\u0438 \u043f\u043e\u0440\u043e\u0436\u043d\u0456\u043c"}, +gmK(){return"\u0420\u043e\u0437\u0448\u0438\u0440\u0435\u043d\u043d\u044f \u0432\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043e!"}, +gmL(){return"\u0421\u043f\u0438\u0441\u043e\u043a \u0440\u043e\u0437\u0448\u0438\u0440\u0435\u043d\u044c \u043f\u043e\u0440\u043e\u0436\u043d\u0456\u0439"}, +gmM(a){return"\u0420\u043e\u0437\u0448\u0438\u0440\u0435\u043d\u043d\u044f"}, +ghx(){return"\u041d\u0435 \u0432\u0434\u0430\u043b\u043e\u0441\u044f"}, +ghd(a){return"\u0424\u0456\u043b\u044c\u0442\u0440"}, +gmQ(a){return"\u0417\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u043e"}, +gkt(){return"\u0417\u0430\u0433\u0430\u043b\u044c\u043d\u0456"}, +gkw(){return"GitHub"}, +glD(){return"\u0413\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u0438\u0439 \u043f\u043e\u0448\u0443\u043a"}, +glE(){return"\u0413\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u0435 \u043e\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u044f"}, +gmR(){return"\u0414\u043e\u043f\u043e\u043c\u043e\u0433\u0430"}, +gfJ(){return"\u0423 \u0431\u0456\u0431\u043b\u0456\u043e\u0442\u0435\u0446\u0456"}, +gmT(){return"\u0412\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0438"}, +gmU(a){return"\u0412\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u044f"}, +gmV(){return"\u0412\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u044f \u0440\u043e\u0437\u0448\u0438\u0440\u0435\u043d\u043d\u044f"}, +glb(a){return"\u041c\u043e\u0432\u0438"}, +gmZ(){return"\u041e\u0441\u0442\u0430\u043d\u043d\u0456"}, +ghz(){return"\u0411\u0456\u0431\u043b\u0456\u043e\u0442\u0435\u043a\u0430"}, +geq(){return"\u041c\u0430\u043d\u0491\u0430"}, +gn0(){return"\u0420\u043e\u0437\u043c\u0456\u0440 \u0441\u0456\u0442\u043a\u0438 \u043c\u0430\u043d\u0491\u0438"}, +gn1(){return"\u0412\u0456\u0434\u0441\u0443\u0442\u043d\u0456 \u0434\u0436\u0435\u0440\u0435\u043b\u0430 \u043c\u0430\u043d\u0491\u0438"}, +gn2(){return"\u0417\u0430 \u0430\u043b\u0444\u0430\u0432\u0456\u0442\u043e\u043c"}, +gn3(){return"\u0414\u0430\u0442\u0430 \u0434\u043e\u0434\u0430\u0432\u0430\u043d\u043d\u044f"}, +gn5(){return"\u041d\u0435 \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u043d\u043e"}, +gn4(){return"\u041e\u0441\u0442\u0430\u043d\u043d\u0454 \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u043d\u0435"}, +gn6(){return"\u0421\u043a\u0430\u0441\u043e\u0432\u0430\u043d\u043e"}, +gn7(){return"\u0417\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u043e"}, +gn8(){return"\u041b\u0456\u0446\u0435\u043d\u0437\u043e\u0432\u0430\u043d\u043e"}, +gn9(){return"\u041d\u0430 \u043f\u0435\u0440\u0435\u0440\u0432\u0456"}, +gna(){return"\u0412\u0438\u0445\u043e\u0434\u0438\u0442\u044c"}, +gnb(){return"\u041f\u0443\u0431\u043b\u0456\u043a\u0430\u0446\u0456\u044e \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u043e"}, +gnc(){return"\u041d\u0435\u0432\u0456\u0434\u043e\u043c\u043e"}, +gnd(){return"\u0412\u0456\u0434\u0441\u0443\u0442\u043d\u0456 \u0440\u043e\u0437\u0448\u0438\u0440\u0435\u043d\u043d\u044f"}, +ghA(){return"\u0412\u0456\u0434\u0441\u0443\u0442\u043d\u0456 \u0442\u0440\u0435\u043a\u0435\u0440\u0438"}, +glg(){return"\u0411\u0456\u043b\u044c\u0448\u0435"}, +gne(){return"\u041f\u0435\u0440\u0435\u043c\u0456\u0441\u0442\u0438\u0442\u0438 \u0432\u043d\u0438\u0437"}, +gnf(){return"\u041f\u0435\u0440\u0435\u043c\u0456\u0441\u0442\u0438\u0442\u0438 \u0432\u0433\u043e\u0440\u0443"}, +lh(a,b){return a+": "+b}, +gng(){return"\u0414\u043e\u0441\u0442\u0443\u043f\u043d\u0435 \u043d\u043e\u0432\u0435 \u043e\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u044f"}, +pR(a){return"Next: "+a}, +gkh(){return'\u0423 \u0432\u0430\u0441 \u043d\u0435\u043c\u0430\u0454 \u0436\u043e\u0434\u043d\u043e\u0457 \u043a\u0430\u0442\u0435\u0433\u043e\u0440\u0456\u0457. \n(\u041f\u043e\u0440\u0430\u0434\u0430: \u043d\u0430\u0442\u0438\u0441\u043d\u0456\u0442\u044c \u043a\u043d\u043e\u043f\u043a\u0443 "\u041f\u043b\u044e\u0441", \u0449\u043e\u0431 \u0441\u0442\u0432\u043e\u0440\u0438\u0442\u0438 \u043a\u0430\u0442\u0435\u0433\u043e\u0440\u0456\u044e \u0434\u043b\u044f \u0432\u043f\u043e\u0440\u044f\u0434\u043a\u0443\u0432\u0430\u043d\u043d\u044f \u0431\u0456\u0431\u043b\u0456\u043e\u0442\u0435\u043a\u0438)'}, +gni(){return"\u0423 \u0432\u0430\u0441 \u043d\u0435\u043c\u0430\u0454 \u043a\u0430\u0442\u0435\u0433\u043e\u0440\u0456\u0439. \n\u0421\u0442\u0432\u043e\u0440\u0456\u0442\u044c \u0457\u0445 \u0443 \u043d\u0430\u043b\u0430\u0448\u0442\u0443\u0432\u0430\u043d\u043d\u044f\u0445 \u0434\u043b\u044f \u043e\u0440\u0433\u0430\u043d\u0456\u0437\u0430\u0446\u0456\u0457 \u0431\u0456\u0431\u043b\u0456\u043e\u0442\u0435\u043a\u0438"}, +gnj(){return"\u0423 \u0446\u0456\u0439 \u043a\u0430\u0442\u0435\u0433\u043e\u0440\u0456\u0457 \u043d\u0435 \u0437\u043d\u0430\u0439\u0434\u0435\u043d\u043e \u0436\u043e\u0434\u043d\u043e\u0457 \u043c\u0430\u043d\u0491\u0438. \n(\u041f\u043e\u0440\u0430\u0434\u0430: \u043f\u0435\u0440\u0435\u0432\u0456\u0440\u0442\u0435 \u043f\u043e\u0448\u0443\u043a \u0442\u0430 \u0444\u0456\u043b\u044c\u0442\u0440\u0438!)"}, +glj(){return"\u041d\u0435 \u0437\u043d\u0430\u0439\u0434\u0435\u043d\u043e \u0436\u043e\u0434\u043d\u043e\u0433\u043e \u0440\u043e\u0437\u0434\u0456\u043b\u0443"}, +gnk(){return"\u041d\u0435\u043c\u0430\u0454 \u0437\u0430\u0432\u0430\u043d\u0442\u0430\u0436\u0435\u043d\u044c"}, +gki(){return"\u041c\u0430\u043d\u0491\u0438 \u043d\u0435 \u0437\u043d\u0430\u0439\u0434\u0435\u043d\u043e"}, +lk(a){return""+a+" \u0420\u043e\u0437\u0434\u0456\u043b\u0456\u0432"}, +gnl(){return"\u041d\u0456\u0447\u043e\u0433\u043e \u043d\u0435 \u0437\u043d\u0430\u0439\u0434\u0435\u043d\u043e"}, +gll(){return"\u0414\u0436\u0435\u0440\u0435\u043b \u043d\u0435 \u0437\u043d\u0430\u0439\u0434\u0435\u043d\u043e"}, +glm(){return"\u0412\u0438 \u0432\u0438\u043a\u043e\u0440\u0438\u0441\u0442\u043e\u0432\u0443\u0454\u0442\u0435 \u043e\u0441\u0442\u0430\u043d\u043d\u044e \u0432\u0435\u0440\u0441\u0456\u044e"}, +gnm(){return"\u041e\u043d\u043e\u0432\u043b\u0435\u043d\u044c \u043d\u0435 \u0437\u043d\u0430\u0439\u0434\u0435\u043d\u043e"}, +gnn(){return"\u041f\u043e\u043a\u0430\u0437\u0430\u0442\u0438 NSFW \u0440\u043e\u0437\u0448\u0438\u0440\u0435\u043d\u043d\u044f \u0442\u0430 \u0434\u0436\u0435\u0440\u0435\u043b\u0430"}, +gno(){return"18+"}, +gnp(){return"\u0426\u0435 \u043d\u0435 \u0437\u0430\u043f\u043e\u0431\u0456\u0433\u0430\u0454 \u043f\u043e\u044f\u0432\u0456 \u043d\u0435\u043e\u0444\u0456\u0446\u0456\u0439\u043d\u0438\u0445 \u0430\u0431\u043e \u043f\u043e\u0442\u0435\u043d\u0446\u0456\u0439\u043d\u043e \u043d\u0435\u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e \u043f\u043e\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0445 \u0440\u043e\u0437\u0448\u0438\u0440\u0435\u043d\u044c, \u044f\u043a\u0456 \u043c\u043e\u0436\u0443\u0442\u044c \u043c\u0456\u0441\u0442\u0438\u0442\u0438 NSFW(18+) \u0432\u043c\u0456\u0441\u0442 \u0432 \u0437\u0430\u0441\u0442\u043e\u0441\u0443\u043d\u043a\u0443"}, +ln(a){return""+a+" \u0412\u0438\u0431\u0440\u0430\u043d\u043e"}, +gjK(){return"\u0417\u0430\u0441\u0442\u0430\u0440\u0456\u043b\u0435"}, +nr(a,b){return"\u0421\u0442\u043e\u0440\u0456\u043d\u043a\u0430: "+b}, +gns(a){return"\u041f\u0430\u0440\u043e\u043b\u044c"}, +gij(a){return"\u041f\u0430\u0443\u0437\u0430"}, +ghW(a){return"\u0412 \u043e\u0447\u0456\u043a\u0443\u0432\u0430\u043d\u043d\u0456"}, +pV(a){return"Previous: "+a}, +gnv(){return'\u041f\u0435\u0440\u0435\u0439\u0442\u0438 \u0434\u043e \u043a\u0430\u0442\u0435\u0433\u043e\u0440\u0456\u0457 "C"'}, +gny(){return"\u041f\u043e\u0448\u0443\u043a \u0437\u0430 \u0437\u0430\u043f\u0438\u0442\u043e\u043c X (\u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0438 \u0431\u0430\u0437\u0443\u044e\u0442\u044c\u0441\u044f \u043d\u0430 \u043a\u043e\u043d\u0442\u0435\u043a\u0441\u0442\u0456 \u0435\u043a\u0440\u0430\u043d\u0430)"}, +gnz(){return'\u041f\u0435\u0440\u0435\u0439\u0442\u0438 \u0434\u043e \u0434\u0436\u0435\u0440\u0435\u043b\u0430 "S"'}, +gnA(){return'\u041f\u043e\u0448\u0443\u043a \u043c\u0430\u043d\u0491\u0438 "M" \u0443 \u0434\u0436\u0435\u0440\u0435\u043b\u0456 "S"'}, +gnw(){return'\u041f\u0435\u0440\u0435\u0439\u0442\u0438 \u0434\u043e \u043c\u0430\u043d\u0491\u0438 "M" \u0443 \u043a\u0430\u0442\u0435\u0433\u043e\u0440\u0456\u044e "C"'}, +gnx(){return'\u041f\u0435\u0440\u0435\u0439\u0442\u0438 \u0434\u043e \u043d\u0430\u0437\u0432\u0438 \u0440\u043e\u0437\u0434\u0456\u043b\u0443 "CN" \u0437 \u043c\u0430\u043d\u0491\u0438 "M" \u0432 \u043a\u0430\u0442\u0435\u0433\u043e\u0440\u0456\u044e "C"'}, +gpW(){return"Tip: Enter '?' to see all commands"}, +glq(){return"\u0427\u0438\u0442\u0430\u0447"}, +ghY(){return"\u0420\u0435\u0436\u0438\u043c \u0447\u0438\u0442\u0430\u043d\u043d\u044f"}, +gnB(){return"\u0413\u043e\u0440\u0438\u0437\u043e\u043d\u0442\u0430\u043b\u044c\u043d\u0438\u0439 \u0431\u0435\u0437\u043f\u0435\u0440\u0435\u0440\u0432\u043d\u0438\u0439 (\u0437\u043b\u0456\u0432\u0430 \u043d\u0430\u043f\u0440\u0430\u0432\u043e)"}, +gnC(){return"\u0413\u043e\u0440\u0438\u0437\u043e\u043d\u0442\u0430\u043b\u044c\u043d\u0438\u0439 \u0431\u0435\u0437\u043f\u0435\u0440\u0435\u0440\u0432\u043d\u0438\u0439 (\u0441\u043f\u0440\u0430\u0432\u0430 \u043d\u0430\u043b\u0456\u0432\u043e)"}, +gnD(){return"\u0412\u0435\u0440\u0442\u0438\u043a\u0430\u043b\u044c\u043d\u0438\u0439 \u0431\u0435\u0437\u043f\u0435\u0440\u0435\u0440\u0432\u043d\u0438\u0439"}, +gnE(){return"\u0417\u0430 \u0437\u0430\u043c\u043e\u0432\u0447\u0443\u0432\u0430\u043d\u043d\u044f\u043c"}, +gnF(){return"\u041e\u0434\u0438\u043d\u043e\u0447\u043d\u0438\u0439 \u0433\u043e\u0440\u0438\u0437\u043e\u043d\u0442\u0430\u043b\u044c\u043d\u0438\u0439 (\u0437\u043b\u0456\u0432\u0430 \u043d\u0430\u043f\u0440\u0430\u0432\u043e)"}, +gnG(){return"\u041e\u0434\u0438\u043d\u043e\u0447\u043d\u0438\u0439 \u0433\u043e\u0440\u0438\u0437\u043e\u043d\u0442\u0430\u043b\u044c\u043d\u0438\u0439 (\u0441\u043f\u0440\u0430\u0432\u043e \u043d\u0430\u043b\u0456\u0432\u043e)"}, +gnH(){return"\u041e\u0434\u0438\u043d\u043e\u0447\u043d\u0438\u0439 \u0432\u0435\u0440\u0442\u0438\u043a\u0430\u043b\u044c\u043d\u0438\u0439"}, +gnI(){return"Webtoon"}, +ghi(){return"\u041c\u0430\u043a\u0435\u0442 \u043d\u0430\u0432\u0456\u0433\u0430\u0446\u0456\u0457"}, +gnJ(){return"\u0417\u0430 \u0437\u0430\u043c\u043e\u0432\u0447\u0443\u0432\u0430\u043d\u043d\u044f\u043c"}, +gnK(){return"\u0412\u0438\u043c\u043a\u043d\u0435\u043d\u043e"}, +gnL(){return"\u041a\u0440\u0430\u0439"}, +gnM(){return"\u0406\u043d\u0432\u0435\u0440\u0442\u0443\u0432\u0430\u0442\u0438 \u0434\u043e\u0442\u0438\u043a"}, +gnQ(){return"\u0410\u043d\u0456\u043c\u0430\u0446\u0456\u044f \u043f\u0440\u043e\u043a\u0440\u0443\u0442\u043a\u0438"}, +goY(){return"\u041f\u0440\u043e\u0432\u0435\u0434\u0456\u0442\u044c \u043f\u0430\u043b\u044c\u0446\u0435\u043c, \u0449\u043e\u0431 \u043f\u0435\u0440\u0435\u0433\u043e\u0440\u043d\u0443\u0442\u0438"}, +goZ(){return"\u041f\u0440\u043e\u0432\u0435\u0434\u0456\u0442\u044c \u043f\u0430\u043b\u044c\u0446\u0435\u043c, \u0449\u043e\u0431 \u0437\u043c\u0456\u043d\u0438\u0442\u0438 \u0440\u043e\u0437\u0434\u0456\u043b \u0432 \u0447\u0438\u0442\u0430\u0447\u0443"}, +gnN(){return"Kindle-ish"}, +gnO(){return"\u0424\u043e\u0440\u043c\u0430 L"}, +gnP(){return"\u041f\u0440\u0430\u0432\u043e\u0440\u0443\u0447 \u0456 \u043b\u0456\u0432\u043e\u0440\u0443\u0447"}, +gpX(){return"Reader initial overlay"}, +gpY(){return u.A}, +gje(){return"\u0417\u0430\u043f\u043e\u0432\u043d\u0435\u043d\u043d\u044f \u0447\u0438\u0442\u0430\u0447\u0430"}, +gjd(){return"\u0420\u043e\u0437\u043c\u0456\u0440 \u0435\u043a\u0440\u0430\u043d\u043d\u043e\u0457 \u043b\u0443\u043f\u0438"}, +gnR(){return"Reddit"}, +gfd(a){return"\u041e\u043d\u043e\u0432\u0438\u0442\u0438"}, +gq_(a){return"Reload"}, +gls(a){return"Remove"}, +grd(){return"Remove from Library?"}, +gnT(a){return"\u0421\u043a\u0438\u043d\u0443\u0442\u0438"}, +gnU(){return"\u0412\u0456\u0434\u043d\u043e\u0432\u0438\u0442\u0438 Tachidesk \u0437 \u0440\u0435\u0437\u0435\u0440\u0432\u043d\u043e\u0457 \u043a\u043e\u043f\u0456\u0457"}, +gnV(){return"\u0412\u0456\u0434\u043d\u043e\u0432\u0438\u0442\u0438 \u0440\u0435\u0437\u0435\u0440\u0432\u043d\u0443 \u043a\u043e\u043f\u0456\u044e"}, +gnW(){return"\u0420\u0435\u0437\u0435\u0440\u0432\u043d\u0443 \u043a\u043e\u043f\u0456\u044e \u0432\u0456\u0434\u043d\u043e\u0432\u043b\u0435\u043d\u043e!"}, +gnX(){return"\u0412\u0456\u0434\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u044f \u0440\u0435\u0437\u0435\u0440\u0432\u043d\u043e\u0457 \u043a\u043e\u043f\u0456\u0457"}, +gh4(a){return"\u0412\u0456\u0434\u043d\u043e\u0432\u0438\u0442\u0438"}, +gjP(){return"\u041f\u043e\u0432\u0442\u043e\u0440\u0438\u0442\u0438"}, +gi_(){return"\u0417\u0430\u043f\u0443\u0449\u0435\u043d\u043e"}, +giq(a){return"\u0417\u0431\u0435\u0440\u0435\u0433\u0442\u0438"}, +glH(){return"\u041f\u0435\u0440\u0435\u043a\u043b\u0430\u0434\u0430\u0447\u0456"}, +gkx(a){return"\u041f\u043e\u0448\u0443\u043a"}, +gky(){return"\u041f\u043e\u0448\u0443\u043a \u043e\u043d\u043e\u0432\u043b\u0435\u043d\u044c"}, +gpe(){return"Select next 10"}, +gpf(){return"Select Unread"}, +gpd(){return"Select in between"}, +gjp(){return"\u0421\u0435\u0440\u0432\u0435\u0440"}, +gkA(){return"URL \u0441\u0435\u0440\u0432\u0435\u0440\u0430"}, +glJ(){return"URL-\u0430\u0434\u0440\u0435\u0441\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u0430"}, +gkz(){return"\u041f\u043e\u0440\u0442 \u0441\u0435\u0440\u0432\u0435\u0440\u0430"}, +glI(){return"\u041f\u043e\u0440\u0442 \u0441\u0435\u0440\u0432\u0435\u0440\u0430"}, +glK(){return"\u0412\u0435\u0440\u0441\u0456\u044f \u0441\u0435\u0440\u0432\u0435\u0440\u0430"}, +gkB(){return"\u041d\u0430\u043b\u0430\u0448\u0442\u0443\u0432\u0430\u043d\u043d\u044f"}, +gkC(a){return"\u0421\u043e\u0440\u0442\u0443\u0432\u0430\u0442\u0438"}, +gfS(a){return"\u0414\u0436\u0435\u0440\u0435\u043b\u043e"}, +glN(){return"\u0424\u0456\u043b\u044c\u0442\u0440"}, +glO(){return"\u041e\u0441\u0442\u0430\u043d\u043d\u0456"}, +glP(){return"\u041f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u0435"}, +glQ(){return"\u0414\u0436\u0435\u0440\u0435\u043b\u0430"}, +gc0(a){return"\u041f\u043e\u0447\u0430\u0442\u0438"}, +gnY(){return"\u0422\u0435\u043c\u043d\u0430"}, +gnZ(){return"\u0421\u0432\u0456\u0442\u043b\u0430"}, +go_(){return"\u0421\u0438\u0441\u0442\u0435\u043c\u043d\u0430"}, +gp0(){return"\u0421\u044c\u043e\u0433\u043e\u0434\u043d\u0456"}, +gp7(){return"\u0412\u0447\u043e\u0440\u0430"}, +go1(){return"\u0412\u0438\u0434\u0430\u043b\u0438\u0442\u0438"}, +go2(){return"\u0412\u0438\u0434\u0430\u043b\u0435\u043d\u043d\u044f"}, +go3(){return"\u041d\u0435\u0432\u0456\u0434\u043e\u043c\u0438\u0439 \u0430\u0432\u0442\u043e\u0440"}, +go4(){return"\u041d\u0435\u0432\u0456\u0434\u043e\u043c\u0430 \u043c\u0430\u043d\u0491\u0430"}, +go5(){return"\u041d\u0435\u0432\u0456\u0434\u043e\u043c\u0435 \u0434\u0436\u0435\u0440\u0435\u043b\u043e"}, +gjS(){return"\u041d\u0435 \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u043d\u043e"}, +gio(a){return"O\u043d\u043e\u0432\u0438\u0442\u0438"}, +go6(){return"\u041e\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u044f \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u043e"}, +glx(){return"\u041e\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u044f"}, +gly(){return"\u041f\u0456\u0434\u0441\u0443\u043c\u043e\u043a \u043e\u043d\u043e\u0432\u043b\u0435\u043d\u044c"}, +glz(a){return"\u041e\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u044f"}, +go7(){return"\u0406\u043c'\u044f \u043a\u043e\u0440\u0438\u0441\u0442\u0443\u0432\u0430\u0447\u0430"}, +o8(a,b){return"\u0412\u0435\u0440\u0441\u0456\u044f "+b+" \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u0430 \u0434\u043b\u044f "+a+"!!!"}, +go9(){return"Web View"}, +goa(){return"\u0429\u043e \u043d\u043e\u0432\u043e\u0433\u043e?"}} +A.HP.prototype={ +gkL(){return"\u5173\u4e8e"}, +gjX(){return"\u6dfb\u52a0\u5206\u7c7b"}, +gm4(){return"\u6dfb\u52a0\u5230\u4e66\u67b6"}, +gm7(){return"\u6240\u6709\u8fc7\u6ee4\u5668"}, +gkO(){return"\u5e94\u7528\u8bed\u8a00"}, +gkP(){return"\u5e94\u7528\u4e3b\u9898"}, +gkQ(){return"Sorayomi"}, +gkR(a){return"\u5916\u89c2"}, +gkS(){return"\u9a8c\u8bc1\u65b9\u5f0f"}, +gm9(){return"\u57fa\u672c\u8ba4\u8bc1"}, +gma(){return"\u65e0"}, +gjY(){return"\u5907\u4efd\u548c\u6062\u590d"}, +gmb(){return"\u5fbd\u6807"}, +gfU(){return"\u5df2\u6dfb\u52a0\u4e66\u7b7e"}, +gjB(){return"\u6d4f\u89c8"}, +gj_(){return"\u6784\u5efa\u65f6\u95f4"}, +gmd(){return"\u5df2\u6e05\u9664\u7f13\u5b58"}, +gdP(a){return"\u53d6\u6d88"}, +gkW(){return"\u5206\u7c7b"}, +gmf(){return"\u66f4\u65b0\u5206\u7c7b"}, +gfW(a){return"\u901a\u9053"}, +mh(a){return"\u7b2c "+A.h(a)+" \u7ae0"}, +gmi(){return"\u6309\u6dfb\u52a0\u65e5\u671f"}, +gmj(){return"\u6309\u6765\u6e90"}, +gmk(){return"\u6309\u4e0a\u4f20\u65e5\u671f"}, +gml(){return"\u68c0\u67e5\u670d\u52a1\u7aef\u66f4\u65b0"}, +gmm(){return"\u68c0\u67e5\u66f4\u65b0"}, +gmn(){return"\u6e05\u9664\u7f13\u5b58"}, +gmo(a){return"\u5ba2\u6237\u7aef"}, +gmp(){return"\u5ba2\u6237\u7aef\u7248\u672c"}, +gdU(a){return"\u5173\u95ed"}, +gh8(a){return"\u9605\u8bfb\u8fc7"}, +mu(a){return"'"+a+"'\u5df2\u590d\u5236\uff01"}, +gmw(){return"\u53ef\u7528\u4e8e\u8fd8\u539f\u5f53\u524d\u4e66\u67b6\u6570\u636e"}, +gmx(){return"\u521b\u5efa\u5907\u4efd"}, +gkZ(a){return"\u8ba4\u8bc1"}, +my(a){return""+a+" \u5929\u524d"}, +gjE(){return"\u9ed8\u8ba4\u6dfb\u52a0\u5230\u6b64\u5e93"}, +gks(a){return"\u5220\u9664"}, +gmz(){return"\u6b64\u5206\u7c7b\u4e0b\u7684\u6f2b\u753b\u5c06\u8fc1\u79fb\u81f3\u9ed8\u8ba4\u5206\u7c7b\uff01"}, +gmA(){return"\u786e\u5b9a\uff1f"}, +gj0(){return"DIscord"}, +gmB(a){return"\u663e\u793a"}, +gl0(){return"\u663e\u793a\u6a21\u5f0f"}, +gmC(){return"\u8be6\u7ec6\u5217\u8868"}, +gmD(){return"\u7f51\u683c"}, +gmE(){return"\u7b80\u5355\u5217\u8868"}, +gfE(a){return"\u5df2\u4e0b\u8f7d"}, +gl1(){return"\u4e0b\u8f7d"}, +gj2(){return"\u7f16\u8f91\u5206\u7c7b"}, +gmF(){return"\u5206\u7c7b\u540d\u4e0d\u80fd\u4e3a\u7a7a"}, +gl3(){return"\u6240\u9009\u63d2\u4ef6\u4e0d\u5b58\u5728"}, +gl4(){return"\u672a\u9009\u62e9\u4efb\u4f55\u6587\u4ef6\uff01"}, +mG(a){return"\u8bf7\u9009\u62e9\u63d2\u4ef6 "+a}, +mH(a){return"\u6253\u5f00\u5931\u8d25\n\u8be6\u7ec6\u8bb0\u5f55"+a+"\u5df2\u7ecf\u590d\u5236\u5230\u526a\u8d34\u677f"}, +gmI(){return"\u5bc6\u7801\u4e0d\u80fd\u4e3a\u7a7a"}, +gjH(){return"\u53d1\u751f\u9519\u8bef\uff01"}, +gmJ(){return"\u7528\u6237\u540d\u4e0d\u80fd\u4e3a\u7a7a"}, +gmK(){return"\u63d2\u4ef6\u5b89\u88c5\u5b8c\u6210\uff01"}, +gmL(){return"\u63d2\u4ef6\u5217\u8868\u4e3a\u7a7a"}, +gmM(a){return"\u63d2\u4ef6"}, +ghx(){return"\u66f4\u65b0\u5931\u8d25"}, +ghd(a){return"\u7b5b\u9009"}, +gmQ(a){return"\u9605\u8bfb\u8fc7"}, +gkt(){return"\u901a\u7528"}, +gkw(){return"GitHub"}, +glD(){return"\u5168\u5c40\u641c\u7d22"}, +glE(){return"\u5168\u5c40\u66f4\u65b0"}, +gmR(){return"\u5e2e\u52a9"}, +gfJ(){return"\u5728\u4e66\u67b6\u4e2d"}, +gmT(){return"\u5b89\u88c5"}, +gmU(a){return"\u5b89\u88c5\u4e2d"}, +gmV(){return"\u6b63\u5728\u5b89\u88c5"}, +glb(a){return"\u8bed\u8a00"}, +gmZ(){return"\u6700\u65b0"}, +ghz(){return"\u4e66\u67b6"}, +geq(){return"\u6f2b\u753b"}, +gn0(){return"\u7f51\u683c\u5927\u5c0f"}, +gn1(){return"\u6765\u6e90\u672a\u5b89\u88c5"}, +gn2(){return"\u540d\u79f0"}, +gn3(){return"\u6dfb\u52a0\u65e5\u671f"}, +gn5(){return"\u672a\u9605\u8bfb"}, +gn4(){return"\u6700\u8fd1\u9605\u8bfb"}, +gn6(){return"\u5df2\u53d6\u6d88"}, +gn7(){return"\u5df2\u5b8c\u6210"}, +gn8(){return"\u5df2\u8ba4\u8bc1"}, +gn9(){return"\u65ad\u66f4"}, +gna(){return"\u8fde\u8f7d\u4e2d"}, +gnb(){return"\u5b8c\u7ed3"}, +gnc(){return"\u672a\u77e5"}, +gnd(){return"\u63d2\u4ef6\u7f3a\u5931"}, +ghA(){return"\u8ddf\u8e2a\u5668\u7f3a\u5931"}, +glg(){return"\u66f4\u591a"}, +gne(){return"\u79fb\u81f3\u5e95\u90e8"}, +gnf(){return"\u79fb\u81f3\u9876\u90e8"}, +lh(a,b){return a+"\uff1a"+b}, +gng(){return"\u6709\u53ef\u7528\u66f4\u65b0"}, +pR(a){return"\u4e0b\u7ae0\uff1a"+a}, +gkh(){return"\u5c1a\u65e0\u4efb\u4f55\u5206\u7c7b\u3002\n\uff08\u63d0\u793a\uff1a\u8f7b\u89e6\u52a0\u53f7\u6309\u94ae\u521b\u5efa\u4e00\u4e2a\u5206\u7c7b\u6765\u7ba1\u7406\u4f60\u7684\u4e66\u67b6\uff09"}, +gni(){return"\u5c1a\u65e0\u4efb\u4f55\u5206\u7c7b\u3002\n\u63d0\u793a\uff1a\u8f7b\u89e6\u52a0\u53f7\u6309\u94ae\u521b\u5efa\u4e00\u4e2a\u5206\u7c7b\u6765\u7ba1\u7406\u4f60\u7684\u4e66\u67b6"}, +gnj(){return"\u672a\u627e\u5230\u5339\u914d\u9879\n\u63d0\u793a\uff1a\u68c0\u67e5\u641c\u7d22\u6216\u66f4\u6539\u7b5b\u9009\u6761\u4ef6"}, +glj(){return"\u672a\u627e\u5230\u7ae0\u8282"}, +gnk(){return"\u6ca1\u6709\u4e0b\u8f7d\u4e2d\u7684\u4efb\u52a1"}, +gki(){return"\u672a\u627e\u5230\u6f2b\u753b"}, +lk(a){return"\u5171 "+a+" \u7ae0"}, +gnl(){return"\u672a\u627e\u5230\u7ed3\u679c"}, +gll(){return"\u7ed3\u679c\u4e3a\u7a7a"}, +glm(){return"\u6b63\u5728\u4f7f\u7528\u6700\u65b0\u7248"}, +gnm(){return"\u6700\u8fd1\u6ca1\u6709\u66f4\u65b0"}, +gnn(){return"\u5728\u56fe\u6e90\u548c\u63d2\u4ef6\u4e2d\u663e\u793a"}, +gno(){return"18+"}, +gnp(){return"\u8fd9\u5e76\u4e0d\u80fd\u9632\u6b62\u975e\u5b98\u65b9\u6216\u53ef\u80fd\u88ab\u9519\u8bef\u6807\u8bb0\u7684\u63d2\u4ef6\u5728\u5e94\u7528\u4e2d\u663e\u793a NSFW(18+) \u5185\u5bb9"}, +ln(a){return"\u5df2\u9009\u62e9 "+a+" \u7ae0"}, +gjK(){return"\u5e9f\u5f03"}, +nr(a,b){return"\u7b2c "+b+" \u9875"}, +gns(a){return"\u5bc6\u7801"}, +gij(a){return"\u6682\u505c"}, +ghW(a){return"\u7b49\u5f85\u4e2d"}, +pV(a){return"\u4e0a\u7ae0\uff1a"+a}, +gnv(){return"\u641c\u7d22\u7c7b\u522b 'C'"}, +gny(){return"\u641c\u7d22\u67e5\u8be2 X"}, +gnz(){return"\u641c\u7d22\u6e90 'S'"}, +gnA(){return"\u5728 'S' \u6e90\u4e2d\u641c\u7d22\u6f2b\u753b 'M'"}, +gnw(){return"\u5728\u7c7b\u522b 'C' \u4e2d\u641c\u7d22\u6f2b\u753b 'M'"}, +gnx(){return"\u5728\u7c7b\u522b 'C' \u4e2d\u641c\u7d22\u6f2b\u753b 'M' \u7684\u7ae0\u8282 'CN'"}, +gpW(){return"\u63d0\u793a\uff1a\u8f93\u5165 '?' \u67e5\u770b\u6240\u6709\u6307\u4ee4"}, +glq(){return"\u9605\u8bfb\u5668"}, +ghY(){return"\u9605\u8bfb\u6a21\u5f0f"}, +gnB(){return"\u4ece\u5de6\u5230\u53f3\uff08\u4e0d\u5206\u9875\uff09"}, +gnC(){return"\u4ece\u53f3\u5230\u5de6\uff08\u4e0d\u5206\u9875\uff09"}, +gnD(){return"\u4ece\u4e0a\u5230\u4e0b\uff08\u4e0d\u5206\u9875\uff09"}, +gnE(){return"\u9ed8\u8ba4"}, +gnF(){return"\u4ece\u5de6\u5230\u53f3\uff08\u5206\u9875\uff09"}, +gnG(){return"\u4ece\u53f3\u5230\u5de6\uff08\u5206\u9875\uff09"}, +gnH(){return"\u4ece\u4e0a\u5230\u4e0b\uff08\u5206\u9875\uff09"}, +gnI(){return"\u6761\u6f2b"}, +ghi(){return"\u70b9\u6309\u5e03\u5c40"}, +gnJ(){return"\u9ed8\u8ba4\u5e03\u5c40"}, +gnK(){return"\u5173\u95ed"}, +gnL(){return"\u8fb9\u7f18\u6a21\u5f0f"}, +gnM(){return"\u53cd\u8f6c\u70b9\u6309\u533a\u57df"}, +gnQ(){return"\u6eda\u52a8\u52a8\u753b"}, +goY(){return"\u6ed1\u52a8\u5207\u6362"}, +goZ(){return"\u6ed1\u52a8\u5207\u6362\u7ae0\u8282"}, +gnN(){return"Kindle \u6a21\u5f0f"}, +gnO(){return"L \u6837\u5f0f"}, +gnP(){return"\u5de6\u53f3\u6837\u5f0f"}, +gpX(){return"\u9605\u8bfb\u5668\u521d\u59cb\u8986\u76d6\u5c42"}, +gpY(){return"\u6253\u5f00\u7ae0\u8282\u65f6\u663e\u793a\u6807\u9898\u548c\u8bbe\u7f6e"}, +gje(){return"\u586b\u5145"}, +gjd(){return"\u653e\u5927\u5927\u5c0f"}, +gnR(){return"Reddit"}, +gfd(a){return"\u5237\u65b0"}, +gq_(a){return"\u5237\u65b0"}, +gls(a){return"\u5220\u9664"}, +grd(){return"\u4ece\u4e66\u67b6\u4e2d\u5220\u9664?"}, +gnT(a){return"\u91cd\u7f6e"}, +gnU(){return"\u4ece\u5907\u4efd\u6587\u4ef6\u4e2d\u8fd8\u539f"}, +gnV(){return"\u8fd8\u539f\u5907\u4efd"}, +gnW(){return"\u5b8c\u6210\u5907\u4efd\u6062\u590d\uff01"}, +gnX(){return"\u6b63\u5728\u8fd8\u539f"}, +gh4(a){return"\u7ee7\u7eed"}, +gjP(){return"\u91cd\u8bd5"}, +gi_(){return"\u8fd0\u884c\u4e2d"}, +giq(a){return"\u4fdd\u5b58"}, +glH(){return"\u626b\u63cf"}, +gkx(a){return"\u641c\u7d22"}, +gky(){return"\u641c\u7d22\u66f4\u65b0\u4e2d"}, +gpe(){return"\u9009\u53d6\u4e0b 10 \u4e2a"}, +gpf(){return"\u9009\u53d6\u672a\u8bfb"}, +gpd(){return"\u9009\u53d6\u533a\u95f4"}, +gjp(){return"\u670d\u52a1\u5668"}, +gkA(){return"\u670d\u52a1\u5668\u5730\u5740"}, +glJ(){return"\u670d\u52a1\u5668\u5730\u5740"}, +gkz(){return"\u670d\u52a1\u5668\u7aef\u53e3"}, +glI(){return"\u670d\u52a1\u5668\u7aef\u53e3"}, +glK(){return"\u670d\u52a1\u5668\u7248\u672c"}, +gkB(){return"\u8bbe\u7f6e"}, +gkC(a){return"\u6392\u5e8f"}, +gfS(a){return"\u56fe\u6e90"}, +glN(){return"\u7b5b\u9009"}, +glO(){return"\u6700\u8fd1\u66f4\u65b0"}, +glP(){return"\u5e38\u7528"}, +glQ(){return"\u56fe\u6e90"}, +gc0(a){return"\u5f00\u59cb\u9605\u8bfb"}, +gnY(){return"\u6df1\u8272\u6a21\u5f0f"}, +gnZ(){return"\u6d45\u8272\u6a21\u5f0f"}, +go_(){return"\u8ddf\u968f\u7cfb\u7edf"}, +gp0(){return"\u4eca\u5929"}, +gp7(){return"\u6628\u5929"}, +go1(){return"\u5378\u8f7d"}, +go2(){return"\u6b63\u5728\u5378\u8f7d"}, +go3(){return"\u672a\u77e5\u4f5c\u8005"}, +go4(){return"\u672a\u77e5\u6f2b\u753b"}, +go5(){return"\u672a\u77e5\u56fe\u6e90"}, +gjS(){return"\u672a\u9605\u8bfb"}, +gio(a){return"\u66f4\u65b0"}, +go6(){return"\u66f4\u65b0\u5b8c\u6210"}, +glx(){return"\u66f4\u65b0"}, +gly(){return"\u66f4\u65b0\u6458\u8981"}, +glz(a){return"\u66f4\u65b0\u4e2d"}, +go7(){return"\u7528\u6237\u540d"}, +o8(a,b){return a+" \u6709\u66f4\u65b0\u53ef\u7528 "+b+" \uff01"}, +go9(){return"Web View"}, +goa(){return"\u66f4\u65b0\u4e86\u4ec0\u4e48\uff1f"}} +A.WT.prototype={ +gkL(){return"\u5173\u4e8e"}, +gjX(){return"\u6dfb\u52a0\u5206\u7c7b"}, +gm4(){return"\u6dfb\u52a0\u5230\u4e66\u67b6"}, +gm7(){return"\u6240\u6709\u8fc7\u6ee4\u5668"}, +gkO(){return"\u5e94\u7528\u8bed\u8a00"}, +gkP(){return"\u5e94\u7528\u4e3b\u9898"}, +gkQ(){return"Sorayomi"}, +gkR(a){return"\u5916\u89c2"}, +gkS(){return"\u9a8c\u8bc1\u65b9\u5f0f"}, +gm9(){return"\u57fa\u672c\u8ba4\u8bc1"}, +gma(){return"\u65e0"}, +gjY(){return"\u5907\u4efd\u548c\u6062\u590d"}, +gmb(){return"\u5fbd\u6807"}, +gfU(){return"\u5df2\u6dfb\u52a0\u4e66\u7b7e"}, +gjB(){return"\u6d4f\u89c8"}, +gj_(){return"\u6784\u5efa\u65f6\u95f4"}, +gmd(){return"\u5df2\u6e05\u9664\u7f13\u5b58"}, +gdP(a){return"\u53d6\u6d88"}, +gkW(){return"\u5206\u7c7b"}, +gmf(){return"\u66f4\u65b0\u5206\u7c7b"}, +gfW(a){return"\u901a\u9053"}, +mh(a){return"\u7b2c "+A.h(a)+" \u7ae0"}, +gmi(){return"\u6309\u6dfb\u52a0\u65e5\u671f"}, +gmj(){return"\u6309\u6765\u6e90"}, +gmk(){return"\u6309\u4e0a\u4f20\u65e5\u671f"}, +gml(){return"\u68c0\u67e5\u670d\u52a1\u7aef\u66f4\u65b0"}, +gmm(){return"\u68c0\u67e5\u66f4\u65b0"}, +gmn(){return"\u6e05\u9664\u7f13\u5b58"}, +gmo(a){return"\u5ba2\u6237\u7aef"}, +gmp(){return"\u5ba2\u6237\u7aef\u7248\u672c"}, +gdU(a){return"\u5173\u95ed"}, +gh8(a){return"\u9605\u8bfb\u8fc7"}, +mu(a){return"'"+a+"'\u5df2\u590d\u5236\uff01"}, +gmw(){return"\u53ef\u7528\u4e8e\u8fd8\u539f\u5f53\u524d\u4e66\u67b6\u6570\u636e"}, +gmx(){return"\u521b\u5efa\u5907\u4efd"}, +gkZ(a){return"\u8ba4\u8bc1"}, +my(a){return""+a+" \u5929\u524d"}, +gjE(){return"\u9ed8\u8ba4\u6dfb\u52a0\u5230\u6b64\u5e93"}, +gks(a){return"\u5220\u9664"}, +gmz(){return"\u6b64\u5206\u7c7b\u4e0b\u7684\u6f2b\u753b\u5c06\u8fc1\u79fb\u81f3\u9ed8\u8ba4\u5206\u7c7b\uff01"}, +gmA(){return"\u786e\u5b9a\uff1f"}, +gj0(){return"DIscord"}, +gmB(a){return"\u663e\u793a"}, +gl0(){return"\u663e\u793a\u6a21\u5f0f"}, +gmC(){return"\u8be6\u7ec6\u5217\u8868"}, +gmD(){return"\u7f51\u683c"}, +gmE(){return"\u7b80\u5355\u5217\u8868"}, +gfE(a){return"\u5df2\u4e0b\u8f7d"}, +gl1(){return"\u4e0b\u8f7d"}, +gj2(){return"\u7f16\u8f91\u5206\u7c7b"}, +gmF(){return"\u5206\u7c7b\u540d\u4e0d\u80fd\u4e3a\u7a7a"}, +gl3(){return"\u6240\u9009\u63d2\u4ef6\u4e0d\u5b58\u5728"}, +gl4(){return"\u672a\u9009\u62e9\u4efb\u4f55\u6587\u4ef6\uff01"}, +mG(a){return"\u8bf7\u9009\u62e9\u63d2\u4ef6 "+a}, +mH(a){return"\u6253\u5f00\u5931\u8d25\n\u8be6\u7ec6\u8bb0\u5f55"+a+"\u5df2\u7ecf\u590d\u5236\u5230\u526a\u8d34\u677f"}, +gmI(){return"\u5bc6\u7801\u4e0d\u80fd\u4e3a\u7a7a"}, +gjH(){return"\u53d1\u751f\u9519\u8bef\uff01"}, +gmJ(){return"\u7528\u6237\u540d\u4e0d\u80fd\u4e3a\u7a7a"}, +gmK(){return"\u63d2\u4ef6\u5b89\u88c5\u5b8c\u6210\uff01"}, +gmL(){return"\u63d2\u4ef6\u5217\u8868\u4e3a\u7a7a"}, +gmM(a){return"\u63d2\u4ef6"}, +ghx(){return"\u66f4\u65b0\u5931\u8d25"}, +ghd(a){return"\u7b5b\u9009"}, +gmQ(a){return"\u9605\u8bfb\u8fc7"}, +gkt(){return"\u901a\u7528"}, +gkw(){return"GitHub"}, +glD(){return"\u5168\u5c40\u641c\u7d22"}, +glE(){return"\u5168\u5c40\u66f4\u65b0"}, +gmR(){return"\u5e2e\u52a9"}, +gfJ(){return"\u5728\u4e66\u67b6\u4e2d"}, +gmT(){return"\u5b89\u88c5"}, +gmU(a){return"\u5b89\u88c5\u4e2d"}, +gmV(){return"\u6b63\u5728\u5b89\u88c5"}, +glb(a){return"\u8bed\u8a00"}, +gmZ(){return"\u6700\u65b0"}, +ghz(){return"\u4e66\u67b6"}, +geq(){return"\u6f2b\u753b"}, +gn0(){return"\u7f51\u683c\u5927\u5c0f"}, +gn1(){return"\u6765\u6e90\u672a\u5b89\u88c5"}, +gn2(){return"\u540d\u79f0"}, +gn3(){return"\u6dfb\u52a0\u65e5\u671f"}, +gn5(){return"\u672a\u9605\u8bfb"}, +gn4(){return"\u6700\u8fd1\u9605\u8bfb"}, +gn6(){return"\u5df2\u53d6\u6d88"}, +gn7(){return"\u5df2\u5b8c\u6210"}, +gn8(){return"\u5df2\u8ba4\u8bc1"}, +gn9(){return"\u65ad\u66f4"}, +gna(){return"\u8fde\u8f7d\u4e2d"}, +gnb(){return"\u5b8c\u7ed3"}, +gnc(){return"\u672a\u77e5"}, +gnd(){return"\u63d2\u4ef6\u7f3a\u5931"}, +ghA(){return"\u8ddf\u8e2a\u5668\u7f3a\u5931"}, +glg(){return"\u66f4\u591a"}, +gne(){return"\u79fb\u81f3\u5e95\u90e8"}, +gnf(){return"\u79fb\u81f3\u9876\u90e8"}, +lh(a,b){return a+"\uff1a"+b}, +gng(){return"\u6709\u53ef\u7528\u66f4\u65b0"}, +gkh(){return"\u5c1a\u65e0\u4efb\u4f55\u5206\u7c7b\u3002\n\uff08\u63d0\u793a\uff1a\u8f7b\u89e6\u52a0\u53f7\u6309\u94ae\u521b\u5efa\u4e00\u4e2a\u5206\u7c7b\u6765\u7ba1\u7406\u4f60\u7684\u4e66\u67b6\uff09"}, +gni(){return"\u5c1a\u65e0\u4efb\u4f55\u5206\u7c7b\u3002\n\u63d0\u793a\uff1a\u8f7b\u89e6\u52a0\u53f7\u6309\u94ae\u521b\u5efa\u4e00\u4e2a\u5206\u7c7b\u6765\u7ba1\u7406\u4f60\u7684\u4e66\u67b6"}, +gnj(){return"\u672a\u627e\u5230\u5339\u914d\u9879\n\u63d0\u793a\uff1a\u68c0\u67e5\u641c\u7d22\u6216\u66f4\u6539\u7b5b\u9009\u6761\u4ef6"}, +glj(){return"\u672a\u627e\u5230\u7ae0\u8282"}, +gnk(){return"\u6ca1\u6709\u4e0b\u8f7d\u4e2d\u7684\u4efb\u52a1"}, +gki(){return"\u672a\u627e\u5230\u6f2b\u753b"}, +lk(a){return"\u5171 "+a+" \u7ae0"}, +gnl(){return"\u672a\u627e\u5230\u7ed3\u679c"}, +gll(){return"\u7ed3\u679c\u4e3a\u7a7a"}, +glm(){return"\u6b63\u5728\u4f7f\u7528\u6700\u65b0\u7248"}, +gnm(){return"\u6700\u8fd1\u6ca1\u6709\u66f4\u65b0"}, +gnn(){return"\u5728\u56fe\u6e90\u548c\u63d2\u4ef6\u4e2d\u663e\u793a"}, +gno(){return"18+"}, +gnp(){return"\u8fd9\u5e76\u4e0d\u80fd\u9632\u6b62\u975e\u5b98\u65b9\u6216\u53ef\u80fd\u88ab\u9519\u8bef\u6807\u8bb0\u7684\u63d2\u4ef6\u5728\u5e94\u7528\u4e2d\u663e\u793a NSFW(18+) \u5185\u5bb9"}, +ln(a){return"\u5df2\u9009\u62e9 "+a+" \u7ae0"}, +gjK(){return"\u5e9f\u5f03"}, +nr(a,b){return"\u7b2c "+b+" \u9875"}, +gns(a){return"\u5bc6\u7801"}, +gij(a){return"\u6682\u505c"}, +ghW(a){return"\u7b49\u5f85\u4e2d"}, +gnv(){return"\u641c\u7d22\u7c7b\u522b 'C'"}, +gny(){return"\u641c\u7d22\u67e5\u8be2 X"}, +gnz(){return"\u641c\u7d22\u6e90 'S'"}, +gnA(){return"\u5728 'S' \u6e90\u4e2d\u641c\u7d22\u6f2b\u753b 'M'"}, +gnw(){return"\u5728\u7c7b\u522b 'C' \u4e2d\u641c\u7d22\u6f2b\u753b 'M'"}, +gnx(){return"\u5728\u7c7b\u522b 'C' \u4e2d\u641c\u7d22\u6f2b\u753b 'M' \u7684\u7ae0\u8282 'CN'"}, +glq(){return"\u9605\u8bfb\u5668"}, +ghY(){return"\u9605\u8bfb\u6a21\u5f0f"}, +gnB(){return"\u4ece\u5de6\u5230\u53f3\uff08\u4e0d\u5206\u9875\uff09"}, +gnC(){return"\u4ece\u53f3\u5230\u5de6\uff08\u4e0d\u5206\u9875\uff09"}, +gnD(){return"\u4ece\u4e0a\u5230\u4e0b\uff08\u4e0d\u5206\u9875\uff09"}, +gnE(){return"\u9ed8\u8ba4"}, +gnF(){return"\u4ece\u5de6\u5230\u53f3\uff08\u5206\u9875\uff09"}, +gnG(){return"\u4ece\u53f3\u5230\u5de6\uff08\u5206\u9875\uff09"}, +gnH(){return"\u4ece\u4e0a\u5230\u4e0b\uff08\u5206\u9875\uff09"}, +gnI(){return"\u6761\u6f2b"}, +ghi(){return"\u70b9\u6309\u5e03\u5c40"}, +gnJ(){return"\u9ed8\u8ba4\u5e03\u5c40"}, +gnK(){return"\u5173\u95ed"}, +gnL(){return"\u8fb9\u7f18\u6a21\u5f0f"}, +gnM(){return"\u53cd\u8f6c\u70b9\u6309\u533a\u57df"}, +gnQ(){return"\u6eda\u52a8\u52a8\u753b"}, +goY(){return"\u6ed1\u52a8\u5207\u6362"}, +goZ(){return"\u6ed1\u52a8\u5207\u6362\u7ae0\u8282"}, +gnN(){return"Kindle \u6a21\u5f0f"}, +gnO(){return"L \u6837\u5f0f"}, +gnP(){return"\u5de6\u53f3\u6837\u5f0f"}, +gje(){return"\u586b\u5145"}, +gjd(){return"\u653e\u5927\u5927\u5c0f"}, +gnR(){return"Reddit"}, +gfd(a){return"\u5237\u65b0"}, +gnT(a){return"\u91cd\u7f6e"}, +gnU(){return"\u4ece\u5907\u4efd\u6587\u4ef6\u4e2d\u8fd8\u539f"}, +gnV(){return"\u8fd8\u539f\u5907\u4efd"}, +gnW(){return"\u5b8c\u6210\u5907\u4efd\u6062\u590d\uff01"}, +gnX(){return"\u6b63\u5728\u8fd8\u539f"}, +gh4(a){return"\u7ee7\u7eed"}, +gjP(){return"\u91cd\u8bd5"}, +gi_(){return"\u8fd0\u884c\u4e2d"}, +giq(a){return"\u4fdd\u5b58"}, +glH(){return"\u626b\u63cf"}, +gkx(a){return"\u641c\u7d22"}, +gky(){return"\u641c\u7d22\u66f4\u65b0\u4e2d"}, +gjp(){return"\u670d\u52a1\u5668"}, +gkA(){return"\u670d\u52a1\u5668\u5730\u5740"}, +glJ(){return"\u670d\u52a1\u5668\u5730\u5740"}, +gkz(){return"\u670d\u52a1\u5668\u7aef\u53e3"}, +glI(){return"\u670d\u52a1\u5668\u7aef\u53e3"}, +glK(){return"\u670d\u52a1\u5668\u7248\u672c"}, +gkB(){return"\u8bbe\u7f6e"}, +gkC(a){return"\u6392\u5e8f"}, +gfS(a){return"\u56fe\u6e90"}, +glN(){return"\u7b5b\u9009"}, +glO(){return"\u6700\u8fd1\u66f4\u65b0"}, +glP(){return"\u5e38\u7528"}, +glQ(){return"\u56fe\u6e90"}, +gc0(a){return"\u5f00\u59cb\u9605\u8bfb"}, +gnY(){return"\u6df1\u8272\u6a21\u5f0f"}, +gnZ(){return"\u6d45\u8272\u6a21\u5f0f"}, +go_(){return"\u8ddf\u968f\u7cfb\u7edf"}, +gp0(){return"\u4eca\u5929"}, +gp7(){return"\u6628\u5929"}, +go1(){return"\u5378\u8f7d"}, +go2(){return"\u6b63\u5728\u5378\u8f7d"}, +go3(){return"\u672a\u77e5\u4f5c\u8005"}, +go4(){return"\u672a\u77e5\u6f2b\u753b"}, +go5(){return"\u672a\u77e5\u56fe\u6e90"}, +gjS(){return"\u672a\u9605\u8bfb"}, +gio(a){return"\u66f4\u65b0"}, +go6(){return"\u66f4\u65b0\u5b8c\u6210"}, +glx(){return"\u66f4\u65b0"}, +gly(){return"\u66f4\u65b0\u6458\u8981"}, +glz(a){return"\u66f4\u65b0\u4e2d"}, +go7(){return"\u7528\u6237\u540d"}, +o8(a,b){return a+" \u6709\u66f4\u65b0\u53ef\u7528 "+b+" \uff01"}, +go9(){return"Web View"}, +goa(){return"\u66f4\u65b0\u4e86\u4ec0\u4e48\uff1f"}} +A.WU.prototype={ +gkL(){return"\u95dc\u65bc"}, +gjX(){return"\u65b0\u589e\u5206\u985e"}, +gm4(){return"\u65b0\u589e\u81f3\u66f8\u67b6"}, +gm7(){return"\u6240\u6709\u904e\u6ffe\u5668"}, +gkO(){return"\u61c9\u7528\u7a0b\u5f0f\u8a9e\u8a00"}, +gkP(){return"\u61c9\u7528\u7a0b\u5f0f\u4e3b\u984c"}, +gkQ(){return"Tachidesk Sorayomi"}, +gkR(a){return"\u5916\u89c0"}, +gkS(){return"\u9a57\u8b49\u65b9\u5f0f"}, +gm9(){return"\u57fa\u672c\u9a57\u8b49"}, +gma(){return"\u7121"}, +gjY(){return"\u5099\u4efd\u548c\u6062\u5fa9"}, +gmb(){return"\u5fbd\u7ae0"}, +gfU(){return"\u5df2\u65b0\u589e\u66f8\u7c64"}, +gjB(){return"\u700f\u89bd"}, +gj_(){return"\u69cb\u5efa\u6642\u9593"}, +gmd(){return"\u5df2\u6e05\u9664\u5feb\u53d6"}, +gdP(a){return"\u53d6\u6d88"}, +gkW(){return"\u5206\u985e"}, +gmf(){return"\u66f4\u65b0\u5206\u985e"}, +gfW(a){return"\u901a\u9053"}, +mh(a){return"\u7b2c "+A.h(a)+" \u7ae0"}, +gmi(){return"\u6309\u65b0\u589e\u65e5\u671f"}, +gmj(){return"\u6309\u4f86\u6e90"}, +gmk(){return"\u6309\u4e0a\u50b3\u65e5\u671f"}, +gml(){return"\u6aa2\u67e5\u4f3a\u670d\u5668\u66f4\u65b0"}, +gmm(){return"\u6aa2\u67e5\u66f4\u65b0"}, +gmn(){return"\u6e05\u9664\u5feb\u53d6"}, +gmo(a){return"\u7528\u6236\u7aef"}, +gmp(){return"\u7528\u6236\u7aef\u7248\u672c"}, +gdU(a){return"\u95dc\u9589"}, +gh8(a){return"\u5df2\u95b1"}, +mu(a){return"'"+a+"' \u5df2\u8907\u88fd\uff01"}, +gmw(){return"\u4ee5 Tachidesk \u5099\u4efd\u6a94\u5099\u4efd\u66f8\u67b6"}, +gmx(){return"\u5efa\u7acb\u5099\u4efd"}, +gkZ(a){return"\u8a8d\u8b49"}, +my(a){return""+a+" \u5929\u524d"}, +gjE(){return"\u9810\u8a2d\u65b0\u589e\u81f3\u6b64\u5206\u985e"}, +gks(a){return"\u79fb\u9664"}, +gmz(){return"\u6b64\u5206\u985e\u4e0b\u7684\u6f2b\u756b\u5c07\u5408\u4f75\u81f3\u9810\u8a2d\u5206\u985e\uff01"}, +gmA(){return"\u78ba\u5b9a\uff1f"}, +gj0(){return"Discord"}, +gmB(a){return"\u986f\u793a"}, +gl0(){return"\u986f\u793a\u6a21\u5f0f"}, +gmC(){return"\u8a73\u7d30\u5217\u8868"}, +gmD(){return"\u7db2\u683c"}, +gmE(){return"\u5217\u8868"}, +gfE(a){return"\u5df2\u4e0b\u8f09"}, +gl1(){return"\u4e0b\u8f09"}, +gj2(){return"\u7de8\u8f2f\u5206\u985e"}, +gmF(){return"\u5206\u985e\u540d\u4e0d\u80fd\u70ba\u7a7a"}, +gl3(){return"\u6240\u9078\u63d2\u4ef6\u4e0d\u5b58\u5728"}, +gl4(){return"\u672a\u9078\u53d6\u4efb\u4f55\u6587\u4ef6\uff01"}, +mG(a){return"\u8acb\u9078\u64c7\u542b "+a+" \u7684\u63d2\u4ef6"}, +mH(a){return'\u6253\u958b\u5931\u6557\n\u5df2\u8907\u88fd "'+a+'" \u81f3\u526a\u8cbc\u7c3f'}, +gmI(){return"\u5bc6\u78bc\u4e0d\u80fd\u70ba\u7a7a"}, +gjH(){return"\u767c\u751f\u932f\u8aa4\uff01"}, +gmJ(){return"\u7528\u6236\u540d\u4e0d\u80fd\u70ba\u7a7a"}, +gmK(){return"\u63d2\u4ef6\u5b89\u88dd\u5b8c\u6210\uff01"}, +gmL(){return"\u63d2\u4ef6\u5217\u8868\u70ba\u7a7a"}, +gmM(a){return"\u63d2\u4ef6"}, +ghx(){return"\u66f4\u65b0\u5931\u6557"}, +ghd(a){return"\u7be9\u9078"}, +gmQ(a){return"\u5df2\u95b1"}, +gkt(){return"\u4e00\u822c"}, +gkw(){return"GitHub"}, +glD(){return"\u5168\u57df\u641c\u5c0b"}, +glE(){return"\u5168\u57df\u66f4\u65b0"}, +gmR(){return"\u5e6b\u52a9"}, +gfJ(){return"\u5728\u66f8\u67b6\u4e2d"}, +gmT(){return"\u5b89\u88dd"}, +gmU(a){return"\u5b89\u88dd\u4e2d"}, +gmV(){return"\u6b63\u5728\u5b89\u88dd"}, +glb(a){return"\u8a9e\u8a00"}, +gmZ(){return"\u6700\u65b0"}, +ghz(){return"\u66f8\u67b6"}, +geq(){return"\u6f2b\u756b"}, +gn0(){return"\u7db2\u683c\u5927\u5c0f"}, +gn1(){return"\u6f2b\u756b\u4f86\u6e90\u7f3a\u5931"}, +gn2(){return"\u540d\u7a31"}, +gn3(){return"\u65b0\u589e\u65e5\u671f"}, +gn5(){return"\u672a\u95b1\u8b80"}, +gn4(){return"\u6700\u8fd1\u95b1\u8b80"}, +gn6(){return"\u5df2\u53d6\u6d88"}, +gn7(){return"\u5df2\u5b8c\u6210"}, +gn8(){return"\u5df2\u8a8d\u8b49"}, +gn9(){return"\u65b7\u66f4"}, +gna(){return"\u9023\u8f09\u4e2d"}, +gnb(){return"\u5b8c\u7d50"}, +gnc(){return"\u672a\u77e5"}, +gnd(){return"\u63d2\u4ef6\u7f3a\u5931"}, +ghA(){return"\u8ddf\u8e2a\u5668\u7f3a\u5931"}, +glg(){return"\u66f4\u591a"}, +gne(){return"\u79fb\u81f3\u5e95\u90e8"}, +gnf(){return"\u79fb\u81f3\u9802\u90e8"}, +lh(a,b){return a+"\uff1a"+b}, +gng(){return"\u6709\u53ef\u7528\u66f4\u65b0"}, +pR(a){return"\u4e0b\u7ae0\uff1a"+a}, +gkh(){return"\u5c1a\u672a\u6709\u4efb\u4f55\u5206\u985e\u3002\n\uff08\u63d0\u793a\uff1a\u8f15\u89f8\u52a0\u865f\u6309\u9375\u5efa\u7acb\u4e00\u500b\u5206\u985e\u4ee5\u7ba1\u7406\u4f60\u7684\u66f8\u67b6\uff09"}, +gni(){return"\u5c1a\u672a\u6709\u4efb\u4f55\u5206\u985e\u3002\n\u5728\u8a2d\u5b9a\u5167\u5efa\u7acb\u4e00\u500b\u4ee5\u7ba1\u7406\u4f60\u7684\u66f8\u67b6"}, +gnj(){return"\u672a\u5728\u6b64\u5206\u985e\u627e\u5230\u6f2b\u756b\n\uff08\u63d0\u793a\uff1a\u6aa2\u67e5\u4f60\u7684\u641c\u5c0b\u53ca\u7be9\u9078\u5668\uff01\uff09"}, +glj(){return"\u672a\u627e\u5230\u7ae0\u7bc0"}, +gnk(){return"\u7121\u4e0b\u8f09"}, +gki(){return"\u672a\u627e\u5230\u6f2b\u756b"}, +lk(a){return"\u5171 "+a+" \u7ae0"}, +gnl(){return"\u672a\u627e\u5230\u7d50\u679c"}, +gll(){return"\u672a\u627e\u5230\u4f86\u6e90"}, +glm(){return"\u6b63\u5728\u4f7f\u7528\u6700\u65b0\u7248\u672c"}, +gnm(){return"\u7121\u53ef\u7528\u66f4\u65b0"}, +gnn(){return"\u5728\u63d2\u4ef6\u548c\u4f86\u6e90\u4e2d\u986f\u793a NSFW \u5167\u5bb9"}, +gno(){return"18+"}, +gnp(){return"\u9019\u4e0d\u80fd\u9632\u6b62\u975e\u5b98\u65b9\u6216\u53ef\u80fd\u88ab\u932f\u8aa4\u6a19\u8a18\u7684\u63d2\u4ef6\u5728\u61c9\u7528\u7a0b\u5f0f\u4e2d\u986f\u793a NSFW(18+) \u5167\u5bb9"}, +ln(a){return"\u5df2\u9078\u64c7 "+a+" \u7ae0"}, +gjK(){return"\u5ee2\u68c4"}, +nr(a,b){return"\u7b2c "+b+" \u9801"}, +gns(a){return"\u5bc6\u78bc"}, +gij(a){return"\u66ab\u505c"}, +ghW(a){return"\u7b49\u5f85\u4e2d"}, +pV(a){return"\u4e0a\u7ae0\uff1a"+a}, +gnv(){return"\u641c\u5c0b\u5206\u985e 'C'"}, +gny(){return"\u641c\u5c0b\u67e5\u8a62 X \uff08\u7d50\u679c\u57fa\u65bc\u986f\u793a\u4e2d\u5167\u5bb9\uff09"}, +gnz(){return"\u641c\u5c0b\u4f86\u6e90 'S'"}, +gnA(){return"\u5728\u4f86\u6e90 'S' \u4e2d\u641c\u5c0b\u6f2b\u756b 'M'"}, +gnw(){return"\u5728\u5206\u985e 'C' \u4e2d\u641c\u5c0b\u6f2b\u756b 'M'"}, +gnx(){return"\u5728\u5206\u985e 'C' \u4e2d\u641c\u7d22\u6f2b\u756b 'M' \u7684\u7ae0\u7bc0\u540d 'CN'"}, +gpW(){return"\u63d0\u793a\uff1a\u8f38\u5165 '?' \u4ee5\u67e5\u770b\u6240\u6709\u6307\u4ee4"}, +glq(){return"\u95b1\u8b80\u5668"}, +ghY(){return"\u95b1\u8b80\u6a21\u5f0f"}, +gnB(){return"\u9023\u7e8c\u5de6\u81f3\u53f3"}, +gnC(){return"\u9023\u7e8c\u53f3\u81f3\u5de6"}, +gnD(){return"\u9023\u7e8c\u4e0a\u81f3\u4e0b"}, +gnE(){return"\u9810\u8a2d"}, +gnF(){return"\u5206\u9801\u5de6\u81f3\u53f3"}, +gnG(){return"\u5206\u9801\u53f3\u81f3\u5de6"}, +gnH(){return"\u5206\u9801\u4e0a\u81f3\u4e0b"}, +gnI(){return"\u689d\u6f2b"}, +ghi(){return"\u624b\u52e2\u4f48\u5c40"}, +gnJ(){return"\u9810\u8a2d"}, +gnK(){return"\u505c\u7528"}, +gnL(){return"\u908a\u7de3"}, +gnM(){return"\u53cd\u8f49\u624b\u52e2\u5340\u57df"}, +gnQ(){return"\u6ed1\u52d5\u52d5\u756b"}, +goY(){return"\u6ed1\u52d5\u5207\u63db"}, +goZ(){return"\u6ed1\u52d5\u5207\u63db\u7ae0\u7bc0"}, +gnN(){return"Kindle \u6a21\u5f0f"}, +gnO(){return"L \u5f62"}, +gnP(){return"\u5de6\u53f3"}, +gpX(){return"\u95b1\u8b80\u5668\u8d77\u59cb\u8986\u84cb\u5c64"}, +gpY(){return"\u6253\u958b\u7ae0\u7bc0\u6642\u986f\u793a\u6a19\u984c\u548c\u8a2d\u5b9a"}, +gje(){return"\u586b\u5145"}, +gjd(){return"\u653e\u5927\u5927\u5c0f"}, +gnR(){return"Reddit"}, +gfd(a){return"\u91cd\u65b0\u6574\u7406"}, +gq_(a){return"\u91cd\u65b0\u6574\u7406"}, +gnT(a){return"\u91cd\u8a2d"}, +gnU(){return"\u5f9e Tachidesk \u5099\u4efd\u4e2d\u9084\u539f"}, +gnV(){return"\u9084\u539f\u5099\u4efd"}, +gnW(){return"\u5099\u4efd\u9084\u539f\u5df2\u5b8c\u6210\uff01"}, +gnX(){return"\u6b63\u5728\u9084\u539f"}, +gh4(a){return"\u7e7c\u7e8c"}, +gjP(){return"\u91cd\u8a66"}, +gi_(){return"\u904b\u4f5c\u4e2d"}, +giq(a){return"\u5132\u5b58"}, +glH(){return"\u6383\u7784"}, +gkx(a){return"\u641c\u5c0b"}, +gky(){return"\u641c\u5c0b\u66f4\u65b0\u4e2d"}, +gpe(){return"\u9078\u53d6\u4e0b 10 \u500b"}, +gpf(){return"\u9078\u53d6\u672a\u8b80"}, +gpd(){return"\u9078\u53d6\u5340\u9593"}, +gjp(){return"\u4f3a\u670d\u5668"}, +gkA(){return"\u4f3a\u670d\u5668\u7db2\u5740"}, +glJ(){return"\u4f3a\u670d\u5668\u7db2\u5740"}, +gkz(){return"\u4f3a\u670d\u5668\u57e0"}, +glI(){return"\u4f3a\u670d\u5668\u57e0"}, +glK(){return"\u4f3a\u670d\u5668\u7248\u672c"}, +gkB(){return"\u8a2d\u5b9a"}, +gkC(a){return"\u6392\u5e8f"}, +gfS(a){return"\u4f86\u6e90"}, +glN(){return"\u7be9\u9078"}, +glO(){return"\u6700\u65b0"}, +glP(){return"\u71b1\u9580"}, +glQ(){return"\u4f86\u6e90"}, +gc0(a){return"\u958b\u59cb\u95b1\u8b80"}, +gnY(){return"\u6df1\u8272"}, +gnZ(){return"\u4eae\u8272"}, +go_(){return"\u7cfb\u7d71"}, +gp0(){return"\u4eca\u5929"}, +gp7(){return"\u6628\u5929"}, +go1(){return"\u89e3\u9664\u5b89\u88dd"}, +go2(){return"\u6b63\u5728\u89e3\u9664\u5b89\u88dd"}, +go3(){return"\u672a\u77e5\u4f5c\u8005"}, +go4(){return"\u672a\u77e5\u6f2b\u756b"}, +go5(){return"\u672a\u77e5\u4f86\u6e90"}, +gjS(){return"\u672a\u95b1\u8b80"}, +gio(a){return"\u66f4\u65b0"}, +go6(){return"\u66f4\u65b0\u5df2\u5b8c\u6210"}, +glx(){return"\u66f4\u65b0"}, +gly(){return"\u66f4\u65b0\u6982\u8981"}, +glz(a){return"\u66f4\u65b0\u4e2d"}, +go7(){return"\u7528\u6236\u540d"}, +o8(a,b){return a+" \u6709\u66f4\u65b0\u53ef\u7528 "+b+"\uff01"}, +go9(){return"Web View"}, +goa(){return"\u66f4\u65b0\u4e86\u4ec0\u9ebc\uff1f"}} +A.hY.prototype={} +A.hZ.prototype={ +LG(){}, +m(){}, +A3(a){}, +a7(a){var s +a.$0() +s=this.a +s.oJ$=!1 +s.ef()}} +A.ml.prototype={} +A.a1J.prototype={ +bm(a,b){var s,r,q,p,o=this +if(o.j3$==null){s=new A.ml(A.bv8(o,a),t.H_) +o.j3$=s +r=o.uV$ +r.yO(r.c,s,!1)}else{s=A.o(a) +r=o.j3$.a.c +r.toString +if(s!==A.o(r)){s=o.j3$.a.c +s.toString +q=A.o(s) +A.bl2(o) +throw A.c(A.R("Type mismatch between hooks:\n- previous hook: "+q.j(0)+"\n- new hook: "+A.o(a).j(0)+"\n"))}else{s=o.j3$.a.c +s.toString +if(a!==s)if(A.bGy(s,a)){r=o.j3$.a +r.c=a +r.A3(s)}else{s=o.oI$ +if(s==null)s=o.oI$=new A.jF(t.n_) +r=o.j3$.a +s.yO(s.c,new A.ml(r,t.H_),!1) +r=o.j3$ +r.toString +r.a=A.bv8(o,a)}}}p=b.a(o.j3$.a.A(o)) +s=o.j3$ +o.j3$=s.gnh(s) +return p}} +A.bcY.prototype={ +$1(a){return a.a.$0()}, +$S:230} +A.a1K.prototype={ +bJ(a){return new A.am9(null,new A.jF(t.n_),new A.jF(t.gL),null,!1,null,!1,!1,this,B.al)}} +A.am9.prototype={} +A.agC.prototype={} +A.agB.prototype={} +A.apo.prototype={ +c_(a,b){this.oJ$=!1 +this.aiO(0,b)}, +cp(){this.oJ$=!1 +this.Ol()}, +aP(){var s,r,q=this,p=q.oJ$!==!0||q.ET$.ed(0,new A.bcY()) +q.oJ$=null +q.ET$.ab(0) +if(!p){r=q.x4$ +r.toString +return r}r=q.uV$ +q.j3$=r.b===0?null:r.gN(r) +$.b7=q +try{q.x4$=q.aiN()}finally{q.oJ$=null +A.bl2(q) +$.b7=null +r=q.oI$ +if(r!=null&&!r.gai(r)){for(r=q.oI$,s=r.ga1(r);s!=null;s=s.gBj())s.a.m() +q.oI$=null}}r=q.x4$ +r.toString +return r}, +ae(a){return this.YM(null,a)}, +lw(){var s,r,q,p,o,n,m,l=null +this.yk() +p=this.uV$ +if(!p.gai(p))for(s=p.ga1(p),p=t.f6;s!=null;s=s.gBj())try{s.a.m()}catch(o){r=A.ai(o) +q=A.aH(o) +n=A.o(s).j(0) +m=$.jm() +if(m!=null)m.$1(new A.cc(r,q,"hooks library",new A.hu("while disposing "+n,!1,!0,l,l,l,!1,l,B.bk,B.aS,"",!0,!1,l,B.e2,p),l,!1))}}, +fk(){var s,r,q,p,o,n,m,l,k,j=null +for(p=this.uV$,p=A.bky(p,p.$ti.c),o=t.f6,n=p.$ti.c;p.u();){m=p.c +s=m==null?n.a(m):m +try{s.toString}catch(l){r=A.ai(l) +q=A.aH(l) +m=A.o(s).j(0) +k=$.jm() +if(k!=null)k.$1(new A.cc(r,q,"hooks library",new A.hu("while deactivating "+m,!1,!0,j,j,j,!1,j,B.bk,B.aS,"",!0,!1,j,B.e2,o),j,!1))}}this.Oj()}} +A.Uk.prototype={ +a8(){return new A.anM()}} +A.anM.prototype={} +A.Px.prototype={ +a8(){return new A.add()}} +A.add.prototype={ +gHE(){var s,r,q,p,o,n,m,l,k=this,j=k.d +if(j===$){s=k.c +r=s.w +q=s.b +p=s.c +o=s.d +n=s.f +m=s.r +l=A.bw(s.x,o,q,n,p,m,s.e,r) +k.d!==$&&A.am() +k.d=l +j=l}return j}, +A3(a){var s,r=this +r.Oo(a) +if(r.c.w!==a.w)r.gHE().acK(r.c.w) +s=r.c.b +if(s.a!==a.b.a)r.gHE().e=r.c.b}, +A(a){return this.gHE()}, +m(){this.gHE().m()}} +A.To.prototype={ +a8(){return new A.an5()}} +A.an5.prototype={ +zQ(a){var s=this.a +s.toString +return this.d=new A.za(a,"created by "+s.j(0))}, +m(){}, +A(a){var s=this.d +if(s!=null)s.sM7(0,!A.aae(a)) +return this}, +$iaN:1} +A.R_.prototype={ +a8(){return new A.agf()}} +A.agf.prototype={ +gQ8(){var s,r,q=this.d +if(q===$){s=this.c +r=A.wT(!0,s.b,!0,!0,s.c,s.d,!1) +q!==$&&A.am() +this.d=r +q=r}return q}, +A3(a){var s,r=this,q=r.gQ8() +r.c.toString +q.slM(!1) +r.c.toString +q.seJ(!0) +r.c.toString +q.swN(!0) +s=r.c +q.f=s.c +q.r=s.d}, +A(a){return this.gQ8()}, +m(){return this.gQ8().m()}} +A.zJ.prototype={ +a8(){return new A.Ga()}} +A.Ga.prototype={ +LG(){this.YR() +this.c.b.P(0,this.gDc())}, +A3(a){var s,r,q=this +q.Oo(a) +s=a.b +if(q.c.b!==s){r=q.gDc() +s.J(0,r) +q.c.b.P(0,r)}}, +A(a){}, +R7(){this.a7(new A.b66())}, +m(){this.c.b.J(0,this.gDc())}} +A.b66.prototype={ +$0(){}, +$S:0} +A.Sf.prototype={ +a8(){return new A.aiV()}} +A.aiV.prototype={ +gqA(a){var s,r,q=this.d +if(q===$){s=this.c +r=A.br5(s.b,!0,s.d) +q!==$&&A.am() +this.d=r +q=r}return q}, +A(a){return this.gqA(this)}, +m(){return this.gqA(this).m()}} +A.xT.prototype={} +A.bgI.prototype={ +$0(){return new A.xT(this.a,this.b.h("xT<0>"))}, +$S(){return this.b.h("xT<0>()")}} +A.bgH.prototype={ +$0(){return this.a}, +$S(){return this.b.h("0()")}} +A.ib.prototype={ +a8(){return new A.RU(this.$ti.h("RU<1>"))}, +aPc(){return this.b.$0()}} +A.RU.prototype={ +A(a){var s,r=this,q=r.d +if(q===$){s=r.c.aPc() +r.d!==$&&A.am() +r.d=s +q=s}return q}} +A.dz.prototype={ +a8(){return new A.afE()}, +a90(a){return this.b.$0()}} +A.afE.prototype={ +LG(){this.YR() +this.d=this.c.a90(0)}, +A3(a){var s,r=this +r.Oo(a) +if(r.c.a==null){s=r.d +if(s!=null)s.$0() +r.d=r.c.a90(0)}}, +A(a){}, +m(){var s=this.d +return s==null?null:s.$0()}} +A.cW.prototype={ +a8(){return new A.GQ(this.$ti.h("GQ<1>"))}} +A.GQ.prototype={ +ga4H(){var s,r=this,q=r.d +if(q===$){s=A.ed(r.c.b,r.$ti.c) +s.P(0,r.gDc()) +r.d!==$&&A.am() +r.d=s +q=s}return q}, +m(){var s=this.ga4H() +s.ah$=$.b5() +s.ak$=0}, +A(a){return this.ga4H()}, +R7(){this.a7(new A.baQ())}} +A.baQ.prototype={ +$0(){}, +$S:0} +A.TM.prototype={ +a8(){return new A.amt()}, +gt(a){return this.b}} +A.amt.prototype={ +gqA(a){var s,r,q,p=this,o=p.d +if(o===$){s=p.c +r=s.b +q=A.bsq(null,s.d,r,s.c) +p.d!==$&&A.am() +p.d=q +o=q}return o}, +A(a){return this.gqA(this)}, +m(){return this.gqA(this).m()}} +A.mr.prototype={ +a8(){return new A.amK()}} +A.amK.prototype={ +ga_X(){var s,r=this,q=r.d +if(q===$){s=A.bKE(r.c.b) +r.d!==$&&A.am() +r.d=s +q=s}return q}, +A(a){return this.ga_X()}, +m(){var s=this.ga_X() +s.ah$=$.b5() +s.ak$=0 +return null}} +A.a1q.prototype={$iaz:1} +A.agr.prototype={ +xj(a){return $.bn_().n(0,a.ge_(a))}, +ke(a,b){return $.bMw.cJ(0,b,new A.b4x(b))}, +vM(a){return!1}, +j(a){return"GlobalCupertinoLocalizations.delegate("+$.bn_().a+" locales)"}} +A.b4x.prototype={ +$0(){var s,r,q,p,o,n,m,l,k,j,i +A.bwU() +s=this.a +r=A.iL(s.rP("_")) +q=A.b4("fullYearFormat") +p=A.b4("dayFormat") +o=A.b4("mediumDateFormat") +n=A.b4("singleDigitHourFormat") +m=A.b4("singleDigitMinuteFormat") +l=A.b4("doubleDigitMinuteFormat") +k=A.b4("singleDigitSecondFormat") +j=A.b4("decimalFormat") +i=new A.b4y(q,p,o,n,m,l,k,j) +if(A.a_J(r))i.$1(r) +else if(A.a_J(s.ge_(s)))i.$1(s.ge_(s)) +else i.$1(null) +s=A.bSG(s,q.aF(),p.aF(),o.aF(),n.aF(),m.aF(),l.aF(),k.aF(),j.aF()) +s.toString +return new A.ct(s,t.u4)}, +$S:594} +A.b4y.prototype={ +$1(a){var s=this +s.a.b=A.ax7(a) +s.b.b=A.bEo(a) +s.c.b=A.ax6(a) +s.d.b=A.boE("HH",a) +s.e.b=A.bEp(a) +s.f.b=A.boE("mm",a) +s.r.b=A.bEq(a) +s.w.b=A.aKJ(a)}, +$S:43} +A.YQ.prototype={ +gV(){return"Kopieer"}, +gW(){return"Knip"}, +gX(){return"Plak"}, +gO(){return"Kies alles"}} +A.YR.prototype={ +gV(){return"\u1245\u12f3"}, +gW(){return"\u1241\u1228\u1325"}, +gX(){return"\u1208\u1325\u134d"}, +gO(){return"\u1201\u1209\u1295\u121d \u121d\u1228\u1325"}} +A.YS.prototype={ +gV(){return"\u0646\u0633\u062e"}, +gW(){return"\u0642\u0635"}, +gX(){return"\u0644\u0635\u0642"}, +gO(){return"\u0627\u062e\u062a\u064a\u0627\u0631 \u0627\u0644\u0643\u0644"}} +A.YT.prototype={ +gV(){return"\u09aa\u09cd\u09f0\u09a4\u09bf\u09b2\u09bf\u09aa\u09bf \u0995\u09f0\u0995"}, +gW(){return"\u0995\u09be\u099f \u0995\u09f0\u0995"}, +gX(){return"\u09aa\u09c7'\u09b7\u09cd\u099f \u0995\u09f0\u0995"}, +gO(){return"\u09b8\u0995\u09b2\u09cb \u09ac\u09be\u099b\u09a8\u09bf \u0995\u09f0\u0995"}} +A.YU.prototype={ +gV(){return"Kopyalay\u0131n"}, +gW(){return"K\u0259sin"}, +gX(){return"Yerl\u0259\u015fdirin"}, +gO(){return"Ham\u0131s\u0131n\u0131 se\xe7in"}} +A.YV.prototype={ +gV(){return"\u041a\u0430\u043f\u0456\u0440\u0430\u0432\u0430\u0446\u044c"}, +gW(){return"\u0412\u044b\u0440\u0430\u0437\u0430\u0446\u044c"}, +gX(){return"\u0423\u0441\u0442\u0430\u0432\u0456\u0446\u044c"}, +gO(){return"\u0412\u044b\u0431\u0440\u0430\u0446\u044c \u0443\u0441\u0435"}} +A.YW.prototype={ +gV(){return"\u041a\u043e\u043f\u0438\u0440\u0430\u043d\u0435"}, +gW(){return"\u0418\u0437\u0440\u044f\u0437\u0432\u0430\u043d\u0435"}, +gX(){return"\u041f\u043e\u0441\u0442\u0430\u0432\u044f\u043d\u0435"}, +gO(){return"\u0418\u0437\u0431\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0432\u0441\u0438\u0447\u043a\u0438"}} +A.YX.prototype={ +gV(){return"\u0995\u09aa\u09bf \u0995\u09b0\u09c1\u09a8"}, +gW(){return"\u0995\u09be\u099f \u0995\u09b0\u09c1\u09a8"}, +gX(){return"\u09aa\u09c7\u09b8\u09cd\u099f \u0995\u09b0\u09c1\u09a8"}, +gO(){return"\u09b8\u09ac \u09ac\u09c7\u099b\u09c7 \u09a8\u09bf\u09a8"}} +A.YY.prototype={ +gV(){return"Kopiraj"}, +gW(){return"Izre\u017ei"}, +gX(){return"Zalijepi"}, +gO(){return"Odaberi sve"}} +A.YZ.prototype={ +gV(){return"Copia"}, +gW(){return"Retalla"}, +gX(){return"Enganxa"}, +gO(){return"Selecciona-ho tot"}} +A.Z_.prototype={ +gV(){return"Kop\xedrovat"}, +gW(){return"Vyjmout"}, +gX(){return"Vlo\u017eit"}, +gO(){return"Vybrat v\u0161e"}} +A.Z0.prototype={ +gV(){return"Cop\xefo"}, +gW(){return"Torri"}, +gX(){return"Gludo"}, +gO(){return"Dewis y Cyfan"}} +A.Z1.prototype={ +gV(){return"Kopi\xe9r"}, +gW(){return"Klip"}, +gX(){return"Inds\xe6t"}, +gO(){return"V\xe6lg alle"}} +A.IO.prototype={ +gV(){return"Kopieren"}, +gW(){return"Ausschneiden"}, +gX(){return"Einsetzen"}, +gO(){return"Alles ausw\xe4hlen"}} +A.Z2.prototype={} +A.Z3.prototype={ +gV(){return"\u0391\u03bd\u03c4\u03b9\u03b3\u03c1\u03b1\u03c6\u03ae"}, +gW(){return"\u0391\u03c0\u03bf\u03ba\u03bf\u03c0\u03ae"}, +gX(){return"\u0395\u03c0\u03b9\u03ba\u03cc\u03bb\u03bb\u03b7\u03c3\u03b7"}, +gO(){return"\u0395\u03c0\u03b9\u03bb\u03bf\u03b3\u03ae \u03cc\u03bb\u03c9\u03bd"}} +A.IP.prototype={ +gV(){return"Copy"}, +gW(){return"Cut"}, +gX(){return"Paste"}, +gO(){return"Select All"}} +A.Z4.prototype={ +gO(){return"Select all"}} +A.Z5.prototype={ +gO(){return"Select all"}} +A.Z6.prototype={ +gO(){return"Select all"}} +A.Z7.prototype={ +gO(){return"Select all"}} +A.Z8.prototype={ +gO(){return"Select all"}} +A.Z9.prototype={ +gO(){return"Select all"}} +A.Za.prototype={ +gO(){return"Select all"}} +A.Zb.prototype={ +gO(){return"Select all"}} +A.IQ.prototype={ +gV(){return"Copiar"}, +gW(){return"Cortar"}, +gX(){return"Pegar"}, +gO(){return"Seleccionar todo"}} +A.Zc.prototype={} +A.Zd.prototype={} +A.Ze.prototype={} +A.Zf.prototype={} +A.Zg.prototype={} +A.Zh.prototype={} +A.Zi.prototype={} +A.Zj.prototype={} +A.Zk.prototype={} +A.Zl.prototype={} +A.Zm.prototype={} +A.Zn.prototype={} +A.Zo.prototype={} +A.Zp.prototype={} +A.Zq.prototype={} +A.Zr.prototype={} +A.Zs.prototype={} +A.Zt.prototype={} +A.Zu.prototype={} +A.Zv.prototype={} +A.Zw.prototype={ +gV(){return"Kopeeri"}, +gW(){return"L\xf5ika"}, +gX(){return"Kleebi"}, +gO(){return"Vali k\xf5ik"}} +A.Zx.prototype={ +gV(){return"Kopiatu"}, +gW(){return"Ebaki"}, +gX(){return"Itsatsi"}, +gO(){return"Hautatu guztiak"}} +A.Zy.prototype={ +gV(){return"\u06a9\u067e\u06cc"}, +gW(){return"\u0628\u0631\u0634"}, +gX(){return"\u062c\u0627\u06cc\u200c\u06af\u0630\u0627\u0631\u06cc"}, +gO(){return"\u0627\u0646\u062a\u062e\u0627\u0628 \u0647\u0645\u0647"}} +A.Zz.prototype={ +gV(){return"Kopioi"}, +gW(){return"Leikkaa"}, +gX(){return"Liit\xe4"}, +gO(){return"Valitse kaikki"}} +A.ZA.prototype={ +gV(){return"Kopyahin"}, +gW(){return"I-cut"}, +gX(){return"I-paste"}, +gO(){return"Piliin Lahat"}} +A.IR.prototype={ +gV(){return"Copier"}, +gW(){return"Couper"}, +gX(){return"Coller"}, +gO(){return"Tout s\xe9lect."}} +A.ZB.prototype={ +gO(){return"Tout s\xe9lectionner"}} +A.ZC.prototype={ +gV(){return"Copiar"}, +gW(){return"Cortar"}, +gX(){return"Pegar"}, +gO(){return"Seleccionar todo"}} +A.ZD.prototype={ +gV(){return"Kopieren"}, +gW(){return"Ausschneiden"}, +gX(){return"Einsetzen"}, +gO(){return"Alles ausw\xe4hlen"}} +A.ZE.prototype={ +gV(){return"\u0a95\u0ac9\u0aaa\u0abf \u0a95\u0ab0\u0acb"}, +gW(){return"\u0a95\u0abe\u0aaa\u0acb"}, +gX(){return"\u0aaa\u0ac7\u0ab8\u0acd\u0a9f \u0a95\u0ab0\u0acb"}, +gO(){return"\u0aac\u0aa7\u0abe \u0aaa\u0ab8\u0a82\u0aa6 \u0a95\u0ab0\u0acb"}} +A.ZF.prototype={ +gV(){return"\u05d4\u05e2\u05ea\u05e7\u05d4"}, +gW(){return"\u05d2\u05d6\u05d9\u05e8\u05d4"}, +gX(){return"\u05d4\u05d3\u05d1\u05e7\u05d4"}, +gO(){return"\u05d1\u05d7\u05d9\u05e8\u05ea \u05d4\u05db\u05d5\u05dc"}} +A.ZG.prototype={ +gV(){return"\u0915\u0949\u092a\u0940 \u0915\u0930\u0947\u0902"}, +gW(){return"\u0915\u093e\u091f\u0947\u0902"}, +gX(){return"\u091a\u093f\u092a\u0915\u093e\u090f\u0902"}, +gO(){return"\u0938\u092d\u0940 \u091a\u0941\u0928\u0947\u0902"}} +A.ZH.prototype={ +gV(){return"Kopiraj"}, +gW(){return"Izre\u017ei"}, +gX(){return"Zalijepi"}, +gO(){return"Odaberi sve"}} +A.ZI.prototype={ +gV(){return"M\xe1sol\xe1s"}, +gW(){return"Kiv\xe1g\xe1s"}, +gX(){return"Beilleszt\xe9s"}, +gO(){return"\xd6sszes kijel\xf6l\xe9se"}} +A.ZJ.prototype={ +gV(){return"\u054a\u0561\u057f\u0573\u0565\u0576\u0565\u056c"}, +gW(){return"\u053f\u057f\u0580\u0565\u056c"}, +gX(){return"\u054f\u0565\u0572\u0561\u0564\u0580\u0565\u056c"}, +gO(){return"\u0546\u0577\u0565\u056c \u0562\u0578\u056c\u0578\u0580\u0568"}} +A.ZK.prototype={ +gV(){return"Salin"}, +gW(){return"Potong"}, +gX(){return"Tempel"}, +gO(){return"Pilih Semua"}} +A.ZL.prototype={ +gV(){return"Afrita"}, +gW(){return"Klippa"}, +gX(){return"L\xedma"}, +gO(){return"Velja allt"}} +A.ZM.prototype={ +gV(){return"Copia"}, +gW(){return"Taglia"}, +gX(){return"Incolla"}, +gO(){return"Seleziona tutto"}} +A.ZN.prototype={ +gV(){return"\u30b3\u30d4\u30fc"}, +gW(){return"\u5207\u308a\u53d6\u308a"}, +gX(){return"\u8cbc\u308a\u4ed8\u3051"}, +gO(){return"\u3059\u3079\u3066\u9078\u629e"}} +A.ZO.prototype={ +gV(){return"\u10d9\u10dd\u10de\u10d8\u10e0\u10d4\u10d1\u10d0"}, +gW(){return"\u10d0\u10db\u10dd\u10ed\u10e0\u10d0"}, +gX(){return"\u10e9\u10d0\u10e1\u10db\u10d0"}, +gO(){return"\u10e7\u10d5\u10d4\u10da\u10d0\u10e1 \u10d0\u10e0\u10e9\u10d4\u10d5\u10d0"}} +A.ZP.prototype={ +gV(){return"\u041a\u04e9\u0448\u0456\u0440\u0443"}, +gW(){return"\u049a\u0438\u044e"}, +gX(){return"\u049a\u043e\u044e"}, +gO(){return"\u0411\u0430\u0440\u043b\u044b\u0493\u044b\u043d \u0442\u0430\u04a3\u0434\u0430\u0443"}} +A.ZQ.prototype={ +gV(){return"\u1785\u1798\u17d2\u179b\u1784"}, +gW(){return"\u1780\u17b6\u178f\u17cb"}, +gX(){return"\u178a\u17b6\u1780\u17cb\u200b\u1785\u17bc\u179b"}, +gO(){return"\u1787\u17d2\u179a\u17be\u179f\u179a\u17be\u179f\u200b\u1791\u17b6\u17c6\u1784\u17a2\u179f\u17cb"}} +A.ZR.prototype={ +gV(){return"\u0ca8\u0c95\u0cb2\u0cbf\u0cb8\u0cbf"}, +gW(){return"\u0c95\u0ca4\u0ccd\u0ca4\u0cb0\u0cbf\u0cb8\u0cbf"}, +gX(){return"\u0c85\u0c82\u0c9f\u0cbf\u0cb8\u0cbf"}, +gO(){return"\u0c8e\u0cb2\u0ccd\u0cb2\u0cb5\u0ca8\u0ccd\u0ca8\u0cc2 \u0c86\u0caf\u0ccd\u0c95\u0cc6\u0cae\u0cbe\u0ca1\u0cbf"}} +A.ZS.prototype={ +gV(){return"\ubcf5\uc0ac"}, +gW(){return"\uc798\ub77c\ub0c4"}, +gX(){return"\ubd99\uc5ec\ub123\uae30"}, +gO(){return"\uc804\uccb4 \uc120\ud0dd"}} +A.ZT.prototype={ +gV(){return"\u041a\u04e9\u0447\u04af\u0440\u04af\u04af"}, +gW(){return"\u041a\u0435\u0441\u04af\u04af"}, +gX(){return"\u0427\u0430\u043f\u0442\u043e\u043e"}, +gO(){return"\u0411\u0430\u0430\u0440\u044b\u043d \u0442\u0430\u043d\u0434\u043e\u043e"}} +A.ZU.prototype={ +gV(){return"\u0eaa\u0eb3\u0ec0\u0e99\u0ebb\u0eb2"}, +gW(){return"\u0e95\u0eb1\u0e94"}, +gX(){return"\u0ea7\u0eb2\u0e87"}, +gO(){return"\u0ec0\u0ea5\u0eb7\u0ead\u0e81\u0e97\u0eb1\u0e87\u0edd\u0ebb\u0e94"}} +A.ZV.prototype={ +gV(){return"Kopijuoti"}, +gW(){return"I\u0161kirpti"}, +gX(){return"\u012eklijuoti"}, +gO(){return"Pasirinkti visk\u0105"}} +A.ZW.prototype={ +gV(){return"Kop\u0113t"}, +gW(){return"Izgriezt"}, +gX(){return"Iel\u012bm\u0113t"}, +gO(){return"Atlas\u012bt visu"}} +A.ZX.prototype={ +gV(){return"\u041a\u043e\u043f\u0438\u0440\u0430\u0458"}, +gW(){return"\u0418\u0441\u0435\u0447\u0438"}, +gX(){return"\u0417\u0430\u043b\u0435\u043f\u0438"}, +gO(){return"\u0418\u0437\u0431\u0435\u0440\u0438 \u0433\u0438 \u0441\u0438\u0442\u0435"}} +A.ZY.prototype={ +gV(){return"\u0d2a\u0d15\u0d7c\u0d24\u0d4d\u0d24\u0d41\u0d15"}, +gW(){return"\u0d2e\u0d41\u0d31\u0d3f\u0d15\u0d4d\u0d15\u0d41\u0d15"}, +gX(){return"\u0d12\u0d1f\u0d4d\u0d1f\u0d3f\u0d15\u0d4d\u0d15\u0d41\u0d15"}, +gO(){return"\u0d0e\u0d32\u0d4d\u0d32\u0d3e\u0d02 \u0d24\u0d3f\u0d30\u0d1e\u0d4d\u0d1e\u0d46\u0d1f\u0d41\u0d15\u0d4d\u0d15\u0d41\u0d15"}} +A.ZZ.prototype={ +gV(){return"\u0425\u0443\u0443\u043b\u0430\u0445"}, +gW(){return"\u0422\u0430\u0441\u043b\u0430\u0445"}, +gX(){return"\u0411\u0443\u0443\u043b\u0433\u0430\u0445"}, +gO(){return"\u0411\u04af\u0433\u0434\u0438\u0439\u0433 \u0441\u043e\u043d\u0433\u043e\u0445"}} +A.a__.prototype={ +gV(){return"\u0915\u0949\u092a\u0940 \u0915\u0930\u093e"}, +gW(){return"\u0915\u091f \u0915\u0930\u093e"}, +gX(){return"\u092a\u0947\u0938\u094d\u091f \u0915\u0930\u093e"}, +gO(){return"\u0938\u0930\u094d\u0935 \u0928\u093f\u0935\u0921\u093e"}} +A.a_0.prototype={ +gV(){return"Salin"}, +gW(){return"Potong"}, +gX(){return"Tampal"}, +gO(){return"Pilih Semua"}} +A.a_1.prototype={ +gV(){return"\u1019\u102d\u1010\u1039\u1010\u1030\u1000\u1030\u1038\u101b\u1014\u103a"}, +gW(){return"\u1016\u103c\u1010\u103a\u101a\u1030\u101b\u1014\u103a"}, +gX(){return"\u1000\u1030\u1038\u1011\u100a\u1037\u103a\u101b\u1014\u103a"}, +gO(){return"\u1021\u102c\u1038\u101c\u102f\u1036\u1038 \u101b\u103d\u1031\u1038\u101b\u1014\u103a"}} +A.a_2.prototype={ +gV(){return"Kopi\xe9r"}, +gW(){return"Klipp ut"}, +gX(){return"Lim inn"}, +gO(){return"Velg alle"}} +A.a_3.prototype={ +gV(){return"\u092a\u094d\u0930\u0924\u093f\u0932\u093f\u092a\u093f \u0917\u0930\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +gW(){return"\u0915\u093e\u091f\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +gX(){return"\u091f\u093e\u0901\u0938\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +gO(){return"\u0938\u092c\u0948 \u091a\u092f\u0928 \u0917\u0930\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}} +A.a_4.prototype={ +gV(){return"Kopi\xebren"}, +gW(){return"Knippen"}, +gX(){return"Plakken"}, +gO(){return"Alles selecteren"}} +A.a_5.prototype={ +gV(){return"Kopi\xe9r"}, +gW(){return"Klipp ut"}, +gX(){return"Lim inn"}, +gO(){return"Velg alle"}} +A.a_6.prototype={ +gV(){return"\u0b15\u0b2a\u0b3f \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41"}, +gW(){return"\u0b15\u0b1f\u0b4d \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41"}, +gX(){return"\u0b2a\u0b47\u0b37\u0b4d\u0b1f \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41"}, +gO(){return"\u0b38\u0b2e\u0b38\u0b4d\u0b24 \u0b1a\u0b5f\u0b28 \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41"}} +A.a_7.prototype={ +gV(){return"\u0a15\u0a3e\u0a2a\u0a40 \u0a15\u0a30\u0a4b"}, +gW(){return"\u0a15\u0a71\u0a1f \u0a15\u0a30\u0a4b"}, +gX(){return"\u0a2a\u0a47\u0a38\u0a1f \u0a15\u0a30\u0a4b"}, +gO(){return"\u0a38\u0a2d \u0a1a\u0a41\u0a23\u0a4b"}} +A.a_8.prototype={ +gV(){return"Kopiuj"}, +gW(){return"Wytnij"}, +gX(){return"Wklej"}, +gO(){return"Zaznacz wszystko"}} +A.IS.prototype={ +gV(){return"Copiar"}, +gW(){return"Cortar"}, +gX(){return"Colar"}, +gO(){return"Selecionar tudo"}} +A.a_9.prototype={} +A.a_a.prototype={ +gV(){return"Copia\u021bi"}, +gW(){return"Decupa\u021bi"}, +gX(){return"Insera\u021bi"}, +gO(){return"Selecta\u021bi-le pe toate"}} +A.a_b.prototype={ +gV(){return"\u041a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c"}, +gW(){return"\u0412\u044b\u0440\u0435\u0437\u0430\u0442\u044c"}, +gX(){return"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u044c"}, +gO(){return"\u0412\u044b\u0431\u0440\u0430\u0442\u044c \u0432\u0441\u0435"}} +A.a_c.prototype={ +gV(){return"\u0db4\u0dd2\u0da7\u0db4\u0dad\u0dca \u0d9a\u0dbb\u0db1\u0dca\u0db1"}, +gW(){return"\u0d9a\u0db4\u0db1\u0dca\u0db1"}, +gX(){return"\u0d85\u0dbd\u0dc0\u0db1\u0dca\u0db1"}, +gO(){return"\u0dc3\u0dd2\u0dba\u0dbd\u0dca\u0dbd \u0dad\u0ddd\u0dbb\u0db1\u0dca\u0db1"}} +A.a_d.prototype={ +gV(){return"Kop\xedrova\u0165"}, +gW(){return"Vystrihn\xfa\u0165"}, +gX(){return"Prilepi\u0165"}, +gO(){return"Vybra\u0165 v\u0161etko"}} +A.a_e.prototype={ +gV(){return"Kopiraj"}, +gW(){return"Izre\u017ei"}, +gX(){return"Prilepi"}, +gO(){return"Izberi vse"}} +A.a_f.prototype={ +gV(){return"Kopjo"}, +gW(){return"Prit"}, +gX(){return"Ngjit"}, +gO(){return"Zgjidhi t\xeb gjitha"}} +A.IT.prototype={ +gV(){return"\u041a\u043e\u043f\u0438\u0440\u0430\u0458"}, +gW(){return"\u0418\u0441\u0435\u0446\u0438"}, +gX(){return"\u041d\u0430\u043b\u0435\u043f\u0438"}, +gO(){return"\u0418\u0437\u0430\u0431\u0435\u0440\u0438 \u0441\u0432\u0435"}} +A.a_g.prototype={} +A.a_h.prototype={ +gV(){return"Kopiraj"}, +gW(){return"Iseci"}, +gX(){return"Nalepi"}, +gO(){return"Izaberi sve"}} +A.a_i.prototype={ +gV(){return"Kopiera"}, +gW(){return"Klipp ut"}, +gX(){return"Klistra in"}, +gO(){return"Markera alla"}} +A.a_j.prototype={ +gV(){return"Nakili"}, +gW(){return"Kata"}, +gX(){return"Bandika"}, +gO(){return"Teua Zote"}} +A.a_k.prototype={ +gV(){return"\u0ba8\u0b95\u0bb2\u0bc6\u0b9f\u0bc1"}, +gW(){return"\u0bb5\u0bc6\u0b9f\u0bcd\u0b9f\u0bc1"}, +gX(){return"\u0b92\u0b9f\u0bcd\u0b9f\u0bc1"}, +gO(){return"\u0b8e\u0bb2\u0bcd\u0bb2\u0bbe\u0bae\u0bcd \u0ba4\u0bc7\u0bb0\u0bcd\u0ba8\u0bcd\u0ba4\u0bc6\u0b9f\u0bc1"}} +A.a_l.prototype={ +gV(){return"\u0c15\u0c3e\u0c2a\u0c40 \u0c1a\u0c47\u0c2f\u0c3f"}, +gW(){return"\u0c15\u0c24\u0c4d\u0c24\u0c3f\u0c30\u0c3f\u0c02\u0c1a\u0c02\u0c21\u0c3f"}, +gX(){return"\u0c2a\u0c47\u0c38\u0c4d\u0c1f\u0c4d \u0c1a\u0c47\u0c2f\u0c02\u0c21\u0c3f"}, +gO(){return"\u0c05\u0c28\u0c4d\u0c28\u0c3f\u0c02\u0c1f\u0c3f\u0c28\u0c40 \u0c0e\u0c02\u0c1a\u0c41\u0c15\u0c4b\u0c02\u0c21\u0c3f"}} +A.a_m.prototype={ +gV(){return"\u0e04\u0e31\u0e14\u0e25\u0e2d\u0e01"}, +gW(){return"\u0e15\u0e31\u0e14"}, +gX(){return"\u0e27\u0e32\u0e07"}, +gO(){return"\u0e40\u0e25\u0e37\u0e2d\u0e01\u0e17\u0e31\u0e49\u0e07\u0e2b\u0e21\u0e14"}} +A.a_n.prototype={ +gV(){return"Kopyahin"}, +gW(){return"I-cut"}, +gX(){return"I-paste"}, +gO(){return"Piliin Lahat"}} +A.a_o.prototype={ +gV(){return"Kopyala"}, +gW(){return"Kes"}, +gX(){return"Yap\u0131\u015ft\u0131r"}, +gO(){return"T\xfcm\xfcn\xfc Se\xe7"}} +A.a_p.prototype={ +gV(){return"\u041a\u043e\u043f\u0456\u044e\u0432\u0430\u0442\u0438"}, +gW(){return"\u0412\u0438\u0440\u0456\u0437\u0430\u0442\u0438"}, +gX(){return"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438"}, +gO(){return"\u0412\u0438\u0431\u0440\u0430\u0442\u0438 \u0432\u0441\u0435"}} +A.a_q.prototype={ +gV(){return"\u06a9\u0627\u067e\u06cc \u06a9\u0631\u06cc\u06ba"}, +gW(){return"\u06a9\u0679 \u06a9\u0631\u06cc\u06ba"}, +gX(){return"\u067e\u06cc\u0633\u0679 \u06a9\u0631\u06cc\u06ba"}, +gO(){return"\u0633\u0628\u06be\u06cc \u0645\u0646\u062a\u062e\u0628 \u06a9\u0631\u06cc\u06ba"}} +A.a_r.prototype={ +gV(){return"Nusxa olish"}, +gW(){return"Kesib olish"}, +gX(){return"Joylash"}, +gO(){return"Barchasini tanlash"}} +A.a_s.prototype={ +gV(){return"Sao ch\xe9p"}, +gW(){return"C\u1eaft"}, +gX(){return"D\xe1n"}, +gO(){return"Ch\u1ecdn t\u1ea5t c\u1ea3"}} +A.IU.prototype={ +gV(){return"\u590d\u5236"}, +gW(){return"\u526a\u5207"}, +gX(){return"\u7c98\u8d34"}, +gO(){return"\u5168\u9009"}} +A.a_t.prototype={} +A.IV.prototype={ +gV(){return"\u8907\u88fd"}, +gW(){return"\u526a\u4e0b"}, +gX(){return"\u8cbc\u4e0a"}, +gO(){return"\u5168\u9078"}} +A.a_u.prototype={} +A.a_v.prototype={} +A.a_w.prototype={ +gV(){return"Kopisha"}, +gW(){return"Sika"}, +gX(){return"Namathisela"}, +gO(){return"Khetha konke"}} +A.a3a.prototype={ +gbf(){return"Opletberig"}, +gbg(){return"Terug"}, +gb0(){return"Onderste blad"}, +gbb(){return"Maak toe"}, +gbs(){return"Expanded"}, +gV(){return"Kopieer"}, +gW(){return"Knip"}, +gaO(){return"Vee uit"}, +gaC(){return"Dialoog"}, +gbo(){return"Navigasiekieslys"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"Maak toe"}, +gbu(){return"Nog"}, +gaM(){return"Maak navigasiekieslys oop"}, +gX(){return"Plak"}, +gb2(){return"Opspringkieslys"}, +gbq(){return"Herlaai"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"1 karakter oor"}, +gbh(){return"$remainingCount karakters oor"}, +gbE(){return null}, +gbF(){return null}, +gbx(){return"Skena umbhalo"}, +gaN(){return"Skerm"}, +gbk(){return"Maak $modalRouteContentName toe"}, +gby(){return B.N}, +gO(){return"Kies alles"}, +gbl(){return"Wys kieslys"}, +gbe(){return"Oortjie $tabIndex van $tabCount"}} +A.a3b.prototype={ +gbf(){return"\u121b\u1295\u1242\u12eb"}, +gbg(){return"\u1270\u1218\u1208\u1235"}, +gb0(){return"\u12e8\u130d\u122d\u130c \u1209\u1205"}, +gbb(){return"\u12dd\u130b"}, +gbs(){return"Expanded"}, +gV(){return"\u1245\u12f3"}, +gW(){return"\u1241\u1228\u1325"}, +gaO(){return"\u1230\u122d\u12dd"}, +gaC(){return"\u1218\u1308\u1293\u129b"}, +gbo(){return"\u12e8\u12f3\u1230\u1233 \u121d\u1293\u120c"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"\u12a0\u1230\u1293\u1265\u1275"}, +gbu(){return"\u1270\u1328\u121b\u122a"}, +gaM(){return"\u12e8\u12f3\u1230\u1233 \u121d\u1293\u120c\u1295 \u12ad\u1348\u1275"}, +gX(){return"\u1208\u1325\u134d"}, +gb2(){return"\u12e8\u1265\u1245-\u1263\u12ed \u121d\u1293\u120c"}, +gbq(){return"\u12a0\u12f5\u1235"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"1 \u1241\u121d\u134a \u12ed\u1240\u122b\u120d"}, +gbh(){return"$remainingCount \u1241\u121d\u134a\u12ce\u127d \u12ed\u1240\u122b\u1209"}, +gbE(){return null}, +gbF(){return null}, +gbx(){return"\u133d\u1211\u134d \u12ed\u1243\u1299"}, +gaN(){return"\u1308\u12f3\u1262"}, +gbk(){return"$modalRouteContentName\u1295 \u12dd\u130b"}, +gby(){return B.N}, +gO(){return"\u1201\u1209\u1295\u121d \u121d\u1228\u1325"}, +gbl(){return"\u121d\u1293\u120c\u1295 \u12a0\u1233\u12ed"}, +gbe(){return"\u1275\u122d $tabIndex \u12a8$tabCount"}} +A.a3c.prototype={ +gbf(){return"\u062a\u0646\u0628\u064a\u0647"}, +gbg(){return"\u0631\u062c\u0648\u0639"}, +gb0(){return"\u0628\u0637\u0627\u0642\u0629 \u0633\u0641\u0644\u064a\u0629"}, +gbb(){return"\u0625\u063a\u0644\u0627\u0642"}, +gbs(){return"Expanded"}, +gV(){return"\u0646\u0633\u062e"}, +gW(){return"\u0642\u0635"}, +gaO(){return"\u062d\u0630\u0641"}, +gaC(){return"\u0645\u0631\u0628\u0639 \u062d\u0648\u0627\u0631"}, +gbo(){return"\u0642\u0627\u0626\u0645\u0629 \u062a\u0646\u0642\u0644"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"\u0631\u0641\u0636"}, +gbu(){return"\u0627\u0644\u0645\u0632\u064a\u062f"}, +gaM(){return"\u0641\u062a\u062d \u0642\u0627\u0626\u0645\u0629 \u0627\u0644\u062a\u0646\u0642\u0644"}, +gX(){return"\u0644\u0635\u0642"}, +gb2(){return"\u0642\u0627\u0626\u0645\u0629 \u0645\u0646\u0628\u062b\u0642\u0629"}, +gbq(){return"\u0625\u0639\u0627\u062f\u0629 \u062a\u062d\u0645\u064a\u0644"}, +gbv(){return"$remainingCount \u0623\u062d\u0631\u0641 \u0645\u062a\u0628\u0642\u064a\u0629"}, +gbD(){return"$remainingCount \u062d\u0631\u0641\u064b\u0627 \u0645\u062a\u0628\u0642\u064a\u064b\u0627"}, +gbd(){return"\u062d\u0631\u0641 \u0648\u0627\u062d\u062f \u0645\u062a\u0628\u0642\u064d"}, +gbh(){return"$remainingCount \u062d\u0631\u0641 \u0645\u062a\u0628\u0642\u064d"}, +gbE(){return"\u062d\u0631\u0641\u0627\u0646 ($remainingCount) \u0645\u062a\u0628\u0642\u064a\u0627\u0646"}, +gbF(){return"\u0644\u0627 \u0623\u062d\u0631\u0641 \u0645\u062a\u0628\u0642\u064a\u0629"}, +gbx(){return"\u0645\u0633\u062d \u0627\u0644\u0646\u0635"}, +gaN(){return"\u062a\u0645\u0648\u064a\u0647"}, +gbk(){return'\u0625\u063a\u0644\u0627\u0642 "$modalRouteContentName"'}, +gby(){return B.bG}, +gO(){return"\u0627\u062e\u062a\u064a\u0627\u0631 \u0627\u0644\u0643\u0644"}, +gbl(){return"\u0639\u0631\u0636 \u0627\u0644\u0642\u0627\u0626\u0645\u0629"}, +gbe(){return"\u0639\u0644\u0627\u0645\u0629 \u0627\u0644\u062a\u0628\u0648\u064a\u0628 $tabIndex \u0645\u0646 $tabCount"}} +A.a3d.prototype={ +gbf(){return"\u09b8\u09a4\u09f0\u09cd\u0995\u09ac\u09be\u09f0\u09cd\u09a4\u09be"}, +gbg(){return"\u0989\u09ad\u09a4\u09bf \u09af\u09be\u0993\u0995"}, +gb0(){return"\u09a4\u09b2\u09f0 \u09b6\u09cd\u09ac\u09c0\u099f"}, +gbb(){return"\u09ac\u09a8\u09cd\u09a7 \u0995\u09f0\u0995"}, +gbs(){return"Expanded"}, +gV(){return"\u09aa\u09cd\u09f0\u09a4\u09bf\u09b2\u09bf\u09aa\u09bf \u0995\u09f0\u0995"}, +gW(){return"\u0995\u09be\u099f \u0995\u09f0\u0995"}, +gaO(){return"\u09ae\u099a\u0995"}, +gaC(){return"\u09a1\u09be\u09df\u09b2'\u0997"}, +gbo(){return"\u09a8\u09c7\u09ad\u09bf\u0997\u09c7\u09b6\u09cd\u09ac\u09a8 \u09ae\u09c7\u09a8\u09c1"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"\u0985\u0997\u09cd\u09f0\u09be\u09b9\u09cd\u09af \u0995\u09f0\u0995"}, +gbu(){return"\u0985\u09a7\u09bf\u0995"}, +gaM(){return"\u09a8\u09c7\u09ad\u09bf\u0997\u09c7\u09b6\u09cd\u09ac\u09a8 \u09ae\u09c7\u09a8\u09c1 \u0996\u09cb\u09b2\u0995"}, +gX(){return"\u09aa\u09c7'\u09b7\u09cd\u099f \u0995\u09f0\u0995"}, +gb2(){return"\u09aa'\u09aa\u0986\u09aa \u09ae\u09c7\u09a8\u09c1"}, +gbq(){return"\u09f0\u09bf\u09ab\u09cd\u09f0\u09c7\u09b6\u09cd\u09ac \u0995\u09f0\u0995"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"\u09e7\u099f\u09be \u09ac\u09b0\u09cd\u09a3 \u09ac\u09be\u0995\u09c0 \u0986\u099b\u09c7"}, +gbh(){return"$remainingCount\u099f\u09be \u09ac\u09b0\u09cd\u09a3 \u09ac\u09be\u0995\u09c0 \u0986\u099b\u09c7"}, +gbE(){return null}, +gbF(){return null}, +gbx(){return"\u09b8\u09cd\u0995\u09c7\u09a8 \u099f\u09c7\u0995\u09cd\u09b8\u099f"}, +gaN(){return"\u09b8\u09cd\u0995\u09cd\u09f0\u09bf\u09ae"}, +gbk(){return"$modalRouteContentName \u09ac\u09a8\u09cd\u09a7 \u0995\u09f0\u0995"}, +gby(){return B.N}, +gO(){return"\u09b8\u0995\u09b2\u09cb \u09ac\u09be\u099b\u09a8\u09bf \u0995\u09f0\u0995"}, +gbl(){return"\u09ae\u09c7\u09a8\u09c1\u0996\u09a8 \u09a6\u09c7\u0996\u09c1\u09f1\u09be\u0993\u0995"}, +gbe(){return"$tabCount\u09f0 $tabIndex\u099f\u09be \u099f\u09c7\u09ac"}} +A.a3e.prototype={ +gbf(){return"Bildiri\u015f"}, +gbg(){return"Geri"}, +gb0(){return"A\u015fa\u011f\u0131dak\u0131 V\u0259r\u0259q"}, +gbb(){return"Ba\u011flay\u0131n"}, +gbs(){return"Expanded"}, +gV(){return"Kopyalay\u0131n"}, +gW(){return"K\u0259sin"}, +gaO(){return"Silin"}, +gaC(){return"Dialoq"}, +gbo(){return"Naviqasiya menyusu"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"\u0130mtina edin"}, +gbu(){return"Daha \xe7ox"}, +gaM(){return"Naviqasiya menyusunu a\xe7\u0131n"}, +gX(){return"Yerl\u0259\u015fdirin"}, +gb2(){return"Popap menyusu"}, +gbq(){return"Yenil\u0259yin"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"1 simvol qal\u0131r"}, +gbh(){return"$remainingCount simvol qal\u0131r"}, +gbE(){return null}, +gbF(){return null}, +gbx(){return"M\u0259tni skan edin"}, +gaN(){return"K\u0259tan"}, +gbk(){return"Ba\u011flay\u0131n: $modalRouteContentName"}, +gby(){return B.N}, +gO(){return"Ham\u0131s\u0131n\u0131 se\xe7in"}, +gbl(){return"Menyunu g\xf6st\u0259rin"}, +gbe(){return"$tabIndex/$tabCount tab"}} +A.a3f.prototype={ +gbf(){return"\u0410\u0431\u0432\u0435\u0441\u0442\u043a\u0430"}, +gbg(){return"\u041d\u0430\u0437\u0430\u0434"}, +gb0(){return"\u041d\u0456\u0436\u043d\u0456 \u0430\u0440\u043a\u0443\u0448"}, +gbb(){return"\u0417\u0430\u043a\u0440\u044b\u0446\u044c"}, +gbs(){return"Expanded"}, +gV(){return"\u041a\u0430\u043f\u0456\u0440\u0430\u0432\u0430\u0446\u044c"}, +gW(){return"\u0412\u044b\u0440\u0430\u0437\u0430\u0446\u044c"}, +gaO(){return"\u0412\u044b\u0434\u0430\u043b\u0456\u0446\u044c"}, +gaC(){return"\u0414\u044b\u044f\u043b\u043e\u0433\u0430\u0432\u0430\u0435 \u0430\u043a\u043d\u043e"}, +gbo(){return"\u041c\u0435\u043d\u044e \u043d\u0430\u0432\u0456\u0433\u0430\u0446\u044b\u0456"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"\u0410\u0434\u0445\u0456\u043b\u0456\u0446\u044c"}, +gbu(){return"\u042f\u0448\u0447\u044d"}, +gaM(){return"\u0410\u0434\u043a\u0440\u044b\u0446\u044c \u043c\u0435\u043d\u044e \u043d\u0430\u0432\u0456\u0433\u0430\u0446\u044b\u0456"}, +gX(){return"\u0423\u0441\u0442\u0430\u0432\u0456\u0446\u044c"}, +gb2(){return"\u041c\u0435\u043d\u044e \u045e\u0441\u043f\u043b\u044b\u0432\u0430\u043b\u044c\u043d\u0430\u0433\u0430 \u0430\u043a\u043d\u0430"}, +gbq(){return"\u0410\u0431\u043d\u0430\u0432\u0456\u0446\u044c"}, +gbv(){return"\u0417\u0430\u0441\u0442\u0430\u043b\u043e\u0441\u044f $remainingCount\xa0\u0441\u0456\u043c\u0432\u0430\u043b\u044b"}, +gbD(){return"\u0417\u0430\u0441\u0442\u0430\u043b\u043e\u0441\u044f $remainingCount\xa0\u0441\u0456\u043c\u0432\u0430\u043b\u0430\u045e"}, +gbd(){return"\u0417\u0430\u0441\u0442\u0430\u045e\u0441\u044f 1\xa0\u0441\u0456\u043c\u0432\u0430\u043b"}, +gbh(){return"\u0417\u0430\u0441\u0442\u0430\u043b\u043e\u0441\u044f $remainingCount\xa0\u0441\u0456\u043c\u0432\u0430\u043b\u0430"}, +gbE(){return null}, +gbF(){return null}, +gbx(){return"\u0421\u043a\u0430\u043d\u0430\u0432\u0430\u0446\u044c \u0442\u044d\u043a\u0441\u0442"}, +gaN(){return"\u041f\u0430\u043b\u0430\u0442\u043d\u043e"}, +gbk(){return"\u0417\u0430\u043a\u0440\u044b\u0446\u044c: $modalRouteContentName"}, +gby(){return B.N}, +gO(){return"\u0412\u044b\u0431\u0440\u0430\u0446\u044c \u0443\u0441\u0435"}, +gbl(){return"\u041f\u0430\u043a\u0430\u0437\u0430\u0446\u044c \u043c\u0435\u043d\u044e"}, +gbe(){return"\u0423\u043a\u043b\u0430\u0434\u043a\u0430 $tabIndex \u0437 $tabCount"}} +A.a3g.prototype={ +gbf(){return"\u0421\u0438\u0433\u043d\u0430\u043b"}, +gbg(){return"\u041d\u0430\u0437\u0430\u0434"}, +gb0(){return"\u0414\u043e\u043b\u0435\u043d \u043b\u0438\u0441\u0442"}, +gbb(){return"\u0417\u0430\u0442\u0432\u0430\u0440\u044f\u043d\u0435"}, +gbs(){return"Expanded"}, +gV(){return"\u041a\u043e\u043f\u0438\u0440\u0430\u043d\u0435"}, +gW(){return"\u0418\u0437\u0440\u044f\u0437\u0432\u0430\u043d\u0435"}, +gaO(){return"\u0418\u0437\u0442\u0440\u0438\u0432\u0430\u043d\u0435"}, +gaC(){return"\u0414\u0438\u0430\u043b\u043e\u0433\u043e\u0432 \u043f\u0440\u043e\u0437\u043e\u0440\u0435\u0446"}, +gbo(){return"\u041c\u0435\u043d\u044e \u0437\u0430 \u043d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u044f"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"\u041e\u0442\u0445\u0432\u044a\u0440\u043b\u044f\u043d\u0435"}, +gbu(){return"\u041e\u0449\u0435"}, +gaM(){return"\u041e\u0442\u0432\u0430\u0440\u044f\u043d\u0435 \u043d\u0430 \u043c\u0435\u043d\u044e\u0442\u043e \u0437\u0430 \u043d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u044f"}, +gX(){return"\u041f\u043e\u0441\u0442\u0430\u0432\u044f\u043d\u0435"}, +gb2(){return"\u0418\u0437\u0441\u043a\u0430\u0447\u0430\u0449\u043e \u043c\u0435\u043d\u044e"}, +gbq(){return"\u041e\u043f\u0440\u0435\u0441\u043d\u044f\u0432\u0430\u043d\u0435"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"\u041e\u0441\u0442\u0430\u0432\u0430 1 \u0437\u043d\u0430\u043a"}, +gbh(){return"\u041e\u0441\u0442\u0430\u0432\u0430\u0442 $remainingCount \u0437\u043d\u0430\u043a\u0430"}, +gbE(){return null}, +gbF(){return"TBD"}, +gbx(){return"\u0421\u043a\u0430\u043d\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0442\u0435\u043a\u0441\u0442"}, +gaN(){return"\u0421\u043a\u0440\u0438\u043c"}, +gbk(){return"\u0417\u0430\u0442\u0432\u0430\u0440\u044f\u043d\u0435 \u043d\u0430 $modalRouteContentName"}, +gby(){return B.N}, +gO(){return"\u0418\u0437\u0431\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0432\u0441\u0438\u0447\u043a\u0438"}, +gbl(){return"\u041f\u043e\u043a\u0430\u0437\u0432\u0430\u043d\u0435 \u043d\u0430 \u043c\u0435\u043d\u044e\u0442\u043e"}, +gbe(){return"\u0420\u0430\u0437\u0434\u0435\u043b $tabIndex \u043e\u0442 $tabCount"}} +A.a3h.prototype={ +gbf(){return"\u09b8\u09a4\u09b0\u09cd\u0995\u09a4\u09be"}, +gbg(){return"\u09ab\u09bf\u09b0\u09c7 \u09af\u09be\u09a8"}, +gb0(){return"\u09b8\u09cd\u0995\u09cd\u09b0\u09bf\u09a8\u09c7\u09b0 \u09a8\u09bf\u099a\u09c7 \u0985\u09cd\u09af\u09be\u099f\u09be\u099a \u0995\u09b0\u09be \u09b6\u09bf\u099f"}, +gbb(){return"\u09ac\u09a8\u09cd\u09a7 \u0995\u09b0\u09c1\u09a8"}, +gbs(){return"Expanded"}, +gV(){return"\u0995\u09aa\u09bf \u0995\u09b0\u09c1\u09a8"}, +gW(){return"\u0995\u09be\u099f \u0995\u09b0\u09c1\u09a8"}, +gaO(){return"\u09ae\u09c1\u099b\u09c7 \u09a6\u09bf\u09a8"}, +gaC(){return"\u09a1\u09be\u09df\u09be\u09b2\u0997"}, +gbo(){return"\u09a8\u09c7\u09ad\u09bf\u0997\u09c7\u09b6\u09be\u09a8 \u09ae\u09c7\u09a8\u09c1"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"\u0996\u09be\u09b0\u09bf\u099c \u0995\u09b0\u09c1\u09a8"}, +gbu(){return"\u0986\u09b0\u0993"}, +gaM(){return"\u09a8\u09c7\u09ad\u09bf\u0997\u09c7\u09b6\u09a8 \u09ae\u09c7\u09a8\u09c1 \u0996\u09c1\u09b2\u09c1\u09a8"}, +gX(){return"\u09aa\u09c7\u09b8\u09cd\u099f \u0995\u09b0\u09c1\u09a8"}, +gb2(){return"\u09aa\u09aa-\u0986\u09aa \u09ae\u09c7\u09a8\u09c1"}, +gbq(){return"\u09b0\u09bf\u09ab\u09cd\u09b0\u09c7\u09b6 \u0995\u09b0\u09c1\u09a8"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"\u0986\u09b0 \u09e7\u099f\u09bf \u0985\u0995\u09cd\u09b7\u09b0 \u09b2\u09c7\u0996\u09be \u09af\u09be\u09ac\u09c7"}, +gbh(){return"\u0986\u09b0 $remainingCount\u099f\u09bf \u0985\u0995\u09cd\u09b7\u09b0 \u09b2\u09c7\u0996\u09be \u09af\u09be\u09ac\u09c7"}, +gbE(){return null}, +gbF(){return null}, +gbx(){return"\u09aa\u09be\u09a0\u09cd\u09af \u09b8\u09cd\u0995\u09cd\u09af\u09be\u09a8 \u0995\u09b0\u09c1\u09a8"}, +gaN(){return"\u09b8\u09cd\u0995\u09cd\u09b0\u09bf\u09ae"}, +gbk(){return"$modalRouteContentName \u09ac\u09a8\u09cd\u09a7 \u0995\u09b0\u09c1\u09a8"}, +gby(){return B.bG}, +gO(){return"\u09b8\u09ac \u09ac\u09c7\u099b\u09c7 \u09a8\u09bf\u09a8"}, +gbl(){return"\u09ae\u09c7\u09a8\u09c1 \u09a6\u09c7\u0996\u09be\u09a8"}, +gbe(){return"$tabCount-\u098f\u09b0 \u09ae\u09a7\u09cd\u09af\u09c7 $tabIndex\u099f\u09bf \u099f\u09cd\u09af\u09be\u09ac"}} +A.a3i.prototype={ +gbf(){return"Upozorenje"}, +gbg(){return"Nazad"}, +gb0(){return"Donja tabela"}, +gbb(){return"Zatvaranje"}, +gbs(){return"Expanded"}, +gV(){return"Kopiraj"}, +gW(){return"Izre\u017ei"}, +gaO(){return"Brisanje"}, +gaC(){return"Dijalo\u0161ki okvir"}, +gbo(){return"Meni za navigaciju"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"Odbaci"}, +gbu(){return"Vi\u0161e"}, +gaM(){return"Otvorite meni za navigaciju"}, +gX(){return"Zalijepi"}, +gb2(){return"Sko\u010dni meni"}, +gbq(){return"Osvje\u017ei"}, +gbv(){return"Jo\u0161 $remainingCount znaka"}, +gbD(){return null}, +gbd(){return"Jo\u0161 jedan znak"}, +gbh(){return"Jo\u0161 $remainingCount znakova"}, +gbE(){return null}, +gbF(){return"TBD"}, +gbx(){return"Skeniraj tekst"}, +gaN(){return"Rubno"}, +gbk(){return"Zatvori: $modalRouteContentName"}, +gby(){return B.N}, +gO(){return"Odaberi sve"}, +gbl(){return"Prika\u017ei meni"}, +gbe(){return"$tabIndex. kartica od $tabCount"}} +A.a3j.prototype={ +gbf(){return"Alerta"}, +gbg(){return"Enrere"}, +gb0(){return"Full inferior"}, +gbb(){return"Tanca"}, +gbs(){return"Expanded"}, +gV(){return"Copia"}, +gW(){return"Retalla"}, +gaO(){return"Suprimeix"}, +gaC(){return"Di\xe0leg"}, +gbo(){return"Men\xfa de navegaci\xf3"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"Ignora"}, +gbu(){return"M\xe9s"}, +gaM(){return"Obre el men\xfa de navegaci\xf3"}, +gX(){return"Enganxa"}, +gb2(){return"Men\xfa emergent"}, +gbq(){return"Actualitza"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"Queda 1\xa0car\xe0cter"}, +gbh(){return"Queden $remainingCount\xa0car\xe0cters"}, +gbE(){return null}, +gbF(){return"TBD"}, +gbx(){return"Escaneja el text"}, +gaN(){return"Fons atenuat"}, +gbk(){return"Tanca $modalRouteContentName"}, +gby(){return B.N}, +gO(){return"Selecciona-ho tot"}, +gbl(){return"Mostra el men\xfa"}, +gbe(){return"Pestanya $tabIndex de $tabCount"}} +A.a3k.prototype={ +gbf(){return"Upozorn\u011bn\xed"}, +gbg(){return"Zp\u011bt"}, +gb0(){return"Spodn\xed tabulka"}, +gbb(){return"Zav\u0159\xedt"}, +gbs(){return"Expanded"}, +gV(){return"Kop\xedrovat"}, +gW(){return"Vyjmout"}, +gaO(){return"Smazat"}, +gaC(){return"Dialogov\xe9 okno"}, +gbo(){return"Naviga\u010dn\xed nab\xeddka"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"Zav\u0159\xedt"}, +gbu(){return"V\xedce"}, +gaM(){return"Otev\u0159\xedt naviga\u010dn\xed nab\xeddku"}, +gX(){return"Vlo\u017eit"}, +gb2(){return"Vyskakovac\xed nab\xeddka"}, +gbq(){return"Obnovit"}, +gbv(){return"Zb\xfdvaj\xed $remainingCount znaky"}, +gbD(){return"Zb\xfdv\xe1 $remainingCount znaku"}, +gbd(){return"Zb\xfdv\xe1 1 znak"}, +gbh(){return"Zb\xfdv\xe1 $remainingCount znak\u016f"}, +gbE(){return null}, +gbF(){return"TBD"}, +gbx(){return"Naskenujte text"}, +gaN(){return"Scrim"}, +gbk(){return"Zav\u0159\xedt $modalRouteContentName"}, +gby(){return B.N}, +gO(){return"Vybrat v\u0161e"}, +gbl(){return"Zobrazit nab\xeddku"}, +gbe(){return"Karta $tabIndex z\xa0$tabCount"}} +A.a3l.prototype={ +gbf(){return"Rhybudd"}, +gbg(){return"N\xf4l"}, +gb0(){return"Taflen Gwaelod"}, +gbb(){return"Cau"}, +gbs(){return"Expanded"}, +gV(){return"Cop\xefo"}, +gW(){return"Torri"}, +gaO(){return"Dileu"}, +gaC(){return"Deialog"}, +gbo(){return"Dewislen llywio"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"Diystyru"}, +gbu(){return"Rhagor"}, +gaM(){return"Agor y ddewislen llywio"}, +gX(){return"Gludo"}, +gb2(){return"Dewislen ffenestr naid"}, +gbq(){return"Ail-lwytho"}, +gbv(){return"$remainingCount nod ar \xf4l"}, +gbD(){return"$remainingCount nod ar \xf4l"}, +gbd(){return"1 nod ar \xf4l"}, +gbh(){return"$remainingCount nod ar \xf4l"}, +gbE(){return"$remainingCount nod ar \xf4l"}, +gbF(){return"Dim nodau ar \xf4l"}, +gbx(){return"Scan text"}, +gaN(){return"Scrim"}, +gbk(){return"Cau $modalRouteContentName"}, +gby(){return B.N}, +gO(){return"Dewis y Cyfan"}, +gbl(){return"Dangos y ddewislen"}, +gbe(){return"Tab $tabIndex o $tabCount"}} +A.a3m.prototype={ +gbf(){return"Underretning"}, +gbg(){return"Tilbage"}, +gb0(){return"Felt i bunden"}, +gbb(){return"Luk"}, +gbs(){return"Expanded"}, +gV(){return"Kopi\xe9r"}, +gW(){return"Klip"}, +gaO(){return"Slet"}, +gaC(){return"Dialogboks"}, +gbo(){return"Navigationsmenu"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"Afvis"}, +gbu(){return"Mere"}, +gaM(){return"\xc5bn navigationsmenuen"}, +gX(){return"Inds\xe6t"}, +gb2(){return"Pop op-menu"}, +gbq(){return"Opdater"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"\xc9t tegn tilbage"}, +gbh(){return"$remainingCount tegn tilbage"}, +gbE(){return null}, +gbF(){return"TBD"}, +gbx(){return"Scan tekst"}, +gaN(){return"D\xe6mpesk\xe6rm"}, +gbk(){return"Luk $modalRouteContentName"}, +gby(){return B.N}, +gO(){return"Mark\xe9r alt"}, +gbl(){return"Vis menu"}, +gbe(){return"Fane $tabIndex af $tabCount"}} +A.Lb.prototype={ +gbf(){return"Benachrichtigung"}, +gbg(){return"Zur\xfcck"}, +gb0(){return"Ansicht am unteren Rand"}, +gbb(){return"Schlie\xdfen"}, +gbs(){return"Expanded"}, +gV(){return"Kopieren"}, +gW(){return"Ausschneiden"}, +gaO(){return"L\xf6schen"}, +gaC(){return"Dialogfeld"}, +gbo(){return"Navigationsmen\xfc"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"Schlie\xdfen"}, +gbu(){return"Mehr"}, +gaM(){return"Navigationsmen\xfc \xf6ffnen"}, +gX(){return"Einsetzen"}, +gb2(){return"Pop-up-Men\xfc"}, +gbq(){return"Aktualisieren"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"Noch 1\xa0Zeichen"}, +gbh(){return"Noch $remainingCount\xa0Zeichen"}, +gbE(){return null}, +gbF(){return"TBD"}, +gbx(){return"Text scannen"}, +gaN(){return"Gitter"}, +gbk(){return"$modalRouteContentName schlie\xdfen"}, +gby(){return B.N}, +gO(){return"Alle ausw\xe4hlen"}, +gbl(){return"Men\xfc anzeigen"}, +gbe(){return"Tab $tabIndex von $tabCount"}} +A.a3n.prototype={ +gbb(){return"Schliessen"}, +gaE(){return"Schliessen"}} +A.a3o.prototype={ +gbf(){return"\u0395\u03b9\u03b4\u03bf\u03c0\u03bf\u03af\u03b7\u03c3\u03b7"}, +gbg(){return"\u03a0\u03af\u03c3\u03c9"}, +gb0(){return"\u03a6\u03cd\u03bb\u03bb\u03bf \u03ba\u03ac\u03c4\u03c9 \u03bc\u03ad\u03c1\u03bf\u03c5\u03c2"}, +gbb(){return"\u039a\u03bb\u03b5\u03af\u03c3\u03b9\u03bc\u03bf"}, +gbs(){return"Expanded"}, +gV(){return"\u0391\u03bd\u03c4\u03b9\u03b3\u03c1\u03b1\u03c6\u03ae"}, +gW(){return"\u0391\u03c0\u03bf\u03ba\u03bf\u03c0\u03ae"}, +gaO(){return"\u0394\u03b9\u03b1\u03b3\u03c1\u03b1\u03c6\u03ae"}, +gaC(){return"\u03a0\u03b1\u03c1\u03ac\u03b8\u03c5\u03c1\u03bf \u03b4\u03b9\u03b1\u03bb\u03cc\u03b3\u03bf\u03c5"}, +gbo(){return"\u039c\u03b5\u03bd\u03bf\u03cd \u03c0\u03bb\u03bf\u03ae\u03b3\u03b7\u03c3\u03b7\u03c2"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"\u03a0\u03b1\u03c1\u03ac\u03b2\u03bb\u03b5\u03c8\u03b7"}, +gbu(){return"\u03a0\u03b5\u03c1\u03b9\u03c3\u03c3\u03cc\u03c4\u03b5\u03c1\u03b1"}, +gaM(){return"\u0386\u03bd\u03bf\u03b9\u03b3\u03bc\u03b1 \u03bc\u03b5\u03bd\u03bf\u03cd \u03c0\u03bb\u03bf\u03ae\u03b3\u03b7\u03c3\u03b7\u03c2"}, +gX(){return"\u0395\u03c0\u03b9\u03ba\u03cc\u03bb\u03bb\u03b7\u03c3\u03b7"}, +gb2(){return"\u0391\u03bd\u03b1\u03b4\u03c5\u03cc\u03bc\u03b5\u03bd\u03bf \u03bc\u03b5\u03bd\u03bf\u03cd"}, +gbq(){return"\u0391\u03bd\u03b1\u03bd\u03ad\u03c9\u03c3\u03b7"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"\u03b1\u03c0\u03bf\u03bc\u03ad\u03bd\u03b5\u03b9 1 \u03c7\u03b1\u03c1\u03b1\u03ba\u03c4\u03ae\u03c1\u03b1\u03c2"}, +gbh(){return"\u03b1\u03c0\u03bf\u03bc\u03ad\u03bd\u03bf\u03c5\u03bd $remainingCount \u03c7\u03b1\u03c1\u03b1\u03ba\u03c4\u03ae\u03c1\u03b5\u03c2"}, +gbE(){return null}, +gbF(){return"TBD"}, +gbx(){return"\u03a3\u03ac\u03c1\u03c9\u03c3\u03b7 \u03ba\u03b5\u03b9\u03bc\u03ad\u03bd\u03bf\u03c5"}, +gaN(){return"\u0395\u03c0\u03b9\u03ba\u03ac\u03bb\u03c5\u03c8\u03b7"}, +gbk(){return"\u039a\u03bb\u03b5\u03af\u03c3\u03b9\u03bc\u03bf $modalRouteContentName"}, +gby(){return B.N}, +gO(){return"\u0395\u03c0\u03b9\u03bb\u03bf\u03b3\u03ae \u03cc\u03bb\u03c9\u03bd"}, +gbl(){return"\u0395\u03bc\u03c6\u03ac\u03bd\u03b9\u03c3\u03b7 \u03bc\u03b5\u03bd\u03bf\u03cd"}, +gbe(){return"\u039a\u03b1\u03c1\u03c4\u03ad\u03bb\u03b1 $tabIndex \u03b1\u03c0\u03cc $tabCount"}} +A.Lc.prototype={ +gbf(){return"Alert"}, +gbg(){return"Back"}, +gb0(){return"Bottom Sheet"}, +gbb(){return"Close"}, +gbs(){return"Expanded"}, +gV(){return"Copy"}, +gW(){return"Cut"}, +gaO(){return"Delete"}, +gaC(){return"Dialog"}, +gbo(){return"Navigation menu"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse"}, +gbC(){return"Collapse"}, +gaE(){return"Dismiss"}, +gbu(){return"More"}, +gaM(){return"Open navigation menu"}, +gX(){return"Paste"}, +gb2(){return"Popup menu"}, +gbq(){return"Refresh"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"1 character remaining"}, +gbh(){return"$remainingCount characters remaining"}, +gbE(){return null}, +gbF(){return"No characters remaining"}, +gbx(){return"Scan text"}, +gaN(){return"Scrim"}, +gbk(){return"Close $modalRouteContentName"}, +gby(){return B.N}, +gO(){return"Select all"}, +gbl(){return"Show menu"}, +gbe(){return"Tab $tabIndex of $tabCount"}} +A.a3p.prototype={ +gb0(){return"Bottom sheet"}, +gb2(){return"Pop-up menu"}, +gaC(){return"Dialogue"}} +A.a3q.prototype={ +gb2(){return"Pop-up menu"}, +gaC(){return"Dialogue"}} +A.a3r.prototype={ +gb0(){return"Bottom sheet"}, +gb2(){return"Pop-up menu"}, +gaC(){return"Dialogue"}} +A.a3s.prototype={ +gb0(){return"Bottom sheet"}, +gb2(){return"Pop-up menu"}, +gaC(){return"Dialogue"}} +A.a3t.prototype={ +gb0(){return"Bottom sheet"}, +gb2(){return"Pop-up menu"}, +gaC(){return"Dialogue"}} +A.a3u.prototype={ +gb0(){return"Bottom sheet"}, +gb2(){return"Pop-up menu"}, +gaC(){return"Dialogue"}} +A.a3v.prototype={ +gb0(){return"Bottom sheet"}, +gb2(){return"Pop-up menu"}, +gaC(){return"Dialogue"}} +A.a3w.prototype={ +gb0(){return"Bottom sheet"}, +gb2(){return"Pop-up menu"}, +gaC(){return"Dialogue"}} +A.Ld.prototype={ +gbf(){return"Alerta"}, +gbg(){return"Atr\xe1s"}, +gb0(){return"Hoja inferior"}, +gbb(){return"Cerrar"}, +gbs(){return"Expanded"}, +gV(){return"Copiar"}, +gW(){return"Cortar"}, +gaO(){return"Eliminar"}, +gaC(){return"Cuadro de di\xe1logo"}, +gbo(){return"Men\xfa de navegaci\xf3n"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"Cerrar"}, +gbu(){return"M\xe1s"}, +gaM(){return"Abrir el men\xfa de navegaci\xf3n"}, +gX(){return"Pegar"}, +gb2(){return"Men\xfa emergente"}, +gbq(){return"Actualizar"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"Queda 1 car\xe1cter."}, +gbh(){return"Quedan $remainingCount caracteres"}, +gbE(){return null}, +gbF(){return"TBD"}, +gbx(){return"Escanear texto"}, +gaN(){return"Sombreado"}, +gbk(){return"Cerrar $modalRouteContentName"}, +gby(){return B.N}, +gO(){return"Seleccionar todo"}, +gbl(){return"Mostrar men\xfa"}, +gbe(){return"Pesta\xf1a $tabIndex de $tabCount"}} +A.a3x.prototype={ +gaN(){return"L\xe1mina"}, +gaE(){return"Descartar"}, +gaM(){return"Abrir men\xfa de navegaci\xf3n"}, +gaO(){return"Borrar"}, +gaC(){return"Di\xe1logo"}} +A.a3y.prototype={ +gaN(){return"L\xe1mina"}, +gaE(){return"Descartar"}, +gaM(){return"Abrir men\xfa de navegaci\xf3n"}, +gaO(){return"Borrar"}, +gaC(){return"Di\xe1logo"}} +A.a3z.prototype={ +gaN(){return"L\xe1mina"}, +gaE(){return"Descartar"}, +gaM(){return"Abrir men\xfa de navegaci\xf3n"}, +gaO(){return"Borrar"}, +gaC(){return"Di\xe1logo"}} +A.a3A.prototype={ +gaN(){return"L\xe1mina"}, +gaE(){return"Descartar"}, +gaM(){return"Abrir men\xfa de navegaci\xf3n"}, +gaO(){return"Borrar"}, +gaC(){return"Di\xe1logo"}} +A.a3B.prototype={ +gaN(){return"L\xe1mina"}, +gaE(){return"Descartar"}, +gaM(){return"Abrir men\xfa de navegaci\xf3n"}, +gaO(){return"Borrar"}, +gaC(){return"Di\xe1logo"}} +A.a3C.prototype={ +gaN(){return"L\xe1mina"}, +gaE(){return"Descartar"}, +gaM(){return"Abrir men\xfa de navegaci\xf3n"}, +gaO(){return"Borrar"}, +gaC(){return"Di\xe1logo"}} +A.a3D.prototype={ +gaN(){return"L\xe1mina"}, +gaE(){return"Descartar"}, +gaM(){return"Abrir men\xfa de navegaci\xf3n"}, +gaO(){return"Borrar"}, +gaC(){return"Di\xe1logo"}} +A.a3E.prototype={ +gaN(){return"L\xe1mina"}, +gaE(){return"Descartar"}, +gaM(){return"Abrir men\xfa de navegaci\xf3n"}, +gaO(){return"Borrar"}, +gaC(){return"Di\xe1logo"}} +A.a3F.prototype={ +gaN(){return"L\xe1mina"}, +gaE(){return"Descartar"}, +gaM(){return"Abrir men\xfa de navegaci\xf3n"}, +gaO(){return"Borrar"}, +gaC(){return"Di\xe1logo"}} +A.a3G.prototype={ +gaN(){return"L\xe1mina"}, +gaE(){return"Descartar"}, +gaM(){return"Abrir men\xfa de navegaci\xf3n"}, +gaO(){return"Borrar"}, +gaC(){return"Di\xe1logo"}} +A.a3H.prototype={ +gaN(){return"L\xe1mina"}, +gaE(){return"Descartar"}, +gaM(){return"Abrir men\xfa de navegaci\xf3n"}, +gaO(){return"Borrar"}, +gaC(){return"Di\xe1logo"}} +A.a3I.prototype={ +gaN(){return"L\xe1mina"}, +gaE(){return"Descartar"}, +gaM(){return"Abrir men\xfa de navegaci\xf3n"}, +gaO(){return"Borrar"}, +gaC(){return"Di\xe1logo"}} +A.a3J.prototype={ +gaN(){return"L\xe1mina"}, +gaE(){return"Descartar"}, +gaM(){return"Abrir men\xfa de navegaci\xf3n"}, +gaO(){return"Borrar"}, +gaC(){return"Di\xe1logo"}} +A.a3K.prototype={ +gaN(){return"L\xe1mina"}, +gaE(){return"Descartar"}, +gaM(){return"Abrir men\xfa de navegaci\xf3n"}, +gaO(){return"Borrar"}, +gaC(){return"Di\xe1logo"}} +A.a3L.prototype={ +gaN(){return"L\xe1mina"}, +gaE(){return"Descartar"}, +gaM(){return"Abrir men\xfa de navegaci\xf3n"}, +gaO(){return"Borrar"}, +gaC(){return"Di\xe1logo"}} +A.a3M.prototype={ +gaN(){return"L\xe1mina"}, +gaE(){return"Descartar"}, +gaM(){return"Abrir men\xfa de navegaci\xf3n"}, +gaO(){return"Borrar"}, +gaC(){return"Di\xe1logo"}} +A.a3N.prototype={ +gaN(){return"L\xe1mina"}, +gaE(){return"Descartar"}, +gaM(){return"Abrir men\xfa de navegaci\xf3n"}, +gaO(){return"Borrar"}, +gaC(){return"Di\xe1logo"}} +A.a3O.prototype={ +gaN(){return"L\xe1mina"}, +gaE(){return"Descartar"}, +gaO(){return"Borrar"}, +gaM(){return"Abrir men\xfa de navegaci\xf3n"}, +gaC(){return"Di\xe1logo"}} +A.a3P.prototype={ +gaN(){return"L\xe1mina"}, +gaE(){return"Descartar"}, +gaM(){return"Abrir men\xfa de navegaci\xf3n"}, +gaO(){return"Borrar"}, +gaC(){return"Di\xe1logo"}} +A.a3Q.prototype={ +gaN(){return"L\xe1mina"}, +gaE(){return"Descartar"}, +gaM(){return"Abrir men\xfa de navegaci\xf3n"}, +gaO(){return"Borrar"}, +gaC(){return"Di\xe1logo"}} +A.a3R.prototype={ +gbf(){return"M\xe4rguanne"}, +gbg(){return"Tagasi"}, +gb0(){return"Alumine leht"}, +gbb(){return"Sule"}, +gbs(){return"Expanded"}, +gV(){return"Kopeeri"}, +gW(){return"L\xf5ika"}, +gaO(){return"Kustuta"}, +gaC(){return"Dialoog"}, +gbo(){return"Navigeerimismen\xfc\xfc"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"Loobu"}, +gbu(){return"Rohkem"}, +gaM(){return"Ava navigeerimismen\xfc\xfc"}, +gX(){return"Kleebi"}, +gb2(){return"H\xfcpikmen\xfc\xfc"}, +gbq(){return"V\xe4rskendamine"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"J\xe4\xe4nud on 1 t\xe4hem\xe4rk"}, +gbh(){return"J\xe4\xe4nud on $remainingCount t\xe4hem\xe4rki"}, +gbE(){return null}, +gbF(){return"TBD"}, +gbx(){return"Skanni teksti"}, +gaN(){return"Sirm"}, +gbk(){return"Sule $modalRouteContentName"}, +gby(){return B.N}, +gO(){return"Vali k\xf5ik"}, +gbl(){return"Kuva men\xfc\xfc"}, +gbe(){return"$tabIndex. vahekaart $tabCount-st"}} +A.a3S.prototype={ +gbf(){return"Alerta"}, +gbg(){return"Atzera"}, +gb0(){return"Behealdeko orria"}, +gbb(){return"Itxi"}, +gbs(){return"Expanded"}, +gV(){return"Kopiatu"}, +gW(){return"Ebaki"}, +gaO(){return"Ezabatu"}, +gaC(){return"Leihoa"}, +gbo(){return"Nabigazio-menua"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"Baztertu"}, +gbu(){return"Gehiago"}, +gaM(){return"Ireki nabigazio-menua"}, +gX(){return"Itsatsi"}, +gb2(){return"Menu gainerakorra"}, +gbq(){return"Freskatu"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"1 karaktere geratzen da"}, +gbh(){return"$remainingCount karaktere geratzen dira"}, +gbE(){return null}, +gbF(){return null}, +gbx(){return"Eskaneatu testua"}, +gaN(){return"Barrera"}, +gbk(){return"Itxi $modalRouteContentName"}, +gby(){return B.N}, +gO(){return"Hautatu guztiak"}, +gbl(){return"Erakutsi menua"}, +gbe(){return"$tabIndex/$tabCount fitxa"}} +A.a3T.prototype={ +gbf(){return"\u0647\u0634\u062f\u0627\u0631"}, +gbg(){return"\u0628\u0631\u06af\u0634\u062a"}, +gb0(){return"\u0628\u0631\u06af \u0632\u06cc\u0631\u06cc\u0646"}, +gbb(){return"\u0628\u0633\u062a\u0646"}, +gbs(){return"Expanded"}, +gV(){return"\u06a9\u067e\u06cc"}, +gW(){return"\u0628\u0631\u0634"}, +gaO(){return"\u062d\u0630\u0641"}, +gaC(){return"\u06a9\u0627\u062f\u0631 \u06af\u0641\u062a\u06af\u0648"}, +gbo(){return"\u0645\u0646\u0648\u06cc \u067e\u06cc\u0645\u0627\u06cc\u0634"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"\u0646\u067e\u0630\u06cc\u0631\u0641\u062a\u0646"}, +gbu(){return"\u0628\u06cc\u0634\u062a\u0631"}, +gaM(){return"\u0628\u0627\u0632 \u06a9\u0631\u062f\u0646 \u0645\u0646\u0648\u06cc \u067e\u06cc\u0645\u0627\u06cc\u0634"}, +gX(){return"\u062c\u0627\u06cc\u200c\u06af\u0630\u0627\u0631\u06cc"}, +gb2(){return"\u0645\u0646\u0648\u06cc \u0628\u0627\u0632\u0634\u0648"}, +gbq(){return"\u0628\u0627\u0632\u0622\u0648\u0631\u06cc"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"\u06f1 \u0646\u0648\u06cc\u0633\u0647 \u0628\u0627\u0642\u06cc \u0645\u0627\u0646\u062f\u0647 \u0627\u0633\u062a"}, +gbh(){return"$remainingCount \u0646\u0648\u06cc\u0633\u0647 \u0628\u0627\u0642\u06cc \u0645\u0627\u0646\u062f\u0647 \u0627\u0633\u062a"}, +gbE(){return null}, +gbF(){return"TBD"}, +gbx(){return"\u0627\u0633\u06a9\u0646 \u0645\u062a\u0646"}, +gaN(){return"\u0631\u0648\u06cc\u0647"}, +gbk(){return"\u0628\u0633\u062a\u0646 $modalRouteContentName"}, +gby(){return B.bG}, +gO(){return"\u0627\u0646\u062a\u062e\u0627\u0628 \u0647\u0645\u0647"}, +gbl(){return"\u0646\u0645\u0627\u06cc\u0634 \u0645\u0646\u0648"}, +gbe(){return"\u0628\u0631\u06af\u0647 $tabIndex \u0627\u0632 $tabCount"}} +A.a3U.prototype={ +gbf(){return"Ilmoitus"}, +gbg(){return"Takaisin"}, +gb0(){return"Alapaneeli"}, +gbb(){return"Sulje"}, +gbs(){return"Expanded"}, +gV(){return"Kopioi"}, +gW(){return"Leikkaa"}, +gaO(){return"Poista"}, +gaC(){return"Valintaikkuna"}, +gbo(){return"Navigointivalikko"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"Ohita"}, +gbu(){return"Lis\xe4\xe4"}, +gaM(){return"Avaa navigointivalikko"}, +gX(){return"Liit\xe4"}, +gb2(){return"Ponnahdusvalikko"}, +gbq(){return"P\xe4ivitys"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"1 merkki j\xe4ljell\xe4"}, +gbh(){return"$remainingCount merkki\xe4 j\xe4ljell\xe4"}, +gbE(){return null}, +gbF(){return"TBD"}, +gbx(){return"Skannaa teksti\xe4"}, +gaN(){return"Sermi"}, +gbk(){return"Sulje $modalRouteContentName"}, +gby(){return B.N}, +gO(){return"Valitse kaikki"}, +gbl(){return"N\xe4yt\xe4 valikko"}, +gbe(){return"V\xe4lilehti $tabIndex/$tabCount"}} +A.a3V.prototype={ +gbf(){return"Alerto"}, +gbg(){return"Bumalik"}, +gb0(){return"Bottom Sheet"}, +gbb(){return"Isara"}, +gbs(){return"Expanded"}, +gV(){return"Kopyahin"}, +gW(){return"I-cut"}, +gaO(){return"I-delete"}, +gaC(){return"Dialog"}, +gbo(){return"Menu ng navigation"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"I-dismiss"}, +gbu(){return"Higit Pa"}, +gaM(){return"Buksan ang menu ng navigation"}, +gX(){return"I-paste"}, +gb2(){return"Popup na menu"}, +gbq(){return"Nagre-refresh"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"1 character ang natitira"}, +gbh(){return u.Z}, +gbE(){return null}, +gbF(){return"TBD"}, +gbx(){return"I-scan ang text"}, +gaN(){return"Scrim"}, +gbk(){return"Isara ang $modalRouteContentName"}, +gby(){return B.N}, +gO(){return"Piliin lahat"}, +gbl(){return"Ipakita ang menu"}, +gbe(){return"Tab $tabIndex ng $tabCount"}} +A.Le.prototype={ +gbf(){return"Alerte"}, +gbg(){return"Retour"}, +gb0(){return"Bottom sheet"}, +gbb(){return"Fermer"}, +gbs(){return"Expanded"}, +gV(){return"Copier"}, +gW(){return"Couper"}, +gaO(){return"Supprimer"}, +gaC(){return"Bo\xeete de dialogue"}, +gbo(){return"Menu de navigation"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"Ignorer"}, +gbu(){return"Plus"}, +gaM(){return"Ouvrir le menu de navigation"}, +gX(){return"Coller"}, +gb2(){return"Menu contextuel"}, +gbq(){return"Actualiser"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"1\xa0caract\xe8re restant"}, +gbh(){return"$remainingCount\xa0caract\xe8res restants"}, +gbE(){return null}, +gbF(){return"TBD"}, +gbx(){return"Num\xe9riser du texte"}, +gaN(){return"Fond"}, +gbk(){return"Fermer $modalRouteContentName"}, +gby(){return B.N}, +gO(){return"Tout s\xe9lectionner"}, +gbl(){return"Afficher le menu"}, +gbe(){return"Onglet $tabIndex sur $tabCount"}} +A.a3W.prototype={ +gaN(){return"Grille"}, +gb0(){return"Zone de contenu dans le bas de l'\xe9cran"}, +gbe(){return"Onglet\xa0$tabIndex sur\xa0$tabCount"}} +A.a3X.prototype={ +gbf(){return"Alerta"}, +gbg(){return"Atr\xe1s"}, +gb0(){return"Panel inferior"}, +gbb(){return"Pechar"}, +gbs(){return"Expanded"}, +gV(){return"Copiar"}, +gW(){return"Cortar"}, +gaO(){return"Eliminar"}, +gaC(){return"Cadro de di\xe1logo"}, +gbo(){return"Men\xfa de navegaci\xf3n"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"Ignorar"}, +gbu(){return"M\xe1is"}, +gaM(){return"Abrir men\xfa de navegaci\xf3n"}, +gX(){return"Pegar"}, +gb2(){return"Men\xfa emerxente"}, +gbq(){return"Actualizar"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"1 car\xe1cter restante"}, +gbh(){return"$remainingCount caracteres restantes"}, +gbE(){return null}, +gbF(){return"TBD"}, +gbx(){return"Escanear texto"}, +gaN(){return"Sombreado"}, +gbk(){return"Pechar $modalRouteContentName"}, +gby(){return B.N}, +gO(){return"Seleccionar todo"}, +gbl(){return"Mostrar men\xfa"}, +gbe(){return"Pestana $tabIndex de $tabCount"}} +A.a3Y.prototype={ +gbf(){return"Benachrichtigung"}, +gbg(){return"Zur\xfcck"}, +gb0(){return"Ansicht am unteren Rand"}, +gbb(){return"Schlie\xdfen"}, +gbs(){return"Expanded"}, +gV(){return"Kopieren"}, +gW(){return"Ausschneiden"}, +gaO(){return"L\xf6schen"}, +gaC(){return"Dialogfeld"}, +gbo(){return"Navigationsmen\xfc"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"Schlie\xdfen"}, +gbu(){return"Mehr"}, +gaM(){return"Navigationsmen\xfc \xf6ffnen"}, +gX(){return"Einsetzen"}, +gb2(){return"Pop-up-Men\xfc"}, +gbq(){return"Aktualisieren"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"Noch 1\xa0Zeichen"}, +gbh(){return"Noch $remainingCount\xa0Zeichen"}, +gbE(){return null}, +gbF(){return"TBD"}, +gbx(){return"Text scannen"}, +gaN(){return"Gitter"}, +gbk(){return"$modalRouteContentName schlie\xdfen"}, +gby(){return B.N}, +gO(){return"Alle ausw\xe4hlen"}, +gbl(){return"Men\xfc anzeigen"}, +gbe(){return"Tab $tabIndex von $tabCount"}} +A.a3Z.prototype={ +gbf(){return"\u0a85\u0ab2\u0ab0\u0acd\u0a9f"}, +gbg(){return"\u0aaa\u0abe\u0a9b\u0ab3"}, +gb0(){return"\u0aac\u0acb\u0a9f\u0aae \u0ab6\u0ac0\u0a9f"}, +gbb(){return"\u0aac\u0a82\u0aa7 \u0a95\u0ab0\u0acb"}, +gbs(){return"Expanded"}, +gV(){return"\u0a95\u0ac9\u0aaa\u0abf \u0a95\u0ab0\u0acb"}, +gW(){return"\u0a95\u0abe\u0aaa\u0acb"}, +gaO(){return"\u0aa1\u0abf\u0ab2\u0ac0\u0a9f \u0a95\u0ab0\u0acb"}, +gaC(){return"\u0ab8\u0a82\u0ab5\u0abe\u0aa6"}, +gbo(){return"\u0aa8\u0ac5\u0ab5\u0abf\u0a97\u0ac7\u0ab6\u0aa8 \u0aae\u0ac7\u0aa8\u0ac2"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"\u0a9b\u0acb\u0aa1\u0ac0 \u0aa6\u0acb"}, +gbu(){return"\u0ab5\u0aa7\u0ac1"}, +gaM(){return"\u0aa8\u0ac5\u0ab5\u0abf\u0a97\u0ac7\u0ab6\u0aa8 \u0aae\u0ac7\u0aa8\u0ac2 \u0a96\u0acb\u0ab2\u0acb"}, +gX(){return"\u0aaa\u0ac7\u0ab8\u0acd\u0a9f \u0a95\u0ab0\u0acb"}, +gb2(){return"\u0aaa\u0ac9\u0aaa\u0a85\u0aaa \u0aae\u0ac7\u0aa8\u0ac2"}, +gbq(){return"\u0ab0\u0abf\u0aab\u0acd\u0ab0\u0ac7\u0ab6 \u0a95\u0ab0\u0acb"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"1 \u0a85\u0a95\u0acd\u0ab7\u0ab0 \u0aac\u0abe\u0a95\u0ac0"}, +gbh(){return"$remainingCount \u0a85\u0a95\u0acd\u0ab7\u0ab0 \u0aac\u0abe\u0a95\u0ac0"}, +gbE(){return null}, +gbF(){return null}, +gbx(){return"\u0a9f\u0ac7\u0a95\u0acd\u0ab8\u0acd\u0a9f \u0ab8\u0acd\u0a95\u0ac7\u0aa8 \u0a95\u0ab0\u0acb"}, +gaN(){return"\u0ab8\u0acd\u0a95\u0acd\u0ab0\u0abf\u0aae"}, +gbk(){return"$modalRouteContentName\u0aa8\u0ac7 \u0aac\u0a82\u0aa7 \u0a95\u0ab0\u0acb"}, +gby(){return B.bG}, +gO(){return"\u0aac\u0aa7\u0abe \u0aaa\u0ab8\u0a82\u0aa6 \u0a95\u0ab0\u0acb"}, +gbl(){return"\u0aae\u0ac7\u0aa8\u0ac2 \u0aac\u0aa4\u0abe\u0ab5\u0acb"}, +gbe(){return"$tabCount\u0aae\u0abe\u0a82\u0aa5\u0ac0 $tabIndex \u0a9f\u0ac5\u0aac"}} +A.a4_.prototype={ +gbf(){return"\u05d4\u05ea\u05e8\u05d0\u05d4"}, +gbg(){return"\u05d4\u05e7\u05d5\u05d3\u05dd"}, +gb0(){return"\u05d2\u05d9\u05dc\u05d9\u05d5\u05df \u05ea\u05d7\u05ea\u05d5\u05df"}, +gbb(){return"\u05e1\u05d2\u05d9\u05e8\u05d4"}, +gbs(){return"Expanded"}, +gV(){return"\u05d4\u05e2\u05ea\u05e7\u05d4"}, +gW(){return"\u05d2\u05d6\u05d9\u05e8\u05d4"}, +gaO(){return"\u05de\u05d7\u05d9\u05e7\u05d4"}, +gaC(){return"\u05ea\u05d9\u05d1\u05ea \u05d3\u05d5-\u05e9\u05d9\u05d7"}, +gbo(){return"\u05ea\u05e4\u05e8\u05d9\u05d8 \u05e0\u05d9\u05d5\u05d5\u05d8"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"\u05e1\u05d2\u05d9\u05e8\u05d4"}, +gbu(){return"\u05e2\u05d5\u05d3"}, +gaM(){return"\u05e4\u05ea\u05d9\u05d7\u05d4 \u05e9\u05dc \u05ea\u05e4\u05e8\u05d9\u05d8 \u05d4\u05e0\u05d9\u05d5\u05d5\u05d8"}, +gX(){return"\u05d4\u05d3\u05d1\u05e7\u05d4"}, +gb2(){return"\u05ea\u05e4\u05e8\u05d9\u05d8 \u05e7\u05d5\u05e4\u05e5"}, +gbq(){return"\u05e8\u05e2\u05e0\u05d5\u05df"}, +gbv(){return null}, +gbD(){return"\u05e0\u05d5\u05ea\u05e8\u05d5 $remainingCount \u05ea\u05d5\u05d5\u05d9\u05dd"}, +gbd(){return"\u05e0\u05d5\u05ea\u05e8 \u05ea\u05d5 \u05d0\u05d7\u05d3"}, +gbh(){return"\u05e0\u05d5\u05ea\u05e8\u05d5 $remainingCount \u05ea\u05d5\u05d5\u05d9\u05dd"}, +gbE(){return"\u05e0\u05d5\u05ea\u05e8\u05d5 $remainingCount \u05ea\u05d5\u05d5\u05d9\u05dd"}, +gbF(){return"TBD"}, +gbx(){return"\u05e1\u05e8\u05d5\u05e7 \u05d8\u05e7\u05e1\u05d8"}, +gaN(){return"\u05de\u05d9\u05e1\u05d5\u05da"}, +gbk(){return"\u05e1\u05d2\u05d9\u05e8\u05ea $modalRouteContentName"}, +gby(){return B.N}, +gO(){return"\u05d1\u05d7\u05d9\u05e8\u05ea \u05d4\u05db\u05d5\u05dc"}, +gbl(){return"\u05d4\u05e6\u05d2\u05ea \u05d4\u05ea\u05e4\u05e8\u05d9\u05d8"}, +gbe(){return"\u05db\u05e8\u05d8\u05d9\u05e1\u05d9\u05d9\u05d4 $tabIndex \u05de\u05ea\u05d5\u05da $tabCount"}} +A.a40.prototype={ +gbf(){return"\u0905\u0932\u0930\u094d\u091f"}, +gbg(){return"\u0935\u093e\u092a\u0938 \u091c\u093e\u090f\u0902"}, +gb0(){return"\u092c\u0949\u091f\u092e \u0936\u0940\u091f"}, +gbb(){return"\u092c\u0902\u0926 \u0915\u0930\u0947\u0902"}, +gbs(){return"Expanded"}, +gV(){return"\u0915\u0949\u092a\u0940 \u0915\u0930\u0947\u0902"}, +gW(){return"\u0915\u093e\u091f\u0947\u0902"}, +gaO(){return"\u092e\u093f\u091f\u093e\u090f\u0902"}, +gaC(){return"\u0921\u093e\u092f\u0932\u0949\u0917"}, +gbo(){return"\u0928\u0947\u0935\u093f\u0917\u0947\u0936\u0928 \u092e\u0947\u0928\u094d\u092f\u0942"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"\u0916\u093e\u0930\u093f\u091c \u0915\u0930\u0947\u0902"}, +gbu(){return"\u095b\u094d\u092f\u093e\u0926\u093e"}, +gaM(){return"\u0928\u0947\u0935\u093f\u0917\u0947\u0936\u0928 \u092e\u0947\u0928\u094d\u092f\u0942 \u0916\u094b\u0932\u0947\u0902"}, +gX(){return"\u091a\u093f\u092a\u0915\u093e\u090f\u0902"}, +gb2(){return"\u092a\u0949\u092a\u0905\u092a \u092e\u0947\u0928\u094d\u092f\u0942"}, +gbq(){return"\u0930\u0940\u092b\u093c\u094d\u0930\u0947\u0936 \u0915\u0930\u0947\u0902"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"\u090f\u0915 \u0935\u0930\u094d\u0923 \u0906\u0948\u0930 \u0921\u093e\u0932\u093e \u091c\u093e \u0938\u0915\u0924\u093e \u0939\u0948"}, +gbh(){return"$remainingCount \u0935\u0930\u094d\u0923 \u0906\u0948\u0930 \u0921\u093e\u0932\u0947 \u091c\u093e \u0938\u0915\u0924\u0947 \u0939\u0948\u0902"}, +gbE(){return null}, +gbF(){return"TBD"}, +gbx(){return"\u092a\u093e\u0920 \u0938\u094d\u0915\u0948\u0928 \u0915\u0930\u0947\u0902"}, +gaN(){return"\u0938\u094d\u0915\u094d\u0930\u093f\u092e"}, +gbk(){return"$modalRouteContentName \u0915\u094b \u092c\u0902\u0926 \u0915\u0930\u0947\u0902"}, +gby(){return B.eu}, +gO(){return"\u0938\u092d\u0940 \u0915\u094b \u091a\u0941\u0928\u0947\u0902"}, +gbl(){return"\u092e\u0947\u0928\u094d\u092f\u0942 \u0926\u093f\u0916\u093e\u090f\u0902"}, +gbe(){return"$tabCount \u0915\u093e \u091f\u0948\u092c $tabIndex"}} +A.a41.prototype={ +gbf(){return"Upozorenje"}, +gbg(){return"Natrag"}, +gb0(){return"Donja tablica"}, +gbb(){return"Zatvaranje"}, +gbs(){return"Expanded"}, +gV(){return"Kopiraj"}, +gW(){return"Izre\u017ei"}, +gaO(){return"Brisanje"}, +gaC(){return"Dijalog"}, +gbo(){return"Navigacijski izbornik"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"Odbaci"}, +gbu(){return"Vi\u0161e"}, +gaM(){return"Otvaranje izbornika za navigaciju"}, +gX(){return"Zalijepi"}, +gb2(){return"Sko\u010dni izbornik"}, +gbq(){return"Osvje\u017ei"}, +gbv(){return"Preostala su $remainingCount znaka"}, +gbD(){return null}, +gbd(){return"Preostao je 1 znak"}, +gbh(){return"Preostalo je $remainingCount znakova"}, +gbE(){return null}, +gbF(){return"TBD"}, +gbx(){return"Skeniraj tekst"}, +gaN(){return"Rubno"}, +gbk(){return"Zatvori $modalRouteContentName"}, +gby(){return B.N}, +gO(){return"Odaberi sve"}, +gbl(){return"Prikaz izbornika"}, +gbe(){return"Kartica $tabIndex od $tabCount"}} +A.a42.prototype={ +gbf(){return"\xc9rtes\xedt\xe9s"}, +gbg(){return"Vissza"}, +gb0(){return"Als\xf3 lap"}, +gbb(){return"Bez\xe1r\xe1s"}, +gbs(){return"Expanded"}, +gV(){return"M\xe1sol\xe1s"}, +gW(){return"Kiv\xe1g\xe1s"}, +gaO(){return"T\xf6rl\xe9s"}, +gaC(){return"P\xe1rbesz\xe9dablak"}, +gbo(){return"Navig\xe1ci\xf3s men\xfc"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"Elvet\xe9s"}, +gbu(){return"T\xf6bb"}, +gaM(){return"Navig\xe1ci\xf3s men\xfc megnyit\xe1sa"}, +gX(){return"Beilleszt\xe9s"}, +gb2(){return"El\u0151ugr\xf3 men\xfc"}, +gbq(){return"Friss\xedt\xe9s"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"1 karakter maradt"}, +gbh(){return"$remainingCount karakter maradt"}, +gbE(){return null}, +gbF(){return"TBD"}, +gbx(){return"Sz\xf6veg beolvas\xe1sa"}, +gaN(){return"Bor\xedt\xe1s"}, +gbk(){return"$modalRouteContentName bez\xe1r\xe1sa"}, +gby(){return B.N}, +gO(){return"\xd6sszes kijel\xf6l\xe9se"}, +gbl(){return"Men\xfc megjelen\xedt\xe9se"}, +gbe(){return"$tabCount/$tabIndex. lap"}} +A.a43.prototype={ +gbf(){return"\u053e\u0561\u0576\u0578\u0582\u0581\u0578\u0582\u0574"}, +gbg(){return"\u0540\u0565\u057f"}, +gb0(){return"\u0546\u0565\u0580\u0584\u0587\u056b \u0567\u056f\u0580\u0561\u0576"}, +gbb(){return"\u0553\u0561\u056f\u0565\u056c"}, +gbs(){return"Expanded"}, +gV(){return"\u054a\u0561\u057f\u0573\u0565\u0576\u0565\u056c"}, +gW(){return"\u053f\u057f\u0580\u0565\u056c"}, +gaO(){return"\u054b\u0576\u057b\u0565\u056c"}, +gaC(){return"\u0535\u0580\u056f\u056d\u0578\u057d\u0578\u0582\u0569\u0575\u0561\u0576 \u057a\u0561\u057f\u0578\u0582\u0570\u0561\u0576"}, +gbo(){return"\u0546\u0561\u057e\u056b\u0563\u0561\u0581\u056b\u0561\u0575\u056b \u0568\u0576\u057f\u0580\u0561\u0581\u0561\u0576\u056f"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"\u0553\u0561\u056f\u0565\u056c"}, +gbu(){return"\u0531\u0575\u056c"}, +gaM(){return"\u0532\u0561\u0581\u0565\u056c \u0576\u0561\u057e\u056b\u0563\u0561\u0581\u056b\u0561\u0575\u056b \u0568\u0576\u057f\u0580\u0561\u0581\u0561\u0576\u056f\u0568"}, +gX(){return"\u054f\u0565\u0572\u0561\u0564\u0580\u0565\u056c"}, +gb2(){return"\u0535\u056c\u0576\u0578\u0572 \u0568\u0576\u057f\u0580\u0561\u0581\u0561\u0576\u056f"}, +gbq(){return"\u0539\u0561\u0580\u0574\u0561\u0581\u0576\u0565\u056c"}, +gbv(){return"\u0544\u0576\u0561\u0581 $remainingCount \u0576\u056b\u0577"}, +gbD(){return"\u0544\u0576\u0561\u0581 $remainingCount \u0576\u056b\u0577"}, +gbd(){return"\u0544\u0576\u0561\u0581\u0565\u056c \u0567 1 \u0576\u056b\u0577"}, +gbh(){return"\u0544\u0576\u0561\u0581\u0565\u056c \u0567 $remainingCount \u0576\u056b\u0577"}, +gbE(){return null}, +gbF(){return"\u0546\u056b\u0577\u056b \u0570\u0576\u0561\u0580\u0561\u057e\u0578\u0580\u0578\u0582\u0569\u0575\u0578\u0582\u0576 \u0579\u056f\u0561"}, +gbx(){return"\u054d\u056f\u0561\u0576\u0561\u057e\u0578\u0580\u0565\u0584 \u057f\u0565\u0584\u057d\u057f\u0568"}, +gaN(){return"\u0534\u056b\u0574\u0561\u056f"}, +gbk(){return"\u0553\u0561\u056f\u0565\u056c\u055d $modalRouteContentName"}, +gby(){return B.N}, +gO(){return"\u0546\u0577\u0565\u056c \u0562\u0578\u056c\u0578\u0580\u0568"}, +gbl(){return"\u0551\u0578\u0582\u0575\u0581 \u057f\u0561\u056c \u0568\u0576\u057f\u0580\u0561\u0581\u0561\u0576\u056f\u0568"}, +gbe(){return"\u0546\u0565\u0580\u0564\u056b\u0580 $tabIndex\u055d $tabCount-\u056b\u0581"}} +A.a44.prototype={ +gbf(){return"Notifikasi"}, +gbg(){return"Kembali"}, +gb0(){return"Sheet Bawah"}, +gbb(){return"Tutup"}, +gbs(){return"Expanded"}, +gV(){return"Salin"}, +gW(){return"Potong"}, +gaO(){return"Hapus"}, +gaC(){return"Dialog"}, +gbo(){return"Menu navigasi"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"Tutup"}, +gbu(){return"Lainnya"}, +gaM(){return"Buka menu navigasi"}, +gX(){return"Tempel"}, +gb2(){return"Menu pop-up"}, +gbq(){return"Memuat ulang"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"Sisa 1 karakter"}, +gbh(){return"Sisa $remainingCount karakter"}, +gbE(){return null}, +gbF(){return"TBD"}, +gbx(){return"Pindai teks"}, +gaN(){return"Scrim"}, +gbk(){return"Tutup $modalRouteContentName"}, +gby(){return B.N}, +gO(){return"Pilih semua"}, +gbl(){return"Tampilkan menu"}, +gbe(){return"Tab $tabIndex dari $tabCount"}} +A.a45.prototype={ +gbf(){return"Tilkynning"}, +gbg(){return"Til baka"}, +gb0(){return"Bla\xf0 ne\xf0st"}, +gbb(){return"Loka"}, +gbs(){return"Expanded"}, +gV(){return"Afrita"}, +gW(){return"Klippa"}, +gaO(){return"Ey\xf0a"}, +gaC(){return"Gluggi"}, +gbo(){return"Yfirlitsvalmynd"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"Hunsa"}, +gbu(){return"Meira"}, +gaM(){return"Opna yfirlitsvalmynd"}, +gX(){return"L\xedma"}, +gb2(){return"Sprettivalmynd"}, +gbq(){return"Endurn\xfdja"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"1 stafur eftir"}, +gbh(){return"$remainingCount stafir eftir"}, +gbE(){return null}, +gbF(){return null}, +gbx(){return"Skanna\xf0u texta"}, +gaN(){return"M\xf6skvi"}, +gbk(){return"Loka $modalRouteContentName"}, +gby(){return B.N}, +gO(){return"Velja allt"}, +gbl(){return"S\xfdna valmynd"}, +gbe(){return"Flipi $tabIndex af $tabCount"}} +A.a46.prototype={ +gbf(){return"Avviso"}, +gbg(){return"Indietro"}, +gb0(){return"Riquadro inferiore"}, +gbb(){return"Chiudi"}, +gbs(){return"Expanded"}, +gV(){return"Copia"}, +gW(){return"Taglia"}, +gaO(){return"Elimina"}, +gaC(){return"Finestra di dialogo"}, +gbo(){return"Menu di navigazione"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"Ignora"}, +gbu(){return"Altro"}, +gaM(){return"Apri il menu di navigazione"}, +gX(){return"Incolla"}, +gb2(){return"Menu popup"}, +gbq(){return"Aggiorna"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"1 carattere rimanente"}, +gbh(){return"$remainingCount caratteri rimanenti"}, +gbE(){return null}, +gbF(){return"TBD"}, +gbx(){return"Scansiona il testo"}, +gaN(){return"Rete"}, +gbk(){return"Chiudi $modalRouteContentName"}, +gby(){return B.N}, +gO(){return"Seleziona tutto"}, +gbl(){return"Mostra il menu"}, +gbe(){return"Scheda $tabIndex di $tabCount"}} +A.a47.prototype={ +gbf(){return"\u901a\u77e5"}, +gbg(){return"\u623b\u308b"}, +gb0(){return"\u30dc\u30c8\u30e0\u30b7\u30fc\u30c8"}, +gbb(){return"\u9589\u3058\u308b"}, +gbs(){return"Expanded"}, +gV(){return"\u30b3\u30d4\u30fc"}, +gW(){return"\u5207\u308a\u53d6\u308a"}, +gaO(){return"\u524a\u9664"}, +gaC(){return"\u30c0\u30a4\u30a2\u30ed\u30b0"}, +gbo(){return"\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3 \u30e1\u30cb\u30e5\u30fc"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"\u9589\u3058\u308b"}, +gbu(){return"\u305d\u306e\u4ed6"}, +gaM(){return"\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3 \u30e1\u30cb\u30e5\u30fc\u3092\u958b\u304f"}, +gX(){return"\u8cbc\u308a\u4ed8\u3051"}, +gb2(){return"\u30dd\u30c3\u30d7\u30a2\u30c3\u30d7 \u30e1\u30cb\u30e5\u30fc"}, +gbq(){return"\u66f4\u65b0"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"\u6b8b\u308a 1 \u6587\u5b57\uff08\u534a\u89d2\u76f8\u5f53\uff09"}, +gbh(){return"\u6b8b\u308a $remainingCount \u6587\u5b57\uff08\u534a\u89d2\u76f8\u5f53\uff09"}, +gbE(){return null}, +gbF(){return"TBD"}, +gbx(){return"\u30c6\u30ad\u30b9\u30c8\u3092\u30b9\u30ad\u30e3\u30f3"}, +gaN(){return"\u30b9\u30af\u30ea\u30e0"}, +gbk(){return"$modalRouteContentName \u3092\u9589\u3058\u308b"}, +gby(){return B.eu}, +gO(){return"\u3059\u3079\u3066\u9078\u629e"}, +gbl(){return"\u30e1\u30cb\u30e5\u30fc\u3092\u8868\u793a"}, +gbe(){return"\u30bf\u30d6: $tabIndex/$tabCount"}} +A.a48.prototype={ +gbf(){return"\u10d2\u10d0\u10e4\u10e0\u10d7\u10ee\u10d8\u10da\u10d4\u10d1\u10d0"}, +gbg(){return"\u10e3\u10d9\u10d0\u10dc"}, +gb0(){return"\u10e5\u10d5\u10d4\u10d3\u10d0 \u10e4\u10e3\u10e0\u10ea\u10d4\u10da\u10d8"}, +gbb(){return"\u10d3\u10d0\u10ee\u10e3\u10e0\u10d5\u10d0"}, +gbs(){return"Expanded"}, +gV(){return"\u10d9\u10dd\u10de\u10d8\u10e0\u10d4\u10d1\u10d0"}, +gW(){return"\u10d0\u10db\u10dd\u10ed\u10e0\u10d0"}, +gaO(){return"\u10ec\u10d0\u10e8\u10da\u10d0"}, +gaC(){return"\u10d3\u10d8\u10d0\u10da\u10dd\u10d2\u10d8"}, +gbo(){return"\u10dc\u10d0\u10d5\u10d8\u10d2\u10d0\u10ea\u10d8\u10d8\u10e1 \u10db\u10d4\u10dc\u10d8\u10e3"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"\u10d3\u10d0\u10ee\u10e3\u10e0\u10d5\u10d0"}, +gbu(){return"\u10db\u10d4\u10e2\u10d8"}, +gaM(){return"\u10e1\u10d0\u10dc\u10d0\u10d5\u10d8\u10d2\u10d0\u10ea\u10d8\u10dd \u10db\u10d4\u10dc\u10d8\u10e3\u10e1 \u10d2\u10d0\u10ee\u10e1\u10dc\u10d0"}, +gX(){return"\u10e9\u10d0\u10e1\u10db\u10d0"}, +gb2(){return"\u10d0\u10db\u10dd\u10db\u10ee\u10e2\u10d0\u10e0\u10d8 \u10db\u10d4\u10dc\u10d8\u10e3"}, +gbq(){return"\u10d2\u10d0\u10dc\u10d0\u10ee\u10da\u10d4\u10d1\u10d0"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"\u10d3\u10d0\u10e0\u10e9\u10d0 1 \u10e1\u10d8\u10db\u10d1\u10dd\u10da\u10dd"}, +gbh(){return"\u10d3\u10d0\u10e0\u10e9\u10d0 $remainingCount \u10e1\u10d8\u10db\u10d1\u10dd\u10da\u10dd"}, +gbE(){return null}, +gbF(){return null}, +gbx(){return"\u10e2\u10d4\u10e5\u10e1\u10e2\u10d8\u10e1 \u10e1\u10d9\u10d0\u10dc\u10d8\u10e0\u10d4\u10d1\u10d0"}, +gaN(){return"\u10e1\u10d9\u10e0\u10d8\u10db\u10d8"}, +gbk(){return"$modalRouteContentName-\u10d8\u10e1 \u10d3\u10d0\u10ee\u10e3\u10e0\u10d5\u10d0"}, +gby(){return B.N}, +gO(){return"\u10e7\u10d5\u10d4\u10da\u10d0\u10e1 \u10d0\u10e0\u10e9\u10d4\u10d5\u10d0"}, +gbl(){return"\u10db\u10d4\u10dc\u10d8\u10e3\u10e1 \u10e9\u10d5\u10d4\u10dc\u10d4\u10d1\u10d0"}, +gbe(){return"\u10e9\u10d0\u10dc\u10d0\u10e0\u10d7\u10d8 $tabIndex / $tabCount-\u10d3\u10d0\u10dc"}} +A.a49.prototype={ +gbf(){return"\u0414\u0430\u0431\u044b\u043b"}, +gbg(){return"\u0410\u0440\u0442\u049b\u0430"}, +gb0(){return"\u0422\u04e9\u043c\u0435\u043d\u0433\u0456 \u043f\u0430\u0440\u0430\u049b\u0448\u0430"}, +gbb(){return"\u0416\u0430\u0431\u0443"}, +gbs(){return"Expanded"}, +gV(){return"\u041a\u04e9\u0448\u0456\u0440\u0443"}, +gW(){return"\u049a\u0438\u044e"}, +gaO(){return"\u0416\u043e\u044e"}, +gaC(){return"\u0414\u0438\u0430\u043b\u043e\u0433\u0442\u044b\u049b \u0442\u0435\u0440\u0435\u0437\u0435"}, +gbo(){return"\u041d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u044f \u043c\u04d9\u0437\u0456\u0440\u0456"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"\u0416\u0430\u0431\u0443"}, +gbu(){return"\u0416\u0430\u044e"}, +gaM(){return"\u041d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u044f \u043c\u04d9\u0437\u0456\u0440\u0456\u043d \u0430\u0448\u0443"}, +gX(){return"\u049a\u043e\u044e"}, +gb2(){return"\u049a\u0430\u043b\u049b\u044b\u043c\u0430\u043b\u044b \u0442\u0435\u0440\u0435\u0437\u0435 \u043c\u04d9\u0437\u0456\u0440\u0456"}, +gbq(){return"\u0416\u0430\u04a3\u0430\u0440\u0442\u0443"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"1 \u0442\u0430\u04a3\u0431\u0430 \u049b\u0430\u043b\u0434\u044b."}, +gbh(){return"$remainingCount \u0442\u0430\u04a3\u0431\u0430 \u049b\u0430\u043b\u0434\u044b."}, +gbE(){return null}, +gbF(){return"\u0422\u0430\u04a3\u0431\u0430\u043b\u0430\u0440 \u049b\u0430\u043b\u043c\u0430\u0434\u044b"}, +gbx(){return"\u041c\u04d9\u0442\u0456\u043d\u0434\u0456 \u0441\u043a\u0430\u043d\u0435\u0440\u043b\u0435\u0443"}, +gaN(){return"\u041a\u0435\u043d\u0435\u043f"}, +gbk(){return"$modalRouteContentName \u0436\u0430\u0431\u0443"}, +gby(){return B.N}, +gO(){return"\u0411\u0430\u0440\u043b\u044b\u0493\u044b\u043d \u0442\u0430\u04a3\u0434\u0430\u0443"}, +gbl(){return"\u041c\u04d9\u0437\u0456\u0440\u0434\u0456 \u043a\u04e9\u0440\u0441\u0435\u0442\u0443"}, +gbe(){return"$tabCount/$tabIndex \u049b\u043e\u0439\u044b\u043d\u0434\u044b"}} +A.a4a.prototype={ +gbf(){return"\u1787\u17bc\u1793\u178a\u17c6\u178e\u17b9\u1784"}, +gbg(){return"\u1790\u1799\u1780\u17d2\u179a\u17c4\u1799"}, +gb0(){return"\u179f\u1793\u17d2\u179b\u17b9\u1780\u200b\u1781\u17b6\u1784\u1780\u17d2\u179a\u17c4\u1798"}, +gbb(){return"\u1794\u17b7\u1791"}, +gbs(){return"Expanded"}, +gV(){return"\u1785\u1798\u17d2\u179b\u1784"}, +gW(){return"\u1780\u17b6\u178f\u17cb"}, +gaO(){return"\u179b\u17bb\u1794"}, +gaC(){return"\u1794\u17d2\u179a\u17a2\u1794\u17cb"}, +gbo(){return"\u1798\u17c9\u17ba\u1793\u17bb\u1799\u179a\u17bb\u1780\u179a\u1780"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"\u1785\u17d2\u179a\u17b6\u1793\u200b\u1785\u17c4\u179b"}, +gbu(){return"\u1785\u17d2\u179a\u17be\u1793\u200b\u1791\u17c0\u178f"}, +gaM(){return"\u1794\u17be\u1780\u200b\u1798\u17c9\u17ba\u1793\u17bb\u1799\u179a\u17bb\u1780\u179a\u1780"}, +gX(){return"\u178a\u17b6\u1780\u17cb\u200b\u1785\u17bc\u179b"}, +gb2(){return"\u200b\u1798\u17c9\u17ba\u1793\u17bb\u1799\u200b\u179b\u17c4\u178f\u200b\u17a1\u17be\u1784"}, +gbq(){return"\u1795\u17d2\u1791\u17bb\u1780\u17a1\u17be\u1784\u179c\u17b7\u1789"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"\u1793\u17c5\u179f\u179b\u17cb\u200b 1 \u178f\u17bd\u200b\u1791\u17c0\u178f"}, +gbh(){return"\u1793\u17c5\u179f\u179b\u17cb $remainingCount \u178f\u17bd\u200b\u1791\u17c0\u178f"}, +gbE(){return null}, +gbF(){return"TBD"}, +gbx(){return"\u179f\u17d2\u1780\u17c1\u1793\u17a2\u178f\u17d2\u1790\u1794\u1791"}, +gaN(){return"\u1795\u17d2\u1791\u17b6\u17c6\u1784\u179f\u17d2\u179a\u17a2\u17b6\u1794\u17cb"}, +gbk(){return"\u1794\u17b7\u1791 $modalRouteContentName"}, +gby(){return B.eu}, +gO(){return"\u1787\u17d2\u179a\u17be\u179f\u179a\u17be\u179f\u200b\u1791\u17b6\u17c6\u1784\u17a2\u179f\u17cb"}, +gbl(){return"\u1794\u1784\u17d2\u17a0\u17b6\u1789\u200b\u1798\u17c9\u17ba\u1793\u17bb\u1799"}, +gbe(){return"\u1795\u17d2\u1791\u17b6\u17c6\u1784 $tabIndex \u1780\u17d2\u1793\u17bb\u1784\u200b\u1785\u17c6\u178e\u17c4\u1798\u200b $tabCount"}} +A.a4b.prototype={ +gbf(){return"\u0c8e\u0c9a\u0ccd\u0c9a\u0cb0\u0cbf\u0c95\u0cc6"}, +gbg(){return"\u0cb9\u0cbf\u0c82\u0ca4\u0cbf\u0cb0\u0cc1\u0c97\u0cbf"}, +gb0(){return"\u0c95\u0cc6\u0cb3\u0cad\u0cbe\u0c97\u0ca6 \u0cb6\u0cc0\u0c9f\u0ccd"}, +gbb(){return"\u0cae\u0cc1\u0c9a\u0ccd\u0c9a\u0cbf\u0cb0\u0cbf"}, +gbs(){return"Expanded"}, +gV(){return"\u0ca8\u0c95\u0cb2\u0cbf\u0cb8\u0cbf"}, +gW(){return"\u0c95\u0ca4\u0ccd\u0ca4\u0cb0\u0cbf\u0cb8\u0cbf"}, +gaO(){return"\u0c85\u0cb3\u0cbf\u0cb8\u0cbf"}, +gaC(){return"\u0ca1\u0cc8\u0cb2\u0cbe\u0c97\u0ccd"}, +gbo(){return"\u0ca8\u0ccd\u0caf\u0cbe\u0cb5\u0cbf\u0c97\u0cc7\u0cb6\u0ca8\u0ccd\u200c \u0cae\u0cc6\u0ca8\u0cc1"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"\u0cb5\u0c9c\u0cbe\u0c97\u0cca\u0cb3\u0cbf\u0cb8\u0cbf"}, +gbu(){return"\u0c87\u0ca8\u0ccd\u0ca8\u0cb7\u0ccd\u0c9f\u0cc1"}, +gaM(){return"\u0ca8\u0ccd\u0caf\u0cbe\u0cb5\u0cbf\u0c97\u0cc7\u0cb6\u0ca8\u0ccd\u200c \u0cae\u0cc6\u0ca8\u0cc1 \u0ca4\u0cc6\u0cb0\u0cc6\u0caf\u0cbf\u0cb0\u0cbf"}, +gX(){return"\u0c85\u0c82\u0c9f\u0cbf\u0cb8\u0cbf"}, +gb2(){return"\u0caa\u0cbe\u0caa\u0ccd\u0c85\u0caa\u0ccd \u0cae\u0cc6\u0ca8\u0cc1"}, +gbq(){return"\u0cb0\u0cbf\u0cab\u0ccd\u0cb0\u0cc6\u0cb6\u0ccd \u0cae\u0cbe\u0ca1\u0cbf"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"1 \u0c85\u0c95\u0ccd\u0cb7\u0cb0 \u0c89\u0cb3\u0cbf\u0ca6\u0cbf\u0ca6\u0cc6"}, +gbh(){return"$remainingCount \u0c85\u0c95\u0ccd\u0cb7\u0cb0\u0c97\u0cb3\u0cc1 \u0c89\u0cb3\u0cbf\u0ca6\u0cbf\u0cb5\u0cc6"}, +gbE(){return null}, +gbF(){return null}, +gbx(){return"\u0caa\u0ca0\u0ccd\u0caf\u0cb5\u0ca8\u0ccd\u0ca8\u0cc1 \u0cb8\u0ccd\u0c95\u0ccd\u0caf\u0cbe\u0ca8\u0ccd \u0cae\u0cbe\u0ca1\u0cbf"}, +gaN(){return"\u0cb8\u0ccd\u0c95\u0ccd\u0cb0\u0cbf\u0cae\u0ccd"}, +gbk(){return"$modalRouteContentName \u0c85\u0ca8\u0ccd\u0ca8\u0cc1 \u0cae\u0cc1\u0c9a\u0ccd\u0c9a\u0cbf\u0cb0\u0cbf"}, +gby(){return B.bG}, +gO(){return"\u0c8e\u0cb2\u0ccd\u0cb2\u0cb5\u0ca8\u0ccd\u0ca8\u0cc2 \u0c86\u0caf\u0ccd\u0c95\u0cc6 \u0cae\u0cbe\u0ca1\u0cbf"}, +gbl(){return"\u0cae\u0cc6\u0ca8\u0cc1 \u0ca4\u0ccb\u0cb0\u0cbf\u0cb8\u0cbf"}, +gbe(){return"$tabCount \u0cb0\u0cb2\u0ccd\u0cb2\u0cbf\u0ca8 $tabIndex \u0c9f\u0ccd\u0caf\u0cbe\u0cac\u0ccd"}} +A.a4c.prototype={ +gbf(){return"\uc54c\ub9bc"}, +gbg(){return"\ub4a4\ub85c"}, +gb0(){return"\ud558\ub2e8 \uc2dc\ud2b8"}, +gbb(){return"\ub2eb\uae30"}, +gbs(){return"Expanded"}, +gV(){return"\ubcf5\uc0ac"}, +gW(){return"\uc798\ub77c\ub0c4"}, +gaO(){return"\uc0ad\uc81c"}, +gaC(){return"\ub300\ud654\uc0c1\uc790"}, +gbo(){return"\ud0d0\uc0c9 \uba54\ub274"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"\ub2eb\uae30"}, +gbu(){return"\ub354\ubcf4\uae30"}, +gaM(){return"\ud0d0\uc0c9 \uba54\ub274 \uc5f4\uae30"}, +gX(){return"\ubd99\uc5ec\ub123\uae30"}, +gb2(){return"\ud31d\uc5c5 \uba54\ub274"}, +gbq(){return"\uc0c8\ub85c\uace0\uce68"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"1\uc790 \ub0a8\uc74c"}, +gbh(){return"$remainingCount\uc790 \ub0a8\uc74c"}, +gbE(){return null}, +gbF(){return"TBD"}, +gbx(){return"\uc2a4\uce94 \ud14d\uc2a4\ud2b8"}, +gaN(){return"\uc2a4\ud06c\ub9bc"}, +gbk(){return"$modalRouteContentName \ub2eb\uae30"}, +gby(){return B.eu}, +gO(){return"\uc804\uccb4 \uc120\ud0dd"}, +gbl(){return"\uba54\ub274 \ud45c\uc2dc"}, +gbe(){return"\ud0ed $tabCount\uac1c \uc911 $tabIndex\ubc88\uc9f8"}} +A.a4d.prototype={ +gbf(){return"\u042d\u0441\u043a\u0435\u0440\u0442\u04af\u04af"}, +gbg(){return"\u0410\u0440\u0442\u043a\u0430"}, +gb0(){return"\u042b\u043b\u0434\u044b\u0439\u043a\u044b \u044d\u043a\u0440\u0430\u043d"}, +gbb(){return"\u0416\u0430\u0431\u0443\u0443"}, +gbs(){return"Expanded"}, +gV(){return"\u041a\u04e9\u0447\u04af\u0440\u04af\u04af"}, +gW(){return"\u041a\u0435\u0441\u04af\u04af"}, +gaO(){return"\u0416\u043e\u043a \u043a\u044b\u043b\u0443\u0443"}, +gaC(){return"\u0414\u0438\u0430\u043b\u043e\u0433"}, +gbo(){return"\u0427\u0430\u0431\u044b\u0442\u0442\u043e\u043e \u043c\u0435\u043d\u044e\u0441\u0443"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"\u0416\u0430\u0431\u0443\u0443"}, +gbu(){return"\u0414\u0430\u0433\u044b"}, +gaM(){return"\u0427\u0430\u0431\u044b\u0442\u0442\u043e\u043e \u043c\u0435\u043d\u044e\u0441\u0443\u043d \u0430\u0447\u0443\u0443"}, +gX(){return"\u0427\u0430\u043f\u0442\u043e\u043e"}, +gb2(){return"\u041a\u0430\u043b\u043a\u044b\u043f \u0447\u044b\u0433\u0443\u0443\u0447\u0443 \u043c\u0435\u043d\u044e"}, +gbq(){return"\u0416\u0430\u04a3\u044b\u0440\u0442\u0443\u0443"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"1 \u0431\u0435\u043b\u0433\u0438 \u043a\u0430\u043b\u0434\u044b"}, +gbh(){return"$remainingCount \u0431\u0435\u043b\u0433\u0438 \u043a\u0430\u043b\u0434\u044b"}, +gbE(){return null}, +gbF(){return null}, +gbx(){return"\u0422\u0435\u043a\u0441\u0442\u0442\u0438 \u0441\u043a\u0430\u043d\u0434\u043e\u043e"}, +gaN(){return"\u041a\u0435\u043d\u0435\u043f"}, +gbk(){return"$modalRouteContentName \u0436\u0430\u0431\u0443\u0443"}, +gby(){return B.N}, +gO(){return"\u0411\u0430\u0430\u0440\u044b\u043d \u0442\u0430\u043d\u0434\u043e\u043e"}, +gbl(){return"\u041c\u0435\u043d\u044e\u043d\u0443 \u043a\u04e9\u0440\u0441\u04e9\u0442\u04af\u04af"}, +gbe(){return"$tabCount \u043a\u044b\u043d\u0430\u043b\u043c\u0430 \u0438\u0447\u0438\u043d\u0435\u043d $tabIndex"}} +A.a4e.prototype={ +gbf(){return"\u0e81\u0eb2\u0e99\u0ec0\u0e95\u0eb7\u0ead\u0e99"}, +gbg(){return"\u0e81\u0eb1\u0e9a\u0e84\u0eb7\u0e99"}, +gb0(){return"\u0e8a\u0eb5\u0e94\u0ea5\u0eb8\u0ec8\u0ea1\u0eaa\u0eb8\u0e94"}, +gbb(){return"\u0e9b\u0eb4\u0e94"}, +gbs(){return"Expanded"}, +gV(){return"\u0eaa\u0eb3\u0ec0\u0e99\u0ebb\u0eb2"}, +gW(){return"\u0e95\u0eb1\u0e94"}, +gaO(){return"\u0ea5\u0eb6\u0e9a"}, +gaC(){return"\u0e82\u0ecd\u0ec9\u0e84\u0ea7\u0eb2\u0ea1"}, +gbo(){return"\u0ec0\u0ea1\u0e99\u0eb9\u0e99\u0eb3\u0e97\u0eb2\u0e87"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"\u0e9b\u0eb4\u0e94\u0ec4\u0ea7\u0ec9"}, +gbu(){return"\u0ec0\u0e9e\u0eb5\u0ec8\u0ea1\u0ec0\u0e95\u0eb5\u0ea1"}, +gaM(){return"\u0ec0\u0e9b\u0eb5\u0e94\u0ec0\u0ea1\u0e99\u0eb9\u0e81\u0eb2\u0e99\u0e99\u0eb3\u0e97\u0eb2\u0e87"}, +gX(){return"\u0ea7\u0eb2\u0e87"}, +gb2(){return"\u0ec0\u0ea1\u0e99\u0eb9\u0e9b\u0eb1\u0ead\u0e9a\u0ead\u0eb1\u0e9a"}, +gbq(){return"\u0ec2\u0eab\u0ebc\u0e94\u0e84\u0eb7\u0e99\u0ec3\u0edd\u0ec8"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"\u0e8d\u0eb1\u0e87\u0ead\u0eb5\u0e81 1 \u0e95\u0ebb\u0ea7\u0ead\u0eb1\u0e81\u0eaa\u0ead\u0e99"}, +gbh(){return"\u0e8d\u0eb1\u0e87\u0ead\u0eb5\u0e81 $remainingCount \u0e95\u0ebb\u0ea7\u0ead\u0eb1\u0e81\u0eaa\u0ead\u0e99"}, +gbE(){return null}, +gbF(){return null}, +gbx(){return"\u0eaa\u0eb0\u0ec1\u0e81\u0e99\u0e82\u0ecd\u0ec9\u0e84\u0ea7\u0eb2\u0ea1"}, +gaN(){return"Scrim"}, +gbk(){return"\u0e9b\u0eb4\u0e94 $modalRouteContentName"}, +gby(){return B.bG}, +gO(){return"\u0ec0\u0ea5\u0eb7\u0ead\u0e81\u0e97\u0eb1\u0e87\u0edd\u0ebb\u0e94"}, +gbl(){return"\u0eaa\u0eb0\u0ec1\u0e94\u0e87\u0ec0\u0ea1\u0e99\u0eb9"}, +gbe(){return"\u0ec1\u0e96\u0e9a\u0e97\u0eb5 $tabIndex \u0e88\u0eb2\u0e81\u0e97\u0eb1\u0e87\u0edd\u0ebb\u0e94 $tabCount"}} +A.a4f.prototype={ +gbf(){return"\u012esp\u0117jimas"}, +gbg(){return"Atgal"}, +gb0(){return"Apatinis lapas"}, +gbb(){return"U\u017edaryti"}, +gbs(){return"Expanded"}, +gV(){return"Kopijuoti"}, +gW(){return"I\u0161kirpti"}, +gaO(){return"I\u0161trinti"}, +gaC(){return"Dialogo langas"}, +gbo(){return"Nar\u0161ymo meniu"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"Atsisakyti"}, +gbu(){return"Daugiau"}, +gaM(){return"Atidaryti nar\u0161ymo meniu"}, +gX(){return"\u012eklijuoti"}, +gb2(){return"I\u0161\u0161okantysis meniu"}, +gbq(){return"Atnaujinti"}, +gbv(){return"Liko $remainingCount simboliai"}, +gbD(){return"Liko $remainingCount simbolio"}, +gbd(){return"Liko 1 simbolis"}, +gbh(){return"Liko $remainingCount simboli\u0173"}, +gbE(){return null}, +gbF(){return"TBD"}, +gbx(){return"Nuskaityti tekst\u0105"}, +gaN(){return"U\u017esklanda"}, +gbk(){return"U\u017edaryti \u201e$modalRouteContentName\u201c"}, +gby(){return B.N}, +gO(){return"Pasirinkti visk\u0105"}, +gbl(){return"Rodyti meniu"}, +gbe(){return"$tabIndex skirtukas i\u0161 $tabCount"}} +A.a4g.prototype={ +gbf(){return"Br\u012bdin\u0101jums"}, +gbg(){return"Atpaka\u013c"}, +gb0(){return"Ekr\u0101na apak\u0161da\u013cas lapa"}, +gbb(){return"Aizv\u0113rt"}, +gbs(){return"Expanded"}, +gV(){return"Kop\u0113t"}, +gW(){return"Izgriezt"}, +gaO(){return"Dz\u0113st"}, +gaC(){return"Dialoglodzi\u0146\u0161"}, +gbo(){return"Navig\u0101cijas izv\u0113lne"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"Ner\u0101d\u012bt"}, +gbu(){return"Vair\u0101k"}, +gaM(){return"Atv\u0113rt navig\u0101cijas izv\u0113lni"}, +gX(){return"Iel\u012bm\u0113t"}, +gb2(){return"Uznirsto\u0161\u0101 izv\u0113lne"}, +gbq(){return"Atsvaidzin\u0101t"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"Atlikusi 1\xa0rakstz\u012bme."}, +gbh(){return"Atliku\u0161as $remainingCount\xa0rakstz\u012bmes."}, +gbE(){return null}, +gbF(){return"Nav atlikusi neviena rakstz\u012bme."}, +gbx(){return"Sken\u0113t tekstu"}, +gaN(){return"P\u0101rkl\u0101jums"}, +gbk(){return"Aizv\u0113rt $modalRouteContentName"}, +gby(){return B.N}, +gO(){return"Atlas\u012bt visu"}, +gbl(){return"R\u0101d\u012bt izv\u0113lni"}, +gbe(){return"$tabIndex.\xa0cilne no\xa0$tabCount"}} +A.a4h.prototype={ +gbf(){return"\u041f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0434\u0443\u0432\u0430\u045a\u0435"}, +gbg(){return"\u041d\u0430\u0437\u0430\u0434"}, +gb0(){return"\u0414\u043e\u043b\u0435\u043d \u043b\u0438\u0441\u0442"}, +gbb(){return"\u0417\u0430\u0442\u0432\u043e\u0440\u0438"}, +gbs(){return"Expanded"}, +gV(){return"\u041a\u043e\u043f\u0438\u0440\u0430\u0458"}, +gW(){return"\u0418\u0441\u0435\u0447\u0438"}, +gaO(){return"\u0418\u0437\u0431\u0440\u0438\u0448\u0438"}, +gaC(){return"\u0414\u0438\u0458\u0430\u043b\u043e\u0433"}, +gbo(){return"\u041c\u0435\u043d\u0438 \u0437\u0430 \u043d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u0458\u0430"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"\u041e\u0442\u0444\u0440\u043b\u0438"}, +gbu(){return"\u0423\u0448\u0442\u0435"}, +gaM(){return"\u041e\u0442\u0432\u043e\u0440\u0435\u0442\u0435 \u0433\u043e \u043c\u0435\u043d\u0438\u0442\u043e \u0437\u0430 \u043d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u0458\u0430"}, +gX(){return"\u0417\u0430\u043b\u0435\u043f\u0438"}, +gb2(){return"\u0421\u043a\u043e\u043a\u0430\u0447\u043a\u043e \u043c\u0435\u043d\u0438"}, +gbq(){return"\u041e\u0441\u0432\u0435\u0436\u0438"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"\u041f\u0440\u0435\u043e\u0441\u0442\u0430\u043d\u0443\u0432\u0430 \u0443\u0448\u0442\u0435 1 \u0437\u043d\u0430\u043a"}, +gbh(){return"\u041f\u0440\u0435\u043e\u0441\u0442\u0430\u043d\u0443\u0432\u0430\u0430\u0442 \u0443\u0448\u0442\u0435 $remainingCount \u0437\u043d\u0430\u0446\u0438"}, +gbE(){return null}, +gbF(){return null}, +gbx(){return"\u0421\u043a\u0435\u043d\u0438\u0440\u0430\u0458\u0442\u0435 \u0442\u0435\u043a\u0441\u0442"}, +gaN(){return"\u0421\u043a\u0440\u0438\u043c"}, +gbk(){return"\u0417\u0430\u0442\u0432\u043e\u0440\u0435\u0442\u0435 \u0458\u0430 $modalRouteContentName"}, +gby(){return B.N}, +gO(){return"\u0418\u0437\u0431\u0435\u0440\u0438 \u0433\u0438 \u0441\u0438\u0442\u0435"}, +gbl(){return"\u041f\u0440\u0438\u043a\u0430\u0436\u0438 \u043c\u0435\u043d\u0438"}, +gbe(){return"\u041a\u0430\u0440\u0442\u0438\u0447\u043a\u0430 $tabIndex \u043e\u0434 $tabCount"}} +A.a4i.prototype={ +gbf(){return"\u0d2e\u0d41\u0d28\u0d4d\u0d28\u0d31\u0d3f\u0d2f\u0d3f\u0d2a\u0d4d\u0d2a\u0d4d"}, +gbg(){return"\u0d2e\u0d1f\u0d19\u0d4d\u0d19\u0d41\u0d15"}, +gb0(){return"\u0d2c\u0d4b\u0d1f\u0d4d\u0d1f\u0d02 \u0d37\u0d40\u0d31\u0d4d\u0d31\u0d4d"}, +gbb(){return"\u0d05\u0d1f\u0d2f\u0d4d\u200c\u0d15\u0d4d\u0d15\u0d41\u0d15"}, +gbs(){return"Expanded"}, +gV(){return"\u0d2a\u0d15\u0d7c\u0d24\u0d4d\u0d24\u0d41\u0d15"}, +gW(){return"\u0d2e\u0d41\u0d31\u0d3f\u0d15\u0d4d\u0d15\u0d41\u0d15"}, +gaO(){return"\u0d07\u0d32\u0d4d\u0d32\u0d3e\u0d24\u0d3e\u0d15\u0d4d\u0d15\u0d41\u0d15"}, +gaC(){return"\u0d21\u0d2f\u0d32\u0d4b\u0d17\u0d4d"}, +gbo(){return"\u0d28\u0d3e\u0d35\u0d3f\u0d17\u0d47\u0d37\u0d7b \u0d2e\u0d46\u0d28\u0d41"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"\u0d28\u0d3f\u0d30\u0d38\u0d3f\u0d15\u0d4d\u0d15\u0d41\u0d15"}, +gbu(){return"\u0d15\u0d42\u0d1f\u0d41\u0d24\u0d7d"}, +gaM(){return"\u0d28\u0d3e\u0d35\u0d3f\u0d17\u0d47\u0d37\u0d7b \u0d2e\u0d46\u0d28\u0d41 \u0d24\u0d41\u0d31\u0d15\u0d4d\u0d15\u0d41\u0d15"}, +gX(){return"\u0d12\u0d1f\u0d4d\u0d1f\u0d3f\u0d15\u0d4d\u0d15\u0d41\u0d15"}, +gb2(){return"\u0d2a\u0d4b\u0d2a\u0d4d\u0d2a\u0d4d \u0d05\u0d2a\u0d4d\u0d2a\u0d4d \u0d2e\u0d46\u0d28\u0d41"}, +gbq(){return"\u0d31\u0d40\u0d2b\u0d4d\u0d30\u0d37\u0d4d \u0d1a\u0d46\u0d2f\u0d4d\u0d2f\u0d41\u0d15"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"\u0d12\u0d30\u0d41 \u0d2a\u0d4d\u0d30\u0d24\u0d40\u0d15\u0d02 \u0d36\u0d47\u0d37\u0d3f\u0d15\u0d4d\u0d15\u0d41\u0d28\u0d4d\u0d28\u0d41"}, +gbh(){return"$remainingCount \u0d2a\u0d4d\u0d30\u0d24\u0d40\u0d15\u0d19\u0d4d\u0d19\u0d7e \u0d36\u0d47\u0d37\u0d3f\u0d15\u0d4d\u0d15\u0d41\u0d28\u0d4d\u0d28\u0d41"}, +gbE(){return null}, +gbF(){return null}, +gbx(){return"\u0d1f\u0d46\u0d15\u0d4d\u0d38\u0d4d\u0d31\u0d4d\u0d31\u0d4d \u0d38\u0d4d\u0d15\u0d3e\u0d7b \u0d1a\u0d46\u0d2f\u0d4d\u0d2f\u0d41\u0d15"}, +gaN(){return"\u0d38\u0d4d\u0d15\u0d4d\u0d30\u0d3f\u0d02"}, +gbk(){return"$modalRouteContentName \u0d05\u0d1f\u0d2f\u0d4d\u0d15\u0d4d\u0d15\u0d41\u0d15"}, +gby(){return B.bG}, +gO(){return"\u0d0e\u0d32\u0d4d\u0d32\u0d3e\u0d02 \u0d24\u0d3f\u0d30\u0d1e\u0d4d\u0d1e\u0d46\u0d1f\u0d41\u0d15\u0d4d\u0d15\u0d41\u0d15"}, +gbl(){return"\u0d2e\u0d46\u0d28\u0d41 \u0d15\u0d3e\u0d23\u0d3f\u0d15\u0d4d\u0d15\u0d41\u0d15"}, +gbe(){return"$tabCount-\u0d7d $tabIndex"}} +A.a4j.prototype={ +gbf(){return"\u0421\u044d\u0440\u044d\u043c\u0436\u043b\u04af\u04af\u043b\u044d\u0433"}, +gbg(){return"\u0411\u0443\u0446\u0430\u0445"}, +gb0(){return"\u0414\u043e\u043e\u0434 \u0445\u04af\u0441\u043d\u044d\u0433\u0442"}, +gbb(){return"\u0425\u0430\u0430\u0445"}, +gbs(){return"Expanded"}, +gV(){return"\u0425\u0443\u0443\u043b\u0430\u0445"}, +gW(){return"\u0422\u0430\u0441\u043b\u0430\u0445"}, +gaO(){return"\u0423\u0441\u0442\u0433\u0430\u0445"}, +gaC(){return"\u0425\u0430\u0440\u0438\u043b\u0446\u0430\u0445 \u0446\u043e\u043d\u0445"}, +gbo(){return"\u041d\u0430\u0432\u0438\u0433\u0430\u0446\u044b\u043d \u0446\u044d\u0441"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"\u04ae\u043b \u0445\u044d\u0440\u044d\u0433\u0441\u044d\u0445"}, +gbu(){return"\u0411\u0443\u0441\u0430\u0434"}, +gaM(){return"\u041d\u0430\u0432\u0438\u0433\u0430\u0446\u044b\u043d \u0446\u044d\u0441\u0438\u0439\u0433 \u043d\u044d\u044d\u0445"}, +gX(){return"\u0411\u0443\u0443\u043b\u0433\u0430\u0445"}, +gb2(){return"\u041f\u043e\u043f\u0430\u043f \u0446\u044d\u0441"}, +gbq(){return"\u0421\u044d\u0440\u0433\u044d\u044d\u0445"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"1 \u0442\u044d\u043c\u0434\u044d\u0433\u0442 \u04af\u043b\u0434\u0441\u044d\u043d"}, +gbh(){return"$remainingCount \u0442\u044d\u043c\u0434\u044d\u0433\u0442 \u04af\u043b\u0434\u0441\u044d\u043d"}, +gbE(){return null}, +gbF(){return"No characters remaining"}, +gbx(){return"\u0422\u0435\u043a\u0441\u0442 \u0441\u043a\u0430\u043d\u043d\u0435\u0440\u0434\u0430\u0445"}, +gaN(){return"\u0421\u043a\u0440\u0438\u043c"}, +gbk(){return"$modalRouteContentName-\u0433 \u0445\u0430\u0430\u0445"}, +gby(){return B.N}, +gO(){return"\u0411\u04af\u0433\u0434\u0438\u0439\u0433 \u0441\u043e\u043d\u0433\u043e\u0445"}, +gbl(){return"\u0426\u044d\u0441\u0438\u0439\u0433 \u0445\u0430\u0440\u0443\u0443\u043b\u0430\u0445"}, +gbe(){return"$tabCount-\u043d $tabIndex-\u0440 \u0442\u0430\u0431"}} +A.a4k.prototype={ +gbf(){return"\u0938\u0942\u091a\u0928\u093e"}, +gbg(){return"\u092e\u093e\u0917\u0947"}, +gb0(){return"\u0924\u0933\u093e\u0936\u0940 \u0905\u0938\u0932\u0947\u0932\u0940 \u0936\u0940\u091f"}, +gbb(){return"\u092c\u0902\u0926 \u0915\u0930\u093e"}, +gbs(){return"Expanded"}, +gV(){return"\u0915\u0949\u092a\u0940 \u0915\u0930\u093e"}, +gW(){return"\u0915\u091f \u0915\u0930\u093e"}, +gaO(){return"\u0939\u091f\u0935\u093e"}, +gaC(){return"\u0921\u093e\u092f\u0932\u0949\u0917"}, +gbo(){return"\u0928\u0947\u0935\u094d\u0939\u093f\u0917\u0947\u0936\u0928 \u092e\u0947\u0928\u0942"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"\u0921\u093f\u0938\u092e\u093f\u0938 \u0915\u0930\u093e"}, +gbu(){return"\u0906\u0923\u0916\u0940"}, +gaM(){return"\u0928\u0947\u0935\u094d\u0939\u093f\u0917\u0947\u0936\u0928 \u092e\u0947\u0928\u0942 \u0909\u0918\u0921\u093e"}, +gX(){return"\u092a\u0947\u0938\u094d\u091f \u0915\u0930\u093e"}, +gb2(){return"\u092a\u0949\u092a\u0905\u092a \u092e\u0947\u0928\u0942"}, +gbq(){return"\u0930\u093f\u092b\u094d\u0930\u0947\u0936 \u0915\u0930\u093e"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"\u090f\u0915 \u0935\u0930\u094d\u0923 \u0936\u093f\u0932\u094d\u0932\u0915"}, +gbh(){return"$remainingCount \u0935\u0930\u094d\u0923 \u0936\u093f\u0932\u094d\u0932\u0915"}, +gbE(){return null}, +gbF(){return"\u0915\u094b\u0923\u0924\u0947\u0939\u0940 \u0935\u0930\u094d\u0923 \u0936\u093f\u0932\u094d\u0932\u0915 \u0928\u093e\u0939\u0940\u0924"}, +gbx(){return"\u092e\u091c\u0915\u0942\u0930 \u0938\u094d\u0915\u0945\u0928 \u0915\u0930\u093e"}, +gaN(){return"\u0938\u094d\u0915\u094d\u0930\u093f\u092e"}, +gbk(){return"$modalRouteContentName \u092c\u0902\u0926 \u0915\u0930\u093e"}, +gby(){return B.eu}, +gO(){return"\u0938\u0930\u094d\u0935 \u0928\u093f\u0935\u0921\u093e"}, +gbl(){return"\u092e\u0947\u0928\u0942 \u0926\u093e\u0916\u0935\u093e"}, +gbe(){return"$tabCount \u092a\u0948\u0915\u0940 $tabIndex \u091f\u0945\u092c"}} +A.a4l.prototype={ +gbf(){return"Makluman"}, +gbg(){return"Kembali"}, +gb0(){return"Helaian Bawah"}, +gbb(){return"Tutup"}, +gbs(){return"Expanded"}, +gV(){return"Salin"}, +gW(){return"Potong"}, +gaO(){return"Padam"}, +gaC(){return"Dialog"}, +gbo(){return"Menu navigasi"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"Tolak"}, +gbu(){return"Lagi"}, +gaM(){return"Buka menu navigasi"}, +gX(){return"Tampal"}, +gb2(){return"Menu pop timbul"}, +gbq(){return"Muat semula"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"1 aksara lagi"}, +gbh(){return"$remainingCount aksara lagi"}, +gbE(){return null}, +gbF(){return"TBD"}, +gbx(){return"Pindai teks"}, +gaN(){return"Scrim"}, +gbk(){return"Tutup $modalRouteContentName"}, +gby(){return B.N}, +gO(){return"Pilih semua"}, +gbl(){return"Tunjukkan menu"}, +gbe(){return"Tab $tabIndex dari $tabCount"}} +A.a4m.prototype={ +gbf(){return"\u101e\u1010\u102d\u1015\u1031\u1038\u1001\u103b\u1000\u103a"}, +gbg(){return"\u1014\u1031\u102c\u1000\u103a\u101e\u102d\u102f\u1037"}, +gb0(){return"\u1021\u1031\u102c\u1000\u103a\u1001\u103c\u1031\u1021\u1015\u102d\u102f\u1006\u1031\u102c\u1004\u103a\u1038 \u1005\u102c\u1019\u103b\u1000\u103a\u1014\u103e\u102c"}, +gbb(){return"\u1015\u102d\u1010\u103a\u101b\u1014\u103a"}, +gbs(){return"Expanded"}, +gV(){return"\u1019\u102d\u1010\u1039\u1010\u1030\u1000\u1030\u1038\u101b\u1014\u103a"}, +gW(){return"\u1016\u103c\u1010\u103a\u101a\u1030\u101b\u1014\u103a"}, +gaO(){return"\u1016\u103b\u1000\u103a\u101b\u1014\u103a"}, +gaC(){return"\u1012\u102d\u102f\u1004\u103a\u101a\u102c\u101c\u1031\u102c\u1037"}, +gbo(){return"\u101c\u1019\u103a\u1038\u100a\u103d\u103e\u1014\u103a \u1019\u102e\u1014\u1030\u1038"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"\u1015\u101a\u103a\u101b\u1014\u103a"}, +gbu(){return"\u1014\u1031\u102c\u1000\u103a\u1011\u1015\u103a"}, +gaM(){return"\u101c\u1019\u103a\u1038\u100a\u103d\u103e\u1014\u103a\u1019\u102e\u1014\u1030\u1038\u1000\u102d\u102f \u1016\u103d\u1004\u1037\u103a\u101b\u1014\u103a"}, +gX(){return"\u1000\u1030\u1038\u1011\u100a\u1037\u103a\u101b\u1014\u103a"}, +gb2(){return"\u1015\u1031\u102b\u1037\u1015\u103a\u1021\u1015\u103a\u1019\u102e\u1014\u1030\u1038"}, +gbq(){return"\u1015\u103c\u1014\u103a\u101c\u100a\u103a\u1005\u1010\u1004\u103a\u101b\u1014\u103a"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"\u1021\u1000\u1039\u1001\u101b\u102c \u1041 \u101c\u102f\u1036\u1038\u1000\u103b\u1014\u103a\u101e\u100a\u103a"}, +gbh(){return"\u1021\u1000\u1039\u1001\u101b\u102c $remainingCount \u101c\u102f\u1036\u1038\u1000\u103b\u1014\u103a\u101e\u100a\u103a"}, +gbE(){return null}, +gbF(){return null}, +gbx(){return"\u1005\u102c\u101e\u102c\u1038\u1000\u102d\u102f \u1005\u1000\u1004\u103a\u1016\u1010\u103a\u1015\u102b\u104b"}, +gaN(){return"Scrim"}, +gbk(){return"$modalRouteContentName \u1015\u102d\u1010\u103a\u101b\u1014\u103a"}, +gby(){return B.bG}, +gO(){return"\u1021\u102c\u1038\u101c\u102f\u1036\u1038 \u101b\u103d\u1031\u1038\u101b\u1014\u103a"}, +gbl(){return"\u1019\u102e\u1014\u1030\u1038 \u1015\u103c\u101b\u1014\u103a"}, +gbe(){return"\u1010\u1018\u103a $tabCount \u1021\u1014\u1000\u103a $tabIndex \u1001\u102f"}} +A.a4n.prototype={ +gbf(){return"Varsel"}, +gbg(){return"Tilbake"}, +gb0(){return"Felt nederst"}, +gbb(){return"Lukk"}, +gbs(){return"Expanded"}, +gV(){return"Kopi\xe9r"}, +gW(){return"Klipp ut"}, +gaO(){return"Slett"}, +gaC(){return"Dialogboks"}, +gbo(){return"Navigasjonsmeny"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"Avvis"}, +gbu(){return"Mer"}, +gaM(){return"\xc5pne navigasjonsmenyen"}, +gX(){return"Lim inn"}, +gb2(){return"Forgrunnsmeny"}, +gbq(){return"Laster inn p\xe5 nytt"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"1 tegn gjenst\xe5r"}, +gbh(){return"$remainingCount tegn gjenst\xe5r"}, +gbE(){return null}, +gbF(){return null}, +gbx(){return"Scan tekst"}, +gaN(){return"Vev"}, +gbk(){return"Lukk $modalRouteContentName"}, +gby(){return B.N}, +gO(){return"Velg alle"}, +gbl(){return"Vis meny"}, +gbe(){return"Fane $tabIndex av $tabCount"}} +A.a4o.prototype={ +gbf(){return"\u0905\u0932\u0930\u094d\u091f"}, +gbg(){return"\u092a\u091b\u093e\u0921\u093f \u091c\u093e\u0928\u0941\u0939\u094b\u0938\u094d"}, +gb0(){return"\u092a\u0941\u091b\u093e\u0930\u0915\u094b \u092a\u093e\u0928\u093e"}, +gbb(){return"\u092c\u0928\u094d\u0926 \u0917\u0930\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +gbs(){return"Expanded"}, +gV(){return"\u092a\u094d\u0930\u0924\u093f\u0932\u093f\u092a\u093f \u0917\u0930\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +gW(){return"\u0915\u093e\u091f\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +gaO(){return"\u092e\u0947\u091f\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +gaC(){return"\u0938\u0902\u0935\u093e\u0926"}, +gbo(){return"\u0928\u0947\u092d\u093f\u0917\u0947\u0938\u0928 \u092e\u0947\u0928\u0941"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"\u0916\u093e\u0930\u0947\u091c \u0917\u0930\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +gbu(){return"\u0925\u092a"}, +gaM(){return"\u0928\u0947\u092d\u093f\u0917\u0947\u0938\u0928 \u092e\u0947\u0928\u0941 \u0916\u094b\u0932\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +gX(){return"\u091f\u093e\u0901\u0938\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +gb2(){return"\u092a\u092a\u0905\u092a \u092e\u0947\u0928\u0941"}, +gbq(){return"\u092a\u0941\u0928\u0903 \u0924\u093e\u091c\u093e \u0917\u0930\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"\u0967 \u0935\u0930\u094d\u0923 \u092c\u093e\u0901\u0915\u0940"}, +gbh(){return"$remainingCount \u0935\u0930\u094d\u0923\u0939\u0930\u0942 \u092c\u093e\u0901\u0915\u0940"}, +gbE(){return null}, +gbF(){return null}, +gbx(){return"\u092a\u093e\u0920 \u0938\u094d\u0915\u094d\u092f\u093e\u0928 \u0917\u0930\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +gaN(){return"\u0938\u094d\u0915\u094d\u0930\u093f\u092e"}, +gbk(){return"$modalRouteContentName \u092c\u0928\u094d\u0926 \u0917\u0930\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +gby(){return B.bG}, +gO(){return"\u0938\u092c\u0948 \u092c\u091f\u0928\u0939\u0930\u0942 \u091a\u092f\u0928 \u0917\u0930\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +gbl(){return"\u092e\u0947\u0928\u0941 \u0926\u0947\u0916\u093e\u0909\u0928\u0941\u0939\u094b\u0938\u094d"}, +gbe(){return"$tabCount \u092e\u0927\u094d\u092f\u0947 $tabIndex \u091f\u094d\u092f\u093e\u092c"}} +A.a4p.prototype={ +gbf(){return"Melding"}, +gbg(){return"Terug"}, +gb0(){return"Blad onderaan"}, +gbb(){return"Sluiten"}, +gbs(){return"Expanded"}, +gV(){return"Kopi\xebren"}, +gW(){return"Knippen"}, +gaO(){return"Verwijderen"}, +gaC(){return"Dialoogvenster"}, +gbo(){return"Navigatiemenu"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"Sluiten"}, +gbu(){return"Meer"}, +gaM(){return"Navigatiemenu openen"}, +gX(){return"Plakken"}, +gb2(){return"Pop-upmenu"}, +gbq(){return"Vernieuwen"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"1 teken resterend"}, +gbh(){return"$remainingCount tekens resterend"}, +gbE(){return null}, +gbF(){return"TBD"}, +gbx(){return"Tekst scannen"}, +gaN(){return"Scrim"}, +gbk(){return"$modalRouteContentName sluiten"}, +gby(){return B.N}, +gO(){return"Alles selecteren"}, +gbl(){return"Menu tonen"}, +gbe(){return"Tabblad $tabIndex van $tabCount"}} +A.a4q.prototype={ +gbf(){return"Varsel"}, +gbg(){return"Tilbake"}, +gb0(){return"Felt nederst"}, +gbb(){return"Lukk"}, +gbs(){return"Expanded"}, +gV(){return"Kopi\xe9r"}, +gW(){return"Klipp ut"}, +gaO(){return"Slett"}, +gaC(){return"Dialogboks"}, +gbo(){return"Navigasjonsmeny"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"Avvis"}, +gbu(){return"Mer"}, +gaM(){return"\xc5pne navigasjonsmenyen"}, +gX(){return"Lim inn"}, +gb2(){return"Forgrunnsmeny"}, +gbq(){return"Laster inn p\xe5 nytt"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"1 tegn gjenst\xe5r"}, +gbh(){return"$remainingCount tegn gjenst\xe5r"}, +gbE(){return null}, +gbF(){return null}, +gbx(){return"Skann tekst"}, +gaN(){return"Vev"}, +gbk(){return"Lukk $modalRouteContentName"}, +gby(){return B.N}, +gO(){return"Velg alle"}, +gbl(){return"Vis meny"}, +gbe(){return"Fane $tabIndex av $tabCount"}} +A.a4r.prototype={ +gbf(){return"\u0b06\u0b32\u0b30\u0b4d\u0b1f"}, +gbg(){return"\u0b2a\u0b1b\u0b15\u0b41 \u0b2b\u0b47\u0b30\u0b28\u0b4d\u0b24\u0b41"}, +gb0(){return"\u0b2c\u0b1f\u0b2e \u0b38\u0b3f\u0b1f"}, +gbb(){return"\u0b2c\u0b28\u0b4d\u0b26 \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41"}, +gbs(){return"Expanded"}, +gV(){return"\u0b15\u0b2a\u0b3f \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41"}, +gW(){return"\u0b15\u0b1f\u0b4d \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41"}, +gaO(){return"\u0b21\u0b3f\u0b32\u0b3f\u0b1f\u0b4d \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41"}, +gaC(){return"\u0b21\u0b3e\u0b5f\u0b32\u0b17\u0b4d"}, +gbo(){return"\u0b28\u0b47\u0b2d\u0b3f\u0b17\u0b47\u0b38\u0b28\u0b4d \u0b2e\u0b47\u0b28\u0b41"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"\u0b16\u0b3e\u0b30\u0b1c \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41"}, +gbu(){return"\u0b05\u0b27\u0b3f\u0b15"}, +gaM(){return"\u0b28\u0b3e\u0b2d\u0b3f\u0b17\u0b47\u0b38\u0b28\u0b4d \u0b2e\u0b47\u0b28\u0b41 \u0b16\u0b4b\u0b32\u0b28\u0b4d\u0b24\u0b41"}, +gX(){return"\u0b2a\u0b47\u0b37\u0b4d\u0b1f \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41"}, +gb2(){return"\u0b2a\u0b2a\u0b4d-\u0b05\u0b2a\u0b4d \u0b2e\u0b47\u0b28\u0b41"}, +gbq(){return"\u0b30\u0b3f\u0b2b\u0b4d\u0b30\u0b47\u0b38\u0b4d \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"1\u0b1f\u0b3f \u0b05\u0b15\u0b4d\u0b37\u0b30 \u0b2c\u0b3e\u0b15\u0b3f \u0b05\u0b1b\u0b3f"}, +gbh(){return"$remainingCount\u0b1f\u0b3f \u0b05\u0b15\u0b4d\u0b37\u0b30 \u0b2c\u0b3e\u0b15\u0b3f \u0b05\u0b1b\u0b3f"}, +gbE(){return null}, +gbF(){return null}, +gbx(){return"\u0b2a\u0b3e\u0b20\u0b4d\u0b5f \u0b38\u0b4d\u0b15\u0b3e\u0b28\u0b4d \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41"}, +gaN(){return"\u0b38\u0b4d\u0b15\u0b4d\u0b30\u0b3f\u0b2e"}, +gbk(){return"$modalRouteContentName\u0b15\u0b41 \u0b2c\u0b28\u0b4d\u0b26 \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41"}, +gby(){return B.bG}, +gO(){return"\u0b38\u0b2c\u0b41 \u0b1a\u0b5f\u0b28 \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41"}, +gbl(){return"\u0b2e\u0b47\u0b28\u0b41 \u0b26\u0b47\u0b16\u0b3e\u0b28\u0b4d\u0b24\u0b41"}, +gbe(){return"$tabCount\u0b30 $tabIndex \u0b1f\u0b3e\u0b2c\u0b4d"}} +A.a4s.prototype={ +gbf(){return"\u0a38\u0a41\u0a1a\u0a47\u0a24\u0a28\u0a3e"}, +gbg(){return"\u0a2a\u0a3f\u0a71\u0a1b\u0a47"}, +gb0(){return"\u0a39\u0a47\u0a20\u0a32\u0a40 \u0a36\u0a40\u0a1f"}, +gbb(){return"\u0a2c\u0a70\u0a26 \u0a15\u0a30\u0a4b"}, +gbs(){return"Expanded"}, +gV(){return"\u0a15\u0a3e\u0a2a\u0a40 \u0a15\u0a30\u0a4b"}, +gW(){return"\u0a15\u0a71\u0a1f \u0a15\u0a30\u0a4b"}, +gaO(){return"\u0a2e\u0a3f\u0a1f\u0a3e\u0a13"}, +gaC(){return"\u0a35\u0a3f\u0a70\u0a21\u0a4b"}, +gbo(){return"\u0a28\u0a48\u0a35\u0a40\u0a17\u0a47\u0a38\u0a3c\u0a28 \u0a2e\u0a40\u0a28\u0a42"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"\u0a16\u0a3e\u0a30\u0a1c \u0a15\u0a30\u0a4b"}, +gbu(){return"\u0a39\u0a4b\u0a30"}, +gaM(){return"\u0a28\u0a48\u0a35\u0a40\u0a17\u0a47\u0a36\u0a28 \u0a2e\u0a40\u0a28\u0a42 \u0a16\u0a4b\u0a32\u0a4d\u0a39\u0a4b"}, +gX(){return"\u0a2a\u0a47\u0a38\u0a1f \u0a15\u0a30\u0a4b"}, +gb2(){return"\u0a2a\u0a4c\u0a2a\u0a05\u0a71\u0a2a \u0a2e\u0a40\u0a28\u0a42"}, +gbq(){return"\u0a30\u0a3f\u0a2b\u0a4d\u0a30\u0a48\u0a36 \u0a15\u0a30\u0a4b"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"1 \u0a05\u0a71\u0a16\u0a30-\u0a1a\u0a3f\u0a70\u0a28\u0a4d\u0a39 \u0a2c\u0a3e\u0a15\u0a40"}, +gbh(){return"$remainingCount \u0a05\u0a71\u0a16\u0a30-\u0a1a\u0a3f\u0a70\u0a28\u0a4d\u0a39 \u0a2c\u0a3e\u0a15\u0a40"}, +gbE(){return null}, +gbF(){return null}, +gbx(){return"\u0a1f\u0a48\u0a15\u0a38\u0a1f \u0a38\u0a15\u0a48\u0a28 \u0a15\u0a30\u0a4b"}, +gaN(){return"\u0a38\u0a15\u0a4d\u0a30\u0a3f\u0a2e"}, +gbk(){return"$modalRouteContentName \u0a28\u0a42\u0a70 \u0a2c\u0a70\u0a26 \u0a15\u0a30\u0a4b"}, +gby(){return B.bG}, +gO(){return"\u0a38\u0a2d \u0a1a\u0a41\u0a23\u0a4b"}, +gbl(){return"\u0a2e\u0a40\u0a28\u0a42 \u0a26\u0a3f\u0a16\u0a3e\u0a13"}, +gbe(){return"$tabCount \u0a35\u0a3f\u0a71\u0a1a\u0a4b\u0a02 $tabIndex \u0a1f\u0a48\u0a2c"}} +A.a4t.prototype={ +gbf(){return"Alert"}, +gbg(){return"Wstecz"}, +gb0(){return"Plansza dolna"}, +gbb(){return"Zamknij"}, +gbs(){return"Expanded"}, +gV(){return"Kopiuj"}, +gW(){return"Wytnij"}, +gaO(){return"Usu\u0144"}, +gaC(){return"Okno dialogowe"}, +gbo(){return"Menu nawigacyjne"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"Zamknij"}, +gbu(){return"Wi\u0119cej"}, +gaM(){return"Otw\xf3rz menu nawigacyjne"}, +gX(){return"Wklej"}, +gb2(){return"Menu kontekstowe"}, +gbq(){return"Od\u015bwie\u017c"}, +gbv(){return"Pozosta\u0142y $remainingCount znaki"}, +gbD(){return"Pozosta\u0142o $remainingCount znak\xf3w"}, +gbd(){return"Jeszcze 1 znak"}, +gbh(){return"Pozosta\u0142o $remainingCount znak\xf3w"}, +gbE(){return null}, +gbF(){return"TBD"}, +gbx(){return"Zeskanuj tekst"}, +gaN(){return"Siatka"}, +gbk(){return"Zamknij: $modalRouteContentName"}, +gby(){return B.N}, +gO(){return"Zaznacz wszystko"}, +gbl(){return"Poka\u017c menu"}, +gbe(){return"Karta $tabIndex z\xa0$tabCount"}} +A.a4u.prototype={ +gbf(){return"\u062e\u0628\u0631\u062a\u06cc\u0627"}, +gbg(){return"\u0634\u0627\u062a\u0647"}, +gb0(){return"Bottom Sheet"}, +gbb(){return"\u0628\u0646\u062f\u0647"}, +gbs(){return"Expanded"}, +gV(){return"\u06a9\u0627\u067e\u06cc"}, +gW(){return"\u06a9\u0645 \u06a9\u0693\u0626"}, +gaO(){return""}, +gaC(){return"\u062e\u0628\u0631\u06d0 \u0627\u062a\u0631\u06d0"}, +gbo(){return"\u062f \u0646\u06cc\u0648\u06cc\u06af\u06cc\u0634\u0646 \u0645\u06cc\u0646\u0648"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"\u0631\u062f \u06a9\u0693\u0647"}, +gbu(){return"More"}, +gaM(){return"\u062f \u067e\u0631\u0627\u0646\u06cc\u0633\u062a\u06cc \u0646\u06cc\u06cc\u0646\u06ab \u0645\u06cc\u0646\u0648"}, +gX(){return"\u067e\u06cc\u067c \u06a9\u0693\u0626"}, +gb2(){return"\u062f \u067e\u0627\u067e \u0627\u067e \u0645\u06cc\u0646\u0648"}, +gbq(){return"Refresh"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"1 character remaining"}, +gbh(){return"$remainingCount characters remaining"}, +gbE(){return null}, +gbF(){return"No characters remaining"}, +gbx(){return"\u0645\u062a\u0646 \u0633\u06a9\u06cc\u0646 \u06a9\u0693\u0626"}, +gaN(){return"Scrim"}, +gbk(){return"Close $modalRouteName"}, +gby(){return B.bG}, +gO(){return"\u063a\u0648\u0631\u0647 \u06a9\u0693\u0626"}, +gbl(){return"\u063a\u0648\u0631\u0646\u06cd \u069a\u0648\u062f\u0644"}, +gbe(){return"$tabIndex \u062f $tabCount"}} +A.Lf.prototype={ +gbf(){return"Alerta"}, +gbg(){return"Voltar"}, +gb0(){return"P\xe1gina inferior"}, +gbb(){return"Fechar"}, +gbs(){return"Expanded"}, +gV(){return"Copiar"}, +gW(){return"Cortar"}, +gaO(){return"Excluir"}, +gaC(){return"Caixa de di\xe1logo"}, +gbo(){return"Menu de navega\xe7\xe3o"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"Dispensar"}, +gbu(){return"Mais"}, +gaM(){return"Abrir menu de navega\xe7\xe3o"}, +gX(){return"Colar"}, +gb2(){return"Menu pop-up"}, +gbq(){return"Atualizar"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"1 caractere restante"}, +gbh(){return"$remainingCount caracteres restantes"}, +gbE(){return null}, +gbF(){return"TBD"}, +gbx(){return"Digitalizar texto"}, +gaN(){return"Scrim"}, +gbk(){return"Fechar $modalRouteContentName"}, +gby(){return B.N}, +gO(){return"Selecionar tudo"}, +gbl(){return"Mostrar menu"}, +gbe(){return"Guia $tabIndex de $tabCount"}} +A.a4v.prototype={ +gb0(){return"Sec\xe7\xe3o inferior"}, +gbe(){return"Separador $tabIndex de $tabCount"}, +gaO(){return"Eliminar"}, +gaE(){return"Ignorar"}, +gbd(){return"Resta 1 car\xe1ter"}, +gbh(){return"Restam $remainingCount carateres"}} +A.a4w.prototype={ +gbf(){return"Alert\u0103"}, +gbg(){return"\xcenapoi"}, +gb0(){return"Foaie din partea de jos"}, +gbb(){return"\xcenchide\u021bi"}, +gbs(){return"Expanded"}, +gV(){return"Copia\u021bi"}, +gW(){return"Decupa\u021bi"}, +gaO(){return"\u0218terge\u021bi"}, +gaC(){return"Caset\u0103 de dialog"}, +gbo(){return"Meniu de navigare"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"\xcenchide\u021bi"}, +gbu(){return"Mai multe"}, +gaM(){return"Deschide\u021bi meniul de navigare"}, +gX(){return"Insera\u021bi"}, +gb2(){return"Meniu pop-up"}, +gbq(){return"Actualiza\u021bi"}, +gbv(){return"$remainingCount caractere r\u0103mase"}, +gbD(){return null}, +gbd(){return"un caracter r\u0103mas"}, +gbh(){return"$remainingCount de caractere r\u0103mase"}, +gbE(){return null}, +gbF(){return"TBD"}, +gbx(){return"Scana\u021bi textul"}, +gaN(){return"Material"}, +gbk(){return"\xcenchide\u021bi $modalRouteContentName"}, +gby(){return B.N}, +gO(){return"Selecta\u021bi tot"}, +gbl(){return"Afi\u0219a\u021bi meniul"}, +gbe(){return"Fila $tabIndex din $tabCount"}} +A.a4x.prototype={ +gbf(){return"\u041e\u043f\u043e\u0432\u0435\u0449\u0435\u043d\u0438\u0435"}, +gbg(){return"\u041d\u0430\u0437\u0430\u0434"}, +gb0(){return"\u041d\u0438\u0436\u043d\u0438\u0439 \u044d\u043a\u0440\u0430\u043d"}, +gbb(){return"\u0417\u0430\u043a\u0440\u044b\u0442\u044c"}, +gbs(){return"Expanded"}, +gV(){return"\u041a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c"}, +gW(){return"\u0412\u044b\u0440\u0435\u0437\u0430\u0442\u044c"}, +gaO(){return"\u0423\u0434\u0430\u043b\u0438\u0442\u044c"}, +gaC(){return"\u0414\u0438\u0430\u043b\u043e\u0433\u043e\u0432\u043e\u0435 \u043e\u043a\u043d\u043e"}, +gbo(){return"\u041c\u0435\u043d\u044e \u043d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u0438"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"\u0417\u0430\u043a\u0440\u044b\u0442\u044c"}, +gbu(){return"\u0415\u0449\u0451"}, +gaM(){return"\u041e\u0442\u043a\u0440\u044b\u0442\u044c \u043c\u0435\u043d\u044e \u043d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u0438"}, +gX(){return"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u044c"}, +gb2(){return"\u0412\u0441\u043f\u043b\u044b\u0432\u0430\u044e\u0449\u0435\u0435 \u043c\u0435\u043d\u044e"}, +gbq(){return"\u041e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435"}, +gbv(){return"\u041e\u0441\u0442\u0430\u043b\u043e\u0441\u044c $remainingCount\xa0\u0441\u0438\u043c\u0432\u043e\u043b\u0430"}, +gbD(){return"\u041e\u0441\u0442\u0430\u043b\u043e\u0441\u044c $remainingCount\xa0\u0441\u0438\u043c\u0432\u043e\u043b\u043e\u0432"}, +gbd(){return"\u041e\u0441\u0442\u0430\u043b\u0441\u044f 1\xa0\u0441\u0438\u043c\u0432\u043e\u043b"}, +gbh(){return"\u041e\u0441\u0442\u0430\u043b\u043e\u0441\u044c $remainingCount\xa0\u0441\u0438\u043c\u0432\u043e\u043b\u0430"}, +gbE(){return null}, +gbF(){return"TBD"}, +gbx(){return"\u0421\u043a\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0442\u0435\u043a\u0441\u0442"}, +gaN(){return"\u041c\u0430\u0441\u043a\u0430"}, +gbk(){return"\u0417\u0430\u043a\u0440\u044b\u0442\u044c $modalRouteContentName"}, +gby(){return B.N}, +gO(){return"\u0412\u044b\u0431\u0440\u0430\u0442\u044c \u0432\u0441\u0435"}, +gbl(){return"\u041f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u043c\u0435\u043d\u044e"}, +gbe(){return"\u0412\u043a\u043b\u0430\u0434\u043a\u0430\xa0$tabIndex \u0438\u0437\xa0$tabCount"}} +A.a4y.prototype={ +gbf(){return"\u0d87\u0d9f\u0dc0\u0dd3\u0db8"}, +gbg(){return"\u0d86\u0db4\u0dc3\u0dd4"}, +gb0(){return"\u0db4\u0dc4\u0dc5\u0db8 \u0db4\u0dad\u0dca\u200d\u0dbb\u0dba"}, +gbb(){return"\u0dc0\u0dc3\u0db1\u0dca\u0db1"}, +gbs(){return"Expanded"}, +gV(){return"\u0db4\u0dd2\u0da7\u0db4\u0dad\u0dca \u0d9a\u0dbb\u0db1\u0dca\u0db1"}, +gW(){return"\u0d9a\u0db4\u0db1\u0dca\u0db1"}, +gaO(){return"\u0db8\u0d9a\u0db1\u0dca\u0db1"}, +gaC(){return"\u0dc3\u0d82\u0dc0\u0dcf\u0daf\u0dba"}, +gbo(){return"\u0dc3\u0d82\u0da0\u0dcf\u0dbd\u0db1 \u0db8\u0dd9\u0db1\u0dd4\u0dc0"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"\u0d89\u0dc0\u0dad \u0dbd\u0db1\u0dca\u0db1"}, +gbu(){return"\u0dad\u0dc0"}, +gaM(){return"\u0dc3\u0d82\u0da0\u0dcf\u0dbd\u0db1 \u0db8\u0dd9\u0db1\u0dd4\u0dc0 \u0dc0\u0dd2\u0dc0\u0dd8\u0dad \u0d9a\u0dbb\u0db1\u0dca\u0db1"}, +gX(){return"\u0d85\u0dbd\u0dc0\u0db1\u0dca\u0db1"}, +gb2(){return"\u0d8b\u0dad\u0dca\u0db4\u0dad\u0db1 \u0db8\u0dd9\u0db1\u0dd4\u0dc0"}, +gbq(){return"\u0db1\u0dd0\u0dc0\u0dd4\u0db8\u0dca \u0d9a\u0dbb\u0db1\u0dca\u0db1"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"\u0d85\u0db1\u0dd4\u0dbd\u0d9a\u0dd4\u0dab\u0dd4 1\u0d9a\u0dca \u0d89\u0dad\u0dd2\u0dbb\u0dd2\u0dba"}, +gbh(){return"\u0d85\u0db1\u0dd4\u0dbd\u0d9a\u0dd4\u0dab\u0dd4 $remainingCount\u0d9a\u0dca \u0d89\u0dad\u0dd2\u0dbb\u0dd2\u0dba"}, +gbE(){return null}, +gbF(){return null}, +gbx(){return"\u0db4\u0dd9\u0dc5 \u0db4\u0dbb\u0dd2\u0dbd\u0ddd\u0d9a\u0db1\u0dba \u0d9a\u0dbb\u0db1\u0dca\u0db1"}, +gaN(){return"\u0dc3\u0dca\u0d9a\u0dca\u200d\u0dbb\u0dd2\u0db8\u0dca"}, +gbk(){return"$modalRouteContentName \u0dc0\u0dc3\u0db1\u0dca\u0db1"}, +gby(){return B.N}, +gO(){return"\u0dc3\u0dd2\u0dba\u0dbd\u0dca\u0dbd \u0dad\u0ddd\u0dbb\u0db1\u0dca\u0db1"}, +gbl(){return"\u0db8\u0dd9\u0db1\u0dd4\u0dc0 \u0db4\u0dd9\u0db1\u0dca\u0dc0\u0db1\u0dca\u0db1"}, +gbe(){return"\u0da7\u0dd0\u0db6 $tabIndex\u0d9a\u0dd2\u0db1\u0dca $tabCount"}} +A.a4z.prototype={ +gbf(){return"Upozornenie"}, +gbg(){return"Sp\xe4\u0165"}, +gb0(){return"Doln\xfd h\xe1rok"}, +gbb(){return"Zavrie\u0165"}, +gbs(){return"Expanded"}, +gV(){return"Kop\xedrova\u0165"}, +gW(){return"Vystrihn\xfa\u0165"}, +gaO(){return"Odstr\xe1ni\u0165"}, +gaC(){return"Dial\xf3gov\xe9 okno"}, +gbo(){return"Naviga\u010dn\xe1 ponuka"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"Odmietnu\u0165"}, +gbu(){return"Viac"}, +gaM(){return"Otvori\u0165 naviga\u010dn\xfa ponuku"}, +gX(){return"Prilepi\u0165"}, +gb2(){return"Kontextov\xe1 ponuka"}, +gbq(){return"Obnovi\u0165"}, +gbv(){return"Zost\xe1vaj\xfa $remainingCount\xa0znaky"}, +gbD(){return"$remainingCount characters remaining"}, +gbd(){return"Zost\xe1va 1\xa0znak"}, +gbh(){return"Zost\xe1va $remainingCount\xa0znakov"}, +gbE(){return null}, +gbF(){return"TBD"}, +gbx(){return"Naskenujte text"}, +gaN(){return"Scrim"}, +gbk(){return"Zavrie\u0165 $modalRouteContentName"}, +gby(){return B.N}, +gO(){return"Vybra\u0165 v\u0161etko"}, +gbl(){return"Zobrazi\u0165 ponuku"}, +gbe(){return"Karta $tabIndex z\xa0$tabCount"}} +A.a4A.prototype={ +gbf(){return"Opozorilo"}, +gbg(){return"Nazaj"}, +gb0(){return"Razdelek na dnu zaslona"}, +gbb(){return"Zapiranje"}, +gbs(){return"Expanded"}, +gV(){return"Kopiraj"}, +gW(){return"Izre\u017ei"}, +gaO(){return"Brisanje"}, +gaC(){return"Pogovorno okno"}, +gbo(){return"Meni za krmarjenje"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"Opusti"}, +gbu(){return"Ve\u010d"}, +gaM(){return"Odpiranje menija za krmarjenje"}, +gX(){return"Prilepi"}, +gb2(){return"Pojavni meni"}, +gbq(){return"Osve\u017ei"}, +gbv(){return"\u0160e $remainingCount znaki"}, +gbD(){return null}, +gbd(){return"\u0160e 1 znak"}, +gbh(){return"\u0160e $remainingCount znakov"}, +gbE(){return"\u0160e $remainingCount znaka"}, +gbF(){return"TBD"}, +gbx(){return"Skeniraj besedilo"}, +gaN(){return"Scrim"}, +gbk(){return"Zapiranje \xbb$modalRouteContentName\xab"}, +gby(){return B.N}, +gO(){return"Izberi vse"}, +gbl(){return"Prikaz menija"}, +gbe(){return"Zavihek $tabIndex od $tabCount"}} +A.a4B.prototype={ +gbf(){return"Sinjalizim"}, +gbg(){return"Prapa"}, +gb0(){return"Fleta e poshtme"}, +gbb(){return"Mbyll"}, +gbs(){return"Expanded"}, +gV(){return"Kopjo"}, +gW(){return"Prit"}, +gaO(){return"Fshi"}, +gaC(){return"Dialogu"}, +gbo(){return"Menyja e navigimit"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"Hiq"}, +gbu(){return"M\xeb shum\xeb"}, +gaM(){return"Hap menyn\xeb e navigimit"}, +gX(){return"Ngjit"}, +gb2(){return"Menyja k\xebrcyese"}, +gbq(){return"Rifresko"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"1 karakter i mbetur"}, +gbh(){return"$remainingCount karaktere t\xeb mbetura"}, +gbE(){return null}, +gbF(){return null}, +gbx(){return"Skanoni tekstin"}, +gaN(){return"Kanavac\xeb"}, +gbk(){return"Mbyll $modalRouteContentName"}, +gby(){return B.N}, +gO(){return"Zgjidh t\xeb gjitha"}, +gbl(){return"Shfaq menyn\xeb"}, +gbe(){return"Skeda $tabIndex nga $tabCount"}} +A.Lg.prototype={ +gbf(){return"\u041e\u0431\u0430\u0432\u0435\u0448\u0442\u0435\u045a\u0435"}, +gbg(){return"\u041d\u0430\u0437\u0430\u0434"}, +gb0(){return"\u0414\u043e\u045a\u0430 \u0442\u0430\u0431\u0435\u043b\u0430"}, +gbb(){return"\u0417\u0430\u0442\u0432\u043e\u0440\u0438\u0442\u0435"}, +gbs(){return"Expanded"}, +gV(){return"\u041a\u043e\u043f\u0438\u0440\u0430\u0458"}, +gW(){return"\u0418\u0441\u0435\u0446\u0438"}, +gaO(){return"\u0418\u0437\u0431\u0440\u0438\u0448\u0438\u0442\u0435"}, +gaC(){return"\u0414\u0438\u0458\u0430\u043b\u043e\u0433"}, +gbo(){return"\u041c\u0435\u043d\u0438 \u0437\u0430 \u043d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u0458\u0443"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"\u041e\u0434\u0431\u0430\u0446\u0438"}, +gbu(){return"\u0408\u043e\u0448"}, +gaM(){return"\u041e\u0442\u0432\u043e\u0440\u0438\u0442\u0435 \u043c\u0435\u043d\u0438 \u0437\u0430 \u043d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u0458\u0443"}, +gX(){return"\u041d\u0430\u043b\u0435\u043f\u0438"}, +gb2(){return"\u0418\u0441\u043a\u0430\u0447\u0443\u045b\u0438 \u043c\u0435\u043d\u0438"}, +gbq(){return"\u041e\u0441\u0432\u0435\u0436\u0438"}, +gbv(){return"\u041f\u0440\u0435\u043e\u0441\u0442\u0430\u043b\u0430 \u0441\u0443 $remainingCount \u0437\u043d\u0430\u043a\u0430"}, +gbD(){return null}, +gbd(){return"\u041f\u0440\u0435\u043e\u0441\u0442\u0430\u043e \u0458\u0435 1 \u0437\u043d\u0430\u043a"}, +gbh(){return"\u041f\u0440\u0435\u043e\u0441\u0442\u0430\u043b\u043e \u0458\u0435 $remainingCount \u0437\u043d\u0430\u043a\u043e\u0432\u0430"}, +gbE(){return null}, +gbF(){return"TBD"}, +gbx(){return"\u0421\u043a\u0435\u043d\u0438\u0440\u0430\u0458\u0442\u0435 \u0442\u0435\u043a\u0441\u0442"}, +gaN(){return"\u0421\u043a\u0440\u0438\u043c"}, +gbk(){return"\u0417\u0430\u0442\u0432\u043e\u0440\u0438: $modalRouteContentName"}, +gby(){return B.N}, +gO(){return"\u0418\u0437\u0430\u0431\u0435\u0440\u0438 \u0441\u0432\u0435"}, +gbl(){return"\u041f\u0440\u0438\u043a\u0430\u0436\u0438 \u043c\u0435\u043d\u0438"}, +gbe(){return"$tabIndex. \u043a\u0430\u0440\u0442\u0438\u0446\u0430 \u043e\u0434 $tabCount"}} +A.a4C.prototype={} +A.a4D.prototype={ +gbf(){return"Obave\u0161tenje"}, +gbg(){return"Nazad"}, +gb0(){return"Donja tabela"}, +gbb(){return"Zatvorite"}, +gV(){return"Kopiraj"}, +gW(){return"Iseci"}, +gaO(){return"Izbri\u0161ite"}, +gaC(){return"Dijalog"}, +gbo(){return"Meni za navigaciju"}, +gaE(){return"Odbaci"}, +gbu(){return"Jo\u0161"}, +gaM(){return"Otvorite meni za navigaciju"}, +gX(){return"Nalepi"}, +gb2(){return"Iska\u010duc\u0301i meni"}, +gbq(){return"Osve\u017ei"}, +gbv(){return"Preostala su $remainingCount znaka"}, +gbd(){return"Preostao je 1 znak"}, +gbh(){return"Preostalo je $remainingCount znakova"}, +gaN(){return"Skrim"}, +gbk(){return"Zatvori: $modalRouteContentName"}, +gO(){return"Izaberi sve"}, +gbl(){return"Prika\u017ei meni"}, +gbe(){return"$tabIndex. kartica od $tabCount"}} +A.a4E.prototype={ +gbf(){return"Varning"}, +gbg(){return"Tillbaka"}, +gb0(){return"Ark p\xe5 nedre delen av sk\xe4rmen"}, +gbb(){return"St\xe4ng"}, +gbs(){return"Expanded"}, +gV(){return"Kopiera"}, +gW(){return"Klipp ut"}, +gaO(){return"Radera"}, +gaC(){return"Dialogruta"}, +gbo(){return"Navigeringsmeny"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"St\xe4ng"}, +gbu(){return"Mer"}, +gaM(){return"\xd6ppna navigeringsmenyn"}, +gX(){return"Klistra in"}, +gb2(){return"Popup-meny"}, +gbq(){return"Uppdatera"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"1 tecken kvar"}, +gbh(){return"$remainingCount tecken kvar"}, +gbE(){return null}, +gbF(){return"TBD"}, +gbx(){return"Skanna text"}, +gaN(){return"Scrim"}, +gbk(){return"St\xe4ng $modalRouteContentName"}, +gby(){return B.N}, +gO(){return"Markera allt"}, +gbl(){return"Visa meny"}, +gbe(){return"Flik $tabIndex av $tabCount"}} +A.a4F.prototype={ +gbf(){return"Arifa"}, +gbg(){return"Rudi Nyuma"}, +gb0(){return"Safu ya Chini"}, +gbb(){return"Funga"}, +gbs(){return"Expanded"}, +gV(){return"Nakili"}, +gW(){return"Kata"}, +gaO(){return"Futa"}, +gaC(){return"Kidirisha"}, +gbo(){return"Menyu ya kusogeza"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"Ondoa"}, +gbu(){return"Zaidi"}, +gaM(){return"Fungua menyu ya kusogeza"}, +gX(){return"Bandika"}, +gb2(){return"Menyu ibukizi"}, +gbq(){return"Onyesha upya"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"Imesalia herufi 1"}, +gbh(){return"Zimesalia herufi $remainingCount"}, +gbE(){return null}, +gbF(){return"Hapana herufi zilizo baki"}, +gbx(){return"Changanua maandishi"}, +gaN(){return"Scrim"}, +gbk(){return"Funga $modalRouteContentName"}, +gby(){return B.N}, +gO(){return"Chagua vyote"}, +gbl(){return"Onyesha menyu"}, +gbe(){return"Kichupo cha $tabIndex kati ya $tabCount"}} +A.a4G.prototype={ +gbf(){return"\u0bb5\u0bbf\u0bb4\u0bbf\u0baa\u0bcd\u0baa\u0bc2\u0b9f\u0bcd\u0b9f\u0bb2\u0bcd"}, +gbg(){return"\u0bae\u0bc1\u0ba8\u0bcd\u0ba4\u0bc8\u0baf \u0baa\u0b95\u0bcd\u0b95\u0bae\u0bcd"}, +gb0(){return"\u0b95\u0bc0\u0bb4\u0bcd\u0ba4\u0bcd \u0ba4\u0bbf\u0bb0\u0bc8"}, +gbb(){return"\u0bae\u0bc2\u0b9f\u0bc1\u0b95"}, +gbs(){return"Expanded"}, +gV(){return"\u0ba8\u0b95\u0bb2\u0bc6\u0b9f\u0bc1"}, +gW(){return"\u0bb5\u0bc6\u0b9f\u0bcd\u0b9f\u0bc1"}, +gaO(){return"\u0ba8\u0bc0\u0b95\u0bcd\u0b95\u0bc1"}, +gaC(){return"\u0b89\u0bb0\u0bc8\u0baf\u0bbe\u0b9f\u0bb2\u0bcd"}, +gbo(){return"\u0bb5\u0bb4\u0bbf\u0b9a\u0bc6\u0bb2\u0bc1\u0ba4\u0bcd\u0ba4\u0bb2\u0bcd \u0bae\u0bc6\u0ba9\u0bc1"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"\u0ba8\u0bbf\u0bb0\u0bbe\u0b95\u0bb0\u0bbf\u0b95\u0bcd\u0b95\u0bc1\u0bae\u0bcd"}, +gbu(){return"\u0bae\u0bc7\u0bb2\u0bc1\u0bae\u0bcd"}, +gaM(){return"\u0bb5\u0bb4\u0bbf\u0b9a\u0bc6\u0bb2\u0bc1\u0ba4\u0bcd\u0ba4\u0bb2\u0bcd \u0bae\u0bc6\u0ba9\u0bc1\u0bb5\u0bc8\u0ba4\u0bcd \u0ba4\u0bbf\u0bb1"}, +gX(){return"\u0b92\u0b9f\u0bcd\u0b9f\u0bc1"}, +gb2(){return"\u0baa\u0bbe\u0baa\u0bcd-\u0b85\u0baa\u0bcd \u0bae\u0bc6\u0ba9\u0bc1"}, +gbq(){return"\u0bb0\u0bc6\u0b83\u0baa\u0bcd\u0bb0\u0bc6\u0bb7\u0bcd \u0b9a\u0bc6\u0baf\u0bcd\u0baf\u0bc1\u0bae\u0bcd"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"1 \u0b8e\u0bb4\u0bc1\u0ba4\u0bcd\u0ba4\u0bc1 \u0bae\u0bc0\u0ba4\u0bae\u0bc1\u0bb3\u0bcd\u0bb3\u0ba4\u0bc1"}, +gbh(){return"$remainingCount \u0b8e\u0bb4\u0bc1\u0ba4\u0bcd\u0ba4\u0bc1\u0b95\u0bb3\u0bcd \u0bae\u0bc0\u0ba4\u0bae\u0bc1\u0bb3\u0bcd\u0bb3\u0ba9"}, +gbE(){return null}, +gbF(){return"\u0b8e\u0bb4\u0bc1\u0ba4\u0bcd\u0ba4\u0bc1\u0b95\u0bcd\u0b95\u0bb3\u0bcd \u0b8e\u0ba4\u0bc1\u0bb5\u0bc1\u0bae\u0bcd \u0b87\u0bb2\u0bcd\u0bb2\u0bc8"}, +gbx(){return"\u0b89\u0bb0\u0bc8\u0baf\u0bc8 \u0bb8\u0bcd\u0b95\u0bc7\u0ba9\u0bcd \u0b9a\u0bc6\u0baf\u0bcd\u0baf\u0bb5\u0bc1\u0bae\u0bcd"}, +gaN(){return"\u0bb8\u0bcd\u0b95\u0bcd\u0bb0\u0bbf\u0bae\u0bcd"}, +gbk(){return"$modalRouteContentName \u0b90 \u0bae\u0bc2\u0b9f\u0bc1\u0b95"}, +gby(){return B.eu}, +gO(){return"\u0b85\u0ba9\u0bc8\u0ba4\u0bcd\u0ba4\u0bc8\u0baf\u0bc1\u0bae\u0bcd \u0ba4\u0bc7\u0bb0\u0bcd\u0ba8\u0bcd\u0ba4\u0bc6\u0b9f\u0bc1"}, +gbl(){return"\u0bae\u0bc6\u0ba9\u0bc1\u0bb5\u0bc8\u0b95\u0bcd \u0b95\u0bbe\u0b9f\u0bcd\u0b9f\u0bc1"}, +gbe(){return"\u0ba4\u0bbe\u0bb5\u0bb2\u0bcd $tabIndex / $tabCount"}} +A.a4H.prototype={ +gbf(){return"\u0c05\u0c32\u0c30\u0c4d\u0c1f\u0c4d"}, +gbg(){return"\u0c35\u0c46\u0c28\u0c41\u0c15\u0c15\u0c41"}, +gb0(){return"\u0c26\u0c3f\u0c17\u0c41\u0c35\u0c41\u0c28 \u0c09\u0c28\u0c4d\u0c28 \u0c37\u0c40\u0c1f\u0c4d"}, +gbb(){return"\u0c2e\u0c42\u0c38\u0c3f\u0c35\u0c47\u0c2f\u0c3f"}, +gbs(){return"Expanded"}, +gV(){return"\u0c15\u0c3e\u0c2a\u0c40 \u0c1a\u0c47\u0c2f\u0c3f"}, +gW(){return"\u0c15\u0c24\u0c4d\u0c24\u0c3f\u0c30\u0c3f\u0c02\u0c1a\u0c02\u0c21\u0c3f"}, +gaO(){return"\u0c24\u0c4a\u0c32\u0c17\u0c3f\u0c02\u0c1a\u0c02\u0c21\u0c3f"}, +gaC(){return"\u0c21\u0c48\u0c32\u0c3e\u0c17\u0c4d"}, +gbo(){return"\u0c28\u0c3e\u0c35\u0c3f\u0c17\u0c47\u0c37\u0c28\u0c4d \u0c2e\u0c46\u0c28\u0c42"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"\u0c35\u0c3f\u0c38\u0c4d\u0c2e\u0c30\u0c3f\u0c02\u0c1a\u0c41"}, +gbu(){return"\u0c2e\u0c30\u0c3f\u0c28\u0c4d\u0c28\u0c3f"}, +gaM(){return"\u0c28\u0c3e\u0c35\u0c3f\u0c17\u0c47\u0c37\u0c28\u0c4d \u0c2e\u0c46\u0c28\u0c42\u0c28\u0c41 \u0c24\u0c46\u0c30\u0c41\u0c35\u0c41"}, +gX(){return"\u0c2a\u0c47\u0c38\u0c4d\u0c1f\u0c4d \u0c1a\u0c47\u0c2f\u0c02\u0c21\u0c3f"}, +gb2(){return"\u0c2a\u0c3e\u0c2a\u0c4d\u200c\u0c05\u0c2a\u0c4d \u0c2e\u0c46\u0c28\u0c42"}, +gbq(){return"\u0c30\u0c3f\u0c2b\u0c4d\u0c30\u0c46\u0c37\u0c4d \u0c1a\u0c47\u0c2f\u0c02\u0c21\u0c3f"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"1 \u0c05\u0c15\u0c4d\u0c37\u0c30\u0c02 \u0c2e\u0c3f\u0c17\u0c3f\u0c32\u0c3f \u0c09\u0c02\u0c26\u0c3f"}, +gbh(){return"$remainingCount \u0c05\u0c15\u0c4d\u0c37\u0c30\u0c3e\u0c32\u0c41 \u0c2e\u0c3f\u0c17\u0c3f\u0c32\u0c3f \u0c09\u0c28\u0c4d\u0c28\u0c3e\u0c2f\u0c3f"}, +gbE(){return null}, +gbF(){return null}, +gbx(){return"\u0c35\u0c1a\u0c28\u0c3e\u0c28\u0c4d\u0c28\u0c3f \u0c38\u0c4d\u0c15\u0c3e\u0c28\u0c4d \u0c1a\u0c47\u0c2f\u0c02\u0c21\u0c3f"}, +gaN(){return"\u0c38\u0c4d\u0c15\u0c4d\u0c30\u0c3f\u0c2e\u0c4d"}, +gbk(){return"$modalRouteContentName\u200c\u0c28\u0c41 \u0c2e\u0c42\u0c38\u0c3f\u0c35\u0c47\u0c2f\u0c02\u0c21\u0c3f"}, +gby(){return B.bG}, +gO(){return"\u0c05\u0c28\u0c4d\u0c28\u0c3f\u0c02\u0c1f\u0c3f\u0c28\u0c40 \u0c0e\u0c02\u0c1a\u0c41\u0c15\u0c4b\u0c02\u0c21\u0c3f"}, +gbl(){return"\u0c2e\u0c46\u0c28\u0c42\u0c28\u0c41 \u0c1a\u0c42\u0c2a\u0c41"}, +gbe(){return"$tabCount\u0c32\u0c4b $tabIndex\u0c35 \u0c1f\u0c4d\u0c2f\u0c3e\u0c2c\u0c4d"}} +A.a4I.prototype={ +gbf(){return"\u0e01\u0e32\u0e23\u0e41\u0e08\u0e49\u0e07\u0e40\u0e15\u0e37\u0e2d\u0e19"}, +gbg(){return"\u0e01\u0e25\u0e31\u0e1a"}, +gb0(){return"Bottom Sheet"}, +gbb(){return"\u0e1b\u0e34\u0e14"}, +gbs(){return"Expanded"}, +gV(){return"\u0e04\u0e31\u0e14\u0e25\u0e2d\u0e01"}, +gW(){return"\u0e15\u0e31\u0e14"}, +gaO(){return"\u0e25\u0e1a"}, +gaC(){return"\u0e01\u0e25\u0e48\u0e2d\u0e07\u0e42\u0e15\u0e49\u0e15\u0e2d\u0e1a"}, +gbo(){return"\u0e40\u0e21\u0e19\u0e39\u0e01\u0e32\u0e23\u0e19\u0e33\u0e17\u0e32\u0e07"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"\u0e1b\u0e34\u0e14"}, +gbu(){return"\u0e40\u0e1e\u0e34\u0e48\u0e21\u0e40\u0e15\u0e34\u0e21"}, +gaM(){return"\u0e40\u0e1b\u0e34\u0e14\u0e40\u0e21\u0e19\u0e39\u0e01\u0e32\u0e23\u0e19\u0e33\u0e17\u0e32\u0e07"}, +gX(){return"\u0e27\u0e32\u0e07"}, +gb2(){return"\u0e40\u0e21\u0e19\u0e39\u0e1b\u0e4a\u0e2d\u0e1b\u0e2d\u0e31\u0e1b"}, +gbq(){return"\u0e23\u0e35\u0e40\u0e1f\u0e23\u0e0a"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"\u0e40\u0e2b\u0e25\u0e37\u0e2d 1 \u0e2d\u0e31\u0e01\u0e02\u0e23\u0e30"}, +gbh(){return"\u0e40\u0e2b\u0e25\u0e37\u0e2d $remainingCount \u0e2d\u0e31\u0e01\u0e02\u0e23\u0e30"}, +gbE(){return null}, +gbF(){return"TBD"}, +gbx(){return"\u0e2a\u0e41\u0e01\u0e19\u0e02\u0e49\u0e2d\u0e04\u0e27\u0e32\u0e21"}, +gaN(){return"Scrim"}, +gbk(){return"\u0e1b\u0e34\u0e14 $modalRouteContentName"}, +gby(){return B.bG}, +gO(){return"\u0e40\u0e25\u0e37\u0e2d\u0e01\u0e17\u0e31\u0e49\u0e07\u0e2b\u0e21\u0e14"}, +gbl(){return"\u0e41\u0e2a\u0e14\u0e07\u0e40\u0e21\u0e19\u0e39"}, +gbe(){return"\u0e41\u0e17\u0e47\u0e1a\u0e17\u0e35\u0e48 $tabIndex \u0e08\u0e32\u0e01 $tabCount"}} +A.a4J.prototype={ +gbf(){return"Alerto"}, +gbg(){return"Bumalik"}, +gb0(){return"Bottom Sheet"}, +gbb(){return"Isara"}, +gbs(){return"Expanded"}, +gV(){return"Kopyahin"}, +gW(){return"I-cut"}, +gaO(){return"I-delete"}, +gaC(){return"Dialog"}, +gbo(){return"Menu ng navigation"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"I-dismiss"}, +gbu(){return"Higit Pa"}, +gaM(){return"Buksan ang menu ng navigation"}, +gX(){return"I-paste"}, +gb2(){return"Popup na menu"}, +gbq(){return"Nagre-refresh"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"1 character ang natitira"}, +gbh(){return u.Z}, +gbE(){return null}, +gbF(){return"TBD"}, +gbx(){return"I-scan ang text"}, +gaN(){return"Scrim"}, +gbk(){return"Isara ang $modalRouteContentName"}, +gby(){return B.N}, +gO(){return"Piliin lahat"}, +gbl(){return"Ipakita ang menu"}, +gbe(){return"Tab $tabIndex ng $tabCount"}} +A.a4K.prototype={ +gbf(){return"Uyar\u0131"}, +gbg(){return"Geri"}, +gb0(){return"alt sayfa"}, +gbb(){return"Kapat"}, +gbs(){return"Expanded"}, +gV(){return"Kopyala"}, +gW(){return"Kes"}, +gaO(){return"Sil"}, +gaC(){return"\u0130leti\u015fim kutusu"}, +gbo(){return"Gezinme men\xfcs\xfc"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"Kapat"}, +gbu(){return"Di\u011fer"}, +gaM(){return"Gezinme men\xfcs\xfcn\xfc a\xe7"}, +gX(){return"Yap\u0131\u015ft\u0131r"}, +gb2(){return"Popup men\xfc"}, +gbq(){return"Yenile"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"1 karakter kald\u0131"}, +gbh(){return"$remainingCount karakter kald\u0131"}, +gbE(){return null}, +gbF(){return"TBD"}, +gbx(){return"Metni tara"}, +gaN(){return"opakl\u0131k katman\u0131"}, +gbk(){return"$modalRouteContentName i\xe7eri\u011fini kapat"}, +gby(){return B.N}, +gO(){return"T\xfcm\xfcn\xfc se\xe7"}, +gbl(){return"Men\xfcy\xfc g\xf6ster"}, +gbe(){return"Sekme $tabIndex / $tabCount"}} +A.a4L.prototype={ +gbf(){return"\u0421\u043f\u043e\u0432\u0456\u0449\u0435\u043d\u043d\u044f"}, +gbg(){return"\u041d\u0430\u0437\u0430\u0434"}, +gb0(){return"\u041d\u0438\u0436\u043d\u0456\u0439 \u0435\u043a\u0440\u0430\u043d"}, +gbb(){return"\u0417\u0430\u043a\u0440\u0438\u0442\u0438"}, +gbs(){return"Expanded"}, +gV(){return"\u041a\u043e\u043f\u0456\u044e\u0432\u0430\u0442\u0438"}, +gW(){return"\u0412\u0438\u0440\u0456\u0437\u0430\u0442\u0438"}, +gaO(){return"\u0412\u0438\u0434\u0430\u043b\u0438\u0442\u0438"}, +gaC(){return"\u0412\u0456\u043a\u043d\u043e"}, +gbo(){return"\u041c\u0435\u043d\u044e \u043d\u0430\u0432\u0456\u0433\u0430\u0446\u0456\u0457"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"\u0417\u0430\u043a\u0440\u0438\u0442\u0438"}, +gbu(){return"\u0406\u043d\u0448\u0456"}, +gaM(){return"\u0412\u0456\u0434\u043a\u0440\u0438\u0442\u0438 \u043c\u0435\u043d\u044e \u043d\u0430\u0432\u0456\u0433\u0430\u0446\u0456\u0457"}, +gX(){return"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438"}, +gb2(){return"\u0421\u043f\u043b\u0438\u0432\u0430\u044e\u0447\u0435 \u043c\u0435\u043d\u044e"}, +gbq(){return"\u041e\u043d\u043e\u0432\u0438\u0442\u0438"}, +gbv(){return"\u0417\u0430\u043b\u0438\u0448\u0438\u043b\u043e\u0441\u044f $remainingCount \u0441\u0438\u043c\u0432\u043e\u043b\u0438"}, +gbD(){return"\u0417\u0430\u043b\u0438\u0448\u0438\u043b\u043e\u0441\u044f $remainingCount \u0441\u0438\u043c\u0432\u043e\u043b\u0456\u0432"}, +gbd(){return"\u0417\u0430\u043b\u0438\u0448\u0438\u0432\u0441\u044f 1 \u0441\u0438\u043c\u0432\u043e\u043b"}, +gbh(){return"\u0417\u0430\u043b\u0438\u0448\u0438\u043b\u043e\u0441\u044f $remainingCount \u0441\u0438\u043c\u0432\u043e\u043b\u0443"}, +gbE(){return null}, +gbF(){return"TBD"}, +gbx(){return"\u0421\u043a\u0430\u043d\u0443\u0432\u0430\u0442\u0438 \u0442\u0435\u043a\u0441\u0442"}, +gaN(){return"\u041c\u0430\u0441\u043a\u0443\u0432\u0430\u043b\u044c\u043d\u0438\u0439 \u0444\u043e\u043d"}, +gbk(){return"\u0417\u0430\u043a\u0440\u0438\u0442\u0438: $modalRouteContentName"}, +gby(){return B.N}, +gO(){return"\u0412\u0438\u0431\u0440\u0430\u0442\u0438 \u0432\u0441\u0456"}, +gbl(){return"\u041f\u043e\u043a\u0430\u0437\u0430\u0442\u0438 \u043c\u0435\u043d\u044e"}, +gbe(){return"\u0412\u043a\u043b\u0430\u0434\u043a\u0430 $tabIndex \u0437 $tabCount"}} +A.a4M.prototype={ +gbf(){return"\u0627\u0644\u0631\u0679"}, +gbg(){return"\u067e\u06cc\u0686\u06be\u06d2"}, +gb0(){return"\u0646\u06cc\u0686\u06d2 \u06a9\u06cc \u0634\u06cc\u0679"}, +gbb(){return"\u0628\u0646\u062f \u06a9\u0631\u06cc\u06ba"}, +gbs(){return"Expanded"}, +gV(){return"\u06a9\u0627\u067e\u06cc \u06a9\u0631\u06cc\u06ba"}, +gW(){return"\u06a9\u0679 \u06a9\u0631\u06cc\u06ba"}, +gaO(){return"\u062d\u0630\u0641 \u06a9\u0631\u06cc\u06ba"}, +gaC(){return"\u0688\u0627\u0626\u0644\u0627\u06af"}, +gbo(){return"\u0646\u06cc\u0648\u06cc\u06af\u06cc\u0634\u0646 \u0645\u06cc\u0646\u06cc\u0648"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"\u0628\u0631\u062e\u0627\u0633\u062a \u06a9\u0631\u06cc\u06ba"}, +gbu(){return"\u0645\u0632\u06cc\u062f"}, +gaM(){return"\u0646\u06cc\u0648\u06cc\u06af\u06cc\u0634\u0646 \u0645\u06cc\u0646\u06cc\u0648 \u06a9\u06be\u0648\u0644\u06cc\u06ba"}, +gX(){return"\u067e\u06cc\u0633\u0679 \u06a9\u0631\u06cc\u06ba"}, +gb2(){return"\u067e\u0627\u067e \u0627\u067e \u0645\u06cc\u0646\u06cc\u0648"}, +gbq(){return"\u0631\u06cc\u0641\u0631\u06cc\u0634 \u06a9\u0631\u06cc\u06ba"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"1 \u062d\u0631\u0641 \u0628\u0627\u0642\u06cc \u06c1\u06d2"}, +gbh(){return"$remainingCount \u062d\u0631\u0648\u0641 \u0628\u0627\u0642\u06cc \u06c1\u06cc\u06ba"}, +gbE(){return null}, +gbF(){return"TBD"}, +gbx(){return"\u0645\u062a\u0646 \u06a9\u0648 \u0627\u0633\u06a9\u06cc\u0646 \u06a9\u0631\u06cc\u06ba"}, +gaN(){return"\u0627\u0633\u06a9\u0631\u06cc\u0645"}, +gbk(){return"$modalRouteContentName \u0628\u0646\u062f \u06a9\u0631\u06cc\u06ba"}, +gby(){return B.bG}, +gO(){return"\u0633\u0628\u06be\u06cc \u06a9\u0648 \u0645\u0646\u062a\u062e\u0628 \u06a9\u0631\u06cc\u06ba"}, +gbl(){return"\u0645\u06cc\u0646\u06cc\u0648 \u062f\u06a9\u06be\u0627\u0626\u06cc\u06ba"}, +gbe(){return"$tabCount \u0645\u06cc\u06ba \u0633\u06d2 $tabIndex \u0679\u06cc\u0628"}} +A.a4N.prototype={ +gbf(){return"Ogohlantirish"}, +gbg(){return"Orqaga"}, +gb0(){return"Quyi ekran"}, +gbb(){return"Yopish"}, +gbs(){return"Expanded"}, +gV(){return"Nusxa olish"}, +gW(){return"Kesib olish"}, +gaO(){return"Olib tashlash"}, +gaC(){return"Muloqot oynasi"}, +gbo(){return"Navigatsiya menyusi"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"Yopish"}, +gbu(){return"Yana"}, +gaM(){return"Navigatsiya menyusini ochish"}, +gX(){return"Joylash"}, +gb2(){return"Pop-ap menyusi"}, +gbq(){return"Yangilash"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"1 ta belgi qoldi"}, +gbh(){return"$remainingCount ta belgi qoldi"}, +gbE(){return null}, +gbF(){return null}, +gbx(){return"Matnni skanerlash"}, +gaN(){return"Kanop"}, +gbk(){return"Yopish: $modalRouteContentName"}, +gby(){return B.N}, +gO(){return"Hammasi"}, +gbl(){return"Menyuni ko\u02bbrsatish"}, +gbe(){return"$tabCount varaqdan $tabIndex"}} +A.a4O.prototype={ +gbf(){return"Th\xf4ng b\xe1o"}, +gbg(){return"Quay l\u1ea1i"}, +gb0(){return"B\u1ea3ng d\u01b0\u1edbi c\xf9ng"}, +gbb(){return"\u0110\xf3ng"}, +gbs(){return"Expanded"}, +gV(){return"Sao ch\xe9p"}, +gW(){return"C\u1eaft"}, +gaO(){return"X\xf3a"}, +gaC(){return"H\u1ed9p tho\u1ea1i"}, +gbo(){return"Menu di chuy\u1ec3n"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"B\u1ecf qua"}, +gbu(){return"Th\xeam"}, +gaM(){return"M\u1edf menu di chuy\u1ec3n"}, +gX(){return"D\xe1n"}, +gb2(){return"Menu b\u1eadt l\xean"}, +gbq(){return"L\xe0m m\u1edbi"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"Co\u0300n la\u0323i 1 k\xfd t\u1ef1"}, +gbh(){return"Co\u0300n la\u0323i $remainingCount k\xfd t\u1ef1"}, +gbE(){return null}, +gbF(){return"TBD"}, +gbx(){return"Qu\xe9t v\u0103n b\u1ea3n"}, +gaN(){return"Scrim"}, +gbk(){return"\u0110\xf3ng $modalRouteContentName"}, +gby(){return B.N}, +gO(){return"Ch\u1ecdn t\u1ea5t c\u1ea3"}, +gbl(){return"Hi\u1ec3n th\u1ecb menu"}, +gbe(){return"Tab $tabIndex trong t\u1ed5ng s\u1ed1 $tabCount"}} +A.Lh.prototype={ +gbf(){return"\u63d0\u9192"}, +gbg(){return"\u8fd4\u56de"}, +gb0(){return"\u5e95\u90e8\u52a8\u4f5c\u6761"}, +gbb(){return"\u5173\u95ed"}, +gbs(){return"Expanded"}, +gV(){return"\u590d\u5236"}, +gW(){return"\u526a\u5207"}, +gaO(){return"\u5220\u9664"}, +gaC(){return"\u5bf9\u8bdd\u6846"}, +gbo(){return"\u5bfc\u822a\u83dc\u5355"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"\u5173\u95ed"}, +gbu(){return"\u66f4\u591a"}, +gaM(){return"\u6253\u5f00\u5bfc\u822a\u83dc\u5355"}, +gX(){return"\u7c98\u8d34"}, +gb2(){return"\u5f39\u51fa\u83dc\u5355"}, +gbq(){return"\u5237\u65b0"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"\u8fd8\u53ef\u8f93\u5165 1 \u4e2a\u5b57\u7b26"}, +gbh(){return"\u8fd8\u53ef\u8f93\u5165 $remainingCount \u4e2a\u5b57\u7b26"}, +gbE(){return null}, +gbF(){return"TBD"}, +gbx(){return"\u626b\u63cf\u6587\u672c"}, +gaN(){return"\u7eb1\u7f69"}, +gbk(){return"\u5173\u95ed $modalRouteContentName"}, +gby(){return B.eu}, +gO(){return"\u5168\u9009"}, +gbl(){return"\u663e\u793a\u83dc\u5355"}, +gbe(){return"\u7b2c $tabIndex \u4e2a\u6807\u7b7e\uff0c\u5171 $tabCount \u4e2a"}} +A.a4P.prototype={} +A.Li.prototype={ +gbf(){return"\u901a\u77e5"}, +gb0(){return"\u9801\u5e95\u9762\u677f"}, +gbb(){return"\u95dc\u9589"}, +gV(){return"\u8907\u88fd"}, +gW(){return"\u526a\u4e0b"}, +gaO(){return"\u522a\u9664"}, +gaC(){return"\u5c0d\u8a71\u65b9\u584a"}, +gbo(){return"\u5c0e\u89bd\u9078\u55ae"}, +gaE(){return"\u62d2\u7d55"}, +gaM(){return"\u958b\u555f\u5c0e\u89bd\u9078\u55ae"}, +gX(){return"\u8cbc\u4e0a"}, +gb2(){return"\u5f48\u51fa\u5f0f\u9078\u55ae"}, +gbq(){return"\u91cd\u65b0\u6574\u7406"}, +gbd(){return"\u5c1a\u9918 1 \u500b\u5b57\u5143"}, +gbh(){return"\u5c1a\u9918 $remainingCount \u500b\u5b57\u5143"}, +gaN(){return"Scrim"}, +gbk(){return"\u95dc\u9589 $modalRouteContentName"}, +gO(){return"\u5168\u90e8\u9078\u53d6"}, +gbl(){return"\u986f\u793a\u9078\u55ae"}, +gbe(){return"\u7b2c $tabIndex \u500b\u6a19\u7c64\uff0c\u7e3d\u5171 $tabCount \u500b"}} +A.a4Q.prototype={} +A.a4R.prototype={ +gaN(){return"\u7d17\u7f69"}, +gb0(){return"\u5e95\u90e8\u529f\u80fd\u8868"}, +gbk(){return"\u95dc\u9589\u300c$modalRouteContentName\u300d"}, +gbe(){return"\u7b2c $tabIndex \u500b\u5206\u9801 (\u5171 $tabCount \u500b)"}, +gaE(){return"\u95dc\u9589"}, +gO(){return"\u5168\u9078"}, +gbf(){return"\u5feb\u8a0a"}, +gbd(){return"\u9084\u53ef\u8f38\u5165 1 \u500b\u5b57\u5143"}, +gbh(){return"\u9084\u53ef\u8f38\u5165 $remainingCount \u500b\u5b57\u5143"}} +A.a4S.prototype={ +gbf(){return"Isexwayiso"}, +gbg(){return"Emuva"}, +gb0(){return"Ishidi Eliphansi"}, +gbb(){return"Vala"}, +gbs(){return"Expanded"}, +gV(){return"Kopisha"}, +gW(){return"Sika"}, +gaO(){return"Susa"}, +gaC(){return"Ingxoxo"}, +gbo(){return"Imenyu yokuzulazula"}, +gbt(){return"Collapsed"}, +gbz(){return"double tap to expand"}, +gbA(){return"Expand for more details"}, +gbB(){return"double tap to collapse'"}, +gbC(){return"Collapse"}, +gaE(){return"Cashisa"}, +gbu(){return"Okuningi"}, +gaM(){return"Vula imenyu yokuzulazula"}, +gX(){return"Namathisela"}, +gb2(){return"Imenyu ye-popup"}, +gbq(){return"Vuselela"}, +gbv(){return null}, +gbD(){return null}, +gbd(){return"1 uhlamvu olusele"}, +gbh(){return"$remainingCount izinhlamvu ezisele"}, +gbE(){return null}, +gbF(){return null}, +gbx(){return"Skena umbhalo"}, +gaN(){return"I-Scrim"}, +gbk(){return"Vala i-$modalRouteContentName"}, +gby(){return B.N}, +gO(){return"Khetha konke"}, +gbl(){return"Bonisa imenyu"}, +gbe(){return"Ithebhu $tabIndex kwangu-$tabCount"}} +A.ab0.prototype={} +A.ab1.prototype={} +A.ab2.prototype={} +A.ab3.prototype={} +A.ab4.prototype={} +A.ab5.prototype={} +A.ab6.prototype={} +A.ab7.prototype={} +A.ab8.prototype={} +A.ab9.prototype={} +A.aba.prototype={} +A.abb.prototype={} +A.abc.prototype={} +A.P7.prototype={} +A.abd.prototype={} +A.abe.prototype={} +A.P8.prototype={} +A.abf.prototype={} +A.abg.prototype={} +A.abh.prototype={} +A.abi.prototype={} +A.abj.prototype={} +A.abk.prototype={} +A.abl.prototype={} +A.abm.prototype={} +A.P9.prototype={} +A.abn.prototype={} +A.abo.prototype={} +A.abp.prototype={} +A.abq.prototype={} +A.abr.prototype={} +A.abs.prototype={} +A.abt.prototype={} +A.abu.prototype={} +A.abv.prototype={} +A.abw.prototype={} +A.abx.prototype={} +A.aby.prototype={} +A.abz.prototype={} +A.abA.prototype={} +A.abB.prototype={} +A.abC.prototype={} +A.abD.prototype={} +A.abE.prototype={} +A.abF.prototype={} +A.abG.prototype={} +A.abH.prototype={} +A.abI.prototype={} +A.abJ.prototype={} +A.abK.prototype={} +A.abL.prototype={} +A.Pa.prototype={} +A.abM.prototype={} +A.abN.prototype={} +A.abO.prototype={} +A.abP.prototype={} +A.abQ.prototype={} +A.abR.prototype={} +A.abS.prototype={} +A.abT.prototype={} +A.abU.prototype={} +A.abV.prototype={} +A.abW.prototype={} +A.abX.prototype={} +A.abY.prototype={} +A.abZ.prototype={} +A.ac_.prototype={} +A.ac0.prototype={} +A.ac1.prototype={} +A.ac2.prototype={} +A.ac3.prototype={} +A.ac4.prototype={} +A.ac5.prototype={} +A.ac6.prototype={} +A.ac7.prototype={} +A.ac8.prototype={} +A.ac9.prototype={} +A.aca.prototype={} +A.acb.prototype={} +A.acc.prototype={} +A.acd.prototype={} +A.ace.prototype={} +A.acf.prototype={} +A.acg.prototype={} +A.ach.prototype={} +A.aci.prototype={} +A.acj.prototype={} +A.ack.prototype={} +A.Pb.prototype={} +A.acl.prototype={} +A.acm.prototype={} +A.acn.prototype={} +A.aco.prototype={} +A.acp.prototype={} +A.acq.prototype={} +A.acr.prototype={} +A.Pc.prototype={} +A.acs.prototype={} +A.act.prototype={} +A.acu.prototype={} +A.acv.prototype={} +A.acw.prototype={} +A.acx.prototype={} +A.acy.prototype={} +A.acz.prototype={} +A.acA.prototype={} +A.acB.prototype={} +A.acC.prototype={} +A.acD.prototype={} +A.acE.prototype={} +A.Pd.prototype={} +A.acF.prototype={} +A.Pe.prototype={} +A.acG.prototype={} +A.acH.prototype={} +A.acI.prototype={} +A.a1r.prototype={ +Y_(a){return B.c.vt(this.gbk(),"$modalRouteContentName",a)}, +N_(a,b){var s=this.x +return B.c.vt(B.c.vt(this.gbe(),"$tabIndex",s.tj(b)),"$tabCount",s.tj(a))}, +gbF(){return null}, +gbd(){return null}, +gbE(){return null}, +gbD(){return null}, +gbv(){return null}, +acj(a){var s=this,r=s.gbF(),q=s.gbd(),p=s.gbE(),o=s.gbD() +return B.c.vt(A.bGR(a,s.gbv(),s.a,o,q,s.gbh(),p,r),"$remainingCount",s.x.tj(a))}, +$iav:1} +A.ai2.prototype={ +xj(a){return $.bn0().n(0,a.ge_(a))}, +ke(a,b){return $.bMO.cJ(0,b,new A.b6g(b))}, +vM(a){return!1}, +j(a){return"GlobalMaterialLocalizations.delegate("+$.bn0().a+" locales)"}} +A.b6g.prototype={ +$0(){var s,r,q,p,o,n,m,l,k,j,i,h=null +A.bwU() +s=this.a +r=A.iL(s.rP("_")) +if(A.a_J(r)){q=A.ax7(r) +p=A.bi7(r) +o=A.a_I(r) +n=A.ax6(r) +m=A.bi6(r) +l=A.bi5(r) +k=A.bi4(r)}else if(A.a_J(s.ge_(s))){q=A.ax7(s.ge_(s)) +p=A.bi7(s.ge_(s)) +o=A.a_I(s.ge_(s)) +n=A.ax6(s.ge_(s)) +m=A.bi6(s.ge_(s)) +l=A.bi5(s.ge_(s)) +k=A.bi4(s.ge_(s))}else{q=A.ax7(h) +p=A.bi7(h) +o=A.a_I(h) +n=A.ax6(h) +m=A.bi6(h) +l=A.bi5(h) +k=A.bi4(h)}if(A.bjo(r)){j=A.aKJ(r) +i=A.bjn("00",r)}else if(A.bjo(s.ge_(s))){j=A.aKJ(s.ge_(s)) +i=A.bjn("00",s.ge_(s))}else{j=A.aKJ(h) +i=A.bjn("00",h)}s=A.bSK(s,q,p,o,n,m,l,k,j,i) +s.toString +return new A.ct(s,t.az)}, +$S:595} +A.bfM.prototype={ +$2(a,b){var s,r=B.a9s.i(0,a) +if($.Wh() instanceof A.F3){$.bOw=A.bOK() +$.aqe=$.aq2=null}if($.aqJ() instanceof A.F3)$.bRz=A.bOJ() +if(r==null)A.q(A.bU("Missing DateTime formatting patterns",null)) +s=b.a +if(a!==s)A.q(A.eR(A.a([a,s],t._m),"Locale does not match symbols.NAME",null)) +J.ie($.Wh(),s,b) +J.ie($.aqJ(),s,r)}, +$S:596} +A.a1t.prototype={$iay:1, +gcF(){return this.a}} +A.anZ.prototype={ +xj(a){return $.bn4().n(0,a.ge_(a))}, +ke(a,b){return $.bNK.cJ(0,b,new A.bcL(b))}, +vM(a){return!1}, +j(a){return"GlobalWidgetsLocalizations.delegate("+$.bn4().a+" locales)"}} +A.bcL.prototype={ +$0(){var s=A.bSN(this.a) +s.toString +return new A.ct(s,t.E8)}, +$S:597} +A.a14.prototype={ +xb(a){return this.aIM(a)}, +aIM(a){var s=0,r=A.y(t.z),q,p,o +var $async$xb=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)$async$outer:switch(s){case 0:o=a.a +switch(o){case"remove":try{self.removeSplashFromWeb()}catch(n){o=A.cR('Did you forget to run "dart run flutter_native_splash:create"? \n Could not run the JS command removeSplashFromWeb()') +throw A.c(o)}s=1 +break $async$outer +default:throw A.c(A.a6o("Unimplemented","flutter_native_splash for web doesn't implement '"+o+"'",null,null))}case 1:return A.w(q,r)}}) +return A.x($async$xb,r)}} +A.we.prototype={ +a8(){return new A.aeh(B.m)}} +A.aeh.prototype={ +A(a){var s,r=this.a +r.toString +s=this.c +s.toString +return r.aJ(a,t.jA.a(s))}} +A.YA.prototype={ +bJ(a){return A.bDY(this)}} +A.IJ.prototype={} +A.B1.prototype={ +glV(){var s=this.cb +return s===$?this.cb=A.aMI(this,!0):s}, +cp(){var s,r,q,p,o=this +o.aiK() +s=A.aMI(o,!0) +if(o.glV()!==s){o.cb=s +for(r=o.bQ,r=r.gbw(r),q=A.k(r),q=q.h("@<1>").S(q.z[1]),r=new A.c2(J.ao(r.a),r.b,q.h("c2<1,2>")),q=q.z[1];r.u();){p=r.a;(p==null?q.a(p):p).ad(0)}o.bQ.ab(0)}}, +aP(){var s,r,q,p,o,n=this +try{n.bO=n.bQ +for(s=0,q=n.B;s").S(p.z[1]),q=new A.c2(J.ao(q.a),q.b,p.h("c2<1,2>")),p=p.z[1];q.u();){o=q.a +r=o==null?p.a(o):o +J.Hr(r)}n.bO=null}}, +M(a,b){if(this.f==null)A.q(A.R(u.w)) +return b.a(J.bCw(this.bQ.cJ(0,a,new A.awu(this,a,b))))}, +xP(a){return this.M(a,t.z)}, +lw(){var s,r,q,p +this.aiL() +for(s=this.bQ,s=s.gbw(s),r=A.k(s),r=r.h("@<1>").S(r.z[1]),s=new A.c2(J.ao(s.a),s.b,r.h("c2<1,2>")),r=r.z[1];s.u();){q=s.a;(q==null?r.a(q):q).ad(0)}for(s=this.B,p=0;p") +c=document +g=c.querySelector("#toast-content") +if(c.querySelector("#toast-content")!=null){g.toString +J.Ht(g)}f=c.createElement("script") +f.id="toast-content" +B.acp.afw(f," var toastElement = Toastify({\n text: '"+h+"',\n gravity: '"+A.h(n)+"',\n position: '"+m+"',\n duration: "+j+",\n close: "+A.h(i)+',\n backgroundColor: "'+l+'",\n });\n toastElement.showToast();\n ') +p=c.querySelector("head") +p.toString +J.Wo(p).G(0,f) +if(k!=null){c=c.querySelector(".toastify") +c.toString +e=B.f.o0(k,16) +p=B.c.cv(e,2) +d=B.c.U(e,0,2) +c=c.style +c.toString +B.rt.aAR(c,B.rt.amN(c,"color"),"#"+(p+d),null)}q=!0 +s=1 +break $async$outer +default:throw A.c(A.a6o("Unimplemented","The fluttertoast plugin for web doesn't implement the method '"+c+"'",null,null))}case 1:return A.w(q,r)}}) +return A.x($async$xb,r)}, +LI(){var s=0,r=A.y(t.H),q,p,o,n,m,l,k,j +var $async$LI=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:n=A.a([],t.mo) +m=A.a([],t._B) +l=$.vy.xS("packages/fluttertoast/assets/toastify.css") +k=document +j=k.createElement("link") +j.id="toast-css" +q=t.N +B.VW.szr(j,A.ap(["rel","stylesheet"],q,q)) +j.href=l +m.push(j) +p=$.vy.xS("packages/fluttertoast/assets/toastify.js") +o=k.createElement("script") +o.async=!0 +o.src=p +q=new A.QO(o,"load",!1,t.rE) +n.push(q.gN(q)) +m.push(o) +k=k.querySelector("head") +k.toString +J.Wo(k).I(0,m) +s=2 +return A.t(A.q8(n,t.H),$async$LI) +case 2:return A.w(null,r)}}) +return A.x($async$LI,r)}} +A.Kl.prototype={} +A.cQ.prototype={ +l(a,b){if(b==null)return!1 +return this.$ti.b(b)&&A.o(b)===A.o(this)&&J.i(b.b,this.b)}, +gv(a){return A.X(A.o(this),this.b,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}} +A.oe.prototype={ +l(a,b){if(b==null)return!1 +return this.$ti.b(b)&&A.o(b)===A.o(this)&&J.i(b.c,this.c)}, +gv(a){return A.X(A.o(this),this.c,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}} +A.aCO.prototype={ +b7(){return null.$0()}} +A.a7O.prototype={ +aEI(a,b,c){if(b.a.length===0&&b.e==null)return B.a_ +return this.a.$2(a,new A.ej(new A.aQ8(this,b,!1),null))}, +an8(a,b,c,d,e,f){var s,r,q=this,p=t.Bt,o=t.tt +if(b.e!=null)s=A.ap([e,A.a([q.a_8(a,q.a_9(b))],t.Im)],p,o) +else{s=A.F(p,o) +q.HL(a,b,0,c,!1,s,e,f)}p=A.k(s).h("c9<1>") +r=A.i2(new A.c9(s,p),p.h("z.E")) +r.I(0,A.bJt(b)) +p=q.y +p.G9(p,new A.aPY(r)) +p=s.i(0,e) +p.toString +return p}, +HL(a,b,c,d,e,f,g,h){var s,r,q,p,o,n,m,l,k=this,j=b.a +if(c>=j.length)return +s=j[c] +r=s.a +q=k.aER(b,s) +if(q.x!=null){p=k.a_8(a,q) +J.fu(f.cJ(0,g,new A.aQ_()),p) +k.HL(a,b,c+1,d,!1,f,g,h)}else{o=r.b +if(o==null)o=g +if(r instanceof A.ki){p=k.an6(a,q,s,r,d) +if(p!=null)J.fu(f.cJ(0,o,new A.aQ0()),p) +k.HL(a,b,c+1,d,!1,f,g,h)}else if(r instanceof A.m5){n=J.aZ(f.cJ(0,o,new A.aQ1())) +m=c+1 +j[m].toString +l=r.w +f.cJ(0,l,new A.aQ2()) +k.HL(a,b,m,d,!1,f,l,h) +p=k.an7(a,q,s,r,d,new A.aST(new A.aPZ(d,f,l,k.y.cJ(0,l,new A.aQ3(k,a))))) +m=f.i(0,o) +m.toString +J.bhx(m,n,p)}else p=null}if(p!=null){h.p(0,p,q) +d.av3(p,s)}}, +aER(a,b){var s,r,q,p,o=b.a +if(o instanceof A.ki){s=o.c +r=o.d}else{s=null +r=""}if(b instanceof A.i_){q=b.d +if(q.e!=null)return this.a_9(q)}else q=a +p=t.N +return new A.bl(q.c,b.b,s,r,q.f,A.aHb(q.b,p,p),q.d,q.e,b.c)}, +an6(a,b,c,d,e){var s,r=d.e +if(r!=null){s=r.$2(a,b) +if(!(s instanceof A.CW))return s}return this.anx(a,b,d)}, +anx(a,b,c){return this.kU(a,b,new A.ej(new A.aQ7(c.f,b),null))}, +an7(a,b,c,d,e,f){var s=d.kU(a,b,f) +if(s instanceof A.CW)s=null +return s==null?this.kU(a,b,new A.ej(new A.aPX(this,b,d,f),null)):s}, +a_d(a){var s,r=this +if(r.z==null){s=a.xa(t.fc) +if(s!=null){if($.nN)$.mx().pQ(B.cA,"Using MaterialApp configuration") +r.z=A.bTO() +r.Q=new A.aQ4()}else{s=a.xa(t.VD) +if(s!=null){if($.nN)$.mx().pQ(B.cA,"Using CupertinoApp configuration") +r.z=A.bRy() +r.Q=new A.aQ5()}else{if($.nN)$.mx().pQ(B.cA,"Using WidgetsApp configuration") +r.z=r.gaMu() +r.Q=new A.aQ6()}}}}, +kU(a,b,c){var s,r,q +this.a_d(a) +s=this.z +s.toString +r=b.y +q=t.N +q=A.oo(b.r,q,q) +q.I(0,b.b.gr9()) +return s.$5$arguments$child$key$name$restorationId(q,c,r,b.e,r.a)}, +aMv(a,b,c,d,e){return A.bqZ(a,b,c,d,e,t.H)}, +a_9(a){var s=a.c +return new A.bl(s,s.gdN(s),null,null,a.f,a.b,null,a.e,new A.bP(s.j(0)+"(error)",t.O))}, +a_8(a,b){var s +this.a_d(a) +s=this.Q.$2(a,b) +s=this.kU(a,b,s) +return s}, +ar3(a){if(a.xa(t.fc)!=null)return A.bqE() +else if(a.xa(t.VD)!=null)return new A.lJ(null,A.F(t.K,t.Qu)) +return new A.lJ(null,A.F(t.K,t.Qu))}} +A.aQ8.prototype={ +$1(a){var s=t.sd,r=A.F(s,t.Js),q=this.a,p=q.d.b,o=new A.aiW(A.F(s,t.RS),q.x) +p=q.a.$2(a,A.brK(o.gabA(),q.an8(a,this.b,o,this.c,p,r),p,null,q.r,!0,q.e)) +q=q.w +q.aP2(r) +return new A.BX(q,p,null)}, +$S:601} +A.aPY.prototype={ +$2(a,b){return!this.a.n(0,a)}, +$S:602} +A.aQ_.prototype={ +$0(){return A.a([],t.Im)}, +$S:112} +A.aQ0.prototype={ +$0(){return A.a([],t.Im)}, +$S:112} +A.aQ1.prototype={ +$0(){return A.a([],t.Im)}, +$S:112} +A.aQ2.prototype={ +$0(){return A.a([],t.Im)}, +$S:112} +A.aQ3.prototype={ +$0(){return this.a.ar3(this.b)}, +$S:604} +A.aPZ.prototype={ +$3$requestFocus(a,b,c){var s,r=this,q=r.c,p=r.b.i(0,q) +p.toString +s=a==null?B.a1S:a +return A.brK(r.a.gabA(),p,q,r.d,s,c,b)}, +$2(a,b){return this.$3$requestFocus(a,b,!0)}, +$C:"$3$requestFocus", +$R:2, +$D(){return{requestFocus:!0}}, +$S:605} +A.aQ7.prototype={ +$1(a){return this.a.$2(a,this.b)}, +$S:12} +A.aPX.prototype={ +$1(a){var s=this.c,r=s.aET(a,this.b,this.d) +if(r==null)A.q(A.bpO("No builder provided to ShellRoute: "+s.j(0))) +return r}, +$S:12} +A.aQ4.prototype={ +$2(a,b){return new A.CK(b.x,null)}, +$S:606} +A.aQ5.prototype={ +$2(a,b){return new A.B5(b.x,null)}, +$S:607} +A.aQ6.prototype={ +$2(a,b){return new A.BC(b.x,null)}, +$S:608} +A.aiW.prototype={ +av3(a,b){J.bhx(this.a.cJ(0,a,new A.b7x()),0,b)}, +aM0(a,b){var s=t.sd.a(a.b),r=this.a,q=r.i(0,s) +q.toString +if(this.b.$3(a,b,J.rT(q))){r=r.i(0,s) +r.toString +J.bnG(r) +return!0}return!1}} +A.b7x.prototype={ +$0(){return A.a([],t.i3)}, +$S:610} +A.aQ9.prototype={ +axm(){var s,r=this +r.d.ab(0) +r.P6("",r.a.a.a) +s=r.aGM() +if($.nN)$.mx().pQ(B.cA,s)}, +aES(a){var s=a.c +return new A.bl(s,s.gdN(s),null,null,a.f,a.b,a.d,null,B.alw)}, +US(a,b){var s,r,q,p,o=A.dH(a,0,null).j(0) +if(B.c.hM(o,"?"))o=B.c.U(o,0,o.length-1) +s=A.dH(B.c.acw(B.c.hM(o,"/")&&o!=="/"&&!B.c.n(o,"?")?B.c.U(o,0,o.length-1):o,"/?","?",1),0,null) +r=t.N +q=A.F(r,r) +p=this.a15(s.gdN(s),"","",q,s.gdN(s),this.a.a.a) +if(p==null)return new A.eq(B.hw,B.fl,s,b,new A.BU("no routes for location: "+s.j(0)),A.N9(B.hw)) +return new A.eq(p,q,s,b,null,A.N9(p))}, +aHW(a){return this.US(a,null)}, +a15(a,b,c,a0,a1,a2){var s,r,q,p,o,n,m,l,k,j,i=A.b4("subPathParameters"),h=a2.length,g=t.By,f=t.N,e=i.a,d=0 +while(!0){if(!(d=n.length)return null +s=n[c] +n=new A.aQb(this,a,b,c) +r=s.a +if(r instanceof A.ki&&r.r!=null){q=s instanceof A.i_?s.d:b +p=r.r.$2(a,new A.bl(q.c,s.b,r.c,r.d,q.f,q.b,q.d,null,s.c))}else p=null +o=t.v +if(o.b(p))return n.$1(p) +return p.b9(n,o)}, +a19(a,b,c){var s,r,q,p,o,n=this +try{s=n.aHW(a) +q=s +if(B.b.n(c,q)){p=A.aa(c,!0,t.LQ) +p.push(q) +A.q(A.bpP("redirect loop detected "+n.a0S(p)))}if(c.length>n.a.a.c){p=A.aa(c,!0,t.LQ) +p.push(q) +A.q(A.bpP("too many redirects "+n.a0S(p)))}c.push(q) +q=q.j(0) +if($.nN)$.mx().pQ(B.cA,"redirecting to "+q) +return s}catch(o){q=A.ai(o) +if(q instanceof A.BU){r=q +q=r.a +if($.nN)$.mx().pQ(B.cA,"Redirection exception: "+q) +return new A.eq(B.hw,B.fl,b,null,r,A.N9(B.hw))}else throw o}}, +a0S(a){return new A.ad(a,new A.aQa(),A.ab(a).h("ad<1,f>")).cq(0," => ")}, +j(a){return"RouterConfiguration: "+A.h(this.a.a.a)}, +aGM(){var s,r,q=new A.cV("") +q.a=""+"Full paths for routes:\n" +this.PJ(this.a.a.a,"",0,q) +s=this.d +if(s.a!==0){q.a+="known full paths for route names:\n" +for(s=s.gdW(s),s=s.gaj(s);s.u();){r=s.gH(s) +q.a+=" "+A.h(r.a)+" => "+A.h(r.b)+"\n"}}s=q.a +return s.charCodeAt(0)==0?s:s}, +PJ(a,b,c,d){var s,r,q,p,o,n +for(s=a.length,r=c*2,q=c+1,p=0;p")),o),!0,o.h("z.E")) +return A.bpR(n.length-1,s,n).b9(new A.aDZ(m,a),t.H)}}return m.a4e(a)}, +a4e(a){this.d=a +this.ag() +return new A.ct(null,t.kO)}} +A.aDY.prototype={ +$1(a){return a.a}, +$S:233} +A.aDZ.prototype={ +$1(a){if(!a)return new A.ct(null,t.kO) +return this.a.a4e(this.b)}, +$S:234} +A.b7e.prototype={ +gH(a){var s=this.d +s===$&&A.b() +return s}, +a0H(){var s,r=this,q=r.b,p=r.a.a,o=p[q].a.b +if(o==null){r.b=q-1 +return}for(q=r.b=q-1;q>=0;--q,r.b=q){s=p[q].a +if(s instanceof A.m5){p[q+1].toString +if(s.w===o)return}}}, +u(){var s,r,q,p,o,n,m,l=this +if(l.b<0)return!1 +l.a0H() +for(s=l.a.a,r=t.Y8,q=t.Fe;p=l.b,p>=0;){o=s[p].a +if(o instanceof A.m5){s[p+1].toString +n=o.w +m=$.ar.al$.z.i(0,n).ae(q) +if(r.a(m==null?null:m.x).gtl()){s=n.gR() +s.toString +l.d=s +return!0}}l.a0H()}l.d=l.c +return!0}} +A.agw.prototype={} +A.LF.prototype={ +K(){return"NavigatingType."+this.b}} +A.n9.prototype={} +A.Kc.prototype={ +aO7(a,b){var s,r,q=this +switch(b.a){case 0:s=q.c +if(s.glc(s)===a.glc(a)&&B.a0.dj(q.c.c,a.c))return +r=q.c===B.ot +break +case 1:r=!0 +break +case 2:r=!1 +break +default:r=null}B.kz.qQ("selectMultiEntryHistory",t.H) +A.bsp(a.glc(a),r,a.c,null) +q.b=q.c=a}, +gk(a){return this.b}, +QT(a,b){var s=this,r=s.b,q=r.glc(r)!==a||!J.i(s.b.c,b) +s.b=new A.lm(a,null,b) +if(q)s.Hj()}, +a3b(a){var s=this,r=null +if(s.b===a)return +if(a.c!=null)s.b=s.c=a +else{s.b=new A.lm(a.glc(a),r,new A.n9(r,r,r,B.nY,t.Qt)) +s.c=B.ot}s.Hj()}, +P(a,b){if(this.ak$<=0)$.ar.cI$.push(this) +this.YH(0,b)}, +J(a,b){this.YI(0,b) +if(this.ak$<=0)B.b.F($.ar.cI$,this)}, +m(){if(this.ak$>0)B.b.F($.ar.cI$,this) +this.eH()}, +A1(a){this.a3b(a) +return new A.ct(!0,t.d9)}, +a8L(a){this.a3b(new A.lm(a,null,null)) +return new A.ct(!0,t.d9)}} +A.agu.prototype={} +A.agv.prototype={} +A.bgl.prototype={ +$1(a){if(a.a.b>=1000)A.biG(new A.cc(new A.FP(a.r),a.w,a.d,A.bX(a.b),null,!1),!1)}, +$S:618} +A.fU.prototype={ +l(a,b){var s=this +if(b==null)return!1 +if(J.a1(b)!==A.o(s))return!1 +return b instanceof A.fU&&s.a===b.a&&s.b===b.b&&s.c.l(0,b.c)}, +gv(a){return A.X(this.a,this.b,this.c,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}} +A.i_.prototype={ +l(a,b){if(b==null)return!1 +return b instanceof A.i_&&this.e===b.e&&this.d.l(0,b.d)&&this.ail(0,b)}, +gv(a){var s=this,r=s.d +return A.X(A.fU.prototype.gv.call(s,s),s.e,r.gv(r),B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}} +A.aFL.prototype={ +$2(a,b){return A.q(A.cL(null))}, +$S:619} +A.eq.prototype={ +xF(a){var s=A.aa(this.a,!0,t.UV) +s.push(a) +return this.PA(s)}, +F(a,b){var s,r,q,p,o,n=this,m=n.a,l=A.a(m.slice(0),A.ab(m)) +B.b.q0(l,B.b.eX(l,b),l.length) +m=t.By +while(!0){if(l.length!==0)if(!(B.b.ga1(l).a instanceof A.m5)){m.a(B.b.ga1(l).a) +s=!1}else s=!0 +else s=!1 +if(!s)break +l.pop()}if(b instanceof A.i_)return n.PA(l) +r=A.N9(new A.be(l,new A.aQj(),A.ab(l).h("be<1>"))) +q=A.a([],t.s) +A.bxd(r,q) +m=t.N +p=A.op(q,m) +s=n.b +s=s.gdW(s) +o=A.bqD(s.jm(s,new A.aQk(p)),m,m) +return n.a00(l,o,n.c.WP(0,A.bxc(r,o)))}, +gaO8(){var s=this.a,r=A.ab(s).h("ad<1,m_>") +return A.aa(new A.ad(s,new A.aQl(),r),!0,r.h("ax.E"))}, +a00(a,b,c){var s=this,r=c==null?s.c:c,q=b==null?s.b:b +return new A.eq(a,q,r,s.d,s.e,A.N9(a))}, +PA(a){return this.a00(a,null,null)}, +l(a,b){var s=this +if(b==null)return!1 +if(J.a1(b)!==A.o(s))return!1 +return b instanceof A.eq&&s.c.l(0,b.c)&&J.i(s.d,b.d)&&s.e==b.e&&B.VX.dj(s.a,b.a)&&B.a6F.dj(s.b,b.b)}, +gv(a){var s=this,r=A.dt(s.a),q=s.b +q=q.gdW(q) +return A.X(r,s.c,s.d,s.e,A.bIe(q.ig(q,new A.aQi(),t.S)),B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){return"RouteMatchList("+this.f+")"}} +A.aQh.prototype={ +$1(a){return!(a instanceof A.i_)}, +$S:235} +A.aQj.prototype={ +$1(a){return!(a instanceof A.i_)}, +$S:235} +A.aQk.prototype={ +$1(a){return this.a.n(0,a.a)}, +$S:621} +A.aQl.prototype={ +$1(a){return a.a}, +$S:233} +A.aQi.prototype={ +$1(a){return A.X(a.a,a.b,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +$S:622} +A.a7R.prototype={ +gfY(){return this.a}} +A.akX.prototype={ +cN(a){var s,r=t.iC +r=A.mV(new A.es(a.a,r),new A.b9J(this),r.h("z.E"),t.pE) +s=A.aa(r,!0,A.k(r).h("z.E")) +return this.aCi(a.c.j(0),a.d,s)}, +a5e(a,b,c,d){var s,r,q,p=null +try{p=A.b5Q(b,B.at.gfY().b,null)}catch(s){if(A.ai(s) instanceof A.Ci){p=A.b5Q(null,B.at.gfY().b,null) +r=J.a1(b).j(0) +if($.nN)$.mx().pQ(B.VS,"An extra with complex data type "+r+" is provided without a codec. Consider provide a codec to GoRouter to prevent extra being dropped during serialization.")}else throw s}q=A.ap(["codec","json","encoded",p],t.N,t.X) +r=t.X +r=A.F(r,r) +r.p(0,"location",a) +r.p(0,"state",q) +if(c!=null)r.p(0,"imperativeMatches",c) +if(d!=null)r.p(0,"pageKey",d) +return r}, +aCi(a,b,c){return this.a5e(a,b,c,null)}, +aCj(a,b,c){return this.a5e(a,b,null,c)}} +A.b9J.prototype={ +$1(a){var s=a.d +return this.a.aCj(s.c.j(0),s.d,a.c.a)}, +$S:623} +A.akW.prototype={ +cN(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=J.ak(a),d=e.i(a,"location") +d.toString +A.bs(d) +s=e.i(a,"state") +s.toString +r=t.pE +r.a(s) +q=J.ak(s) +if(J.i(q.i(s,"codec"),"json")){p=B.at.ga8x() +s=q.i(s,"encoded") +s.toString +o=A.apY(A.bs(s),p.a)}else o=null +n=this.a.US(d,o) +m=t.wh.a(e.i(a,"imperativeMatches")) +if(m!=null)for(e=J.bCO(m,r),d=J.ao(e.a),e=e.$ti,s=new A.p4(d,e.h("p4<1>")),e=e.c,r=t.O,q=t.Kw,p=t.oe,l=t.UV;s.u();){k=e.a(d.gH(d)) +j=this.cN(k) +k=J.b3(k,"pageKey") +k.toString +A.bs(k) +i=$.a9 +h=A.bq7(j) +g=A.bq8(j) +f=A.aa(n.a,!0,l) +f.push(new A.i_(j,new A.aD(new A.a8(i,q),p),h,g,new A.bP(k,r))) +n=n.PA(f)}return n}} +A.BC.prototype={ +A(a){var s=null,r=this.c +r=r==null?s:"GoException: "+r.a +return A.yz(!0,A.f1(A.cO(A.a([B.ajw,B.fI,A.O(r==null?"page not found":r,s,s,s,s,s,s,s),B.fI,new A.PV(new A.aAK(a),B.ajt,s)],t.p),B.w,B.dg,B.T),s,s),!0,B.a4,!0,!0)}} +A.aAK.prototype={ +$0(){return A.bd(this.a).tU(0,"/",null)}, +$S:0} +A.PV.prototype={ +a8(){return new A.adL(B.m)}} +A.adL.prototype={ +cp(){var s,r=this +r.ei() +s=r.c.xa(t.iM) +s=s==null?null:s.db +if(s==null)s=B.m7 +r.d!==$&&A.cl() +r.d=s}, +A(a){var s=null,r=this.a,q=r.c,p=this.d +p===$&&A.b() +return A.dM(s,A.cP(s,r.d,B.l,p,s,s,s,s,s,B.aT,s),B.C,!1,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,q,s,s,s,s,!1,B.ai)}} +A.a1v.prototype={ +j(a){return"GoError: "+this.a}} +A.BU.prototype={ +j(a){return"GoException: "+this.a}, +$icm:1} +A.tO.prototype={ +dr(a){return!1}} +A.B5.prototype={ +A(a){var s=null,r=this.c +r=r==null?s:"GoException: "+r.a +return new A.IX(B.QW,A.f1(A.cO(A.a([A.O(r==null?"page not found":r,s,s,s,s,s,s,s),A.YM(B.X,B.bh,B.KN,s,B.j_,44,new A.awV(a),s,0.4)],t.p),B.w,B.dg,B.T),s,s),s)}} +A.awV.prototype={ +$0(){return A.bd(this.a).tU(0,"/",null)}, +$S:0} +A.io.prototype={ +uI(a){var s=null,r=A.k(this),q=A.a([],t.Zt),p=$.a9,o=r.h("a8<1?>"),n=r.h("aD<1?>"),m=A.lX(B.bN),l=A.a([],t.wi),k=A.ed(s,t.v),j=$.a9 +return new A.Qv(!1,!0,s,s,q,new A.bo(s,r.h("bo>")),new A.bo(s,t.C),new A.oD(),s,0,new A.aD(new A.a8(p,o),n),m,l,this,k,new A.aD(new A.a8(j,o),n),r.h("Qv<1>"))}} +A.Qv.prototype={ +gqv(){this.$ti.h("io<1>").a(this.b) +return!1}, +gps(){this.$ti.h("io<1>").a(this.b) +return null}, +grV(){this.$ti.h("io<1>").a(this.b) +return null}, +gtO(a){return this.$ti.h("io<1>").a(this.b).w}, +gMX(){return this.$ti.h("io<1>").a(this.b).x}, +gtt(){this.$ti.h("io<1>").a(this.b) +return!0}, +gpI(){this.$ti.h("io<1>").a(this.b) +return!1}, +gtA(){this.$ti.h("io<1>").a(this.b) +return!0}, +kU(a,b,c){var s=null,r=this.$ti.h("io<1>").a(this.b) +return new A.bu(A.bI(s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,!0,s,s,s,s,s,s,s,s,s),!1,!0,!1,!1,r.r,s)}, +zv(a,b,c,d){return this.$ti.h("io<1>").a(this.b).ay.$4(a,b,c,d)}} +A.oz.prototype={} +A.CK.prototype={ +A(a){var s=null,r=A.eh(s,s,s,s,s,s,B.KO),q=this.c +q=q==null?s:"GoException: "+q.a +if(q==null)q="page not found" +return A.e_(r,s,A.f1(A.cO(A.a([new A.Nt(q,s),A.eM(!1,B.KN,B.l,s,s,s,s,s,new A.aIv(a),s,s)],t.p),B.w,B.dg,B.T),s,s),s,s,s,!0,!1,!1,s,s)}} +A.aIv.prototype={ +$0(){return A.bd(this.a).tU(0,"/",null)}, +$S:0} +A.aDU.prototype={ +aMB(a,b){var s,r,q=this,p=a.c +p.toString +if(!(p instanceof A.n9))return q.a3q(b,q.c.b.cN(t.pE.a(p))).b9(new A.aDV(q,b),t.LQ) +s=A.b4("initialMatches") +s.sdX(q.a.US(a.glc(a),p.a)) +if(s.aF().e!=null){r=a.glc(a) +if($.nN)$.mx().pQ(B.cA,"No initial matches: "+r)}return q.a3q(b,s.aF()).b9(new A.aDW(q,b,p),t.LQ)}, +aNX(a){var s,r=a.a +if(r.length===0)return null +s=$.bpS&&B.b.ga1(r) instanceof A.i_?t.x2.a(B.b.ga1(r)).d.c.j(0):a.c.j(0) +return new A.lm(s,null,this.c.a.cN(a))}, +a3q(a,b){var s=this.a.WJ(0,a,b,A.a([],t.k4)) +if(s instanceof A.eq)return new A.ct(s,t.Zs) +return s}, +aDi(a,b,c,d){var s,r +switch(d.a){case 0:b.toString +s=this.a1r() +c.toString +return b.xF(A.biR(c,a,s)) +case 1:s=b.F(0,B.b.ga1(b.a)) +r=this.a1r() +c.toString +return s.xF(A.biR(c,a,r)) +case 2:s=B.b.ga1(b.a) +r=b.F(0,s) +s=s.c +c.toString +return r.xF(A.biR(c,a,s)) +case 3:return a +case 4:return b.c.j(0)!==a.c.j(0)?a:b}}, +a1r(){var s,r,q=J.om(32,t.S) +for(s=this.d,r=0;r<32;++r)q[r]=s.xu(33)+89 +return new A.bP(A.ja(q,0,null),t.O)}} +A.aDV.prototype={ +$1(a){if(a.e!=null&&this.a.b!=null)return this.a.b.$2(this.b,a) +return a}, +$S:236} +A.aDW.prototype={ +$1(a){var s,r=this +if(a.e!=null&&r.a.b!=null)return r.a.b.$2(r.b,a) +s=r.c +return r.a.aDi(a,s.c,s.b,s.d)}, +$S:236} +A.bdw.prototype={ +$1(a){return"\\"+A.h(a.b[0])}, +$S:132} +A.m_.prototype={} +A.ki.prototype={} +A.a8t.prototype={} +A.aST.prototype={} +A.m5.prototype={ +aET(a,b,c){var s=c.e.$2(this.r,this.x) +return this.e.$3(a,b,s)}, +kU(a,b,c){var s=c.e.$2(this.r,this.x) +return this.f.$3(a,b,s)}} +A.akV.prototype={} +A.aQf.prototype={} +A.a1w.prototype={ +aJ(a,b){return A.q(A.cL("One of `build` or `buildPage` must be implemented."))}, +wC(a,b){return B.Fi}, +ace(a,b,c){return null}} +A.aDR.prototype={ +$1(a){var s,r,q=a.w,p=this.a +if(p.b(q))return q +s=$.byG() +A.pZ(a) +r=s.a.get(a) +if(r==null){r=this.b.$1(a) +s.p(0,a,r) +s=r}else s=r +return p.a(s)}, +$S(){return this.a.h("0(bl)")}} +A.aDQ.prototype={ +$2(a,b){return this.a.$1(b).aJ(a,b)}, +$S:626} +A.aDS.prototype={ +$2(a,b){return this.a.$1(b).wC(a,b)}, +$S:627} +A.aDT.prototype={ +$2(a,b){return J.bCx(this.a.$1(b),a,b)}, +$S:238} +A.a8u.prototype={ +To(a,b,c){return A.q(A.cL("One of `builder` or `pageBuilder` must be implemented."))}} +A.aSV.prototype={ +$1(a){var s,r=$.bzh() +A.pZ(a) +s=r.a.get(a) +if(s==null){s=this.a.$1(a) +r.p(0,a,s) +r=s}else r=s +return this.b.a(r)}, +$S(){return this.b.h("0(bl)")}} +A.aSU.prototype={ +$3(a,b,c){return this.a.$1(b).To(a,b,c)}, +$S:629} +A.aSW.prototype={ +$3(a,b,c){this.a.$1(b) +return B.Fi}, +$S:630} +A.CW.prototype={ +uI(a){return A.q(A.a7("Should never be called"))}} +A.aQp.prototype={} +A.BV.prototype={ +alx(a,b,c,d,e,f,g,h,i,j,k,l,a0,a1,a2){var s,r,q,p,o,n=this,m=null +A.bVi(!0) +if($.ar==null)A.bka() +$.ar.toString +s=t.N +s=new A.aQ9(n.r,g,d,A.F(s,s)) +s.axm() +n.a!==$&&A.cl() +n.a=s +n.e!==$&&A.cl() +n.e=new A.aDU(s,m,new A.a7R(new A.akX(s),new A.akW(s)),B.fZ) +r=n.apK(f) +q=$.b5() +n.d!==$&&A.cl() +n.d=new A.Kc(k,new A.lm(r,m,new A.n9(e,m,m,B.nY,t.Qt)),B.ot,q) +r=A.a([],t.tc) +r=A.aa(r,!0,t.JT) +p=new A.Kd(!1,s,$.bz9(),q) +o=t.sd +p.a=new A.a7O(new A.aDX(n),c,b,s,a0,!0,r,new A.BW(A.F(o,t.Js),A.F(t.Kv,o),q),p.gatm(),A.F(t.Bt,t.Pd)) +n.c!==$&&A.cl() +n.c=p}, +tU(a,b,c){var s +if($.nN)$.mx().pQ(B.cA,"going to "+b) +s=this.d +s===$&&A.b() +s.QT(b,new A.n9(c,null,null,B.nY,t.Qt))}, +dv(a,b,c){return this.aMX(a,b,c,c.h("0?"))}, +aMX(a,b,c,d){var s=0,r=A.y(d),q,p=this,o,n,m +var $async$dv=A.u(function(e,f){if(e===1)return A.v(f,r) +while(true)switch(s){case 0:if($.nN)$.mx().pQ(B.cA,"pushing "+a) +o=p.d +o===$&&A.b() +n=p.c +n===$&&A.b() +n=n.d +m=new A.a8($.a9,c.h("a8<0?>")) +o.QT(a,new A.n9(b,new A.aD(m,c.h("aD<0?>")),n,B.a9O,c.h("n9<0>"))) +q=m +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$dv,r)}, +oX(a,b,c){var s,r,q +if($.nN)$.mx().pQ(B.cA,"pushReplacement "+a) +s=this.d +s===$&&A.b() +r=this.c +r===$&&A.b() +r=r.d +q=new A.a8($.a9,c.h("a8<0?>")) +s.QT(a,new A.n9(b,new A.aD(q,c.h("aD<0?>")),r,B.a9P,c.h("n9<0>"))) +return q}, +apK(a){var s,r,q=null +$.ar.toString +s=A.dH($.bL().gKM(),0,q) +r=(s.gaa4()?A.f7(q,q,"/",q,s.gr9(),q):s).j(0) +if(r==="/")return a +else return r}} +A.aDX.prototype={ +$2(a,b){return new A.tO(this.a,b,null)}, +$S:631} +A.aeg.prototype={ +P(a,b){}, +J(a,b){}} +A.bl.prototype={ +l(a,b){var s=this +if(b==null)return!1 +return b instanceof A.bl&&b.b.l(0,s.b)&&b.c===s.c&&b.e==s.e&&b.f===s.f&&b.r===s.r&&J.i(b.w,s.w)&&b.x==s.x&&b.y.l(0,s.y)}, +gv(a){var s=this +return A.X(s.b,s.c,s.d,s.e,s.f,s.r,s.w,s.x,s.y,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}} +A.BX.prototype={} +A.BW.prototype={ +aP2(a){var s,r,q,p,o,n,m={} +m.a=!1 +s=this.b +s=s.gbw(s) +r=A.i2(s,A.k(s).h("z.E")) +for(s=a.gdW(a),s=s.gaj(s),q=this.a;s.u();){p=s.gH(s) +o=p.a +n=q.i(0,o) +if(n!=null){p=p.b +if(!n.l(0,p)){m.a=m.a||r.n(0,o) +q.p(0,o,p)}continue}q.p(0,o,p.b)}q.G9(q,new A.aE_(m,a,r)) +if(m.a)this.ag()}} +A.aE_.prototype={ +$2(a,b){if(this.b.ao(0,a))return!1 +if(this.c.n(0,a)){this.a.a=!0 +return!1}return!0}, +$S:632} +A.ato.prototype={} +A.atq.prototype={} +A.Ia.prototype={ +l(a,b){if(b==null)return!1 +if(b instanceof A.Ia)return J.i(b.a,this.a)&&J.i(b.b,this.b) +return!1}, +gv(a){return(A.cU(A.o(this))^J.T(this.a)^J.T(this.b))>>>0}} +A.a1H.prototype={ +j(a){return"HiveError: "+this.a}} +A.r_.prototype={} +A.Xx.prototype={ +hB(a,b){var s,r,q=b.f,p=q+1 +if(p>b.e)A.q(A.c6("Not enough bytes available.")) +b.f=p +s=b.aNj(b.a[q]) +r=A.bMb(s,null) +if(r==null)A.q(A.cJ("Could not parse BigInt",s,null)) +return r}, +BR(a,b,c){var s=c.j(0),r=s.length +A.bf(r,null) +if(b.b.length-b.d<1)b.bT(1) +b.b[b.d++]=r +b.adC(s,!1)}, +gBJ(){return 17}} +A.J8.prototype={ +hB(a,b){var s=B.e.an(b.MN()),r=new A.Bb(s,!1) +r.Hv(s,!1) +return this.$ti.c.a(r)}, +BR(a,b,c){b.Np(c.a)}, +gBJ(){return 16}} +A.Bb.prototype={} +A.a_K.prototype={ +hB(a,b){var s=B.e.an(b.MN()),r=b.f,q=r+1 +if(q>b.e)A.q(A.c6("Not enough bytes available.")) +b.f=q +return A.mJ(s,b.a[r]>0)}, +BR(a,b,c){var s +b.Np(c.a) +s=c.b +A.bf(s,null) +s=s?1:0 +A.bf(s,null) +if(b.b.length-b.d<1)b.bT(1) +b.b[b.d++]=s}, +gBJ(){return 18}} +A.Xm.prototype={ +FM(a,b,c,d,e,f){return this.aMm(0,b,c,!0,e,f)}, +aMm(a,b,c,d,e,f){var s=0,r=A.y(t.A5),q,p,o,n +var $async$FM=A.u(function(g,h){if(g===1)return A.v(h,r) +while(true)switch(s){case 0:n=$.bAg() +if(n.aa6("window")){p=window +p.toString +p=p.indexedDB||p.webkitIndexedDB||p.mozIndexedDB}else p=self.indexedDB +p.toString +s=3 +return A.t(B.tK.abH(p,b,new A.asC("box"),1),$async$FM) +case 3:o=h +p=o.objectStoreNames +s=!B.mv.n(p,"box")?4:5 +break +case 4:A.rM("Creating objectStore box in database "+b+"...") +if(n.aa6("window")){n=window +n.toString +n=n.indexedDB||n.webkitIndexedDB||n.mozIndexedDB}else n=self.indexedDB +n.toString +p=o.version +if(p==null)p=1 +s=6 +return A.t(B.tK.abH(n,b,new A.asD("box"),p+1),$async$FM) +case 6:o=h +case 5:A.rM("Got object store box in database "+b+".") +q=new A.Oc(o,e,"box",B.OK) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$FM,r)}} +A.asC.prototype={ +$1(a){var s=t.Bk.a(new A.nz([],[]).t1(a.target.result,!1)),r=s.objectStoreNames,q=this.a +if(!B.mv.n(r,q))B.rB.a8h(s,q)}, +$S:239} +A.asD.prototype={ +$1(a){var s=t.Bk.a(new A.nz([],[]).t1(a.target.result,!1)),r=s.objectStoreNames,q=this.a +if(!B.mv.n(r,q))B.rB.a8h(s,q)}, +$S:239} +A.Oc.prototype={ +a28(a){return a.length>=2&&a[0]===144&&a[1]===169}, +aHn(a){var s,r,q,p,o,n,m,l=a.b,k=this.b,j=k==null +if(j)if(l==null)return l +else if(t.E.b(l)){if(!this.a28(l))return l.buffer}else if(typeof l=="number"||A.jl(l)||typeof l=="string"||t.ga.b(l)||t.TP.b(l)||t.yp.b(l))return l +s=this.d +r=new A.XA(s,new Uint8Array(4096)) +r.ady(B.Wm,!1) +if(j)r.ea(0,l) +else{q=new A.XA(s,new Uint8Array(4096)) +q.aPj(0,l,!0) +p=q.b +o=q.d +j=p.length+32 +if(r.b.length-r.dp)A.q(A.c6("Not enough bytes available.")) +r.f=q +o=this.b +if(o==null)return r.hX(0) +else{n=p-q +m=new Uint8Array(n) +l=o.aPJ(r.a,q,n,m,0) +r.f+=n +return A.bo2(m,r.d,l).hX(0)}}else return s}else return a}, +C7(a){var s=this.c,r=a?"readwrite":"readonly" +if(r!=="readonly"&&r!=="readwrite")A.q(A.bU(r,null)) +s=this.a.transaction(s,r).objectStore(s) +s.toString +return s}, +aev(){var s,r,q,p,o=this.C7(!1) +if("getAllKeys" in o&&!0){s=new A.a8($.a9,t.Jk) +r=new A.aD(s,t.rK) +q=this.C7(!1).getAllKeys(null) +q.toString +p=t.I3 +A.je(q,"success",new A.aVZ(r,q),!1,p) +A.je(q,"error",new A.aW_(r,q),!1,p) +return s}else{s=B.hP.abI(o,!0) +return new A.nF(new A.aW0(),s,s.$ti.h("nF")).fL(0)}}, +af_(){var s,r,q,p,o=this.C7(!1) +if("getAll" in o&&!0){s=new A.a8($.a9,t.mg) +r=new A.aD(s,t.fw) +q=o.getAll(null) +q.toString +p=t.I3 +A.je(q,"success",new A.aW1(this,q,r),!1,p) +A.je(q,"error",new A.aW2(r,q),!1,p) +return s}else{s=B.hP.abI(o,!0) +return new A.nF(new A.aW3(),s,s.$ti.h("nF")).fL(0)}}, +Fd(a,b,c,d){return this.aK_(0,b,c,d)}, +aK_(a,b,c,d){var s=0,r=A.y(t.S),q,p=this,o,n,m,l,k,j,i +var $async$Fd=A.u(function(e,f){if(e===1)return A.v(f,r) +while(true)switch(s){case 0:p.d=b +s=3 +return A.t(p.aev(),$async$Fd) +case 3:o=f +s=!d?4:6 +break +case 4:i=J +s=7 +return A.t(p.af_(),$async$Fd) +case 7:n=i.ao(f),m=J.ak(o),l=0 +case 8:if(!n.u()){s=10 +break}k=n.gH(n) +j=l+1 +c.aar(0,new A.lI(m.i(o,l),k,!1,!1,null,-1),!1) +case 9:l=j +s=8 +break +case 10:s=5 +break +case 6:for(n=J.ao(o);n.u();)c.aar(0,new A.lI(n.gH(n),null,!1,!0,null,-1),!1) +case 5:q=0 +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$Fd,r)}, +jc(a,b){return this.aNl(0,b)}, +aNl(a,b){var s=0,r=A.y(t.z),q,p=this +var $async$jc=A.u(function(c,d){if(c===1)return A.v(d,r) +while(true)switch(s){case 0:s=3 +return A.t(B.hP.aeG(p.C7(!1),b.a),$async$jc) +case 3:q=p.a8w(d) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$jc,r)}, +BS(a){return this.aPq(a)}, +aPq(a){var s=0,r=A.y(t.H),q=this,p,o,n,m,l +var $async$BS=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:l=q.C7(!0) +p=a.length,o=0 +case 2:if(!(or.e)A.q(A.c6("Not enough bytes available.")) +s=r.b.getFloat64(q,!0) +r.f+=8 +return s}, +aca(a,b){var s,r,q=this,p="Not enough bytes available." +if(a==null){s=q.f+4 +if(s>q.e)A.q(A.c6(p)) +q.f=s +r=q.a +s-=4 +a=(r[s]|r[s+1]<<8|r[s+2]<<16|r[s+3]<<24)>>>0}s=q.f+a +if(s>q.e)A.q(A.c6(p)) +q.f=s +r=q.a +return b.cN(A.dF(r.buffer,r.byteOffset+(s-a),a))}, +aNi(){return this.aca(null,B.cL)}, +aNj(a){return this.aca(a,B.cL)}, +aNc(){var s,r,q,p,o,n=this,m="Not enough bytes available.",l=n.f+4 +if(l>n.e)A.q(A.c6(m)) +n.f=l +s=n.a +l-=4 +r=(s[l]|s[l+1]<<8|s[l+2]<<16|s[l+3]<<24)>>>0 +if(n.f+r*8>n.e)A.q(A.c6(m)) +q=n.b +p=A.aT(r,0,!0,t.S) +for(o=0;on.e)A.q(A.c6(m)) +n.f=l +s=n.a +l-=4 +r=(s[l]|s[l+1]<<8|s[l+2]<<16|s[l+3]<<24)>>>0 +if(n.f+r*8>n.e)A.q(A.c6(m)) +q=n.b +p=A.aT(r,0,!0,t.i) +for(o=0;oo.e)A.q(A.c6(n)) +o.f=m +s=o.a +m-=4 +r=(s[m]|s[m+1]<<8|s[m+2]<<16|s[m+3]<<24)>>>0 +if(o.f+r>o.e)A.q(A.c6(n)) +q=A.aT(r,!1,!0,t.y) +for(m=o.a,p=0;p0 +return q}, +aNk(){var s,r,q,p,o,n,m,l,k=this,j="Not enough bytes available.",i=k.f+4 +if(i>k.e)A.q(A.c6(j)) +k.f=i +s=k.a +i-=4 +r=(s[i]|s[i+1]<<8|s[i+2]<<16|s[i+3]<<24)>>>0 +q=A.aT(r,"",!0,t.N) +for(i=k.a,p=0;pk.e)A.q(A.c6(j)) +k.f=s +s-=4 +o=(i[s]|i[s+1]<<8|i[s+2]<<16|i[s+3]<<24)>>>0 +s=k.f+o +if(s>k.e)A.q(A.c6(j)) +k.f=s +n=i.buffer +m=i.byteOffset +l=new Uint8Array(n,m+(s-o),o) +q[p]=B.cL.cN(l)}return q}, +aNf(){var s,r,q,p,o=this,n=o.f+4 +if(n>o.e)A.q(A.c6("Not enough bytes available.")) +o.f=n +s=o.a +n-=4 +r=(s[n]|s[n+1]<<8|s[n+2]<<16|s[n+3]<<24)>>>0 +q=A.aT(r,null,!0,t.z) +for(p=0;po.e)A.q(A.c6("Not enough bytes available.")) +o.f=n +s=o.a +n-=4 +r=(s[n]|s[n+1]<<8|s[n+2]<<16|s[n+3]<<24)>>>0 +n=t.z +q=A.F(n,n) +for(p=0;pl)A.q(A.c6(o)) +s=p.a +p.f=m +r=s[n] +if(r===0){n=m+4 +if(n>l)A.q(A.c6(o)) +p.f=n +n-=4 +return(s[n]|s[n+1]<<8|s[n+2]<<16|s[n+3]<<24)>>>0}else if(r===1){n=m+1 +if(n>l)A.q(A.c6(o)) +p.f=n +q=s[m] +n+=q +if(n>l)A.q(A.c6(o)) +p.f=n +return B.cL.cN(A.dF(s.buffer,s.byteOffset+(n-q),q))}else throw A.c(A.fQ("Unsupported key type. Frame might be corrupted."))}, +aN9(){var s,r,q,p,o,n,m,l,k=this,j="Not enough bytes available.",i=k.f+4 +if(i>k.e)A.q(A.c6(j)) +k.f=i +s=k.a +i-=4 +r=(s[i]|s[i+1]<<8|s[i+2]<<16|s[i+3]<<24)>>>0 +i=k.f +s=i+1 +q=k.e +if(s>q)A.q(A.c6(j)) +p=k.a +k.f=s +o=p[i] +i=s+o +if(i>q)A.q(A.c6(j)) +k.f=i +n=A.ja(A.dF(p.buffer,p.byteOffset+(i-o),o),0,null) +m=A.aT(r,null,!0,t.z) +for(l=0;lp.e)A.q(A.c6(o)) +p.f=m +b=p.a[n] +switch(b){case 0:return null +case 1:return B.e.an(p.MN()) +case 2:return p.MN() +case 3:n=p.f +m=n+1 +if(m>p.e)A.q(A.c6(o)) +p.f=m +return p.a[n]>0 +case 4:return p.aNi() +case 5:n=p.f+4 +if(n>p.e)A.q(A.c6(o)) +p.f=n +m=p.a +n-=4 +s=(m[n]|m[n+1]<<8|m[n+2]<<16|m[n+3]<<24)>>>0 +n=p.f +m=n+s +if(m>p.e)A.q(A.c6(o)) +r=B.L.d2(p.a,n,m) +p.f+=s +return r +case 6:return p.aNc() +case 7:return p.aN7() +case 8:return p.aN5() +case 9:return p.aNk() +case 10:return p.aNf() +case 11:return p.aNg() +case 12:return p.aN9() +default:q=p.d.a9q(b) +if(q==null)throw A.c(A.fQ("Cannot read, unknown typeId: "+A.h(b)+". Did you forget to register an adapter?")) +return q.a.hB(0,p)}}, +hX(a){return this.hB(a,null)}} +A.XA.prototype={ +bT(a){var s,r=this,q=r.d,p=(q+a)*2-1 +p|=B.f.dz(p,1) +p|=p>>>2 +p|=p>>>4 +p|=p>>>8 +s=new Uint8Array(((p|p>>>16)>>>0)+1) +B.L.di(s,0,q,r.b) +r.b=s +r.c=null}, +Np(a){var s,r=this +A.bf(a,null) +if(r.b.length-r.d<8)r.bT(8) +s=r.c +if(s==null)s=r.c=A.ks(r.b.buffer,0,null) +s.setFloat64(r.d,a,!0) +r.d+=8}, +adC(a,b){var s,r,q,p,o,n=this +A.bf(a,null) +s=B.cv.cN(a) +if(b){r=s.length +A.bf(r,null) +if(n.b.length-n.d<4)n.bT(4) +q=n.b +p=n.d +q[p]=r +q[p+1]=r>>>8 +q[p+2]=r>>>16 +q[p+3]=r>>>24 +n.d=p+4}A.bf(s,null) +o=s.length +if(n.b.length-n.d>>8 +r[q+2]=s>>>16 +r[q+3]=s>>>24 +o.d=q+4}A.bf(a,null) +p=a.length +if(o.b.length-o.d>>8 +q[p+2]=r>>>16 +q[p+3]=r>>>24 +p+=4 +n.d=p +if(q.length-p>>8 +r[q+2]=s>>>16 +r[q+3]=s>>>24 +j.d=q+4 +p=t.zz.a(a).a +s=p.length +A.bf(s,i) +if(j.b.length-j.d<1)j.bT(1) +j.b[j.d++]=s +s=new A.hQ(p) +A.bf(s,i) +o=s.gt(s) +if(j.b.length-j.d")),r=r.c;s.u();){q=s.d +if(q==null)q=r.a(q) +q=q.gla(q) +if(j.b.length-j.d<1)j.bT(1) +j.b[j.d++]=1 +n=B.cv.cN(q) +q=n.length +if(j.b.length-j.d<1)j.bT(1) +m=j.b +l=j.d +k=l+1 +j.d=k +m[l]=q +if(m.length-k>>0}, +gt(a){return this.e}} +A.w1.prototype={ +gt(a){var s +if(!this.f)A.q(A.fQ("Box has already been closed.")) +s=this.e +s===$&&A.b() +return s.c.e}, +ao(a,b){var s +if(!this.f)A.q(A.fQ("Box has already been closed.")) +s=this.e +s===$&&A.b() +s=s.c.ue(b) +return(s==null?null:s.b)!=null}, +TD(){var s=0,r=A.y(t.H),q,p=this +var $async$TD=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:if(!p.f)A.q(A.fQ("Box has already been closed.")) +p.d.galn() +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$TD,r)}, +abO(){var s=this.e +s===$&&A.b() +if(this.c.$2(s.c.e,s.e))return this.TD() +return A.d3(null,t.H)}, +ad(a){var s=0,r=A.y(t.H),q,p=this,o,n +var $async$ad=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:if(!p.f){s=1 +break}p.f=!1 +o=p.e +o===$&&A.b() +s=3 +return A.t(o.b.a.ad(0),$async$ad) +case 3:o=p.b +n=p.a.toLowerCase() +o.c.F(0,n) +o.b.F(0,n) +s=4 +return A.t(p.d.ad(0),$async$ad) +case 4:case 1:return A.w(q,r)}}) +return A.x($async$ad,r)}, +$iI9:1} +A.XH.prototype={ +lB(a,b){var s,r +if(!this.f)A.q(A.fQ("Box has already been closed.")) +s=this.e +s===$&&A.b() +s=s.c.ue(b) +r=s==null?null:s.b +if(r!=null)return this.$ti.h("1?").a(r.b) +else return null}, +gVH(){return!1}} +A.avz.prototype={ +tw(a){this.a.G(0,new A.Ia(a.a,a.b))}} +A.a2o.prototype={ +gt(a){return this.c.e}, +ao(a,b){var s=this.c.ue(b) +return(s==null?null:s.b)!=null}, +Vk(a,b,c,d){var s,r,q=this,p=b.c,o=b.a +if(!p){if(A.iK(o)&&o>q.f)q.f=o +s=c?b.aOu():b +r=q.c.fu(0,o,s)}else r=q.c.zT(0,o) +s=r!=null +if(s)++q.e +if(d)p=!p||s +else p=!1 +if(p)q.b.tw(b) +return r}, +xf(a,b){return this.Vk(a,b,!1,!0)}, +aar(a,b,c){return this.Vk(a,b,!1,c)}, +aK1(a,b,c){return this.Vk(a,b,c,!0)}} +A.Cr.prototype={ +lB(a,b){return this.aee(0,b,this.$ti.h("1?"))}, +aee(a,b,c){var s=0,r=A.y(c),q,p=this,o,n,m +var $async$lB=A.u(function(d,e){if(d===1)return A.v(e,r) +while(true)switch(s){case 0:if(!p.f)A.q(A.fQ("Box has already been closed.")) +o=p.e +o===$&&A.b() +o=o.c.ue(b) +n=o==null?null:o.b +s=n!=null?3:5 +break +case 3:s=6 +return A.t(p.d.jc(0,n),$async$lB) +case 6:m=e +q=p.$ti.h("1?").a(m) +s=1 +break +s=4 +break +case 5:q=null +s=1 +break +case 4:case 1:return A.w(q,r)}}) +return A.x($async$lB,r)}, +G0(a){return this.aN1(a)}, +aN1(a){var s=0,r=A.y(t.H),q,p=this,o,n,m,l,k,j +var $async$G0=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:if(!p.f)A.q(A.fQ("Box has already been closed.")) +o=A.a([],t.EN) +for(n=A.i1(a,a.r,A.k(a).c);n.u();){m=n.d +o.push(new A.lI(m,a.i(0,m),!1,!1,null,-1)) +if(A.iK(m)){l=p.e +l===$&&A.b() +if(m>l.f)l.f=m}}if(o.length===0){s=1 +break}s=3 +return A.t(p.d.BS(o),$async$G0) +case 3:for(n=o.length,k=0;k"))}, +axJ(a2,a3,a4,a5,a6,a7,a8,a9,b0,b1,b2){var s=0,r=A.y(b2),q,p=2,o,n=[],m=this,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1 +var $async$yN=A.u(function(b3,b4){if(b3===1){o=b4 +s=p}while(true)switch(s){case 0:a2=a2 +a2=a2.toLowerCase() +g=m.b +s=g.ao(0,a2.toLowerCase())?3:5 +break +case 3:g=a2 +q=b1.h("Cq<0>").a(m.a0W(g,!0,b1)) +s=1 +break +s=4 +break +case 5:f=m.c +s=f.ao(0,a2)?6:7 +break +case 6:s=8 +return A.t(f.i(0,a2),$async$yN) +case 8:g=a2 +q=b1.h("Cq<0>").a(m.a0W(g,!0,b1)) +s=1 +break +case 7:l=new A.aD(new A.a8($.a9,t.LR),t.zh) +f.p(0,a2,l.a) +k=null +p=10 +j=null +e=m.d +if(e==null)e=$.byI() +d=a2 +c=m.f +s=13 +return A.t(e.FM(0,d,c,!0,a4,b0),$async$yN) +case 13:j=b4 +e=a2 +d=j +b=new A.Cr(e,m,a6,d,b1.h("Cr<0>")) +b.e=A.bH9(b,new A.avz(new A.ls(null,null,t.Mx)),a5,b1) +k=b +e=k +d=e.d +c=e.b +a=e.e +a===$&&A.b() +s=14 +return A.t(d.Fd(0,c,a,e.gVH()),$async$yN) +case 14:g.p(0,a2,k) +J.bnt(l) +g=k +q=g +n=[1] +s=11 +break +n.push(12) +s=11 +break +case 10:p=9 +a1=o +i=A.ai(a1) +h=A.aH(a1) +g=k +if(g!=null)J.Hr(g) +l.f6(i,h) +throw a1 +n.push(12) +s=11 +break +case 9:n=[2] +case 11:p=2 +f.F(0,a2) +s=n.pop() +break +case 12:case 4:case 1:return A.w(q,r) +case 2:return A.v(o,r)}}) +return A.x($async$yN,r)}, +Mt(a,b,c){return this.aMn(a,b,c,c.h("Cq<0>"))}, +aMn(a,b,c,d){var s=0,r=A.y(d),q,p=this,o +var $async$Mt=A.u(function(e,f){if(e===1)return A.v(f,r) +while(true)switch(s){case 0:o=c.h("Cq<0>") +s=3 +return A.t(p.yN(a,!0,b,A.bRH(),A.bRG(),!0,null,null,null,c),$async$Mt) +case 3:q=o.a(f) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$Mt,r)}, +a0W(a,b,c){var s,r,q=a.toLowerCase(),p=this.b.i(0,q) +if(p!=null){s=p.gVH() +if(s===b&&A.ck(A.k(p).c)===A.ck(c))return c.h("I9<0>").a(p) +else{r=p instanceof A.Cr?"LazyBox<"+A.ck(p.$ti.c).j(0)+">":"Box<"+A.ck(A.k(p).c).j(0)+">" +throw A.c(A.fQ('The box "'+q+'" is already open and of type '+r+"."))}}else throw A.c(A.fQ("Box not found. Did you forget to call Hive.openBox()?"))}} +A.a1G.prototype={} +A.C0.prototype={ +gzu(){var s,r=this,q=r.e +if(q==null){q=r.a +s=r.c.b.i(0,q.toLowerCase()) +if(s==null)throw A.c(A.fQ('To use this list, you have to open the box "'+q+'" first.')) +else if(!(s instanceof A.XH))throw A.c(A.fQ('The box "'+q+'" is a lazy box. You can only use HiveLists with normal boxes.')) +else r.e=s +q=s}return q}, +gdg(){var s,r,q,p,o,n,m,l,k,j,i=this +if(i.r)throw A.c(A.fQ("HiveList has already been disposed.")) +if(i.f){s=A.a([],i.$ti.h("G<1>")) +for(r=i.d,q=r.length,p=0;p")) +for(q=i.b,m=q.length,r=r.c,p=0;p").S(r.z[1]),s=new A.c2(J.ao(s.a),s.b,r.h("c2<1,2>")),q=J.iM(a),r=r.z[1],p=null;s.u();){o=s.a +n=o==null?r.a(o):o +o=n.$ti.c +if(q.gfK(a)===A.ck(o))return n +if(o.b(a)&&p==null)p=n}return p}, +a9q(a){return this.a.i(0,a)}, +MQ(a,b,c){var s,r +if(A.ck(c)===B.pf||A.ck(c)===B.KZ)A.rM("Registering type adapters for dynamic type is must be avoided, otherwise all the write requests to Hive will be handled by given adapter. Please explicitly provide adapter type on registerAdapter method to avoid this kind of issues. For example if you want to register MyTypeAdapter for MyType class you can call like this: registerAdapter(MyTypeAdapter())") +s=a.gBJ() +if(!b){if(s>223)throw A.c(A.fQ("TypeId "+s+" not allowed.")) +s+=32 +if(this.a.i(0,s)!=null){r=A.fQ("There is already a TypeAdapter for typeId "+(s-32)+".") +throw A.c(r)}}this.a.p(0,s,new A.N3(a,s,c.h("N3<0>")))}, +WK(a,b){return this.MQ(a,!1,b)}, +Vt(a){if(a>223)throw A.c(A.fQ("TypeId "+a+" not allowed.")) +a+=32 +return this.a.i(0,a)!=null}} +A.a0_.prototype={ +gN(a){return B.b.gN(this.gdg())}, +ga1(a){return B.b.ga1(this.gdg())}, +gt(a){return this.gdg().length}, +T(a,b){return B.b.T(this.gdg(),b)}, +i(a,b){return this.gdg()[b]}, +ed(a,b){return B.b.ed(this.gdg(),b)}, +jZ(a,b){var s=this.gdg() +return new A.ik(s,A.ab(s).h("@<1>").S(b).h("ik<1,2>"))}, +n(a,b){return B.b.n(this.gdg(),b)}, +ct(a,b){return this.gdg()[b]}, +AC(a,b,c){return B.b.AC(this.gdg(),b,c)}, +af(a,b){return B.b.af(this.gdg(),b)}, +C3(a,b,c){var s=this.gdg() +A.dZ(b,c,s.length,null,null) +return A.fE(s,b,c,A.ab(s).c)}, +h0(a,b,c){return B.b.h0(this.gdg(),this.$ti.c.a(b),c)}, +eX(a,b){return this.h0(a,b,0)}, +AQ(a,b,c){return B.b.AQ(this.gdg(),b,c)}, +vb(a,b){return this.AQ(a,b,0)}, +gai(a){return this.gdg().length===0}, +gdn(a){return this.gdg().length!==0}, +gaj(a){var s=this.gdg() +return new J.e6(s,s.length,A.ab(s).h("e6<1>"))}, +cq(a,b){return B.b.cq(this.gdg(),b)}, +pO(a){return this.cq(a,"")}, +pP(a,b,c){return B.b.pP(this.gdg(),b,c)}, +ig(a,b,c){var s=this.gdg() +return new A.ad(s,b,A.ab(s).h("@<1>").S(c).h("ad<1,2>"))}, +gaI(a){return B.b.gaI(this.gdg())}, +lL(a,b){var s=this.gdg() +return A.fE(s,b,null,A.ab(s).c)}, +d2(a,b,c){return B.b.d2(this.gdg(),b,c)}, +fs(a,b){return this.d2(a,b,null)}, +q2(a,b){var s=this.gdg() +return A.fE(s,0,A.fj(b,"count",t.S),A.ab(s).c)}, +hl(a,b){var s=this.gdg(),r=A.ab(s) +return b?A.a(s.slice(0),r):J.lK(s.slice(0),r.c)}, +fL(a){return this.hl(a,!0)}, +kp(a){var s=this.gdg() +return A.op(s,A.ab(s).c)}, +jm(a,b){var s=this.gdg() +return new A.be(s,b,A.ab(s).h("be<1>"))}, +Nn(a,b){return new A.es(this.gdg(),b.h("es<0>"))}} +A.a22.prototype={ +gt(a){return this.e}, +fu(a,a0,a1){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c=this,b=c.ue(a0) +if(b!=null){s=b.b +b.b=a1 +return s}r=c.b +q=0 +while(!0){if(!(r.abn()&&q<11))break;++q}p=c.d +if(q>=p){c.d=p+1 +q=p}r=q+1 +o=c.$ti +n=A.aT(r,null,!1,o.h("vj<1,2>?")) +r=A.aT(r,0,!1,t.S) +m=new A.vj(a0,a1,n,r,o.h("@<1>").S(o.z[1]).h("vj<1,2>")) +l=c.a +for(k=c.d-1,o=c.c;k>=0;--k){for(;!0;l=j){j=l.c[k] +if(j!=null){i=j.a +i.toString +i=o.$2(a0,i)<0}else i=!0 +if(i)break}if(k>q){j=l.c[k] +if(j!=null){i=j.d +i[k]=i[k]+1}continue}if(k===0)r[0]=1 +else{i=k-1 +h=l.c[i] +g=0 +while(!0){if(h!=null){f=h.a +f.toString +f=o.$2(a0,f)>=0}else f=!1 +if(!f)break +g+=h.d[i] +h=h.c[i]}for(e=k;e<=q;++e)r[e]=r[e]+g +r[k]=r[k]+1}i=l.c +n[k]=i[k] +i[k]=m}for(d=1;d<=q;++d){j=n[d] +if(j!=null){o=j.d +o[d]=o[d]-(r[d]-1)}}++c.e +return null}, +zT(a,b){var s,r,q,p,o,n,m,l,k,j=this,i=j.ue(b) +if(i==null)return null +s=j.a +for(r=j.d-1,q=i.c,p=q.length-1,o=j.c,n=i.d,m=s;r>=0;--r){for(;!0;m=l){l=m.c[r] +if(l!=null){k=l.a +k.toString +k=o.$2(b,k)<=0}else k=!0 +if(k)break}k=m.c +if(r>p){l=k[r] +if(l!=null){k=l.d +k[r]=k[r]-1}}else{l=q[r] +k[r]=l +if(l!=null){k=l.d +k[r]=k[r]+(n[r]-1)}}}q=j.d +o=q-1 +if(p===o&&q>1&&s.c[p]==null)j.d=o;--j.e +return i.b}, +ue(a){var s,r,q,p,o,n=this.a +for(s=this.d-1,r=this.c,q=null;s>=0;--s){q=n.c[s] +while(!0){if(q!=null){p=q.a +p.toString +p=r.$2(a,p)>0}else p=!1 +if(!p)break +o=q.c[s] +n=q +q=o}}if(q!=null){p=q.a +p.toString +p=J.i(r.$2(a,p),0) +r=p}else r=!1 +if(r)return q +return null}, +ar8(a){var s,r,q,p +A.bJ3(a,this,null,null) +s=this.a +for(r=this.d-1,q=null;r>=0;--r){q=s.c[r] +while(!0){if(!(q!=null&&a>=q.d[r]))break +a-=q.d[r] +p=q.c[r] +s=q +q=p}}q.toString +return q}} +A.vj.prototype={} +A.ah6.prototype={ +u(){var s=this.a.c[0] +this.a=s +return s!=null}} +A.ahb.prototype={ +gH(a){var s=this.a.a +s.toString +return s}} +A.RE.prototype={ +gaj(a){var s=this.$ti +return new A.ahb(this.a,s.h("@<1>").S(s.z[1]).h("ahb<1,2>"))}} +A.bcV.prototype={ +$1(a){return a.a.$0()}, +$S:230} +A.a1I.prototype={ +bJ(a){return A.bMC(this)}} +A.agA.prototype={} +A.aow.prototype={ +c_(a,b){this.oJ$=!1 +this.aiM(0,b)}, +cp(){this.oJ$=!1 +this.agE()}, +aP(){var s,r,q=this,p=q.oJ$!==!0||q.ET$.ed(0,new A.bcV()) +q.oJ$=null +q.ET$.ab(0) +if(!p){r=q.x4$ +r.toString +return r}r=q.uV$ +q.j3$=r.b===0?null:r.gN(r) +$.b7=q +try{q.x4$=q.agD()}finally{q.oJ$=null +A.bl2(q) +$.b7=null +r=q.oI$ +if(r!=null&&!r.gai(r)){for(r=q.oI$,s=r.ga1(r);s!=null;s=s.gBj())s.a.m() +q.oI$=null}}r=q.x4$ +r.toString +return r}, +ae(a){return this.YM(null,a)}, +lw(){var s,r,q,p,o,n,m,l=null +this.agF() +p=this.uV$ +if(!p.gai(p))for(s=p.ga1(p),p=t.f6;s!=null;s=s.gBj())try{s.a.m()}catch(o){r=A.ai(o) +q=A.aH(o) +n=A.o(s).j(0) +m=$.jm() +if(m!=null)m.$1(new A.cc(r,q,"hooks library",new A.hu("while disposing "+n,!1,!0,l,l,l,!1,l,B.bk,B.aS,"",!0,!1,l,B.e2,p),l,!1))}}, +fk(){var s,r,q,p,o,n,m,l,k,j=null +for(p=this.uV$,p=A.bky(p,p.$ti.c),o=t.f6,n=p.$ti.c;p.u();){m=p.c +s=m==null?n.a(m):m +try{s.toString}catch(l){r=A.ai(l) +q=A.aH(l) +m=A.o(s).j(0) +k=$.jm() +if(k!=null)k.$1(new A.cc(r,q,"hooks library",new A.hu("while deactivating "+m,!1,!0,j,j,j,!1,j,B.bk,B.aS,"",!0,!1,j,B.e2,o),j,!1))}}this.aiJ()}} +A.bfv.prototype={ +$1(a){return a.aAH("GET",this.a,this.b)}, +$S:636} +A.Xr.prototype={ +Jb(a,b,c,d,e){return this.aAI(a,b,c,d,e)}, +aAH(a,b,c){return this.Jb(a,b,c,null,null)}, +aAI(a,b,c,d,e){var s=0,r=A.y(t.Wd),q,p=this,o,n +var $async$Jb=A.u(function(f,g){if(f===1)return A.v(g,r) +while(true)switch(s){case 0:o=A.brI(a,b) +n=A +s=3 +return A.t(p.iM(0,o),$async$Jb) +case 3:q=n.aPI(g) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$Jb,r)}, +$iavW:1} +A.Xs.prototype={ +UQ(){if(this.w)throw A.c(A.R("Can't finalize a finalized Request.")) +this.w=!0 +return B.MT}, +j(a){return this.a+" "+this.b.j(0)}} +A.asU.prototype={ +$2(a,b){return a.toLowerCase()===b.toLowerCase()}, +$S:261} +A.asV.prototype={ +$1(a){return B.c.gv(a.toLowerCase())}, +$S:118} +A.asW.prototype={ +Zx(a,b,c,d,e,f,g){var s=this.b +if(s<100)throw A.c(A.bU("Invalid status code "+s+".",null))}} +A.Ib.prototype={ +iM(a,b){return this.afj(0,b)}, +afj(a,b){var s=0,r=A.y(t.ZE),q,p=2,o,n=[],m=this,l,k,j,i,h,g,f +var $async$iM=A.u(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:if(m.c)throw A.c(A.bDJ("HTTP request failed. Client is already closed.",b.b)) +b.ags() +s=3 +return A.t(new A.AC(A.bjR(b.y,t.Cm)).acV(),$async$iM) +case 3:j=d +i=new XMLHttpRequest() +i.toString +l=i +i=m.a +i.G(0,l) +h=l +J.bCu(h,b.a,b.b.j(0),!0) +h.responseType="arraybuffer" +h.withCredentials=!1 +b.r.af(0,J.bCh(l)) +k=new A.aD(new A.a8($.a9,t.EW),t.FM) +h=t.fg +g=new A.jd(l,"load",!1,h) +f=t.H +g.gN(g).b9(new A.atI(l,k,b),f) +h=new A.jd(l,"error",!1,h) +h.gN(h).b9(new A.atJ(k,b),f) +J.bCE(l,j) +p=4 +s=7 +return A.t(k.a,$async$iM) +case 7:h=d +q=h +n=[1] +s=5 +break +n.push(6) +s=5 +break +case 4:n=[2] +case 5:p=2 +i.F(0,l) +s=n.pop() +break +case 6:case 1:return A.w(q,r) +case 2:return A.v(o,r)}}) +return A.x($async$iM,r)}, +ad(a){var s,r,q,p +this.c=!0 +for(s=this.a,r=A.ee(s,s.r,A.k(s).c),q=r.$ti.c;r.u();){p=r.d;(p==null?q.a(p):p).abort()}s.ab(0)}} +A.atI.prototype={ +$1(a){var s,r,q,p=this.a,o=A.dF(t.pI.a(A.bv_(p.response)),0,null),n=A.bjR(o,t.Cm),m=p.status +m.toString +s=o.length +r=this.c +q=B.mZ.gacF(p) +p=p.statusText +n=new A.Er(A.bVZ(new A.AC(n)),r,m,p,s,q,!1,!0) +n.Zx(m,s,q,!1,!0,p,r) +this.b.cM(0,n)}, +$S:98} +A.atJ.prototype={ +$1(a){this.a.f6(new A.ID("XMLHttpRequest error.",this.b.b),A.jU())}, +$S:98} +A.AC.prototype={ +acV(){var s=new A.a8($.a9,t.Qy),r=new A.aD(s,t.gI),q=new A.PY(new A.au7(r),new Uint8Array(1024)) +this.ci(q.gjx(q),!0,q.gdU(q),r.gKs()) +return s}} +A.au7.prototype={ +$1(a){return this.a.cM(0,new Uint8Array(A.jk(a)))}, +$S:160} +A.ID.prototype={ +j(a){var s=this.b.j(0) +return"ClientException: "+this.a+", uri="+s}, +$icm:1} +A.aPH.prototype={} +A.DH.prototype={} +A.Er.prototype={} +A.Ij.prototype={} +A.auH.prototype={ +$1(a){return a.toLowerCase()}, +$S:19} +A.Ln.prototype={ +j(a){var s=new A.cV(""),r=""+this.a +s.a=r +r+="/" +s.a=r +s.a=r+this.b +J.f9(this.c.a,new A.aIN(s)) +r=s.a +return r.charCodeAt(0)==0?r:r}} +A.aIL.prototype={ +$0(){var s,r,q,p,o,n,m,l,k,j,i=A.bsi(this.a),h=$.bBT() +i.y5(h) +s=$.bBP() +i.uQ(s) +r=i.gAX().i(0,0) +r.toString +i.uQ("/") +i.uQ(s) +q=i.gAX().i(0,0) +q.toString +i.y5(h) +p=t.N +o=A.F(p,p) +p=i.b +while(!0){n=i.d=B.c.qX(";",p,i.c) +m=i.e=i.c +l=n!=null +n=l?i.e=i.c=n.gcf(n):m +if(!l)break +n=i.d=h.qX(0,p,n) +i.e=i.c +if(n!=null)i.e=i.c=n.gcf(n) +i.uQ(s) +if(i.c!==i.e)i.d=null +n=i.d.i(0,0) +n.toString +i.uQ("=") +m=i.d=s.qX(0,p,i.c) +k=i.e=i.c +l=m!=null +if(l){m=i.e=i.c=m.gcf(m) +k=m}else m=k +if(l){if(m!==k)i.d=null +m=i.d.i(0,0) +m.toString +j=m}else j=A.bS3(i) +m=i.d=h.qX(0,p,i.c) +i.e=i.c +if(m!=null)i.e=i.c=m.gcf(m) +o.p(0,n,j)}i.a9c() +return A.bje(r,q,o)}, +$S:637} +A.aIN.prototype={ +$2(a,b){var s,r,q=this.a +q.a+="; "+a+"=" +s=$.bBG() +s=s.b.test(b) +r=q.a +if(s){q.a=r+'"' +s=q.a+=A.blZ(b,$.bAh(),new A.aIM(),null) +q.a=s+'"'}else q.a=r+b}, +$S:83} +A.aIM.prototype={ +$1(a){return"\\"+A.h(a.i(0,0))}, +$S:132} +A.bf0.prototype={ +$1(a){var s=a.i(0,1) +s.toString +return s}, +$S:132} +A.a5Q.prototype={} +A.qw.prototype={ +sVD(a){var s=this.a,r=this.$ti +this.sk(0,new A.j7(a,s.b,s.c,r.h("@<1>").S(r.z[1]).h("j7<1,2>")))}, +shw(a,b){var s=this.a,r=this.$ti +this.sk(0,new A.j7(s.a,b,s.c,r.h("@<1>").S(r.z[1]).h("j7<1,2>")))}, +sk(a,b){if(J.bht(this.a)!==b.gaL(b))this.vi(b.gaL(b)) +this.vV(0,b)}, +Kb(a,b){var s=this,r=s.a.a,q=s.$ti +s.sk(0,new A.j7(B.b.T(r==null?A.a([],s.$ti.h("G<2>")):r,a),null,b,q.h("@<1>").S(q.z[1]).h("j7<1,2>")))}, +aO0(){this.shw(0,null)}, +jg(a){var s=this.$ti +this.sk(0,new A.j7(null,null,this.z,s.h("@<1>").S(s.z[1]).h("j7<1,2>")))}, +vi(a){var s=this.w +if(s.a.length===0)return +B.b.af(A.hz(s,!0,t.KT),new A.aLh(this,a))}, +abs(a){var s=this.x,r=s==null?null:s.a.length===0 +if(r!==!1)return +s.toString +B.b.af(A.hz(s,!0,this.$ti.h("~(1)")),new A.aLg(this,a))}, +m(){this.x=this.w=null +this.eH()}} +A.aLh.prototype={ +$1(a){if(this.a.w.n(0,a))a.$1(this.b)}, +$S:638} +A.aLg.prototype={ +$1(a){if(this.a.x.n(0,a))a.$1(this.b)}, +$S(){return this.a.$ti.h("~(~(1))")}} +A.j7.prototype={ +gaL(a){var s=this +if(s.gQO()&&s.c!=null&&s.b==null)return B.Fx +if(s.gQO()&&s.c==null)return B.ab3 +if(s.gIv()==null&&s.b==null)return B.Fw +if(s.gQO()&&s.c!=null&&s.b!=null)return B.ab6 +if(s.gIv()!=null&&s.gIv()===0)return B.ab4 +else return B.ab5}, +j(a){return"PagingState(itemList: \u2524"+A.h(this.a)+"\u251c, error: "+A.h(this.b)+", nextPageKey: "+A.h(this.c)+")"}, +l(a,b){var s,r,q=this +if(b==null)return!1 +if(q===b)return!0 +if(b instanceof A.j7){s=b.a +r=q.a +s=(s==null?r==null:s===r)&&J.i(b.b,q.b)&&b.c==q.c}else s=!1 +return s}, +gv(a){return A.X(J.T(this.a),J.T(this.b),J.T(this.c),B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +gIv(){var s=this.a +return s==null?null:s.length}, +gQO(){var s=this.gIv() +return s!=null&&s>0}} +A.le.prototype={ +K(){return"PagingStatus."+this.b}} +A.WY.prototype={} +A.arG.prototype={ +$2(a,b){if(b===this.a)return this.b.$1(a) +return this.c.$2(a,b)}, +$S:33} +A.arH.prototype={ +$2(a,b){return b}, +$S:241} +A.KT.prototype={ +a8(){return new A.RI(B.m)}} +A.RI.prototype={ +aR(){var s=this +s.b5() +s.a.c.P(0,s.gQq()) +s.a1z()}, +aY(a){var s,r,q=this +q.br(a) +s=a.c +if(q.a.c!==s){r=q.gQq() +s.J(0,r) +q.a.c.P(0,r)}}, +m(){this.a.c.J(0,this.gQq()) +this.aZ()}, +a1z(){this.a.d.$0()}, +A(a){return this.a.e}} +A.K1.prototype={ +A(a){return new A.b8(B.j3,A.f1(this.c,null,null),null)}} +A.CU.prototype={ +A(a){var s=null +return A.jE(!1,s,!0,B.SM,s,!0,s,s,s,s,s,s,s,s,s,this.c,s,s,s,s,s,s,s)}} +A.CV.prototype={ +A(a){return B.SL}} +A.aL6.prototype={ +K(){return"PagedLayoutProtocol."+this.b}} +A.D3.prototype={ +a8(){var s=this.$ti +return new A.Sg(B.m,s.h("@<1>").S(s.z[1]).h("Sg<1,2>"))}, +aL9(a,b,c,d){return this.e.$4(a,b,c,d)}, +aHy(a,b,c,d){return this.f.$4(a,b,c,d)}, +aFB(a,b,c,d){return this.r.$4(a,b,c,d)}} +A.Sg.prototype={ +gaqq(){var s=this.a.d +return s.b}, +gawA(){this.a.toString +return new A.b7B(this)}, +gaqr(){var s=this.a.d +return s.d}, +gawC(){var s=this.a.d.e +return s==null?new A.b7C():s}, +gawG(){var s=this.a.d +return s.f}, +A(a){var s=this,r=s.a.c +return new A.KT(r,new A.b7H(s),A.bt3(new A.b7I(s),r,s.$ti.h("j7<1,2>")),null)}, +P2(a,b,c){var s,r,q,p,o=this +if(!o.d){s=A.bdx(o.a.c) +r=o.a +r.toString +q=b===Math.max(0,s-3) +if(r.c.a.c!=null&&q){$.ar.p3$.push(new A.b7A(o)) +o.d=!0}}p=c[b] +return o.a.d.a.$3(a,p,b)}, +awB(a){return this.gawA().$1(a)}} +A.b7B.prototype={ +$1(a){return new A.CU(this.a.a.c.gaO_(),null)}, +$S:641} +A.b7C.prototype={ +$1(a){return B.a9U}, +$S:642} +A.b7H.prototype={ +$0(){var s,r=this.a,q=J.bht(r.a.c.a) +if(q===B.Fw){s=r.a.c +s.abs(s.z)}if(q===B.Fx)r.d=!1}, +$S:0} +A.b7I.prototype={ +$3(a,b,c){var s,r,q,p=null,o=this.a,n=o.a.c.a.a +switch(b.gaL(b).a){case 3:s=o.a +r=s.aL9(a,new A.b7D(o,n),A.bdx(s.c),o.gawC()) +break +case 0:s=o.a +q=A.bdx(s.c) +o.a.toString +r=s.aFB(a,new A.b7E(o,n),q,p) +break +case 2:r=new A.FR(o.gaqr(),!1,o.a.x,p) +break +case 5:s=o.a +r=s.aHy(a,new A.b7F(o,n),A.bdx(s.c),new A.b7G(o)) +break +case 1:r=new A.FR(o.gawG(),!1,o.a.x,p) +break +default:r=new A.FR(o.gaqq(),!1,o.a.x,p)}o.a.toString +return r}, +$S(){return this.a.$ti.h("d(E,j7<1,2>,d?)")}} +A.b7D.prototype={ +$2(a,b){var s=this.b +s.toString +return this.a.P2(a,b,s)}, +$S:33} +A.b7E.prototype={ +$2(a,b){var s=this.b +s.toString +return this.a.P2(a,b,s)}, +$S:33} +A.b7F.prototype={ +$2(a,b){var s=this.b +s.toString +return this.a.P2(a,b,s)}, +$S:33} +A.b7G.prototype={ +$1(a){return this.a.awB(a)}, +$S:12} +A.b7A.prototype={ +$1(a){var s=this.a.a.c,r=s.a.c +r.toString +s.abs(r)}, +$S:6} +A.FR.prototype={ +A(a){var s +if(this.e===B.o4){s=this.c.$1(a) +return new A.a8N(s,!1,null)}else{s=A.f1(this.c.$1(a),null,null) +return s}}} +A.LZ.prototype={ +Kg(a){var s=this,r=s.$ti +return new A.M0(s.p3,s.p4,s.R8,!0,!0,!0,!0,!0,!0,!1,null,r.h("@<1>").S(r.z[1]).h("M0<1,2>"))}} +A.M_.prototype={ +Kg(a){var s=null,r=this.$ti +return new A.M1(this.p3,this.p4,s,!0,!0,!0,s,s,!1,s,r.h("@<1>").S(r.z[1]).h("M1<1,2>"))}} +A.M0.prototype={ +A(a){var s=this,r=s.$ti +return A.br8(s.d,new A.aLa(s),new A.aLb(s),B.o4,new A.aLc(s),s.c,!1,r.c,r.z[1])}} +A.aLa.prototype={ +$4(a,b,c,d){return A.bkf(!0,!0,!0,d,b,c,!0,new A.aL9(this.a))}, +$C:"$4", +$R:4, +$S:643} +A.aL9.prototype={ +$2(a,b){return A.aTA(b,this.a.e)}, +$S:142} +A.aLc.prototype={ +$4(a,b,c,d){return A.bkf(!0,!0,!0,d,b,c,!0,new A.aL7(this.a))}, +$C:"$4", +$R:4, +$S:243} +A.aL7.prototype={ +$2(a,b){return A.aTA(b,this.a.e)}, +$S:142} +A.aLb.prototype={ +$4(a,b,c,d){return A.bkf(!0,!0,!0,d,b,c,!0,new A.aL8(this.a))}, +$C:"$4", +$R:4, +$S:243} +A.aL8.prototype={ +$2(a,b){return A.aTA(b,this.a.e)}, +$S:142} +A.v3.prototype={ +A(a){var s=this,r=s.r,q=r==null?0:1 +return s.e.$2(s.d+q,s.anc(r))}, +anc(a){return A.bnX(!0,!0,!0,a,this.c,this.d,null)}} +A.M1.prototype={ +A(a){var s=this,r=s.$ti +return A.br8(s.d,new A.aLd(s),new A.aLe(s),B.o4,new A.aLf(s),s.c,!1,r.c,r.z[1])}, +P5(a,b,c){var s=A.bnX(!0,!0,!0,c,a,b,null),r=new A.m6(s,null) +return r}} +A.aLd.prototype={ +$4(a,b,c,d){return this.a.P5(b,c,d)}, +$C:"$4", +$R:4, +$S:646} +A.aLf.prototype={ +$4(a,b,c,d){return this.a.P5(b,c,d)}, +$C:"$4", +$R:4, +$S:244} +A.aLe.prototype={ +$4(a,b,c,d){return this.a.P5(b,c,d)}, +$C:"$4", +$R:4, +$S:244} +A.Ba.prototype={ +j(a){return this.a}} +A.aG9.prototype={ +$1(a){return"default"}, +$S:19} +A.uc.prototype={ +j(a){return this.a}} +A.h4.prototype={ +tj(a){var s,r,q,p=this,o=p.e +if(o==null){if(p.d==null){p.m3("yMMMMd") +p.m3("jms")}o=p.d +o.toString +o=p.a36(o) +s=A.ab(o).h("d1<1>") +s=p.e=A.aa(new A.d1(o,s),!0,s.h("ax.E")) +o=s}s=o.length +r=0 +q="" +for(;r=12&&s<24?1:0 +return n.b.gjD().CW[r] +case"c":return n.aIh(a) +case"d":return n.b.ju(B.c.eM(""+A.yc(a),l.length,m)) +case"D":q=A.aMc(A.Dl(a),2,29,0,0,0,0,!1) +if(!A.iK(q))A.q(A.pv(q)) +return n.b.ju(B.c.eM(""+A.bRA(A.ku(a),A.yc(a),A.ku(new A.dl(q,!1))===2),l.length,m)) +case"E":q=n.b +l=l.length>=4?q.gjD().y:q.gjD().Q +return l[B.f.aH(A.a6w(a),7)] +case"G":p=A.Dl(a)>0?1:0 +q=n.b +return l.length>=4?q.gjD().c[p]:q.gjD().b[p] +case"h":s=A.qG(a) +if(A.qG(a)>12)s-=12 +return n.b.ju(B.c.eM(""+(s===0?12:s),l.length,m)) +case"H":return n.b.ju(B.c.eM(""+A.qG(a),l.length,m)) +case"K":return n.b.ju(B.c.eM(""+B.f.aH(A.qG(a),12),l.length,m)) +case"k":return n.b.ju(B.c.eM(""+(A.qG(a)===0?24:A.qG(a)),l.length,m)) +case"L":return n.aIi(a) +case"M":return n.aIf(a) +case"m":return n.b.ju(B.c.eM(""+A.aM7(a),l.length,m)) +case"Q":return n.aIg(a) +case"S":return n.aIe(a) +case"s":return n.b.ju(B.c.eM(""+A.aM8(a),l.length,m)) +case"y":o=A.Dl(a) +if(o<0)o=-o +l=l.length +q=n.b +return l===2?q.ju(B.c.eM(""+B.f.aH(o,100),2,m)):q.ju(B.c.eM(""+o,l,m)) +default:return""}}, +aIf(a){var s=this.a.length,r=this.b +switch(s){case 5:return r.gjD().d[A.ku(a)-1] +case 4:return r.gjD().f[A.ku(a)-1] +case 3:return r.gjD().w[A.ku(a)-1] +default:return r.ju(B.c.eM(""+A.ku(a),s,"0"))}}, +aIe(a){var s=this.b,r=s.ju(B.c.eM(""+A.brp(a),3,"0")),q=this.a.length-3 +if(q>0)return r+s.ju(B.c.eM(""+0,q,"0")) +else return r}, +aIh(a){var s=this.b +switch(this.a.length){case 5:return s.gjD().ax[B.f.aH(A.a6w(a),7)] +case 4:return s.gjD().z[B.f.aH(A.a6w(a),7)] +case 3:return s.gjD().as[B.f.aH(A.a6w(a),7)] +default:return s.ju(B.c.eM(""+A.yc(a),1,"0"))}}, +aIi(a){var s=this.a.length,r=this.b +switch(s){case 5:return r.gjD().e[A.ku(a)-1] +case 4:return r.gjD().r[A.ku(a)-1] +case 3:return r.gjD().x[A.ku(a)-1] +default:return r.ju(B.c.eM(""+A.ku(a),s,"0"))}}, +aIg(a){var s=B.e.an((A.ku(a)-1)/3),r=this.a.length,q=this.b +switch(r){case 4:return q.gjD().ch[s] +case 3:return q.gjD().ay[s] +default:return q.ju(B.c.eM(""+(s+1),r,"0"))}}} +A.aKH.prototype={ +tj(a){var s,r,q=this +if(isNaN(a))return q.fy.z +s=a==1/0||a==-1/0 +if(s){s=B.f.gd6(a)?q.a:q.b +return s+q.fy.y}s=B.f.gd6(a)?q.a:q.b +r=q.k2 +r.a+=s +s=Math.abs(a) +if(q.x)q.aqG(s) +else q.Qi(s) +s=r.a+=B.f.gd6(a)?q.c:q.d +r.a="" +return s.charCodeAt(0)==0?s:s}, +aqG(a){var s,r,q,p=this +if(a===0){p.Qi(a) +p.a0R(0) +return}s=B.e.eA(Math.log(a)/$.bmH()) +r=a/Math.pow(10,s) +q=p.z +if(q>1&&q>p.Q)for(;B.f.aH(s,q)!==0;){r*=10;--s}else{q=p.Q +if(q<1){++s +r/=10}else{--q +s-=q +r*=Math.pow(10,q)}}p.Qi(r) +p.a0R(s)}, +a0R(a){var s=this,r=s.fy,q=s.k2,p=q.a+=r.w +if(a<0){a=-a +q.a=p+r.r}else if(s.w)q.a=p+r.f +r=s.ch +p=B.f.j(a) +if(s.k4===0)q.a+=B.c.eM(p,r,"0") +else s.aBi(r,p)}, +a0L(a){var s +if(B.e.gd6(a)&&!B.e.gd6(Math.abs(a)))throw A.c(A.bU("Internal error: expected positive number, got "+A.h(a),null)) +s=B.e.eA(a) +return s}, +azE(a){if(a==1/0||a==-1/0)return $.bgS() +else return B.e.bi(a)}, +Qi(a1){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a=this,a0={} +a0.a=null +a0.b=a.at +a0.c=a.ay +s=a1==1/0||a1==-1/0 +if(s){a0.a=B.e.an(a1) +r=0 +q=0 +p=0}else{o=a.a0L(a1) +a0.a=o +n=a1-o +a0.d=n +if(B.e.an(n)!==0){a0.a=a1 +a0.d=0}new A.aKM(a0,a,a1).$0() +p=A.fY(Math.pow(10,a0.b)) +m=p*a.dx +l=B.e.an(a.azE(a0.d*m)) +if(l>=m){a0.a=a0.a+1 +l-=m}else if(A.br0(l)>A.br0(B.f.an(a.a0L(a0.d*m))))a0.d=l/m +q=B.f.js(l,p) +r=B.f.aH(l,p)}o=a0.a +if(typeof o=="number"&&o>$.bgS()){k=B.e.eU(Math.log(o)/$.bmH())-$.byT() +j=B.e.bi(Math.pow(10,k)) +if(j===0)j=Math.pow(10,k) +i=B.c.au("0",B.f.an(k)) +o=B.e.an(o/j)}else i="" +h=q===0?"":B.f.j(q) +g=a.avT(o) +f=g+(g.length===0?h:B.c.eM(h,a.dy,"0"))+i +e=f.length +if(a0.b>0)d=a0.c>0||r>0 +else d=!1 +if(e!==0||a.Q>0){f=B.c.au("0",a.Q-e)+f +e=f.length +for(s=a.k2,c=a.k4,b=0;bo))break +p=s}for(o=this.k2,r=this.k4,q=1;qs&&B.f.aH(q-s,r.e)===1)r.k2.a+=r.fy.c}, +j(a){return"NumberFormat("+this.fx+", "+A.h(this.fr)+")"}} +A.aKL.prototype={ +$1(a){return this.a}, +$S:652} +A.aKK.prototype={ +$1(a){return a.Q}, +$S:653} +A.aKM.prototype={ +$0(){}, +$S:0} +A.a5z.prototype={} +A.aKI.prototype={ +awL(){var s,r,q,p,o,n,m,l,k,j=this,i=j.f +i.b=j.IR() +s=j.ay6() +i.d=j.IR() +r=j.b +if(r.MC()===";"){++r.b +i.a=j.IR() +for(q=s.length,p=r.a,o=p.length,n=0;n=o.a.length)return!1 +s=o.MC() +if(s==="'"){r=o.Wp(2) +if(r.length===2&&r[1]==="'"){++o.b +a.a+="'"}else p.w=!p.w +return!0}if(p.w)a.a+=s +else switch(s){case"#":case"0":case",":case".":case";":return!1 +case"\xa4":a.a+=p.d +break +case"%":o=p.f +q=o.e +if(q!==1&&q!==100)throw A.c(B.tb) +o.e=100 +a.a+=p.a.d +break +case"\u2030":o=p.f +q=o.e +if(q!==1&&q!==1000)throw A.c(B.tb) +o.e=1000 +a.a+=p.a.x +break +default:a.a+=s}return!0}, +ay6(){var s,r,q,p,o,n=this,m=new A.cV(""),l=n.b,k=l.a,j=k.length,i=!0 +while(!0){s=l.b +if(!(B.c.U(k,s,Math.min(s+1,j)).length!==0&&i))break +i=n.aMC(m)}l=n.z +if(l===0&&n.y>0&&n.x>=0){r=n.x +if(r===0)r=1 +n.Q=n.y-r +n.y=r-1 +l=n.z=1}q=n.x +if(!(q<0&&n.Q>0)){if(q>=0){j=n.y +j=qj+l}else j=!1 +j=j||n.as===0}else j=!0 +if(j)throw A.c(A.cJ('Malformed pattern "'+k+'"',null,null)) +k=n.y +l=k+l +p=l+n.Q +j=n.f +s=q>=0 +o=s?p-q:0 +j.x=o +if(s){l-=q +j.y=l +if(l<0)j.y=0}l=j.w=(s?q:p)-k +if(j.ax){j.r=k+l +if(o===0&&l===0)j.w=1}l=Math.max(0,n.as) +j.Q=l +if(!n.r)j.z=l +j.as=q===0||q===p +l=m.a +return l.charCodeAt(0)==0?l:l}, +aMC(a){var s,r,q,p,o,n=this,m=null,l=n.b,k=l.MC() +switch(k){case"#":if(n.z>0)++n.Q +else ++n.y +s=n.as +if(s>=0&&n.x<0)n.as=s+1 +break +case"0":if(n.Q>0)throw A.c(A.cJ('Unexpected "0" in pattern "'+l.a,m,m));++n.z +s=n.as +if(s>=0&&n.x<0)n.as=s+1 +break +case",":s=n.as +if(s>0){n.r=!0 +n.f.z=s}n.as=0 +break +case".":if(n.x>=0)throw A.c(A.cJ('Multiple decimal separators in pattern "'+l.j(0)+'"',m,m)) +n.x=n.y+n.z+n.Q +break +case"E":a.a+=k +s=n.f +if(s.ax)throw A.c(A.cJ('Multiple exponential symbols in pattern "'+l.j(0)+'"',m,m)) +s.ax=!0 +s.f=0;++l.b +if(l.MC()==="+"){a.a+=l.hX(0) +s.at=!0}for(r=l.a,q=r.length;p=l.b,o=p+1,p=B.c.U(r,p,Math.min(o,q)),p==="0";){l.b=o +a.a+=p;++s.f}if(n.y+n.z<1||s.f<1)throw A.c(A.cJ('Malformed exponential pattern "'+l.j(0)+'"',m,m)) +return!1 +default:return!1}a.a+=k;++l.b +return!0}} +A.aWA.prototype={ +hB(a,b){var s=this.Wp(b) +this.b+=b +return s}, +hX(a){return this.hB(a,1)}, +Wp(a){var s=this.a,r=this.b +return B.c.U(s,r,Math.min(r+a,s.length))}, +MC(){return this.Wp(1)}, +j(a){return this.a+" at "+this.b}} +A.F3.prototype={ +i(a,b){return A.iL(b)==="en_US"?this.b:this.a59()}, +ao(a,b){if(A.iL(b)!=="en_US")this.a59() +return!0}, +a59(){throw A.c(new A.a2P("Locale data has not been initialized, call "+this.a+"."))}} +A.a2P.prototype={ +j(a){return"LocaleDataException: "+this.a}, +$icm:1} +A.n2.prototype={ +K(){return"PluralCase."+this.b}} +A.xo.prototype={ +l(a,b){if(b==null)return!1 +return b instanceof A.xo&&this.b===b.b}, +bM(a,b){return this.b-b.b}, +gv(a){return this.b}, +j(a){return this.a}, +$icu:1} +A.Cy.prototype={ +j(a){return"["+this.a.a+"] "+this.d+": "+this.b}} +A.Cz.prototype={ +ga9K(){var s=this.b,r=s==null?null:s.a.length!==0,q=this.a +return r===!0?s.ga9K()+"."+q:q}, +gaKR(a){var s,r +if(this.b==null){s=this.c +s.toString +r=s}else{s=$.bgQ().c +s.toString +r=s}return r}, +pQ(a,b){var s,r,q,p,o,n,m=this,l=a.b +if(l>=m.gaKR(m).b){if(l>=2000){s=A.jU() +r="autogenerated stack trace for "+a.j(0)+" "+b}else{r=null +s=null}q=$.a9 +l=m.ga9K() +p=Date.now() +o=$.bqx +$.bqx=o+1 +n=new A.Cy(a,b,l,new A.dl(p,!1),o,r,s,q) +if(m.b==null)m.a3f(n) +else $.bgQ().a3f(n)}}, +a1l(){if(this.b==null){var s=this.f +if(s==null)s=this.f=new A.nL(null,null,t.FH) +return new A.iG(s,A.k(s).h("iG<1>"))}else return $.bgQ().a1l()}, +a3f(a){var s=this.f +return s==null?null:s.G(0,a)}} +A.aHh.prototype={ +$0(){var s,r,q,p=this.a +if(B.c.c8(p,"."))A.q(A.bU("name shouldn't start with a '.'",null)) +if(B.c.hM(p,"."))A.q(A.bU("name shouldn't end with a '.'",null)) +s=B.c.xk(p,".") +if(s===-1)r=p!==""?A.aHg(""):null +else{r=A.aHg(B.c.U(p,0,s)) +p=B.c.cv(p,s+1)}q=new A.Cz(p,r,A.F(t.N,t.JW)) +if(r==null)q.c=B.cA +else r.d.p(0,p,q) +return q}, +$S:654} +A.aKw.prototype={} +A.aKv.prototype={} +A.WI.prototype={ +K(){return"AnimationDirection."+this.b}} +A.tw.prototype={ +a8(){return new A.QU(null,null,B.m)}} +A.QU.prototype={ +A(a){var s=this.f +s===$&&A.b() +if(s)return B.a_ +s=this.d +s===$&&A.b() +return new A.cS(s,!1,this.a.c,null)}, +aR(){var s,r,q,p,o=this,n=null +o.b5() +s=A.bw(B.z,n,o.a.d,0,n,1,n,o) +o.e=s +r=A.c_(o.a.f,s,n) +s=o.a.e===B.fU +q=s?0:1 +p=s?1:0 +s=t.Y +o.d=new A.aw(r,new A.aO(q,p,s),s.h("aw")) +o.e.bS(0) +o.f=!1 +if(o.a.e===B.iz)o.d.a.f4(o.gT7())}, +aY(a){var s,r,q,p,o,n=this +n.br(a) +s=a.c +r=n.a.c +if(A.o(s)===A.o(r)&&J.i(s.a,r.a))return +s=n.d +s===$&&A.b() +r=n.gT7() +s.a.e8(r) +s=n.e +s===$&&A.b() +s.e=n.a.d +s.sk(0,0) +s=n.e +q=A.c_(n.a.f,s,null) +s=n.a.e===B.fU +p=s?0:1 +o=s?1:0 +s=t.Y +n.d=new A.aw(q,new A.aO(p,o,s),s.h("aw")) +n.e.bS(0) +n.f=!1 +if(n.a.e===B.iz)n.d.a.f4(r)}, +m(){var s=this,r=s.d +r===$&&A.b() +r.a.e8(s.gT7()) +r=s.e +r===$&&A.b() +r.m() +s.akH()}, +aEp(a){this.a7(new A.b3n(this,a))}, +$iaN:1} +A.b3n.prototype={ +$0(){var s=this.a +s.f=s.a.e===B.iz&&this.b===B.a5}, +$S:0} +A.Vb.prototype={ +m(){var s=this,r=s.c4$ +if(r!=null)r.J(0,s.ghI()) +s.c4$=null +s.aZ()}, +cn(){this.d3() +this.cT() +this.hJ()}} +A.LS.prototype={ +a8(){return new A.aiL(B.m)}} +A.aiL.prototype={ +aR(){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d +this.b5() +s=this.a +r=s.c +q=s.d +p=s.e +o=s.f +n=s.r +m=s.w +l=s.x +k=s.y +j=s.z +i=s.Q +h=s.ax +g=s.as +f=s.at +e=s.ay +d=s.ch +this.e=A.bq6(e,!1,s.cx,s.cy,n,i,j,k,l,s.db,h,f,r,q,!1,p,m,o,d,g)}, +aY(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b=this +b.br(a) +if(!a.c.l(0,b.a.c)){b.a.toString +b.d=null}s=b.a +r=s.c +q=s.d +p=b.d +o=p!=null +p=o?p.gTn():s.e +n=o?null:s.f +m=s.r +l=s.w +k=s.x +j=s.y +i=s.z +h=s.Q +g=s.ax +f=s.as +e=s.at +d=s.ay +c=s.ch +b.e=A.bq6(d,o,s.cx,s.cy,m,h,i,j,k,s.db,g,e,r,q,!1,p,l,n,c,f)}, +A(a){var s,r=this.a,q=r.as +r=r.at +s=this.e +s===$&&A.b() +return A.cZ(s.A(a),r,q)}} +A.Sj.prototype={ +K(){return"_PlaceholderType."+this.b}} +A.a1V.prototype={ +aJM(){var s=this,r=s.z +r===$&&A.b() +switch(r.a){case 0:return s.gauK() +case 1:return s.gayy() +case 2:return s.gayJ()}}, +A(a){var s,r,q=this,p=q.a,o=q.z +o===$&&A.b() +o=o===B.Li?q.gavM():null +s=q.aJM() +r=q.ax!=null?q.gapU():null +return A.bq5(q.e,q.w,q.x,r,!1,q.y,q.d,s,q.c,p,new A.bP(p,t.xs),o,!1,q.f,q.b)}, +a4B(a,b){var s=this +return A.fr(B.X,A.a([new A.tw(a,s.cx,B.fU,s.cy,null),new A.tw(b,s.ch,B.iz,s.CW,null)],t.p),B.E,B.Km,null)}, +auL(a,b,c,d){if(c==null)return b +return this.D4(a,b)}, +ayz(a,b,c,d){var s,r=this +if(c==null){s=r.ay +if(s.a!==B.F.a)return new A.tw(r.RC(a),s,B.fU,r.cy,null) +else return r.RC(a)}if(d&&!r.db)return r.D4(a,b) +return r.a4B(r.D4(a,b),r.RC(a))}, +ayK(a,b,c,d){this.dx=d +this.dy=c!=null +return b}, +avN(a,b,c){var s,r=this +if(r.dy){if(r.dx)return r.D4(a,b) +return r.a4B(r.D4(a,b),r.RH(a,null))}s=r.ay +if(s.a!==B.F.a)return new A.tw(r.RH(a,c),s,B.fU,r.cy,null) +else return r.RH(a,c)}, +D4(a,b){var s=this.Q +if(s!=null)return s.$2(a,b) +else return b}, +apV(a,b,c){var s=this.ax +if(s==null)throw A.c(A.R("Try to build errorBuilder with errorBuilder null")) +return s.$3(a,b,c)}, +RH(a,b){var s=this.at +if(s==null)throw A.c(A.R("Try to build progressIndicatorBuilder with progressIndicatorBuilder null")) +return s.$2(a,b)}, +RC(a){var s=null,r=this.as +if(r!=null)return r.$1(a) +return A.cP(s,s,B.l,s,s,s,s,s,s,s,s)}, +ap_(){if(this.as!=null)return B.aoB +if(this.at!=null)return B.Li +return B.aoA}} +A.xV.prototype={ +l(a,b){var s,r=this +if(b==null)return!1 +if(r!==b)s=b instanceof A.xV&&A.o(r)===A.o(b)&&r.a===b.a&&r.b===b.b&&r.c===b.c&&r.d===b.d&&r.e===b.e&&r.f==b.f +else s=!0 +return s}, +gv(a){var s=this +return B.c.gv(s.a)^B.c.gv(s.b)^B.c.gv(s.c)^B.c.gv(s.d)^B.c.gv(s.e)^J.T(s.f)}, +j(a){var s=this +return"PackageInfo(appName: "+s.a+", buildNumber: "+s.d+", packageName: "+s.b+", version: "+s.c+", buildSignature: "+s.e+", installerStore: "+A.h(s.f)+")"}} +A.aL1.prototype={ +jn(a){var s=0,r=A.y(t.BB),q,p=this,o,n,m,l,k,j,i,h,g,f +var $async$jn=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:g=Date.now() +f=window.document.baseURI +f.toString +o=A.dH(f,0,null) +n=A.bF("[^/]+\\.html.*",!0,!1,!1) +f=A.bNy(o) +m=o.gdN(o) +l=f+A.eC(m,n,"") +k="version.json?cachebuster="+g +s=3 +return A.t(A.bSE(A.dH(B.c.hM(l,"/")?l+k:l+"/"+k,0,null)),$async$jn) +case 3:j=c +i=p.arq(j) +g=J.ak(i) +f=g.i(i,"app_name") +if(f==null)f="" +m=g.i(i,"version") +if(m==null)m="" +h=g.i(i,"build_number") +if(h==null)h="" +g=g.i(i,"package_name") +q=new A.LX(f,g==null?"":g,m,h,"",null) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$jn,r)}, +arq(a){var s,r +if(a.b===200)try{s=B.at.uK(0,A.bS1(J.b3(A.bOo(a.e).c.a,"charset")).hu(0,a.w),null) +return s}catch(r){return A.F(t.N,t.z)}else return A.F(t.N,t.z)}} +A.aJ2.prototype={ +jn(a){var s=0,r=A.y(t.BB),q,p,o,n,m,l,k,j +var $async$jn=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:s=3 +return A.t(B.a9F.Vq("getAll",t.N,t.z),$async$jn) +case 3:j=c +j.toString +p=J.ak(j) +o=p.i(j,"appName") +if(o==null)o="" +n=p.i(j,"packageName") +if(n==null)n="" +m=p.i(j,"version") +if(m==null)m="" +l=p.i(j,"buildNumber") +if(l==null)l="" +k=p.i(j,"buildSignature") +if(k==null)k="" +q=new A.LX(o,n,m,l,k,A.ae(p.i(j,"installerStore"))) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$jn,r)}} +A.LX.prototype={} +A.aL0.prototype={} +A.YC.prototype={ +a6t(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){var s +A.bvV("absolute",A.a([b,c,d,e,f,g,h,i,j,k,l,m,n,o,p],t._m)) +s=this.a +s=s.jQ(b)>0&&!s.ve(b) +if(s)return b +s=this.b +return this.aaY(0,s==null?A.beO():s,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p)}, +aDX(a,b){return this.a6t(a,b,null,null,null,null,null,null,null,null,null,null,null,null,null,null)}, +aH9(a){var s,r,q=A.oF(a,this.a) +q.G8() +s=q.d +r=s.length +if(r===0){s=q.b +return s==null?".":s}if(r===1){s=q.b +return s==null?".":s}B.b.hj(s) +q.e.pop() +q.G8() +return q.j(0)}, +aaY(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q){var s=A.a([b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q],t._m) +A.bvV("join",s) +return this.aKF(new A.es(s,t.Ri))}, +LT(a,b,c){return this.aaY(a,b,c,null,null,null,null,null,null,null,null,null,null,null,null,null,null)}, +aKF(a){var s,r,q,p,o,n,m,l,k +for(s=a.gaj(a),r=new A.jc(s,new A.awx(),a.$ti.h("jc")),q=this.a,p=!1,o=!1,n="";r.u();){m=s.gH(s) +if(q.ve(m)&&o){l=A.oF(m,q) +k=n.charCodeAt(0)==0?n:n +n=B.c.U(k,0,q.Bu(k,!0)) +l.b=n +if(q.FG(n))l.e[0]=q.gvH() +n=""+l.j(0)}else if(q.jQ(m)>0){o=!q.ve(m) +n=""+m}else{if(!(m.length!==0&&q.TH(m[0])))if(p)n+=q.gvH() +n+=m}p=q.FG(m)}return n.charCodeAt(0)==0?n:n}, +rA(a,b){var s=A.oF(b,this.a),r=s.d,q=A.ab(r).h("be<1>") +q=A.aa(new A.be(r,new A.awy(),q),!0,q.h("z.E")) +s.d=q +r=s.b +if(r!=null)B.b.fu(q,0,r) +return s.d}, +VU(a,b){var s +if(!this.awy(b))return b +s=A.oF(b,this.a) +s.VT(0) +return s.j(0)}, +awy(a){var s,r,q,p,o,n,m,l,k=this.a,j=k.jQ(a) +if(j!==0){if(k===$.Wf())for(s=0;s0)return o.VU(0,a) +if(m.jQ(a)<=0||m.ve(a))a=o.aDX(0,a) +if(m.jQ(a)<=0&&m.jQ(s)>0)throw A.c(A.brd(n+a+'" from "'+s+'".')) +r=A.oF(s,m) +r.VT(0) +q=A.oF(a,m) +q.VT(0) +l=r.d +if(l.length!==0&&J.i(l[0],"."))return q.j(0) +l=r.b +p=q.b +if(l!=p)l=l==null||p==null||!m.Wo(l,p) +else l=!1 +if(l)return q.j(0) +while(!0){l=r.d +if(l.length!==0){p=q.d +l=p.length!==0&&m.Wo(l[0],p[0])}else l=!1 +if(!l)break +B.b.jO(r.d,0) +B.b.jO(r.e,1) +B.b.jO(q.d,0) +B.b.jO(q.e,1)}l=r.d +if(l.length!==0&&J.i(l[0],".."))throw A.c(A.brd(n+a+'" from "'+s+'".')) +l=t.N +B.b.Ff(q.d,0,A.aT(r.d.length,"..",!1,l)) +p=q.e +p[0]="" +B.b.Ff(p,1,A.aT(r.d.length,m.gvH(),!1,l)) +m=q.d +l=m.length +if(l===0)return"." +if(l>1&&J.i(B.b.ga1(m),".")){B.b.hj(q.d) +m=q.e +m.pop() +m.pop() +m.push("")}q.b="" +q.G8() +return q.j(0)}, +ad4(a){var s,r=this.a +if(r.jQ(a)<=0)return r.aci(a) +else{s=this.b +return r.SR(this.LT(0,s==null?A.beO():s,a))}}, +Ws(a){var s,r,q=this,p=A.beb(a) +if(p.gfg()==="file"&&q.a===$.We())return p.j(0) +else if(p.gfg()!=="file"&&p.gfg()!==""&&q.a!==$.We())return p.j(0) +s=q.VU(0,q.a.FR(A.beb(p))) +r=q.aNs(s) +return q.rA(0,r).length>q.rA(0,s).length?s:r}} +A.awx.prototype={ +$1(a){return a!==""}, +$S:10} +A.awy.prototype={ +$1(a){return a.length!==0}, +$S:10} +A.bek.prototype={ +$1(a){return a==null?"null":'"'+a+'"'}, +$S:657} +A.aG4.prototype={ +aeS(a){var s=this.jQ(a) +if(s>0)return B.c.U(a,0,s) +return this.ve(a)?a[0]:null}, +aci(a){var s,r=null,q=a.length +if(q===0)return A.f7(r,r,r,r,r,r) +s=A.bi1(r,this).rA(0,a) +if(this.qT(a.charCodeAt(q-1)))B.b.G(s,"") +return A.f7(r,r,r,s,r,r)}, +Wo(a,b){return a===b}} +A.a6a.prototype={ +gTh(){var s=this,r=t.N,q=new A.a6a(s.a,s.b,s.c,A.hz(s.d,!0,r),A.hz(s.e,!0,r)) +q.G8() +r=q.d +if(r.length===0){r=s.b +return r==null?"":r}return B.b.ga1(r)}, +gVe(){var s=this.d +if(s.length!==0)s=J.i(B.b.ga1(s),"")||!J.i(B.b.ga1(this.e),"") +else s=!1 +return s}, +G8(){var s,r,q=this +while(!0){s=q.d +if(!(s.length!==0&&J.i(B.b.ga1(s),"")))break +B.b.hj(q.d) +q.e.pop()}s=q.e +r=s.length +if(r!==0)s[r-1]=""}, +VT(a){var s,r,q,p,o,n,m=this,l=A.a([],t.s) +for(s=m.d,r=s.length,q=0,p=0;p0){s=B.c.h0(a,"\\",s+1) +if(s>0)return s}return r}if(r<3)return 0 +if(!A.bwN(a.charCodeAt(0)))return 0 +if(a.charCodeAt(1)!==58)return 0 +r=a.charCodeAt(2) +if(!(r===47||r===92))return 0 +return 3}, +jQ(a){return this.Bu(a,!1)}, +ve(a){return this.jQ(a)===1}, +FR(a){var s,r +if(a.gfg()!==""&&a.gfg()!=="file")throw A.c(A.bU("Uri "+a.j(0)+" must have scheme 'file:'.",null)) +s=a.gdN(a) +if(a.gpJ(a)===""){if(s.length>=3&&B.c.c8(s,"/")&&A.bwP(s,1))s=B.c.vt(s,"/","")}else s="\\\\"+a.gpJ(a)+s +r=A.eC(s,"/","\\") +return A.lv(r,0,r.length,B.O,!1)}, +SR(a){var s,r,q=null,p=A.oF(a,this),o=p.b +o.toString +if(B.c.c8(o,"\\\\")){s=new A.be(A.a(o.split("\\"),t.s),new A.aZZ(),t.gD) +B.b.fu(p.d,0,s.ga1(s)) +if(p.gVe())B.b.G(p.d,"") +return A.f7(q,s.gN(s),q,p.d,q,"file")}else{if(p.d.length===0||p.gVe())B.b.G(p.d,"") +o=p.d +r=p.b +r.toString +r=A.eC(r,"/","") +B.b.fu(o,0,A.eC(r,"\\","")) +return A.f7(q,q,q,p.d,q,"file")}}, +aFv(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}, +Wo(a,b){var s,r +if(a===b)return!0 +s=a.length +if(s!==b.length)return!1 +for(r=0;r>>0}, +bM(a,b){var s,r,q=this,p=q.a,o=b.a +if(p!==o)return B.f.bM(p,o) +p=q.b +o=b.b +if(p!==o)return B.f.bM(p,o) +p=q.c +o=b.c +if(p!==o)return B.f.bM(p,o) +p=q.d +o=p.length===0 +if(o&&b.d.length!==0)return 1 +s=b.d +if(s.length===0&&!o)return-1 +r=q.a_L(p,s) +if(r!==0)return r +p=q.e +o=p.length===0 +if(o&&b.e.length!==0)return-1 +s=b.e +if(s.length===0&&!o)return 1 +return q.a_L(p,s)}, +j(a){return this.f}, +gTq(){var s,r,q=this,p=q.a,o=q.b,n=q.c,m=q.d +m=m.length!==0?B.b.cq(m,"."):null +s=q.e +s=s.length!==0?B.b.cq(s,"."):null +r=""+p+"."+o+"."+n +if(m!=null)r+="-"+m +return A.bt4(p,o,n,m,s,s!=null?r+("+"+s):r).f}, +a_L(a,b){var s,r,q,p,o +for(s=0;r=a.length,q=b.length,s").S(this.b).h("eZ<1,2>").a(a).go}, +$S(){return this.a.h("@<0>").S(this.b).h("cd<1>(aV>)")}} +A.bd0.prototype={ +$1(a){return this.a.h("eZ,0>").a(a).iy$}, +$S(){return this.a.h("cd>(aV>)")}} +A.pD.prototype={} +A.hO.prototype={ +got(){var s=this.a +s===$&&A.b() +return s}, +S9(a){A.k(this).h("o_,hO.0>").a(a) +this.a!==$&&A.cl() +this.a=a}} +A.An.prototype={} +A.fm.prototype={ +gcr(){var s,r,q=this,p=q.ch +if(p===$){s=A.k(q) +r=A.bNX(q,s.h("fm.0"),s.h("fm.T")) +p!==$&&A.am() +q.ch=r +p=r}return p}, +gqM(){var s,r=this,q=r.CW +if(q===$){s=A.bNW(r,A.k(r).h("fm.T")) +q!==$&&A.am() +r.CW=s +q=s}return q}, +bJ(a){var s=A.k(this) +return A.bD5(this,s.h("fm.0"),s.h("fm.T"))}, +rh(a){return A.k(this).h("An").a(a).aP()}} +A.o_.prototype={} +A.bY.prototype={ +sd8(a,b){var s=this +b.vg(0,s.gFK(),s.gtx(s),s.gaxg())}, +Gv(a,b){return A.bpM(a,b)}, +Ru(a,b){var s,r=this,q=A.k(r) +A.bhJ(r,a,b,q.h("bY.T")) +if(r.i8$==null){s=new A.a8($.a9,q.h("a8")) +r.i8$=new A.aD(s,q.h("aD")) +r.iy$.stI(0,new A.e9(s,q.h("e9>")))}}, +axh(a){return this.Ru(a,!1)}, +B8(a,b,c){var s,r,q,p,o=this +if(o.dy)A.bhJ(o,b,c,A.k(o).h("bY.T")) +s=o.i8$ +if(s!=null){A.K7(s.a,A.k(o).h("bY.T")) +s.f6(b.d,b.e) +o.i8$=null}else if(o.dy){r=A.k(o) +q=r.h("bY.T") +p=A.oi(b.d,b.e,q) +A.K7(p,q) +o.iy$.stI(0,new A.e9(p,r.h("e9>")))}}, +vj(a,b){return this.B8(a,b,!1)}, +VY(a,b){var s,r,q=this +if(q.dy)A.bhJ(q,a,b,A.k(q).h("bY.T")) +s=q.i8$ +if(s!=null){s.cM(0,a.a) +q.i8$=null}else if(q.dy){r=A.k(q) +q.iy$.stI(0,new A.e9(A.d3(a.a,r.h("bY.T")),r.h("e9>")))}}, +j9(a){return this.VY(a,!1)}, +aJe(a,b){this.a1x(new A.aD3(this,a),b)}, +awf(){var s=this.c +s===$&&A.b() +return new A.iA("The provider "+s.j(0)+u.e)}, +a9S(a,b){this.a1x(new A.aD0(this,a),b)}, +a1x(a,b){var s,r,q,p,o,n=this,m=A.k(n).h("bY.T"),l=!b +n.Ru(A.bhI(m),l) +try{p=a.$4$data$done$error$last(new A.aCV(n,b),new A.aCW(n),new A.aCX(n,b),new A.aCY(n)) +n.hO$=p +s=p}catch(o){r=A.ai(o) +q=A.aH(o) +n.B8(0,A.HS(r,q,m),l)}}} +A.aD3.prototype={ +$4$data$done$error$last(a,b,c,d){var s,r=this.b.$0(),q=r.gh1()?r:r.Td(new A.aD2(this.a)),p=this.a +A.bOU(q,d,p.gawe(),A.k(p).h("bY.T")) +s=q.h2(a,b,c) +return s.gdP(s)}, +$S(){return A.k(this.a).h("U<~>()({data!~(bY.T),done!~(),error!~(B,cz),last!~(U,~())})")}} +A.aD2.prototype={ +$1(a){return a.aQ(0)}, +$S(){return A.k(this.a).h("~(lo)")}} +A.aD0.prototype={ +$4$data$done$error$last(a,b,c,d){var s,r={},q=this.b.$0(),p=this.a +if(!A.k(p).h("U").b(q)){a.$1(q) +b.$0() +return null}r.a=!0 +s=new A.aD1(r) +q.fe(new A.aCZ(r,p,a,b),new A.aD_(r,c,b),t.P) +d.$2(q,s) +return s}, +$S(){return A.k(this.a).h("~()?({data!~(bY.T),done!~(),error!~(B,cz),last!~(U,~())})")}} +A.aD1.prototype={ +$0(){this.a.a=!1}, +$S:0} +A.aCZ.prototype={ +$1(a){if(!this.a.a)return +this.c.$1(a) +this.d.$0()}, +$S(){return A.k(this.b).h("aE(bY.T)")}} +A.aD_.prototype={ +$2(a,b){if(!this.a.a)return +this.b.$2(a,b) +this.c.$0()}, +$S:23} +A.aCV.prototype={ +$1(a){var s=this.a +s.VY(A.X6(a,A.k(s).h("bY.T")),!this.b)}, +$S(){return A.k(this.a).h("~(bY.T)")}} +A.aCX.prototype={ +$2(a,b){var s=this.a +s.B8(0,A.HS(a,b,A.k(s).h("bY.T")),!this.b)}, +$S:13} +A.aCY.prototype={ +$2(a,b){var s=this.a +s.i9$=a +s.hN$=b}, +$S(){return A.k(this.a).h("~(U,~())")}} +A.aCW.prototype={ +$0(){var s=this.a,r=s.hN$ +if(r!=null)r.$0() +s.i9$=s.hN$=null}, +$S:0} +A.b0h.prototype={ +$1(a){}, +$S(){return A.k(this.a).h("aE(hk.T)")}} +A.b0i.prototype={ +$1(a){}, +$S:247} +A.mB.prototype={ +tS(a,b){this.aj0(a,b) +b.$1(this.go)}, +Gv(a,b){var s=this.go.f +if(s==null)s=null +else s=s.gvQ()==null?null:A.bpM(a,b) +return s!==!1}} +A.eZ.prototype={ +zN(a,b){var s=this,r=A.k(s),q=r.h("pD").a(s.d),p=s.go,o=p.f +if(o==null){o=A.aPQ(new A.arX(s,q),r.h("eZ.0")) +p.stI(0,o)}o.GC(new A.arY(s,q,b),new A.arZ(s,b))}} +A.arX.prototype={ +$0(){var s=this.b.y.$0() +s.S9(this.a) +return s}, +$S(){return A.k(this.a).h("eZ.0()")}} +A.arZ.prototype={ +$2(a,b){var s=this.a +s.B8(0,A.HS(a,b,A.k(s).h("eZ.T")),!this.b)}, +$S:23} +A.arY.prototype={ +$1(a){var s=this.a +s.a9S(new A.arW(s,this.b,a),this.c)}, +$S(){return A.k(this.a).h("aE(eZ.0)")}} +A.arW.prototype={ +$0(){return this.b.rh(this.c)}, +$S(){return A.k(this.a).h("eZ.T/()")}} +A.bdA.prototype={ +$1(a){return this.a.a=new A.e9(a,this.b.h("e9<0>"))}, +$S(){return this.b.h("~(0)")}} +A.bdC.prototype={ +$2(a,b){this.a.a=new A.fq(a,b,this.b.h("fq<0>"))}, +$S:23} +A.bdB.prototype={ +$0(){var s=this,r=s.a.a,q=s.b,p=s.d +if(r!=null)r.qV(0,new A.bdy(q,p),new A.bdz(q,p)) +else{A.K7(q.a,p) +q.f6(s.c.$0(),A.jU())}}, +$S:0} +A.bdy.prototype={ +$1(a){return this.a.cM(0,a.a)}, +$S(){return this.b.h("~(e9<0>)")}} +A.bdz.prototype={ +$1(a){var s=this.a +A.K7(s.a,this.b) +s.f6(a.a,a.b)}, +$S(){return this.b.h("aE(fq<0>)")}} +A.Eq.prototype={} +A.mG.prototype={ +S9(a){A.k(this).h("Ao,mG.0>").a(a) +this.a!==$&&A.cl() +this.a=a}} +A.vV.prototype={} +A.HT.prototype={ +bJ(a){var s=null,r=this.$ti,q=t.B +return new A.Ao(s,!1,new A.cd(A.aT(0,s,!1,r.h("dT<1>?")),r.h("cd<1>")),new A.cd(A.aT(0,s,!1,r.h("dT>?")),r.h("cd>")),s,s,s,s,this,A.a([],r.h("G>>")),A.a([],q),A.a([],t._),A.a([],q),A.cx(s,s,s,t.M,t.K),r.h("@<1>").S(r.z[1]).h("Ao<1,2>"))}} +A.Ao.prototype={} +A.Od.prototype={ +zN(a,b){var s=this,r=s.$ti,q=r.h("Eq<1,2>").a(s.d),p=s.go,o=p.f +if(o==null){o=A.aPQ(new A.aW8(s,q),r.c) +p.stI(0,o)}o.GC(new A.aW9(s,q,b),new A.aWa(s,b))}} +A.aW8.prototype={ +$0(){var s=this.b.y.$0() +s.S9(this.a) +return s}, +$S(){return this.a.$ti.h("1()")}} +A.aWa.prototype={ +$2(a,b){var s=this.a +s.B8(0,A.HS(a,b,s.$ti.z[1]),!this.b)}, +$S:23} +A.aW9.prototype={ +$1(a){var s=this.a +s.aJe(new A.aW7(s,this.b,a),this.c)}, +$S(){return this.a.$ti.h("aE(1)")}} +A.aW7.prototype={ +$0(){return this.b.$ti.h("vV<2>").a(this.c).aP()}, +$S(){return this.a.$ti.h("bA<2>()")}} +A.hk.prototype={ +p_(){var s=this,r=s.hN$ +if(r!=null)r.$0() +s.i9$=s.hN$=null +r=s.hO$ +if(r!=null)r.$0() +s.hO$=null +s.Hn()}, +m(){var s,r,q=this,p=q.i8$ +if(p!=null){s=p.a +A.K7(s,A.k(q).h("hk.T")) +if(q.i9$!=null){r=q.hO$ +if(r!=null)s.fe(new A.b0h(q),new A.b0i(),t.P).fv(r) +q.hO$=q.hN$=q.i9$=null}else{s=q.c +s===$&&A.b() +p.f6(new A.iA("The provider "+s.j(0)+u.e),A.jU())}}q.Z7()}, +tS(a,b){this.Oq(a,b) +b.$1(this.iy$)}} +A.PC.prototype={ +p_(){var s=this.dQ$ +if(s!=null)B.b.ab(s) +this.Zm()}} +A.PD.prototype={} +A.PI.prototype={ +p_(){var s=this.dQ$ +if(s!=null)B.b.ab(s) +this.Zm()}} +A.PJ.prototype={} +A.C.prototype={ +j(a){var s,r=this,q=t.s,p=A.a([],q) +if(r.gjI()&&!(r instanceof A.eY))p.push("isLoading: "+r.gjI()) +if(r.goR())p.push("value: "+A.h(r.gk(r))) +if(r.ghw(r)!=null)B.b.I(p,A.a(["error: "+A.h(r.ghw(r)),"stackTrace: "+A.h(r.gjU())],q)) +s=B.b.cq(p,", ") +return A.o(r).j(0)+"("+s+")"}, +l(a,b){var s=this +if(b==null)return!1 +return A.o(s)===J.a1(b)&&A.k(s).h("C<1>").b(b)&&b.gjI()===s.gjI()&&b.goR()===s.goR()&&J.i(b.ghw(b),s.ghw(s))&&b.gjU()==s.gjU()&&J.i(A.bW(b),A.bW(s))}, +gv(a){var s=this +return A.X(A.o(s),s.gjI(),s.goR(),A.bW(s),s.ghw(s),s.gjU(),B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}} +A.fL.prototype={ +goR(){return!0}, +Fx(a,b,c,d){return b.$1(this)}, +vg(a,b,c,d){return this.Fx(a,b,c,d,t.z)}, +zM(a,b){return this}, +KC(a){return this.zM(a,!0)}, +Pa(a){var s=this +if(A.ck(s.$ti.c)===A.ck(a))return a.h("C<0>").a(s) +return new A.fL(a.a(s.a),s.b,s.c,s.d,a.h("fL<0>"))}, +gk(a){return this.a}, +gjI(){return this.b}, +ghw(a){return this.c}, +gjU(){return this.d}} +A.eY.prototype={ +gjI(){return!0}, +Pa(a){var s=this +if(A.ck(s.$ti.c)===A.ck(a))return a.h("C<0>").a(s) +return new A.eY(s.a,a.h("0?").a(s.b),s.c,s.d,a.h("eY<0>"))}, +Fx(a,b,c,d){return d.$1(this)}, +vg(a,b,c,d){return this.Fx(a,b,c,d,t.z)}, +zM(a,b){var s=this +if(b)return a.vg(0,new A.arQ(s),new A.arR(s),new A.arS(s)) +else return a.vg(0,new A.arT(s),new A.arU(s),new A.arV(s))}, +KC(a){return this.zM(a,!0)}, +goR(){return this.a}, +gk(a){return this.b}, +ghw(a){return this.c}, +gjU(){return this.d}} +A.arQ.prototype={ +$1(a){return new A.fL(a.a,!0,a.c,a.d,this.a.$ti.h("fL<1>"))}, +$S(){return this.a.$ti.h("fL<1>(fL<1>)")}} +A.arR.prototype={ +$1(a){return new A.eu(!0,a.b,A.bW(a),a.d,a.e,this.a.$ti.h("eu<1>"))}, +$S(){return this.a.$ti.h("eu<1>(eu<1>)")}} +A.arS.prototype={ +$1(a){return this.a}, +$S(){return this.a.$ti.h("eY<1>(eY<1>)")}} +A.arT.prototype={ +$1(a){return new A.eY(!0,A.bW(a),a.c,a.d,this.a.$ti)}, +$S(){return this.a.$ti.h("eY<1>(fL<1>)")}} +A.arU.prototype={ +$1(a){return new A.eY(a.b,A.bW(a),a.d,a.e,this.a.$ti)}, +$S(){return this.a.$ti.h("eY<1>(eu<1>)")}} +A.arV.prototype={ +$1(a){return a}, +$S(){return this.a.$ti.h("eY<1>(eY<1>)")}} +A.eu.prototype={ +gk(a){var s=this +if(!s.b)A.bgA(s.d,s.e) +return s.c}, +Pa(a){var s=this +if(A.ck(s.$ti.c)===A.ck(a))return a.h("C<0>").a(s) +return new A.eu(s.a,s.b,a.h("0?").a(s.c),s.d,s.e,a.h("eu<0>"))}, +Fx(a,b,c,d){return c.$1(this)}, +vg(a,b,c,d){return this.Fx(a,b,c,d,t.z)}, +zM(a,b){var s=this,r=A.bW(a) +return new A.eu(s.a,a.goR(),r,s.d,s.e,s.$ti)}, +KC(a){return this.zM(a,!0)}, +gjI(){return this.a}, +goR(){return this.b}, +ghw(a){return this.d}, +gjU(){return this.e}} +A.asf.prototype={ +$1(a){return null}, +$S(){return this.a.h("aE(fL<0>)")}} +A.asg.prototype={ +$1(a){return a}, +$S(){return this.a.h("eu<0>(eu<0>)")}} +A.ash.prototype={ +$1(a){return null}, +$S(){return this.a.h("aE(eY<0>)")}} +A.asi.prototype={ +$1(a){var s,r,q,p +try{q=this.a.$1(a.a) +return new A.fL(q,a.b,a.c,a.d,this.c.h("fL<0>"))}catch(p){s=A.ai(p) +r=A.aH(p) +return new A.eu(a.b,!1,null,s,r,this.c.h("eu<0>"))}}, +$S(){return this.c.h("@<0>").S(this.b).h("C<1>(fL<2>)")}} +A.asj.prototype={ +$1(a){return new A.eu(a.a,!1,null,a.d,a.e,this.b.h("eu<0>"))}, +$S(){return this.b.h("@<0>").S(this.a).h("eu<1>(eu<2>)")}} +A.ask.prototype={ +$1(a){return A.bhI(this.b)}, +$S(){return this.b.h("@<0>").S(this.a).h("eY<1>(eY<2>)")}} +A.asl.prototype={ +$1(a){return null}, +$S(){return this.a.h("aE(0)")}} +A.asm.prototype={ +$2(a,b){return null}, +$S:23} +A.asn.prototype={ +$0(){return null}, +$S:5} +A.WB.prototype={} +A.WA.prototype={} +A.Am.prototype={} +A.da.prototype={ +ic(){var s,r=this.dQ$ +if(r==null)r=this.dQ$=A.a([],t.r0) +s=A.b4("link") +s.b=new A.a2k() +r.push(s.aF()) +return s.aF()}, +M2(){var s,r=this,q=r.dQ$ +if(!r.gVd())s=q==null||q.length===0 +else s=!1 +if(s){s=r.e +s===$&&A.b() +s=s.gJ6() +s.a.push(r) +s.a3V()}}, +$iaV:1} +A.a2k.prototype={} +A.rs.prototype={ +aoE(){var s,r,q=this,p=q.a +if(p.l(0,$.apR))throw A.c(new A.Ya()) +if($.apR==null)$.apR=p +try{r=q.b.bJ(0) +r.d=q.b +r.c=p +r.e=q.c +r.aLx() +s=r +s.fy.qV(0,new A.baS(q),new A.baT(q)) +return s}finally{if(J.i($.apR,p))$.apR=null}}} +A.baS.prototype={ +$1(a){var s,r,q,p,o,n,m +for(r=this.a,q=r.c,p=q.z,o=p.length,r=r.a,n=a.a,m=0;m")) +a.f.push(s) +return s}, +ab3(a,b,c){return a.K1(0,this,b,!1,null,c)}, +aKV(a,b){return this.ab3(a,b,null,t.z)}, +ab6(a,b,c){return this.ab3(a,b,c,t.z)}, +kd(a){var s,r,q,p,o=this +if(a instanceof A.bm){s=o.a1k(a).e +if(s!=null)s.Vo()}else{t.Sf.a(a) +s=o.x.i(0,a) +s=s==null?null:s.b +r=s==null?o.e:s +for(s=(r==null?o:r).y,s=s.gbw(s),q=A.k(s),q=q.h("@<1>").S(q.z[1]),s=new A.c2(J.ao(s.a),s.b,q.h("c2<1,2>")),q=q.z[1];s.u();){p=s.a +if(p==null)p=q.a(p) +if(p.a.e!==a)continue +p=p.e +if(p!=null)p.Vo()}}}, +apj(a){var s,r=this.vp(a,t.X) +r.m() +s=r.c +s===$&&A.b() +s=this.y.i(0,s) +s.toString +if(s.d)new A.aMf(r,s).$1(this) +else s.e=null}, +aP_(a){var s,r,q,p,o,n,m,l +if(this.as)throw A.c(A.R("Called updateOverrides on a ProviderContainer that was already disposed")) +for(s=this.y,r=this.w,q=0;q<3;++q){p=a[q] +o=p.a +n=s.i(0,o) +n.toString +m=p.b +r.p(0,o,m) +n.b=m +l=n.e +if(l==null)continue +A.bVb(l.gio(l),m)}}, +vp(a,b){var s,r +if(this.as)throw A.c(A.R("Tried to read a provider from a ProviderContainer that was already disposed")) +s=this.a1k(a) +r=s.e +if(r==null)r=s.e=s.aoE() +return b.h("aV<0>").a(r)}, +a1k(a){var s,r=this.y,q=r.i(0,a) +if(q!=null)return q +s=new A.aMg(this,a).$0() +r.p(0,a,s) +return s}, +m(){var s,r,q,p=this +if(p.as)return +s=p.f +if(s!=null)B.b.F(s.r,p) +p.as=!0 +for(s=p.Xr(),s=A.aa(s,!0,s.$ti.h("z.E")),r=A.ab(s).h("d1<1>"),s=new A.d1(s,r),s=new A.bZ(s,s.gt(s),r.h("bZ")),r=r.h("ax.E");s.u();){q=s.d;(q==null?r.a(q):q).m()}if(p.e==null){s=p.gJ6() +r=s.c +if(r!=null)r.fj(0) +s.c=null}}, +Xr(){return new A.k4(this.aeg(),t.Sy)}, +aeg(){var s=this +return function(){var r=0,q=1,p,o,n,m,l,k,j,i,h,g,f +return function $async$Xr(a,b,c){if(b===1){p=c +r=q}while(true)switch(r){case 0:h=A.dN(t.M) +g=t.j7 +f=new A.zD(g) +f.a=f +f.b=f +o=new A.wz(f,t.oV) +for(n=s.y,n=n.gbw(n),m=A.k(n),m=m.h("@<1>").S(m.z[1]),n=new A.c2(J.ao(n.a),n.b,m.h("c2<1,2>")),m=m.z[1],g=g.h("rf<1>");n.u();){l={} +k=n.a +if(k==null)k=m.a(k) +if(k.c!==s)continue +j=k.e +if(j==null)continue +l.a=!1 +j.Xj(new A.aMj(l,s)) +if(!l.a){new A.rf(o,j,g).R4(f.a,f);++o.b}}case 2:if(!!o.gai(o)){r=3 +break}i=f.b.RM(0);--o.b +if(!h.G(0,i)){r=2 +break}r=4 +return a.b=i,1 +case 4:i.tS(new A.aMk(s,h,o),new A.aMl()) +r=2 +break +case 3:return 0 +case 1:return a.c=p,3}}}}} +A.aMf.prototype={ +$1(a){var s=a.y,r=this.a,q=r.c +q===$&&A.b() +if(J.i(s.i(0,q),this.b))s.F(0,r.c) +B.b.af(a.r,this)}, +$S:664} +A.aMg.prototype={ +$0(){var s,r,q,p,o,n,m=this.b,l=m.e,k=l==null +if(!k){s=this.a.x.i(0,l) +if(s!=null){l=s.b +k=l.y +if(k.ao(0,m)){m=k.i(0,m) +m.toString +return m}new A.aMh(s).$2$origin$override(m,s.a.fP(m)) +k=k.i(0,m) +return k==null?new A.rs(m,m,l,!0):k}}r=this.a +q=r.e +p=q==null +o=!p +if(o){if(!k)l.gfi() +m.gfi()}l=p?null:q.y.ao(0,m) +if(l===!0){m=q.y.i(0,m) +m.toString +return m}n=new A.rs(m,m,p?r:q,!0) +if(o)q.y.p(0,m,n) +return n}, +$S:665} +A.aMh.prototype={ +$2$origin$override(a,b){var s=this.a.b,r=s.y +if(r.i(0,a)==null)r.p(0,a,new A.rs(a,b,s,!0))}, +$S:666} +A.aMj.prototype={ +$1(a){var s=a.e +s===$&&A.b() +if(s===this.b)this.a.a=!0}, +$S:81} +A.aMk.prototype={ +$1(a){var s,r={},q=a.e +q===$&&A.b() +s=this.a +if(q===s){r.a=!0 +a.Xj(new A.aMi(r,s,this.b)) +if(r.a)this.c.G(0,a)}}, +$S:81} +A.aMi.prototype={ +$1(a){var s=a.e +s===$&&A.b() +if(s===this.b&&!this.c.n(0,a))this.a.a=!1}, +$S:81} +A.aMl.prototype={ +$1(a){}, +$S:147} +A.Do.prototype={$ibO:1} +A.Ya.prototype={} +A.aV.prototype={ +gVd(){return this.f.length!==0||this.x.length!==0||this.w.length!==0}, +a7(a){var s=this,r=s.fy,q=new A.e9(a,A.k(s).h("e9")) +s.fy=q +if(s.fx)s.a2K(q,r)}, +gjj(){var s=this.fy +if(s==null)throw A.c(A.R("Tried to read the state of an uninitialized provider")) +return s.GC(new A.aMA(this),A.bVE())}, +aLx(){var s=this +s.dy=!0 +s.a7g() +s.fy.qV(0,new A.aMy(s),new A.aMz(s))}, +c_(a,b){this.d=b}, +Vo(){var s,r=this +if(r.cx)return +r.cx=!0 +r.p_() +s=r.e +s===$&&A.b() +s=s.gJ6() +s.b.push(r) +s.a3V() +r.tS(new A.aMw(),new A.aMx())}, +oL(a){var s=this +s.a2x() +if(s.cx){s.cx=!1 +s.a38()}}, +a2x(){if(!this.cy)return +this.cy=!1 +this.Xj(new A.aMp())}, +a38(){var s,r,q,p=this +p.z=p.y +p.y=A.cx(null,null,null,t.M,t.K) +s=p.fy +p.a7g() +r=p.fy +if(r!=s){r.toString +p.a2K(r,s)}for(r=p.z,r=r.gdW(r),r=r.gaj(r);r.u();){q=r.gH(r).a +B.b.F(q.w,p) +q.IO()}p.z=null}, +a7g(){var s,r,q,p=this,o=p.db +p.fx=p.db=!1 +try{p.dy=!0 +p.zN(0,o)}catch(q){s=A.ai(q) +r=A.aH(q) +p.fy=new A.fq(s,r,A.k(p).h("fq"))}finally{p.fx=!0}}, +a2K(a,b){var s,r,q,p,o,n=this,m=b==null,l=m?null:b.gvQ() +a.qV(0,new A.aMq(n,l),new A.aMr(n)) +if(!m)if(b.gF6())if(a.gF6()){m=l==null?A.k(n).h("aV.0").a(l):l +m=!n.Gv(m,a.gjj())}else m=!1 +else m=!1 +else m=!1 +if(m)return +m=n.f +s=J.lK(m.slice(0),A.ab(m).c) +m=n.x +r=J.lK(m.slice(0),A.ab(m).c) +a.qV(0,new A.aMs(n,s,l,r),new A.aMt(n,s,r)) +for(m=n.w,q=0;q").b(a))return q.aKX(a,new A.aMB(q,b),q.gavW(),new A.aMC(q)).hX(0) +s=q.e +s===$&&A.b() +r=s.vp(a,b) +q.y.cJ(0,r,new A.aMD(q,r)) +r.oL(0) +return r.gjj()}, +xP(a){return this.M(a,t.z)}, +vp(a,b){var s=this.e +s===$&&A.b() +return s.vp(a,b)}, +R5(a,b,c,d){var s=new A.zO(new A.aMm(b,d),this,a,c,d.h("zO<0>")) +a.x.push(s) +this.r.push(s) +return s}, +ab4(a,b,c,d){return a.K1(0,this,b,!1,c,d)}, +aKX(a,b,c,d){return this.ab4(a,b,c,d,t.z)}, +ab6(a,b,c){return this.ab4(a,b,null,c,t.z)}, +ab7(a){var s=this.ch;(s==null?this.ch=A.a([],A.k(this).h("G<~(aV.0?,aV.0)>")):s).push(a)}, +tS(a,b){var s,r +for(s=this.w,r=0;r")).af(0,a) +for(r=this.r,s=0;s)")}} +A.aMz.prototype={ +$1(a){var s,r,q,p=this.a.CW +if(p!=null)for(s=a.a,r=a.b,q=0;q)")}} +A.aMw.prototype={ +$1(a){return a.Re()}, +$S:81} +A.aMx.prototype={ +$1(a){return a.abq()}, +$S:147} +A.aMp.prototype={ +$1(a){a.oL(0)}, +$S:81} +A.aMq.prototype={ +$1(a){var s,r,q,p=this.a.ch +if(p!=null)for(s=this.b,r=a.a,q=0;q)")}} +A.aMr.prototype={ +$1(a){var s,r,q,p=this.a.CW +if(p!=null)for(s=a.a,r=a.b,q=0;q)")}} +A.aMs.prototype={ +$1(a){var s,r,q,p +for(s=this.b,r=this.c,q=a.a,p=0;p)")}} +A.aMt.prototype={ +$1(a){var s,r,q,p +for(s=this.b,r=a.a,q=a.b,p=0;p)")}} +A.aMu.prototype={ +$1(a){}, +$S(){return A.k(this.a).h("aE(e9)")}} +A.aMv.prototype={ +$1(a){var s=this.b.gaMV(),r=this.a,q=r.d +r=r.e +r===$&&A.b() +A.blU(s,q,a.a,a.b,r)}, +$S(){return A.k(this.a).h("aE(fq)")}} +A.aMn.prototype={ +$1(a){return a.Re()}, +$S:81} +A.aMo.prototype={ +$1(a){return a.abq()}, +$S:147} +A.aMB.prototype={ +$2(a,b){return this.a.Rd()}, +$S(){return this.b.h("~(0?,0)")}} +A.aMC.prototype={ +$2(a,b){return this.a.Rd()}, +$S:13} +A.aMD.prototype={ +$0(){var s=this.a,r=s.z,q=r==null?null:r.F(0,this.b) +if(q!=null)return q +r=this.b +r.a2R() +r.w.push(s) +return new A.B()}, +$S:253} +A.aMm.prototype={ +$2(a,b){var s=this.b +return this.a.$2(s.h("0?").a(a),s.a(b))}, +$S:85} +A.e7.prototype={$ibO:1} +A.aMH.prototype={ +gfi(){return this.c}} +A.bp.prototype={} +A.kv.prototype={} +A.bm.prototype={ +ga2W(){return this}, +K1(a,b,c,d,e,f){var s,r +if(f==null)f=$.a9.gaa0() +s=A.k(this).h("bm.0") +r=b.vp(this,s) +r.oL(0) +r.a2R() +return b.R5(r,c,f,s)}, +hB(a,b){var s=b.vp(this,A.k(this).h("bm.0")) +s.oL(0) +s.M2() +return s.gjj()}, +gv(a){var s=this,r=s.e +if(r==null)return A.B.prototype.gv.call(s,s) +return(r.gv(r)^B.Vx.gv(s.f))>>>0}, +l(a,b){var s,r=this +if(b==null)return!1 +s=r.e +if(s==null)return b===r +return J.a1(b)===A.o(r)&&A.k(r).h("bm").b(b)&&b.e===s&&!0}, +j(a){var s=this,r=s.e!=null?"("+A.h(s.f)+")":"",q=s.a,p=q!=null?q+":":"" +return p+(A.o(s).j(0)+"#"+B.c.eM(B.f.o0(s.gv(s)&1048575,16),5,"0"))+r}, +$ibO:1} +A.e2.prototype={ +ad(a){var s +this.d=!0 +s=this.b +B.b.F(s.f,this) +s.IO()}, +hX(a){var s +if(this.d)throw A.c(A.R(u.h)) +s=this.b +s.oL(0) +return s.gjj()}, +$ikv:1} +A.zO.prototype={ +ad(a){var s,r=this +B.b.F(r.b.r,r) +s=r.c +B.b.F(s.x,r) +s.IO()}, +hX(a){var s=this.c +s.oL(0) +return s.gjj()}, +$ikv:1} +A.eo.prototype={} +A.Gt.prototype={ +ad(a){this.a.ad(0) +this.b.$0()}, +hX(a){return this.c.$0()}} +A.n5.prototype={ +K1(a,b,c,d,e,f){var s=this,r=s.$ti,q=r.c,p=b.vp(s.a,q),o=s.b.$1(p),n=o.aE8(0,c,e,f) +return new A.Gt(b.R5(p,new A.aME(s),new A.aMF(),q),n,new A.aMG(s,b),r.h("Gt<2>"))}, +hB(a,b){var s,r=b.vp(this.a,this.$ti.c) +r.oL(0) +r.M2() +s=this.b.$1(r).f +if(s==null)A.q(A.R("Trying to read an uninitialized value.")) +return s.gjj()}, +l(a,b){if(b==null)return!1 +return this.$ti.b(b)&&b.a.l(0,this.a)}, +gv(a){var s=this.a +return s.gv(s)}, +ga2W(){return this.a}} +A.aMG.prototype={ +$0(){return this.a.hB(0,this.b)}, +$S(){return this.a.$ti.h("2()")}} +A.aME.prototype={ +$2(a,b){}, +$S(){return this.a.$ti.h("~(1?,1)")}} +A.aMF.prototype={ +$2(a,b){}, +$S:13} +A.ajE.prototype={ +a3V(){if(this.c!=null)return +this.c=new A.aD(new A.a8($.a9,t.b),t.gR) +var s=$.aqm +if(s==null)s=A.bSB() +s.$1(this.gaBZ())}, +aC_(){var s=this,r=s.c +if(r==null)return +r.fj(0) +s.ayl() +s.ayg() +B.b.ab(s.b) +B.b.ab(s.a) +s.c=null}, +ayl(){var s,r,q +for(s=this.b,r=0;r"))}finally{}}, +aAw(a,b,c,d,e){var s=this,r=s.a44(new A.e9(c,s.$ti.h("e9<1>"))) +if(!a.gF6()||!r.gF6()||!J.i(a.gjj(),r.gjj())){d.$1(r) +r.qV(0,new A.b86(s,b,a),new A.b87(s,e))}}, +K1(a,b,c,d,e,f){var s,r,q,p=this,o={} +o.a=f +s=f==null?o.a=$.a9.gaa0():f +r=A.b4("lastSelectedValue") +q=b.ab6(p.a,new A.b8d(o,p,r,c),s) +s=p.$ti +r.b=p.a44(A.aPQ(q.gh3(q),s.c)) +return new A.GG(q,new A.b8e(p,r),s.h("@<1>").S(s.z[1]).h("GG<1,2>"))}, +hB(a,b){return this.b.$1(this.a.hB(0,b))}} +A.b88.prototype={ +$1(a){var s=this.a +return new A.e9(s.b.$1(a.a),s.$ti.h("e9<2>"))}, +$S(){return this.a.$ti.h("DK<2>(e9<1>)")}} +A.b89.prototype={ +$1(a){return new A.fq(a.a,a.b,this.a.$ti.h("fq<2>"))}, +$S(){return this.a.$ti.h("DK<2>(fq<1>)")}} +A.b86.prototype={ +$1(a){this.b.$2(this.c.gvQ(),a.a)}, +$S(){return this.a.$ti.h("aE(e9<2>)")}} +A.b87.prototype={ +$1(a){return this.b.$2(a.a,a.b)}, +$S(){return this.a.$ti.h("~(fq<2>)")}} +A.b8d.prototype={ +$2(a,b){var s=this,r=s.b,q=s.c,p=q.aF(),o=s.a.a +o.toString +r.aAw(p,s.d,b,new A.b8c(r,q),o)}, +$S(){return this.b.$ti.h("~(1?,1)")}} +A.b8c.prototype={ +$1(a){return this.b.b=a}, +$S(){return this.a.$ti.h("~(DK<2>)")}} +A.b8e.prototype={ +$0(){var s=this.a +return J.bCp(this.b.aF(),new A.b8a(s),new A.b8b(s))}, +$S(){return this.a.$ti.h("2()")}} +A.b8a.prototype={ +$1(a){return a.a}, +$S(){return this.a.$ti.h("2(e9<2>)")}} +A.b8b.prototype={ +$1(a){return A.bgA(a.a,a.b)}, +$S(){return this.a.$ti.h("0&(fq<2>)")}} +A.GG.prototype={ +ad(a){this.c=!0 +this.a.ad(0)}, +hX(a){if(this.c)throw A.c(A.R(u.h)) +this.a.hX(0) +return this.b.$0()}, +$ikv:1} +A.zn.prototype={ +gfi(){return null}, +bJ(a){var s=this.$ti,r=t.B +return new A.F8(this,A.a([],s.h("G>")),A.a([],r),A.a([],t._),A.a([],r),A.cx(null,null,null,t.M,t.K),s.h("F8<1>"))}} +A.F8.prototype={ +c_(a,b){var s,r,q,p=this +p.ahI(0,b) +s=p.$ti +r=s.h("zn<1>").a(p.d).y +q=p.fy +q.toString +if(!J.i(r,s.h("e9<1>").a(q).a))p.a7(r)}, +zN(a,b){this.a7(this.$ti.h("zn<1>").a(this.d).y)}, +Gv(a,b){return!0}} +A.Sp.prototype={} +A.Sq.prototype={} +A.Sr.prototype={} +A.Uo.prototype={} +A.Vq.prototype={} +A.b4i.prototype={ +$1(a){}, +$S(){return A.k(this.a).h("aE(fG.T)")}} +A.b4j.prototype={ +$1(a){}, +$S:247} +A.bdO.prototype={ +$1(a){return this.a.h("bY<0>").a(a).iy$}, +$S(){return this.a.h("cd>(aV>)")}} +A.mn.prototype={} +A.fM.prototype={ +bJ(a){return A.bD7(this,A.k(this).h("fM.T"))}, +gqM(){var s,r=this,q=r.ch +if(q===$){s=A.bP1(r,A.k(r).h("fM.T")) +q!==$&&A.am() +r.ch=s +q=s}return q}} +A.lD.prototype={$ieD:1} +A.h5.prototype={ +zN(a,b){var s=this +s.a9S(new A.aD4(s,A.k(s).h("mn").a(s.d)),b)}} +A.aD4.prototype={ +$0(){return this.b.ay.$1(this.a)}, +$S(){return A.k(this.a).h("h5.T/()")}} +A.PF.prototype={} +A.PE.prototype={ +p_(){var s=this.dQ$ +if(s!=null)B.b.ab(s) +this.ajf()}} +A.fG.prototype={ +p_(){var s=this,r=s.hN$ +if(r!=null)r.$0() +s.i9$=s.hN$=null +r=s.hO$ +if(r!=null)r.$0() +s.hO$=null +s.Hn()}, +m(){var s,r,q=this,p=q.i8$ +if(p!=null){s=p.a +A.K7(s,A.k(q).h("fG.T")) +if(q.i9$!=null){r=q.hO$ +if(r!=null)s.fe(new A.b4i(q),new A.b4j(),t.P).fv(r) +q.hO$=q.hN$=q.i9$=null}else{s=q.c +s===$&&A.b() +p.f6(new A.iA("The provider "+s.j(0)+u.e),A.jU())}}q.Z7()}, +tS(a,b){this.Oq(a,b) +b.$1(this.iy$)}} +A.dT.prototype={} +A.cd.prototype={ +stI(a,b){var s=this,r=s.f +s.f=b +b.GC(new A.aMJ(s,r),s.gawI())}} +A.aMJ.prototype={ +$1(a){var s=this.b +s=s==null?null:s.gvQ() +return this.a.awK(s,a)}, +$S(){return this.a.$ti.h("~(1)")}} +A.Un.prototype={ +aE8(a,b,c,d){var s,r,q=this,p=q.$ti,o=new A.dT(b,d,c,p.h("dT<1>")),n=q.a,m=q.b,l=m.length +if(n===l){p=p.h("dT<1>?") +if(n===0){p=A.aT(1,null,!1,p) +q.b=p}else{s=A.aT(l*2,null,!1,p) +for(p=q.a,n=q.b,r=0;r?")) +for(o=p.b,r=0;r0){r[q]=null;++p.d}else p.avz(q) +break}}, +R6(a){var s,r,q,p,o,n,m,l,k,j,i,h=this,g=h.a +if(g===0)return;++h.c +for(s=0;s0){n=h.a-h.d +g=h.b +if(n*2<=g.length){m=A.aT(n,null,!1,h.$ti.h("dT<1>?")) +for(g=h.a,l=h.b,k=0,s=0;s)")}} +A.bcB.prototype={ +$1(a){var s=a.b +return s==null?null:s.$2(this.b,this.c)}, +$S(){return this.a.$ti.h("~(dT<1>)")}} +A.bcE.prototype={ +$1(a){var s=a.c +return s==null?null:s.$0()}, +$S(){return this.a.$ti.h("~(dT<1>)")}} +A.c5.prototype={ +gd8(a){var s=this.a +s===$&&A.b() +s.oL(0) +return s.gjj()}, +sd8(a,b){var s=this.a +s===$&&A.b() +s.a7(b)}} +A.bea.prototype={ +$1(a){return this.a.h("@<0>").S(this.b).h("fb<1,2>").a(a).go}, +$S(){return this.a.h("@<0>").S(this.b).h("cd<1>(aV<2>)")}} +A.oB.prototype={} +A.aR.prototype={} +A.cH.prototype={} +A.f_.prototype={ +gcr(){var s,r,q=this,p=q.ch +if(p===$){s=A.k(q) +r=A.bPX(q,s.h("f_.0"),s.h("f_.T")) +p!==$&&A.am() +q.ch=r +p=r}return p}, +bJ(a){var s=A.k(this) +return A.bD8(this,s.h("f_.0"),s.h("f_.T"))}, +rh(a){return A.k(this).h("cH").a(a).aP()}} +A.mC.prototype={} +A.fb.prototype={ +zN(a,b){var s=this,r=A.k(s),q=r.h("oB").a(s.d),p=s.go,o=p.f +if(o==null){o=A.aPQ(new A.aKG(s,q),r.h("fb.0")) +p.stI(0,o)}s.a7(q.rh(o.gjj()))}, +tS(a,b){this.Oq(a,b) +b.$1(this.go)}, +Gv(a,b){var s=this.go.f +if(s==null)s=null +else s=s.gvQ()==null?null:a==null?b!=null:a!==b +return s!==!1}} +A.aKG.prototype={ +$0(){var s=this.b.y.$0(),r=A.ch(s).h("mC,aR.0>").a(this.a) +s.a!==$&&A.cl() +s.a=r +return s}, +$S(){return A.k(this.a).h("fb.0()")}} +A.PG.prototype={ +p_(){var s=this.dQ$ +if(s!=null)B.b.ab(s) +this.Hn()}} +A.iZ.prototype={} +A.ev.prototype={ +bJ(a){return A.bD9(this,A.k(this).h("ev.T"))}} +A.iQ.prototype={$ibM:1} +A.eL.prototype={ +zN(a,b){var s=this +s.a7(A.k(s).h("iZ").a(s.d).ay.$1(s))}, +Gv(a,b){return!J.i(a,b)}} +A.PH.prototype={ +p_(){var s=this.dQ$ +if(s!=null)B.b.ab(s) +this.Hn()}} +A.Rz.prototype={} +A.e9.prototype={ +gF6(){return!0}, +gvQ(){return this.a}, +gjj(){return this.a}, +VL(a,b,c){return b.$1(this)}, +qV(a,b,c){return this.VL(a,b,c,t.z)}, +Xk(a,b){return a.$1(this.a)}, +GC(a,b){return this.Xk(a,b,t.z)}, +l(a,b){if(b==null)return!1 +return this.$ti.b(b)&&A.o(b)===A.o(this)&&J.i(b.a,this.a)}, +gv(a){return A.X(A.o(this),this.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +$iDK:1} +A.fq.prototype={ +gF6(){return!1}, +gvQ(){return null}, +gjj(){return A.biv(this.a,this.b)}, +VL(a,b,c){return c.$1(this)}, +qV(a,b,c){return this.VL(a,b,c,t.z)}, +Xk(a,b){return b.$2(this.a,this.b)}, +GC(a,b){return this.Xk(a,b,t.z)}, +l(a,b){var s=this +if(b==null)return!1 +return s.$ti.b(b)&&A.o(b)===A.o(s)&&b.b===s.b&&J.i(b.a,s.a)}, +gv(a){return A.X(A.o(this),this.a,this.b,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +$iDK:1} +A.bgB.prototype={ +$1(a){return a.gXQ()==="riverpod"}, +$S:669} +A.Jb.prototype={ +gh1(){return!0}, +ci(a,b,c,d){var s,r,q,p,o=null +try{o=this.a.$0()}catch(q){s=A.ai(q) +r=A.aH(q) +p=A.bKn(s,r,this.$ti.c).ci(a,b,c,d) +return p}return o.ci(a,b,c,d)}, +h2(a,b,c){return this.ci(a,null,b,c)}, +n_(a,b,c){return this.ci(a,b,c,null)}} +A.I1.prototype={ +gvR(a){return new A.v4(this,this.$ti.h("v4<1>"))}} +A.at8.prototype={ +$0(){var s,r,q=this,p=q.a,o=p.c +if(o!=null&&!p.a){p=q.b +return new A.a9w(o.a,o.b,q.c.h("a9w<0>")).qx(new A.iG(p,A.k(p).h("iG<1>")))}s=p.b +if(s!==B.qB&&p.a){p=q.b +r=q.c +return new A.a9x(r.a(s),r.h("a9x<0>")).qx(new A.iG(p,A.k(p).h("iG<1>")))}p=q.b +return new A.iG(p,A.k(p).h("iG<1>"))}, +$S(){return this.c.h("bA<0>()")}} +A.ao0.prototype={} +A.v4.prototype={ +gh1(){return!0}, +gv(a){return(A.cU(this.a)^892482866)>>>0}, +l(a,b){if(b==null)return!1 +if(this===b)return!0 +return b instanceof A.v4&&b.a===this.a}, +ci(a,b,c,d){return this.a.ci(a,b,c,d)}, +h2(a,b,c){return this.ci(a,null,b,c)}, +n_(a,b,c){return this.ci(a,b,c,null)}} +A.Ew.prototype={ +gvR(a){return new A.GV(this,this.$ti.h("GV<1>"))}, +dO(a,b){if(this.c)throw A.c(A.R("You cannot add an error while items are being added from addStream")) +this.aBz(a,b)}, +pp(a){return this.dO(a,null)}, +aBz(a,b){var s,r=this.b +if((r.c&4)===0){s=this.e +s.c=new A.a0G(a,b) +s.a=!1}r.dO(a,b)}, +G(a,b){if(this.c)throw A.c(A.R(u.g)) +this.aBy(0,b)}, +aBy(a,b){var s,r=this.b +if((r.c&4)===0){s=this.e +s.b=b +s.a=!0}r.G(0,b)}, +ad(a){if(this.c)throw A.c(A.R("You cannot close the subject while items are being added from addStream")) +return this.b.ad(0)}, +$idL:1} +A.GV.prototype={ +gh1(){return!0}, +gv(a){return(A.cU(this.a)^892482866)>>>0}, +l(a,b){if(b==null)return!1 +if(this===b)return!0 +return b instanceof A.GV&&b.a===this.a}, +ci(a,b,c,d){return this.a.ci(a,b,c,d)}, +h2(a,b,c){return this.ci(a,null,b,c)}, +n_(a,b,c){return this.ci(a,b,c,null)}} +A.GP.prototype={ +j9(a){return this.gph().G(0,a)}, +nq(a,b,c){return this.gph().dO(b,c)}, +W0(){return this.gph().ad(0)}, +VW(a){}, +W9(){this.gph().G(0,this.b)}, +abz(a){}, +abC(a){}} +A.a9x.prototype={ +qx(a){var s=this.$ti.c +return A.bwx(a,new A.aVY(this),s,s)}} +A.aVY.prototype={ +$0(){var s=this.a +return new A.GP(s.a,s.$ti.h("GP<1>"))}, +$S(){return this.a.$ti.h("GP<1>()")}} +A.GO.prototype={ +j9(a){return this.gph().G(0,a)}, +nq(a,b,c){return this.gph().dO(b,c)}, +W0(){return this.gph().ad(0)}, +VW(a){}, +W9(){this.gph().dO(this.b,this.c)}, +abz(a){}, +abC(a){}} +A.a9w.prototype={ +qx(a){var s=this.$ti.c +return A.bwx(a,new A.aVX(this),s,s)}} +A.aVX.prototype={ +$0(){var s=this.a +return new A.GO(s.a,s.b,s.$ti.h("GO<1>"))}, +$S(){return this.a.$ti.h("GO<1>()")}} +A.b39.prototype={ +j(a){return"<>"}} +A.a0G.prototype={ +j(a){return"ErrorAndStackTrace{error: "+A.h(this.a)+", stacktrace: "+A.h(this.b)+"}"}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r!==b)s=b instanceof A.a0G&&A.o(r)===A.o(b)&&J.i(r.a,b.a)&&r.b==b.b +else s=!0 +return s}, +gv(a){return(J.T(this.a)^J.T(this.b))>>>0}} +A.K5.prototype={ +gph(){var s=this.a +return s==null?A.q(A.R("Must call setSink(sink) before accessing!")):s}} +A.bdG.prototype={ +$1(a){var s={},r=this.a.$0() +r.a=new A.RX(a,this.c.h("RX<0>")) +s.a=null +s.b=!1 +r.W9() +new A.bdH(s,this.b,r).$0() +a.r=new A.bdF(s,r)}, +$S(){return this.c.h("~(a5g<0>)")}} +A.bdH.prototype={ +$1(a){var s,r,q,p=this.a +if(p.b)return +s=this.c +r=s.gFK() +q=s.gtx(s) +p.a=this.b.h2(r,s.gW_(),q)}, +$0(){return this.$1(null)}, +$S:250} +A.bdF.prototype={ +$0(){var s,r,q=this.a +q.b=!0 +s=q.a +r=s==null?null:s.aQ(0) +q.a=null +return A.bxB(r,this.b.VW(0))}, +$S:0} +A.bdK.prototype={ +$0(){return this.a.$0()}, +$S(){return this.b.h("@<0>").S(this.c).h("K5<1,2>()")}} +A.bdL.prototype={ +$0(){var s=this,r=s.c,q=s.d +r.b1().a=q +r.b1().W9() +new A.bdN(s.a,s.b,r,q).$0()}, +$S:0} +A.bdN.prototype={ +$1(a){var s,r,q,p,o=this,n=o.a +if(n.b)return +s=o.b +r=o.c +q=r.b1().gFK() +p=J.bCf(r.b1()) +n.a=s.h2(q,r.b1().gW_(),p) +if(!s.gh1()){s=o.d +s.sWa(0,new A.bdI(n,r)) +s.sWe(0,new A.bdJ(n,r))}}, +$0(){return this.$1(null)}, +$S:250} +A.bdI.prototype={ +$0(){this.a.a.jL(0) +J.bCs(this.b.b1())}, +$S:0} +A.bdJ.prototype={ +$0(){this.a.a.jk(0) +J.bCt(this.b.b1())}, +$S:0} +A.bdM.prototype={ +$0(){var s,r,q=this.a +q.b=!0 +s=q.a +r=s==null?null:s.aQ(0) +q.a=null +return A.bxB(r,J.bCr(this.b.b1()))}, +$S:0} +A.RX.prototype={ +G(a,b){return this.a.a6H(b)}, +dO(a,b){return this.a.ST(a,b)}, +ad(a){return this.a.TC()}, +$idL:1} +A.MG.prototype={ +a8(){return new A.ak8(A.aY(t.F),B.m)}} +A.a72.prototype={ +bJ(a){return new A.ak7(this,B.al)}} +A.ak8.prototype={ +A(a){return new A.Rp(this,this.a.c,null)}} +A.Rp.prototype={ +dr(a){return!0}} +A.ak7.prototype={ +xv(a){}, +hU(a,b){var s,r=this +r.Od(a,b) +s=r.ae(t.Ze) +s.toString +s=s.f +r.aV=s +s.d.G(0,r) +s=r.aV +s.a.d.sk(0,s.d)}, +cp(){var s,r=this +r.Ol() +s=r.ae(t.Ze) +s.toString +s=s.f +r.aV=s +s.d.G(0,r) +s=r.aV +s.a.d.sk(0,s.d)}, +lw(){var s=this,r=s.aV +r===$&&A.b() +r.d.F(0,s) +r=s.aV +r.a.d.sk(0,r.d) +s.yk()}} +A.kn.prototype={ +l(a,b){var s=this +if(b==null)return!1 +if(J.a1(b)!==A.o(s))return!1 +return b.a===s.a&&b.b===s.b&&b.c===s.c}, +gv(a){return 31*(31*(7+B.f.gv(this.a))+B.e.gv(this.b))+B.e.gv(this.c)}, +j(a){return"ItemPosition(index: "+this.a+", itemLeadingEdge: "+A.h(this.b)+", itemTrailingEdge: "+A.h(this.c)+")"}} +A.Cd.prototype={$ia2c:1} +A.Mn.prototype={ +a8(){return new A.Sn(new A.kF(),A.ed(null,t.M9),B.m)}, +aKE(a,b){return this.d.$2(a,b)}} +A.Sn.prototype={ +aR(){var s,r=this +r.b5() +s=r.a.f +r.f!==$&&A.cl() +r.f=s +s.P(0,r.ga3S()) +r.S3()}, +m(){var s=this.f +s===$&&A.b() +s.J(0,this.ga3S()) +this.aZ()}, +aY(a){this.br(a) +this.S3()}, +A(a){var s,r,q,p,o,n,m,l,k=this,j=null,i=k.a,h=i.x,g=k.d,f=k.f +f===$&&A.b() +s=i.y +r=i.z +q=i.at +p=i.as +i=i.c +o=A.a([],t.p) +n=k.a +m=n.w +if(m>0){if(n.y===B.R)n.z +else n.z +o.push(new A.yU(new A.aK(0,0,0,0),new A.m6(new A.kx(new A.b82(k),2*m,!0,!0,!1,A.rN(),j),j),j))}n=k.a +if(n.y===B.R)if(n.z)m=new A.aK(0,0,0,0) +else m=new A.aK(0,0,0,0) +else if(n.z)m=new A.aK(0,0,0,0) +else m=new A.aK(0,0,0,0) +n=n.c!==0?1:0 +o.push(new A.yU(m,new A.m6(new A.kx(new A.b83(k),n,!0,!0,!1,A.rN(),j),j),g)) +n=k.a +m=n.w +if(m>=0&&m0&&o>n-1)s.c=n-1 +p.f.a=m +p=m.ga5V() +s.a.a.P(0,p) +m.e.a.a.P(0,p) +m.d.b.P(0,new A.bae(m))}, +cn(){this.al8() +this.a.f.a=this}, +fk(){this.a.f.a=null +this.rF()}, +m(){var s=this,r=s.ga5V() +s.d.a.a.J(0,r) +s.e.a.a.J(0,r) +r=s.x +if(r!=null)r.m() +s.al9()}, +aY(a){var s,r,q,p=this +p.br(a) +s=a.f +r=s.a +if(r===p)s.a=null +s=p.a +r=s.f +q=r.a +if(q!==p){r.a=null +r.a=p}s=s.c +if(s===0)p.a7(new A.bab(p)) +else{if(p.d.c>s-1)p.a7(new A.bac(p)) +if(p.e.c>p.a.c-1)p.a7(new A.bad(p))}}, +A(a){return new A.Cp(new A.baa(this),null)}, +R1(a,b){var s,r=this,q={} +q.a=b +r.Jo(!0) +s=r.a.c-1 +if(b>s)q.a=s +r.a7(new A.b9Y(q,r,a))}, +Dy(a,b,c,d,e){return this.aAe(a,b,c,d,e)}, +aAe(a,b,c,d,e){var s=0,r=A.y(t.H),q=this,p,o +var $async$Dy=A.u(function(f,g){if(f===1)return A.v(g,r) +while(true)switch(s){case 0:o={} +o.a=d +p=q.a.c-1 +if(d>p)o.a=p +else p=d +s=q.w?2:4 +break +case 2:p=new A.a8($.a9,t.b) +q.Jo(!0) +$.cF.p3$.push(new A.b9Z(o,q,a,c,b,e,new A.aD(p,t.gR))) +s=5 +return A.t(p,$async$Dy) +case 5:s=3 +break +case 4:s=6 +return A.t(q.z8(a,b,c,p,e),$async$Dy) +case 6:case 3:return A.w(null,r)}}) +return A.x($async$Dy,r)}, +z8(a,b,c,d,e){return this.aBt(a,b,c,d,e)}, +aBt(a,b,c,d,e){var s=0,r=A.y(t.H),q=this,p,o,n,m,l,k,j +var $async$z8=A.u(function(f,g){if(f===1)return A.v(g,r) +while(true)switch(s){case 0:l=q.d +k=d>l.c?1:-1 +j=A.bGT(l.a.a.a,new A.ba1(d)) +l=q.d.b +s=j!=null?2:4 +break +case 2:p=j.b +l=B.b.gaI(l.f).ax +l.toString +o=q.d.b +n=B.b.gaI(o.f).at +n.toString +m=B.b.gaI(q.d.b.f).ax +m.toString +s=5 +return A.t(o.iZ(n+p*l-a*m,b,c),$async$z8) +case 5:s=3 +break +case 4:l=B.b.gaI(l.f).ax +l.toString +p=$.a9 +o=t.b +n=new A.a8(p,o) +m=t.gR +o=new A.a8(p,o) +q.r=new A.ba2(q,c,e,k,a,new A.aD(n,m),2*l,b,new A.aD(o,m)) +q.a7(new A.ba3(q,d,a)) +s=6 +return A.t(A.q8(A.a([n,o],t.mo),t.H),$async$z8) +case 6:q.aBx() +case 3:return A.w(null,r)}}) +return A.x($async$z8,r)}, +Jo(a){var s,r,q=this +if(!q.w)return +if(a){s=q.d.b +r=s.f +if(r.length!==0){r=B.b.gaI(r).at +r.toString +s.fc(r)}s=q.e.b +r=s.f +if(r.length!==0){r=B.b.gaI(r).at +r.toString +s.fc(r)}}if(q.c!=null)q.a7(new A.ba4(q))}, +aBx(){return this.Jo(!1)}, +aDf(){var s,r,q=this,p=J.lC(q.d.a.a.a,new A.ba5()) +if(p.gdn(p)){s=q.c +s.toString +r=A.xX(s) +r.toString +s=q.c +s.toString +r.Nr(s,p.lr(0,new A.ba6()))}q.a.r.a.sk(0,p)}, +$iaN:1} +A.baf.prototype={ +$0(){}, +$S:0} +A.bae.prototype={ +$0(){var s=this.a,r=B.b.gaI(s.d.b.f).at +r.toString +s.y=r +r=s.w +s.a.toString +if(B.b0.tX(!r,!1))s.a.toString}, +$S:0} +A.bab.prototype={ +$0(){var s=this.a +s.d.c=0 +s.e.c=0}, +$S:0} +A.bac.prototype={ +$0(){var s=this.a +s.d.c=s.a.c-1}, +$S:0} +A.bad.prototype={ +$0(){var s=this.a +s.e.c=s.a.c-1}, +$S:0} +A.baa.prototype={ +$2(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g=null,f=this.a,e=f.a,d=e.Q===B.R?b.d:b.b +e=e.db +s=Math.max(d*2,e) +e=f.d +d=f.r +r=f.f +q=A.a([],t.x8) +p=f.a +o=p.d +n=p.e +m=p.c +l=f.d +k=l.c +j=p.Q +i=p.as +h=t.WA +e=A.a([new A.Dh(new A.cS(new A.jL(r,new A.bb(q,t.jc),0),!1,new A.dP(new A.ba7(f),A.brj(!0,!0,!0,l.d,s,l.b,o,m,l.a,g,p.ax,k,i,j,g,n,!1),g,h),g),d,e.e)],t.p) +if(f.w){d=f.e +q=f.r +p=f.a +o=p.d +n=p.e +m=p.c +l=d.c +k=p.Q +j=p.as +e.push(new A.Dh(new A.cS(r,!1,new A.dP(new A.ba8(),A.brj(!0,!0,!0,d.d,s,d.b,o,m,d.a,g,p.ax,l,j,k,g,n,!1),g,h),g),q,d.e))}return A.u3(B.c8,A.fr(B.bs,e,B.E,B.aH,g),g,g,new A.ba9(f),g,g,g)}, +$S:671} +A.ba9.prototype={ +$1(a){return this.a.Jo(!0)}, +$S:66} +A.ba7.prototype={ +$1(a){return this.a.w}, +$S:47} +A.ba8.prototype={ +$1(a){return!1}, +$S:47} +A.b9Y.prototype={ +$0(){var s=this.b +s.d.b.fc(0) +s=s.d +s.c=this.a.a +s.d=this.c}, +$S:0} +A.b9Z.prototype={ +$1(a){return this.ae4(a)}, +ae4(a){var s=0,r=A.y(t.H),q=this +var $async$$1=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:s=2 +return A.t(q.b.z8(q.c,q.e,q.d,q.a.a,q.f),$async$$1) +case 2:q.r.fj(0) +return A.w(null,r)}}) +return A.x($async$$1,r)}, +$S:672} +A.ba1.prototype={ +$1(a){return a.a===this.a}, +$S:148} +A.ba2.prototype={ +$0(){var s=this +$.cF.p3$.push(new A.ba0(s.a,s.b,s.c,s.d,s.e,s.f,s.r,s.w,s.x))}, +$S:0} +A.ba0.prototype={ +$1(a){var s,r,q,p,o,n=this,m=n.a +m.r=new A.ba_() +s=m.x +if(s!=null)s.m() +s=n.b +r=A.bw(B.z,null,s,0,null,1,null,m) +r.bS(0) +m.x=r +r=n.c +q=t.Od +p=t.Ns +p=A.aYV(A.a([new A.hi(new A.pO(0,0,q),r[0],p),new A.hi(new A.aO(0,1,t.Y),r[1],p),new A.hi(new A.pO(1,1,q),r[2],p)],t.x0),t.i) +m.f.sbP(0,new A.aw(m.x,p,p.$ti.h("aw"))) +p=m.e +r=n.d +q=B.b.gaI(m.d.b.f).ax +q.toString +o=B.b.gaI(m.e.b.f).ax +o.toString +p.b.fc(-r*(2*q-n.e*o)) +o=m.d.b +q=B.b.gaI(o.f).at +q.toString +p=n.w +n.f.cM(0,o.iZ(q+r*n.r,p,s)) +n.x.cM(0,m.e.b.iZ(0,p,s))}, +$S:6} +A.ba_.prototype={ +$0(){}, +$S:0} +A.ba3.prototype={ +$0(){var s=this.a,r=s.e +r.c=this.b +r.d=this.c +s.w=!0}, +$S:0} +A.ba4.prototype={ +$0(){var s,r=this.a,q=r.f +if(q.gk(q)>=0.5){s=r.d +r.d=r.e +r.e=s}r.w=!1 +q.sbP(0,B.qf)}, +$S:0} +A.ba5.prototype={ +$1(a){return a.b<1&&a.c>0}, +$S:148} +A.ba6.prototype={ +$2(a,b){return a.b=a?s:r +f=e.qG +f.toString +return e.Fq(e.gTv(),B.e.hs(s,-f,0),q,b,B.hi,i,a,o,k,p,h)}, +gVf(){return this.L7}, +Xc(a,b){var s,r=this +switch(a.a){case 0:s=r.EQ +s===$&&A.b() +r.EQ=s+b.a +break +case 1:s=r.EP +s===$&&A.b() +r.EP=s-b.a +break}if(b.x)r.L7=!0}} +A.J4.prototype={$iJ4:1} +A.uH.prototype={ +ao(a,b){return J.jn(this.a,b)}, +F(a,b){J.pA(this.a,b) +return $.bgW().F(0,"flutter."+b)}, +wn(a,b,c){var s,r +A.bf(c,"value") +s=this.a +r=J.cn(s) +if(t.yp.b(c))r.p(s,b,J.fJ(c)) +else r.p(s,b,c) +return $.bgW().vL(a,"flutter."+b,c)}} +A.aJ3.prototype={ +F(a,b){return this.aNv(0,b)}, +aNv(a,b){var s=0,r=A.y(t.y),q,p +var $async$F=A.u(function(c,d){if(c===1)return A.v(d,r) +while(true)switch(s){case 0:s=3 +return A.t(B.nV.pl("remove",A.ap(["key",b],t.N,t.z),!1,t.y),$async$F) +case 3:p=d +p.toString +q=p +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$F,r)}, +vL(a,b,c){return this.afH(a,b,c)}, +afH(a,b,c){var s=0,r=A.y(t.y),q,p +var $async$vL=A.u(function(d,e){if(d===1)return A.v(e,r) +while(true)switch(s){case 0:s=3 +return A.t(B.nV.pl("set"+a,A.ap(["key",b,"value",c],t.N,t.z),!1,t.y),$async$vL) +case 3:p=e +p.toString +q=p +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$vL,r)}, +jn(a){var s=0,r=A.y(t.nf),q,p,o,n +var $async$jn=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:p=t.N +o=t.K +s=3 +return A.t(B.nV.Vq("getAll",p,o),$async$jn) +case 3:n=c +q=n==null?A.F(p,o):n +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$jn,r)}} +A.aSP.prototype={} +A.aM1.prototype={} +A.aDG.prototype={} +A.aSN.prototype={ +jn(a){var s=0,r=A.y(t.nf),q,p=this +var $async$jn=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:q=p.Ns(new A.aDG(new A.aM1("flutter.",null))) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$jn,r)}, +Ns(a){return this.aeh(a)}, +aeh(a){var s=0,r=A.y(t.nf),q,p=this,o,n,m,l,k,j +var $async$Ns=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:k=a.a +j=A.F(t.N,t.K) +for(o=p.ar_(k.a,k.b),n=J.ao(o.a),o=new A.jc(n,o.b,o.$ti.h("jc<1>"));o.u();){m=n.gH(n) +l=window.localStorage.getItem(m) +l.toString +j.p(0,m,p.aoU(l))}q=j +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$Ns,r)}, +F(a,b){return this.aNw(0,b)}, +aNw(a,b){var s=0,r=A.y(t.y),q,p +var $async$F=A.u(function(c,d){if(c===1)return A.v(d,r) +while(true)switch(s){case 0:p=window.localStorage +p.toString +B.Kn.F(p,b) +q=!0 +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$F,r)}, +vL(a,b,c){return this.afI(a,b,c)}, +afI(a,b,c){var s=0,r=A.y(t.y),q,p +var $async$vL=A.u(function(d,e){if(d===1)return A.v(e,r) +while(true)switch(s){case 0:p=window.localStorage +p.toString +p.setItem(b,B.at.l2(c)) +q=!0 +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$vL,r)}, +ar_(a,b){var s=window.localStorage +s.toString +s=B.Kn.gcP(s) +return new A.be(s,new A.aSO(a,b),A.ab(s).h("be<1>"))}, +aoU(a){var s=B.at.hu(0,a) +if(t.j.b(s))return J.iP(s,t.N) +s.toString +return s}} +A.aSO.prototype={ +$1(a){var s +if(B.c.c8(a,this.a))s=!0 +else s=!1 +return s}, +$S:10} +A.Ea.prototype={ +K(){return"ShimmerDirection."+this.b}} +A.NF.prototype={ +a8(){return new A.alx(null,null,B.m)}} +A.alx.prototype={ +aR(){var s,r,q=this +q.b5() +q.a.toString +s=A.bw(B.z,null,B.rH,0,null,1,null,q) +s.cL() +r=s.eo$ +r.b=!0 +r.a.push(new A.baB(q)) +q.d=s +q.a.toString +s.bS(0)}, +aY(a){var s +this.a.toString +s=this.d +s===$&&A.b() +s.bS(0) +this.br(a)}, +A(a){var s=this.d +s===$&&A.b() +return A.h1(s,new A.baA(this),this.a.c)}, +m(){var s=this.d +s===$&&A.b() +s.m() +this.ale()}, +$iaN:1} +A.baB.prototype={ +$1(a){var s +if(a!==B.a5)return +s=this.a;++s.e +s.a.toString +s=s.d +s===$&&A.b() +s.Bq(0)}, +$S:9} +A.baA.prototype={ +$2(a,b){var s=this.a,r=s.a.f +s=s.d +s===$&&A.b() +s=s.x +s===$&&A.b() +return new A.GI(s,B.adf,r,b,null)}, +$S:675} +A.GI.prototype={ +aX(a){var s=new A.alw(this.f,this.r,this.e,null,A.aB(t.T)) +s.aW() +s.sbN(null) +return s}, +b4(a,b){b.saMG(0,this.e) +b.saf0(this.r) +b.st8(0,this.f)}} +A.alw.prototype={ +gqs(){return this.E$!=null}, +saMG(a,b){if(b===this.aw)return +this.aw=b +this.aU()}, +saf0(a){if(a.l(0,this.a0))return +this.a0=a +this.aU()}, +st8(a,b){if(b===this.C)return +this.C=b +this.a6()}, +aD(a,b){var s,r,q,p,o,n,m,l=this,k=l.E$ +if(k!=null){s=k.gq(k).a +k=l.E$ +r=k.gq(k).b +k=l.C +if(k===B.adg){k=s+(-s-s)*l.aw-s +q=new A.I(k,0,k+3*s,0+r)}else if(k===B.adh){k=-r +k=k+(r-k)*l.aw-r +q=new A.I(0,k,0+s,k+3*r)}else{p=l.aw +if(k===B.adi){k=r+(-r-r)*p-r +q=new A.I(0,k,0+s,k+3*r)}else{k=-s +p=k+(s-k)*p-s +q=new A.I(p,0,p+3*s,0+r)}}k=t.uv +if(k.a(A.H.prototype.gb3.call(l,l))==null)l.ch.sb3(0,new A.NC(A.F(t.S,t.Q),A.aB(t.kd))) +p=k.a(A.H.prototype.gb3.call(l,l)) +p.toString +o=l.a0.aGC(0,q) +if(o!==p.k3){p.k3=o +p.hT()}o=l.gq(l) +n=b.a +m=b.b +o=new A.I(n,m,n+o.a,m+o.b) +if(!o.l(0,p.k4)){p.k4=o +p.hT()}if(B.iC!==p.ok){p.ok=B.iC +p.hT()}k=k.a(A.H.prototype.gb3.call(l,l)) +k.toString +a.r6(k,A.iw.prototype.giE.call(l),b)}else l.ch.sb3(0,null)}} +A.VC.prototype={ +m(){var s=this,r=s.c4$ +if(r!=null)r.J(0,s.ghI()) +s.c4$=null +s.aZ()}, +cn(){this.d3() +this.cT() +this.hJ()}} +A.aU_.prototype={ +gt(a){return this.c.length}, +gaKU(a){return this.b.length}, +alM(a,b){var s,r,q,p,o,n +for(s=this.c,r=s.length,q=this.b,p=0;p=r||s[n]!==10)o=10}if(o===10)q.push(p+1)}}, +C_(a){var s,r=this +if(a<0)throw A.c(A.c6("Offset may not be negative, was "+a+".")) +else if(a>r.c.length)throw A.c(A.c6("Offset "+a+u.D+r.gt(r)+".")) +s=r.b +if(a=B.b.ga1(s))return s.length-1 +if(r.avf(a)){s=r.d +s.toString +return s}return r.d=r.aqa(a)-1}, +avf(a){var s,r,q=this.d +if(q==null)return!1 +s=this.b +if(a=r-1||a=r-2||aa)p=r +else s=r+1}return p}, +Nv(a){var s,r,q=this +if(a<0)throw A.c(A.c6("Offset may not be negative, was "+a+".")) +else if(a>q.c.length)throw A.c(A.c6("Offset "+a+" must be not be greater than the number of characters in the file, "+q.gt(q)+".")) +s=q.C_(a) +r=q.b[s] +if(r>a)throw A.c(A.c6("Line "+s+" comes after offset "+a+".")) +return a-r}, +q7(a){var s,r,q,p,o=this +if(a<0)throw A.c(A.c6("Line may not be negative, was "+a+".")) +else{s=o.b +r=s.length +if(a>=r)throw A.c(A.c6("Line "+a+" must be less than the number of lines in the file, "+o.gaKU(o)+"."))}q=s[a] +if(q<=o.c.length){p=a+1 +s=p=s[p]}else s=!0 +if(s)throw A.c(A.c6("Line "+a+" doesn't have 0 columns.")) +return q}} +A.a0T.prototype={ +geQ(){return this.a.a}, +geC(a){return this.a.C_(this.b)}, +gft(){return this.a.Nv(this.b)}, +gc6(a){return this.b}} +A.FQ.prototype={ +geQ(){return this.a.a}, +gt(a){return this.c-this.b}, +gc0(a){return A.biC(this.a,this.b)}, +gcf(a){return A.biC(this.a,this.c)}, +ge9(a){return A.ja(B.nX.d2(this.a.c,this.b,this.c),0,null)}, +gca(a){var s=this,r=s.a,q=s.c,p=r.C_(q) +if(r.Nv(q)===0&&p!==0){if(q-s.b===0)return p===r.b.length-1?"":A.ja(B.nX.d2(r.c,r.q7(p),r.q7(p+1)),0,null)}else q=p===r.b.length-1?r.c.length:r.q7(p+1) +return A.ja(B.nX.d2(r.c,r.q7(r.C_(s.b)),q),0,null)}, +bM(a,b){var s +if(!(b instanceof A.FQ))return this.aiG(0,b) +s=B.f.bM(this.b,b.b) +return s===0?B.f.bM(this.c,b.c):s}, +l(a,b){var s=this +if(b==null)return!1 +if(!(b instanceof A.FQ))return s.aiF(0,b) +return s.b===b.b&&s.c===b.c&&J.i(s.a.a,b.a.a)}, +gv(a){return A.X(this.b,this.c,this.a.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +$iqU:1} +A.aEp.prototype={ +aJA(a4){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1=this,a2=null,a3=a1.a +a1.a6p(B.b.gN(a3).c) +s=a1.e +r=A.aT(s,a2,!1,t.Xk) +for(q=a1.r,s=s!==0,p=a1.b,o=0;o0){m=a3[o-1] +l=m.c +k=n.c +if(!J.i(l,k)){a1.JR("\u2575") +q.a+="\n" +a1.a6p(k)}else if(m.b+1!==n.b){a1.aDV("...") +q.a+="\n"}}for(l=n.d,k=A.ab(l).h("d1<1>"),j=new A.d1(l,k),j=new A.bZ(j,j.gt(j),k.h("bZ")),k=k.h("ax.E"),i=n.b,h=n.a;j.u();){g=j.d +if(g==null)g=k.a(g) +f=g.a +e=f.gc0(f) +e=e.geC(e) +d=f.gcf(f) +if(e!==d.geC(d)){e=f.gc0(f) +f=e.geC(e)===i&&a1.avg(B.c.U(h,0,f.gc0(f).gft()))}else f=!1 +if(f){c=B.b.eX(r,a2) +if(c<0)A.q(A.bU(A.h(r)+" contains no null elements.",a2)) +r[c]=g}}a1.aDU(i) +q.a+=" " +a1.aDT(n,r) +if(s)q.a+=" " +b=B.b.vb(l,new A.aEK()) +a=b===-1?a2:l[b] +k=a!=null +if(k){j=a.a +g=j.gc0(j) +g=g.geC(g)===i?j.gc0(j).gft():0 +f=j.gcf(j) +a1.aDR(h,g,f.geC(f)===i?j.gcf(j).gft():h.length,p)}else a1.JT(h) +q.a+="\n" +if(k)a1.aDS(n,a,r) +for(k=l.length,a0=0;a0")),q=this.r,r=r.h("ac.E");s.u();){p=s.d +if(p==null)p=r.a(p) +if(p===9)q.a+=B.c.au(" ",4) +else q.a+=A.ep(p)}}, +JS(a,b,c){var s={} +s.a=c +if(b!=null)s.a=B.f.j(b+1) +this.or(new A.aEI(s,this,a),"\x1b[34m")}, +JR(a){return this.JS(a,null,null)}, +aDV(a){return this.JS(null,null,a)}, +aDU(a){return this.JS(null,a,null)}, +SP(){return this.JS(null,null,null)}, +PB(a){var s,r,q,p +for(s=new A.hQ(a),r=t.Hz,s=new A.bZ(s,s.gt(s),r.h("bZ")),r=r.h("ac.E"),q=0;s.u();){p=s.d +if((p==null?r.a(p):p)===9)++q}return q}, +avg(a){var s,r,q +for(s=new A.hQ(a),r=t.Hz,s=new A.bZ(s,s.gt(s),r.h("bZ")),r=r.h("ac.E");s.u();){q=s.d +if(q==null)q=r.a(q) +if(q!==32&&q!==9)return!1}return!0}, +aod(a,b){var s,r=this.b!=null +if(r&&b!=null)this.r.a+=b +s=a.$0() +if(r&&b!=null)this.r.a+="\x1b[0m" +return s}, +or(a,b){return this.aod(a,b,t.z)}} +A.aEJ.prototype={ +$0(){return this.a}, +$S:115} +A.aEr.prototype={ +$1(a){var s=a.d +s=new A.be(s,new A.aEq(),A.ab(s).h("be<1>")) +return s.gt(s)}, +$S:677} +A.aEq.prototype={ +$1(a){var s=a.a,r=s.gc0(s) +r=r.geC(r) +s=s.gcf(s) +return r!==s.geC(s)}, +$S:137} +A.aEs.prototype={ +$1(a){return a.c}, +$S:679} +A.aEu.prototype={ +$1(a){var s=a.a.geQ() +return s==null?new A.B():s}, +$S:680} +A.aEv.prototype={ +$2(a,b){return a.a.bM(0,b.a)}, +$S:681} +A.aEw.prototype={ +$1(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=a.a,d=a.b,c=A.a([],t.Kx) +for(s=J.cn(d),r=s.gaj(d),q=t._Y;r.u();){p=r.gH(r).a +o=p.gca(p) +n=A.bfj(o,p.ge9(p),p.gc0(p).gft()) +n.toString +n=B.c.rT("\n",B.c.U(o,0,n)) +m=n.gt(n) +p=p.gc0(p) +l=p.geC(p)-m +for(p=o.split("\n"),n=p.length,k=0;kB.b.ga1(c).b)c.push(new A.nD(j,l,e,A.a([],q)));++l}}i=A.a([],q) +for(r=c.length,h=0,k=0;k")),p=p.h("ax.E");q.u();){n=q.d +if(n==null)n=p.a(n) +f=n.a +f=f.gc0(f) +if(f.geC(f)>j.b)break +i.push(n)}h+=i.length-g +B.b.I(j.d,i)}return c}, +$S:682} +A.aEt.prototype={ +$1(a){var s=a.a +s=s.gcf(s) +return s.geC(s)" +return null}, +$S:0} +A.aEE.prototype={ +$0(){var s=this.b===this.c.b?"\u250c":"\u2514" +this.a.r.a+=s}, +$S:5} +A.aEF.prototype={ +$0(){var s=this.b==null?"\u2500":"\u253c" +this.a.r.a+=s}, +$S:5} +A.aEG.prototype={ +$0(){this.a.r.a+="\u2500" +return null}, +$S:0} +A.aEH.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.or(new A.aEC(p,s),p.b) +p.a=!0 +if(p.b==null)p.b=s.b}else{if(q.r===r){r=q.f.a +s=r.gcf(r).gft()===s.a.length}else s=!1 +r=q.b +if(s)r.r.a+="\u2514" +else r.or(new A.aED(r,o),p.b)}}}, +$S:5} +A.aEC.prototype={ +$0(){var s=this.a.a?"\u252c":"\u250c" +this.b.r.a+=s}, +$S:5} +A.aED.prototype={ +$0(){this.a.r.a+=this.b}, +$S:5} +A.aEy.prototype={ +$0(){var s=this +return s.a.JT(B.c.U(s.b,s.c,s.d))}, +$S:0} +A.aEz.prototype={ +$0(){var s,r,q=this.a,p=q.r,o=p.a,n=this.c.a,m=n.gc0(n).gft(),l=n.gcf(n).gft() +n=this.b.a +s=q.PB(B.c.U(n,0,m)) +r=q.PB(B.c.U(n,m,l)) +m+=s*3 +p.a+=B.c.au(" ",m) +p=p.a+=B.c.au("^",Math.max(l+(s+r)*3-m,1)) +return p.length-o.length}, +$S:74} +A.aEA.prototype={ +$0(){var s=this.c.a +return this.a.aDQ(this.b,s.gc0(s).gft())}, +$S:0} +A.aEB.prototype={ +$0(){var s,r=this,q=r.a,p=q.r,o=p.a +if(r.b)p.a+=B.c.au("\u2500",3) +else{s=r.d.a +q.a6o(r.c,Math.max(s.gcf(s).gft()-1,0),!1)}return p.a.length-o.length}, +$S:74} +A.aEI.prototype={ +$0(){var s=this.b,r=s.r,q=this.a.a +if(q==null)q="" +s=r.a+=B.c.Mv(q,s.d) +q=this.c +r.a=s+(q==null?"\u2502":q)}, +$S:5} +A.jf.prototype={ +j(a){var s,r,q=this.a,p=q.gc0(q) +p=p.geC(p) +s=q.gc0(q).gft() +r=q.gcf(q) +q=""+"primary "+(""+p+":"+s+"-"+r.geC(r)+":"+q.gcf(q).gft()) +return q.charCodeAt(0)==0?q:q}} +A.b4T.prototype={ +$0(){var s,r,q,p,o=this.a +if(!(t.D_.b(o)&&A.bfj(o.gca(o),o.ge9(o),o.gc0(o).gft())!=null)){s=o.gc0(o) +s=A.a97(s.gc6(s),0,0,o.geQ()) +r=o.gcf(o) +r=r.gc6(r) +q=o.geQ() +p=A.bRn(o.ge9(o),10) +o=A.aVI(s,A.a97(r,A.btP(o.ge9(o)),p,q),o.ge9(o),o.ge9(o))}return A.bMz(A.bMB(A.bMA(o)))}, +$S:683} +A.nD.prototype={ +j(a){return""+this.b+': "'+this.a+'" ('+B.b.cq(this.d,", ")+")"}} +A.nh.prototype={ +Um(a){var s=this.a +if(!J.i(s,a.geQ()))throw A.c(A.bU('Source URLs "'+A.h(s)+'" and "'+A.h(a.geQ())+"\" don't match.",null)) +return Math.abs(this.b-a.gc6(a))}, +bM(a,b){var s=this.a +if(!J.i(s,b.geQ()))throw A.c(A.bU('Source URLs "'+A.h(s)+'" and "'+A.h(b.geQ())+"\" don't match.",null)) +return this.b-b.gc6(b)}, +l(a,b){if(b==null)return!1 +return t.y3.b(b)&&J.i(this.a,b.geQ())&&this.b===b.gc6(b)}, +gv(a){var s=this.a +s=s==null?null:s.gv(s) +if(s==null)s=0 +return s+this.b}, +j(a){var s=this,r=A.o(s).j(0),q=s.a +return"<"+r+": "+s.b+" "+(A.h(q==null?"unknown source":q)+":"+(s.c+1)+":"+(s.d+1))+">"}, +$icu:1, +geQ(){return this.a}, +gc6(a){return this.b}, +geC(a){return this.c}, +gft(){return this.d}} +A.a98.prototype={ +Um(a){if(!J.i(this.a.a,a.geQ()))throw A.c(A.bU('Source URLs "'+A.h(this.geQ())+'" and "'+A.h(a.geQ())+"\" don't match.",null)) +return Math.abs(this.b-a.gc6(a))}, +bM(a,b){if(!J.i(this.a.a,b.geQ()))throw A.c(A.bU('Source URLs "'+A.h(this.geQ())+'" and "'+A.h(b.geQ())+"\" don't match.",null)) +return this.b-b.gc6(b)}, +l(a,b){if(b==null)return!1 +return t.y3.b(b)&&J.i(this.a.a,b.geQ())&&this.b===b.gc6(b)}, +gv(a){var s=this.a.a +s=s==null?null:s.gv(s) +if(s==null)s=0 +return s+this.b}, +j(a){var s=A.o(this).j(0),r=this.b,q=this.a,p=q.a +return"<"+s+": "+r+" "+(A.h(p==null?"unknown source":p)+":"+(q.C_(r)+1)+":"+(q.Nv(r)+1))+">"}, +$icu:1, +$inh:1} +A.a9p.prototype={ +alN(a,b,c){var s,r=this.b,q=this.a +if(!J.i(r.geQ(),q.geQ()))throw A.c(A.bU('Source URLs "'+A.h(q.geQ())+'" and "'+A.h(r.geQ())+"\" don't match.",null)) +else if(r.gc6(r)'}, +$icu:1} +A.qU.prototype={ +gca(a){return this.d}} +A.il.prototype={ +aI7(a){var s=this.a,r=new A.ad(s,new A.avs(a,!1),A.ab(s).h("ad<1,dS>")),q=r.Cs(0,new A.avt(!1)) +if(!q.gaj(q).u()&&!r.gai(r))return new A.il(A.i3(A.a([r.ga1(r)],t.ch),t.f3)) +return new A.il(A.i3(q,t.f3))}, +BD(){var s=this.a +return A.aYC(new A.ip(s,new A.avy(),A.ab(s).h("ip<1,dW>")),null)}, +j(a){var s=this.a,r=A.ab(s) +return new A.ad(s,new A.avw(new A.ad(s,new A.avx(),r.h("ad<1,m>")).oM(0,0,B.iF)),r.h("ad<1,f>")).cq(0,u.C)}, +$icz:1, +gX1(){return this.a}} +A.avq.prototype={ +$0(){return A.bol(this.a.j(0))}, +$S:685} +A.avr.prototype={ +$1(a){return a.length!==0}, +$S:10} +A.avs.prototype={ +$1(a){return a.UT(this.a,this.b)}, +$S:686} +A.avt.prototype={ +$1(a){if(a.gtk().length>1)return!0 +if(a.gtk().length===0)return!1 +if(!this.a)return!1 +return J.bCd(B.b.gaI(a.gtk()))!=null}, +$S:687} +A.avy.prototype={ +$1(a){return a.gtk()}, +$S:688} +A.avx.prototype={ +$1(a){var s=a.gtk() +return new A.ad(s,new A.avv(),A.ab(s).h("ad<1,m>")).oM(0,0,B.iF)}, +$S:689} +A.avv.prototype={ +$1(a){return a.glc(a).length}, +$S:256} +A.avw.prototype={ +$1(a){var s=a.gtk() +return new A.ad(s,new A.avu(this.a),A.ab(s).h("ad<1,f>")).pO(0)}, +$S:691} +A.avu.prototype={ +$1(a){return B.c.Mv(a.glc(a),this.a)+" "+A.h(a.gFC())+"\n"}, +$S:153} +A.dW.prototype={ +ghz(){var s=this.a +if(s.gfg()==="data")return"data:..." +return $.Hm().Ws(s)}, +gXQ(){var s=this.a +if(s.gfg()!=="package")return null +return B.b.gN(s.gdN(s).split("/"))}, +glc(a){var s,r=this,q=r.b +if(q==null)return r.ghz() +s=r.c +if(s==null)return r.ghz()+" "+A.h(q) +return r.ghz()+" "+A.h(q)+":"+A.h(s)}, +j(a){return this.glc(this)+" in "+A.h(this.d)}, +ghm(){return this.a}, +geC(a){return this.b}, +gft(){return this.c}, +gFC(){return this.d}} +A.aCL.prototype={ +$0(){var s,r,q,p,o,n,m,l=null,k=this.a +if(k==="...")return new A.dW(A.f7(l,l,l,l,l,l),l,l,"...") +s=$.bBs().l7(k) +if(s==null)return new A.nm(A.f7(l,l,"unparsed",l,l,l),k) +k=s.b +r=k[1] +r.toString +q=$.bAa() +r=A.eC(r,q,"") +p=A.eC(r,"","") +r=k[2] +q=r +q.toString +if(B.c.c8(q,"1?A.ef(n[1],l,l):l +return new A.dW(o,m,k>2?A.ef(n[2],l,l):l,p)}, +$S:100} +A.aCJ.prototype={ +$0(){var s,r,q=null,p="",o=this.a,n=$.bBn().l7(o) +if(n==null)return new A.nm(A.f7(q,q,"unparsed",q,q,q),o) +o=new A.aCK(o) +s=n.b +r=s[2] +if(r!=null){r=r +r.toString +s=s[1] +s.toString +s=A.eC(s,"",p) +s=A.eC(s,"Anonymous function",p) +return o.$2(r,A.eC(s,"(anonymous function)",p))}else{s=s[3] +s.toString +return o.$2(s,p)}}, +$S:100} +A.aCK.prototype={ +$2(a,b){var s,r,q,p,o,n=null,m=$.bBm(),l=m.l7(a) +for(;l!=null;a=s){s=l.b[1] +s.toString +l=m.l7(s)}if(a==="native")return new A.dW(A.dH("native",0,n),n,n,b) +r=$.bBr().l7(a) +if(r==null)return new A.nm(A.f7(n,n,"unparsed",n,n,n),this.a) +m=r.b +s=m[1] +s.toString +q=A.biL(s) +s=m[2] +s.toString +p=A.ef(s,n,n) +o=m[3] +return new A.dW(q,p,o!=null?A.ef(o,n,n):n,b)}, +$S:694} +A.aCG.prototype={ +$0(){var s,r,q,p,o=null,n=this.a,m=$.bAj().l7(n) +if(m==null)return new A.nm(A.f7(o,o,"unparsed",o,o,o),n) +n=m.b +s=n[1] +s.toString +r=A.eC(s,"/<","") +s=n[2] +s.toString +q=A.biL(s) +n=n[3] +n.toString +p=A.ef(n,o,o) +return new A.dW(q,p,o,r.length===0||r==="anonymous"?"":r)}, +$S:100} +A.aCH.prototype={ +$0(){var s,r,q,p,o,n,m,l=null,k=this.a,j=$.bAl().l7(k) +if(j==null)return new A.nm(A.f7(l,l,"unparsed",l,l,l),k) +s=j.b +r=s[3] +q=r +q.toString +if(B.c.n(q," line "))return A.bGb(k) +k=r +k.toString +p=A.biL(k) +o=s[1] +if(o!=null){k=s[2] +k.toString +k=B.c.rT("/",k) +o+=B.b.pO(A.aT(k.gt(k),".",!1,t.N)) +if(o==="")o="" +o=B.c.vt(o,$.bAt(),"")}else o="" +k=s[4] +if(k==="")n=l +else{k=k +k.toString +n=A.ef(k,l,l)}k=s[5] +if(k==null||k==="")m=l +else{k=k +k.toString +m=A.ef(k,l,l)}return new A.dW(p,n,m,o)}, +$S:100} +A.aCI.prototype={ +$0(){var s,r,q,p,o=null,n=this.a,m=$.bAp().l7(n) +if(m==null)throw A.c(A.cJ("Couldn't parse package:stack_trace stack trace line '"+n+"'.",o,o)) +n=m.b +s=n[1] +if(s==="data:...")r=A.bsS("") +else{s=s +s.toString +r=A.dH(s,0,o)}if(r.gfg()===""){s=$.Hm() +r=s.ad4(A.bQz(s.a.FR(A.beb(r))))}s=n[2] +if(s==null)q=o +else{s=s +s.toString +q=A.ef(s,o,o)}s=n[3] +if(s==null)p=o +else{s=s +s.toString +p=A.ef(s,o,o)}return new A.dW(r,q,p,n[4])}, +$S:100} +A.KL.prototype={ +gPb(){var s,r=this,q=r.b +if(q===$){s=r.a.$0() +r.b!==$&&A.am() +r.b=s +q=s}return q}, +gX1(){return this.gPb().gX1()}, +BD(){return new A.xn(this.gPb().gad3())}, +j(a){return this.gPb().j(0)}, +$icz:1, +$iil:1} +A.xn.prototype={ +gJy(){var s,r=this,q=r.b +if(q===$){s=r.a.$0() +r.b!==$&&A.am() +r.b=s +q=s}return q}, +gtk(){return this.gJy().gtk()}, +gdd(){return this.gJy().gdd()}, +UT(a,b){return new A.xn(new A.aGM(this,a,!1))}, +j(a){return this.gJy().j(0)}, +$icz:1, +$idS:1} +A.aGM.prototype={ +$0(){return this.a.gJy().UT(this.b,this.c)}, +$S:92} +A.dS.prototype={ +UT(a,b){var s,r,q,p,o={} +o.a=a +s=A.a([],t.sR) +for(r=this.a,q=A.ab(r).h("d1<1>"),r=new A.d1(r,q),r=new A.bZ(r,r.gt(r),q.h("bZ")),q=q.h("ax.E");r.u();){p=r.d +if(p==null)p=q.a(p) +if(p instanceof A.nm||!o.a.$1(p))s.push(p) +else if(s.length===0||!o.a.$1(B.b.ga1(s)))s.push(new A.dW(p.ghm(),p.geC(p),p.gft(),p.gFC()))}return A.aYC(new A.d1(s,t.zw),this.b.a)}, +j(a){var s=this.a,r=A.ab(s) +return new A.ad(s,new A.aYK(new A.ad(s,new A.aYL(),r.h("ad<1,m>")).oM(0,0,B.iF)),r.h("ad<1,f>")).pO(0)}, +$icz:1, +gtk(){return this.a}, +gdd(){return this.b}} +A.aYH.prototype={ +$0(){var s=this.a,r=s.gtk() +return A.aYC(A.fE(r,this.b+2,null,A.ab(r).c),s.gdd().a)}, +$S:92} +A.aYI.prototype={ +$0(){return A.bsJ(this.a.j(0))}, +$S:92} +A.aYJ.prototype={ +$1(a){return a.length!==0}, +$S:10} +A.aYG.prototype={ +$1(a){return!B.c.c8(a,$.bBq())}, +$S:10} +A.aYF.prototype={ +$1(a){return a!=="\tat "}, +$S:10} +A.aYD.prototype={ +$1(a){return a.length!==0&&a!=="[native code]"}, +$S:10} +A.aYE.prototype={ +$1(a){return!B.c.c8(a,"=====")}, +$S:10} +A.aYL.prototype={ +$1(a){return a.glc(a).length}, +$S:256} +A.aYK.prototype={ +$1(a){if(a instanceof A.nm)return a.j(0)+"\n" +return B.c.Mv(a.glc(a),this.a)+" "+A.h(a.gFC())+"\n"}, +$S:153} +A.nm.prototype={ +j(a){return this.w}, +$idW:1, +ghm(){return this.a}, +geC(){return null}, +gft(){return null}, +gXQ(){return null}, +glc(){return"unparsed"}, +gFC(){return this.w}} +A.aaO.prototype={ +j(a){var s,r={} +r.a=1 +s=this.a +return new A.ad(s,new A.aZN(r),A.ab(s).h("ad<1,f>")).pO(0)}, +$icz:1} +A.aZN.prototype={ +$1(a){var s,r,q,p=B.c.Mv("#"+this.a.a++,8),o=a.gFC() +o.toString +o=A.blZ(o,A.bF("[^.]+\\.",!0,!1,!1),new A.aZM(),null) +s=A.eC(o,"","") +r=a.geC(a) +if(r==null)r=0 +q=a.gft() +if(q==null)q=0 +return p+s+" ("+a.ghm().j(0)+":"+r+":"+q+")\n"}, +$S:153} +A.aZM.prototype={ +$1(a){return A.h(a.i(0,1))+".<"+A.h(a.i(0,1))+"_async_body>"}, +$S:132} +A.a1B.prototype={ +aly(a,b,c,d){var s=this,r=$.a9 +s.a!==$&&A.cl() +s.a=new A.Ra(a,s,new A.aD(new A.a8(r,t.LR),t.zh),b,d.h("Ra<0>")) +if(c.a.gh1())c.a=new A.a8C(d.h("@<0>").S(d).h("a8C<1,2>")).qx(c.a) +r=A.ln(null,new A.aE5(c,s),null,!0,d) +s.b!==$&&A.cl() +s.b=r}, +a2S(){var s,r +this.d=!0 +s=this.c +if(s!=null)s.aQ(0) +r=this.b +r===$&&A.b() +r.ad(0)}} +A.aE5.prototype={ +$0(){var s,r,q=this.b +if(q.d)return +s=this.a.a +r=q.b +r===$&&A.b() +q.c=s.h2(r.gjx(r),new A.aE4(q),r.gww())}, +$S:0} +A.aE4.prototype={ +$0(){var s=this.a,r=s.a +r===$&&A.b() +r.a2T() +s=s.b +s===$&&A.b() +s.ad(0)}, +$S:0} +A.Ra.prototype={ +G(a,b){if(this.e)throw A.c(A.R("Cannot add event after closing.")) +if(this.d)return +this.a.a.G(0,b)}, +dO(a,b){if(this.e)throw A.c(A.R("Cannot add event after closing.")) +if(this.d)return +this.aru(a,b)}, +pp(a){return this.dO(a,null)}, +aru(a,b){var s=this +if(s.w){s.a.a.dO(a,b) +return}s.c.f6(a,b) +s.a2T() +s.b.a2S() +s.a.a.ad(0).me(new A.b4A())}, +ad(a){var s=this +if(s.e)return s.c.a +s.e=!0 +if(!s.d){s.b.a2S() +s.c.cM(0,s.a.a.ad(0))}return s.c.a}, +a2T(){this.d=!0 +var s=this.c +if((s.a.a&30)===0)s.fj(0) +return}, +$idL:1} +A.b4A.prototype={ +$1(a){}, +$S:29} +A.a9z.prototype={} +A.a9A.prototype={} +A.a9E.prototype={ +gfS(a){return A.bs(this.c)}} +A.Og.prototype={ +gAX(){var s=this +if(s.c!==s.e)s.d=null +return s.d}, +y5(a){var s,r=this,q=r.d=J.bnE(a,r.b,r.c) +r.e=r.c +s=q!=null +if(s)r.e=r.c=q.gcf(q) +return s}, +a9b(a,b){var s +if(this.y5(a))return +if(b==null)if(a instanceof A.mR)b="/"+a.a+"/" +else{s=J.cI(a) +s=A.eC(s,"\\","\\\\") +b='"'+A.eC(s,'"','\\"')+'"'}this.a0C(b)}, +uQ(a){return this.a9b(a,null)}, +a9c(){if(this.c===this.b.length)return +this.a0C("no more input")}, +aHx(a,b,c,d){var s,r,q,p,o,n,m=this.b +if(d<0)A.q(A.c6("position must be greater than or equal to 0.")) +else if(d>m.length)A.q(A.c6("position must be less than or equal to the string length.")) +s=d+c>m.length +if(s)A.q(A.c6("position plus length must not go beyond the end of the string.")) +s=this.a +r=new A.hQ(m) +q=A.a([0],t.t) +p=new Uint32Array(A.jk(r.fL(r))) +o=new A.aU_(s,q,p) +o.alM(r,s) +n=d+c +if(n>p.length)A.q(A.c6("End "+n+u.D+o.gt(o)+".")) +else if(d<0)A.q(A.c6("Start may not be negative, was "+d+".")) +throw A.c(new A.a9E(m,b,new A.FQ(o,d,n)))}, +a0C(a){this.aHx(0,"expected "+a+".",0,this.c)}} +A.bfK.prototype={ +$1(a){return a?1:0}, +$S:695} +A.bfL.prototype={ +$2(a,b){return a+b}, +$S:172} +A.aH7.prototype={} +A.hr.prototype={ +K(){return"AuthType."+this.b}, +h5(a){var s +switch(this.a){case 0:s=A.A(a,B.h,t.J).gma() +break +case 1:s=A.A(a,B.h,t.J).gm9() +break +default:s=null}return s}} +A.eT.prototype={ +K(){return"ReaderMode."+this.b}, +h5(a){var s +switch(this.a){case 0:s=A.A(a,B.h,t.J).gnE() +break +case 1:s=A.A(a,B.h,t.J).gnD() +break +case 2:s=A.A(a,B.h,t.J).gnF() +break +case 3:s=A.A(a,B.h,t.J).gnG() +break +case 4:s=A.A(a,B.h,t.J).gnB() +break +case 5:s=A.A(a,B.h,t.J).gnC() +break +case 6:s=A.A(a,B.h,t.J).gnH() +break +case 7:s=A.A(a,B.h,t.J).gnI() +break +default:s=null}return s}} +A.fc.prototype={ +K(){return"ReaderNavigationLayout."+this.b}, +h5(a){var s +switch(this.a){case 0:s=A.A(a,B.h,t.J).gnJ() +break +case 1:s=A.A(a,B.h,t.J).gnO() +break +case 2:s=A.A(a,B.h,t.J).gnP() +break +case 3:s=A.A(a,B.h,t.J).gnL() +break +case 4:s=A.A(a,B.h,t.J).gnN() +break +case 5:s=A.A(a,B.h,t.J).gnK() +break +default:s=null}return s}} +A.kq.prototype={ +K(){return"MangaSort."+this.b}, +h5(a){var s +switch(this.a){case 0:s=A.A(a,B.h,t.J).gn2() +break +case 1:s=A.A(a,B.h,t.J).gn3() +break +case 2:s=A.A(a,B.h,t.J).gn5() +break +case 3:s=A.A(a,B.h,t.J).gn4() +break +default:s=null}return s}} +A.kT.prototype={ +K(){return"ChapterSort."+this.b}, +h5(a){var s +switch(this.a){case 0:s=A.A(a,B.h,t.J).gmj() +break +case 2:s=A.A(a,B.h,t.J).gmi() +break +case 1:s=A.A(a,B.h,t.J).gmk() +break +default:s=null}return s}} +A.el.prototype={ +K(){return"DisplayMode."+this.b}, +h5(a){var s +switch(this.a){case 0:s=A.A(a,B.h,t.J).gmD() +break +case 1:s=A.A(a,B.h,t.J).gmE() +break +case 2:s=A.A(a,B.h,t.J).gmC() +break +default:s=null}return s}, +geB(a){return this.c}} +A.lO.prototype={ +K(){return"MangaStatus."+this.b}, +h5(a){var s +switch(this.a){case 0:s=A.A(a,B.h,t.J).gnc() +break +case 1:s=A.A(a,B.h,t.J).gna() +break +case 2:s=A.A(a,B.h,t.J).gn7() +break +case 3:s=A.A(a,B.h,t.J).gn8() +break +case 4:s=A.A(a,B.h,t.J).gnb() +break +case 5:s=A.A(a,B.h,t.J).gn6() +break +case 6:s=A.A(a,B.h,t.J).gn9() +break +default:s=null}return s}, +geB(a){return this.c}} +A.z_.prototype={ +K(){return"SourceType."+this.b}, +h5(a){var s +switch(this.a){case 0:s=A.A(a,B.h,t.J).glO() +break +case 1:s=A.A(a,B.h,t.J).glP() +break +case 2:s=A.A(a,B.h,t.J).glN() +break +default:s=null}return s}, +geB(a){return this.c}} +A.ox.prototype={ +y3(a,b){return this.b.$1(b)}, +geB(a){return this.c}} +A.aK6.prototype={ +$1(a){return B.b.ed(a.e,new A.aK5(this.a))}, +$S:696} +A.aK5.prototype={ +$1(a){return B.c.n(this.a,a)}, +$S:10} +A.aK7.prototype={ +$1(a){return A.A(a,B.h,t.J).ghz()}, +$S:75} +A.aK8.prototype={ +$1(a){return A.A(a,B.h,t.J).glx()}, +$S:75} +A.aK9.prototype={ +$1(a){return A.A(a,B.h,t.J).gjB()}, +$S:75} +A.aKa.prototype={ +$1(a){return A.A(a,B.h,t.J).gl1()}, +$S:75} +A.aKb.prototype={ +$1(a){return A.A(a,B.h,t.J).glg()}, +$S:75} +A.lS.prototype={} +A.mZ.prototype={} +A.lV.prototype={} +A.n4.prototype={} +A.tH.prototype={} +A.vO.prototype={ +GH(a){return this.aef(a)}, +aef(a){var s=0,r=A.y(t.ly),q,p=this +var $async$GH=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:s=3 +return A.t(p.a.ob(0,"/settings/about",a,new A.aqY(),t.RD,t.ly),$async$GH) +case 3:q=c.a +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$GH,r)}, +Ko(){var s=0,r=A.y(t.kh),q,p=this +var $async$Ko=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:s=3 +return A.t(p.a.Xq(0,"/settings/check-update",new A.aqV(),t.WG,t.B2),$async$Ko) +case 3:q=b.a +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$Ko,r)}, +Ea(a){return this.aFa(a)}, +aF9(){return this.Ea(null)}, +aFa(a){var s=0,r=A.y(t.lZ),q,p=this,o,n +var $async$Ea=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:o=t.nA +n=A +s=3 +return A.t(A.dw(new A.aqW(p,a),o),$async$Ea) +case 3:q=n.nZ(c,new A.aqX(p),o,t.rC) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$Ea,r)}} +A.aqY.prototype={ +$1(a){var s +if(t.a.b(a)){s=J.ak(a) +s=new A.Pf(A.ae(s.i(a,"name")),A.ae(s.i(a,"version")),A.ae(s.i(a,"revision")),A.ae(s.i(a,"buildType")),A.bv(s.i(a,"buildTime")),A.ae(s.i(a,"github")),A.ae(s.i(a,"discord")))}else s=null +return s}, +$S:700} +A.aqV.prototype={ +$1(a){var s +if(t.a.b(a)){s=J.ak(a) +s=new A.zs(A.ae(s.i(a,"channel")),A.ae(s.i(a,"tag")),A.ae(s.i(a,"url")))}else s=new A.zs(null,null,null) +return s}, +$S:701} +A.aqW.prototype={ +$0(){var s=0,r=A.y(t.nA),q,p=this,o +var $async$$0=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:o=t.z +s=3 +return A.t(p.a.a.GF(0,"https://api.github.com/repos/Suwayomi/Tachidesk-Sorayomi/releases/latest",p.b,o,o),$async$$0) +case 3:q=b.a +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$$0,r)}, +$S:702} +A.aqX.prototype={ +$1(a){var s,r=a==null?null:J.b3(a,"tag_name"),q=r!=null?A.aZO(r):null,p=A.aZO(this.a.b.c) +if(q!=null)s=q.bM(0,p)>0 +else s=!1 +if(s)return q +return null}, +$S:703} +A.kO.prototype={} +A.b_u.prototype={ +gcV(a){return A.q($.A6())}, +gXh(a){return A.q($.A6())}, +gacM(){return A.q($.A6())}, +gKk(){return A.q($.A6())}, +gj_(){return A.q($.A6())}, +gj0(){return A.q($.A6())}, +b7(){return A.q($.A6())}} +A.Pf.prototype={ +j(a){var s=this +return"About(name: "+A.h(s.a)+", version: "+A.h(s.b)+", revision: "+A.h(s.c)+", buildType: "+A.h(s.d)+", buildTime: "+A.h(s.e)+", github: "+A.h(s.f)+", discord: "+A.h(s.r)+")"}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r!==b)if(J.a1(b)===A.o(r))if(b instanceof A.Pf){s=b.a==r.a +if(s||s){s=b.b==r.b +if(s||s){s=b.c==r.c +if(s||s){s=b.d==r.d +if(s||s){s=b.e==r.e +if(s||s){s=b.f==r.f +if(s||s){s=b.r==r.r +s=s||s}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1 +else s=!1 +else s=!0 +return s}, +gv(a){var s=this +return A.X(A.o(s),s.a,s.b,s.c,s.d,s.e,s.f,s.r,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +b7(){var s=this +return A.ap(["name",s.a,"version",s.b,"revision",s.c,"buildType",s.d,"buildTime",s.e,"github",s.f,"discord",s.r],t.N,t.z)}, +$ikO:1, +gcV(a){return this.a}, +gXh(a){return this.b}, +gacM(){return this.c}, +gKk(){return this.d}, +gj_(){return this.e}, +gj0(){return this.r}} +A.acW.prototype={} +A.hG.prototype={} +A.b_I.prototype={ +gfW(a){return A.q($.aqD())}, +gacR(a){return A.q($.aqD())}, +gGx(a){return A.q($.aqD())}, +b7(){return A.q($.aqD())}} +A.zs.prototype={ +j(a){return"ServerUpdate(channel: "+A.h(this.a)+", tag: "+A.h(this.b)+", url: "+A.h(this.c)+")"}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r!==b)if(J.a1(b)===A.o(r))if(b instanceof A.zs){s=b.a==r.a +if(s||s){s=b.b==r.b +if(s||s){s=b.c==r.c +s=s||s}else s=!1}else s=!1}else s=!1 +else s=!1 +else s=!0 +return s}, +gv(a){var s=this +return A.X(A.o(s),s.a,s.b,s.c,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +b7(){return A.ap(["channel",this.a,"tag",this.b,"url",this.c],t.N,t.z)}, +$ihG:1, +gfW(a){return this.a}, +gacR(a){return this.b}, +gGx(a){return this.c}} +A.alo.prototype={} +A.Wt.prototype={ +aF5(a,b,c,d,e){d.rz(0,A.A(b,B.h,t.J).gky()) +A.dw(e,t.kh).b9(new A.ar7(d,a,c,b),t.P)}, +t_(a,b,c,d){return this.aF6(a,b,c,d)}, +aF6(a,b,c,d){var s=0,r=A.y(t.H),q,p,o +var $async$t_=A.u(function(e,f){if(e===1)return A.v(f,r) +while(true)switch(s){case 0:c.rz(0,A.A(a,B.h,t.J).gky()) +s=3 +return A.t(d.$0(),$async$t_) +case 3:p=f +if(a.f!=null){s=1 +break}o=c.b +o===$&&A.b() +o.vs() +A.vT(p,new A.ar8(b,a,c),new A.ar9(p,c),t.rC,t.X) +case 1:return A.w(q,r)}}) +return A.x($async$t_,r)}, +aJ(a,b){var s,r,q,p,o,n,m,l,k,j,i=null,h=b.M(A.eA(a),t.g),g=b.M($.bmR(),t._T),f=A.bW(g),e=f==null +if((e?i:f.gKk())==="Stable")s=e?i:f.gXh(f) +else{r=e?i:f.gXh(f) +q=e?i:f.gacM() +s=A.h(r)+"-"+A.h(q)}p=b.M($.aqN(),t.A9) +r=A.bW(g) +$.b7.bm(new A.dz(new A.aqZ(g,h),[r]),t.H) +r=t.J +q=A.eh(i,i,i,i,i,i,A.O(A.A(a,B.h,r).gkL(),i,i,i,i,i,i,i)) +o=A.C5(new A.mA("assets/icons/dark_icon.png",i,i),i,A.aS(a,i,t.l).w.a.b*0.2) +n=A.A(a,B.h,r) +m=t.p +n=A.a([o,B.f0,A.IE(n.gmo(n),p.a),A.IE(A.A(a,B.h,r).gmp(),"v"+p.c),A.bH(!1,i,i,i,!0,i,i,!1,i,i,i,i,new A.ar_(p,a,h),!1,i,i,i,i,i,A.O(A.A(a,B.h,r).goa(),i,i,i,i,i,i,i),i,i),A.bH(!1,i,i,i,!0,i,i,!1,i,i,i,i,new A.ar0(this,p,a,b,h),!1,i,i,i,i,i,A.O(A.A(a,B.h,r).gmm(),i,i,i,i,i,i,i),i,i)],m) +if(!e){o=A.IE(A.A(a,B.h,r).gjp(),f.gcV(f)) +l=A.A(a,B.h,r) +l=A.a([B.f0,o,A.IE(l.gfW(l),f.gKk())],m) +o=s!=null +if(!(!o||s.length===0))l.push(A.IE(A.A(a,B.h,r).glK(),s)) +k=A.A(a,B.h,r).gj_() +if(f.gj_()==null)j=i +else{j=f.gj_() +if(j==null||B.f.gd6(j))j=0 +else j.toString +j=A.mJ(j*1000,!1) +j=A.a_I(i).tj(j)}l.push(A.IE(k,j)) +if(!(!o||s.length===0))l.push(A.bH(!1,i,i,i,!0,i,i,!1,i,i,i,i,new A.ar1(this,a,s,f,b,h),!1,i,i,i,i,i,A.O(A.A(a,B.h,r).gml(),i,i,i,i,i,i,i),i,i)) +B.b.I(n,l)}o=A.a([new A.CM(h,A.A(a,B.h,r).gkw()+" ",B.tf,"https://github.com/Suwayomi/Tachidesk-Sorayomi",i)],m) +e=e?i:f.gj0() +if(!(e==null||e.length===0)){e=A.A(a,B.h,r).gj0() +m=f.gj0() +m.toString +o.push(new A.CM(h,e,B.SW,m,i))}o.push(new A.CM(h,A.A(a,B.h,r).gnR(),B.SV,"https://www.reddit.com/r/Tachidesk",i)) +n.push(new A.b8(B.aT,A.b__(B.anp,o,B.pp,0,0),i)) +return A.e_(q,i,A.qJ(A.j2(n,i,i,!1),new A.ar2(b)),i,i,i,!0,!1,!1,i,i)}} +A.ar7.prototype={ +$1(a){var s,r=this,q=r.a,p=q.b +p===$&&A.b() +p.vs() +try{A.vT(a,new A.ar5(r.b,r.c,r.d,q),new A.ar6(a,q),t.kh,t.X)}catch(s){p=A.A(r.d,B.h,t.J) +q.H9(p.gjH())}}, +$S:704} +A.ar5.prototype={ +$1(a){var s,r,q,p,o,n=this +if(a==null)return +p=n.a +s=J.bnu(a,new A.ar3(p),new A.ar4()) +r=A.aZO(B.c.cv(n.b,1)) +o=J.bCi(s) +o=o==null?null:B.c.cv(o,1) +q=A.aZO(o==null?"":o) +o=J.Ab(q,r) +if(o>0){p=p.gcV(p) +if(p==null)p=A.A(n.c,B.h,t.J).gjp() +A.blm(n.c,q.gTq()+" ("+A.h(J.bC7(s))+")",p,n.d,J.bCj(s))}else n.d.rz(0,A.A(n.c,B.h,t.J).glm())}, +$S:705} +A.ar3.prototype={ +$1(a){return a.gfW(a)==this.a.gKk()}, +$S:706} +A.ar4.prototype={ +$0(){return new A.zs(null,null,null)}, +$S:707} +A.ar6.prototype={ +$2(a,b){return A.hq(this.a,this.b,!1,t.kh)}, +$S:13} +A.ar8.prototype={ +$1(a){var s=this +if(a!=null)A.blm(s.b,"v"+a.gTq(),s.a,s.c,null) +else s.c.rz(0,A.A(s.b,B.h,t.J).glm())}, +$S:260} +A.ar9.prototype={ +$2(a,b){return A.hq(this.a,this.b,!1,t.rC)}, +$S:13} +A.aqZ.prototype={ +$0(){A.hq(this.a,this.b,!0,t.ly) +return}, +$S:5} +A.ar2.prototype={ +$0(){return this.a.jN(0,$.bmR().gqM(),t.uz)}, +$S:2} +A.ar_.prototype={ +$0(){var s=0,r=A.y(t.H),q=this +var $async$$0=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:s=2 +return A.t(A.nR(q.b,"https://github.com/Suwayomi/Tachidesk-Sorayomi/releases/tag/"+q.a.c,q.c),$async$$0) +case 2:return A.w(null,r)}}) +return A.x($async$$0,r)}, +$S:2} +A.ar0.prototype={ +$0(){var s=this +return s.a.t_(s.c,s.b.a,s.e,s.d.aa(0,$.aqH(),t.JC).ga7w())}, +$S:0} +A.ar1.prototype={ +$0(){var s=this,r=s.c +if(r==null)r="" +return s.a.aF5(s.d,s.b,r,s.f,s.e.aa(0,$.aqH(),t.JC).gaF8())}, +$S:0} +A.bet.prototype={ +$1(a){var s=this,r=null,q=s.a,p=t.J,o=A.O(A.A(q,B.h,p).gng(),r,r,r,r,r,r,r),n=A.O(A.A(q,B.h,p).o8(s.b,s.c),r,r,r,r,r,r,r),m=A.A(q,B.h,p) +return A.kP(A.a([A.eM(!1,A.O(m.gdU(m),r,r,r,r,r,r,r),B.l,r,r,r,r,r,new A.ber(q),r,r),A.bMm(B.Uu,A.O(A.A(q,B.h,p).gkw(),r,r,r,r,r,r,r),new A.bes(q,s.d,s.e))],t.p),n,r,o)}, +$S:154} +A.ber.prototype={ +$0(){var s=A.bd(this.a).c +s===$&&A.b() +s.e7(null) +return null}, +$S:0} +A.bes.prototype={ +$0(){var s=this.a,r=this.b +if(r==null)r="https://github.com/Suwayomi/Tachidesk-Sorayomi/releases/latest" +A.nR(s,r,this.c) +s=A.bd(s).c +s===$&&A.b() +s.e7(null)}, +$S:0} +A.Ys.prototype={ +aJ(a,b){var s,r=null,q=A.O(this.e,r,r,r,r,r,r,r),p=this.f,o=p!=null +if(!(!o||p.length===0)){p.toString +s=A.O(p,r,r,r,r,r,r,r)}else s=r +return A.bH(!1,r,r,r,!0,r,r,!1,r,r,r,r,!(!o||p.length===0)?new A.aw7(this,b,a):r,!1,r,r,r,s,r,q,r,r)}} +A.aw7.prototype={ +$0(){var s,r,q=this.a,p=q.e+": "+A.h(q.f) +A.AY(new A.tc(p)) +q=this.c +s=this.b.aa(0,A.eA(q),t.g) +q=A.A(q,B.h,t.J).mu(p) +r=s.b +r===$&&A.b() +r.vs() +J.Ws(s,q)}, +$S:0} +A.CM.prototype={ +A(a){var s,r,q=this,p=null +if(q.f.length!==0){s=q.d +r=q.e +if(A.aS(a,p,t.l).w.a.a<=600)s=A.db(p,p,A.fR(r,p,p,p),p,new A.aIH(q,a),p,p,p,s,p) +else{s=A.O(s,p,p,p,p,p,p,p) +s=A.bbE(A.fR(r,p,p,p),s,new A.aII(q,a),p)}}else s=B.a_ +return s}} +A.aIH.prototype={ +$0(){var s=this.a +return A.nR(this.b,s.f,s.c)}, +$S:0} +A.aII.prototype={ +$0(){var s=this.a +return A.nR(this.b,s.f,s.c)}, +$S:0} +A.tv.prototype={ +Vm(a,b){return this.aK4(a,b)}, +aK4(a,b){var s=0,r=A.y(t.H),q +var $async$Vm=A.u(function(c,d){if(c===1)return A.v(d,r) +while(true)switch(s){case 0:if(b!=null)b.gdN(b) +q=A.WV(a).gl4() +throw A.c(q) +return A.w(null,r)}}) +return A.x($async$Vm,r)}, +adh(a){var s=t.z +return this.a.GF(0,"/extension/uninstall/"+a,null,s,s)}, +GO(a){return this.aer(a)}, +aer(a){var s=0,r=A.y(t.q6),q,p=this +var $async$GO=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:s=3 +return A.t(p.a.ob(0,"/extension/list",a,new A.aB_(),t.h1,t.q8),$async$GO) +case 3:q=c.a +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$GO,r)}} +A.aB_.prototype={ +$1(a){var s,r=null +if(t.a.b(a)){s=J.ak(a) +s=new A.Fi(A.ae(s.i(a,"apkName")),A.cG(s.i(a,"hasUpdate")),A.ae(s.i(a,"iconUrl")),A.cG(s.i(a,"installed")),A.cG(s.i(a,"isNsfw")),A.bql(A.ae(s.i(a,"lang"))),A.ae(s.i(a,"name")),A.cG(s.i(a,"obsolete")),A.ae(s.i(a,"pkgName")),A.bv(s.i(a,"versionCode")),A.ae(s.i(a,"versionName")))}else s=new A.Fi(r,r,r,r,r,r,r,r,r,r,r) +return s}, +$S:710} +A.Ej.prototype={ +GW(a){return this.aeX(a)}, +aeX(a){var s=0,r=A.y(t.s5),q,p=this +var $async$GW=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:s=3 +return A.t(p.a.ob(0,"/source/list",a,new A.aVx(),t.iW,t.s7),$async$GW) +case 3:q=c.a +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$GW,r)}, +xV(a,b,c,d,e){return this.aeB(a,b,c,d,e)}, +aeA(a,b,c,d){return this.xV(null,a,b,c,d)}, +aeB(a,b,c,d,e){var s=0,r=A.y(t.NG),q,p=this,o,n,m,l,k,j +var $async$xV=A.u(function(f,g){if(f===1)return A.v(g,r) +while(true)switch(s){case 0:k="/source/"+d +j=p.a +s=e!==B.d4?3:5 +break +case 3:s=6 +return A.t(j.ob(0,k+"/"+e.b+"/"+b,null,new A.aVu(),t.KA,t.NG),$async$xV) +case 6:q=g.a +s=1 +break +s=4 +break +case 5:o=t.N +n=A.ap(["pageNum",b],o,t.z) +m=c==null?"":c +l=A.a([],t.H7) +if(a!=null)B.b.I(l,a) +s=7 +return A.t(j.MI(k+"/quick-search",null,A.ap(["searchTerm",m,"filter",l],o,t.K),new A.aVv(),n,t.KA,t.NG),$async$xV) +case 7:q=g.a +s=1 +break +case 4:case 1:return A.w(q,r)}}) +return A.x($async$xV,r)}, +GP(a){return this.aeu(a)}, +aeu(a){var s=0,r=A.y(t.uS),q,p=this +var $async$GP=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:s=3 +return A.t(p.a.ob(0,"/source/"+a+"/filters",null,new A.aVt(),t.m3,t.we),$async$GP) +case 3:q=c.a +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$GP,r)}, +GV(a,b){return this.aeW(a,b)}, +aeW(a,b){var s=0,r=A.y(t.FO),q,p=this,o +var $async$GV=A.u(function(c,d){if(c===1)return A.v(d,r) +while(true)switch(s){case 0:o=t.s7 +s=3 +return A.t(p.a.ob(0,"/source/"+b,a,new A.aVy(),o,o),$async$GV) +case 3:q=d.a +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$GV,r)}, +GS(a){return this.aeN(a)}, +aeN(a){var s=0,r=A.y(t.FF),q,p=this +var $async$GS=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:s=3 +return A.t(p.a.ob(0,"/source/"+a+"/preferences",null,new A.aVw(),t.To,t.nt),$async$GS) +case 3:q=c.a +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$GS,r)}, +Nk(a,b){return this.aP1(a,b)}, +aP1(a,b){var s=0,r=A.y(t.H),q,p=this,o +var $async$Nk=A.u(function(c,d){if(c===1)return A.v(d,r) +while(true)switch(s){case 0:o=t.z +s=3 +return A.t(p.a.Wr("/source/"+b+"/preferences",null,a,o,o),$async$Nk) +case 3:q=d.a +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$Nk,r)}} +A.aVx.prototype={ +$1(a){var s=null +return t.a.b(a)?A.bkc(a):new A.zt(s,s,s,s,s,s,s,s)}, +$S:262} +A.aVu.prototype={ +$1(a){return t.a.b(a)?A.btg(a):null}, +$S:263} +A.aVv.prototype={ +$1(a){return t.a.b(a)?A.btg(a):null}, +$S:263} +A.aVt.prototype={ +$1(a){return t.a.b(a)?A.btf(a):new A.ns(null,null)}, +$S:264} +A.aVy.prototype={ +$1(a){var s=null +return t.a.b(a)?A.bkc(a):new A.zt(s,s,s,s,s,s,s,s)}, +$S:262} +A.aVw.prototype={ +$1(a){var s,r +if(t.a.b(a)){s=A.ae(J.b3(a,"type")) +A.bsc(a,"props") +r=A.bLV(A.bsc(a,"props")) +s=new A.ny(s,r)}else s=new A.ny(null,null) +return s}, +$S:714} +A.cw.prototype={} +A.b_C.prototype={ +gLz(){return A.q($.pz())}, +gAN(a){return A.q($.pz())}, +gLJ(){return A.q($.pz())}, +gVy(){return A.q($.pz())}, +gmY(a){return A.q($.pz())}, +gcV(a){return A.q($.pz())}, +gjK(){return A.q($.pz())}, +gvm(){return A.q($.pz())}, +gXi(){return A.q($.pz())}, +b7(){return A.q($.pz())}} +A.Fi.prototype={ +j(a){var s=this +return"Extension(apkName: "+A.h(s.a)+", hasUpdate: "+A.h(s.b)+", iconUrl: "+A.h(s.c)+", installed: "+A.h(s.d)+", isNsfw: "+A.h(s.e)+", lang: "+A.h(s.f)+", name: "+A.h(s.r)+", obsolete: "+A.h(s.w)+", pkgName: "+A.h(s.x)+", versionCode: "+A.h(s.y)+", versionName: "+A.h(s.z)+")"}, +l(a,b){var s,r,q=this +if(b==null)return!1 +if(q!==b)if(J.a1(b)===A.o(q))if(b instanceof A.Fi){s=b.a==q.a +if(s||s){s=b.b==q.b +if(s||s){s=b.c==q.c +if(s||s){s=b.d==q.d +if(s||s){s=b.e==q.e +if(s||s){s=b.f +r=q.f +if(s==r||J.i(s,r)){s=b.r==q.r +if(s||s){s=b.w==q.w +if(s||s){s=b.x==q.x +if(s||s){s=b.y==q.y +if(s||s){s=b.z==q.z +s=s||s}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1 +else s=!1 +else s=!0 +return s}, +gv(a){var s=this +return A.X(A.o(s),s.a,s.b,s.c,s.d,s.e,s.f,s.r,s.w,s.x,s.y,s.z,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +b7(){var s=this,r=s.f +r=r==null?null:r.guE(r) +return A.ap(["apkName",s.a,"hasUpdate",s.b,"iconUrl",s.c,"installed",s.d,"isNsfw",s.e,"lang",r,"name",s.r,"obsolete",s.w,"pkgName",s.x,"versionCode",s.y,"versionName",s.z],t.N,t.z)}, +$icw:1, +gLz(){return this.b}, +gAN(a){return this.c}, +gLJ(){return this.d}, +gVy(){return this.e}, +gmY(a){return this.f}, +gcV(a){return this.r}, +gjK(){return this.w}, +gvm(){return this.x}, +gXi(){return this.z}} +A.afV.prototype={} +A.bx.prototype={} +A.aBJ.prototype={ +$0(){var s=t.zJ.a(this.a) +return s.gd8(s)}, +$S:715} +A.b_D.prototype={ +gEZ(){return A.q($.bgZ())}, +b7(){return A.q($.bgZ())}, +gbL(){return A.q($.bgZ())}, +a7S(a){return this.gbL().$1$filterState(a)}} +A.Fj.prototype={ +$2$filterState$type(a,b){var s=this.a,r=B.d===b?s.a:A.ae(b) +return this.b.$1(this.$ti.h("Fj.1").a(s.aGf(B.d===a?s.b:t.bZ.a(a),r)))}, +$0(){return this.$2$filterState$type(B.d,B.d)}, +$1$filterState(a){return this.$2$filterState$type(a,B.d)}} +A.UJ.prototype={ +$2$filterState$type(a,b){var s=B.d===b?this.a.a:A.ae(b),r=B.d===a?this.a.b:t.bZ.a(a) +return this.b.$1(new A.ns(s,r))}, +$0(){return this.$2$filterState$type(B.d,B.d)}, +$1$filterState(a){return this.$2$filterState$type(a,B.d)}} +A.ns.prototype={ +j(a){return"Filter(type: "+A.h(this.a)+", filterState: "+A.h(this.b)+")"}, +l(a,b){var s,r,q=this +if(b==null)return!1 +if(q!==b)if(J.a1(b)===A.o(q))if(b instanceof A.ns){s=b.a==q.a +if(s||s){s=b.b +r=q.b +s=s==r||J.i(s,r)}else s=!1}else s=!1 +else s=!1 +else s=!0 +return s}, +gv(a){return A.X(A.o(this),this.a,this.b,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +gbL(){return new A.UJ(this,B.Nb,t.Sz)}, +b7(){var s=this.b +s=s==null?null:s.b7() +return A.ap(["type",this.a,"filter",s],t.N,t.z)}, +$ibx:1, +a7S(a){return this.gbL().$1$filterState(a)}, +aGf(a,b){return this.gbL().$2$filterState$type(a,b)}, +gEZ(){return this.b}} +A.ag4.prototype={} +A.yV.prototype={} +A.fF.prototype={ +$1$name(a){var s=this.a +return this.b.$1(A.k(this).h("fF.1").a(s.uF(B.d===a?s.gcV(s):A.ae(a))))}, +$0(){return this.$1$name(B.d)}} +A.UI.prototype={ +$1$name(a){var s=this.a,r=B.d===a?s.b:A.ae(a) +return this.b.$1(new A.nr(s.a,r,"Header"))}, +$0(){return this.$1$name(B.d)}} +A.nr.prototype={ +j(a){return"FilterState.header(state: "+A.h(this.a)+", name: "+A.h(this.b)+")"}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r!==b)if(J.a1(b)===A.o(r))if(b instanceof A.nr){s=b.a==r.a +if(s||s){s=b.b==r.b +s=s||s}else s=!1}else s=!1 +else s=!1 +else s=!0 +return s}, +gv(a){return A.X(A.o(this),this.a,this.b,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +gbL(){return new A.UI(this,B.N1,t.Za)}, +b7(){return A.ap(["state",this.a,"name",this.b,"type",this.c],t.N,t.z)}, +$iiW:1, +uF(a){return this.gbL().$1$name(a)}, +gcV(a){return this.b}} +A.UL.prototype={ +$1$name(a){var s=this.a,r=B.d===a?s.b:A.ae(a) +return this.b.$1(new A.nu(s.a,r,"Separator"))}, +$0(){return this.$1$name(B.d)}} +A.nu.prototype={ +j(a){return"FilterState.separator(state: "+A.h(this.a)+", name: "+A.h(this.b)+")"}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r!==b)if(J.a1(b)===A.o(r))if(b instanceof A.nu){s=b.a==r.a +if(s||s){s=b.b==r.b +s=s||s}else s=!1}else s=!1 +else s=!1 +else s=!0 +return s}, +gv(a){return A.X(A.o(this),this.a,this.b,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +gbL(){return new A.UL(this,B.MX,t.yl)}, +b7(){return A.ap(["state",this.a,"name",this.b,"type",this.c],t.N,t.z)}, +$iiW:1, +uF(a){return this.gbL().$1$name(a)}, +gcV(a){return this.b}} +A.UM.prototype={ +$2$name$state(a,b){var s=B.d===b?this.a.a:A.ae(b),r=B.d===a?this.a.b:A.ae(a) +return this.b.$1(new A.nw(s,r,"Text"))}, +$0(){return this.$2$name$state(B.d,B.d)}, +$1$state(a){return this.$2$name$state(B.d,a)}, +$1$name(a){return this.$2$name$state(a,B.d)}} +A.nw.prototype={ +j(a){return"FilterState.text(state: "+A.h(this.a)+", name: "+A.h(this.b)+")"}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r!==b)if(J.a1(b)===A.o(r))if(b instanceof A.nw){s=b.a==r.a +if(s||s){s=b.b==r.b +s=s||s}else s=!1}else s=!1 +else s=!1 +else s=!0 +return s}, +gv(a){return A.X(A.o(this),this.a,this.b,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +gbL(){return new A.UM(this,B.N0,t.KR)}, +b7(){return A.ap(["state",this.a,"name",this.b,"type",this.c],t.N,t.z)}, +$iiW:1, +pw(a){return this.gbL().$1$state(a)}, +uF(a){return this.gbL().$1$name(a)}, +gcV(a){return this.b}} +A.UG.prototype={ +$2$name$state(a,b){var s=B.d===b?this.a.a:A.cG(b),r=B.d===a?this.a.b:A.ae(a) +return this.b.$1(new A.nq(s,r,"CheckBox"))}, +$0(){return this.$2$name$state(B.d,B.d)}, +$1$state(a){return this.$2$name$state(B.d,a)}, +$1$name(a){return this.$2$name$state(a,B.d)}} +A.nq.prototype={ +j(a){return"FilterState.checkBox(state: "+A.h(this.a)+", name: "+A.h(this.b)+")"}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r!==b)if(J.a1(b)===A.o(r))if(b instanceof A.nq){s=b.a==r.a +if(s||s){s=b.b==r.b +s=s||s}else s=!1}else s=!1 +else s=!1 +else s=!0 +return s}, +gv(a){return A.X(A.o(this),this.a,this.b,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +gbL(){return new A.UG(this,B.N_,t.P1)}, +b7(){return A.ap(["state",this.a,"name",this.b,"type",this.c],t.N,t.z)}, +$iiW:1, +pw(a){return this.gbL().$1$state(a)}, +uF(a){return this.gbL().$1$name(a)}, +gcV(a){return this.b}} +A.UN.prototype={ +$2$name$state(a,b){var s=B.d===b?this.a.a:A.bv(b),r=B.d===a?this.a.b:A.ae(a) +return this.b.$1(new A.nx(s,r,"TriState"))}, +$0(){return this.$2$name$state(B.d,B.d)}, +$1$state(a){return this.$2$name$state(B.d,a)}, +$1$name(a){return this.$2$name$state(a,B.d)}} +A.nx.prototype={ +j(a){return"FilterState.triState(state: "+A.h(this.a)+", name: "+A.h(this.b)+")"}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r!==b)if(J.a1(b)===A.o(r))if(b instanceof A.nx){s=b.a==r.a +if(s||s){s=b.b==r.b +s=s||s}else s=!1}else s=!1 +else s=!1 +else s=!0 +return s}, +gv(a){return A.X(A.o(this),this.a,this.b,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +gbL(){return new A.UN(this,B.MZ,t.xp)}, +b7(){return A.ap(["state",this.a,"name",this.b,"type",this.c],t.N,t.z)}, +$iiW:1, +pw(a){return this.gbL().$1$state(a)}, +uF(a){return this.gbL().$1$name(a)}, +gcV(a){return this.b}} +A.ry.prototype={ +$2$name$state(a,b){var s=this,r=B.d===b?s.a.a:t.eX.a(b),q=B.d===a?s.a.b:A.ae(a) +return s.b.$1(new A.nv(r,q,s.a.c,"Sort"))}, +$0(){return this.$2$name$state(B.d,B.d)}, +$1$state(a){return this.$2$name$state(B.d,a)}, +$1$name(a){return this.$2$name$state(a,B.d)}, +gd8(a){var s=this.a.a +if(s==null)return null +return new A.pd(s,new A.bcU(this),this.$ti.h("pd<1,yV>"))}} +A.bcU.prototype={ +$1(a){var s=this.a +return s.b.$1(s.a.pw(a))}, +$S(){return this.a.$ti.h("1(yV)")}} +A.nv.prototype={ +gbw(a){var s=this.c +if(s==null)return null +if(s instanceof A.cQ)return s +return new A.cQ(s,s,t.ls)}, +j(a){var s=this +return"FilterState.sort(state: "+A.h(s.a)+", name: "+A.h(s.b)+", values: "+A.h(s.gbw(s))+")"}, +l(a,b){var s,r,q=this +if(b==null)return!1 +if(q!==b)if(J.a1(b)===A.o(q))if(b instanceof A.nv){s=b.a +r=q.a +if(s==r||J.i(s,r)){s=b.b==q.b +s=(s||s)&&B.a0.dj(b.c,q.c)}else s=!1}else s=!1 +else s=!1 +else s=!0 +return s}, +gv(a){var s=this +return A.X(A.o(s),s.a,s.b,B.a0.du(0,s.c),B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +gbL(){return new A.ry(this,B.fW,t.Eg)}, +b7(){var s=this,r=s.a +r=r==null?null:r.b7() +return A.ap(["state",r,"name",s.b,"values",s.gbw(s),"type",s.d],t.N,t.z)}, +$iiW:1, +$ibpy:1, +pw(a){return this.gbL().$1$state(a)}, +uF(a){return this.gbL().$1$name(a)}, +gcV(a){return this.b}} +A.UK.prototype={ +$2$name$state(a,b){var s=this,r=B.d===b?s.a.a:A.bv(b),q=B.d===a?s.a.b:A.ae(a) +return s.b.$1(new A.nt(r,q,s.a.c,"Select"))}, +$0(){return this.$2$name$state(B.d,B.d)}, +$1$state(a){return this.$2$name$state(B.d,a)}, +$1$name(a){return this.$2$name$state(a,B.d)}} +A.nt.prototype={ +gUl(){var s=this.c +if(s==null)return null +if(s instanceof A.cQ)return s +return new A.cQ(s,s,t.ls)}, +j(a){return"FilterState.select(state: "+A.h(this.a)+", name: "+A.h(this.b)+", displayValues: "+A.h(this.gUl())+")"}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r!==b)if(J.a1(b)===A.o(r))if(b instanceof A.nt){s=b.a==r.a +if(s||s){s=b.b==r.b +s=(s||s)&&B.a0.dj(b.c,r.c)}else s=!1}else s=!1 +else s=!1 +else s=!0 +return s}, +gv(a){var s=this +return A.X(A.o(s),s.a,s.b,B.a0.du(0,s.c),B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +gbL(){return new A.UK(this,B.MY,t.MZ)}, +b7(){var s=this +return A.ap(["state",s.a,"name",s.b,"displayValues",s.gUl(),"type",s.d],t.N,t.z)}, +$iiW:1, +$ibpx:1, +pw(a){return this.gbL().$1$state(a)}, +uF(a){return this.gbL().$1$name(a)}, +gcV(a){return this.b}} +A.UH.prototype={ +$2$name$state(a,b){var s=B.d===b?this.a.a:t.uS.a(b),r=B.d===a?this.a.b:A.ae(a) +return this.b.$1(new A.mf(s,r,"Group"))}, +$0(){return this.$2$name$state(B.d,B.d)}, +$1$state(a){return this.$2$name$state(B.d,a)}, +$1$name(a){return this.$2$name$state(a,B.d)}} +A.mf.prototype={ +gd8(a){var s=this.a +if(s==null)return null +if(s instanceof A.cQ)return s +return new A.cQ(s,s,t.r8)}, +j(a){return"FilterState.group(state: "+A.h(this.gd8(this))+", name: "+A.h(this.b)+")"}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r!==b)if(J.a1(b)===A.o(r))if(b instanceof A.mf)if(B.a0.dj(b.a,r.a)){s=b.b==r.b +s=s||s}else s=!1 +else s=!1 +else s=!1 +else s=!0 +return s}, +gv(a){return A.X(A.o(this),B.a0.du(0,this.a),this.b,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +gbL(){return new A.UH(this,B.MW,t.T9)}, +b7(){return A.bLM(this)}, +$iiW:1, +$ibpw:1, +pw(a){return this.gbL().$1$state(a)}, +uF(a){return this.gbL().$1$name(a)}, +gcV(a){return this.b}} +A.b_J.prototype={ +gdM(a){return A.q($.aqC())}, +gTe(){return A.q($.aqC())}, +b7(){return A.q($.aqC())}, +gbL(){return A.q($.aqC())}, +a82(a,b){return this.gbL().$2$ascending$index(a,b)}} +A.pd.prototype={ +$2$ascending$index(a,b){var s=this.a,r=B.d===b?s.gdM(s):A.bv(b) +return this.b.$1(A.k(this).h("pd.1").a(s.a82(B.d===a?s.gTe():A.cG(a),r)))}, +$0(){return this.$2$ascending$index(B.d,B.d)}, +$1$index(a){return this.$2$ascending$index(B.d,a)}, +$1$ascending(a){return this.$2$ascending$index(a,B.d)}} +A.UR.prototype={ +$2$ascending$index(a,b){var s=B.d===b?this.a.a:A.bv(b),r=B.d===a?this.a.b:A.cG(a) +return this.b.$1(new A.pe(s,r))}, +$0(){return this.$2$ascending$index(B.d,B.d)}, +$1$index(a){return this.$2$ascending$index(B.d,a)}, +$1$ascending(a){return this.$2$ascending$index(a,B.d)}} +A.pe.prototype={ +j(a){return"SortState(index: "+A.h(this.a)+", ascending: "+A.h(this.b)+")"}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r!==b)if(J.a1(b)===A.o(r))if(b instanceof A.pe){s=b.a==r.a +if(s||s){s=b.b==r.b +s=s||s}else s=!1}else s=!1 +else s=!1 +else s=!0 +return s}, +gv(a){return A.X(A.o(this),this.a,this.b,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +gbL(){return new A.UR(this,B.N2,t.hb)}, +b7(){return A.ap(["index",this.a,"ascending",this.b],t.N,t.z)}, +$iyV:1, +a82(a,b){return this.gbL().$2$ascending$index(a,b)}, +gdM(a){return this.a}, +gTe(){return this.b}} +A.b_e.prototype={ +$1(a){return A.bs(a)}, +$S:39} +A.b_d.prototype={ +$1(a){return A.bs(a)}, +$S:39} +A.b_b.prototype={ +$1(a){return A.btf(t.a.a(a))}, +$S:264} +A.b_c.prototype={ +$1(a){return a.b7()}, +$S:716} +A.alS.prototype={} +A.Cm.prototype={ +gh9(a){var s=this,r=s.gabl() +if(r==null)r=s.gcV(s) +return r==null?s.guE(s):r}} +A.b_E.prototype={ +guE(a){return A.q($.aqF())}, +gcV(a){return A.q($.aqF())}, +gabl(){return A.q($.aqF())}, +b7(){return A.q($.aqF())}} +A.Fk.prototype={ +j(a){return"Language(code: "+A.h(this.a)+", name: "+A.h(this.b)+", nativeName: "+A.h(this.c)+")"}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r!==b)if(J.a1(b)===A.o(r))if(b instanceof A.Fk){s=b.a==r.a +if(s||s){s=b.b==r.b +if(s||s){s=b.c==r.c +s=s||s}else s=!1}else s=!1}else s=!1 +else s=!1 +else s=!0 +return s}, +gv(a){var s=this +return A.X(A.o(s),s.a,s.b,s.c,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +b7(){return A.ap(["code",this.a,"name",this.b,"nativeName",this.c],t.N,t.z)}, +guE(a){return this.a}, +gcV(a){return this.b}, +gabl(){return this.c}} +A.ahe.prototype={} +A.ahf.prototype={} +A.iu.prototype={} +A.b_H.prototype={ +gB3(){return A.q($.bh0())}, +gF5(){return A.q($.bh0())}, +b7(){return A.q($.bh0())}} +A.Pp.prototype={ +gB3(){var s=this.a +if(s==null)return null +if(s instanceof A.cQ)return s +return new A.cQ(s,s,t.V6)}, +j(a){return"MangaPage(mangaList: "+A.h(this.gB3())+", hasNextPage: "+A.h(this.b)+")"}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r!==b)if(J.a1(b)===A.o(r))if(b instanceof A.Pp)if(B.a0.dj(b.a,r.a)){s=b.b==r.b +s=s||s}else s=!1 +else s=!1 +else s=!1 +else s=!0 +return s}, +gv(a){return A.X(A.o(this),B.a0.du(0,this.a),this.b,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +b7(){return A.bLQ(this)}, +$iiu:1, +gF5(){return this.b}} +A.b_h.prototype={ +$1(a){return A.v1(t.a.a(a))}, +$S:73} +A.b_i.prototype={ +$1(a){return a.b7()}, +$S:86} +A.ahV.prototype={} +A.aj.prototype={} +A.b_K.prototype={ +gh9(a){return A.q($.vK())}, +gAN(a){return A.q($.vK())}, +gaK(a){return A.q($.vK())}, +gaaL(){return A.q($.vK())}, +gmY(a){return A.q($.vK())}, +gcV(a){return A.q($.vK())}, +gOC(){return A.q($.vK())}, +b7(){return A.q($.vK())}} +A.zt.prototype={ +j(a){var s=this +return"Source(displayName: "+A.h(s.a)+", iconUrl: "+A.h(s.b)+", id: "+A.h(s.c)+", isConfigurable: "+A.h(s.d)+", isNsfw: "+A.h(s.e)+", lang: "+A.h(s.f)+", name: "+A.h(s.r)+", supportsLatest: "+A.h(s.w)+")"}, +l(a,b){var s,r,q=this +if(b==null)return!1 +if(q!==b)if(J.a1(b)===A.o(q))if(b instanceof A.zt){s=b.a==q.a +if(s||s){s=b.b==q.b +if(s||s){s=b.c==q.c +if(s||s){s=b.d==q.d +if(s||s){s=b.e==q.e +if(s||s){s=b.f +r=q.f +if(s==r||J.i(s,r)){s=b.r==q.r +if(s||s){s=b.w==q.w +s=s||s}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1 +else s=!1 +else s=!0 +return s}, +gv(a){var s=this +return A.X(A.o(s),s.a,s.b,s.c,s.d,s.e,s.f,s.r,s.w,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +b7(){var s=this,r=s.f +r=r==null?null:r.guE(r) +return A.ap(["displayName",s.a,"iconUrl",s.b,"id",s.c,"isConfigurable",s.d,"isNsfw",s.e,"lang",r,"name",s.r,"supportsLatest",s.w],t.N,t.z)}, +$iaj:1, +gh9(a){return this.a}, +gAN(a){return this.b}, +gaK(a){return this.c}, +gaaL(){return this.d}, +gmY(a){return this.f}, +gcV(a){return this.r}, +gOC(){return this.w}} +A.am1.prototype={} +A.bV.prototype={} +A.aVn.prototype={ +$1(a){return J.cI(a)}, +$S:39} +A.aVo.prototype={ +$1(a){return J.cI(a)}, +$S:39} +A.b_L.prototype={ +gHb(){return A.q($.bgY())}, +b7(){return A.q($.bgY())}, +gbL(){return A.q($.bgY())}, +a80(a){return this.gbL().$1$sourcePreferenceProp(a)}} +A.Fl.prototype={ +$2$sourcePreferenceProp$type(a,b){var s=this.a,r=B.d===b?s.a:A.ae(b) +return this.b.$1(this.$ti.h("Fl.1").a(s.aGn(B.d===a?s.b:t.QH.a(a),r)))}, +$0(){return this.$2$sourcePreferenceProp$type(B.d,B.d)}, +$1$sourcePreferenceProp(a){return this.$2$sourcePreferenceProp$type(a,B.d)}} +A.US.prototype={ +$2$sourcePreferenceProp$type(a,b){var s=B.d===b?this.a.a:A.ae(b),r=B.d===a?this.a.b:t.QH.a(a) +return this.b.$1(new A.ny(s,r))}, +$0(){return this.$2$sourcePreferenceProp$type(B.d,B.d)}, +$1$sourcePreferenceProp(a){return this.$2$sourcePreferenceProp$type(a,B.d)}} +A.ny.prototype={ +j(a){return"SourcePreference(type: "+A.h(this.a)+", sourcePreferenceProp: "+A.h(this.b)+")"}, +l(a,b){var s,r,q=this +if(b==null)return!1 +if(q!==b)if(J.a1(b)===A.o(q))if(b instanceof A.ny){s=b.a==q.a +if(s||s){s=b.b +r=q.b +s=s==r||J.i(s,r)}else s=!1}else s=!1 +else s=!1 +else s=!0 +return s}, +gv(a){return A.X(A.o(this),this.a,this.b,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +gbL(){return new A.US(this,B.MV,t.Yj)}, +b7(){var s=this.b +s=s==null?null:s.b7() +return A.ap(["type",this.a,"props",s],t.N,t.z)}, +$ibV:1, +a80(a){return this.gbL().$1$sourcePreferenceProp(a)}, +aGn(a,b){return this.gbL().$2$sourcePreferenceProp$type(a,b)}, +gHb(){return this.b}} +A.alY.prototype={} +A.i9.prototype={ +$1$key(a){var s=this.a +return this.b.$1(A.k(this).h("i9.1").a(s.zJ(B.d===a?s.gla(s):A.ae(a))))}, +$0(){return this.$1$key(B.d)}} +A.UF.prototype={ +$1$key(a){var s=B.d===a?this.a.a:A.ae(a) +return this.b.$1(new A.np(s,this.a.b,"Fallback"))}, +$0(){return this.$1$key(B.d)}} +A.np.prototype={ +j(a){return"SourcePreferenceProp.fallback(key: "+A.h(this.a)+", currentValue: "+A.h(this.b)+")"}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r!==b)if(J.a1(b)===A.o(r))if(b instanceof A.np){s=b.a==r.a +s=(s||s)&&B.a0.dj(b.b,r.b)}else s=!1 +else s=!1 +else s=!0 +return s}, +gv(a){return A.X(A.o(this),this.a,B.a0.du(0,this.b),B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +gbL(){return new A.UF(this,B.N5,t.mW)}, +b7(){return A.ap(["key",this.a,"currentValue",this.b,"type",this.c],t.N,t.z)}, +$im8:1, +zJ(a){return this.gbL().$1$key(a)}, +gla(a){return this.a}, +gjC(){return this.b}} +A.UD.prototype={ +$2$currentValue$key(a,b){var s=B.d===b?this.a.a:A.ae(b),r=this.a,q=B.d===a?r.e:A.cG(a) +return this.b.$1(A.btj(null,q,r.d,r.f,s,r.c,r.b))}, +$0(){return this.$2$currentValue$key(B.d,B.d)}, +$1$currentValue(a){return this.$2$currentValue$key(a,B.d)}, +$1$key(a){return this.$2$currentValue$key(B.d,a)}} +A.p8.prototype={ +j(a){var s=this +return"SourcePreferenceProp.checkBoxPreference(key: "+A.h(s.a)+", title: "+A.h(s.b)+", summary: "+A.h(s.c)+", defaultValue: "+A.h(s.d)+", currentValue: "+A.h(s.e)+", defaultValueType: "+A.h(s.f)+")"}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r!==b)if(J.a1(b)===A.o(r))if(b instanceof A.p8){s=b.a==r.a +if(s||s){s=b.b==r.b +if(s||s){s=b.c==r.c +if(s||s){s=b.d==r.d +if(s||s){s=b.e==r.e +if(s||s){s=b.f==r.f +s=s||s}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1 +else s=!1 +else s=!0 +return s}, +gv(a){var s=this +return A.X(A.o(s),s.a,s.b,s.c,s.d,s.e,s.f,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +gbL(){return new A.UD(this,B.N9,t.Bh)}, +b7(){var s=this +return A.ap(["key",s.a,"title",s.b,"summary",s.c,"defaultValue",s.d,"currentValue",s.e,"defaultValueType",s.f,"type",s.r],t.N,t.z)}, +$im8:1, +t2(a){return this.gbL().$1$currentValue(a)}, +zJ(a){return this.gbL().$1$key(a)}, +gla(a){return this.a}, +gjC(){return this.e}} +A.UT.prototype={ +$2$currentValue$key(a,b){var s=B.d===b?this.a.a:A.ae(b),r=this.a,q=B.d===a?r.e:A.cG(a) +return this.b.$1(A.btn(null,q,r.d,r.f,s,r.c,r.b))}, +$0(){return this.$2$currentValue$key(B.d,B.d)}, +$1$currentValue(a){return this.$2$currentValue$key(a,B.d)}, +$1$key(a){return this.$2$currentValue$key(B.d,a)}} +A.pf.prototype={ +j(a){var s=this +return"SourcePreferenceProp.switchPreferenceCompat(key: "+A.h(s.a)+", title: "+A.h(s.b)+", summary: "+A.h(s.c)+", defaultValue: "+A.h(s.d)+", currentValue: "+A.h(s.e)+", defaultValueType: "+A.h(s.f)+")"}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r!==b)if(J.a1(b)===A.o(r))if(b instanceof A.pf){s=b.a==r.a +if(s||s){s=b.b==r.b +if(s||s){s=b.c==r.c +if(s||s){s=b.d==r.d +if(s||s){s=b.e==r.e +if(s||s){s=b.f==r.f +s=s||s}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1 +else s=!1 +else s=!0 +return s}, +gv(a){var s=this +return A.X(A.o(s),s.a,s.b,s.c,s.d,s.e,s.f,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +gbL(){return new A.UT(this,B.N8,t.jY)}, +b7(){var s=this +return A.ap(["key",s.a,"title",s.b,"summary",s.c,"defaultValue",s.d,"currentValue",s.e,"defaultValueType",s.f,"type",s.r],t.N,t.z)}, +$im8:1, +t2(a){return this.gbL().$1$currentValue(a)}, +zJ(a){return this.gbL().$1$key(a)}, +gla(a){return this.a}, +gjC(){return this.e}} +A.UO.prototype={ +$2$currentValue$key(a,b){var s=B.d===b?this.a.a:A.ae(b),r=this.a,q=B.d===a?r.e:A.ae(a) +return this.b.$1(A.btl(null,q,r.d,r.f,r.r,s,r.c,r.b))}, +$0(){return this.$2$currentValue$key(B.d,B.d)}, +$1$currentValue(a){return this.$2$currentValue$key(a,B.d)}, +$1$key(a){return this.$2$currentValue$key(B.d,a)}} +A.pb.prototype={ +gdW(a){var s=this.r +if(s==null)return null +if(s instanceof A.oe)return s +return new A.oe(s,s,t.Kp)}, +j(a){var s=this +return"SourcePreferenceProp.listPreference(key: "+A.h(s.a)+", title: "+A.h(s.b)+", summary: "+A.h(s.c)+", defaultValue: "+A.h(s.d)+", currentValue: "+A.h(s.e)+", defaultValueType: "+A.h(s.f)+", entries: "+A.h(s.gdW(s))+")"}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r!==b)if(J.a1(b)===A.o(r))if(b instanceof A.pb){s=b.a==r.a +if(s||s){s=b.b==r.b +if(s||s){s=b.c==r.c +if(s||s){s=b.d==r.d +if(s||s){s=b.e==r.e +if(s||s){s=b.f==r.f +s=(s||s)&&B.a0.dj(b.r,r.r)}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1 +else s=!1 +else s=!0 +return s}, +gv(a){var s=this +return A.X(A.o(s),s.a,s.b,s.c,s.d,s.e,s.f,B.a0.du(0,s.r),B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +gbL(){return new A.UO(this,B.N7,t.rH)}, +b7(){var s=this +return A.ap(["key",s.a,"title",s.b,"summary",s.c,"defaultValue",s.d,"currentValue",s.e,"defaultValueType",s.f,"entries",s.gdW(s),"type",s.w],t.N,t.z)}, +$im8:1, +t2(a){return this.gbL().$1$currentValue(a)}, +zJ(a){return this.gbL().$1$key(a)}, +gla(a){return this.a}, +gjC(){return this.e}} +A.UQ.prototype={ +$2$currentValue$key(a,b){var s=B.d===b?this.a.a:A.ae(b),r=this.a,q=B.d===a?r.e:t.Xb.a(a) +return this.b.$1(A.btm(null,q,r.d,r.f,r.r,s,r.c,r.b))}, +$0(){return this.$2$currentValue$key(B.d,B.d)}, +$1$currentValue(a){return this.$2$currentValue$key(a,B.d)}, +$1$key(a){return this.$2$currentValue$key(B.d,a)}} +A.pc.prototype={ +gKN(a){var s=this.d +if(s==null)return null +if(s instanceof A.cQ)return s +return new A.cQ(s,s,t.ls)}, +gjC(){var s=this.e +if(s==null)return null +if(s instanceof A.cQ)return s +return new A.cQ(s,s,t.ls)}, +gdW(a){var s=this.r +if(s==null)return null +if(s instanceof A.oe)return s +return new A.oe(s,s,t.Kp)}, +j(a){var s=this +return"SourcePreferenceProp.multiSelectListPreference(key: "+A.h(s.a)+", title: "+A.h(s.b)+", summary: "+A.h(s.c)+", defaultValue: "+A.h(s.gKN(s))+", currentValue: "+A.h(s.gjC())+", defaultValueType: "+A.h(s.f)+", entries: "+A.h(s.gdW(s))+")"}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r!==b)if(J.a1(b)===A.o(r))if(b instanceof A.pc){s=b.a==r.a +if(s||s){s=b.b==r.b +if(s||s){s=b.c==r.c +if(s||s)if(B.a0.dj(b.d,r.d))if(B.a0.dj(b.e,r.e)){s=b.f==r.f +s=(s||s)&&B.a0.dj(b.r,r.r)}else s=!1 +else s=!1 +else s=!1}else s=!1}else s=!1}else s=!1 +else s=!1 +else s=!0 +return s}, +gv(a){var s=this +return A.X(A.o(s),s.a,s.b,s.c,B.a0.du(0,s.d),B.a0.du(0,s.e),s.f,B.a0.du(0,s.r),B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +gbL(){return new A.UQ(this,B.N6,t.X0)}, +b7(){var s=this +return A.ap(["key",s.a,"title",s.b,"summary",s.c,"defaultValue",s.gKN(s),"currentValue",s.gjC(),"defaultValueType",s.f,"entries",s.gdW(s),"type",s.w],t.N,t.z)}, +$im8:1, +t2(a){return this.gbL().$1$currentValue(a)}, +zJ(a){return this.gbL().$1$key(a)}, +gla(a){return this.a}} +A.UE.prototype={ +$2$currentValue$key(a,b){var s=B.d===b?this.a.a:A.ae(b),r=this.a,q=B.d===a?r.e:A.ae(a) +return this.b.$1(A.btk(null,q,r.d,r.f,r.w,r.r,s,r.c,r.x,r.b))}, +$0(){return this.$2$currentValue$key(B.d,B.d)}, +$1$currentValue(a){return this.$2$currentValue$key(a,B.d)}, +$1$key(a){return this.$2$currentValue$key(B.d,a)}} +A.p9.prototype={ +j(a){var s=this +return"SourcePreferenceProp.editTextPreference(key: "+A.h(s.a)+", title: "+A.h(s.b)+", summary: "+A.h(s.c)+", defaultValue: "+A.h(s.d)+", currentValue: "+A.h(s.e)+", defaultValueType: "+A.h(s.f)+", dialogTitle: "+A.h(s.r)+", dialogMessage: "+A.h(s.w)+", text: "+A.h(s.x)+")"}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r!==b)if(J.a1(b)===A.o(r))if(b instanceof A.p9){s=b.a==r.a +if(s||s){s=b.b==r.b +if(s||s){s=b.c==r.c +if(s||s){s=b.d==r.d +if(s||s){s=b.e==r.e +if(s||s){s=b.f==r.f +if(s||s){s=b.r==r.r +if(s||s){s=b.w==r.w +if(s||s){s=b.x==r.x +s=s||s}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1 +else s=!1 +else s=!0 +return s}, +gv(a){var s=this +return A.X(A.o(s),s.a,s.b,s.c,s.d,s.e,s.f,s.r,s.w,s.x,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +gbL(){return new A.UE(this,B.N4,t.ya)}, +b7(){var s=this +return A.ap(["key",s.a,"title",s.b,"summary",s.c,"defaultValue",s.d,"currentValue",s.e,"defaultValueType",s.f,"dialogTitle",s.r,"dialogMessage",s.w,"text",s.x,"type",s.y],t.N,t.z)}, +$im8:1, +$ibph:1, +t2(a){return this.gbL().$1$currentValue(a)}, +zJ(a){return this.gbL().$1$key(a)}, +gla(a){return this.a}, +gjC(){return this.e}} +A.b_f.prototype={ +$2(a,b){return new A.aU(a,A.bs(b),t.mT)}, +$S:155} +A.b_j.prototype={ +$1(a){return A.bs(a)}, +$S:39} +A.b_k.prototype={ +$1(a){return A.bs(a)}, +$S:39} +A.b_l.prototype={ +$2(a,b){return new A.aU(a,A.bs(b),t.mT)}, +$S:155} +A.XL.prototype={ +aJ(a,b){var s,r,q,p,o,n,m,l,k,j=null,i=A.bxA(j),h=$.b7.bm(new A.TM(2,i,0,j),t.CY) +$.b7.bm(new A.zJ(h,j),t.H) +s=$.b7.bm(new A.ib(new A.atA(),B.cY,t.Ks),t.yi) +r=$.b7.bm(new A.cW(!1,j,t.Kr),t.uh) +q=t.J +p=A.O(A.A(a,B.h,q).gjB(),j,j,j,j,j,j,j) +o=t.p +n=A.a([A.db(j,j,A.fR(h.d===0?B.Ug:B.tr,j,j,j),j,new A.atB(r),j,j,j,j,j)],o) +if(h.d===1)B.b.I(n,A.a([B.Vh],o)) +n.push(A.db(j,j,B.ty,j,new A.atC(a,h),j,j,j,j,j)) +m=A.bfJ(A.a([!0,r.a],t.HZ)) +l=A.aS(a,j,t.l).w +k=A.z4(A.A(a,B.h,q).glQ()) +q=A.A(a,B.h,q) +o=A.a([A.aWX(h,B.u,l.a.a>=600,A.a([k,A.z4(q.gmM(q))],o))],o) +if(r.a)o.push(new A.e5(B.dn,j,j,h.d===0?new A.qP(j,j,j,new A.atD(a),new A.atE(r),!0,B.alq):new A.qP(j,b.aa(0,$.bh7(),t.v),new A.atF(b),j,new A.atG(r),!0,B.alr),j)) +return A.e_(A.eh(n,j,new A.uo(A.cO(o,B.w,B.D,B.T),m,j),!0,j,j,p),j,A.aWY(B.a1G,h,s),j,j,j,!0,!1,!1,j,j)}} +A.atA.prototype={ +$0(){return new A.bo(null,t.C)}, +$S:720} +A.atB.prototype={ +$0(){this.a.sk(0,!0) +return!0}, +$S:0} +A.atC.prototype={ +$0(){return A.fk(new A.atz(this.b),this.a,t.z)}, +$S:0} +A.atz.prototype={ +$1(a){return this.a.d===0?B.aeb:B.Sv}, +$S:721} +A.atD.prototype={ +$1(a){var s +if(!(a==null||a.length===0)){s=A.bm7(new A.tE(a)) +A.bd(this.a).dv(s,null,t.z)}}, +$S:43} +A.atE.prototype={ +$0(){this.a.sk(0,!1) +return!1}, +$S:0} +A.atF.prototype={ +$1(a){J.eX(this.a.aa(0,$.bh7().gcr(),t.ct),a) +return a}, +$S:43} +A.atG.prototype={ +$0(){this.a.sk(0,!1) +return!1}, +$S:0} +A.bf6.prototype={ +$1(a){var s=A.aa(a,!0,t.q8) +s.push(this.a) +return s}, +$S:162} +A.bf7.prototype={ +$0(){return A.a([this.a],t.An)}, +$S:163} +A.bf8.prototype={ +$1(a){var s=A.aa(a,!0,t.q8) +s.push(this.a) +return s}, +$S:162} +A.bf9.prototype={ +$0(){return A.a([this.a],t.An)}, +$S:163} +A.bfa.prototype={ +$1(a){var s=A.aa(a,!0,t.q8) +s.push(this.a) +return s}, +$S:162} +A.bfb.prototype={ +$0(){return A.a([this.a],t.An)}, +$S:163} +A.bfc.prototype={ +$1(a){return this.a}, +$S:724} +A.wL.prototype={ +aP(){var s=this.a +s===$&&A.b() +return this.fb(0,s,B.a2G,"extensionLanguageFilter")}} +A.bf5.prototype={ +$1(a){return this.a}, +$S:270} +A.bf4.prototype={ +$1(a){var s=this.a +return s.tu(s,new A.bf3(this.b),t.N,t.h1)}, +$S:270} +A.bf3.prototype={ +$2(a,b){var s=J.lC(b,new A.bf2(this.a)) +return new A.aU(a,A.aa(s,!0,s.$ti.h("z.E")),t.lY)}, +$S:726} +A.bf2.prototype={ +$1(a){return A.Of(a.gcV(a),this.a)}, +$S:727} +A.wM.prototype={ +aP(){return null}} +A.afT.prototype={} +A.afU.prototype={} +A.a0Q.prototype={ +L4(a,b,c,d){var s,r=null +if(a==null||J.ce(a))return A.a([],t.p) +s=A.bH(!1,r,r,r,!0,r,r,!1,r,r,r,r,r,!1,r,r,r,r,r,A.O(d,r,r,r,r,r,r,r),r,r) +a.toString +return A.a([new A.iy(s,r),new A.m6(new A.kx(new A.aB5(a,c),J.aZ(a),!0,!0,!0,A.rN(),r),b)],t.p)}, +aJ(a,b){var s,r,q,p,o,n=b.M($.bBC(),t.yG),m=A.F(t.N,t.h1),l=A.bW(n) +if(l!=null)m.I(0,l) +s=m.F(0,"installed") +r=m.F(0,"update") +q=m.F(0,"all") +l=new A.aB4(b) +p=t.H +$.b7.bm(new A.dz(new A.aB1(n,l),[]),p) +o=A.bW(n) +$.b7.bm(new A.dz(new A.aB2(n,b,a),[o]),p) +return A.ih(n,a,new A.aB3(this,m,s,r,q,a,l,b),!1,l,!1,null)}} +A.aB5.prototype={ +$2(a,b){var s=this.a,r=J.ak(s),q=r.i(s,b).gvm() +return new A.BF(r.i(s,b),this.b,new A.bP(q,t._b))}, +$S:728} +A.aB4.prototype={ +$0(){return this.a.jN(0,$.aqL().gqM(),t.j0)}, +$S:729} +A.aB1.prototype={ +$0(){if(!this.a.gjI())this.b.$0() +return}, +$S:5} +A.aB2.prototype={ +$0(){A.hq(this.a,this.b.aa(0,A.eA(this.c),t.g),!0,t.Lo) +return}, +$S:5} +A.aB3.prototype={ +$1(a){var s,r,q,p,o,n,m,l,k=this,j=null,i=k.b +if(i.a===0){s=k.c +if(s==null||J.ce(s)){s=k.d +if(s==null||J.ce(s)){s=k.e +s=s==null||J.ce(s)}else s=!1}else s=!1}else s=!1 +if(s){i=k.f +s=t.J +r=A.A(i,B.h,s).gmL() +s=A.A(i,B.h,s) +r=A.hU(A.eM(!1,A.O(s.gfd(s),j,j,j,j,j,j,j),B.l,j,j,j,j,j,k.r,j,j),r) +i=r}else{s=A.a([],t.p) +r=k.d +if(!(r==null||J.ce(r))){q=$.lA().i(0,"update") +q=q==null?j:q.gh9(q) +if(q==null)q="" +B.b.I(s,k.a.L4(r,B.alx,k.r,q))}r=k.c +if(!(r==null||J.ce(r))){q=$.lA().i(0,"installed") +q=q==null?j:q.gh9(q) +if(q==null)q="" +B.b.I(s,k.a.L4(r,B.alv,k.r,q))}r=k.e +if(!(r==null||J.ce(r))){q=$.lA().i(0,"all") +q=q==null?j:q.gh9(q) +if(q==null)q="" +B.b.I(s,k.a.L4(r,B.alu,k.r,q))}for(r=A.i1(i,i.r,A.k(i).c),q=k.r,p=k.a,o=t.O;r.u();){n=r.d +m=$.lA().i(0,n) +if(m==null)m=j +else{l=m.c +if(l==null)l=m.b +m=l==null?m.a:l}if(m==null)m=n +B.b.I(s,p.L4(i.i(0,n),new A.bP(n,o),q,m))}i=A.qJ(A.bi2(j,j,j,B.C,j,j,j,!1,B.R,j,!1,s),new A.aB0(k.w))}return i}, +$S:730} +A.aB0.prototype={ +$0(){return this.a.jN(0,$.aqL().gqM(),t.uz)}, +$S:2} +A.a0O.prototype={ +aJ(a,b){var s,r,q,p=null,o=b.M($.bBB(),t.yp),n=b.M($.aqK(),t.Xb),m=t.J,l=A.A(a,B.h,m) +l=A.O(l.glb(l),p,p,p,p,p,p,p) +s=t.l +r=A.aS(a,p,s).w +q=A.aS(a,p,s).w.a.a>=600?0.5:0.8 +s=A.aS(a,p,s).w +s=A.cZ(A.qn(new A.aAU(o,n,b),J.aZ(o),p,p),0.5*r.a.b,q*s.a.a) +m=A.A(a,B.h,m) +return A.kP(A.a([new A.ul(m.gdU(m),p)],t.p),s,p,l)}} +A.aAU.prototype={ +$2(a,b){var s,r=null,q=J.b3(this.a,b).toLowerCase(),p=$.lA().i(0,q),o=this.b,n=o==null?r:J.bCl(o,q),m=p==null,l=m?r:p.c +if(l==null)l=m?r:p.b +l=A.O(l==null?q:l,r,r,r,r,r,r,r) +s=m?r:p.b +if(!(s==null||s.length===0)){s=m?r:p.c +s=s!=(m?r:p.b) +m=s}else m=!1 +if(m){m=p.b +m.toString +m=A.O(m,r,r,r,r,r,r,r)}else m=r +return A.z2(B.jt,new A.bP(q,t.O),new A.aAT(this.c,o,q,n),r,m,l,n!==-1)}, +$S:271} +A.aAT.prototype={ +$1(a){var s,r,q,p=this +if(a){s=p.a.aa(0,$.aqK().gcr(),t.TO) +r=A.aY(t.N) +q=p.b +if(q!=null)r.I(0,q) +r.G(0,p.c) +J.eX(s,A.aa(r,!0,r.$ti.c))}else{s=p.d +s=s==null?null:B.f.gd6(s) +if(s===!1){s=A.a([],t.s) +r=p.b +if(r!=null)B.b.I(s,r) +B.b.F(s,p.c) +J.eX(p.a.aa(0,$.aqK().gcr(),t.TO),s)}}}, +$S:7} +A.BF.prototype={ +aJ(a,b){var s,r,q,p,o=null,n=b.M($.bh8(),t.FT),m=$.b7.bm(new A.cW(!1,o,t.Kr),t.uh),l=this.f,k=l.gAN(l) +if(k==null)k="" +k=A.o3(B.bh,new A.a8m(m.a,B.dV,B.adQ,k,o),B.bc) +s=l.gcV(l) +s=A.O(s==null?"":s,o,B.ac,o,o,o,o,o) +if(l.gmY(l)!=null){r=l.gmY(l) +r=A.h(r==null?o:r.gh9(r))+" "}else r=o +q=A.a([],t.VO) +p=l.gXi() +if(!(p==null||p.length===0)){p=l.gXi() +q.push(A.di(o,B.agI,(p==null?"":p)+" "))}p=l.gVy() +if(p===!0)q.push(A.di(o,B.agu,A.A(a,B.h,t.J).gno())) +return A.bH(!1,o,o,o,!0,o,o,!1,this.a,k,o,o,o,!1,o,o,o,A.bjV(A.di(q,B.ie,r),o,o),o,s,new A.a0P(l,n,m,b,this.r,o),o)}} +A.a0P.prototype={ +A(a){var s,r=this,q=null,p=r.c,o=p.gjK() +if(o===!0){p=p.gLJ() +p=p===!0?new A.aAX(r):q +return new A.a5K(p,q,q,q,q,B.l,q,!1,q,!0,A.O(A.A(a,B.h,t.J).gjK(),q,q,q,q,B.aiG,q,q),q)}else{o=p.gLJ() +if(o===!0){o=r.e +s=!o.a?new A.aAY(r,a):q +p=p.gLz() +if(p===!0){p=t.J +if(o.a){p=A.A(a,B.h,p) +p=p.glz(p)}else{p=A.A(a,B.h,p) +p=p.gio(p)}}else{p=t.J +p=o.a?A.A(a,B.h,p).go2():A.A(a,B.h,p).go1()}return A.eM(!1,A.O(p,q,q,q,q,q,q,q),B.l,q,q,q,q,q,s,q,q)}else{p=r.e.a +o=!p?new A.aAZ(r,a):q +s=t.J +if(p){p=A.A(a,B.h,s) +p=p.gmU(p)}else p=A.A(a,B.h,s).gmT() +return A.eM(!1,A.O(p,q,q,q,q,q,q,q),B.l,q,q,q,q,q,o,q,q)}}}} +A.aAX.prototype={ +$0(){var s=this.a,r=s.c.gvm() +r.toString +return s.d.adh(r)}, +$S:0} +A.aAY.prototype={ +$0(){var s=0,r=A.y(t.H),q=1,p,o=this,n,m,l,k,j,i,h +var $async$$0=A.u(function(a,b){if(a===1){p=b +s=q}while(true)switch(s){case 0:q=3 +m=o.a +l=m.e +l.sk(0,!0) +k=o.b +j=t.P +s=6 +return A.t(A.dw(new A.aAW(m,k),j),$async$$0) +case 6:n=b +if(k.f!=null)A.hq(n,m.f.aa(0,A.eA(k),t.g),!1,j) +l.sk(0,!1) +q=1 +s=5 +break +case 3:q=2 +h=p +s=5 +break +case 2:s=1 +break +case 5:return A.w(null,r) +case 1:return A.v(p,r)}}) +return A.x($async$$0,r)}, +$S:2} +A.aAW.prototype={ +$0(){var s=0,r=A.y(t.P),q=this,p,o,n,m +var $async$$0=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:o=q.a +n=o.c +m=n.gvm() +if(m==null||m.length===0)throw A.c(A.WV(q.b).gl3()) +m=n.gLz() +p=o.d +s=m===!0?2:4 +break +case 2:n=n.gvm() +n.toString +m=t.z +s=5 +return A.t(p.a.GF(0,"/extension/update/"+n,null,m,m),$async$$0) +case 5:s=3 +break +case 4:n=n.gvm() +n.toString +s=6 +return A.t(p.adh(n),$async$$0) +case 6:case 3:s=7 +return A.t(o.r.$0(),$async$$0) +case 7:return A.w(null,r)}}) +return A.x($async$$0,r)}, +$S:52} +A.aAZ.prototype={ +$0(){var s=0,r=A.y(t.H),q=1,p,o=this,n,m,l,k,j,i,h +var $async$$0=A.u(function(a,b){if(a===1){p=b +s=q}while(true)switch(s){case 0:q=3 +m=o.a +l=m.e +l.sk(0,!0) +k=o.b +j=t.P +s=6 +return A.t(A.dw(new A.aAV(m,k),j),$async$$0) +case 6:n=b +if(k.f!=null)A.hq(n,m.f.aa(0,A.eA(k),t.g),!1,j) +l.sk(0,!1) +q=1 +s=5 +break +case 3:q=2 +h=p +s=5 +break +case 2:s=1 +break +case 5:return A.w(null,r) +case 1:return A.v(p,r)}}) +return A.x($async$$0,r)}, +$S:2} +A.aAV.prototype={ +$0(){var s=0,r=A.y(t.P),q=this,p,o,n,m,l,k,j +var $async$$0=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:l=q.a +k=l.c +j=k.gvm() +if(j==null||j.length===0)throw A.c(A.WV(q.b).gl3()) +j=k.gvm() +j.toString +m=t.z +s=2 +return A.t(l.d.a.GF(0,"/extension/install/"+j,null,m,m),$async$$0) +case 2:j=k.gmY(k) +j=j==null?null:j.guE(j) +if(!(j==null||j.length===0)){k=k.gmY(k) +k=k.guE(k) +k.toString +p=k +k=l.f +j=$.Wm() +o=k.aa(0,j,t.Xb) +m=o +if(!(m==null||J.ce(m))){m=o +m.toString +m=!J.rQ(m,p)}else m=!1 +if(m){k=k.aa(0,j.gcr(),t.EH) +n=A.i2(o,t.N) +J.fu(n,p) +n=n +J.eX(k,A.aa(n,!0,A.ch(n).c))}}s=3 +return A.t(l.r.$0(),$async$$0) +case 3:return A.w(null,r)}}) +return A.x($async$$0,r)}, +$S:52} +A.a25.prototype={ +L3(a,b){return this.aHF(a,b)}, +aHF(a,b){var s=0,r=A.y(t.z),q,p,o +var $async$L3=A.u(function(c,d){if(c===1)return A.v(d,r) +while(true)switch(s){case 0:q=a.aa(0,A.eA(b),t.g) +s=2 +return A.t($.bme().iF(A.a(["apk"],t.s),B.mP),$async$L3) +case 2:p=d +o=p==null?null:p.a +if(!(o==null||J.ce(o)))if(b.f!=null)q.rz(0,A.A(b,B.h,t.J).gmV()) +A.dw(new A.aFZ(a,b,p),t.H).b9(new A.aG_(q,a,b),t.X) +return A.w(null,r)}}) +return A.x($async$L3,r)}, +aJ(a,b){var s=null +return A.db(s,s,B.tH,s,new A.aFW(this,b,a),s,s,s,s,s)}} +A.aFZ.prototype={ +$0(){var s=this.a.aa(0,$.bh8(),t.FT),r=this.c +r=r==null?null:J.Wq(r.a) +return s.Vm(this.b,r)}, +$S:2} +A.aG_.prototype={ +$1(a){var s=this.a +return A.vT(a,new A.aFX(this.b,s,this.c),new A.aFY(a,s),t.H,t.X)}, +$S:732} +A.aFY.prototype={ +$2(a,b){return A.hq(this.a,this.b,!1,t.H)}, +$S:13} +A.aFX.prototype={ +$1(a){var s,r=this.a,q=$.aqL() +if(r.f==null)A.q(A.R(u.w)) +r.glV().kd(q) +r=this.b +q=A.A(this.c,B.h,t.J).gmK() +s=r.b +s===$&&A.b() +s.vs() +r.rz(0,q)}, +$S:20} +A.aFW.prototype={ +$0(){return this.a.L3(this.b,this.c)}, +$S:0} +A.bgy.prototype={ +$0(){return this.a.M($.A9(),t.v4).aeA(1,this.c,this.b,B.d4)}, +$S:272} +A.bgc.prototype={ +$2(a,b){var s=A.aa(a,!0,t.s7) +B.b.I(s,b) +return s}, +$S:1102} +A.bgd.prototype={ +$1(a){return this.a}, +$S:735} +A.a9l.prototype={ +$2$query(a,b){return A.bjO(a,b)}, +$1(a){return this.$2$query(a,null)}, +fP(a){return A.bjO(a.fr,a.fx)}, +gfi(){return null}} +A.O_.prototype={ +bJ(a){var s=null,r=t.B +return new A.am0(s,!1,new A.cd(A.aT(0,s,!1,t._C),t.ZI),s,s,s,s,this,A.a([],t.Vf),A.a([],r),A.a([],t._),A.a([],r),A.cx(s,s,s,t.M,t.K))}, +l(a,b){if(b==null)return!1 +return b instanceof A.O_&&b.fr===this.fr&&b.fx==this.fx}, +gv(a){return A.buh(A.amp(A.amp(A.amp(0,A.cU(A.o(this))),B.c.gv(this.fr)),J.T(this.fx)))}} +A.aVs.prototype={ +$1(a){return A.bgx(t.J9.a(a),this.a,this.b)}, +$S:736} +A.O0.prototype={} +A.am0.prototype={} +A.a6G.prototype={ +$1$query(a){return A.bjx(a)}, +$0(){return this.$1$query(null)}, +fP(a){return A.bjx(a.dy)}, +gfi(){return null}} +A.Mv.prototype={ +bJ(a){var s=null,r=t.B +return new A.ajJ(s,!1,this,A.a([],t.bx),A.a([],r),A.a([],t._),A.a([],r),A.cx(s,s,s,t.M,t.K))}, +l(a,b){if(b==null)return!1 +return b instanceof A.Mv&&b.dy==this.dy}, +gv(a){return A.buh(A.amp(A.amp(0,A.cU(A.o(this))),J.T(this.dy)))}} +A.aMV.prototype={ +$1(a){return A.bUt(t._L.a(a),this.a)}, +$S:737} +A.Mw.prototype={} +A.ajJ.prototype={} +A.aoT.prototype={} +A.apl.prototype={} +A.a1s.prototype={ +aJ(a,b){var s=null,r=$.b7.bm(new A.cW(this.f,s,t.ar),t.XR),q=b.M(A.bjx(r.a),t.z6),p=A.O(A.A(a,B.h,t.J).glD(),s,s,s,s,s,s,s),o=A.bfJ(A.a([!0],t.HZ)) +return A.e_(A.eh(s,s,new A.uo(A.cO(A.a([new A.e5(B.dn,s,s,new A.qP(s,r.a,s,new A.aDN(r),s,!0,s),s)],t.p),B.w,B.D,B.T),o,s),s,s,s,p),s,A.ih(q,a,new A.aDO(a,b,r),!1,s,!1,s),s,s,s,!0,!1,!1,s,s)}} +A.aDN.prototype={ +$1(a){this.a.sk(0,a) +return a}, +$S:43} +A.aDO.prototype={ +$1(a){var s,r=null,q=J.ak(a),p=q.gai(a) +if(p){q=this.a +p=t.J +s=A.A(q,B.h,p).gll() +p=A.A(q,B.h,p) +s=A.hU(A.eM(!1,A.O(p.gfd(p),r,r,r,r,r,r,r),B.l,r,r,r,r,r,new A.aDL(this.b),r,r),s) +q=s}else q=A.qn(new A.aDM(a,this.c),q.gt(a),r,r) +return q}, +$S:738} +A.aDL.prototype={ +$0(){var s=this.a,r=$.bhl() +if(s.f==null)A.q(A.R(u.w)) +s.glV().kd(r) +return null}, +$S:0} +A.aDM.prototype={ +$2(a,b){var s=this.a,r=J.ak(s) +if(J.fv(r.i(s,b).b)==null)return B.a_ +else return new A.a9n(r.i(s,b).b,r.i(s,b).a,this.b.a,null)}, +$S:33} +A.a9n.prototype={ +A(a){var s=null,r=this.c,q=r.gh9(r) +r=q==null?r.gcV(r):q +return A.cO(A.a([A.bH(!1,s,s,s,!0,s,s,!1,s,s,s,s,new A.aVG(this,a),!1,s,s,s,s,s,A.O(r==null?"":r,s,s,s,s,s,s,s),B.Ux,s),A.ih(this.d,a,new A.aVH(a),!1,s,!1,s)],t.p),B.cS,B.D,B.aa)}} +A.aVG.prototype={ +$0(){var s=this.a,r=s.c +r=r.gaK(r) +r.toString +s=A.vJ(new A.kA(r,B.d4,s.e,null)) +return A.bd(this.b).dv(s,null,t.z)}, +$S:0} +A.aVH.prototype={ +$1(a){var s,r,q,p,o,n=null,m=J.ak(a) +if(m.gai(a))m=new A.b8(B.j4,A.O(A.A(this.a,B.h,t.J).gnl(),n,n,n,n,n,n,n),n) +else{s=A.a([],t.p) +for(m=m.gaj(a),r=this.a;m.u();){q=m.gH(m) +p=q.gfJ() +o=q.gaK(q)!=null?new A.aVF(q,r):n +s.push(new A.ez(144,192,new A.qo(q,o,n,!1,!0,!0,p===!0,n),n))}m=A.ng(A.dd(s,B.w,B.D,B.T),n,B.C,n,n,B.aw)}return m}, +$S:739} +A.aVF.prototype={ +$0(){var s=this.a +s=s.gaK(s) +s.toString +s=A.py(new A.j3(s,null)) +return A.bd(this.b).dv(s,null,t.z)}, +$S:0} +A.bgr.prototype={ +$1(a){var s=A.aa(a,!0,t.s7) +s.push(this.a) +return s}, +$S:273} +A.bgs.prototype={ +$0(){return A.a([this.a],t.wb)}, +$S:741} +A.bgt.prototype={ +$1(a){return this.a}, +$S:742} +A.yX.prototype={ +aP(){var s,r,q,p=t.N,o=A.F(p,t.iW),n=this.a +n===$&&A.b() +s=A.bW(n.M($.bnl(),t.nS)) +if(s!=null)o.I(0,s) +r=n.M($.Wm(),t.Xb) +o.F(0,"lastUsed") +o.F(0,"localsourcelang") +o=A.aa(new A.c9(o,o.$ti.h("c9<1>")),!0,t.z) +q=A.l9(null,null,p,t.y) +A.bHB(q,o,null,new A.aU0(r)) +return q}, +aOE(a,b){var s=t.EH,r=this.a +if(!b){r===$&&A.b() +s=r.aa(0,$.Wm().gcr(),s) +r=J.bK(s) +r.sd8(s,new A.aU1(a).$1(r.gd8(s)))}else{r===$&&A.b() +s=r.aa(0,$.Wm().gcr(),s) +r=J.bK(s) +r.sd8(s,new A.aU2(a).$1(r.gd8(s)))}}} +A.aU0.prototype={ +$1(a){var s=this.a +s=s==null?null:J.rQ(s,a) +return s===!0}, +$S:87} +A.aU1.prototype={ +$1(a){var s=A.a([],t.s) +if(a!=null)B.b.I(s,a) +B.b.F(s,this.a) +return s}, +$S:274} +A.aU2.prototype={ +$1(a){var s=A.aY(t.N) +if(a!=null)s.I(0,a) +s.G(0,this.a) +return A.aa(s,!0,s.$ti.c)}, +$S:274} +A.bgq.prototype={ +$1(a){return this.a}, +$S:744} +A.bgv.prototype={ +$1(a){return J.lC(a,new A.bgu(this.a))}, +$S:745} +A.bgu.prototype={ +$1(a){return A.Of(a.gcV(a),this.a)}, +$S:746} +A.bgw.prototype={ +$1(a){return a}, +$S:273} +A.yY.prototype={ +aP(){var s=this.a +s===$&&A.b() +return this.fb(0,s,B.a1k,"sourceLanguageFilter")}} +A.yZ.prototype={ +aP(){var s=this.a +s===$&&A.b() +return this.fb(0,s,null,"sourceLastUsed")}} +A.a9k.prototype={ +$1$query(a){return A.bjN(a)}, +$0(){return this.$1$query(null)}, +fP(a){return A.bjN(a.dy)}, +gfi(){return null}} +A.NY.prototype={ +bJ(a){var s=null,r=t.B +return new A.am_(s,!1,this,A.a([],t.lB),A.a([],r),A.a([],t._),A.a([],r),A.cx(s,s,s,t.M,t.K))}, +l(a,b){if(b==null)return!1 +return b instanceof A.NY&&b.dy==this.dy}, +gv(a){var s=A.buc(A.buc(0,A.cU(A.o(this))),J.T(this.dy)) +s=s+((s&67108863)<<3)&536870911 +s^=s>>>11 +return s+((s&16383)<<15)&536870911}} +A.aVr.prototype={ +$1(a){return A.bVs(t.ao.a(a),this.a)}, +$S:747} +A.NZ.prototype={} +A.am_.prototype={} +A.alU.prototype={} +A.alV.prototype={} +A.apk.prototype={} +A.a9m.prototype={ +aJ(a,b){var s,r,q,p,o,n=b.M($.bhm(),t.z1),m=A.F(t.N,t.iW),l=A.bW(n) +if(l!=null)m.I(0,l) +s=m.F(0,"localsourcelang") +r=m.F(0,"lastUsed") +q=m.F(0,"all") +l=new A.aVE(b) +p=t.H +$.b7.bm(new A.dz(new A.aVB(n,l),[]),p) +o=A.bW(n) +$.b7.bm(new A.dz(new A.aVC(n,b,a),[o]),p) +return A.ih(n,a,new A.aVD(m,s,r,a,l,q),!1,l,!1,null)}} +A.aVE.prototype={ +$0(){return this.a.jN(0,$.bhl().gqM(),t.EJ)}, +$S:748} +A.aVB.prototype={ +$0(){if(!this.a.gjI())this.b.$0() +return}, +$S:5} +A.aVC.prototype={ +$0(){A.hq(this.a,this.b.aa(0,A.eA(this.c),t.g),!0,t.Uz) +return}, +$S:5} +A.aVD.prototype={ +$1(a){var s,r,q,p,o,n,m,l=this,k=null,j=l.a +if(j.a===0){s=l.b +if(s==null||J.ce(s)){s=l.c +s=s==null||J.ce(s)}else s=!1}else s=!1 +if(s){j=l.d +s=t.J +r=A.A(j,B.h,s).gll() +s=A.A(j,B.h,s) +return A.hU(A.eM(!1,A.O(s.gfd(s),k,k,k,k,k,k,k),B.l,k,k,k,k,k,l.e,k,k),r)}s=t.p +r=A.a([],s) +q=l.c +if(!(q==null||J.ce(q))){p=$.lA().i(0,"lastUsed") +p=p==null?k:p.gh9(p) +p=A.bH(!1,k,k,k,!0,k,k,!1,k,k,k,k,k,!1,k,k,k,k,k,A.O(p==null?"":p,k,k,k,k,k,k,k),k,k) +q.toString +B.b.I(r,A.a([new A.iy(p,k),new A.iy(new A.qT(J.jo(q),k),k)],s))}q=l.f +p=q==null +if(!(p||J.ce(q))){o=$.lA().i(0,"all") +o=o==null?k:o.gh9(o) +o=A.bH(!1,k,k,k,!0,k,k,!1,k,k,k,k,k,!1,k,k,k,k,k,A.O(o==null?"":o,k,k,k,k,k,k,k),k,k) +p=p?k:J.aZ(q) +B.b.I(r,A.a([new A.iy(o,k),new A.m6(new A.kx(new A.aVz(q),p,!0,!0,!0,A.rN(),k),k)],s))}for(q=A.i1(j,j.r,A.k(j).c);q.u();){p=q.d +o=A.a([],s) +n=j.i(0,p) +if(!(n==null||J.ce(n))){n=$.lA().i(0,p) +if(n==null)n=k +else{m=n.c +if(m==null)m=n.b +n=m==null?n.a:m}n=A.bH(!1,k,k,k,!0,k,k,!1,k,k,k,k,k,!1,k,k,k,k,k,A.O(n==null?p:n,k,k,k,k,k,k,k),k,k) +m=j.i(0,p) +m=m==null?k:J.aZ(m) +B.b.I(o,A.a([new A.iy(n,k),new A.m6(new A.kx(new A.aVA(j,p),m,!0,!0,!0,A.rN(),k),k)],s))}B.b.I(r,o)}j=l.b +if(!(j==null||J.ce(j))){q=$.lA().i(0,"localsourcelang") +q=q==null?k:q.gh9(q) +q=A.bH(!1,k,k,k,!0,k,k,!1,k,k,k,k,k,!1,k,k,k,k,k,A.O(q==null?"":q,k,k,k,k,k,k,k),k,k) +j.toString +B.b.I(r,A.a([new A.iy(q,k),new A.iy(new A.qT(J.jo(j),k),k)],s))}return A.qJ(A.bi2(k,k,k,B.C,k,k,k,!1,B.R,k,!1,r),l.e)}, +$S:749} +A.aVz.prototype={ +$2(a,b){var s=this.a +s.toString +return new A.qT(J.b3(s,b),null)}, +$S:275} +A.aVA.prototype={ +$2(a,b){var s=this.a.i(0,this.b) +s.toString +return new A.qT(J.b3(s,b),null)}, +$S:275} +A.a96.prototype={ +aJ(a,b){var s,r,q,p,o,n=null,m=b.M($.bnk(),t.Yl),l=$.b7.bm(new A.cW([],n,t.Dw),t.Wy) +$.b7.bm(new A.dz(new A.aU5(m,l),[]),t.H) +s=t.J +r=A.A(a,B.h,s) +r=A.O(r.glb(r),n,n,n,n,n,n,n) +q=t.l +p=A.aS(a,n,q).w +o=A.aS(a,n,q).w.a.a>=600?0.5:0.8 +q=A.aS(a,n,q).w +q=A.cZ(A.qn(new A.aU6(l,m,b),J.aZ(l.a),n,n),0.5*p.a.b,o*q.a.a) +s=A.A(a,B.h,s) +return A.kP(A.a([new A.ul(s.gdU(s),n)],t.p),q,n,r)}} +A.aU5.prototype={ +$0(){var s=this.a,r=J.fJ(J.jq(s)) +B.b.fz(r,new A.aU4(s)) +this.b.sk(0,r) +return null}, +$S:5} +A.aU4.prototype={ +$2(a,b){var s,r=this.a,q=J.ak(r),p=q.i(r,a) +r=q.i(r,b) +s=r===!0 +if(p===!0===s)r=B.c.bM(a,b) +else r=s?1:-1 +return r}, +$S:751} +A.aU6.prototype={ +$2(a,b){var s,r=null,q=J.b3(this.a.a,b),p=$.lA().i(0,q),o=J.b3(this.b,q),n=p==null,m=n?r:p.c +if(m==null)m=n?r:p.b +m=A.O(m==null?q:m,r,r,r,r,r,r,r) +s=n?r:p.b +if(!(s==null||s.length===0)){s=n?r:p.c +s=s!=(n?r:p.b) +n=s}else n=!1 +if(n){n=p.b +n.toString +n=A.O(n,r,r,r,r,r,r,r)}else n=r +return A.z2(B.jt,r,new A.aU3(this.c,q),r,n,m,o===!0)}, +$S:271} +A.aU3.prototype={ +$1(a){this.a.aa(0,$.bnk().gcr(),t.u8).aOE(this.b,a)}, +$S:7} +A.qT.prototype={ +aJ(a,b){var s,r,q=null,p=this.e,o=p.gAN(p) +o=A.o3(B.bh,A.nf(!1,q,o==null?"":o,q,!1,B.dV,q),B.bc) +s=p.gcV(p) +s=A.O(s==null?"":s,q,q,q,q,q,q,q) +r=p.gmY(p) +r=r==null?q:r.gh9(r) +if(!(r==null||r.length===0)){r=p.gmY(p) +r=r==null?q:r.gh9(r) +r=A.O(r==null?"":r,q,q,q,q,q,q,q)}else r=q +p=p.gOC() +p=p===!0?A.eM(!1,A.O(A.A(a,B.h,t.J).gmZ(),q,q,q,q,q,q,q),B.l,q,q,q,q,q,new A.aU7(this,b,a),q,q):q +return A.bH(!1,q,q,q,!0,q,q,!1,q,o,q,q,new A.aU8(this,b,a),!1,q,q,q,r,q,s,p,q)}} +A.aU8.prototype={ +$0(){var s=0,r=A.y(t.H),q,p=this,o +var $async$$0=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:o=p.a.e +if(o.gaK(o)==null){s=1 +break}J.eX(p.b.aa(0,$.aqQ().gcr(),t.KP),o.gaK(o)) +o=o.gaK(o) +o.toString +o=A.vJ(new A.kA(o,B.fJ,null,null)) +A.bd(p.c).dv(o,null,t.z) +case 1:return A.w(q,r)}}) +return A.x($async$$0,r)}, +$S:2} +A.aU7.prototype={ +$0(){var s=0,r=A.y(t.H),q=this,p +var $async$$0=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:p=q.a.e +J.eX(q.b.aa(0,$.aqQ().gcr(),t.KP),p.gaK(p)) +p=p.gaK(p) +p.toString +p=A.vJ(new A.kA(p,B.i9,null,null)) +A.bd(q.c).dv(p,null,t.z) +return A.w(null,r)}}) +return A.x($async$$0,r)}, +$S:2} +A.jQ.prototype={ +aOX(a){var s,r=this.a +r===$&&A.b() +r.oL(0) +s=t.uS +s=A.nZ(r.gjj(),new A.aUl(a),s,s) +r.a7(s) +return s}, +km(a){var s=0,r=A.y(t.H),q,p=this,o,n +var $async$km=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:n=p.a +n===$&&A.b() +o=p.b +o===$&&A.b() +o=A.Xu(o) +n=n.e +n===$&&A.b() +n.kd(o) +q=null +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$km,r)}, +gaei(){var s,r,q,p,o=this.a +o===$&&A.b() +s=this.b +s===$&&A.b() +s=A.bW(o.aa(0,A.Xu(s),t.L2)) +r=A.bpB(s==null?A.a([],t.dH):s) +o.oL(0) +o=A.bW(o.gjj()) +q=A.bpB(o==null?A.a([],t.dH):o) +if(r.length!==q.length)return q +o=A.a([],t.H7) +for(p=0;p=600)A.oO(r).FN() +else A.blY(new A.aUD(s.a,s.c,s.d,s.e,s.f),null,r,null,t.z)}, +$S:7} +A.aUD.prototype={ +$1(a){var s=this +return s.a.a9n(s.b,s.c,A.bW(s.d),s.e,a)}, +$S:12} +A.aUL.prototype={ +$0(){this.a.sk(0,!1) +return!1}, +$S:0} +A.aUK.prototype={ +$1(a){var s=this,r=s.a +if(r.r===B.d4){s.b.sk(0,a) +s.c.jg(0)}else{if(a==null)return +r=A.vJ(new A.kA(r.f,B.d4,a,null)) +A.bd(s.d).oX(r,null,t.X)}}, +$S:43} +A.aUM.prototype={ +$1(a){var s=this +return s.a.a9n(s.b,s.c,A.bW(s.d),s.e,a)}, +$S:12} +A.aUN.prototype={ +$0(){var s=0,r=A.y(t.H),q,p=this +var $async$$0=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:q=p.a.jg(0) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$$0,r)}, +$S:2} +A.aUR.prototype={ +$0(){return this.b.jN(0,A.a9j(this.a.f),t.H)}, +$S:0} +A.aUS.prototype={ +$1(a){var s=null,r=A.A(this.a,B.h,t.J) +return A.e_(A.eh(s,s,s,s,s,s,A.O(r.gfS(r),s,s,s,s,s,s,s)),s,a,s,s,s,!0,!1,!1,s,s)}, +$S:135} +A.wP.prototype={ +aLM(a){return this.d.$1(this.c.a7S(a))}, +xw(a){return this.aLM(a,t.AK)}, +A(a9){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a3=this,a4=null,a5={},a6=a3.c.gEZ(),a7=A.dr("#0#9",new A.aBz(a6)),a8=A.dr("#0#11",new A.aBA(a6)) +$label0$0:{if(a6 instanceof A.nr){s=a6.b +r=s +q=!0 +p=!0}else{r=a4 +s=r +q=!1 +p=!1}if(p){if(!(r==null||r.length===0)){r.toString +p=A.bH(!1,a4,!0,a4,!0,a4,a4,!1,a4,a4,a4,a4,a4,!1,a4,a4,a4,a4,a4,A.O(r,a4,a4,a4,a4,a4,a4,a4),a4,a4)}else p=B.a_ +break $label0$0}if(a6 instanceof A.nu){p=B.f0 +break $label0$0}if(a6 instanceof A.nw){if(!q){s=a6.b +q=!0}if(q)r=s +else{s=a6.b +r=s +q=!0}o=a6.a +n=o +m=!0 +p=!0}else{n=a4 +r=n +o=r +m=!1 +p=!1}if(p){p=new A.qP(r,n,new A.aBB(a3,a6),a4,a4,!1,a4) +break $label0$0}if(a6 instanceof A.nq){if(!q){s=a6.b +q=!0}if(q)r=s +else{s=a6.b +r=s +q=!0}if(m)p=o +else{o=a6.a +p=o +m=!0}if(t.u.b(p)){if(m)n=o +else{o=a6.a +n=o +m=!0}p=!0}else{n=a4 +p=!1}}else{n=a4 +r=n +p=!1}if(p){p=A.AI(a4,B.f8,a4,a4,new A.aBC(a3,a6),a4,A.O(r==null?"":r,a4,a4,a4,a4,a4,a4,a4),!1,n===!0) +break $label0$0}if(a6 instanceof A.nx){if(!q){s=a6.b +q=!0}if(q)r=s +else{s=a6.b +r=s +q=!0}if(m)p=o +else{o=a6.a +p=o +m=!0}if(t.bo.b(p)){if(m)n=o +else{o=a6.a +n=o +m=!0}p=!0}else{n=a4 +p=!1}}else{n=a4 +r=n +p=!1}if(p){p=n==null||n===0?a4:n===1 +p=A.AI(a4,B.f8,a4,a4,new A.aBD(a3,a6),a4,A.O(r==null?"":r,a4,a4,a4,a4,a4,a4,a4),!0,p) +break $label0$0}if(a6 instanceof A.nv){if(!q){s=a6.b +q=!0}if(q)r=s +else{s=a6.b +r=s +q=!0}if(m)p=o +else{o=a6.a +p=o +m=!0}if(t.eX.b(p)){if(m)n=o +else{o=a6.a +n=o +m=!0}if(t.Xb.b(a7.b1())){l=a7.b1() +p=!0}else{l=a4 +p=!1}}else{l=a4 +n=l +p=!1}}else{l=a4 +n=l +r=n +p=!1}if(p){p=r==null?"":r +p=A.O(p,a4,a4,a4,a4,A.r(a9).p3.as,a4,a4) +k=A.a([],t.p) +j=n==null +i=l==null +h=!i +g=A.h(r)+"-" +f=t.O +e=0 +while(!0){d=i?a4:J.aZ(l) +if(d!=null)c=d===0?1/d<0:d<0 +else c=!0 +if(c)d=0 +else d.toString +if(!(e>") +i=A.dd(A.a([j,A.dD(new A.Ju(new A.b8(B.cU,new A.Bp(A.aa(new A.ad(a1,new A.aBG(a5,a9),p),!0,p.h("ax.E")),n,i,new A.aBH(a3,a6),B.UM,!0,a4,t.CB),a4),a4),1)],t.p),B.w,B.D,B.aa) +p=i +break $label0$0}a5.b=null +if(a6 instanceof A.mf){if(!q){s=a6.b +q=!0}r=q?s:a6.b +if(m)p=o +else{o=a6.gd8(a6) +p=o +m=!0}if(t.uS.b(p)){a5.b=m?o:a6.gd8(a6) +p=!0}else p=!1}else{r=a4 +p=!1}if(p){p=r==null?"":r +p=A.O(p,a4,a4,a4,a4,A.r(a9).p3.as,a4,a4) +k=A.a([],t.p) +j=A.h(r)+"-" +i=t.O +e=0 +while(!0){h=a5.b +h=h==null?a4:J.aZ(h) +if(h!=null)g=h===0?1/h<0:h<0 +else g=!0 +if(g)h=0 +else h.toString +if(!(e>>16&255,s>>>8&255,s&255),r,r) +q=s}return new A.b8(B.S9,new A.Y8(q,o,this.e,p,r),r)}} +A.jR.prototype={ +Nj(a,b){return this.aP0(a,b)}, +aP0(a,b){var s=0,r=A.y(t.z),q=this,p,o,n,m +var $async$Nj=A.u(function(c,d){if(c===1)return A.v(d,r) +while(true)switch(s){case 0:n=b.gHb() +m=n==null?null:n.gjC() +n=q.a +n===$&&A.b() +p=n.aa(0,$.A9(),t.v4) +o=q.b +o===$&&A.b() +s=2 +return A.t(p.Nk(A.ap(["position",a,"value",t.j.b(m)?B.at.wX(m,null):m],t.N,t.z),o),$async$Nj) +case 2:p=A.asZ(o) +n=n.e +n===$&&A.b() +n.kd(p) +return A.w(null,r)}}) +return A.x($async$Nj,r)}} +A.Xv.prototype={ +$1(a){return A.asZ(a)}, +fP(a){return A.asZ(a.fr)}, +gfi(){return null}} +A.HZ.prototype={ +bJ(a){var s=null,r=t.B +return new A.ady(s,!1,new A.cd(A.aT(0,s,!1,t.I4),t.hZ),s,s,s,s,this,A.a([],t.VV),A.a([],r),A.a([],t._),A.a([],r),A.cx(s,s,s,t.M,t.K))}, +l(a,b){if(b==null)return!1 +return b instanceof A.HZ&&b.fr===this.fr}, +gv(a){return A.bui(A.bbn(A.bbn(0,A.cU(A.o(this))),B.c.gv(this.fr)))}} +A.at_.prototype={ +$1(a){return t.nw.a(a).aa(0,$.A9(),t.v4).GS(this.a)}, +$S:777} +A.I_.prototype={} +A.ady.prototype={} +A.acU.prototype={} +A.a9g.prototype={ +$1(a){return A.bjM(a)}, +fP(a){return A.bjM(a.fx)}, +gfi(){return null}} +A.NW.prototype={ +rh(a){var s=a.a +s===$&&A.b() +return s.M(A.asZ(this.fx),t.AC)}, +bJ(a){var s=null,r=t.B +return new A.alX(s,!1,new A.cd(A.aT(0,s,!1,t.DJ),t.h6),this,A.a([],t.VV),A.a([],r),A.a([],t._),A.a([],r),A.cx(s,s,s,t.M,t.K))}, +l(a,b){if(b==null)return!1 +return b instanceof A.NW&&b.fx===this.fx}, +gv(a){return A.bui(A.bbn(A.bbn(0,A.cU(A.o(this))),B.c.gv(this.fx)))}} +A.aV3.prototype={ +$0(){var s=new A.jR() +s.b=this.a +return s}, +$S:778} +A.aV4.prototype={} +A.alX.prototype={} +A.ao7.prototype={} +A.api.prototype={} +A.a9h.prototype={ +aJ(a,b){var s=null,r=this.f,q=b.M(A.a9j(r),t.uR),p=A.bjM(r),o=b.M(p,t.AC),n=A.bW(o) +r=A.bW(q) +r=r==null?s:J.bC9(r) +if(r==null)r="" +return A.e_(A.eh(s,s,s,s,s,s,A.O(r,s,s,s,s,A.r(a).p3.r,s,s)),s,A.ih(o,a,new A.aV7(n,b,p),!1,s,!1,s),s,s,s,!0,!1,!1,s,s)}} +A.aV7.prototype={ +$1(a){var s=this.a,r=s==null?null:J.aZ(s) +if(r==null)r=0 +return A.qn(new A.aV6(s,this.b,this.c),r,null,null)}, +$S:779} +A.aV6.prototype={ +$2(a,b){var s=this.a,r=s==null?null:J.b3(s,b) +if(r==null)return B.a_ +s=r.gHb() +s=s==null?null:s.gla(s) +return new A.a9i(r,new A.aV5(this.b,this.c,b),new A.bP("Source-preference-"+A.h(s),t.O))}, +$S:33} +A.aV5.prototype={ +$1(a){this.a.aa(0,this.b.gcr(),t.Sb).Nj(this.c,a)}, +$S:780} +A.a9i.prototype={ +abv(a,b){var s +this.d.$1(this.c.a80(a)) +if(b!=null){s=A.bd(b).c +s===$&&A.b() +s.e7(null)}}, +VX(a,b){return this.abv(a,b,t.ZR)}, +abu(a){return this.abv(a,null,t.ZR)}, +A(a8){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2=this,a3=null,a4={},a5=a2.c.gHb(),a6=A.dr("#0#12",new A.aVg(a5)),a7=A.dr("#0#13",new A.aVh(a5)) +$label0$0:{if(a5 instanceof A.p8){s=a5.a +r=a5.b +q=a5.c +p=a5.d +o=a5.e +n=o +m=p +l=!0 +k=!0 +j=q +i=!0 +h=r +g=!0 +f=s +e=!0 +d=!0}else{n=a3 +m=n +j=m +h=j +f=h +o=f +p=o +q=p +r=q +s=r +e=!1 +d=!1 +g=!1 +i=!1 +l=!1 +k=!1}if(k){k=f==null?"":f +c=A.O(h==null?"":h,a3,a3,a3,a3,a3,a3,a3) +if(!(j==null||j.length===0)){j.toString +b=A.O(j,a3,a3,a3,a3,a3,a3,a3)}else b=a3 +a=m===!0 +a=n==null?a:n +a=A.AI(a3,B.de,a3,new A.bP(k,t.O),new A.aVi(a2,a5),b,c,!1,a) +k=a +break $label0$0}if(a5 instanceof A.pf){if(!e){s=a5.a +e=!0}if(e)f=s +else{s=a5.a +f=s +e=!0}if(!d){r=a5.b +d=!0}if(d)h=r +else{r=a5.b +h=r +d=!0}if(!g){q=a5.c +g=!0}if(g)j=q +else{q=a5.c +j=q +g=!0}if(!i){p=a5.d +i=!0}if(i)m=p +else{p=a5.d +m=p +i=!0}if(!l){o=a5.e +l=!0}if(l)n=o +else{o=a5.e +n=o +l=!0}k=!0}else{n=a3 +m=n +j=m +h=j +f=h +k=!1}if(k){k=f==null?"":f +c=A.O(h==null?"":h,a3,a3,a3,a3,a3,a3,a3) +if(!(j==null||j.length===0)){j.toString +b=A.O(j,a3,a3,a3,a3,a3,a3,a3)}else b=a3 +a=m===!0 +a=n==null?a:n +a=A.z2(B.de,new A.bP(k,t.O),new A.aVj(a2,a5),a3,b,c,a) +k=a +break $label0$0}a4.a=a4.b=a4.c=a4.d=null +if(a5 instanceof A.pb){if(!e){s=a5.a +e=!0}if(e)f=s +else{s=a5.a +f=s +e=!0}if(!d){r=a5.b +d=!0}if(d)h=r +else{r=a5.b +h=r +d=!0}a4.d=h +if(i)k=p +else{p=a5.d +k=p +i=!0}c=t.v +if(c.b(k)){if(i)m=p +else{p=a5.d +m=p +i=!0}a4.c=m +if(l)k=o +else{o=a5.e +k=o +l=!0}if(c.b(k)){if(l)n=o +else{o=a5.e +n=o +l=!0}a4.b=n +a0=a5.gdW(a5) +if(t.YH.b(a0)){a4.a=a0 +k=!0}else k=!1 +c=n +a1=!0}else{c=a3 +a0=c +a1=!1 +k=!1}}else{c=a3 +a0=c +a1=!1 +k=!1}b=c +c=h}else{b=a3 +c=b +f=c +a0=f +a1=!1 +k=!1}if(k){k=f==null?"":f +c=A.O(c==null?"":c,a3,a3,a3,a3,a3,a3,a3) +if(!(b==null||b.length===0)){b.toString +b=A.O(b,a3,a3,a3,a3,a3,a3,a3)}else b=a3 +c=A.bH(!1,a3,a3,a3,!0,a3,a3,!1,new A.bP(k,t.O),a3,a3,a3,new A.aVk(a4,a2,a8,a5),!1,a3,a3,a3,b,a3,c,a3,a3) +k=c +break $label0$0}a4.e=a4.f=a4.r=a4.w=null +if(a5 instanceof A.pc){if(!e){s=a5.a +e=!0}if(e)f=s +else{s=a5.a +f=s +e=!0}if(!d){r=a5.b +d=!0}if(d)h=r +else{r=a5.b +h=r +d=!0}a4.w=h +if(!g){q=a5.c +g=!0}if(g)j=q +else{q=a5.c +j=q +g=!0}if(i)k=p +else{p=a5.gKN(a5) +k=p +i=!0}c=t.Xb +if(c.b(k)){if(i)m=p +else{p=a5.gKN(a5) +m=p +i=!0}a4.r=m +if(l)k=o +else{o=a5.gjC() +k=o +l=!0}if(c.b(k)){if(l)n=o +else{o=a5.gjC() +n=o +l=!0}a4.f=n +if(a1)k=a0 +else{a0=a5.gdW(a5) +k=a0 +a1=!0}if(t.YH.b(k)){a4.e=a1?a0:a5.gdW(a5) +k=!0}else k=!1}else k=!1}else k=!1 +c=h}else{c=a3 +j=c +f=j +k=!1}if(k){k=f==null?"":f +c=A.O(c==null?"":c,a3,a3,a3,a3,a3,a3,a3) +if(!(j==null||j.length===0)){j.toString +b=A.O(j,a3,a3,a3,a3,a3,a3,a3)}else b=a3 +c=A.bH(!1,a3,a3,a3,!0,a3,a3,!1,new A.bP(k,t.O),a3,a3,a3,new A.aVl(a4,a2,a8,a5),!1,a3,a3,a3,b,a3,c,a3,a3) +k=c +break $label0$0}a4.x=a4.y=a4.z=a4.Q=a4.as=a4.at=null +if(a5 instanceof A.p9){if(!e){s=a5.a +e=!0}f=e?s:a5.a +if(!d){r=a5.b +d=!0}h=d?r:a5.b +a4.at=h +if(!g){q=a5.c +g=!0}j=g?q:a5.c +a4.as=j +if(i)k=p +else{p=a5.d +k=p +i=!0}c=t.v +if(c.b(k)){a4.Q=i?p:a5.d +if(l)k=o +else{o=a5.e +k=o +l=!0}if(c.b(k)){a4.z=l?o:a5.e +if(c.b(a6.b1())){a4.y=a6.b1() +if(c.b(a7.b1())){a4.x=a7.b1() +k=!0}else k=!1}else k=!1}else k=!1}else k=!1 +c=j +b=c +c=h}else{b=a3 +c=b +f=c +k=!1}if(k){k=f==null?"":f +c=A.O(c==null?"":c,a3,a3,a3,a3,a3,a3,a3) +if(!(b==null||b.length===0)){b.toString +b=A.O(b,a3,a3,a3,a3,a3,a3,a3)}else b=a3 +c=A.bH(!1,a3,a3,a3,!0,a3,a3,!1,new A.bP(k,t.O),a3,a3,a3,new A.aVm(a4,a2,a8,a5),!1,a3,a3,a3,b,a3,c,a3,a3) +k=c +break $label0$0}if(a5==null||a5 instanceof A.np){k=B.a_ +break $label0$0}k=a3}return k}} +A.aVi.prototype={ +$1(a){return this.a.abu(this.b.t2(a))}, +$S:35} +A.aVj.prototype={ +$1(a){return this.a.abu(this.b.t2(a))}, +$S:7} +A.aVk.prototype={ +$0(){var s=this +return A.fk(new A.aVf(s.a,s.b,s.d),s.c,t.z)}, +$S:0} +A.aVf.prototype={ +$1(a){var s,r,q=this.a,p=q.d +if(p==null)p="" +s=q.a +s=s==null?null:J.fJ(J.jq(s)) +if(s==null)s=A.a([],t.s) +r=q.b +if(r==null)r=q.c +if(r==null)r="" +return A.uq(null,new A.aVb(q),new A.aVc(this.b,this.c,a),s,p,r,t.N)}, +$S:781} +A.aVc.prototype={ +$1(a){return this.a.VX(this.b.t2(a),this.c)}, +$S:25} +A.aVb.prototype={ +$1(a){var s=this.a.a +s=s==null?null:J.b3(s,a) +return s==null?a:s}, +$S:19} +A.aVl.prototype={ +$0(){var s=this +return A.fk(new A.aVe(s.a,s.b,s.d),s.c,t.z)}, +$S:0} +A.aVe.prototype={ +$1(a){var s,r,q=this.a,p=q.w +if(p==null)p="" +s=q.e +s=s==null?null:J.fJ(J.jq(s)) +if(s==null)s=A.a([],t.s) +r=q.f +if(r==null)r=q.r +if(r==null)r=A.a([],t.s) +return new A.xM(p,s,r,new A.aV9(this.b,this.c,a),new A.aVa(q),null,t.y_)}, +$S:782} +A.aV9.prototype={ +$1(a){return this.a.VX(this.b.t2(a),this.c)}, +$S:783} +A.aVa.prototype={ +$1(a){var s=this.a.e +s=s==null?null:J.b3(s,a) +return s==null?a:s}, +$S:19} +A.aVg.prototype={ +$0(){return t.c0.a(this.a).r}, +$S:115} +A.aVh.prototype={ +$0(){return t.c0.a(this.a).w}, +$S:115} +A.aVm.prototype={ +$0(){var s=this +return A.fk(new A.aVd(s.a,s.b,s.d),s.c,t.z)}, +$S:0} +A.aVd.prototype={ +$1(a){var s,r,q=this.a,p=q.y +if(p==null)p=q.at +if(p==null)p="" +s=q.x +if(s==null)s=q.as +if(s==null)s="" +r=q.z +q=r==null?q.Q:r +return new A.EK(p,s,q,new A.aV8(this.b,this.c,a),null)}, +$S:784} +A.aV8.prototype={ +$1(a){return this.a.VX(this.b.t2(a),this.c)}, +$S:25} +A.t7.prototype={ +GK(a){return this.aem(a)}, +aem(a){var s=0,r=A.y(t.IL),q,p=this +var $async$GK=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:s=3 +return A.t(p.a.ob(0,"/category",a,new A.avg(),t.pU,t.oo),$async$GK) +case 3:q=c.a +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$GK,r)}, +L_(a){return this.aHj(a)}, +aHj(a){var s=0,r=A.y(t.H),q,p=this,o,n +var $async$L_=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:s=a.gaK(a)!=null?3:5 +break +case 3:o=a.gaK(a) +o.toString +n=t.z +s=6 +return A.t(p.a.MB("/category/"+o,null,A.BN(A.aIs(a.b7(),t.N,n)),n,n),$async$L_) +case 6:n=c +o=n +s=4 +break +case 5:o=null +case 4:q=o +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$L_,r)}, +U6(a){return this.aGZ(a)}, +aGZ(a){var s=0,r=A.y(t.H),q,p=this,o,n +var $async$U6=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:if(a.gaK(a)!=null){o=a.gaK(a) +o.toString +n=t.z +n=p.a.aGU(0,"/category/"+o,null,n,n) +o=n}else o=null +q=o +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$U6,r)}, +GQ(a,b){return this.aeC(a,b)}, +aeC(a,b){var s=0,r=A.y(t.aQ),q,p=this +var $async$GQ=A.u(function(c,d){if(c===1)return A.v(d,r) +while(true)switch(s){case 0:s=3 +return A.t(p.a.Xq(0,"/category/"+b,new A.avh(),t.YN,t.nn),$async$GQ) +case 3:q=d.a +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$GQ,r)}} +A.avg.prototype={ +$1(a){var s=null +return t.a.b(a)?A.btd(a):new A.lr(s,s,s,s)}, +$S:283} +A.avh.prototype={ +$1(a){var s=null +return t.a.b(a)?A.v1(a):A.bkd(s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s)}, +$S:73} +A.aQ.prototype={} +A.b_w.prototype={ +gaK(a){return A.q($.Hl())}, +gcV(a){return A.q($.Hl())}, +gWi(a){return A.q($.Hl())}, +gjE(){return A.q($.Hl())}, +b7(){return A.q($.Hl())}, +gbL(){return A.q($.Hl())}, +a84(a,b){return this.gbL().$2$defaultCategory$name(a,b)}} +A.Ff.prototype={ +$4$defaultCategory$id$name$order(a,b,c,d){var s=this.a,r=B.d===b?s.a:A.bv(b),q=B.d===c?s.b:A.ae(c),p=B.d===d?s.c:A.bv(d) +return this.b.$1(this.$ti.h("Ff.1").a(s.aGt(B.d===a?s.d:A.cG(a),r,q,p)))}, +$0(){return this.$4$defaultCategory$id$name$order(B.d,B.d,B.d,B.d)}, +$1$name(a){return this.$4$defaultCategory$id$name$order(B.d,B.d,a,B.d)}, +$2$defaultCategory$name(a,b){return this.$4$defaultCategory$id$name$order(a,B.d,b,B.d)}} +A.UB.prototype={ +$4$defaultCategory$id$name$order(a,b,c,d){var s=this,r=B.d===b?s.a.a:A.bv(b),q=B.d===c?s.a.b:A.ae(c),p=B.d===d?s.a.c:A.bv(d),o=B.d===a?s.a.d:A.cG(a) +return s.b.$1(new A.lr(r,q,p,o))}, +$0(){return this.$4$defaultCategory$id$name$order(B.d,B.d,B.d,B.d)}, +$1$name(a){return this.$4$defaultCategory$id$name$order(B.d,B.d,a,B.d)}, +$2$defaultCategory$name(a,b){return this.$4$defaultCategory$id$name$order(a,B.d,b,B.d)}} +A.lr.prototype={ +j(a){var s=this +return"Category(id: "+A.h(s.a)+", name: "+A.h(s.b)+", order: "+A.h(s.c)+", defaultCategory: "+A.h(s.d)+")"}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r!==b)if(J.a1(b)===A.o(r))if(b instanceof A.lr){s=b.a==r.a +if(s||s){s=b.b==r.b +if(s||s){s=b.c==r.c +if(s||s){s=b.d==r.d +s=s||s}else s=!1}else s=!1}else s=!1}else s=!1 +else s=!1 +else s=!0 +return s}, +gv(a){var s=this +return A.X(A.o(s),s.a,s.b,s.c,s.d,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +gbL(){return new A.UB(this,B.N3,t.iE)}, +b7(){var s=this +return A.ap(["id",s.a,"name",s.b,"order",s.c,"default",s.d],t.N,t.z)}, +$iaQ:1, +a84(a,b){return this.gbL().$2$defaultCategory$name(a,b)}, +aGt(a,b,c,d){return this.gbL().$4$defaultCategory$id$name$order(a,b,c,d)}, +gaK(a){return this.a}, +gcV(a){return this.b}, +gWi(a){return this.c}, +gjE(){return this.d}} +A.adT.prototype={} +A.w8.prototype={ +aP(){var s=0,r=A.y(t.IL),q,p=this,o +var $async$aP=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:o=p.a +o===$&&A.b() +q=p.xo(o) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$aP,r)}, +xo(a){return this.aL4(a)}, +aL4(a){var s=0,r=A.y(t.IL),q,p,o +var $async$xo=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:o=new A.hP(new A.aD(new A.a8($.a9,t.Ic),t.L4)) +a.kj(o.gdP(o)) +s=3 +return A.t(a.M($.Wj(),t.ad).GK(o),$async$xo) +case 3:p=c +a.ic() +q=p +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$xo,r)}, +KP(a){return this.aGY(a)}, +aGY(a){var s=0,r=A.y(t.H),q=this,p +var $async$KP=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:s=2 +return A.t(A.dw(new A.auL(q,a),t.IL),$async$KP) +case 2:p=c +q.got().sd8(0,p) +return A.w(null,r)}}) +return A.x($async$KP,r)}, +EE(a){return this.aHi(a)}, +aHi(a){var s=0,r=A.y(t.H),q=this,p +var $async$EE=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:p=q.a +p===$&&A.b() +s=2 +return A.t(A.dw(new A.auM(q,a,p.aa(0,$.Wj(),t.ad)),t.IL),$async$EE) +case 2:p=c +q.got().sd8(0,p) +return A.w(null,r)}}) +return A.x($async$EE,r)}, +Ga(a,b){return this.aNG(a,b)}, +aNG(a,b){var s=0,r=A.y(t.H),q=this,p +var $async$Ga=A.u(function(c,d){if(c===1)return A.v(d,r) +while(true)switch(s){case 0:p=q.a +p===$&&A.b() +s=2 +return A.t(A.dw(new A.auN(q,p.aa(0,$.Wj(),t.ad),a,b),t.IL),$async$Ga) +case 2:p=d +q.got().sd8(0,p) +return A.w(null,r)}}) +return A.x($async$Ga,r)}} +A.auL.prototype={ +$0(){var s=0,r=A.y(t.IL),q,p=this,o,n +var $async$$0=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:o=p.a +n=o.a +n===$&&A.b() +s=3 +return A.t(n.aa(0,$.Wj(),t.ad).U6(p.b),$async$$0) +case 3:q=o.xo(n) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$$0,r)}, +$S:103} +A.auM.prototype={ +$0(){var s=0,r=A.y(t.IL),q,p=this,o,n,m +var $async$$0=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:n=p.b +m=p.c +s=n.gaK(n)==null?3:5 +break +case 3:o=t.z +s=6 +return A.t(m.a.Wr("/category",null,A.BN(A.aIs(n.b7(),t.N,o)),o,o),$async$$0) +case 6:s=4 +break +case 5:s=7 +return A.t(m.L_(n),$async$$0) +case 7:case 4:n=p.a +m=n.a +m===$&&A.b() +q=n.xo(m) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$$0,r)}, +$S:103} +A.auN.prototype={ +$0(){var s=0,r=A.y(t.IL),q,p=this,o,n +var $async$$0=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:n=t.z +s=3 +return A.t(p.b.a.aME("/category/reorder",A.BN(A.ap(["from",p.c,"to",p.d],t.N,n)),n,n),$async$$0) +case 3:n=p.a +o=n.a +o===$&&A.b() +q=n.xo(o) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$$0,r)}, +$S:103} +A.beF.prototype={ +$1(a){return A.Of(a.gcV(a),this.a)}, +$S:787} +A.XZ.prototype={ +fP(a){return A.bok(a.dy)}, +gfi(){return null}} +A.Il.prototype={ +bJ(a){var s=null,r=t.B +return new A.adQ(s,!1,this,A.a([],t.SW),A.a([],r),A.a([],t._),A.a([],r),A.cx(s,s,s,t.M,t.K))}, +l(a,b){if(b==null)return!1 +return b instanceof A.Il&&b.dy===this.dy}, +gv(a){var s=A.bud(A.bud(0,A.cU(A.o(this))),B.c.gv(this.dy)) +s=s+((s&67108863)<<3)&536870911 +s^=s>>>11 +return s+((s&16383)<<15)&536870911}} +A.auR.prototype={ +$1(a){return A.bQY(t._v.a(a),this.a)}, +$S:788} +A.Im.prototype={} +A.adQ.prototype={} +A.ao8.prototype={} +A.a0t.prototype={ +aJ(a,b){var s,r=null,q=b.M($.k9(),t.Pa),p=A.bW(q) +$.b7.bm(new A.dz(new A.aza(q,b,a),[p]),t.H) +p=A.eh(r,r,r,r,r,r,A.O(A.A(a,B.h,t.J).gj2(),r,r,r,r,r,r,r)) +s=A.bD0(q,t.IL) +s=(s==null?r:s.d)!=null?r:B.OZ +return A.e_(p,r,A.ih(q,a,new A.azb(a,b),!1,new A.azc(b),!1,r),r,r,r,!0,!1,!1,s,r)}} +A.aza.prototype={ +$0(){A.hq(this.a,this.b.aa(0,A.eA(this.c),t.g),!0,t.IL) +return}, +$S:5} +A.azb.prototype={ +$1(a){var s,r,q=null,p=a==null,o=!p +if(!(!o||J.ce(a))){if(!(!o||J.ce(a))){a.toString +o=J.aZ(a)===1}else o=!1 +if(o){if(p)p=q +else{p=A.xi(a) +p=p==null?q:J.fv(p)}p=p===0}else p=!1}else p=!0 +o=this.b +if(p){p=this.a +s=t.J +r=A.A(p,B.h,s).gkh() +s=A.A(p,B.h,s) +return A.hU(A.eM(!1,A.O(s.gfd(s),q,q,q,q,q,q,q),B.l,q,q,q,q,q,new A.az7(o),q,q),r)}else{a.toString +p=J.cn(a) +return A.qJ(A.qn(new A.az8(a,J.fv(p.gN(a))===0),p.gt(a),q,q),new A.az9(o))}}, +$S:285} +A.az7.prototype={ +$0(){return this.a.jN(0,$.k9().gqM(),t.H)}, +$S:0} +A.az8.prototype={ +$2(a,b){var s,r=this.a,q=J.ak(r),p=q.i(r,b) +if(p.gaK(p)===0)return B.a_ +else{s=p.gaK(p) +r=this.b?q.gt(r)-1:q.gt(r) +return new A.Y1(p,r,new A.bP(s,t.Am))}}, +$S:33} +A.az9.prototype={ +$0(){return this.a.jN(0,$.k9().gqM(),t.uz)}, +$S:2} +A.azc.prototype={ +$0(){return this.a.jN(0,$.k9().gqM(),t.H)}, +$S:0} +A.XY.prototype={ +aJ(a,b){var s=null,r=$.b7.bm(new A.cW(!1,s,t.Kr),t.uh),q=r.a?s:new A.auQ(a,r,b),p=A.aS(a,s,t.l).w.a.a>=600&&!r.a,o=A.O(A.A(a,B.h,t.J).gjX(),s,s,s,s,s,s,s) +return A.a11(r.a?A.bjg(A.r(a).ok.f,s):B.tH,p,o,q)}} +A.auQ.prototype={ +$0(){A.fk(new A.auP(this.b,this.c),this.a,t.z)}, +$S:0} +A.auP.prototype={ +$1(a){return A.bpg(null,new A.auO(this.a,this.b))}, +$S:286} +A.auO.prototype={ +$1(a){return this.adM(a)}, +adM(a){var s=0,r=A.y(t.H),q=1,p,o=this,n,m,l +var $async$$1=A.u(function(b,c){if(b===1){p=c +s=q}while(true)switch(s){case 0:q=3 +n=o.a +n.sk(0,!0) +s=6 +return A.t(o.b.aa(0,$.k9().gcr(),t.PY).EE(a),$async$$1) +case 6:n.sk(0,!1) +q=1 +s=5 +break +case 3:q=2 +l=p +s=5 +break +case 2:s=1 +break +case 5:return A.w(null,r) +case 1:return A.v(p,r)}}) +return A.x($async$$1,r)}, +$S:791} +A.Y1.prototype={ +aJ(a,b){var s,r,q=this,p=null,o=q.f,n=o.gWi(o) +if(n==null||B.f.gd6(n))s=0 +else{n.toString +s=n}o=o.gcV(o) +o=A.bH(!1,p,p,p,!0,p,p,!1,p,B.n4,p,p,p,!1,p,p,p,p,p,A.O(o==null?"":o,p,p,p,p,p,p,p),p,p) +n=A.db(B.bD,p,B.tw,p,s<=1?p:new A.avm(b,s),p,p,p,p,B.eG) +r=t.p +return A.pI(new A.b8(B.bC,A.cO(A.a([o,A.dd(A.a([n,A.db(B.bD,p,B.tF,p,s>=q.r?p:new A.avn(b,s),p,p,p,p,B.eG),B.oU,A.db(B.bD,p,B.UV,p,new A.avo(q,a,b),p,p,p,p,B.eG),A.db(B.bD,p,B.UE,p,new A.avp(q,a,b),p,p,p,p,B.eG)],r),B.w,B.D,B.T),B.l5],r),B.w,B.D,B.T),p),p,p,B.j4,p)}} +A.avm.prototype={ +$0(){var s=this.b +return this.a.aa(0,$.k9().gcr(),t.PY).Ga(s,s-1)}, +$S:0} +A.avn.prototype={ +$0(){var s=this.b +return this.a.aa(0,$.k9().gcr(),t.PY).Ga(s,s+1)}, +$S:0} +A.avo.prototype={ +$0(){return A.fk(new A.avl(this.a,this.c),this.b,t.z)}, +$S:0} +A.avl.prototype={ +$1(a){return A.bpg(this.a.f,new A.avj(this.b))}, +$S:286} +A.avj.prototype={ +$1(a){return this.a.aa(0,$.k9().gcr(),t.PY).EE(a)}, +$S:792} +A.avp.prototype={ +$0(){return A.fk(new A.avk(this.a,this.c),this.b,t.z)}, +$S:0} +A.avk.prototype={ +$1(a){var s=null,r=t.J,q=A.O(A.A(a,B.h,r).gmA(),s,s,s,s,s,s,s),p=A.O(A.A(a,B.h,r).gmz(),s,s,s,s,s,s,s) +r=A.A(a,B.h,r) +return A.kP(A.a([B.dR,A.wD(!1,A.O(r.gks(r),s,s,s,s,s,s,s),B.l,s,s,s,s,s,new A.avi(this.a,this.b,a),s,s)],t.p),p,s,q)}, +$S:154} +A.avi.prototype={ +$0(){this.b.aa(0,$.k9().gcr(),t.PY).KP(this.a.f) +var s=A.bd(this.c).c +s===$&&A.b() +s.e7(null)}, +$S:0} +A.Bt.prototype={ +Hf(a,b){return this.agj(a,b)}, +agj(a,b){var s=0,r=A.y(t.H),q,p=this,o +var $async$Hf=A.u(function(c,d){if(c===1)return A.v(d,r) +while(true)switch(s){case 0:o=p.f +q=p.r.$1((o==null?new A.lr(null,null,null,null):o).a84(b,a)) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$Hf,r)}, +aJ(a,b){var s,r,q,p,o,n=null,m=this.f,l=m==null,k=l?n:m.gcV(m) +k=$.b7.bm(new A.mr(k,n),t.QX) +m=l?n:m.gjE() +m=$.b7.bm(new A.cW(m===!0,n,t.Kr),t.uh) +s=t.J +r=A.O(l?A.A(a,B.h,s).gjX():A.A(a,B.h,s).gj2(),n,n,n,n,n,n,n) +q=A.tQ(n,B.en,n,n,n,n,n,n,!0,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,l?A.A(a,B.h,s).gjX():A.A(a,B.h,s).gj2(),n,n,n,n,!1,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n) +l=k.a.a +q=A.EJ(!0,B.bU,!0,n,!0,B.E,n,A.W6(),k,n,n,n,n,2,q,B.C,!0,n,!0,n,!1,n,n,n,n,n,n,n,1,n,n,!1,"\u2022",n,n,n,l.length!==0?new A.az4(this,k,m,a):n,n,n,!1,n,!0,n,B.dx,n,n,B.c3,B.bK,n,n,n,n,n,n,B.b3,n,B.dX,n,n,n,n) +p=m.a +o=t.p +p=A.cO(A.a([q,A.AI(n,B.f8,!0,n,new A.az5(m),n,A.O(A.A(a,B.h,s).gjE(),n,n,n,n,n,n,n),!1,p)],o),B.w,B.D,B.aa) +s=A.A(a,B.h,s) +return A.kP(A.a([B.dR,A.wD(!1,A.O(s.giq(s),n,n,n,n,n,n,n),B.l,n,n,n,n,n,new A.az6(this,k,b,a,m),n,n)],o),p,n,r)}} +A.az4.prototype={ +$1(a){var s,r=this +r.a.Hf(r.b.a.a,r.c.a) +s=A.bd(r.d).c +s===$&&A.b() +s.e7(null)}, +$S:25} +A.az5.prototype={ +$1(a){if(a!=null)this.a.sk(0,a)}, +$S:35} +A.az6.prototype={ +$0(){var s=this,r=s.b.a.a +if(r.length===0){r=s.d +J.Ws(s.c.aa(0,A.eA(r),t.g),A.A(r,B.h,t.J).gmF()) +return}s.a.Hf(r,s.e.a) +r=A.bd(s.d).c +r===$&&A.b() +r.e7(null)}, +$S:0} +A.w9.prototype={ +aJ(a,b){var s=b.M(A.bhR(this.f),t.ng),r=b.M($.bha(),t.CE),q=new A.ave(this,b) +$.b7.bm(new A.dz(new A.avc(s,q),[]),t.H) +return A.ih(s,a,new A.avd(this,a,q,r,b),!1,q,!1,null)}} +A.ave.prototype={ +$0(){var s=this.b,r=A.Io(this.a.f) +if(s.f==null)A.q(A.R(u.w)) +s.glV().kd(r) +return null}, +$S:0} +A.avc.prototype={ +$0(){if(!this.a.gjI())this.b.$0() +return}, +$S:5} +A.avd.prototype={ +$1(a){var s,r,q,p=this,o=null,n=a==null +if(n||J.ce(a)){n=p.b +s=t.J +r=A.A(n,B.h,s).gnj() +s=A.A(n,B.h,s) +return A.hU(A.eM(!1,A.O(s.gfd(s),o,o,o,o,o,o,o),B.l,o,o,o,o,o,p.c,o,o),r)}q=p.d +$label0$0:{if(B.j1===q||q==null){n=n?o:J.aZ(a) +if(n==null||B.f.gd6(n))n=0 +else n.toString +n=A.qn(new A.av8(p.a,a,p.c),n,96,o) +break $label0$0}if(B.db===q){s=A.bwZ(p.e.M($.aqM(),t.PM)) +n=n?o:J.aZ(a) +if(n==null||B.f.gd6(n))n=0 +else n.toString +r=!0 +r=r?B.dp:o +n=new A.a1z(s,new A.kx(new A.av9(p.a,a,p.c),n,!0,!0,!0,A.rN(),o),o,B.R,!1,o,o,r,o,!1,o,0,o,n,B.C,B.ex,o,B.E,o) +break $label0$0}if(B.mu===q){n=n?o:J.aZ(a) +if(n==null||B.f.gd6(n))n=0 +else n.toString +n=A.qn(new A.ava(p.a,a,p.c),n,176,o) +break $label0$0}n=o}return A.qJ(n,new A.avb(p.c))}, +$S:793} +A.av8.prototype={ +$2(a,b){var s=this.b +s.toString +return A.bj8(J.b3(s,b),new A.av6(s,b,a,this.c),new A.av7(this.a,s,b,a),!0)}, +$S:794} +A.av7.prototype={ +$0(){var s=this,r=s.b,q=s.c,p=J.ak(r) +if(J.fv(p.i(r,q))!=null){r=J.fv(p.i(r,q)) +r.toString +r=A.py(new A.j3(r,s.a.f)) +A.bd(s.d).dv(r,null,t.z)}}, +$S:0} +A.av6.prototype={ +$0(){var s=0,r=A.y(t.H),q=this,p,o +var $async$$0=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:p=q.a +o=q.b +s=J.fv(J.b3(p,o))!=null?2:3 +break +case 2:s=4 +return A.t(A.fk(new A.av1(p,o),q.c,t.z),$async$$0) +case 4:q.d.$0() +case 3:return A.w(null,r)}}) +return A.x($async$$0,r)}, +$S:2} +A.av1.prototype={ +$1(a){var s=this.a,r=this.b,q=J.ak(s),p=J.fv(q.i(s,r)) +p.toString +return A.azd(p,J.bhu(q.i(s,r)))}, +$S:119} +A.av9.prototype={ +$2(a,b){var s=this.b +s.toString +return A.bj7(J.b3(s,b),new A.av4(s,b,a,this.c),new A.av5(this.a,s,b,a),!0,!0,!1,!0)}, +$S:796} +A.av4.prototype={ +$0(){var s=0,r=A.y(t.H),q=this,p,o +var $async$$0=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:p=q.a +o=q.b +s=J.fv(J.b3(p,o))!=null?2:3 +break +case 2:s=4 +return A.t(A.fk(new A.av0(p,o),q.c,t.z),$async$$0) +case 4:q.d.$0() +case 3:return A.w(null,r)}}) +return A.x($async$$0,r)}, +$S:2} +A.av0.prototype={ +$1(a){var s=this.a,r=this.b,q=J.ak(s),p=J.fv(q.i(s,r)) +p.toString +return A.azd(p,J.bhu(q.i(s,r)))}, +$S:119} +A.av5.prototype={ +$0(){var s=this,r=s.b,q=s.c,p=J.ak(r) +if(J.fv(p.i(r,q))!=null){r=J.fv(p.i(r,q)) +r.toString +r=A.py(new A.j3(r,s.a.f)) +A.bd(s.d).dv(r,null,t.z)}}, +$S:0} +A.ava.prototype={ +$2(a,b){var s=this.b +s.toString +return A.bqB(J.b3(s,b),new A.av2(s,b,a,this.c),new A.av3(this.a,s,b,a),null,!0)}, +$S:797} +A.av3.prototype={ +$0(){var s=this,r=s.b,q=s.c,p=J.ak(r) +if(J.fv(p.i(r,q))!=null){r=J.fv(p.i(r,q)) +r.toString +r=A.py(new A.j3(r,s.a.f)) +A.bd(s.d).dv(r,null,t.z)}}, +$S:0} +A.av2.prototype={ +$0(){var s=0,r=A.y(t.H),q=this,p,o +var $async$$0=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:p=q.a +o=q.b +s=J.fv(J.b3(p,o))!=null?2:3 +break +case 2:s=4 +return A.t(A.fk(new A.av_(p,o),q.c,t.z),$async$$0) +case 4:q.d.$0() +case 3:return A.w(null,r)}}) +return A.x($async$$0,r)}, +$S:2} +A.av_.prototype={ +$1(a){var s=this.a,r=this.b,q=J.ak(s),p=J.fv(q.i(s,r)) +p.toString +return A.azd(p,J.bhu(q.i(s,r)))}, +$S:119} +A.avb.prototype={ +$0(){var s=0,r=A.y(t.H),q,p=this +var $async$$0=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:q=p.a.$0() +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$$0,r)}, +$S:2} +A.kb.prototype={ +aEH(a){var s,r,q,p,o,n,m,l=this.a +l===$&&A.b() +s=l.M(A.Io(a),t.ng) +r=l.M($.bhd(),t.v) +q=t.u +p=l.M($.bn8(),q) +o=l.M($.bn7(),q) +n=l.M($.bn6(),q) +m=l.M($.bhc(),t.aU) +if(m==null)m=B.nS +l=l.M($.bhb(),q) +return s.vg(0,new A.auX(new A.auV(p,o,n,r),new A.auW(l!==!1,m)),new A.auY(),new A.auZ())}} +A.auV.prototype={ +$1(a){var s,r=this,q=r.a +if(q!=null){s=a.gtP() +q=B.b0.yt(q,s==null?!1:s>0)}else q=!1 +if(q)return!1 +q=r.b +if(q!=null){s=a.gwU() +q=B.b0.yt(q,s==null?!1:s>0)}else q=!1 +if(q)return!1 +q=r.c +if(q!=null){s=a.gaL(a) +q=B.b0.yt(q,(s==null?null:s.d)==="COMPLETED")}else q=!1 +if(q)return!1 +if(!a.ac7(0,r.d))return!1 +return!0}, +$S:288} +A.auW.prototype={ +$2(a,b){var s,r,q=this.a?1:-1 +switch(this.b.a){case 0:s=a.ghk(a) +if(s==null)s="" +r=b.ghk(b) +s=B.c.bM(s,r==null?"":r) +break +case 2:s=a.gtP() +if(s==null||B.f.gd6(s))s=0 +else s.toString +r=b.gtP() +if(r==null||B.f.gd6(r))r=0 +else r.toString +r=B.f.bM(s,r) +s=r +break +case 1:s=a.gLD() +if(s==null||B.f.gd6(s))s=0 +else s.toString +r=b.gLD() +if(r==null||B.f.gd6(r))r=0 +else r.toString +r=B.f.bM(s,r) +s=r +break +case 3:s=b.gLV() +if(s==null||B.f.gd6(s))s=0 +else s.toString +r=a.gLV() +if(r==null||B.f.gd6(r))r=0 +else r.toString +r=B.f.bM(s,r) +s=r +break +default:s=null}return s*q}, +$S:799} +A.auX.prototype={ +$1(a){var s=A.bW(a) +if(s==null)s=null +else{s=J.lC(s,this.a) +s=A.aa(s,!0,s.$ti.h("z.E"))}if(s==null)s=null +else B.b.fz(s,this.b) +return A.X6(s,t.aQ)}, +$S:800} +A.auY.prototype={ +$1(a){return a}, +$S:801} +A.auZ.prototype={ +$1(a){return a}, +$S:802} +A.xv.prototype={ +aP(){return null}} +A.xr.prototype={ +aP(){var s=this.a +s===$&&A.b() +return this.fb(0,s,null,"mangaFilterDownloaded")}} +A.xs.prototype={ +aP(){var s=this.a +s===$&&A.b() +return this.fb(0,s,null,"mangaFilterUnread")}} +A.xq.prototype={ +aP(){var s=this.a +s===$&&A.b() +return this.fb(0,s,null,"mangaFilterCompleted")}} +A.xt.prototype={ +aP(){var s=this.a +s===$&&A.b() +return this.vc(0,s,B.wL,B.nS,"mangaSort")}} +A.xu.prototype={ +aP(){var s=this.a +s===$&&A.b() +return this.fb(0,s,!0,"mangaSortDirection")}} +A.xp.prototype={ +aP(){var s=this.a +s===$&&A.b() +return this.vc(0,s,B.zj,B.db,"libraryDisplayMode")}} +A.Y_.prototype={ +$1(a){return A.Io(a)}, +fP(a){return A.Io(a.fr)}, +gfi(){return null}} +A.In.prototype={ +bJ(a){var s=null,r=t.B +return new A.adR(s,!1,new A.cd(A.aT(0,s,!1,t.qP),t.EB),s,s,s,s,this,A.a([],t.LP),A.a([],r),A.a([],t._),A.a([],r),A.cx(s,s,s,t.M,t.K))}, +l(a,b){if(b==null)return!1 +return b instanceof A.In&&b.fr===this.fr}, +gv(a){return A.bug(A.bbm(A.bbm(0,A.cU(A.o(this))),B.f.gv(this.fr)))}} +A.auS.prototype={ +$1(a){return A.beG(t.rB.a(a),this.a)}, +$S:803} +A.Ip.prototype={} +A.adR.prototype={} +A.acO.prototype={} +A.Y0.prototype={ +$1$categoryId(a){return A.bhR(a)}, +fP(a){return A.bhR(a.fx)}, +gfi(){return null}} +A.Iq.prototype={ +rh(a){return a.aEH(this.fx)}, +bJ(a){var s=null,r=t.B +return new A.adS(s,!1,new A.cd(A.aT(0,s,!1,t.OZ),t.OD),this,A.a([],t.LP),A.a([],r),A.a([],t._),A.a([],r),A.cx(s,s,s,t.M,t.K))}, +l(a,b){if(b==null)return!1 +return b instanceof A.Iq&&b.fx===this.fx}, +gv(a){return A.bug(A.bbm(A.bbm(0,A.cU(A.o(this))),B.f.gv(this.fx)))}} +A.auT.prototype={ +$0(){var s=new A.kb() +s.b=this.a +return s}, +$S:804} +A.auU.prototype={} +A.adS.prototype={} +A.ahr.prototype={} +A.ahs.prototype={} +A.aht.prototype={} +A.ahu.prototype={} +A.ahw.prototype={} +A.ahv.prototype={} +A.ahx.prototype={} +A.ao9.prototype={} +A.aoa.prototype={} +A.a2G.prototype={ +aJ(a,b){var s=b.M(A.eA(a),t.g),r=b.M($.k9(),t.Pa),q=$.b7.bm(new A.cW(!1,null,t.Kr),t.uh),p=A.bW(r) +$.b7.bm(new A.dz(new A.aH2(r,s),[p]),t.H) +return A.ih(r,a,new A.aH3(this,a,b,q),!1,new A.aH4(b),!1,new A.aH5(a))}} +A.aH2.prototype={ +$0(){A.hq(this.a,this.b,!0,t.IL) +return}, +$S:5} +A.aH3.prototype={ +$1(a){var s,r,q,p,o,n,m,l,k,j,i,h=this,g=null +if(a==null||J.ce(a)){s=h.b +r=t.J +q=A.A(s,B.h,r).gkh() +r=A.A(s,B.h,r) +q=A.hU(A.eM(!1,A.O(r.gfd(r),g,g,g,g,g,g,g),B.l,g,g,g,g,g,new A.aGU(h.c),g,g),q) +s=q}else{a.toString +s=J.ak(a) +r=s.gt(a) +q=h.a.f +if(q==null||B.f.gd6(q))q=0 +else q.toString +q=Math.min(q,s.gt(a)-1) +p=h.b +o=t.J +n=A.O(A.A(p,B.h,o).ghz(),g,g,g,g,g,g,g) +m=s.gt(a) +l=h.d +m=A.bfJ(A.a([m>1,l.a],t.HZ)) +k=t.p +j=A.a([],k) +i=s.gt(a) +if(i>1){i=s.ig(a,new A.aGV(),t.xw) +j.push(A.aWX(g,B.u,!0,A.aa(i,!0,A.k(i).h("ax.E"))))}if(l.a){i=h.c +j.push(new A.e5(B.dn,g,g,new A.qP(g,i.aa(0,$.bhd(),t.v),new A.aGW(i),g,new A.aGX(l),!0,g),g))}j=A.cO(j,B.w,B.D,B.T) +n=A.eh(A.a([A.db(g,g,B.tz,g,new A.aGY(l),g,g,g,g,g),new A.ej(new A.aGZ(),g),new A.ej(new A.aH_(a),g)],k),g,new A.uo(j,m,g),!0,g,g,n) +m=s.gai(a) +if(m){s=A.A(p,B.h,o).gkh() +o=A.A(p,B.h,o) +s=A.hU(A.eM(!1,A.O(o.gfd(o),g,g,g,g,g,g,g),B.l,g,g,g,g,g,new A.aH0(h.c),g,g),s)}else{s=s.ig(a,new A.aH1(),t.y6) +s=new A.b8(B.bC,A.aWY(A.aa(s,!0,A.k(s).h("ax.E")),g,g),g)}r=A.bi9(A.e_(n,g,s,g,g,B.Rs,!1,!1,!1,g,g),q,r) +s=r}return s}, +$S:285} +A.aGU.prototype={ +$0(){return this.a.jN(0,$.k9(),t.H)}, +$S:0} +A.aGV.prototype={ +$1(a){var s=a.gcV(a) +return A.z4(s==null?"":s)}, +$S:805} +A.aGW.prototype={ +$1(a){J.eX(this.a.aa(0,$.bhd().gcr(),t.iG),a) +return a}, +$S:43} +A.aGX.prototype={ +$0(){this.a.sk(0,!1) +return!1}, +$S:0} +A.aGY.prototype={ +$0(){this.a.sk(0,!0) +return!0}, +$S:0} +A.aGZ.prototype={ +$1(a){var s=null +return A.db(s,s,B.tJ,s,new A.aGT(a),s,s,s,s,s)}, +$S:165} +A.aGT.prototype={ +$0(){var s=this.a +if(A.aS(s,null,t.l).w.a.a>=600)A.oO(s).FN() +else A.blY(new A.aGR(),B.E,s,new A.cE(B.q3,B.t),t.z)}, +$S:0} +A.aGR.prototype={ +$1(a){return B.u_}, +$S:807} +A.aH_.prototype={ +$1(a){return new A.uY(new A.aGS(this.a,a),!0,null)}, +$S:808} +A.aGS.prototype={ +$0(){var s=this.a,r=J.ak(s),q=r.gai(s) +return!q?r.i(s,A.bia(this.b).d):null}, +$S:809} +A.aH0.prototype={ +$0(){return this.a.jN(0,$.k9(),t.H)}, +$S:0} +A.aH1.prototype={ +$1(a){var s=a.gaK(a) +if(s==null||B.f.gd6(s))s=0 +else s.toString +return new A.w9(s,null)}, +$S:810} +A.aH4.prototype={ +$0(){return this.a.jN(0,$.k9(),t.H)}, +$S:0} +A.aH5.prototype={ +$1(a){var s=null +return A.e_(A.eh(s,s,s,!0,s,s,A.O(A.A(this.a,B.h,t.J).ghz(),s,s,s,s,s,s,s)),s,a,s,s,s,!0,!1,!1,s,s)}, +$S:135} +A.a2D.prototype={ +aJ(a,b){var s,r,q=null,p=b.M($.bha(),t.CE),o=t.J,n=A.bH(!1,q,!0,q,!0,q,q,!1,q,q,q,q,q,!1,q,q,q,q,q,A.O(A.A(a,B.h,o).gl0(),q,q,q,q,A.r(a).p3.as,q,q),q,q),m=p==null?B.db:p,l=A.bH(!1,q,!0,q,!0,q,q,!1,q,q,q,q,q,!1,q,q,q,q,q,A.O(A.A(a,B.h,o).gmb(),q,q,q,q,A.r(a).p3.as,q,q),q,q),k=A.A(a,B.h,o) +k=k.gfE(k) +s=$.bh5() +r=t.Pj +r=A.wn(J.ka(b.aa(0,s.gcr(),r)),s,k,!1,r) +o=A.A(a,B.h,o).gjS() +k=$.bho() +s=t.EI +return A.j2(A.a([n,new A.ye(B.zj,m,new A.aGN(b),new A.aGO(a),q,q,t.FA),l,r,A.wn(J.ka(b.aa(0,k.gcr(),s)),k,o,!1,s)],t.p),q,q,!1)}} +A.aGO.prototype={ +$1(a){return a.h5(this.a)}, +$S:280} +A.aGN.prototype={ +$1(a){J.eX(this.a.aa(0,$.bha().gcr(),t.XH),a) +return a}, +$S:811} +A.a2E.prototype={ +aJ(a,b){var s,r=t.J,q=A.A(a,B.h,r).gjS(),p=$.bn8(),o=t.Ah +o=A.wn(J.ka(b.aa(0,p.gcr(),o)),p,q,!0,o) +q=A.A(a,B.h,r) +q=q.gh8(q) +p=$.bn6() +s=t.tF +s=A.wn(J.ka(b.aa(0,p.gcr(),s)),p,q,!0,s) +r=A.A(a,B.h,r) +r=r.gfE(r) +q=$.bn7() +p=t.Ls +return A.j2(A.a([o,s,A.wn(J.ka(b.aa(0,q.gcr(),p)),q,r,!0,p)],t.p),null,null,!1)}} +A.Cs.prototype={ +A(a){var s,r,q,p=null,o=t.J,n=A.A(a,B.h,o) +n=A.z4(n.ghd(n)) +s=A.A(a,B.h,o) +s=A.z4(s.gkC(s)) +o=A.A(a,B.h,o) +r=t.p +o=A.aWX(p,p,!1,A.a([n,s,A.z4(o.gmB(o))],r)) +s=A.a([],r) +for(q=0;q<4;++q)s.push(new A.a2F(B.wL[q],p)) +return A.bi9(A.e_(o,p,A.aWY(A.a([B.VU,A.j2(s,p,p,!1),B.VT],r),p,p),p,p,p,!0,!1,!1,p,p),0,3)}} +A.a2F.prototype={ +aJ(a,b){var s=null,r=b.M($.bhc(),t.aU),q=b.M($.bhb(),t.u),p=this.e,o=A.O(p.h5(a),s,s,s,s,s,s,s) +return A.bsa(q!==!1,s,new A.aGP(b,q),new A.aGQ(this,b),p===r,o)}} +A.aGP.prototype={ +$1(a){var s=this.a.aa(0,$.bhb().gcr(),t.O7),r=this.b!==!0 +J.eX(s,r) +return r}, +$S:35} +A.aGQ.prototype={ +$0(){var s=this.a.e +J.eX(this.b.aa(0,$.bhc().gcr(),t.KZ),s) +return s}, +$S:0} +A.pS.prototype={ +u1(){var s=t.z +return this.a.rl(0,"/downloads/start",s,s)}, +agh(){var s=t.z +return this.a.rl(0,"/downloads/stop",s,s)}, +aFn(){var s=t.z +return this.a.rl(0,"/downloads/clear",s,s)}, +ag3(a,b){var s,r,q=this.a.a.L9$ +q===$&&A.b() +q=q.uU$ +q===$&&A.b() +q=A.bsh(q) +q.toString +s=A.bq1(A.dH(q+"/downloads",0,null),null) +q=s.r.b +q===$&&A.b() +q=q.b +q===$&&A.b() +q=new A.d_(q,A.k(q).h("d_<1>")).a6Z(new A.ayM(),t.BP) +r=s.gph() +return new A.Sv(r.gdU(r),q)}} +A.ayM.prototype={ +$1(a){return A.Hf(new A.ayL(),a,null,t.N,t.BP)}, +$S:812} +A.ayL.prototype={ +$1(a){return A.bLJ(B.at.hu(0,a))}, +$S:813} +A.wB.prototype={ +aP(){var s,r,q,p=this.a +p===$&&A.b() +s=p.M($.nT(),t.vm) +r=p.M($.vM(),t.Wr) +if(r==null)r=B.dY +q=s.ag3(r,p.M($.Hn(),t.v)) +p.kj(q.a) +return q.b}} +A.beU.prototype={ +$1(a){return J.b3(a,this.a)}, +$S:814} +A.beW.prototype={ +$1(a){return A.nZ(a,new A.beV(),t.BP,t.v)}, +$S:815} +A.beV.prototype={ +$1(a){return a.gaL(a)}, +$S:816} +A.bgm.prototype={ +$1(a){return a.gd8(a)!=="Error"||a.gNd()!==3}, +$S:817} +A.a0j.prototype={ +$1(a){return A.ayJ(a)}, +fP(a){return A.ayJ(a.dy)}, +gfi(){return null}} +A.Jo.prototype={ +bJ(a){var s=null,r=t.B +return new A.aft(s,!1,this,A.a([],t.ZS),A.a([],r),A.a([],t._),A.a([],r),A.cx(s,s,s,t.M,t.K))}, +l(a,b){if(b==null)return!1 +return b instanceof A.Jo&&b.dy===this.dy}, +gv(a){var s=A.buf(A.buf(0,A.cU(A.o(this))),B.f.gv(this.dy)) +s=s+((s&67108863)<<3)&536870911 +s^=s>>>11 +return s+((s&16383)<<15)&536870911}} +A.ayK.prototype={ +$1(a){return A.bRR(t.t9.a(a),this.a)}, +$S:818} +A.Jp.prototype={} +A.aft.prototype={} +A.aok.prototype={} +A.u5.prototype={ +abi(a){var s=t.z,r=A.aIs(A.bLF(a),t.N,s) +return this.a.abS("/chapter/batch",r,s,s)}, +C1(a,b,c){return this.aey(a,b,c)}, +aex(a,b){return this.C1(a,b,!1)}, +aey(a,b,c){var s=0,r=A.y(t.l8),q,p=this +var $async$C1=A.u(function(d,e){if(d===1)return A.v(e,r) +while(true)switch(s){case 0:s=3 +return A.t(p.a.xR(0,"/manga/"+b+"/full",a,new A.aHx(),A.ap(["onlineFetch",c],t.N,t.z),t.nn,t.l8),$async$C1) +case 3:q=e.a +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$C1,r)}, +GL(a,b){return this.aen(a,b)}, +aen(a,b){var s=0,r=A.y(t.ep),q,p=this +var $async$GL=A.u(function(c,d){if(c===1)return A.v(d,r) +while(true)switch(s){case 0:s=3 +return A.t(p.a.ob(0,"/manga/"+b+"/chapter/"+a,null,new A.aHv(),t.o,t.ep),$async$GL) +case 3:q=d.a +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$GL,r)}, +G1(a,b,c){return this.aN2(a,b,c)}, +aN2(a,b,c){var s=0,r=A.y(t.H),q,p=this +var $async$G1=A.u(function(d,e){if(d===1)return A.v(e,r) +while(true)switch(s){case 0:s=3 +return A.t(p.a.aN0(0,"/manga/"+b+"/chapter/"+a,null,A.BN(A.aIs(A.bLI(c),t.N,t.z)),t.o,t.ep),$async$G1) +case 3:q=e +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$G1,r)}, +vl(a,b,c){return this.aMF(a,b,c)}, +aMF(a,b,c){var s=0,r=A.y(t.H),q,p=this,o +var $async$vl=A.u(function(d,e){if(d===1)return A.v(e,r) +while(true)switch(s){case 0:o=J.cI(c) +s=3 +return A.t(p.a.MB("/manga/"+b+"/meta",null,A.BN(A.ap(["key",a,"value",o],t.N,t.z)),t.o,t.ep),$async$vl) +case 3:q=e +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$vl,r)}, +BV(a,b,c){return this.aeo(a,b,c)}, +aeo(a,b,c){var s=0,r=A.y(t.U_),q,p=this +var $async$BV=A.u(function(d,e){if(d===1)return A.v(e,r) +while(true)switch(s){case 0:s=3 +return A.t(p.a.xR(0,"/manga/"+b+"/chapters",a,new A.aHu(),A.ap(["onlineFetch",c],t.N,t.z),t.Py,t.o),$async$BV) +case 3:q=e.a +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$BV,r)}, +C2(a){return this.aez(a)}, +aez(a){var s=0,r=A.y(t.IL),q,p=this +var $async$C2=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:s=3 +return A.t(p.a.ob(0,"/manga/"+a+"/category",null,new A.aHw(),t.pU,t.oo),$async$C2) +case 3:q=c.a +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$C2,r)}} +A.aHx.prototype={ +$1(a){return t.a.b(a)?A.v1(a):null}, +$S:819} +A.aHv.prototype={ +$1(a){return t.a.b(a)?A.acN(a):null}, +$S:820} +A.aHu.prototype={ +$1(a){var s=null +return t.a.b(a)?A.acN(a):A.bti(s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s)}, +$S:821} +A.aHw.prototype={ +$1(a){var s=null +return t.a.b(a)?A.btd(a):new A.lr(s,s,s,s)}, +$S:283} +A.uZ.prototype={ +GT(a){return this.aeR(a)}, +aeR(a){var s=0,r=A.y(t.If),q,p=this +var $async$GT=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:s=3 +return A.t(p.a.ob(0,"/update/recentChapters/"+a,null,new A.aZc(),t.ic,t.If),$async$GT) +case 3:q=c.a +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$GT,r)}, +a9f(a){var s=t.z,r=A.F(t.N,s) +if(a!=null&&a!==0)r.p(0,"categoryId",a) +return this.a.Wr("/update/fetch",null,A.BN(r),s,s)}, +a9e(){return this.a9f(null)}, +Hg(a){return this.agn(a)}, +agn(a){var s=0,r=A.y(t.YO),q,p=this +var $async$Hg=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:s=3 +return A.t(p.a.ob(0,"/update/summary",a,new A.aZf(),t.S5,t.YO),$async$Hg) +case 3:q=c.a +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$Hg,r)}, +ag4(a,b){var s,r,q=this.a.a.L9$ +q===$&&A.b() +q=q.uU$ +q===$&&A.b() +q=A.bsh(q) +q.toString +s=A.bq1(A.dH(q+"/downloads",0,null),null) +q=s.r.b +q===$&&A.b() +q=q.b +q===$&&A.b() +q=new A.d_(q,A.k(q).h("d_<1>")).a6Z(new A.aZe(),t.S5) +r=s.gph() +return new A.Sv(r.gdU(r),q)}} +A.aZc.prototype={ +$1(a){return t.a.b(a)?A.bLG(a):null}, +$S:822} +A.aZf.prototype={ +$1(a){return t.a.b(a)?A.bth(J.b3(a,"statusMap")):null}, +$S:823} +A.aZe.prototype={ +$1(a){return A.Hf(new A.aZd(),a,null,t.N,t.S5)}, +$S:824} +A.aZd.prototype={ +$1(a){var s,r=A.F(t.N,t.z),q=J.b3(B.at.hu(0,a),"statusMap") +if(q!=null)for(q=J.Wp(q),q=q.gaj(q);q.u();){s=q.gH(q) +r.p(0,s.a,s.b)}return A.bth(r)}, +$S:825} +A.zm.prototype={ +aP(){var s,r,q,p=this.a +p===$&&A.b() +s=p.M($.Hq(),t.BA) +r=p.M($.vM(),t.Wr) +if(r==null)r=B.dY +q=s.ag4(r,p.M($.Hn(),t.v)) +p.kj(q.a) +return q.b}} +A.a5.prototype={ +BX(a){var s,r=this,q=r.gcV(r) +if(q==null){q=A.A(a,B.h,t.J) +q.toString +s=r.gKn() +if(s==null){s=r.gdM(r) +if(s==null)s=null}q=q.mh(s==null?0:s)}return q}} +A.b_x.prototype={ +gaK(a){return A.q($.k8())}, +gfU(){return A.q($.k8())}, +gKn(){return A.q($.k8())}, +gfE(a){return A.q($.k8())}, +gAq(){return A.q($.k8())}, +gdM(a){return A.q($.k8())}, +gxl(){return A.q($.k8())}, +ghS(){return A.q($.k8())}, +gcV(a){return A.q($.k8())}, +gtB(){return A.q($.k8())}, +gh3(a){return A.q($.k8())}, +gvq(){return A.q($.k8())}, +grr(){return A.q($.k8())}, +gGw(){return A.q($.k8())}, +b7(){return A.q($.k8())}} +A.Pk.prototype={ +gle(){var s=this.CW +if(s==null)return null +if(s instanceof A.oe)return s +return new A.oe(s,s,t.Kp)}, +j(a){var s=this +return"Chapter(id: "+A.h(s.a)+", bookmarked: "+A.h(s.b)+", chapterCount: "+A.h(s.c)+", chapterNumber: "+A.h(s.d)+", downloaded: "+A.h(s.e)+", fetchedAt: "+A.h(s.f)+", index: "+A.h(s.r)+", lastPageRead: "+A.h(s.w)+", lastReadAt: "+A.h(s.x)+", mangaId: "+A.h(s.y)+", name: "+A.h(s.z)+", pageCount: "+A.h(s.Q)+", read: "+A.h(s.as)+", realUrl: "+A.h(s.at)+", scanlator: "+A.h(s.ax)+", uploadDate: "+A.h(s.ay)+", url: "+A.h(s.ch)+", meta: "+A.h(s.gle())+")"}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r!==b)if(J.a1(b)===A.o(r))if(b instanceof A.Pk){s=b.a==r.a +if(s||s){s=b.b==r.b +if(s||s){s=b.c==r.c +if(s||s){s=b.d==r.d +if(s||s){s=b.e==r.e +if(s||s){s=b.f==r.f +if(s||s){s=b.r==r.r +if(s||s){s=b.w==r.w +if(s||s){s=b.x==r.x +if(s||s){s=b.y==r.y +if(s||s){s=b.z==r.z +if(s||s){s=b.Q==r.Q +if(s||s){s=b.as==r.as +if(s||s){s=b.at==r.at +if(s||s){s=b.ax==r.ax +if(s||s){s=b.ay==r.ay +if(s||s){s=b.ch==r.ch +s=(s||s)&&B.a0.dj(b.CW,r.CW)}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1 +else s=!1 +else s=!0 +return s}, +gv(a){var s=this +return A.X(A.o(s),s.a,s.b,s.c,s.d,s.e,s.f,s.r,s.w,s.x,s.y,s.z,s.Q,s.as,s.at,s.ax,s.ay,s.ch,B.a0.du(0,s.CW),B.a)}, +b7(){var s=this +return A.ap(["id",s.a,"bookmarked",s.b,"chapterCount",s.c,"chapterNumber",s.d,"downloaded",s.e,"fetchedAt",s.f,"index",s.r,"lastPageRead",s.w,"lastReadAt",s.x,"mangaId",s.y,"name",s.z,"pageCount",s.Q,"read",s.as,"realUrl",s.at,"scanlator",s.ax,"uploadDate",s.ay,"url",s.ch,"meta",s.gle()],t.N,t.z)}, +gaK(a){return this.a}, +gfU(){return this.b}, +gKn(){return this.d}, +gfE(a){return this.e}, +gAq(){return this.f}, +gdM(a){return this.r}, +gxl(){return this.w}, +ghS(){return this.y}, +gcV(a){return this.z}, +gtB(){return this.Q}, +gh3(a){return this.as}, +gvq(){return this.at}, +grr(){return this.ax}, +gGw(){return this.ay}} +A.adV.prototype={} +A.b_6.prototype={ +$2(a,b){return new A.aU(a,A.bs(b),t.mT)}, +$S:155} +A.adZ.prototype={} +A.Pj.prototype={ +gTu(){var s=this.a +if(s==null)return null +if(s instanceof A.cQ)return s +return new A.cQ(s,s,t.ka)}, +j(a){return"ChapterBatch(chapterIds: "+A.h(this.gTu())+", change: "+A.h(this.b)+")"}, +l(a,b){var s,r,q=this +if(b==null)return!1 +if(q!==b)if(J.a1(b)===A.o(q))if(b instanceof A.Pj)if(B.a0.dj(b.a,q.a)){s=b.b +r=q.b +s=s==r||J.i(s,r)}else s=!1 +else s=!1 +else s=!1 +else s=!0 +return s}, +gv(a){return A.X(A.o(this),B.a0.du(0,this.a),this.b,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +b7(){var s=this.gTu(),r=this.b +return A.ap(["chapterIds",s,"change",r==null?null:A.bte(r)],t.N,t.z)}} +A.r6.prototype={ +j(a){var s=this +return"ChapterChange(isRead: "+A.h(s.a)+", isBookmarked: "+A.h(s.b)+", lastPageRead: "+A.h(s.c)+", delete: "+A.h(s.d)+")"}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r!==b)if(J.a1(b)===A.o(r))if(b instanceof A.r6){s=b.a==r.a +if(s||s){s=b.b==r.b +if(s||s){s=b.c==r.c +if(s||s){s=b.d==r.d +s=s||s}else s=!1}else s=!1}else s=!1}else s=!1 +else s=!1 +else s=!0 +return s}, +gv(a){var s=this +return A.X(A.o(s),s.a,s.b,s.c,s.d,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +b7(){var s=this +return A.ap(["isRead",s.a,"isBookmarked",s.b,"lastPageRead",s.c,"delete",s.d],t.N,t.z)}} +A.kS.prototype={} +A.kc.prototype={} +A.b_y.prototype={ +gf5(){return A.q($.A7())}, +geq(){return A.q($.A7())}, +b7(){return A.q($.A7())}, +gbL(){return A.q($.A7())}, +a7Q(a){return this.gbL().$1$chapter(a)}} +A.Fg.prototype={ +$2$chapter$manga(a,b){var s=this.a,r=B.d===a?s.a:t.ep.a(a) +return this.b.$1(this.$ti.h("Fg.1").a(s.aGb(r,B.d===b?s.b:t.l8.a(b))))}, +$0(){return this.$2$chapter$manga(B.d,B.d)}, +$1$chapter(a){return this.$2$chapter$manga(a,B.d)}} +A.UC.prototype={ +$2$chapter$manga(a,b){var s=B.d===a?this.a.a:t.ep.a(a),r=B.d===b?this.a.b:t.l8.a(b) +return this.b.$1(new A.p7(s,r))}, +$0(){return this.$2$chapter$manga(B.d,B.d)}, +$1$chapter(a){return this.$2$chapter$manga(a,B.d)}} +A.p7.prototype={ +j(a){return"ChapterMangaPair(chapter: "+A.h(this.a)+", manga: "+A.h(this.b)+")"}, +l(a,b){var s,r,q=this +if(b==null)return!1 +if(q!==b)if(J.a1(b)===A.o(q))if(b instanceof A.p7){s=b.a +r=q.a +if(s==r||J.i(s,r)){s=b.b +r=q.b +s=s==r||J.i(s,r)}else s=!1}else s=!1 +else s=!1 +else s=!0 +return s}, +gv(a){return A.X(A.o(this),this.a,this.b,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +gbL(){return new A.UC(this,B.MU,t.Lz)}, +b7(){var s,r=this.a +r=r==null?null:r.b7() +s=this.b +return A.ap(["chapter",r,"manga",s==null?null:s.b7()],t.N,t.z)}, +$ikS:1, +a7Q(a){return this.gbL().$1$chapter(a)}, +aGb(a,b){return this.gbL().$2$chapter$manga(a,b)}, +gf5(){return this.a}, +geq(){return this.b}} +A.b_z.prototype={ +gF5(){return A.q($.A7())}, +giD(a){return A.q($.A7())}, +b7(){return A.q($.A7())}} +A.Pl.prototype={ +giD(a){var s=this.b +if(s==null)return null +if(s instanceof A.cQ)return s +return new A.cQ(s,s,t.dQ)}, +j(a){return"ChapterPage(hasNextPage: "+A.h(this.a)+", page: "+A.h(this.giD(this))+")"}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r!==b)if(J.a1(b)===A.o(r))if(b instanceof A.Pl){s=b.a==r.a +s=(s||s)&&B.a0.dj(b.b,r.b)}else s=!1 +else s=!1 +else s=!0 +return s}, +gv(a){return A.X(A.o(this),this.a,B.a0.du(0,this.b),B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +b7(){return A.bLH(this)}, +$ikc:1, +gF5(){return this.a}} +A.b_7.prototype={ +$1(a){var s,r,q=t.a +q.a(a) +s=J.ak(a) +r=s.i(a,"chapter")==null?null:A.acN(q.a(s.i(a,"chapter"))) +return new A.p7(r,s.i(a,"manga")==null?null:A.v1(q.a(s.i(a,"manga"))))}, +$S:826} +A.b_8.prototype={ +$1(a){return a.b7()}, +$S:827} +A.adW.prototype={} +A.adX.prototype={} +A.Fh.prototype={ +j(a){var s=this +return"ChapterPut(read: "+A.h(s.a)+", bookmarked: "+A.h(s.b)+", markPrevRead: "+A.h(s.c)+", lastPageRead: "+A.h(s.d)+")"}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r!==b)if(J.a1(b)===A.o(r))if(b instanceof A.Fh){s=b.a==r.a +if(s||s){s=b.b==r.b +if(s||s){s=b.c==r.c +if(s||s){s=b.d==r.d +s=s||s}else s=!1}else s=!1}else s=!1}else s=!1 +else s=!1 +else s=!0 +return s}, +gv(a){var s=this +return A.X(A.o(s),s.a,s.b,s.c,s.d,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +b7(){var s=this +return A.ap(["read",s.a,"bookmarked",s.b,"markPrevRead",s.c,"lastPageRead",s.d],t.N,t.z)}} +A.hT.prototype={} +A.b_A.prototype={ +gBn(){return A.q($.bh_())}, +gaL(a){return A.q($.bh_())}, +b7(){return A.q($.bh_())}} +A.Pm.prototype={ +gBn(){var s=this.a +if(s==null)return null +if(s instanceof A.cQ)return s +return new A.cQ(s,s,t.Mq)}, +j(a){return"Downloads(queue: "+A.h(this.gBn())+", status: "+A.h(this.b)+")"}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r!==b)if(J.a1(b)===A.o(r))if(b instanceof A.Pm)if(B.a0.dj(b.a,r.a)){s=b.b==r.b +s=s||s}else s=!1 +else s=!1 +else s=!1 +else s=!0 +return s}, +gv(a){return A.X(A.o(this),B.a0.du(0,this.a),this.b,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +b7(){return A.bLK(this)}, +$ihT:1, +gaL(a){return this.b}} +A.b_9.prototype={ +$1(a){var s,r,q,p,o,n=t.a +n.a(a) +s=J.ak(a) +r=s.i(a,"chapter")==null?null:A.acN(n.a(s.i(a,"chapter"))) +q=A.bv(s.i(a,"chapterIndex")) +n=s.i(a,"manga")==null?null:A.v1(n.a(s.i(a,"manga"))) +p=A.bv(s.i(a,"mangaId")) +o=A.bd_(s.i(a,"progress")) +if(o==null)o=null +return new A.Pn(r,q,n,p,o,A.ae(s.i(a,"state")),A.bv(s.i(a,"tries")))}, +$S:828} +A.b_a.prototype={ +$1(a){return a.b7()}, +$S:829} +A.afv.prototype={} +A.cC.prototype={} +A.b_B.prototype={ +gf5(){return A.q($.vL())}, +gwD(){return A.q($.vL())}, +geq(){return A.q($.vL())}, +ghS(){return A.q($.vL())}, +gr4(){return A.q($.vL())}, +gd8(a){return A.q($.vL())}, +gNd(){return A.q($.vL())}, +b7(){return A.q($.vL())}} +A.Pn.prototype={ +j(a){var s=this +return"DownloadsQueue(chapter: "+A.h(s.a)+", chapterIndex: "+A.h(s.b)+", manga: "+A.h(s.c)+", mangaId: "+A.h(s.d)+", progress: "+A.h(s.e)+", state: "+A.h(s.f)+", tries: "+A.h(s.r)+")"}, +l(a,b){var s,r,q=this +if(b==null)return!1 +if(q!==b)if(J.a1(b)===A.o(q))if(b instanceof A.Pn){s=b.a +r=q.a +if(s==r||J.i(s,r)){s=b.b==q.b +if(s||s){s=b.c +r=q.c +if(s==r||J.i(s,r)){s=b.d==q.d +if(s||s){s=b.e==q.e +if(s||s){s=b.f==q.f +if(s||s){s=b.r==q.r +s=s||s}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1 +else s=!1 +else s=!0 +return s}, +gv(a){var s=this +return A.X(A.o(s),s.a,s.b,s.c,s.d,s.e,s.f,s.r,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +b7(){var s,r=this,q=r.a +q=q==null?null:q.b7() +s=r.c +s=s==null?null:s.b7() +return A.ap(["chapter",q,"chapterIndex",r.b,"manga",s,"mangaId",r.d,"progress",r.e,"state",r.f,"tries",r.r],t.N,t.z)}, +$icC:1, +gf5(){return this.a}, +gwD(){return this.b}, +geq(){return this.c}, +ghS(){return this.d}, +gr4(){return this.e}, +gd8(a){return this.f}, +gNd(){return this.r}} +A.afu.prototype={} +A.a3.prototype={ +aea(a,b){var s,r=a==null?null:J.co(a,new A.aIm(),t.N).kp(0),q=b==null?null:new A.ad(b,new A.aIn(),A.ab(b).h("ad<1,f>")).kp(0) +if(r==null)s=null +else s=r.aFI(q==null?A.aY(t.N):q) +return s!==!1}, +ac7(a,b){var s,r=this +if(!A.Of(r.ghk(r),b))if(!A.Of(r.gzs(),b)){s=r.gvy() +s=r.aea(s,b==null?null:A.a(b.split(","),t.s))}else s=!0 +else s=!0 +return s}} +A.aIm.prototype={ +$1(a){return a.toLowerCase()}, +$S:19} +A.aIn.prototype={ +$1(a){return B.c.dI(a.toLowerCase())}, +$S:19} +A.L5.prototype={} +A.b_F.prototype={ +ga6S(a){return A.q($.dA())}, +gzs(){return A.q($.dA())}, +gKR(a){return A.q($.dA())}, +gwU(){return A.q($.dA())}, +ga7u(){return A.q($.dA())}, +gLV(){return A.q($.dA())}, +gVG(){return A.q($.dA())}, +ga9H(){return A.q($.dA())}, +gvy(){return A.q($.dA())}, +gfJ(){return A.q($.dA())}, +gaK(a){return A.q($.dA())}, +gLD(){return A.q($.dA())}, +gaan(){return A.q($.dA())}, +gvq(){return A.q($.dA())}, +gfS(a){return A.q($.dA())}, +gYx(){return A.q($.dA())}, +gaL(a){return A.q($.dA())}, +gq4(){return A.q($.dA())}, +gacT(){return A.q($.dA())}, +ghk(a){return A.q($.dA())}, +gtP(){return A.q($.dA())}, +gab_(){return A.q($.dA())}, +ga7v(){return A.q($.dA())}, +gGx(a){return A.q($.dA())}, +gle(){return A.q($.dA())}, +b7(){return A.q($.dA())}, +gbL(){return A.q($.dA())}, +KA(a){return this.gbL().$1$source(a)}, +TQ(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5){return this.gbL().$25$artist$author$chapterCount$chaptersLastFetchedAt$description$downloadCount$freshData$genre$id$inLibrary$inLibraryAt$initialized$lastChapterRead$lastFetchedAt$lastReadAt$meta$realUrl$source$sourceId$status$thumbnailUrl$thumbnailUrlLastFetched$title$unreadCount$url(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5)}, +Kz(a){return this.gbL().$1$inLibrary(a)}} +A.v2.prototype={ +$25$artist$author$chapterCount$chaptersLastFetchedAt$description$downloadCount$freshData$genre$id$inLibrary$inLibraryAt$initialized$lastChapterRead$lastFetchedAt$lastReadAt$meta$realUrl$source$sourceId$status$thumbnailUrl$thumbnailUrlLastFetched$title$unreadCount$url(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){var s=this.a,r=B.d===a6?s.ga6S(s):A.ae(a6),q=B.d===a7?s.gzs():A.ae(a7),p=B.d===b0?s.gKR(s):A.ae(b0),o=B.d===b1?s.gwU():A.bv(b1),n=B.d===a8?s.ga7u():A.bv(a8),m=B.d===c0?s.gLV():A.bv(c0),l=B.d===b8?s.gVG():t.ep.a(b8),k=B.d===b2?s.ga9H():A.cG(b2),j=B.d===b3?s.gvy():t.Xb.a(b3),i=B.d===b5?s.gfJ():A.cG(b5),h=B.d===b4?s.gaK(s):A.bv(b4),g=B.d===b6?s.gLD():A.bv(b6),f=B.d===b7?s.gaan():A.cG(b7),e=B.d===c2?s.gvq():A.ae(c2),d=B.d===c3?s.gfS(s):t.FO.a(c3),c=B.d===c4?s.gYx():A.ae(c4),b=B.d===c5?s.gaL(s):t.Qq.a(c5),a=B.d===c6?s.gq4():A.ae(c6),a0=B.d===c7?s.gacT():A.bv(c7),a1=B.d===c8?s.ghk(s):A.ae(c8),a2=B.d===c9?s.gtP():A.bv(c9),a3=B.d===b9?s.gab_():A.bv(b9),a4=B.d===a9?s.ga7v():A.bv(a9),a5=B.d===d0?s.gGx(s):A.ae(d0) +return this.b.$1(A.k(this).h("v2.1").a(s.TQ(r,q,n,a4,p,o,k,j,h,i,g,f,l,a3,m,B.d===c1?s.gle():t.O0.a(c1),e,d,c,b,a,a0,a1,a2,a5)))}, +$0(){return this.$25$artist$author$chapterCount$chaptersLastFetchedAt$description$downloadCount$freshData$genre$id$inLibrary$inLibraryAt$initialized$lastChapterRead$lastFetchedAt$lastReadAt$meta$realUrl$source$sourceId$status$thumbnailUrl$thumbnailUrlLastFetched$title$unreadCount$url(B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d)}, +$1$url(a){return this.$25$artist$author$chapterCount$chaptersLastFetchedAt$description$downloadCount$freshData$genre$id$inLibrary$inLibraryAt$initialized$lastChapterRead$lastFetchedAt$lastReadAt$meta$realUrl$source$sourceId$status$thumbnailUrl$thumbnailUrlLastFetched$title$unreadCount$url(B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,a)}, +$1$sourceId(a){return this.$25$artist$author$chapterCount$chaptersLastFetchedAt$description$downloadCount$freshData$genre$id$inLibrary$inLibraryAt$initialized$lastChapterRead$lastFetchedAt$lastReadAt$meta$realUrl$source$sourceId$status$thumbnailUrl$thumbnailUrlLastFetched$title$unreadCount$url(B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,a,B.d,B.d,B.d,B.d,B.d,B.d)}, +$1$source(a){return this.$25$artist$author$chapterCount$chaptersLastFetchedAt$description$downloadCount$freshData$genre$id$inLibrary$inLibraryAt$initialized$lastChapterRead$lastFetchedAt$lastReadAt$meta$realUrl$source$sourceId$status$thumbnailUrl$thumbnailUrlLastFetched$title$unreadCount$url(B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,a,B.d,B.d,B.d,B.d,B.d,B.d,B.d)}, +$1$inLibrary(a){return this.$25$artist$author$chapterCount$chaptersLastFetchedAt$description$downloadCount$freshData$genre$id$inLibrary$inLibraryAt$initialized$lastChapterRead$lastFetchedAt$lastReadAt$meta$realUrl$source$sourceId$status$thumbnailUrl$thumbnailUrlLastFetched$title$unreadCount$url(B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,a,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d)}} +A.UP.prototype={ +$25$artist$author$chapterCount$chaptersLastFetchedAt$description$downloadCount$freshData$genre$id$inLibrary$inLibraryAt$initialized$lastChapterRead$lastFetchedAt$lastReadAt$meta$realUrl$source$sourceId$status$thumbnailUrl$thumbnailUrlLastFetched$title$unreadCount$url(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){var s=this,r=B.d===a6?s.a.a:A.ae(a6),q=B.d===a7?s.a.b:A.ae(a7),p=B.d===b0?s.a.c:A.ae(b0),o=B.d===b1?s.a.d:A.bv(b1),n=B.d===a8?s.a.e:A.bv(a8),m=B.d===c0?s.a.f:A.bv(c0),l=B.d===b8?s.a.r:t.ep.a(b8),k=B.d===b2?s.a.w:A.cG(b2),j=B.d===b3?s.a.x:t.Xb.a(b3),i=B.d===b5?s.a.y:A.cG(b5),h=B.d===b4?s.a.z:A.bv(b4),g=B.d===b6?s.a.Q:A.bv(b6),f=B.d===b7?s.a.as:A.cG(b7),e=B.d===c2?s.a.at:A.ae(c2),d=B.d===c3?s.a.ax:t.FO.a(c3),c=B.d===c4?s.a.ay:A.ae(c4),b=B.d===c5?s.a.ch:t.Qq.a(c5),a=B.d===c6?s.a.CW:A.ae(c6),a0=B.d===c7?s.a.cx:A.bv(c7),a1=B.d===c8?s.a.cy:A.ae(c8),a2=B.d===c9?s.a.db:A.bv(c9),a3=B.d===b9?s.a.dx:A.bv(b9),a4=B.d===a9?s.a.dy:A.bv(a9),a5=B.d===d0?s.a.fr:A.ae(d0) +return s.b.$1(A.bkd(r,q,n,a4,p,o,k,j,h,i,g,f,l,a3,m,B.d===c1?s.a.fx:t.O0.a(c1),e,d,c,b,a,a0,a1,a2,a5))}, +$0(){return this.$25$artist$author$chapterCount$chaptersLastFetchedAt$description$downloadCount$freshData$genre$id$inLibrary$inLibraryAt$initialized$lastChapterRead$lastFetchedAt$lastReadAt$meta$realUrl$source$sourceId$status$thumbnailUrl$thumbnailUrlLastFetched$title$unreadCount$url(B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d)}, +$1$url(a){return this.$25$artist$author$chapterCount$chaptersLastFetchedAt$description$downloadCount$freshData$genre$id$inLibrary$inLibraryAt$initialized$lastChapterRead$lastFetchedAt$lastReadAt$meta$realUrl$source$sourceId$status$thumbnailUrl$thumbnailUrlLastFetched$title$unreadCount$url(B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,a)}, +$1$sourceId(a){return this.$25$artist$author$chapterCount$chaptersLastFetchedAt$description$downloadCount$freshData$genre$id$inLibrary$inLibraryAt$initialized$lastChapterRead$lastFetchedAt$lastReadAt$meta$realUrl$source$sourceId$status$thumbnailUrl$thumbnailUrlLastFetched$title$unreadCount$url(B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,a,B.d,B.d,B.d,B.d,B.d,B.d)}, +$1$source(a){return this.$25$artist$author$chapterCount$chaptersLastFetchedAt$description$downloadCount$freshData$genre$id$inLibrary$inLibraryAt$initialized$lastChapterRead$lastFetchedAt$lastReadAt$meta$realUrl$source$sourceId$status$thumbnailUrl$thumbnailUrlLastFetched$title$unreadCount$url(B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,a,B.d,B.d,B.d,B.d,B.d,B.d,B.d)}, +$1$inLibrary(a){return this.$25$artist$author$chapterCount$chaptersLastFetchedAt$description$downloadCount$freshData$genre$id$inLibrary$inLibraryAt$initialized$lastChapterRead$lastFetchedAt$lastReadAt$meta$realUrl$source$sourceId$status$thumbnailUrl$thumbnailUrlLastFetched$title$unreadCount$url(B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,a,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d,B.d)}} +A.r7.prototype={ +gvy(){var s=this.x +if(s==null)return null +if(s instanceof A.cQ)return s +return new A.cQ(s,s,t.ls)}, +j(a){var s=this +return"Manga(artist: "+A.h(s.a)+", author: "+A.h(s.b)+", description: "+A.h(s.c)+", downloadCount: "+A.h(s.d)+", chapterCount: "+A.h(s.e)+", lastReadAt: "+A.h(s.f)+", lastChapterRead: "+A.h(s.r)+", freshData: "+A.h(s.w)+", genre: "+A.h(s.gvy())+", inLibrary: "+A.h(s.y)+", id: "+A.h(s.z)+", inLibraryAt: "+A.h(s.Q)+", initialized: "+A.h(s.as)+", realUrl: "+A.h(s.at)+", source: "+A.h(s.ax)+", sourceId: "+A.h(s.ay)+", status: "+A.h(s.ch)+", thumbnailUrl: "+A.h(s.CW)+", thumbnailUrlLastFetched: "+A.h(s.cx)+", title: "+A.h(s.cy)+", unreadCount: "+A.h(s.db)+", lastFetchedAt: "+A.h(s.dx)+", chaptersLastFetchedAt: "+A.h(s.dy)+", url: "+A.h(s.fr)+", meta: "+A.h(s.fx)+")"}, +l(a,b){var s,r,q=this +if(b==null)return!1 +if(q!==b)if(J.a1(b)===A.o(q))if(b instanceof A.r7){s=b.a==q.a +if(s||s){s=b.b==q.b +if(s||s){s=b.c==q.c +if(s||s){s=b.d==q.d +if(s||s){s=b.e==q.e +if(s||s){s=b.f==q.f +if(s||s){s=b.r +r=q.r +if(s==r||J.i(s,r)){s=b.w==q.w +if(s||s)if(B.a0.dj(b.x,q.x)){s=b.y==q.y +if(s||s){s=b.z==q.z +if(s||s){s=b.Q==q.Q +if(s||s){s=b.as==q.as +if(s||s){s=b.at==q.at +if(s||s){s=b.ax +r=q.ax +if(s==r||J.i(s,r)){s=b.ay==q.ay +if(s||s){s=b.ch==q.ch +if(s||s){s=b.CW==q.CW +if(s||s){s=b.cx==q.cx +if(s||s){s=b.cy==q.cy +if(s||s){s=b.db==q.db +if(s||s){s=b.dx==q.dx +if(s||s){s=b.dy==q.dy +if(s||s){s=b.fr==q.fr +if(s||s){s=b.fx +r=q.fx +s=s==r||J.i(s,r)}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1 +else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1 +else s=!1 +else s=!0 +return s}, +gv(a){var s=this +return A.dt([A.o(s),s.a,s.b,s.c,s.d,s.e,s.f,s.r,s.w,B.a0.du(0,s.x),s.y,s.z,s.Q,s.as,s.at,s.ax,s.ay,s.ch,s.CW,s.cx,s.cy,s.db,s.dx,s.dy,s.fr,s.fx])}, +gbL(){return new A.UP(this,B.Na,t._V)}, +b7(){var s,r,q,p,o=this,n=null,m=o.r +m=m==null?n:m.b7() +s=o.gvy() +r=o.ax +r=r==null?n:r.b7() +q=o.ch +q=q==null?n:q.d +if(q==null)q="UNKNOWN" +p=o.fx +p=p==null?n:p.b7() +return A.ap(["artist",o.a,"author",o.b,"description",o.c,"downloadCount",o.d,"chapterCount",o.e,"lastReadAt",o.f,"lastChapterRead",m,"freshData",o.w,"genre",s,"inLibrary",o.y,"id",o.z,"inLibraryAt",o.Q,"initialized",o.as,"realUrl",o.at,"source",r,"sourceId",o.ay,"status",q,"thumbnailUrl",o.CW,"thumbnailUrlLastFetched",o.cx,"title",o.cy,"unreadCount",o.db,"lastFetchedAt",o.dx,"chaptersLastFetchedAt",o.dy,"url",o.fr,"meta",p],t.N,t.z)}, +KA(a){return this.gbL().$1$source(a)}, +TQ(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5){return this.gbL().$25$artist$author$chapterCount$chaptersLastFetchedAt$description$downloadCount$freshData$genre$id$inLibrary$inLibraryAt$initialized$lastChapterRead$lastFetchedAt$lastReadAt$meta$realUrl$source$sourceId$status$thumbnailUrl$thumbnailUrlLastFetched$title$unreadCount$url(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5)}, +Kz(a){return this.gbL().$1$inLibrary(a)}, +ga6S(a){return this.a}, +gzs(){return this.b}, +gKR(a){return this.c}, +gwU(){return this.d}, +ga7u(){return this.e}, +gLV(){return this.f}, +gVG(){return this.r}, +ga9H(){return this.w}, +gfJ(){return this.y}, +gaK(a){return this.z}, +gLD(){return this.Q}, +gaan(){return this.as}, +gvq(){return this.at}, +gfS(a){return this.ax}, +gYx(){return this.ay}, +gaL(a){return this.ch}, +gq4(){return this.CW}, +gacT(){return this.cx}, +ghk(a){return this.cy}, +gtP(){return this.db}, +gab_(){return this.dx}, +ga7v(){return this.dy}, +gGx(a){return this.fr}, +gle(){return this.fx}} +A.ahK.prototype={ +gbL(){return A.q($.dA())}, +KA(a){return this.gbL().$1$source(a)}, +TQ(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5){return this.gbL().$25$artist$author$chapterCount$chaptersLastFetchedAt$description$downloadCount$freshData$genre$id$inLibrary$inLibraryAt$initialized$lastChapterRead$lastFetchedAt$lastReadAt$meta$realUrl$source$sourceId$status$thumbnailUrl$thumbnailUrlLastFetched$title$unreadCount$url(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5)}, +Kz(a){return this.gbL().$1$inLibrary(a)}} +A.b_G.prototype={ +ghi(){return A.q($.dA())}, +ghY(){return A.q($.dA())}, +gje(){return A.q($.dA())}, +gjd(){return A.q($.dA())}, +grr(){return A.q($.dA())}, +b7(){return A.q($.dA())}} +A.Po.prototype={ +j(a){var s=this +return"MangaMeta(invertTap: "+A.h(s.a)+", readerNavigationLayout: "+A.h(s.b)+", readerMode: "+A.h(s.c)+", readerPadding: "+A.h(s.d)+", readerMagnifierSize: "+A.h(s.e)+", scanlator: "+A.h(s.f)+")"}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r!==b)if(J.a1(b)===A.o(r))if(b instanceof A.Po){s=b.a==r.a +if(s||s){s=b.b==r.b +if(s||s){s=b.c==r.c +if(s||s){s=b.d==r.d +if(s||s){s=b.e==r.e +if(s||s){s=b.f==r.f +s=s||s}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1}else s=!1 +else s=!1 +else s=!0 +return s}, +gv(a){var s=this +return A.X(A.o(s),s.a,s.b,s.c,s.d,s.e,s.f,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +b7(){var s=this +return A.ap(["flutter_readerNavigationLayoutInvert",s.a,"flutter_readerNavigationLayout",B.EW.i(0,s.b),"flutter_readerMode",B.EX.i(0,s.c),"flutter_readerPadding",s.d,"flutter_readerMagnifierSize",s.e,"flutter_scanlator",s.f],t.N,t.z)}, +$iL5:1, +ghi(){return this.b}, +ghY(){return this.c}, +gje(){return this.d}, +gjd(){return this.e}, +grr(){return this.f}} +A.b_g.prototype={ +$1(a){return A.bs(a)}, +$S:39} +A.ahY.prototype={} +A.ahU.prototype={} +A.eO.prototype={ +gGo(a){var s,r,q,p=this,o=null,n=p.ghW(p) +n=n==null?o:J.aZ(n) +if(n==null||B.f.gd6(n))n=0 +else n.toString +s=p.gi_() +s=s==null?o:J.aZ(s) +if(s==null||B.f.gd6(s))s=0 +else s.toString +r=p.gh8(p) +r=r==null?o:J.aZ(r) +if(r==null||B.f.gd6(r))r=0 +else r.toString +q=p.ghx() +q=q==null?o:J.aZ(q) +if(q==null||B.f.gd6(q))q=0 +else q.toString +return n+s+r+q}, +gX6(){var s,r=this.gh8(this) +r=r==null?null:J.aZ(r) +if(r==null||B.f.gd6(r))r=0 +else r.toString +s=this.ghx() +s=s==null?null:J.aZ(s) +if(s==null||B.f.gd6(s))s=0 +else s.toString +return r+s}} +A.b_M.prototype={ +ghW(a){return A.q($.Wi())}, +gi_(){return A.q($.Wi())}, +gh8(a){return A.q($.Wi())}, +ghx(){return A.q($.Wi())}, +b7(){return A.q($.Wi())}} +A.Ps.prototype={ +ghW(a){var s=this.a +if(s==null)return null +if(s instanceof A.cQ)return s +return new A.cQ(s,s,t.V6)}, +gi_(){var s=this.b +if(s==null)return null +if(s instanceof A.cQ)return s +return new A.cQ(s,s,t.V6)}, +gh8(a){var s=this.c +if(s==null)return null +if(s instanceof A.cQ)return s +return new A.cQ(s,s,t.V6)}, +ghx(){var s=this.d +if(s==null)return null +if(s instanceof A.cQ)return s +return new A.cQ(s,s,t.V6)}, +j(a){var s=this +return"UpdateStatus(pending: "+A.h(s.ghW(s))+", running: "+A.h(s.gi_())+", completed: "+A.h(s.gh8(s))+", failed: "+A.h(s.ghx())+")"}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r!==b)s=J.a1(b)===A.o(r)&&b instanceof A.Ps&&B.a0.dj(b.a,r.a)&&B.a0.dj(b.b,r.b)&&B.a0.dj(b.c,r.c)&&B.a0.dj(b.d,r.d) +else s=!0 +return s}, +gv(a){var s=this +return A.X(A.o(s),B.a0.du(0,s.a),B.a0.du(0,s.b),B.a0.du(0,s.c),B.a0.du(0,s.d),B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +b7(){return A.bLS(this)}} +A.anK.prototype={} +A.b_m.prototype={ +$1(a){return A.v1(t.a.a(a))}, +$S:73} +A.b_n.prototype={ +$1(a){return A.v1(t.a.a(a))}, +$S:73} +A.b_o.prototype={ +$1(a){return A.v1(t.a.a(a))}, +$S:73} +A.b_p.prototype={ +$1(a){return A.v1(t.a.a(a))}, +$S:73} +A.b_q.prototype={ +$1(a){return a.b7()}, +$S:86} +A.b_r.prototype={ +$1(a){return a.b7()}, +$S:86} +A.b_s.prototype={ +$1(a){return a.b7()}, +$S:86} +A.b_t.prototype={ +$1(a){return a.b7()}, +$S:86} +A.anL.prototype={} +A.a0k.prototype={ +aJ(a,b){var s=null,r=b.M(A.eA(a),t.g),q=b.M($.bBy(),t.Cm),p=b.M($.bBz(),t.TX),o=b.M($.bBM(),t.y),n=A.O(A.A(a,B.h,t.J).gl1(),s,s,s,s,s,s,s),m=A.a([],t.p),l=J.ce(q) +if(!l)m.push(A.db(s,s,B.Us,s,new A.ayO(b),s,s,s,s,s)) +n=A.eh(m,s,s,s,s,s,n) +if(o){m=A.bW(p) +m=new A.a0i(m==null?"":m,s)}else m=s +return A.e_(n,s,A.ih(p,a,new A.ayP(a,q,r),!1,s,!0,s),s,s,s,!0,!1,!1,m,s)}} +A.ayO.prototype={ +$0(){return A.dw(this.a.aa(0,$.nT(),t.vm).gaFm(),t.H)}, +$S:0} +A.ayP.prototype={ +$1(a){var s,r,q,p,o=this +if(a==null)return A.hU(null,A.A(o.a,B.h,t.J).gjH()) +else{s=o.b +r=J.ak(s) +q=r.gai(s) +if(q)return A.hU(null,A.A(o.a,B.h,t.J).gnk()) +else{p=r.gt(s) +r=B.f.gd6(p) +if(r)p=0 +return A.qn(new A.ayN(p,s,o.c),p+1,104,null)}}}, +$S:830} +A.ayN.prototype={ +$2(a,b){var s,r=this.a +if(b===r)return B.ae0 +s=J.b3(this.b,b) +return new A.a0g(s,this.c,b,r,new A.bP(A.h(s),t.O))}, +$S:33} +A.a0g.prototype={ +Gm(a,b,c,d,e){return this.aOC(a,b,c,d,e)}, +aOC(a,b,c,d,e){var s=0,r=A.y(t.z),q=1,p,o,n,m,l +var $async$Gm=A.u(function(f,g){if(f===1){p=g +s=q}while(true)switch(s){case 0:q=3 +o=t.P +l=A +s=6 +return A.t(A.dw(new A.ayw(b,d,e,c),o),$async$Gm) +case 6:l.hq(g,a,!1,o) +q=1 +s=5 +break +case 3:q=2 +m=p +s=5 +break +case 2:s=1 +break +case 5:return A.w(null,r) +case 1:return A.v(p,r)}}) +return A.x($async$Gm,r)}, +aJ(a,b){var s,r,q=this,p=null,o=$.b7.bm(new A.cW(p,p,t.ar),t.XR),n=b.M(A.ayJ(q.f),t.fC),m=n==null,l=m?p:n.gd8(n),k=m?p:n.gr4(),j=m?p:n.gNd() +$.b7.bm(new A.dz(new A.ayr(o,n),[l,k,j]),t.H) +if(m)return B.a_ +m=t.p +l=A.a([],m) +k=n.geq() +k=k==null?p:k.gq4() +if(!(k==null||k.length===0)){k=n.geq().gq4() +k.toString +l.push(new A.b8(B.aT,A.jE(!1,p,!0,A.o3(B.bh,A.nf(!1,p,k,p,!1,B.adU,p),B.bc),p,!0,p,p,p,p,p,p,p,p,p,new A.ays(n,a),p,p,p,p,p,p,p),p))}k=n.geq() +k=k==null?p:k.ghk(k) +if(k==null)k="" +k=A.O(k,p,B.ac,p,p,A.r(a).p3.as,p,p) +j=n.gf5() +j=j==null?p:j.gcV(j) +if(j==null){j=n.gf5() +j=j==null?p:J.cI(j.gKn())}if(j==null)j="" +j=A.O(j,p,B.ac,p,p,A.r(a).p3.ax,p,p) +o=o.a +o=A.bH(!1,B.a4,!0,p,!0,p,p,!1,p,p,p,p,p,!1,p,p,p,j,p,k,o==null?p:A.O(o,p,B.ac,p,p,p,p,p),p) +k=n.gr4() +if(k==null)k=0 +j=n.gr4() +j=B.e.an((j==null?0:j)*100) +s=q.w +r=A.db(B.bD,p,B.tw,p,s===0?p:new A.ayt(q,b,n),p,p,p,p,B.eG) +l.push(A.dD(new A.b8(B.e7,A.cO(A.a([o,new A.KO(k,p,p,p,p,""+j+"%",p),A.dd(A.a([r,A.db(B.bD,p,B.tF,p,s>=q.x-1?p:new A.ayu(q,b,n),p,p,p,p,B.eG)],m),B.w,B.D,B.T)],m),B.cS,B.D,B.T),p),1)) +l.push(A.aLY(p,new A.ayv(q,n,b),new A.cE(B.cO,B.t),t.z)) +return A.pI(new A.b8(B.bC,A.dd(l,B.w,B.D,B.T),p),p,p,B.j4,p)}} +A.ayw.prototype={ +$0(){var s=0,r=A.y(t.P),q=this,p,o,n +var $async$$0=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:p=q.a.aa(0,$.nT(),t.vm) +o="/download/"+q.b+"/chapter/"+q.c +n=t.z +s=2 +return A.t(p.a.zU(0,o,n,n),$async$$0) +case 2:s=q.d?3:4 +break +case 3:s=5 +return A.t(p.a.rl(0,o,n,n),$async$$0) +case 5:case 4:return A.w(null,r)}}) +return A.x($async$$0,r)}, +$S:52} +A.ayr.prototype={ +$0(){var s,r=null,q=this.b,p=q==null +if((p?r:q.gd8(q))==="Downloading"){q=p?r:q.gr4() +q=""+B.e.an((q==null?0:q)*100)+"%"}else if((p?r:q.gd8(q))==="Error"){s=p?r:q.gd8(q) +q=p?r:q.gNd() +q=A.h(s)+"("+A.h(q)+")"}else q=p?r:q.gd8(q) +this.a.sk(0,q) +return r}, +$S:5} +A.ays.prototype={ +$0(){var s=this.a.ghS() +s.toString +s=A.py(new A.j3(s,null)) +return A.bd(this.b).dv(s,null,t.z)}, +$S:0} +A.ayt.prototype={ +$0(){var s,r=this.b.aa(0,$.nT(),t.vm),q=this.c,p=q.ghS() +p.toString +q=q.gwD() +q.toString +s=t.z +return r.a.MA("/download/"+p+"/chapter/"+q+"/reorder/"+(this.a.w-1),s,s)}, +$S:0} +A.ayu.prototype={ +$0(){var s,r=this.b.aa(0,$.nT(),t.vm),q=this.c,p=q.ghS() +p.toString +q=q.gwD() +q.toString +s=t.z +return r.a.MA("/download/"+p+"/chapter/"+q+"/reorder/"+(this.a.w+1),s,s)}, +$S:0} +A.ayv.prototype={ +$1(a){var s,r,q,p,o,n=this,m=null,l=A.a([],t.nm),k=n.b +if(k.gd8(k)==="Error")l.push(A.n3(A.O(A.A(a,B.h,t.J).gjP(),m,m,m,m,m,m,m),new A.ayn(n.a,n.c,k),t.z)) +s=t.J +r=A.A(a,B.h,s) +q=n.a +p=n.c +o=t.z +l.push(A.n3(A.O(r.gks(r),m,m,m,m,m,m,m),new A.ayo(q,p,k),o)) +r=q.w +if(r!==0)l.push(A.n3(A.O(A.A(a,B.h,s).gnf(),m,m,m,m,m,m,m),new A.ayp(p,k),o)) +if(r=600,o,new A.ayH(b,p))}else{o=A.A(a,B.h,s) +o=A.O(o.gij(o),q,q,q,q,q,q,q) +return A.a11(B.UB,A.aS(a,q,r).w.a.a>=600,o,new A.ayI(b,p))}}} +A.ayH.prototype={ +$0(){var s=0,r=A.y(t.H),q=this,p,o +var $async$$0=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:p=t.H +o=A +s=2 +return A.t(A.dw(q.a.aa(0,$.nT(),t.vm).gO5(),p),$async$$0) +case 2:o.hq(b,q.b,!1,p) +return A.w(null,r)}}) +return A.x($async$$0,r)}, +$S:2} +A.ayI.prototype={ +$0(){var s=0,r=A.y(t.H),q=this,p,o +var $async$$0=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:p=t.H +o=A +s=2 +return A.t(A.dw(q.a.aa(0,$.nT(),t.vm).gagg(),p),$async$$0) +case 2:o.hq(b,q.b,!1,p) +return A.w(null,r)}}) +return A.x($async$$0,r)}, +$S:2} +A.iv.prototype={ +rY(a){return this.aEL(a)}, +aEL(a){var s=0,r=A.y(t.l8),q,p=this,o,n,m +var $async$rY=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:n=new A.hP(new A.aD(new A.a8($.a9,t.Ic),t.L4)) +m=p.a +m===$&&A.b() +m.kj(n.gdP(n)) +s=3 +return A.t(m.M($.fl(),t.W).aex(n,a),$async$rY) +case 3:o=c +m.ic() +q=o +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$rY,r)}, +vr(a,b){return this.aNp(0,b)}, +aNp(a,b){var s=0,r=A.y(t.H),q=this,p,o,n +var $async$vr=A.u(function(c,d){if(c===1)return A.v(d,r) +while(true)switch(s){case 0:o=new A.hP(new A.aD(new A.a8($.a9,t.Ic),t.L4)) +n=q.a +n===$&&A.b() +n.kj(o.gdP(o)) +s=2 +return A.t(A.dw(new A.aIl(q,o,b),t.l8),$async$vr) +case 2:p=d +n.ic() +if(p.ghw(p)!=null){q.got().oL(0) +n=p.KC(q.got().gjj()) +q.got().sd8(0,n)}else q.got().sd8(0,p) +return A.w(null,r)}}) +return A.x($async$vr,r)}} +A.aIl.prototype={ +$0(){var s=this.a,r=s.a +r===$&&A.b() +r=r.M($.fl(),t.W) +s=s.b +s===$&&A.b() +return r.C1(this.b,s,this.c)}, +$S:832} +A.it.prototype={ +rY(a){return this.aEK(a)}, +aEK(a){var s=0,r=A.y(t.U_),q,p=this,o,n,m +var $async$rY=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:n=new A.hP(new A.aD(new A.a8($.a9,t.Ic),t.L4)) +m=p.a +m===$&&A.b() +m.kj(n.gdP(n)) +s=3 +return A.t(m.M($.fl(),t.W).BV(n,a,!1),$async$rY) +case 3:o=c +m.ic() +q=o +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$rY,r)}, +vr(a,b){return this.aNo(0,b)}, +aNo(a,b){var s=0,r=A.y(t.H),q=this,p,o,n +var $async$vr=A.u(function(c,d){if(c===1)return A.v(d,r) +while(true)switch(s){case 0:o=new A.hP(new A.aD(new A.a8($.a9,t.Ic),t.L4)) +n=q.a +n===$&&A.b() +n.kj(o.gdP(o)) +s=2 +return A.t(A.dw(new A.aHK(q,o,b),t.U_),$async$vr) +case 2:p=d +n.ic() +if(p.ghw(p)!=null){q.got().oL(0) +n=p.KC(q.got().gjj()) +q.got().sd8(0,n)}else q.got().sd8(0,p) +return A.w(null,r)}}) +return A.x($async$vr,r)}} +A.aHK.prototype={ +$0(){var s=this.a,r=s.a +r===$&&A.b() +r=r.aa(0,$.fl(),t.W) +s=s.b +s===$&&A.b() +return r.BV(this.b,s,this.c)}, +$S:833} +A.bfV.prototype={ +$1(a){var s,r,q,p +if(a==null)return +for(s=J.ao(a),r=this.a;s.u();){q=s.gH(s) +p=q.grr() +if(!(p==null||p.length===0)){q=q.grr() +q.toString +r.G(0,q)}}}, +$S:834} +A.jH.prototype={ +c_(a,b){return this.aOT(0,b)}, +aOT(a,b){var s=0,r=A.y(t.z),q=this,p,o,n +var $async$c_=A.u(function(c,d){if(c===1)return A.v(d,r) +while(true)switch(s){case 0:s=2 +return A.t(A.dw(new A.aHE(q,b),t.H),$async$c_) +case 2:p=q.a +p===$&&A.b() +o=q.b +o===$&&A.b() +o=A.ot(o) +n=p.e +n===$&&A.b() +n.kd(o) +p.a7(b==null?"flutter_scanlator":b) +return A.w(null,r)}}) +return A.x($async$c_,r)}} +A.aHE.prototype={ +$0(){var s,r="flutter_scanlator",q=this.a,p=q.a +p===$&&A.b() +p=p.aa(0,$.fl(),t.W) +q=q.b +q===$&&A.b() +s=this.b +return p.vl(r,q,s==null?r:s)}, +$S:2} +A.bfS.prototype={ +$1(a){var s,r=this,q=r.a +if(q!=null){s=a.gh3(a) +q=B.b0.yt(q,s!==!0)}else q=!1 +if(q)return!1 +q=r.b +if(q!=null){s=a.gfE(a) +q=B.b0.yt(q,s===!0)}else q=!1 +if(q)return!1 +q=r.c +if(q!=null){s=a.gfU() +q=B.b0.yt(q,s===!0)}else q=!1 +if(q)return!1 +q=r.d +if(q!=="flutter_scanlator"&&a.grr()!==q)return!1 +return!0}, +$S:26} +A.bfT.prototype={ +$2(a,b){var s,r,q=this.a?1:-1 +switch(this.b.a){case 2:s=a.gAq() +if(s==null)s=0 +r=b.gAq() +s=B.f.bM(s,r==null?0:r) +break +case 0:s=a.gdM(a) +if(s==null)s=0 +r=b.gdM(b) +s=B.f.bM(s,r==null?0:r) +break +case 1:s=a.gGw() +if(s==null)s=0 +r=b.gGw() +s=B.f.bM(s,r==null?0:r) +break +default:s=null}return s*q}, +$S:836} +A.bfU.prototype={ +$1(a){var s=A.a([],t.D3),r=a==null?null:J.lC(a,this.a) +if(r!=null)B.b.I(s,r) +B.b.fz(s,this.b) +return s}, +$S:837} +A.bfk.prototype={ +$1(a){var s=a.gh3(a) +return s===!1}, +$S:26} +A.bfl.prototype={ +$1(a){var s=a.gh3(a) +return s===!1}, +$S:26} +A.bfu.prototype={ +$1(a){return A.h(a.gdM(a))===this.a}, +$S:26} +A.xE.prototype={ +aP(){var s=this.a +s===$&&A.b() +return this.vc(0,s,B.xD,B.qH,"chapterSort")}} +A.xF.prototype={ +aP(){var s=this.a +s===$&&A.b() +return this.fb(0,s,!1,"chapterSortDirection")}} +A.xB.prototype={ +aP(){var s=this.a +s===$&&A.b() +return this.fb(0,s,null,"chapterFilterDownloaded")}} +A.xC.prototype={ +aP(){var s=this.a +s===$&&A.b() +return this.fb(0,s,null,"chapterFilterUnread")}} +A.xA.prototype={ +aP(){var s=this.a +s===$&&A.b() +return this.fb(0,s,null,"chapterFilterBookmarked")}} +A.is.prototype={ +A(a){return this.aEJ(a)}, +aEJ(a){var s=0,r=A.y(t.Em),q,p=this,o,n,m,l,k +var $async$A=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:k=p.a +k===$&&A.b() +s=3 +return A.t(k.M($.fl(),t.W).C2(a),$async$A) +case 3:o=c +k=A.F(t.N,t.oo) +n=J.ao(o==null?A.a([],t.vN):o) +for(;n.u();){m=n.gH(n) +l=m.gaK(m) +k.p(0,A.h(l==null?"":l),m)}q=k +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$A,r)}, +jg(a){var s=0,r=A.y(t.H),q=this,p,o +var $async$jg=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:p=t.IL +o=A +s=2 +return A.t(A.dw(new A.aHA(q),p),$async$jg) +case 2:p=o.nZ(c,new A.aHB(),p,t.Em) +q.got().sd8(0,p) +return A.w(null,r)}}) +return A.x($async$jg,r)}} +A.aHA.prototype={ +$0(){var s=this.a,r=s.a +r===$&&A.b() +r=r.M($.fl(),t.W) +s=s.b +s===$&&A.b() +return r.C2(s)}, +$S:103} +A.aHB.prototype={ +$1(a){var s,r,q=A.F(t.N,t.oo),p=J.ao(a==null?A.a([],t.vN):a) +for(;p.u();){s=p.gH(p) +r=s.gaK(s) +q.p(0,A.h(r==null?"":r),s)}return q}, +$S:838} +A.a36.prototype={ +$1$mangaId(a){return A.bj9(a)}, +fP(a){return A.bj9(a.dy)}, +gfi(){return null}} +A.L6.prototype={ +bJ(a){var s=null,r=t.B +return new A.ahW(s,!1,this,A.a([],t.Rc),A.a([],r),A.a([],t._),A.a([],r),A.cx(s,s,s,t.M,t.K))}, +l(a,b){if(b==null)return!1 +return b instanceof A.L6&&b.dy===this.dy}, +gv(a){return A.zY(A.iJ(A.iJ(0,A.cU(A.o(this))),B.f.gv(this.dy)))}} +A.aIh.prototype={ +$1(a){return A.bTE(t.KM.a(a),this.a)}, +$S:839} +A.L7.prototype={} +A.ahW.prototype={} +A.a3_.prototype={ +$1$mangaId(a){return A.a30(a)}, +fP(a){return A.a30(a.dy)}, +gfi(){return null}} +A.L2.prototype={ +bJ(a){var s=null,r=t.B +return new A.ahR(s,!1,this,A.a([],t.d2),A.a([],r),A.a([],t._),A.a([],r),A.cx(s,s,s,t.M,t.K))}, +l(a,b){if(b==null)return!1 +return b instanceof A.L2&&b.dy===this.dy}, +gv(a){return A.zY(A.iJ(A.iJ(0,A.cU(A.o(this))),B.f.gv(this.dy)))}} +A.aHJ.prototype={ +$1(a){return A.bTD(t.dq.a(a),this.a)}, +$S:840} +A.L3.prototype={} +A.ahR.prototype={} +A.a0Z.prototype={ +$1$mangaId(a){return A.biE(a)}, +fP(a){return A.biE(a.dy)}, +gfi(){return null}} +A.JO.prototype={ +bJ(a){var s=null,r=t.B +return new A.ag6(s,!1,this,A.a([],t.qk),A.a([],r),A.a([],t._),A.a([],r),A.cx(s,s,s,t.M,t.K))}, +l(a,b){if(b==null)return!1 +return b instanceof A.JO&&b.dy===this.dy}, +gv(a){return A.zY(A.iJ(A.iJ(0,A.cU(A.o(this))),B.f.gv(this.dy)))}} +A.aBS.prototype={ +$1(a){return A.bSp(t.OJ.a(a),this.a)}, +$S:841} +A.JP.prototype={} +A.ag6.prototype={} +A.a1n.prototype={ +$3$chapterIndex$mangaId$shouldAscSort(a,b,c){return A.aDH(a,b,c)}, +$2$chapterIndex$mangaId(a,b){return this.$3$chapterIndex$mangaId$shouldAscSort(a,b,!0)}, +fP(a){return A.aDH(a.fr,a.dy,a.fx)}, +gfi(){return null}} +A.K9.prototype={ +bJ(a){var s=null,r=t.B +return new A.agq(s,!1,this,A.a([],t.Q0),A.a([],r),A.a([],t._),A.a([],r),A.cx(s,s,s,t.M,t.K))}, +l(a,b){if(b==null)return!1 +return b instanceof A.K9&&b.dy===this.dy&&b.fr===this.fr&&b.fx===this.fx}, +gv(a){var s=this +return A.zY(A.iJ(A.iJ(A.iJ(A.iJ(0,A.cU(A.o(s))),B.f.gv(s.dy)),B.c.gv(s.fr)),B.b0.gv(s.fx)))}} +A.aDI.prototype={ +$1(a){return A.bSL(t.HJ.a(a),this.b,this.a,this.c)}, +$S:842} +A.Ka.prototype={} +A.agq.prototype={} +A.acS.prototype={} +A.a37.prototype={ +$1$mangaId(a){return A.ot(a)}, +fP(a){return A.ot(a.fy)}, +gfi(){return null}} +A.L8.prototype={ +rh(a){return a.rY(this.fy)}, +bJ(a){var s=null,r=t.B +return new A.ahX(s,!1,new A.cd(A.aT(0,s,!1,t.pL),t.Io),new A.cd(A.aT(0,s,!1,t.dY),t.tb),s,s,s,s,this,A.a([],t.NQ),A.a([],r),A.a([],t._),A.a([],r),A.cx(s,s,s,t.M,t.K))}, +l(a,b){if(b==null)return!1 +return b instanceof A.L8&&b.fy===this.fy}, +gv(a){return A.zY(A.iJ(A.iJ(0,A.cU(A.o(this))),B.f.gv(this.fy)))}} +A.aIj.prototype={ +$0(){var s=new A.iv() +s.b=this.a +return s}, +$S:843} +A.aIk.prototype={} +A.ahX.prototype={} +A.acR.prototype={} +A.a2Z.prototype={ +$1$mangaId(a){return A.CF(a)}, +fP(a){return A.CF(a.fy)}, +gfi(){return null}} +A.L1.prototype={ +rh(a){return a.rY(this.fy)}, +bJ(a){var s=null,r=t.B +return new A.ahQ(s,!1,new A.cd(A.aT(0,s,!1,t.rY),t.dd),new A.cd(A.aT(0,s,!1,t.UO),t.jp),s,s,s,s,this,A.a([],t.d2),A.a([],r),A.a([],t._),A.a([],r),A.cx(s,s,s,t.M,t.K))}, +l(a,b){if(b==null)return!1 +return b instanceof A.L1&&b.fy===this.fy}, +gv(a){return A.zY(A.iJ(A.iJ(0,A.cU(A.o(this))),B.f.gv(this.fy)))}} +A.aHH.prototype={ +$0(){var s=new A.it() +s.b=this.a +return s}, +$S:844} +A.aHI.prototype={} +A.ahQ.prototype={} +A.acQ.prototype={} +A.a2Y.prototype={ +$1$mangaId(a){return A.L0(a)}, +fP(a){return A.L0(a.fx)}, +gfi(){return null}} +A.L_.prototype={ +rh(a){var s=a.a +s===$&&A.b() +s=A.bW(s.M(A.ot(this.fx),t.ms)) +if(s==null)s=null +else{s=s.gle() +s=s==null?null:s.grr()}return s==null?"flutter_scanlator":s}, +bJ(a){var s=null,r=t.B +return new A.ahO(s,!1,new A.cd(A.aT(0,s,!1,t.Df),t.PG),this,A.a([],t.sP),A.a([],r),A.a([],t._),A.a([],r),A.cx(s,s,s,t.M,t.K))}, +l(a,b){if(b==null)return!1 +return b instanceof A.L_&&b.fx===this.fx}, +gv(a){return A.zY(A.iJ(A.iJ(0,A.cU(A.o(this))),B.f.gv(this.fx)))}} +A.aHC.prototype={ +$0(){var s=new A.jH() +s.b=this.a +return s}, +$S:845} +A.aHD.prototype={} +A.ahO.prototype={} +A.acP.prototype={} +A.a2W.prototype={ +$1(a){return A.bj6(a)}, +fP(a){return A.bj6(a.fy)}, +gfi(){return null}} +A.KZ.prototype={ +rh(a){return a.A(this.fy)}, +bJ(a){var s=null,r=t.B +return new A.ahL(s,!1,new A.cd(A.aT(0,s,!1,t.Nj),t.S6),new A.cd(A.aT(0,s,!1,t.m4),t.Is),s,s,s,s,this,A.a([],t.x_),A.a([],r),A.a([],t._),A.a([],r),A.cx(s,s,s,t.M,t.K))}, +l(a,b){if(b==null)return!1 +return b instanceof A.KZ&&b.fy===this.fy}, +gv(a){return A.zY(A.iJ(A.iJ(0,A.cU(A.o(this))),B.f.gv(this.fy)))}} +A.aHy.prototype={ +$0(){var s=new A.is() +s.b=this.a +return s}, +$S:846} +A.aHz.prototype={} +A.ahL.prototype={} +A.ahM.prototype={} +A.ahN.prototype={} +A.ahP.prototype={} +A.ahT.prototype={} +A.ahS.prototype={} +A.aos.prototype={} +A.aov.prototype={} +A.aoA.prototype={} +A.aoB.prototype={} +A.aoC.prototype={} +A.aoD.prototype={} +A.aoE.prototype={} +A.aoF.prototype={} +A.a35.prototype={ +aJ(a,b){var s,r,q,p,o=this.f,n=A.ot(o),m=A.CF(o),l=A.a30(o),k=b.M(n,t.ms),j=b.M(l,t.uV),i=b.M(A.biE(o),t.ep) +o=$.b7.bm(new A.cW(A.F(t.S,t.o),null,t.gK),t.rh) +s=t.db +r=A.vI(new A.aIa(b,n),[n],s) +q=A.vI(new A.aIb(b,m),[m],s) +p=A.vI(new A.aIc(a,b,r,q,k),[a,r,q],t.N4) +$.b7.bm(new A.dz(new A.aId(j,k,p),[]),t.H) +return new A.zr(A.ih(k,a,new A.aIe(this,o,a,j,p,q,i,r),!1,p,!1,new A.aIf(a)),new A.aIg(this,b),null)}} +A.aIa.prototype={ +$1(a){return this.adU(a)}, +$0(){return this.$1(!1)}, +$C:"$1", +$R:0, +$D(){return[!1]}, +adU(a){var s=0,r=A.y(t.H),q,p=this +var $async$$1=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:s=3 +return A.t(J.bnF(p.a.aa(0,p.b.gcr(),t.cM),a),$async$$1) +case 3:q=c +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$$1,r)}, +$S:292} +A.aIb.prototype={ +$1(a){return this.adT(a)}, +$0(){return this.$1(!1)}, +$C:"$1", +$R:0, +$D(){return[!1]}, +adT(a){var s=0,r=A.y(t.H),q,p=this +var $async$$1=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:s=3 +return A.t(J.bnF(p.a.aa(0,p.b.gcr(),t.GV),a),$async$$1) +case 3:q=c +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$$1,r)}, +$S:292} +A.aIc.prototype={ +$1(a){var s=0,r=A.y(t.P),q=this,p,o,n,m,l +var $async$$1=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:l=q.a +if(l.f!=null&&a){p=q.b.aa(0,A.eA(l),t.g) +o=A.A(l,B.h,t.J) +J.bnI(p,o.glz(o),!0)}s=2 +return A.t(q.c.$1(a),$async$$1) +case 2:s=3 +return A.t(q.d.$1(a),$async$$1) +case 3:if(l.f!=null&&a){p=q.e +o=q.b +n=t.g +m=t.J +if(p.ghw(p)!=null)o.aa(0,A.eA(l),n).H9(A.A(l,B.h,m).gjH()) +else J.bnI(o.aa(0,A.eA(l),n),A.A(l,B.h,m).go6(),!0)}return A.w(null,r)}}) +return A.x($async$$1,r)}, +$0(){return this.$1(!1)}, +$C:"$1", +$R:0, +$D(){return[!1]}, +$S:848} +A.aId.prototype={ +$0(){if(!this.a.gjI()&&!this.b.gjI())this.c.$0() +return}, +$S:5} +A.aIg.prototype={ +$0(){var s=0,r=A.y(t.y),q,p=this,o,n +var $async$$0=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:n=p.a.r +if(n!=null){o=p.b +n=A.Io(n) +if(o.f==null)A.q(A.R(u.w)) +o.glV().kd(n)}q=!0 +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$$0,r)}, +$S:130} +A.aIe.prototype={ +$1(a){var s,r,q,p,o,n,m,l,k,j,i=this,h=null,g=i.b +if(J.jp(g.a)){s=A.db(h,h,B.n1,h,new A.aI3(g),h,h,h,h,h) +r=i.c +q=A.A(r,B.h,t.J) +q.toString +q=A.O(q.ln(J.aZ(g.a)),h,h,h,h,h,h,h) +p=i.d +q=A.eh(A.a([A.db(h,h,B.UZ,h,new A.aI4(p,g),h,h,h,h,h),A.db(h,h,B.UA,h,new A.aI5(p,g),h,h,h,h,h),new A.a5f(p,g,h)],t.p),h,h,h,h,s,q) +s=q}else{s=a==null?h:a.ghk(a) +s=A.O(s==null?A.A(i.c,B.h,t.J).geq():s,h,h,h,h,h,h,h) +r=A.a([],t.p) +q=i.c +if(A.aS(q,h,t.l).w.a.a>=600)r.push(A.db(h,h,B.Uw,h,new A.aI6(i.e),h,h,h,h,h)) +p=i.a +r.push(new A.ej(new A.aI7(p),h)) +r.push(A.aLY(B.n2,new A.aI8(p,i.e),new A.cE(B.cO,B.t),t.z)) +s=A.eh(r,h,h,h,h,h,s) +r=q}q=i.a +p=q.f +o=A.bis(new A.xD(p,h),h,384) +n=J.jp(g.a)?A.bqL(i.f,!0,g):h +m=i.r +if(m!=null&&J.ce(g.a)){l=A.aS(r,h,t.l).w +if(a==null)k=h +else{k=a.gVG() +k=k==null?h:k.gdM(k)}j=t.J +if(k!=null){k=A.A(r,B.h,j) +k=k.gh4(k)}else{k=A.A(r,B.h,j) +k=k.gc0(k)}m=A.a11(B.UI,l.a.a>=600,A.O(k,h,h,h,h,h,h,h),new A.aI9(q,m,r)) +q=m}else q=h +if(a!=null){m=i.d +l=i.e +k=i.w +g=A.aS(r,h,t.l).w.a.a>=600?new A.Xy(a,p,i.f,k,l,g,m,h):new A.a8T(p,a,l,g,m,k,h)}else{g=t.J +p=A.A(r,B.h,g).gki() +g=A.A(r,B.h,g) +p=A.hU(A.eM(!1,A.O(g.gfd(g),h,h,h,h,h,h,h),B.l,h,h,h,h,h,i.e,h,h),p) +g=p}return A.e_(s,h,g,h,n,o,!0,!1,!1,q,h)}, +$S:849} +A.aI3.prototype={ +$0(){var s=A.F(t.S,t.o) +this.a.sk(0,s) +return s}, +$S:0} +A.aI4.prototype={ +$0(){var s,r,q,p,o=A.a([],t.D3),n=A.bW(this.a) +if(n!=null)B.b.I(o,n) +n=A.F(t.S,t.o) +for(s=o.length,r=0;r=600)A.oO(s).FN() +else A.blY(new A.aI_(this.a),B.E,s,new A.cE(B.q3,B.t),t.z)}, +$S:0} +A.aI_.prototype={ +$1(a){return new A.xD(this.a.f,null)}, +$S:850} +A.aI8.prototype={ +$1(a){var s=null,r=t.J,q=t.z,p=A.a([A.n3(A.O(A.A(a,B.h,r).gj2(),s,s,s,s,s,s,s),new A.aI0(this.a,a),q)],t.nm) +if(!(A.aS(a,s,t.l).w.a.a>=600)){r=A.A(a,B.h,r) +p.push(A.n3(A.O(r.gfd(r),s,s,s,s,s,s,s),new A.aI1(this.b),q))}return p}, +$S:104} +A.aI0.prototype={ +$0(){return A.tD(new A.aHZ(this.a,this.b),t.z)}, +$S:0} +A.aHZ.prototype={ +$0(){return A.fk(new A.aHY(this.a),this.b,t.z)}, +$S:36} +A.aHY.prototype={ +$1(a){return A.azd(this.a.f,null)}, +$S:119} +A.aI1.prototype={ +$0(){return this.a.$1(!0)}, +$S:0} +A.aI9.prototype={ +$0(){var s=this.b,r=s.ghS() +if(r==null)r=this.a.f +s=s.gdM(s) +s=A.mw(new A.i4(r,s==null?0:s,null,null,!0)) +A.bd(this.c).dv(s,null,t.z)}, +$S:0} +A.aIf.prototype={ +$1(a){var s=null +return A.e_(A.eh(s,s,s,s,s,s,A.O(A.A(this.a,B.h,t.J).geq(),s,s,s,s,s,s,s)),s,a,s,s,s,!0,!1,!1,s,s)}, +$S:135} +A.a5f.prototype={ +A(a){return A.aLY(B.n2,new A.aJT(this),new A.cE(B.cO,B.t),t.z)}} +A.aJT.prototype={ +$1(a){var s=null,r=this.a,q=t.J,p=t.z +return A.a([A.n3(A.O(A.A(a,B.h,q).gpe(),s,s,s,s,s,s,s),new A.aJQ(r),p),A.n3(A.O(A.A(a,B.h,q).gpf(),s,s,s,s,s,s,s),new A.aJR(r),p),A.n3(A.O(A.A(a,B.h,q).gpd(),s,s,s,s,s,s,s),new A.aJS(r),p)],t.nm)}, +$S:104} +A.aJQ.prototype={ +$0(){var s,r,q,p,o=A.a([],t.D3),n=this.a,m=A.bW(n.c) +if(m!=null)B.b.I(o,m) +n=n.d +s=B.b.ab0(o,new A.aJP(J.rT(J.jq(n.a)))) +r=Math.min(o.length,s+10) +m=A.oo(n.a,t.S,t.o) +for(q=s+1;q1){l=A.a([A.bH(!1,m,!0,m,!0,m,m,!1,m,m,m,m,m,!1,m,m,m,m,m,A.O(A.A(a,B.h,l).glH(),m,m,m,m,A.r(a).p3.as,m,m),m,m),A.bjy(m,i,new A.aHF(this,b),m,A.O(A.A(a,B.h,l).gm7(),m,m,m,m,m,m,m),"flutter_scanlator",j)],n) +for(s=k.gaj(k);s.u();){r=s.gH(s) +l.push(A.bjy(m,i,new A.aHG(this,b),m,A.O(r,m,m,m,m,m,m,m),r,j))}B.b.I(o,l)}return A.j2(o,m,m,!1)}} +A.aHF.prototype={ +$1(a){return J.bnN(this.b.aa(0,A.L0(this.a.e).gcr(),t.Hv),a)}, +$S:43} +A.aHG.prototype={ +$1(a){return J.bnN(this.b.aa(0,A.L0(this.a.e).gcr(),t.Hv),a)}, +$S:43} +A.xD.prototype={ +A(a){var s,r=null,q=t.J,p=A.A(a,B.h,q) +p=A.z4(p.ghd(p)) +q=A.A(a,B.h,q) +s=t.p +return A.bi9(A.e_(A.aWX(r,r,!1,A.a([p,A.z4(q.gkC(q))],s)),r,A.aWY(A.a([new A.a2X(this.c,r),B.a6v],s),r,r),r,r,r,!0,!1,!1,r,r),0,2)}} +A.a31.prototype={ +aJ(a,b){var s,r=A.a([B.Rn],t.p) +for(s=0;s<3;++s)r.push(new A.a32(B.xD[s],null)) +return A.j2(r,null,null,!1)}} +A.a32.prototype={ +aJ(a,b){var s=null,r=b.M($.bhe(),t.cu),q=b.M($.Wl(),t.u),p=this.e,o=A.O(p.h5(a),s,s,s,s,s,s,s) +return A.bsa(q!==!1,s,new A.aHL(b,q),new A.aHM(this,b),p===r,o)}} +A.aHL.prototype={ +$1(a){var s=this.a.aa(0,$.Wl().gcr(),t.Sr),r=this.b!==!0 +J.eX(s,r) +return r}, +$S:35} +A.aHM.prototype={ +$0(){var s=this.a.e +J.eX(this.b.aa(0,$.bhe().gcr(),t.LO),s) +return s}, +$S:0} +A.a34.prototype={ +aJ(a,b){var s,r,q,p,o,n,m,l,k,j=null,i=A.aS(a,j,t.l).w +i=$.b7.bm(new A.cW(i.a.a>=600,j,t.Kr),t.uh) +s=this.f +r=A.bqB(s,j,j,new A.aHS(a),!1) +q=s.gfJ() +p=A.Ox(j,j,j,j,j,j,j,j,j,B.bD,j,j,j,j,j,j,j,j,j) +o=t.J +n=t.p +p=A.a([new A.Xa(q===!0,new A.aHT(this,a,b),B.Uo,A.O(A.A(a,B.h,o).gfJ(),j,j,j,j,j,j,j),B.Uz,A.O(A.A(a,B.h,o).gm4(),j,j,j,j,j,j,j),p,j)],n) +q=s.gvq() +if(!(q==null||q.length===0)){q=A.Ox(j,j,j,j,j,j,j,j,j,B.bD,j,j,j,j,j,j,j,j,j) +p.push(A.bbE(B.tC,A.O(A.A(a,B.h,o).go9(),j,j,j,j,j,j,j),new A.aHU(this,a,b),q))}r=A.a([r,new A.b8(B.aT,A.dd(p,B.w,B.ko,B.T),j)],n) +q=s.gKR(s) +if(!(q==null||q.length===0)){q=s.gKR(s) +p=i.a?j:3 +p=A.O(A.h(q)+"\n",p,j,j,j,j,j,j) +q=A.r(a).as.a +q=A.a([new A.c8(0,B.a2,A.K(B.e.bi(178.5),q>>>16&255,q>>>8&255,q&255),B.i,0)],t.G) +o=A.r(a).as.a +o=A.K(0,o>>>16&255,o>>>8&255,o&255) +m=A.r(a).as.a +m=A.K(B.e.bi(76.5),m>>>16&255,m>>>8&255,m&255) +l=A.r(a).as.a +l=A.K(B.e.bi(127.5),l>>>16&255,l>>>8&255,l&255) +k=A.r(a).as.a +k=A.a([o,m,l,A.K(153,k>>>16&255,k>>>8&255,k&255)],t.t_) +r.push(new A.b8(B.mA,A.fr(B.Lu,A.a([p,A.jE(!1,j,!0,A.cP(j,A.f1(A.fR(i.a?B.TR:B.TQ,j,j,j),j,j),B.l,j,j,new A.dJ(j,j,j,j,q,new A.u2(B.eN,B.ix,B.cK,k,j,j),B.aE),j,j,B.a4,j,j),j,!0,j,j,j,j,j,j,j,j,j,new A.aHV(i),j,j,j,j,j,j,j)],n),B.E,B.aH,j),j))}if(i.a){i=A.a([],n) +s=s.gvy() +s=s==null?j:J.co(s,new A.aHW(),t.l7) +if(s!=null)B.b.I(i,s) +r.push(new A.b8(B.cU,A.b__(B.iq,i,B.pp,8,8),j))}else{i=A.a([],n) +s=s.gvy() +s=s==null?j:J.co(s,new A.aHX(),t.l7) +if(s!=null)B.b.I(i,s) +r.push(new A.b8(B.cU,A.ng(A.dd(i,B.w,B.D,B.T),j,B.C,j,j,B.aw),j))}return A.cO(r,B.cS,B.D,B.T)}} +A.aHS.prototype={ +$1(a){var s=A.bm7(new A.tE(a)) +return A.bd(this.a).dv(s,null,t.z)}, +$S:43} +A.aHT.prototype={ +$0(){var s=0,r=A.y(t.H),q=this,p,o,n +var $async$$0=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:p=t.P +s=2 +return A.t(A.dw(new A.aHR(q.a),p),$async$$0) +case 2:o=b +n=q.b +if(n.f!=null)A.hq(o,q.c.aa(0,A.eA(n),t.g),!1,p) +return A.w(null,r)}}) +return A.x($async$$0,r)}, +$S:2} +A.aHR.prototype={ +$0(){var s=0,r=A.y(t.P),q=this,p,o +var $async$$0=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:p=q.a +o=p.f.gfJ() +s=o===!0?2:4 +break +case 2:s=5 +return A.t(p.w.$0(),$async$$0) +case 5:s=3 +break +case 4:s=6 +return A.t(p.x.$0(),$async$$0) +case 6:case 3:s=7 +return A.t(p.r.$0(),$async$$0) +case 7:return A.w(null,r)}}) +return A.x($async$$0,r)}, +$S:52} +A.aHU.prototype={ +$0(){var s=0,r=A.y(t.H),q=this,p,o +var $async$$0=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:p=q.b +o=q.a.f.gvq() +if(o==null)o="" +A.nR(p,o,q.c.aa(0,A.eA(p),t.mk)) +return A.w(null,r)}}) +return A.x($async$$0,r)}, +$S:2} +A.aHV.prototype={ +$0(){var s=this.a,r=!s.a +s.sk(0,r) +return r}, +$S:0} +A.aHW.prototype={ +$1(a){var s=null +return A.bhS(s,A.O(a,s,s,s,s,s,s,s),s)}, +$S:856} +A.aHX.prototype={ +$1(a){var s=null +return new A.b8(B.e6,A.bhS(s,A.O(a,s,s,s,s,s,s,s),s),s)}, +$S:857} +A.a8T.prototype={ +aJ(a,b){var s,r=this,q=null,p=r.x,o=A.bW(p),n=A.ng(A.bqC(new A.aTP(r,b),r.f,new A.aTQ(r),new A.aTR(r,b)),q,B.C,q,q,B.R),m=A.A(a,B.h,t.J) +m.toString +s=o==null?q:J.aZ(o) +return A.qJ(A.bi2(q,q,q,B.C,q,B.dp,q,!1,B.R,q,!1,A.a([new A.iy(n,q),new A.iy(A.bH(!1,q,q,q,!0,q,q,!1,q,q,q,q,q,!1,q,q,q,q,q,A.O(m.lk(s==null?0:s),q,q,q,q,q,q,q),q,q),q),A.ih(p,a,new A.aTS(r,o,a),!1,new A.aTT(r),!1,new A.aTU(a)),B.ae7],t.p)),new A.aTV(r))}} +A.aTV.prototype={ +$0(){return this.a.r.$1(!0)}, +$S:2} +A.aTQ.prototype={ +$0(){return this.a.z.$1(!1)}, +$S:2} +A.aTR.prototype={ +$0(){var s=t.z +return this.b.aa(0,$.fl(),t.W).a.zU(0,"/manga/"+this.a.e+"/library",s,s)}, +$S:2} +A.aTP.prototype={ +$0(){var s=t.z +return this.b.aa(0,$.fl(),t.W).a.rl(0,"/manga/"+this.a.e+"/library",s,s)}, +$S:2} +A.aTS.prototype={ +$1(a){var s,r,q=null,p=a==null||J.ce(a),o=this.a +if(!p){p=this.b +p.toString +return new A.m6(new A.kx(new A.aTN(o,p),J.aZ(p),!0,!0,!0,A.rN(),q),q)}else{p=this.c +s=t.J +r=A.A(p,B.h,s).glj() +s=A.A(p,B.h,s) +return new A.iy(A.hU(A.eM(!1,A.O(s.gfd(s),q,q,q,q,q,q,q),B.l,q,q,q,q,q,new A.aTO(o),q,q),r),q)}}, +$S:858} +A.aTN.prototype={ +$2(a,b){var s=this.b,r=J.ak(s),q=J.fv(r.i(s,b)),p=this.a,o=r.i(s,b),n=p.w +s=J.jn(n.a,J.fv(r.i(s,b))) +return new A.wa(p.f,o,new A.aTL(p),new A.aTM(p),J.jp(n.a),s,new A.bP(A.h(q),t.O))}, +$S:859} +A.aTL.prototype={ +$0(){return this.a.r.$1(!1)}, +$S:2} +A.aTM.prototype={ +$1(a){var s,r,q +if(a.gaK(a)==null)return +s=this.a.w +r=s.a +q=a.gaK(a) +q.toString +s.sk(0,A.bja(r,q,a,t.S,t.o))}, +$S:169} +A.aTO.prototype={ +$0(){return this.a.z.$1(!0)}, +$S:0} +A.aTT.prototype={ +$0(){return this.a.r.$1(!1)}, +$S:0} +A.aTU.prototype={ +$1(a){return new A.iy(A.cZ(a,A.aS(this.a,null,t.l).w.a.b*0.5,null),null)}, +$S:860} +A.CH.prototype={ +A(a){var s=null,r=A.eh(s,B.u,s,s,s,s,s),q=$.as().Ep(3,3,B.cK),p=A.r(a).ax.CW.a +p=A.K(B.e.bi(25.5),p>>>16&255,p>>>8&255,p&255) +return A.dM(s,A.e_(r,B.u,A.asA(A.cP(s,new A.Kx(A.f1(A.nf(!1,s,this.c,s,!1,s,s),s,s),4,s),B.l,s,s,new A.dJ(p,s,s,s,s,s,B.aE),s,s,s,s,s),q),s,s,s,!0,!1,!1,s,s),B.C,!1,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,new A.aIi(a),s,s,s,s,!1,B.ai)}} +A.aIi.prototype={ +$0(){var s=A.bd(this.a).c +s===$&&A.b() +s.e7(null) +return null}, +$S:0} +A.Y2.prototype={ +$2$chapterIndex$mangaId(a,b){return A.Y4(a,b)}, +fP(a){return A.Y4(a.fx,a.fr)}, +gfi(){return null}} +A.Ir.prototype={ +bJ(a){var s=null,r=t.B +return new A.adY(s,!1,new A.cd(A.aT(0,s,!1,t.yq),t.AX),s,s,s,s,this,A.a([],t.pV),A.a([],r),A.a([],t._),A.a([],r),A.cx(s,s,s,t.M,t.K))}, +l(a,b){if(b==null)return!1 +return b instanceof A.Ir&&b.fr===this.fr&&b.fx===this.fx}, +gv(a){var s=A.bkK(A.bkK(A.bkK(0,A.cU(A.o(this))),B.f.gv(this.fr)),B.f.gv(this.fx)) +s=s+((s&67108863)<<3)&536870911 +s^=s>>>11 +return s+((s&16383)<<15)&536870911}} +A.avM.prototype={ +$1(a){return A.beH(t.eW.a(a),this.b,this.a)}, +$S:861} +A.Is.prototype={} +A.adY.prototype={} +A.aoe.prototype={} +A.a6V.prototype={ +aJ(a,b){var s=this,r=s.f,q=A.ot(r),p=A.Y4(s.r,r),o=b.M(q,t.ms),n=b.M(p,t.Zx),m=b.M($.bhh(),t.yZ),l=A.vI(new A.aNH(n,A.bm5(null,t.dN),A.vI(new A.aNI(s,n,b),[A.bW(n)],t.ef)),[n],t.Dp) +$.b7.bm(new A.dz(new A.aNJ(),[]),t.H) +return new A.zr(A.yz(!0,A.ih(o,a,new A.aNK(s,n,a,m,l,b,p),!0,new A.aNL(b,q),!1,null),!0,B.a4,!0,!0),new A.aNM(s,b,p),null)}} +A.aNI.prototype={ +$1(a){return this.adZ(a)}, +adZ(a){var s=0,r=A.y(t.P),q=this,p,o,n +var $async$$1=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:n=A.bW(q.b) +if(n!=null){p=n.gh3(n) +if(p!==!0){p=n.gtB() +if(p==null||B.f.gd6(p))p=0 +else p.toString +p=a>=p-1 +o=p}else o=!0}else o=!1 +s=2 +return A.t(A.dw(new A.aNG(q.a,q.c,o,a),t.H),$async$$1) +case 2:return A.w(null,r)}}) +return A.x($async$$1,r)}, +$S:862} +A.aNG.prototype={ +$0(){var s=this,r=s.b.aa(0,$.fl(),t.W),q=s.a,p=s.c,o=p?0:s.d +return r.G1(q.r,q.f,new A.Fh(p,null,null,o))}, +$S:2} +A.aNH.prototype={ +$1(a){return this.adY(a)}, +adY(a){var s=0,r=A.y(t.H),q,p=this,o,n,m,l,k,j +var $async$$1=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:m=p.a +l=A.bW(m) +k=l==null +j=k?null:l.gh3(l) +if(j!==!0){k=k?null:l.gxl() +if(k==null||B.f.gd6(k))k=0 +else k.toString +k=k>=a}else k=!0 +if(k){s=1 +break}k=p.b +o=k.a +j=o==null +n=j?null:o.b!=null +if(n===!0)if(!j)o.aQ(0) +m=A.bW(m) +m=m==null?null:m.gtB() +if(m==null||B.f.gd6(m))m=0 +else m.toString +j=p.c +if(a>=m-1)j.$1(a) +else k.a=A.d2(B.e4,new A.aNF(j,a)) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$$1,r)}, +$S:863} +A.aNF.prototype={ +$0(){return this.a.$1(this.b)}, +$S:0} +A.aNJ.prototype={ +$0(){A.EC(B.Kq,null) +return new A.aNE()}, +$S:82} +A.aNE.prototype={ +$0(){return A.EC(B.Kr,B.a1s)}, +$S:0} +A.aNM.prototype={ +$0(){var s=0,r=A.y(t.y),q,p=this,o,n +var $async$$0=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:n=p.b +if(n.f==null)A.q(A.R(u.w)) +n.glV().kd(p.c) +o=A.CF(p.a.f) +if(n.f==null)A.q(A.R(u.w)) +n.glV().kd(o) +q=!0 +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$$0,r)}, +$S:130} +A.aNK.prototype={ +$1(a){var s=this +if(a==null)return B.a_ +return A.ih(s.b,s.c,new A.aNC(s.a,a,s.d,s.e),!0,new A.aND(s.f,s.r),!1,null)}, +$S:865} +A.aNC.prototype={ +$1(a){var s,r,q,p=this +if(a==null)return B.a_ +s=p.b +r=s.gle() +q=r==null?null:r.ghY() +if(q==null)q=p.c +$label0$0:{if(B.ol===q){s=A.bjJ(a,s,p.d,!1,B.R,p.a.w) +break $label0$0}if(B.oi===q){s=A.bjJ(a,s,p.d,!0,B.aw,p.a.w) +break $label0$0}if(B.oj===q){s=A.YG(a,s,p.d,!1,B.aw,p.a.w,!1) +break $label0$0}if(B.ok===q){s=A.YG(a,s,p.d,!0,B.aw,p.a.w,!1) +break $label0$0}if(B.oh===q){s=A.bjJ(a,s,p.d,!1,B.aw,!1) +break $label0$0}if(B.og===q){s=A.YG(a,s,p.d,!1,B.R,p.a.w,!0) +break $label0$0}if(B.hV===q){s=A.YG(a,s,p.d,!1,B.R,p.a.w,!1) +break $label0$0}if(B.kP===q||q==null){s=A.YG(a,s,p.d,!1,B.R,p.a.w,!1) +break $label0$0}s=null}return s}, +$S:866} +A.aND.prototype={ +$0(){return this.a.jN(0,this.b,t.H)}, +$S:0} +A.aNL.prototype={ +$0(){return this.a.jN(0,this.b,t.H)}, +$S:0} +A.Y5.prototype={ +aJ(a,b){var s,r,q,p,o,n,m,l=this,k=null,j=l.e,i=j.gaK(j) +i.toString +s=l.f +r=b.M(A.aDH(A.h(s.gdM(s)),i,!0),t.cq) +q=b.M($.aqO(),t.dr) +i=j.gle() +if((i==null?k:i.ghi())!==B.er){i=j.gle() +if((i==null?k:i.ghi())!=null){j=j.gle() +j=(j==null?k:j.ghi())===B.fB}else j=!0 +p=j&&q===B.er}else p=!0 +j=A.a([B.fI],t.p) +if(p)i=(r==null?k:r.b)!=null&&l.r +else i=!1 +if(i){i=A.A(a,B.h,t.J) +i.toString +if(r==null)o=k +else{o=r.b +o=o==null?k:o.BX(a)}j.push(new A.b8(B.j3,A.biD(A.O(i.pV(o==null?"":o),k,k,k,k,k,k,k),new A.avN(r,a)),k))}i=l.r +o=t.J +if(i){n=A.A(a,B.h,o) +n=n.gc0(n)}else{n=A.A(a,B.h,o) +n=n.gmQ(n)}m=A.r(a).p3.w +j.push(A.O(n,k,B.ac,k,k,m==null?k:m.a7T(B.eb),k,k)) +s=s.BX(a) +n=A.r(a).p3.z +j.push(A.O(s,k,B.ac,k,k,n==null?k:n.a7T(B.eb),k,k)) +if(p)i=(r==null?k:r.a)!=null&&!i +else i=!1 +if(i){i=A.A(a,B.h,o) +i.toString +if(r==null)s=k +else{s=r.a +s=s==null?k:s.BX(a)}j.push(new A.b8(B.j3,A.biD(A.O(i.pR(s==null?"":s),k,k,k,k,k,k,k),new A.avO(r,a)),k))}j.push(B.fI) +return A.f1(A.ng(A.cO(j,B.w,B.dg,B.T),k,B.C,k,k,B.R),k,k)}} +A.avN.prototype={ +$0(){var s=this.a.b,r=s.ghS() +r.toString +s=J.rS(s) +s.toString +s=A.mw(new A.i4(r,s,null,null,!1)) +return A.bd(this.b).oX(s,null,t.X)}, +$S:0} +A.avO.prototype={ +$0(){var s=this.a.a,r=s.ghS() +r.toString +s=J.rS(s) +s.toString +s=A.mw(new A.i4(r,s,null,null,!1)) +return A.bd(this.b).oX(s,null,t.X)}, +$S:0} +A.a5O.prototype={ +A(a){var s,r,q=this,p=null,o=q.c,n=A.O(""+(o+1),p,p,p,p,p,p,p),m=q.f,l=q.d +o=Math.min(o,l) +s=l-1 +o=A.bs5(Math.max(s,1),p,s,0,new A.aL3(q),o) +s=m?-1:1 +r=A.a([n,A.dD(new A.p1(A.u7(s,1,1),B.X,!0,p,o,p),1),A.O(""+l,p,p,p,p,p,p,p)],t.p) +o=A.r(a).RG.a +if(o==null)o=p +else{n=B.e.bi(178.5) +o=o.a +o=A.K(n,o>>>16&255,o>>>8&255,o&255)}if(m){n=t.H8 +n=A.aa(new A.d1(r,n),!0,n.h("ax.E"))}else n=r +return A.pI(new A.b8(B.cU,A.dd(n,B.w,B.D,B.T),p),p,o,p,new A.cE(B.LR,B.t))}} +A.aL3.prototype={ +$1(a){return this.a.e.$1(B.e.an(a))}, +$S:46} +A.YF.prototype={ +aJ(a,b){var s,r,q,p,o=this,n=null,m=t.Om,l=t.N8,k=$.b7.bm(new A.cW(0,n,m),l),j=$.b7.bm(new A.ib(new A.awE(),B.cY,t.Md),t.Cr),i=$.b7.bm(new A.ib(new A.awF(),B.cY,t.lg),t.Wq),h=o.r,g=h.gh3(h) +if(g===!0)g=0 +else{g=h.gxl() +if(g==null||B.f.gd6(g))g=0 +else g.toString}l=$.b7.bm(new A.cW(g,n,m),l) +m=l.a +g=t.H +$.b7.bm(new A.dz(new A.awG(o,l),[m]),g) +$.b7.bm(new A.dz(new A.awH(i,l),[]),g) +g=b.aa(0,$.bhi(),t.u) +s=g!==!1 +m=o.y +l=l.a +g=k.a>=2?B.Fh:n +r=h.gh3(h) +if(r===!0)r=0 +else{r=h.gxl() +if(r==null||B.f.gd6(r))r=0 +else r.toString}q=h.gtB() +if(q==null)q=0 +p=t.l +p=m===B.R?A.aS(a,n,p).w.a.b*2:A.aS(a,n,p).w.a.a*2 +return A.brx(h,A.Ak(n,new A.Nn(q,new A.awI(o),new A.awJ(o),j,i,n,r,m,o.z,g,p,n)),l,o.f,new A.awK(j),new A.awL(i,s,j),new A.awM(i,s,j),m,o.Q,k)}} +A.awE.prototype={ +$0(){return new A.xg()}, +$S:867} +A.awF.prototype={ +$0(){return new A.Cd(A.ed(A.a([],t.zX),t.Hk))}, +$S:868} +A.awG.prototype={ +$0(){this.a.x.$1(this.b.a) +return}, +$S:5} +A.awH.prototype={ +$0(){var s=this.a,r=new A.awN(s,this.b) +s.a.P(0,r) +return new A.awB(s,r)}, +$S:82} +A.awN.prototype={ +$0(){var s,r=J.fJ(this.a.a.a),q=B.b.gai(r) +if(!q&&r.length===1)this.b.sk(0,B.b.gN(r).a) +else{s=new A.be(r,new A.awC(),A.ab(r).h("be<1>")) +q=s.gai(s) +if(q)return +this.b.sk(0,s.lr(0,new A.awD()).a)}}, +$S:5} +A.awC.prototype={ +$1(a){var s=a.c +return s>=0&&s<=1}, +$S:148} +A.awD.prototype={ +$2(a,b){return b.c>a.c?b:a}, +$S:252} +A.awB.prototype={ +$0(){return this.a.a.J(0,this.b)}, +$S:0} +A.awK.prototype={ +$1(a){this.a.a.R1(0,a) +return null}, +$S:38} +A.awM.prototype={ +$0(){var s=B.b.gN(J.fJ(this.a.a.a)),r=this.c,q=s.a,p=s.b+0.8 +if(this.b)r.Y1(0,p,B.bp,B.bu,q) +else r.a.R1(p,q)}, +$S:0} +A.awL.prototype={ +$0(){var s,r=J.jo(this.a.a.a),q=r.c,p=r.a +if(q>1)s=r.b-0.8 +else{++p +s=0}q=this.c +if(this.b)q.Y1(0,s,B.bp,B.bu,p) +else q.a.R1(s,p)}, +$S:0} +A.awJ.prototype={ +$2(a,b){return this.a.w?B.fI:B.a_}, +$S:869} +A.awI.prototype={ +$2(a,b){var s,r,q,p,o,n=null,m=this.a,l=m.y,k=l===B.R,j=k?B.Md:B.Me,i=m.r,h=i.gdM(i) +h.toString +s=m.f +r=s.gaK(s) +r.toString +q=A.nf(!0,j,"/manga/"+r+"/chapter/"+h+"/page/"+b,new A.awz(),!0,n,new A.awA(m,a)) +j=b===0 +if(!j){h=i.gtB() +h=b===(h==null?1:h)-1}else h=!0 +if(h){p=l===B.aw&&m.z +m=!k?A.aS(a,n,t.l).w.a.a*0.5:n +o=A.cZ(new A.Y5(s,i,j,n),n,m) +m=t.p +return A.bFZ(j!==p?A.a([o,q],m):A.a([q,o],m),B.hd,l,n,B.D,B.aa,n,n,B.cr)}else return q}, +$S:33} +A.awz.prototype={ +$3(a,b,c){var s=null +return A.f1(A.bor(s,s,s,s,s,0,s,4,c.gr4(),s),s,s)}, +$S:870} +A.awA.prototype={ +$1(a){var s=null,r=this.a.y===B.R,q=r?A.aS(this.b,s,t.l).w.a.b*0.7:s +return A.cZ(a,q,!r?A.aS(this.b,s,t.l).w.a.a*0.7:s)}, +$S:871} +A.a8B.prototype={ +aJ(a,b){var s,r,q,p=this,o=null,n=t.Om,m=t.N8,l=$.b7.bm(new A.cW(0,o,n),m),k=$.b7.bm(new A.ib(new A.aTd(),B.cY,t.p2),t.IG),j=p.r,i=j.gh3(j) +if(i===!0)i=0 +else{i=j.gxl() +if(i==null||B.f.gd6(i))i=0 +else i.toString}i=$.b7.bm(new A.Sf(i,!0,1,o),t.QA) +s=i.as +m=$.b7.bm(new A.cW(s,o,n),m) +n=m.a +s=t.H +$.b7.bm(new A.dz(new A.aTe(p,m,k,b),[n]),s) +$.b7.bm(new A.dz(new A.aTf(i,m),[i]),s) +s=b.aa(0,$.bhi(),t.u) +r=s!==!1 +n=p.y +m=m.a +s=l.a>=2?B.Fh:o +q=j.gtB() +if(q==null||B.f.gd6(q))q=0 +else q.toString +return A.brx(j,new A.D2(n,p.x,i,s,new A.kx(new A.aTg(p),q,!0,!0,!0,A.rN(),o),B.C,B.E,o),m,p.f,new A.aTh(i),new A.aTi(i,r),new A.aTj(i,r),n,p.z,l)}} +A.aTd.prototype={ +$0(){return $.bgM()}, +$S:872} +A.aTe.prototype={ +$0(){var s,r,q,p=this,o=p.a,n=p.b +o.w.$1(n.a) +s=n.a +if(s>0){n=o.r +n=n.gdM(n) +n.toString +r=o.f +r=r.gaK(r) +r.toString +A.Ih(p.c,p.d,"/manga/"+r+"/chapter/"+n+"/page/"+(s-1))}n=o.r +r=n.gtB() +if(r==null||B.f.gd6(r))r=0 +else r.toString +if(s=2)return +var s=this.b +s.sk(0,!s.a)}, +$S:0} +A.a6Y.prototype={ +A(a){var s,r,q,p,o,n=this,m=null,l=$.b7.bm(new A.cW(!1,m,t.Kr),t.uh),k=$.b7.bm(new A.cW(B.i,m,t.kA),t.Lm),j=k.a,i=t.l,h=A.aS(a,m,i).w.a,g=n.r,f=77.37*g*0.5 +f=Math.max(Math.min(j.a-f,h.a-f),-f) +s=37.9*g +h=Math.max(Math.min(j.b-s,h.b-s*1.25),-(s*0.5)) +j=new A.aNS(n,a) +r=new A.aNT(n,a) +q=A.aS(a,m,i).w +p=n.e===B.R +o=!p?n.f:0 +o=q.a.b*o +q=A.aS(a,m,i).w +p=p?n.f:0 +p=q.a.a*p +j=A.a([A.dM(B.aN,new A.b8(new A.aK(p,o,p,o),n.at,m),B.C,!1,m,m,m,m,new A.aNN(n,r,j),m,m,m,new A.aNO(k,l),new A.aNP(k),new A.aNQ(k,l),m,m,m,m,m,m,m,m,m,m,n.d,m,m,m,new A.aNR(n,r,j),!1,B.ai),new A.a6T(n.z,n.x,n.w,n.as,m)],t.p) +if(l.a){l=B.Kg.au(0,g) +k=k.a +A.aS(a,m,i).toString +j.push(A.hc(m,new A.Dw(B.Qy,B.a6s,new A.l(0,Math.max(0,Math.min(k.b,s))*0.5),2,l,m),m,m,f,m,h,m))}return A.fr(B.bs,j,B.E,B.aH,m)}} +A.aNS.prototype={ +$0(){var s,r=null,q=this.a,p=q.y +if((p==null?r:p.a)!=null){p=p.a +s=p.ghS() +s.toString +p=J.rS(p) +p.toString +q=A.mw(new A.i4(s,p,q.e!==B.R,r,!1)) +q=A.bd(this.b).oX(q,r,t.X)}else q=r +return q}, +$S:0} +A.aNT.prototype={ +$0(){var s,r=this.a,q=r.y +if((q==null?null:q.b)!=null){q=q.b +s=q.ghS() +s.toString +q=J.rS(q) +q.toString +r=A.mw(new A.i4(s,q,r.e!==B.R,!0,!1)) +r=A.bd(this.b).oX(r,null,t.X)}else r=null +return r}, +$S:0} +A.aNQ.prototype={ +$1(a){this.a.sk(0,a.b) +this.b.sk(0,!0)}, +$S:70} +A.aNO.prototype={ +$1(a){this.a.sk(0,a.b) +this.b.sk(0,!1)}, +$S:124} +A.aNP.prototype={ +$1(a){var s=a.b +this.a.sk(0,s) +return s}, +$S:97} +A.aNN.prototype={ +$1(a){var s=this.a +if(s.ax.a>=2)return +if(s.e===B.R&&s.Q){s=a.b +if(s==null)return +else if(s>8)this.b.$0() +else this.c.$0()}}, +$S:30} +A.aNR.prototype={ +$1(a){var s=this.a +if(s.ax.a>=2)return +if(s.e===B.aw&&s.Q){s=a.b +if(s==null)return +else if(s>8)this.b.$0() +else this.c.$0()}}, +$S:30} +A.aaF.prototype={ +Q3(a,b,c){return this.aq7(a,b,c)}, +aq7(a,b,c){var s=0,r=A.y(t.H) +var $async$Q3=A.u(function(d,e){if(d===1)return A.v(e,r) +while(true)switch(s){case 0:A.dw(new A.aZi(a,c),t.If).b9(new A.aZj(b,c),t.X) +return A.w(null,r)}}) +return A.x($async$Q3,r)}, +aJ(a,b){var s,r,q,p,o=null,n=t.S,m=t.dA,l=A.bxz(0,n,m),k=b.M($.Hq(),t.BA),j=$.bhq() +j=b.M(new A.rm(j,new A.aZp(),j.$ti.h("rm")),t.u) +s=j===!0 +j=$.b7.bm(new A.cW(A.F(n,t.o),o,t.gK),t.rh) +r=t.H +$.b7.bm(new A.dz(new A.aZq(this,l,k),[]),r) +$.b7.bm(new A.dz(new A.aZr(s,j,l),[s]),r) +r=J.ce(j.a)?B.ali:o +q=t.J +if(J.jp(j.a)){p=A.db(o,o,B.n1,o,new A.aZs(j),o,o,o,o,o) +q=A.A(a,B.h,q) +q.toString +q=A.eh(o,o,o,o,o,p,A.O(q.ln(J.aZ(j.a)),o,o,o,o,o,o,o))}else q=A.eh(B.a4G,o,o,o,o,o,A.O(A.A(a,B.h,q).glx(),o,o,o,o,o,o,o)) +p=J.jp(j.a)?A.bqL(new A.aZt(l),!1,j):o +return A.e_(q,o,A.qJ(A.br9(A.bjq(new A.aZu(l),new A.aZv(),new A.aZw(l,b,j),o,new A.aZx(l),m),l,n,m),new A.aZy(j,l)),o,p,o,!0,!1,!1,r,o)}} +A.aZi.prototype={ +$0(){var s=0,r=A.y(t.If),q,p=this +var $async$$0=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:s=3 +return A.t(p.a.GT(p.b),$async$$0) +case 3:q=b +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$$0,r)}, +$S:888} +A.aZj.prototype={ +$1(a){var s=this.a +return A.vT(a,new A.aZg(s,this.b),new A.aZh(s),t.If,t.X)}, +$S:889} +A.aZg.prototype={ +$1(a){var s,r,q,p,o,n,m,l +try{if(a!=null){o=a.gF5() +n=this.a +m=t.k3 +if(o===!0){s=A.a([],m) +r=a.giD(a) +if(r!=null)J.nU(s,r) +n.Kb(s,this.b+1)}else{q=A.a([],m) +p=a.giD(a) +if(p!=null)J.nU(q,p) +n.Kb(q,null)}}}catch(l){}}, +$S:890} +A.aZh.prototype={ +$2(a,b){this.a.shw(0,a) +return a}, +$S:276} +A.aZp.prototype={ +$1(a){var s,r,q=A.bW(a) +if(q==null)q=null +else{s=J.bK(q) +r=s.gGo(q) +q=r>0&&s.gGo(q)!==q.gX6()}return q}, +$S:891} +A.aZq.prototype={ +$0(){var s=this.b,r=s.x +r.b=!0 +r.a.push(new A.aZo(this.a,this.c,s)) +return}, +$S:5} +A.aZo.prototype={ +$1(a){return this.a.Q3(this.b,this.c,a)}, +$S:38} +A.aZr.prototype={ +$0(){var s +if(!this.a)try{this.b.sk(0,A.F(t.S,t.o)) +this.c.jg(0)}catch(s){}return null}, +$S:5} +A.aZs.prototype={ +$0(){var s=A.F(t.S,t.o) +this.a.sk(0,s) +return s}, +$S:0} +A.aZt.prototype={ +$0(){var s=0,r=A.y(t.H),q,p=this +var $async$$0=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:q=p.a.jg(0) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$$0,r)}, +$S:2} +A.aZy.prototype={ +$0(){var s=0,r=A.y(t.H),q=this +var $async$$0=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:q.a.sk(0,A.F(t.S,t.o)) +q.b.jg(0) +return A.w(null,r)}}) +return A.x($async$$0,r)}, +$S:2} +A.aZv.prototype={ +$1(a){return B.e_}, +$S:105} +A.aZu.prototype={ +$1(a){var s=null,r=this.a,q=J.cI(r.a.b) +return A.hU(A.eM(!1,A.O(A.A(a,B.h,t.J).gjP(),s,s,s,s,s,s,s),B.l,s,s,s,s,s,new A.aZn(r),s,s),q)}, +$S:72} +A.aZn.prototype={ +$0(){return this.a.jg(0)}, +$S:0} +A.aZx.prototype={ +$1(a){var s=null,r=t.J,q=A.A(a,B.h,r).gnm() +r=A.A(a,B.h,r) +return A.hU(A.eM(!1,A.O(r.gfd(r),s,s,s,s,s,s,s),B.l,s,s,s,s,s,new A.aZk(this.a),s,s),q)}, +$S:72} +A.aZk.prototype={ +$0(){return this.a.jg(0)}, +$S:0} +A.aZw.prototype={ +$3(a,b,c){var s,r,q,p,o,n,m=this,l=null,k=null +try{s=m.a.a.a +if(s==null)r=l +else{s=s[c-1].gf5() +r=s==null?l:s.gAq()}k=r}catch(q){k=null}s=m.c +p=s.a +o=b.gf5() +o=o.gaK(o) +o.toString +o=J.jn(p,o) +n=new A.Y3(b,new A.aZl(b,m.b,a,m.a,c),new A.aZm(s),J.jp(s.a),o,l) +s=b.gf5() +s=s==null?l:s.gAq() +if(A.bGL(s,k))return n +else return A.cO(A.a([A.bH(!1,l,l,l,!0,l,l,!1,l,l,l,l,l,!1,l,l,l,l,l,A.O(A.bGN(b.gf5().gAq(),a),l,l,l,l,l,l,l),l,l),n],t.p),B.w,B.D,B.aa)}, +$S:892} +A.aZl.prototype={ +$0(){var s=0,r=A.y(t.H),q,p=this,o,n,m,l,k,j,i,h +var $async$$0=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:i=p.a +h=i.geq() +if((h==null?null:h.gaK(h))!=null){h=i.gf5() +h=(h==null?null:h.gdM(h))==null}else h=!0 +if(h){s=1 +break}else{h=p.b +l=i.geq() +l=l.gaK(l) +l.toString +k=i.gf5() +k=k.gdM(k) +k.toString +l=h.jN(0,A.Y4(k,l),t.Zx) +A.hq(l,h.aa(0,A.eA(p.c),t.g),!1,t.ep) +o=A.bW(l) +try{h=p.d +l=t.k3 +n=A.a([],l) +m=h.a.a +if(m!=null)J.nU(n,m) +n=n +m=p.e +k=o +J.bCB(n,m,m+1,A.a([i.a7Q(k==null?i.gf5():k)],l)) +h.sVD(n)}catch(g){}}case 1:return A.w(q,r)}}) +return A.x($async$$0,r)}, +$S:2} +A.aZm.prototype={ +$1(a){var s,r,q +if(a.gaK(a)==null)return +s=this.a +r=s.a +q=a.gaK(a) +q.toString +s.sk(0,A.bja(r,q,a,t.S,t.o))}, +$S:169} +A.Y3.prototype={ +A(a){var s,r,q,p,o,n,m,l,k=this,j=null,i=k.c,h=i.gf5() +h=h==null?j:h.gh3(h) +s=h===!0?B.bD:j +h=i.gf5()!=null?new A.avI(k):j +r=t.p +q=A.a([],r) +p=i.gf5() +p=p==null?j:p.gfU() +if(p===!0)B.b.I(q,A.a([B.UD,B.Kh],r)) +r=i.geq() +r=r==null?j:r.ghk(r) +if(r==null)r="" +q.push(A.dD(A.O(r,j,j,j,j,A.eb(j,j,s,j,j,j,j,j,j,j,j,j,j,j,j,j,j,!0,j,j,j,j,j,j,j,j),j,j),1)) +q=A.dd(q,B.w,B.D,B.aa) +r=i.geq() +r=r==null?j:r.gq4() +r=A.o3(B.bh,A.jE(!1,j,!0,A.nf(!1,j,r==null?"":r,j,!1,B.dV,j),j,!0,j,j,j,j,j,j,j,j,j,new A.avJ(k,a),j,j,j,j,j,j,j),B.bc) +p=i.gf5() +p=p==null?j:p.gcV(p) +if(p==null){p=i.gf5() +p=p==null?j:J.cI(p.gKn())}if(p==null)p="" +p=A.O(p,j,j,j,j,A.eb(j,j,s,j,j,j,j,j,j,j,j,j,j,j,j,j,j,!0,j,j,j,j,j,j,j,j),j,j) +o=i.geq() +if((o==null?j:o.gaK(o))!=null){o=i.gf5() +o=(o==null?j:o.gdM(o))!=null}else o=!1 +if(o){o=i.gf5() +o=o==null?j:o.gfE(o) +n=i.geq() +n=n.gaK(n) +n.toString +m=i.gf5() +m.toString +n=A.bpe(m,o===!0,n,k.d) +o=n}else o=j +n=A.r(a) +m=A.r(a).ax.a===B.am?B.e1:B.iW +l=i.gf5()!=null&&i.geq()!=null?new A.avK(k,a):j +i=i.gf5()!=null?new A.avL(k):j +return A.dM(j,A.bH(!1,j,j,j,!0,j,j,!1,j,r,j,i,l,k.r,n.ax.db,m,j,p,j,q,o,j),B.C,!1,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,j,h,j,j,j,j,j,j,j,j,!1,B.ai)}} +A.avI.prototype={ +$0(){var s=this.a,r=s.c.gf5() +r.toString +return s.e.$1(r)}, +$S:0} +A.avJ.prototype={ +$0(){var s=this.a.c,r=s.geq() +if((r==null?null:r.gaK(r))!=null){s=s.geq() +s=s.gaK(s) +s.toString +s=A.py(new A.j3(s,null)) +A.bd(this.b).dv(s,null,t.z)}}, +$S:0} +A.avK.prototype={ +$0(){var s=this.a,r=s.c +if(s.f){r=r.gf5() +r.toString +s.e.$1(r)}else{s=r.geq() +s=s.gaK(s) +s.toString +r=r.gf5() +r=r.gdM(r) +r.toString +r=A.mw(new A.i4(s,r,null,null,!0)) +A.bd(this.b).dv(r,null,t.z)}}, +$S:0} +A.avL.prototype={ +$0(){var s=this.a,r=s.c.gf5() +r.toString +return s.e.$1(r)}, +$S:0} +A.a5b.prototype={ +aJ(a,b){var s=null +return A.db(s,s,A.fR(this.w,s,s,s),s,new A.aJx(this,b,a),s,s,s,s,s)}, +geB(a){return this.w}} +A.aJx.prototype={ +$0(){var s=0,r=A.y(t.H),q=this,p,o,n,m,l +var $async$$0=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:p=q.a +o=q.b +n=t.H +s=2 +return A.t(A.dw(new A.aJw(p,o),n),$async$$0) +case 2:m=b +l=q.c +if(l.f!=null)A.hq(m,o.aa(0,A.eA(l),t.g),!1,n) +s=3 +return A.t(p.r.$1(p.f!=null),$async$$0) +case 3:return A.w(null,r)}}) +return A.x($async$$0,r)}, +$S:2} +A.aJw.prototype={ +$0(){var s=this.a,r=s.f,q=this.b +s=s.e +if(r==null){r=t.z +r=q.aa(0,$.nT(),t.vm).a.abS("/download/batch",A.ap(["chapterIds",s],t.N,t.Cm),r,r) +s=r}else s=q.aa(0,$.fl(),t.W).abi(new A.Pj(s,r)) +return s}, +$S:2} +A.a5c.prototype={ +aJ(a,b){var s,r,q,p,o=null,n=new A.aJE(this),m=this.f,l=J.bhv(m.a),k=A.a([],t.p),j=J.cn(l) +if(j.ed(l,new A.aJy()))k.push(A.Lx(new A.r6(o,!1,o,o),J.fJ(J.jq(m.a)),B.T5,n)) +if(j.ed(l,new A.aJz()))k.push(A.Lx(new A.r6(o,!0,o,o),J.fJ(J.jq(m.a)),B.T4,n)) +s=j.gai(l) +if(!s&&j.gt(l)===1&&this.w){s=m.a +r=J.bK(s) +s=r.i(s,B.b.gN(J.fJ(r.gcP(s)))) +s.toString +s=J.rS(s) +s.toString +r=m.a +q=J.bK(r) +r=q.i(r,B.b.gN(J.fJ(q.gcP(r)))).ghS() +r.toString +k.push(A.brV(s,new A.Fh(o,o,!0,o),o,A.C5(new A.mA("assets/icons/previous_done.png",o,o),A.r(a).y2.b,o),r,n))}if(j.ed(l,new A.aJA()))k.push(A.Lx(new A.r6(!0,o,0,o),J.fJ(J.jq(m.a)),B.T7,n)) +if(j.ed(l,new A.aJB()))k.push(A.Lx(new A.r6(!1,o,o,o),J.fJ(J.jq(m.a)),B.T9,n)) +if(j.ed(l,new A.aJC())){s=A.a([],t.t) +for(r=j.gaj(l);r.u();){q=r.gH(r) +p=q.gfE(q) +if(p===!1){q=q.gaK(q) +q.toString +s.push(q)}}k.push(A.Lx(o,s,B.T8,n))}if(j.ed(l,new A.aJD()))k.push(A.Lx(new A.r6(o,o,o,!0),J.fJ(J.jq(m.a)),B.T6,n)) +return new A.b8(B.aT,A.dd(k,B.w,B.ko,B.T),o)}} +A.aJE.prototype={ +adV(a){var s=0,r=A.y(t.P),q=this,p +var $async$$1=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:p=q.a +p.f.sk(0,A.F(t.S,t.o)) +s=a?2:3 +break +case 2:s=4 +return A.t(p.r.$0(),$async$$1) +case 4:case 3:return A.w(null,r)}}) +return A.x($async$$1,r)}, +$1(a){return this.adV(a)}, +$0(){return this.$1(!0)}, +$C:"$1", +$R:0, +$D(){return[!0]}, +$S:893} +A.aJy.prototype={ +$1(a){var s=a.gfU() +return s===!0}, +$S:26} +A.aJz.prototype={ +$1(a){var s=a.gfU() +return s!==!0}, +$S:26} +A.aJA.prototype={ +$1(a){var s=a.gh3(a) +return s!==!0}, +$S:26} +A.aJB.prototype={ +$1(a){var s=a.gh3(a) +return s===!0}, +$S:26} +A.aJC.prototype={ +$1(a){var s=a.gfE(a) +return s!==!0}, +$S:26} +A.aJD.prototype={ +$1(a){var s=a.gfE(a) +return s===!0}, +$S:26} +A.a8z.prototype={ +aJ(a,b){var s=null,r=this.y +if(r==null)r=A.fR(this.x,s,s,s) +return A.db(s,s,r,s,new A.aT6(this,b,a),s,s,s,s,s)}, +geB(a){return this.x}} +A.aT6.prototype={ +$0(){var s=0,r=A.y(t.H),q=this,p,o,n,m,l +var $async$$0=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:p=q.a +o=q.b +n=t.H +s=2 +return A.t(A.dw(new A.aT5(p,o),n),$async$$0) +case 2:m=b +l=q.c +if(l.f!=null)A.hq(m,o.aa(0,A.eA(l),t.g),!1,n) +s=3 +return A.t(p.w.$0(),$async$$0) +case 3:return A.w(null,r)}}) +return A.x($async$$0,r)}, +$S:2} +A.aT5.prototype={ +$0(){var s=this.a +return this.b.aa(0,$.fl(),t.W).G1(s.e,s.f,s.r)}, +$S:2} +A.a0h.prototype={ +FH(a,b){return this.aLD(a,b)}, +aLD(a,b){var s=0,r=A.y(t.H),q=1,p,o=this,n,m +var $async$FH=A.u(function(c,d){if(c===1){p=d +s=q}while(true)switch(s){case 0:q=3 +b.$1(!0) +s=6 +return A.t(o.f.$0(),$async$FH) +case 6:b.$1(!1) +q=1 +s=5 +break +case 3:q=2 +m=p +s=5 +break +case 2:s=1 +break +case 5:return A.w(null,r) +case 1:return A.v(p,r)}}) +return A.x($async$FH,r)}, +BE(a,b,c,d,e){return this.aOD(a,b,c,d,e)}, +aOz(a,b,c){return this.BE(a,b,c,!1,!1)}, +aOB(a,b,c){return this.BE(a,b,!1,!1,c)}, +aOA(a,b,c){return this.BE(a,b,!1,c,!1)}, +aOD(a,b,c,d,e){var s=0,r=A.y(t.z),q,p=2,o,n=this,m,l,k,j +var $async$BE=A.u(function(f,g){if(f===1){o=g +s=p}while(true)switch(s){case 0:p=4 +m=n.r +if(m.gdM(m)==null){s=1 +break}m=t.P +j=A +s=7 +return A.t(A.dw(new A.ayG(n,b,e,d,c),m),$async$BE) +case 7:j.hq(g,a,!1,m) +p=2 +s=6 +break +case 4:p=3 +k=o +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.w(q,r) +case 2:return A.v(o,r)}}) +return A.x($async$BE,r)}, +aJ(a,b){var s,r,q=this,p=null,o=$.b7.bm(new A.cW(!1,p,t.Kr),t.uh),n=b.M(A.eA(a),t.g),m=q.r +m=m.gaK(m) +s=b.M(A.ayJ(m==null?-1:m),t.fC) +m=s==null +r=m?p:s.gd8(s) +$.b7.bm(new A.dz(new A.ayB(q,s,b,o),[r]),t.H) +if(o.a)return new A.b8(B.bC,A.bjg(A.r(a).ok.f,p),p) +else if(!m)if(s.gd8(s)==="Error")return A.db(p,p,B.US,p,new A.ayC(q,n,b),p,p,p,p,p) +else{o=s.gr4()===0?p:s.gr4() +return A.db(p,p,A.bjg(A.r(a).ok.f,o),p,new A.ayD(q,n,b),p,p,p,p,p)}else if(q.x)return A.db(p,p,B.UR,p,new A.ayE(q,b,n,o),p,p,p,p,p) +else return A.db(p,p,B.UF,p,new A.ayF(q,n,b),p,p,p,p,p)}} +A.ayG.prototype={ +$0(){var s=0,r=A.y(t.P),q=this,p,o,n,m +var $async$$0=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:m=q.b.aa(0,$.nT(),t.vm) +s=q.c||q.d?2:3 +break +case 2:p=q.a +o=p.r +o=o.gdM(o) +o.toString +n=t.z +s=4 +return A.t(m.a.zU(0,"/download/"+p.w+"/chapter/"+o,n,n),$async$$0) +case 4:case 3:s=q.e||q.d?5:6 +break +case 5:p=q.a +o=p.r +o=o.gdM(o) +o.toString +n=t.z +s=7 +return A.t(m.a.rl(0,"/download/"+p.w+"/chapter/"+o,n,n),$async$$0) +case 7:case 6:return A.w(null,r)}}) +return A.x($async$$0,r)}, +$S:52} +A.ayB.prototype={ +$0(){var s=this,r=s.b +if((r==null?null:r.gd8(r))==="Finished")A.tD(new A.ayA(s.a,s.c,s.d),t.H) +return}, +$S:5} +A.ayA.prototype={ +$0(){return this.a.FH(this.b,new A.ayx(this.c))}, +$S:2} +A.ayx.prototype={ +$1(a){this.a.sk(0,a) +return a}, +$S:7} +A.ayC.prototype={ +$0(){return this.a.aOA(this.b,this.c,!0)}, +$S:0} +A.ayD.prototype={ +$0(){return this.a.aOB(this.b,this.c,!0)}, +$S:0} +A.ayE.prototype={ +$0(){var s=0,r=A.y(t.H),q=this,p,o,n,m +var $async$$0=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:p=q.a +o=q.b +n=t.H +m=A +s=2 +return A.t(A.dw(new A.ayy(p,o),n),$async$$0) +case 2:m.hq(b,q.c,!1,n) +s=3 +return A.t(p.FH(o,new A.ayz(q.d)),$async$$0) +case 3:return A.w(null,r)}}) +return A.x($async$$0,r)}, +$S:2} +A.ayy.prototype={ +$0(){var s=this.b.aa(0,$.fl(),t.W),r=this.a.r +r=r.gaK(r) +r.toString +return s.abi(new A.Pj(A.a([r],t.t),new A.r6(null,null,null,!0)))}, +$S:2} +A.ayz.prototype={ +$1(a){this.a.sk(0,a) +return a}, +$S:7} +A.ayF.prototype={ +$0(){this.a.aOz(this.b,this.c,!0)}, +$S:0} +A.aaD.prototype={ +aJ(a,b){var s,r,q,p=null,o=b.M($.bhq(),t.QO),n=A.bW(o) +if(n==null)n=p +else{s=J.bK(n) +r=s.gGo(n) +n=r>0&&s.gGo(n)!==n.gX6()}q=n===!0 +n=q?p:B.tA +if(q){s=A.bW(o) +s=s==null?p:A.biT(s.gX6()) +r=A.bW(o) +r=r==null?p:A.biT(J.bnA(r)) +r=A.O(A.h(s)+"/"+A.h(r),p,p,p,p,p,p,p) +s=r}else{s=A.A(a,B.h,t.J) +s=A.O(s.gio(s),p,p,p,p,p,p,p)}return A.a11(n,!0,s,new A.aZ4(q,a,b))}} +A.aZ4.prototype={ +$0(){if(this.a){var s=A.e8("/update-status",null) +s=A.bd(this.b).dv(s,null,t.z)}else s=this.c.aa(0,$.Hq(),t.BA).a9e() +return s}, +$S:0} +A.uY.prototype={ +aJ(a,b){return A.aLY(B.n2,new A.aZ8(this,b),new A.cE(B.cO,B.t),t.z)}} +A.aZ8.prototype={ +$1(a){var s,r,q=null,p=this.a,o=p.e,n=o==null?q:o.$0() +o=A.a([],t.nm) +if(n!=null&&n.gaK(n)!=null&&n.gaK(n)!==0)o.push(A.n3(A.O(A.A(a,B.h,t.J).gmf(),q,q,q,q,q,q,q),new A.aZ5(this.b,n),t.z)) +s=t.J +r=t.z +o.push(A.n3(A.O(A.A(a,B.h,s).glE(),q,q,q,q,q,q,q),new A.aZ6(this.b),r)) +if(p.f)o.push(A.n3(A.O(A.A(a,B.h,s).gly(),q,q,q,q,q,q,q),new A.aZ7(a),r)) +return o}, +$S:104} +A.aZ5.prototype={ +$0(){var s=this.b +return this.a.aa(0,$.Hq(),t.BA).a9f(s.gaK(s))}, +$S:0} +A.aZ6.prototype={ +$0(){return this.a.aa(0,$.Hq(),t.BA).a9e()}, +$S:0} +A.aZ7.prototype={ +$0(){var s=A.e8("/update-status",null) +return A.bd(this.a).dv(s,null,t.z)}, +$S:0} +A.aaE.prototype={ +aJ(a,b){var s,r=null,q=b.M($.bhp(),t.vM),p=b.M($.bhq(),t.QO),o=A.bW(p) +if(o==null)o=r +else o=J.bnA(o)>0 +s=o===!0?p:q +return A.e_(A.eh(B.a4H,r,r,r,r,r,A.O(A.A(a,B.h,t.J).gly(),r,r,r,r,r,r,r)),r,A.ih(s,a,new A.aZa(b,a),!1,new A.aZb(b),!1,r),r,r,r,!0,!1,!1,r,r)}} +A.aZa.prototype={ +$1(a){var s,r=this,q=null,p=A.a([],t.p),o=a==null,n=o?q:a.gi_() +if(!(n==null||J.ce(n))){n=a.gi_() +n.toString +p.push(new A.zl(n,A.A(r.b,B.h,t.J).gi_(),!0,q))}n=o?q:a.ghW(a) +if(!(n==null||J.ce(n))){n=a.ghW(a) +n.toString +s=A.A(r.b,B.h,t.J) +p.push(new A.zl(n,s.ghW(s),!1,q))}n=o?q:a.gh8(a) +if(!(n==null||J.ce(n))){n=a.gh8(a) +n.toString +s=A.A(r.b,B.h,t.J) +p.push(new A.zl(n,s.gh8(s),!1,q))}o=o?q:a.ghx() +if(!(o==null||J.ce(o))){o=a.ghx() +o.toString +p.push(new A.zl(o,A.A(r.b,B.h,t.J).ghx(),!0,q))}return A.qJ(A.j2(p,q,q,!1),new A.aZ9(r.a))}, +$S:894} +A.aZ9.prototype={ +$0(){return this.a.jN(0,$.bhp().gqM(),t.uz)}, +$S:2} +A.aZb.prototype={ +$0(){var s=this.a,r=$.bhp() +if(s.f==null)A.q(A.R(u.w)) +s.glV().kd(r) +return null}, +$S:0} +A.zl.prototype={ +A(a){var s=null,r=this.c,q=J.ak(r),p=A.O(this.d+" ("+A.h(A.biT(q.gt(r)))+")",s,s,s,s,s,s,s),o=A.r(a),n=A.r(a) +r=q.ig(r,new A.aZ3(a),t.ur) +return A.biy(A.aa(r,!0,A.k(r).h("ax.E")),n.dy,this.e,B.et,o.dy,p)}} +A.aZ3.prototype={ +$1(a){return A.bj8(a,null,new A.aZ2(a,this.a),!0)}, +$S:895} +A.aZ2.prototype={ +$0(){var s=this.a +s=s.gaK(s) +s.toString +s=A.py(new A.j3(s,null)) +return A.bd(this.b).dv(s,null,t.z)}, +$S:0} +A.pa.prototype={ +j(a){return"QuickSearchResult.helpText(prefill: "+this.a+", pattern: "+A.h(this.b)+", hintText: "+this.c+")"}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r!==b)if(J.a1(b)===A.o(r))if(b instanceof A.pa){s=b.a===r.a +if(s||s){s=b.b==r.b +if(s||s){s=b.c===r.c +s=s||s}else s=!1}else s=!1}else s=!1 +else s=!1 +else s=!0 +return s}, +gv(a){var s=this +return A.X(A.o(s),s.a,s.b,s.c,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +q5(a,b,c,d,e,f,g,h,i){return f.$3(this.a,this.b,this.c)}, +BQ(a,b,c,d,e,f,g,h,i){return this.q5(a,b,c,d,e,f,g,h,i,t.X)}, +$icj:1} +A.Pq.prototype={ +j(a){return"QuickSearchResult.source(source: "+this.a.j(0)+")"}, +l(a,b){var s,r +if(b==null)return!1 +if(this!==b)if(J.a1(b)===A.o(this))if(b instanceof A.Pq){s=b.a +r=this.a +s=s===r||s.l(0,r)}else s=!1 +else s=!1 +else s=!0 +return s}, +gv(a){return A.X(A.o(this),this.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +q5(a,b,c,d,e,f,g,h,i){return h.$1(this.a)}, +BQ(a,b,c,d,e,f,g,h,i){return this.q5(a,b,c,d,e,f,g,h,i,t.X)}, +$icj:1} +A.Pr.prototype={ +j(a){return"QuickSearchResult.sourceSearch(source: "+this.a.j(0)+", query: "+this.b+")"}, +l(a,b){var s,r,q=this +if(b==null)return!1 +if(q!==b)if(J.a1(b)===A.o(q))if(b instanceof A.Pr){s=b.a +r=q.a +if(s===r||s.l(0,r)){s=b.b===q.b +s=s||s}else s=!1}else s=!1 +else s=!1 +else s=!0 +return s}, +gv(a){return A.X(A.o(this),this.a,this.b,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +q5(a,b,c,d,e,f,g,h,i){return i.$2(this.a,this.b)}, +BQ(a,b,c,d,e,f,g,h,i){return this.q5(a,b,c,d,e,f,g,h,i,t.X)}, +$icj:1} +A.Pi.prototype={ +j(a){return"QuickSearchResult.category(category: "+this.a.j(0)+")"}, +l(a,b){var s,r +if(b==null)return!1 +if(this!==b)if(J.a1(b)===A.o(this))if(b instanceof A.Pi){s=b.a +r=this.a +s=s===r||s.l(0,r)}else s=!1 +else s=!1 +else s=!0 +return s}, +gv(a){return A.X(A.o(this),this.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +q5(a,b,c,d,e,f,g,h,i){return a.$1(this.a)}, +BQ(a,b,c,d,e,f,g,h,i){return this.q5(a,b,c,d,e,f,g,h,i,t.X)}, +$icj:1} +A.Ph.prototype={ +j(a){return"QuickSearchResult.categoryManga(category: "+this.a.j(0)+", manga: "+this.b.j(0)+")"}, +l(a,b){var s,r,q=this +if(b==null)return!1 +if(q!==b)if(J.a1(b)===A.o(q))if(b instanceof A.Ph){s=b.a +r=q.a +if(s===r||s.l(0,r)){s=b.b +r=q.b +s=s===r||s.l(0,r)}else s=!1}else s=!1 +else s=!1 +else s=!0 +return s}, +gv(a){return A.X(A.o(this),this.a,this.b,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +q5(a,b,c,d,e,f,g,h,i){return b.$2(this.a,this.b)}, +BQ(a,b,c,d,e,f,g,h,i){return this.q5(a,b,c,d,e,f,g,h,i,t.X)}, +$icj:1} +A.Pg.prototype={ +j(a){return"QuickSearchResult.categoryMangaChapter(category: "+A.h(this.a)+", manga: "+this.b.j(0)+", chapter: "+this.c.j(0)+")"}, +l(a,b){var s,r,q=this +if(b==null)return!1 +if(q!==b)if(J.a1(b)===A.o(q))if(b instanceof A.Pg){s=b.a +r=q.a +if(s==r||J.i(s,r)){s=b.b +r=q.b +if(s===r||s.l(0,r)){s=b.c +r=q.c +s=s===r||s.l(0,r)}else s=!1}else s=!1}else s=!1 +else s=!1 +else s=!0 +return s}, +gv(a){var s=this +return A.X(A.o(s),s.a,s.b,s.c,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +q5(a,b,c,d,e,f,g,h,i){return c.$3(this.a,this.b,this.c)}, +BQ(a,b,c,d,e,f,g,h,i){return this.q5(a,b,c,d,e,f,g,h,i,t.X)}, +$icj:1} +A.yd.prototype={ +aP(){return null}} +A.bg4.prototype={ +$1(a){return new A.Pr(a,this.a[1])}, +$S:302} +A.bg5.prototype={ +$1(a){return new A.Pq(a)}, +$S:302} +A.bg1.prototype={ +$3$category$query(a,b,c){var s,r=a.gaK(a) +r.toString +r=A.bW(this.a.M(A.CF(r),t.uV)) +if(r==null)s=null +else{r=J.lC(r,new A.bg2(c)) +s=A.aa(r,!0,r.$ti.h("z.E"))}if(s==null)r=null +else{r=A.ab(s).h("ad<1,cj>") +r=A.aa(new A.ad(s,new A.bg3(b,a),r),!0,r.h("ax.E"))}return r}, +$1(a){return this.$3$category$query(a,null,null)}, +$2$query(a,b){return this.$3$category$query(a,null,b)}, +$S:897} +A.bg2.prototype={ +$1(a){var s,r=this.a +if(!A.Of(a.gcV(a),r)){s=a.gdM(a) +r=s==A.lW(r,null)}else r=!0 +return r}, +$S:26} +A.bg3.prototype={ +$1(a){return new A.Pg(this.a,this.b,a)}, +$S:898} +A.bg6.prototype={ +$1(a){var s,r,q,p,o,n=null,m=(B.c.c8(a,"#")?B.c.cv(a,1):a).split("/"),l=this.a,k=l.M(A.bok(B.b.gN(m)),t.IL) +if(m.length>1){s=A.xi(k) +if((s==null?n:s.gaK(s))==null)return n +r=J.bhz(m[1],":") +q=s.gaK(s) +q.toString +q=A.bW(l.M(A.Io(q),t.ng)) +p=q==null?n:J.lC(q,new A.bg7(r)) +if(r.length>1){o=A.xi(p) +if(o!=null&&o.gaK(o)!=null)return this.b.$3$category$query(o,s,r[1])}else{if(p==null)l=n +else{l=p.$ti.h("en<1,cj>") +l=A.aa(new A.en(p,new A.bg8(s),l),!0,l.h("z.E"))}return l}}if(k==null)l=n +else{l=J.co(k,new A.bg9(),t.WM) +l=A.aa(l,!0,A.k(l).h("ax.E"))}return l}, +$S:899} +A.bg7.prototype={ +$1(a){return a.ac7(0,A.xi(this.a))}, +$S:288} +A.bg8.prototype={ +$1(a){return new A.Ph(this.a,a)}, +$S:900} +A.bg9.prototype={ +$1(a){return new A.Pi(a)}, +$S:901} +A.a6y.prototype={ +$1$context(a){return A.bjv(a)}, +fP(a){return A.bjv(a.dy)}, +gfi(){return null}} +A.Mq.prototype={ +bJ(a){var s=null,r=t.B +return new A.ajC(s,!1,this,A.a([],t.o2),A.a([],r),A.a([],t._),A.a([],r),A.cx(s,s,s,t.M,t.K))}, +l(a,b){if(b==null)return!1 +return b instanceof A.Mq&&b.dy===this.dy}, +gv(a){var s=A.bub(A.bub(0,A.cU(A.o(this))),A.cU(this.dy)) +s=s+((s&67108863)<<3)&536870911 +s^=s>>>11 +return s+((s&16383)<<15)&536870911}} +A.aMd.prototype={ +$1(a){return A.bUs(t.eP.a(a),this.a)}, +$S:902} +A.Mr.prototype={} +A.ajC.prototype={} +A.ajI.prototype={} +A.aoS.prototype={} +A.a6H.prototype={ +A(a){var s,r,q=null,p=$.b7.bm(new A.mr(q,q),t.QX) +$.b7.bm(new A.dz(new A.aMX(p),[]),t.H) +s=t.l +r=0.1*A.aS(a,q,s).w.a.a +s=0.05*A.aS(a,q,s).w.a.b +return new A.b8(new A.aK(r,s,r,s),new A.e5(B.eN,q,q,A.aC7(!1,A.cO(A.a([new A.a6F(p,q),new A.og(1,B.f4,new A.a6E(this.d,p,q),q),A.hA(B.S,!0,q,A.O(A.A(a,B.h,t.J).gpW(),q,q,q,q,q,q,q),B.l,B.u,0,q,q,q,q,q,B.cJ)],t.p),B.w,B.D,B.aa),q,q,q),q),q)}} +A.aMX.prototype={ +$0(){A.tD(new A.aMW(this.a),t.hL) +return null}, +$S:5} +A.aMW.prototype={ +$0(){var s=this.a,r=A.de(B.q,0,s.a.a.length,!1) +s.sy9(r) +return r}, +$S:903} +A.lF.prototype={ +A(a){var s,r,q,p,o=this,n=null,m=o.d,l=m==null,k=l?n:m.ghk(m) +if(k==null||k.length===0){k=o.c +s=k==null?n:k.gcV(k) +if(s==null)s=""}else{k=o.e +r=k==null +q=r?n:k.gcV(k) +if(q==null||q.length===0){s=l?n:m.ghk(m) +if(s==null)s=""}else{s=r?n:k.BX(a) +if(s==null)s=""}}k=l?n:m.gq4() +if(k==null||k.length===0)k=A.fR(B.Tw,A.r(a).ch,n,n) +else{k=l?n:m.gq4() +k=A.nf(!1,n,k==null?"":k,n,!1,B.dV,n)}k=A.o3(B.bh,k,B.bc) +r=t.p +q=A.a([],r) +p=l?n:m.ghk(m) +if(!(p==null||p.length===0)){p=o.e +p=p==null?n:p.gcV(p) +if(p==null||p.length===0){m=o.c +m=m==null?n:m.gcV(m) +m=(m==null?"":m)+"/ "}else{m=l?n:m.ghk(m) +m=(m==null?"":m)+"/"}l=A.r(a).p3.Q +q.push(A.O(m,1,B.ac,n,n,l==null?n:l.a86(A.r(a).db,0.1,0.1),n,n))}q.push(A.O(s,1,B.ac,n,n,A.r(a).p3.w,n,n)) +return A.jE(!1,n,!0,A.dd(A.a([new A.b8(B.aT,k,n),A.dD(A.cO(q,B.cS,B.D,B.T),1)],r),B.w,B.D,B.T),n,!0,n,n,n,n,n,n,n,n,n,new A.avf(o,a),n,n,n,n,n,n,n)}} +A.avf.prototype={ +$0(){var s,r,q=this,p=null,o=q.a,n=o.e +if((n==null?p:n.gdM(n))!=null){s=o.d +s=s.gaK(s) +s.toString +n=n.gdM(n) +n.toString +n=A.mw(new A.i4(s,n,p,p,!0)) +A.bd(q.b).dv(n,p,t.z)}else{n=o.d +s=n==null?p:n.gaK(n) +r=o.c +if(s!=null){n=n.gaK(n) +n.toString +n=A.py(new A.j3(n,r==null?p:r.gaK(r))) +A.bd(q.b).dv(n,p,t.z)}else{n=A.bgK(new A.tZ(r==null?p:r.gWi(r))) +A.bd(q.b).dv(n,p,t.z)}}o.f.$0()}, +$S:0} +A.a6E.prototype={ +aJ(a,b){var s,r=null,q=b.M(A.bjv(a),t.Xv) +if(q==null||J.ce(q))return B.a_ +q.toString +s=J.co(q,new A.aMO(this),t.OV) +return A.pI(A.ng(A.cO(A.aa(s,!0,A.k(s).h("ax.E")),B.w,B.D,B.aa),r,B.C,r,r,B.R),B.E,r,r,r)}} +A.aMO.prototype={ +$1(a){var s=this.a +return new A.yH(a,s.e,s.f,null)}, +$S:904} +A.a6F.prototype={ +aJ(a,b){var s,r=null,q=$.b7.bm(new A.R_(r,r,r,!1,!0,!0,r),t.mx),p=t.H +$.b7.bm(new A.dz(new A.aMR(q),[]),p) +s=this.f +$.b7.bm(new A.dz(new A.aMS(this,b),[s]),p) +p=A.A(a,B.h,t.J) +return A.pI(A.EJ(!0,B.bU,!0,r,!0,B.E,r,A.W6(),s,r,r,r,r,2,A.tQ(r,new A.lU(4,B.cO,B.lQ),r,r,r,r,r,r,!0,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,p.gkx(p),r,r,r,r,!1,!0,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r),B.C,!0,r,!0,r,!1,q,r,r,r,r,r,r,1,r,r,!1,"\u2022",r,r,new A.aMT(a),r,r,r,!1,r,!0,r,B.dx,r,r,B.c3,B.bK,r,r,r,r,r,r,B.b3,r,B.dX,r,r,r,r),r,r,r,new A.cE(B.cO,B.t))}} +A.aMR.prototype={ +$0(){var s=this.a +s.nS() +return new A.aMQ(s)}, +$S:82} +A.aMQ.prototype={ +$0(){return this.a.vu()}, +$S:0} +A.aMS.prototype={ +$0(){var s=this.a,r=new A.aMU(s,this.b) +s.f.P(0,r) +return new A.aMP(s,r)}, +$S:82} +A.aMU.prototype={ +$0(){var s=this.b.aa(0,$.bnf().gcr(),t.TF),r=this.a.f.a.a +J.eX(s,r) +return r}, +$S:0} +A.aMP.prototype={ +$0(){return this.a.f.J(0,this.b)}, +$S:0} +A.aMT.prototype={ +$0(){var s=A.a18(this.a),r=s.e +r.toString +A.wV(r).Dg(s,!0)}, +$S:0} +A.yH.prototype={ +A(a){var s=this +return s.c.BQ(new A.aRB(s),new A.aRC(s),new A.aRD(s),new A.aRE(),new A.aRF(),new A.aRG(s,a),new A.aRH(),new A.aRI(s),new A.aRJ(s))}} +A.aRG.prototype={ +$3(a,b,c){var s=null +return A.bH(!1,s,s,s,!0,s,s,!1,s,A.O(a,s,s,s,s,s,s,s),s,s,new A.aRA(this.a,b),!1,s,s,s,s,s,A.O(c,s,s,s,s,A.eb(s,s,A.r(this.b).db,s,s,s,s,s,s,s,s,s,s,s,s,s,s,!0,s,s,s,s,s,s,s,s),s,s),s,s)}, +$S:905} +A.aRA.prototype={ +$0(){var s=this.b +if(!(s==null||s.length===0)){s.toString +this.a.e.se9(0,s)}else s=null +return s}, +$S:0} +A.aRI.prototype={ +$1(a){return A.bsd(this.a.d,null,a)}, +$S:906} +A.aRJ.prototype={ +$2(a,b){return A.bsd(this.a.d,b,a)}, +$S:907} +A.aRB.prototype={ +$1(a){return new A.lF(a,null,null,this.a.d,null)}, +$S:908} +A.aRC.prototype={ +$2(a,b){return new A.lF(a,b,null,this.a.d,null)}, +$S:909} +A.aRD.prototype={ +$3(a,b,c){return new A.lF(a,b,c,this.a.d,null)}, +$S:910} +A.aRH.prototype={ +$2(a,b){return B.a_}, +$S:911} +A.aRE.prototype={ +$3(a,b,c){return B.a_}, +$S:912} +A.aRF.prototype={ +$0(){return B.a_}, +$S:913} +A.uL.prototype={ +aJ(a,b){var s,r,q,p,o=null,n=this.e,m=n.gAN(n) +m=A.o3(B.bh,A.nf(!1,o,m==null?"":m,o,!1,B.dV,o),B.bc) +s=this.f +r=s==null +if(!(r||s.length===0)){q=n.gh9(n) +if(q==null)q=n.gcV(n) +if(q==null)q="" +p=A.r(a).p3.Q +p=p==null?o:p.a86(A.r(a).db,0.1,0.1) +q=A.di(o,p,q+"/ ") +if(r)s="" +s=A.bjD(o,o,B.aR,o,o,!0,o,A.di(A.a([q,A.di(o,A.r(a).p3.w,s)],t.VO),o,o),B.b3,o,o,1,B.aq)}else{s=n.gh9(n) +if(s==null)s=n.gcV(n) +s=A.O(s==null?"":s,o,o,o,o,o,o,o)}r=n.gmY(n) +r=r==null?o:r.gh9(r) +if(!(r==null||r.length===0)){n=n.gmY(n) +n=n==null?o:n.gh9(n) +if(n==null)n="" +n=A.O(n,o,o,o,o,A.eb(o,o,A.r(a).db,o,o,o,o,o,o,o,o,o,o,o,o,o,o,!0,o,o,o,o,o,o,o,o),o,o)}else n=o +return A.bH(!1,o,o,o,!0,o,o,!1,o,m,o,o,new A.aVq(this,b,a),!1,o,o,o,n,o,s,o,o)}} +A.aVq.prototype={ +$0(){var s=0,r=A.y(t.H),q,p=this,o,n,m +var $async$$0=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:n=p.a +m=n.e +if(m.gaK(m)==null){s=1 +break}J.eX(p.b.aa(0,$.aqQ().gcr(),t.KP),m.gaK(m)) +m=m.gaK(m) +m.toString +o=n.f +m=A.vJ(new A.kA(m,o==null||o.length===0?B.fJ:B.d4,o,null)) +A.bd(p.c).dv(m,null,t.z) +n.r.$0() +case 1:return A.w(q,r)}}) +return A.x($async$$0,r)}, +$S:2} +A.uI.prototype={} +A.tG.prototype={} +A.a89.prototype={ +A(a){var s,r,q=null,p=$.b7.bm(new A.cW(!1,q,t.Kr),t.uh),o=A.a([],t.p) +o.push(this.d) +if(p.a){s=$.as().Ep(5,5,B.cK) +r=A.r(a).as.a +o.push(A.dM(q,A.asA(A.cP(q,new A.a6H(new A.aRK(p),q),B.l,q,B.iE,new A.dJ(A.K(B.e.bi(25.5),r>>>16&255,r>>>8&255,r&255),q,q,q,q,q,B.aE),q,q,q,q,q),s),B.C,!1,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,new A.aRL(p),q,q,q,q,!1,B.ai))}return new A.a6I(A.fr(B.bs,o,B.E,B.aH,q),p,q)}} +A.aRL.prototype={ +$0(){this.a.sk(0,!1) +return!1}, +$S:0} +A.aRK.prototype={ +$0(){this.a.sk(0,!1) +return!1}, +$S:0} +A.a6I.prototype={ +A(a){var s=this,r=null,q=A.ap([new A.bj(B.nx,!0,!1,!1,!1),new A.uI(),B.oF,new A.tG()],t.Vz,t.vz),p=t.h,o=t.d +return A.NI(A.pC(A.ap([B.akv,new A.cq(new A.aMY(s),new A.bb(A.a([],p),o),t.D5),B.ak5,new A.cq(new A.aMZ(s),new A.bb(A.a([],p),o),t.iw)],t.n,t.od),A.dM(r,s.c,B.C,!1,r,r,r,r,r,r,r,new A.aN_(s),r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,!1,B.ai)),r,q)}} +A.aMY.prototype={ +$1(a){this.a.d.sk(0,!0) +return null}, +$S:914} +A.aMZ.prototype={ +$1(a){this.a.d.sk(0,!1) +return null}, +$S:915} +A.aN_.prototype={ +$0(){this.a.d.sk(0,!0) +return!0}, +$S:0} +A.rY.prototype={ +MV(a,b){return this.aNW(a,b)}, +aNW(a,b){var s=0,r=A.y(t.ab),q,p=this,o,n +var $async$MV=A.u(function(c,d){if(c===1)return A.v(d,r) +while(true)switch(s){case 0:o=b==null +n=o?null:b.b +if(!(n==null||n.length===0)){o=o?null:b.c +o=o==null||B.L.gai(o) +if(!o)o=!1 +else o=!0}else o=!0 +if(o)throw A.c(A.WV(a).gl4()) +if(!B.c.hM(b.b,".proto.gz"))throw A.c(A.WV(a).mG(".proto.gz")) +o=b.c +o.toString +s=3 +return A.t(p.a.aMS("/backup/import/file",A.BN(A.ap(["backup.proto.gz",A.bI0(o,"backup.proto.gz")],t.N,t.z)),new A.asL(),t.e8,t.ab),$async$MV) +case 3:q=d.a +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$MV,r)}} +A.asL.prototype={ +$1(a){return t.a.b(a)?A.bLE(a):null}, +$S:916} +A.kR.prototype={ +ghd(a){var s,r="removeWhere",q=t.s,p=A.a([],q),o=this.gxs() +if(o!=null)B.b.I(p,o) +if(!!p.fixed$length)A.q(A.a7(r)) +B.b.ul(p,new A.asI(),!0) +o=A.a([],q) +s=this.ghA() +if(s!=null)B.b.I(o,s) +if(!!o.fixed$length)A.q(A.a7(r)) +B.b.ul(o,new A.asJ(),!0) +q=A.a([],q) +s=this.gxp() +if(s!=null)B.b.I(q,s) +if(!!q.fixed$length)A.q(A.a7(r)) +B.b.ul(q,new A.asK(),!0) +return new A.Fe(p,o,q)}} +A.asI.prototype={ +$1(a){return a.length===0}, +$S:10} +A.asJ.prototype={ +$1(a){return a.length===0}, +$S:10} +A.asK.prototype={ +$1(a){return a.length===0}, +$S:10} +A.b_v.prototype={ +gxs(){return A.q($.aqE())}, +ghA(){return A.q($.aqE())}, +gxp(){return A.q($.aqE())}, +b7(){return A.q($.aqE())}} +A.Fe.prototype={ +gxs(){var s=this.a +if(s==null)return null +if(s instanceof A.cQ)return s +return new A.cQ(s,s,t.ls)}, +ghA(){var s=this.b +if(s==null)return null +if(s instanceof A.cQ)return s +return new A.cQ(s,s,t.ls)}, +gxp(){var s=this.c +if(s==null)return null +if(s instanceof A.cQ)return s +return new A.cQ(s,s,t.ls)}, +j(a){return"BackupMissing(missingSources: "+A.h(this.gxs())+", missingTrackers: "+A.h(this.ghA())+", mangasMissingSources: "+A.h(this.gxp())+")"}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r!==b)s=J.a1(b)===A.o(r)&&b instanceof A.Fe&&B.a0.dj(b.a,r.a)&&B.a0.dj(b.b,r.b)&&B.a0.dj(b.c,r.c) +else s=!0 +return s}, +gv(a){var s=this +return A.X(A.o(s),B.a0.du(0,s.a),B.a0.du(0,s.b),B.a0.du(0,s.c),B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +b7(){return A.ap(["missingSources",this.gxs(),"missingTrackers",this.ghA(),"mangasMissingSources",this.gxp()],t.N,t.z)}} +A.adt.prototype={} +A.b_3.prototype={ +$1(a){return A.bs(a)}, +$S:39} +A.b_4.prototype={ +$1(a){return A.bs(a)}, +$S:39} +A.b_5.prototype={ +$1(a){return A.bs(a)}, +$S:39} +A.adu.prototype={} +A.WX.prototype={ +A(a){var s=null,r=A.A(a,B.h,t.J) +return A.e_(A.eh(s,s,s,s,s,s,A.O(r.gkR(r),s,s,s,s,s,s,s)),s,A.j2(B.a33,s,s,!1),s,s,s,!0,!1,!1,s,s)}} +A.x1.prototype={ +aP(){var s=this.a +s===$&&A.b() +return this.fb(0,s,192,"gridMangaCoverWidth")}} +A.a1x.prototype={ +aJ(a,b){var s=A.A(a,B.h,t.J).gn0(),r=b.M($.aqM(),t.PM) +if(r==null)r=192 +return A.a8L(192,new A.aE2(),B.tp,999,100,new A.aE3(b),s,r,t.z)}} +A.aE2.prototype={ +$1(a){return B.f.j(B.e.bi(a))}, +$S:68} +A.aE3.prototype={ +$1(a){var s=this.a.aa(0,$.aqM().gcr(),t.XW),r=B.e.Bv(a) +J.eX(s,r) +return r}, +$S:46} +A.agx.prototype={} +A.Xn.prototype={ +E5(a,b){return this.aEA(a,b)}, +aEA(a,b){var s=0,r=A.y(t.z),q,p,o,n +var $async$E5=A.u(function(c,d){if(c===1)return A.v(d,r) +while(true)switch(s){case 0:p=new A.asQ(a) +s=2 +return A.t($.bme().iF(A.a(["gz"],t.s),B.mP),$async$E5) +case 2:o=d +n=o==null?null:o.a +if(!(n==null||J.ce(n)))if(b.f!=null)J.Ws(p.$1(b),A.A(b,B.h,t.J).gnX()) +n=t.ab +s=3 +return A.t(A.dw(new A.asN(a,b,o),n),$async$E5) +case 3:q=d +A.vT(q,new A.asO(b,p),new A.asP(b,q,p),n,t.H) +return A.w(null,r)}}) +return A.x($async$E5,r)}, +aJ(a,b){var s,r=null,q=t.J,p=A.eh(r,r,r,r,r,r,A.O(A.A(a,B.h,q).gjY(),r,r,r,r,r,r,r)),o=A.O(A.A(a,B.h,q).gmx(),r,r,r,r,r,r,r) +o=A.bH(!1,r,r,r,!0,r,r,!1,r,B.Up,r,r,new A.asR(b,a),!1,r,r,r,A.O(A.A(a,B.h,q).gmw(),r,r,r,r,r,r,r),r,o,r,r) +s=A.O(A.A(a,B.h,q).gnV(),r,r,r,r,r,r,r) +return A.e_(p,r,A.j2(A.a([o,A.bH(!1,r,r,r,!0,r,r,!1,r,B.Un,r,r,new A.asS(this,b,a),!1,r,r,r,A.O(A.A(a,B.h,q).gnU(),r,r,r,r,r,r,r),r,s,r,r)],t.p),r,r,!1),r,r,r,!0,!1,!1,r,r)}} +A.asQ.prototype={ +$1(a){return this.a.aa(0,A.eA(a),t.g)}, +$S:917} +A.asN.prototype={ +$0(){var s=this.a.aa(0,$.bBt(),t.nc),r=this.c +r=r==null?null:J.Wq(r.a) +return s.MV(this.b,r)}, +$S:918} +A.asP.prototype={ +$2(a,b){var s=this.a +if(s.f!=null)A.hq(this.b,this.c.$1(s),!1,t.ab)}, +$S:13} +A.asO.prototype={ +$1(a){var s,r,q,p=a==null?null:a.ghd(a),o=this.a +if(o.f!=null){s=this.b.$1(o) +r=A.A(o,B.h,t.J).gnW() +q=s.b +q===$&&A.b() +q.vs() +J.Ws(s,r)}if(p!=null){s=p.gxs() +if(s==null||J.ce(s)){s=p.ghA() +if(s==null||J.ce(s)){s=p.gxp() +s=s==null||J.ce(s)}else s=!1}else s=!1 +s=!s}else s=!1 +if(s)A.fk(new A.asM(p),o,t.z)}, +$S:919} +A.asM.prototype={ +$1(a){return new A.As(this.a,null)}, +$S:920} +A.asR.prototype={ +$0(){var s=0,r=A.y(t.H),q=this,p,o,n,m,l +var $async$$0=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:p=q.a +o=q.b +n=p.aa(0,A.eA(o),t.g) +m=p.aa(0,$.Hp(),t.v) +l=p.aa(0,$.A8(),t.bo) +p=p.M($.Ho(),t.u) +A.nR(o,A.aAb(p===!0,!0,m,l)+"/backup/export/file",n) +return A.w(null,r)}}) +return A.x($async$$0,r)}, +$S:2} +A.asS.prototype={ +$0(){return this.a.E5(this.b,this.c)}, +$S:0} +A.As.prototype={ +A(a){var s,r=null,q=t.p,p=A.a([],q),o=this.c,n=o.gxs() +if(!(n==null||J.ce(n))){n=A.a([A.O(A.A(a,B.h,t.J).gnd(),r,r,r,r,A.r(a).p3.w,r,r)],q) +s=o.gxs() +s=s==null?r:J.co(s,new A.asF(),t.l7) +if(s!=null)B.b.I(n,s) +B.b.I(p,n)}n=o.ghA() +if(!(n==null||J.ce(n))){n=A.a([A.O(A.A(a,B.h,t.J).ghA(),r,r,r,r,A.r(a).p3.w,r,r)],q) +s=o.ghA() +s=s==null?r:J.co(s,new A.asG(),t.l7) +if(s!=null)B.b.I(n,s) +B.b.I(p,n)}n=o.gxp() +if(!(n==null||J.ce(n))){n=A.a([A.O(A.A(a,B.h,t.J).gn1(),r,r,r,r,A.r(a).p3.w,r,r)],q) +o=o.gxp() +o=o==null?r:J.co(o,new A.asH(),t.l7) +if(o!=null)B.b.I(n,o) +B.b.I(p,n)}p=A.ng(A.cO(p,B.w,B.D,B.aa),r,B.C,r,r,B.R) +o=A.A(a,B.h,t.J) +return A.kP(A.a([new A.ul(o.gdU(o),r)],q),p,r,r)}} +A.asF.prototype={ +$1(a){var s=null +return A.bH(!1,s,s,s,!0,s,s,!1,s,B.UQ,s,s,s,!1,s,s,s,s,s,A.O(a,s,s,s,s,s,s,s),s,s)}, +$S:170} +A.asG.prototype={ +$1(a){var s=null +return A.bH(!1,s,s,s,!0,s,s,!1,s,B.UX,s,s,s,!1,s,s,s,s,s,A.O(a,s,s,s,s,s,s,s),s,s)}, +$S:170} +A.asH.prototype={ +$1(a){var s=null +return A.bH(!1,s,s,s,!0,s,s,!1,s,B.UL,s,s,s,!1,s,s,s,s,s,A.O(a,s,s,s,s,s,s,s),s,s)}, +$S:170} +A.XM.prototype={ +A(a){var s=null,r=t.J +return A.e_(A.eh(s,s,s,s,s,s,A.O(A.A(a,B.h,r).gjB(),s,s,s,s,s,s,s)),s,A.j2(A.a([B.adj,A.bH(!1,s,!0,s,!0,s,s,!1,s,B.tD,s,s,s,!1,s,s,s,A.O(A.A(a,B.h,r).gnp(),s,s,s,s,s,s,s),s,s,s,s),B.f0],t.p),s,s,!1),s,s,s,!0,!1,!1,s,s)}} +A.yS.prototype={ +aP(){var s=this.a +s===$&&A.b() +return this.fb(0,s,!0,"showNSFW")}} +A.a8w.prototype={ +aJ(a,b){var s=null,r=A.O(A.A(a,B.h,t.J).gnn(),s,s,s,s,s,s,s),q=$.bnj(),p=J.ka(b.aa(0,q.gcr(),t.of)) +q=b.M(q,t.u) +return A.z2(B.de,s,p,B.Ur,s,r,q===!0)}} +A.alC.prototype={} +A.a1j.prototype={ +aJ(a,b){var s=null,r=t.J,q=A.eh(s,s,s,s,s,s,A.O(A.A(a,B.h,r).gkt(),s,s,s,s,s,s,s)),p=A.O(A.A(a,B.h,r).gkO(),s,s,s,s,s,s,s),o=a.ae(t.Gk).r.f +o.toString +return A.e_(q,s,A.j2(A.a([A.bH(!1,s,s,s,!0,s,s,!1,s,B.ty,s,s,new A.aDg(a,b),!1,s,s,s,A.O(A.bwH(o),s,s,s,s,s,s,s),s,p,s,s),A.bH(!1,s,s,s,!0,s,s,!1,s,B.UW,s,s,new A.aDh(b,a),!1,s,s,s,s,s,A.O(A.A(a,B.h,r).gmn(),s,s,s,s,s,s,s),s,s)],t.p),s,s,!1),s,s,s,!0,!1,!1,s,s)}} +A.aDg.prototype={ +$0(){return A.fk(new A.aDf(this.b),this.a,t.z)}, +$S:0} +A.aDf.prototype={ +$1(a){var s=A.A(a,B.h,t.J).gkO(),r=a.ae(t.Gk).r.f +r.toString +return A.uq(A.bTo(),A.bTn(),new A.aDe(this.a,a),B.A_,s,r,t.da)}, +$S:922} +A.aDe.prototype={ +$1(a){var s +J.eX(this.a.aa(0,$.bn5().gcr(),t.CV),a) +s=A.bd(this.b).c +s===$&&A.b() +s.e7(null)}, +$S:923} +A.aDh.prototype={ +$0(){var s=0,r=A.y(t.H),q=this,p,o +var $async$$0=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:o=q.a +s=2 +return A.t(o.M($.bmZ(),t.tR).aFj(),$async$$0) +case 2:$.bgM().b.Ah() +p=q.b +if(p.f!=null)J.Ws(o.aa(0,A.eA(p),t.g),A.A(p,B.h,t.J).gmd()) +return A.w(null,r)}}) +return A.x($async$$0,r)}, +$S:2} +A.a2H.prototype={ +A(a){var s=null,r=t.J +return A.e_(A.eh(s,s,s,s,s,s,A.O(A.A(a,B.h,r).ghz(),s,s,s,s,s,s,s)),s,A.j2(A.a([A.bH(!1,s,s,s,!0,s,s,!1,s,B.n4,s,s,new A.aH6(a),!1,s,s,s,s,s,A.O(A.A(a,B.h,r).gkW(),s,s,s,s,s,s,s),s,s)],t.p),s,s,!1),s,s,s,!0,!1,!1,s,s)}} +A.aH6.prototype={ +$0(){var s=A.e8("/settings/library/edit-categories",null) +return A.bd(this.a).dv(s,null,t.z)}, +$S:0} +A.a59.prototype={ +aJ(a,b){var s=null,r=t.J +return A.e_(A.eh(s,s,s,s,s,s,A.O(A.A(a,B.h,r).glg(),s,s,s,s,s,s,s)),s,A.j2(A.a([A.C5(new A.mA("assets/icons/dark_icon.png",s,s),s,A.aS(a,s,t.l).w.a.b*0.2),B.f0,B.JP,A.bH(!1,s,s,s,!0,s,s,!1,s,B.n4,s,s,new A.aJj(a),!1,s,s,s,s,s,A.O(A.A(a,B.h,r).gkW(),s,s,s,s,s,s,s),s,s),B.pU,A.bH(!1,s,s,s,!0,s,s,!1,s,B.tB,s,s,new A.aJk(a),!1,s,s,s,s,s,A.O(A.A(a,B.h,r).gjY(),s,s,s,s,s,s,s),s,s),B.f0,A.bH(!1,s,s,s,!0,s,s,!1,s,B.n3,s,s,new A.aJl(a),!1,s,s,s,s,s,A.O(A.A(a,B.h,r).gkB(),s,s,s,s,s,s,s),s,s),A.bH(!1,s,s,s,!0,s,s,!1,s,B.tD,s,s,new A.aJm(a),!1,s,s,s,s,s,A.O(A.A(a,B.h,r).gkL(),s,s,s,s,s,s,s),s,s),A.bH(!1,s,s,s,!0,s,s,!1,s,B.UG,s,s,new A.aJn(a,b),!1,s,s,s,s,s,A.O(A.A(a,B.h,r).gmR(),s,s,s,s,s,s,s),s,s)],t.p),s,s,!1),s,s,s,!0,!1,!1,s,s)}} +A.aJj.prototype={ +$0(){var s=A.e8("/settings/library/edit-categories",null) +return A.bd(this.a).dv(s,null,t.z)}, +$S:0} +A.aJk.prototype={ +$0(){var s=A.e8("/settings/backup",null) +return A.bd(this.a).dv(s,null,t.z)}, +$S:0} +A.aJl.prototype={ +$0(){var s=A.e8("/settings",null) +return A.bd(this.a).dv(s,null,t.z)}, +$S:0} +A.aJm.prototype={ +$0(){var s=A.e8("/about",null) +return A.bd(this.a).dv(s,null,t.z)}, +$S:0} +A.aJn.prototype={ +$0(){var s=this.a +return A.nR(s,"https://github.com/Suwayomi/Tachidesk-Server/wiki",this.b.aa(0,A.eA(s),t.mk))}, +$S:0} +A.a6X.prototype={ +aJ(a,b){var s=null +b.M($.bno(),t.u) +return A.e_(A.eh(s,s,s,s,s,s,A.O(A.A(a,B.h,t.J).glq(),s,s,s,s,s,s,s)),s,A.j2(A.a([B.ac1,B.ac2,B.ac_,B.abZ,B.aeM,B.ac4,B.ac3,B.ac0],t.p),s,s,!1),s,s,s,!0,!1,!1,s,s)}} +A.yg.prototype={ +aP(){var s=this.a +s===$&&A.b() +return this.fb(0,s,!0,"readerOverlay")}} +A.a6O.prototype={ +aJ(a,b){var s,r,q=null,p=t.J,o=A.O(A.A(a,B.h,p).gpX(),q,q,q,q,q,q,q) +p=A.O(A.A(a,B.h,p).gpY(),q,q,q,q,q,q,q) +s=$.bng() +r=J.ka(b.aa(0,s.gcr(),t.NF)) +s=b.M(s,t.u) +return A.z2(B.de,q,r,B.UY,p,o,s===!0)}} +A.ajR.prototype={} +A.xf.prototype={ +aP(){var s=this.a +s===$&&A.b() +return this.fb(0,s,!1,"invertTap")}} +A.a6P.prototype={ +aJ(a,b){var s=null,r=A.O(A.A(a,B.h,t.J).gnM(),s,s,s,s,s,s,s),q=$.bh9(),p=J.ka(b.aa(0,q.gcr(),t.tA)) +q=b.M(q,t.u) +return A.z2(B.de,s,p,B.UK,s,r,q===!0)}} +A.ah5.prototype={} +A.yh.prototype={ +aP(){var s=this.a +s===$&&A.b() +return this.fb(0,s,1,"readerMagnifierSize")}} +A.a6Q.prototype={ +aJ(a,b){var s,r=$.bnh(),q=b.M(r,t.PM) +if(q==null)q=1 +s=A.A(a,B.h,t.J).gjd() +return A.a8L(1,new A.aNq(),B.n_,5,1,J.ka(b.aa(0,r.gcr(),t.pf)),s,q,t.z)}} +A.aNq.prototype={ +$1(a){return B.e.az(a,2)}, +$S:68} +A.X8.prototype={ +aJ(a,b){return A.a8L(1,new A.as0(),B.n_,5,1,A.vI(new A.as1(this,A.bm5(null,t.dN)),[],t.qO),A.A(a,B.h,t.J).gjd(),this.r.a,t.z)}} +A.as1.prototype={ +$1(a){return this.adG(a)}, +adG(a){var s=0,r=A.y(t.H),q,p=this,o,n,m,l,k +var $async$$1=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:k=p.a +k.r.sk(0,a) +o=p.b +n=o.a +m=n==null +l=m?null:n.b!=null +if(l===!0)if(!m)n.aQ(0) +o.a=A.d2(B.bu,new A.as_(k,a)) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$$1,r)}, +$S:304} +A.as_.prototype={ +$0(){return this.a.f.$1(this.b)}, +$S:0} +A.as0.prototype={ +$1(a){return B.e.az(a,2)}, +$S:68} +A.ajS.prototype={} +A.yi.prototype={ +aP(){var s=this.a +s===$&&A.b() +return this.vc(0,s,B.no,B.hV,"readerMode")}} +A.a6R.prototype={ +aJ(a,b){var s=null,r=b.M($.bhh(),t.yZ),q=r!=null?A.O(r.h5(a),s,s,s,s,s,s,s):s +return A.bH(!1,s,s,s,!0,s,s,!1,s,B.UC,s,s,new A.aNu(a,r,b),!1,s,s,s,q,s,A.O(A.A(a,B.h,t.J).ghY(),s,s,s,s,s,s,s),s,s)}} +A.aNu.prototype={ +$0(){return A.fk(new A.aNt(this.b,this.c),this.a,t.z)}, +$S:0} +A.aNt.prototype={ +$1(a){var s=A.A(a,B.h,t.J).ghY(),r=B.b.fs(B.no,1),q=this.a +if(q==null)q=B.hV +return A.uq(null,new A.aNr(a),new A.aNs(this.b,a),r,s,q,t.uM)}, +$S:296} +A.aNr.prototype={ +$1(a){return a.h5(this.a)}, +$S:297} +A.aNs.prototype={ +$1(a){return this.adW(a)}, +adW(a){var s=0,r=A.y(t.H),q=this,p +var $async$$1=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:J.eX(q.a.aa(0,$.bhh().gcr(),t.jC),a) +p=q.b +if(p.f!=null){p=A.bd(p).c +p===$&&A.b() +p.e7(null)}return A.w(null,r)}}) +return A.x($async$$1,r)}, +$S:298} +A.ajT.prototype={} +A.yj.prototype={ +aP(){var s=this.a +s===$&&A.b() +return this.vc(0,s,B.nl,B.er,"readerNavigationLayout")}} +A.a6S.prototype={ +aJ(a,b){var s=null,r=b.M($.aqO(),t.dr),q=r!=null?A.O(r.h5(a),s,s,s,s,s,s,s):s +return A.bH(!1,s,s,s,!0,s,s,!1,s,B.tG,s,s,new A.aNy(a,r,b),!1,s,s,s,q,s,A.O(A.A(a,B.h,t.J).ghi(),s,s,s,s,s,s,s),s,s)}} +A.aNy.prototype={ +$0(){return A.fk(new A.aNx(this.b,this.c),this.a,t.z)}, +$S:0} +A.aNx.prototype={ +$1(a){var s=A.A(a,B.h,t.J).ghi(),r=B.b.fs(B.nl,1),q=this.a +if(q==null)q=B.er +return A.uq(null,new A.aNv(a),new A.aNw(this.b,a),r,s,q,t.lR)}, +$S:299} +A.aNv.prototype={ +$1(a){return a.h5(this.a)}, +$S:300} +A.aNw.prototype={ +$1(a){return this.adX(a)}, +adX(a){var s=0,r=A.y(t.H),q=this,p +var $async$$1=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:J.eX(q.a.aa(0,$.aqO().gcr(),t.j1),a) +p=q.b +if(p.f!=null){p=A.bd(p).c +p===$&&A.b() +p.e7(null)}return A.w(null,r)}}) +return A.x($async$$1,r)}, +$S:301} +A.ajU.prototype={} +A.yk.prototype={ +aP(){var s=this.a +s===$&&A.b() +return this.fb(0,s,0,"readerPadding")}} +A.a6U.prototype={ +aJ(a,b){var s,r=$.bni(),q=b.M(r,t.PM) +if(q==null)q=0 +s=A.A(a,B.h,t.J).gje() +return A.a8L(0,new A.aNA(),B.tt,0.4,0,J.ka(b.aa(0,r.gcr(),t.WJ)),s,q,t.z)}} +A.aNA.prototype={ +$1(a){return B.e.az(a*2.5,2)}, +$S:68} +A.X9.prototype={ +aJ(a,b){return A.a8L(0,new A.as3(),B.tt,0.4,0,A.vI(new A.as4(this,A.bm5(null,t.dN)),[],t.qO),A.A(a,B.h,t.J).gje(),this.r.a,t.z)}} +A.as4.prototype={ +$1(a){return this.adH(a)}, +adH(a){var s=0,r=A.y(t.H),q,p=this,o,n,m,l,k +var $async$$1=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:k=p.a +k.r.sk(0,a) +o=p.b +n=o.a +m=n==null +l=m?null:n.b!=null +if(l===!0)if(!m)n.aQ(0) +o.a=A.d2(B.bu,new A.as2(k,a)) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$$1,r)}, +$S:304} +A.as2.prototype={ +$0(){return this.a.f.$1(this.b)}, +$S:0} +A.as3.prototype={ +$1(a){return B.e.az(a*2.5,2)}, +$S:68} +A.ajV.prototype={} +A.yl.prototype={ +aP(){var s=this.a +s===$&&A.b() +return this.fb(0,s,!0,"scrollAnimation")}} +A.a6W.prototype={ +aJ(a,b){var s=null,r=A.O(A.A(a,B.h,t.J).gnQ(),s,s,s,s,s,s,s),q=$.bhi(),p=J.ka(b.aa(0,q.gcr(),t.sx)) +q=b.M(q,t.u) +return A.z2(B.de,s,p,B.UP,s,r,q===!0)}} +A.ajW.prototype={} +A.z1.prototype={ +aP(){var s=this.a +s===$&&A.b() +return this.fb(0,s,!0,"swipeToggle")}} +A.a9J.prototype={ +aJ(a,b){var s,r,q=null,p=t.J,o=A.O(A.A(a,B.h,p).goY(),q,q,q,q,q,q,q) +p=A.O(A.A(a,B.h,p).goZ(),q,q,q,q,q,q,q) +s=$.bnm() +r=J.ka(b.aa(0,s.gcr(),t.ou)) +s=b.M(s,t.u) +return A.z2(B.de,q,r,B.V3,p,o,s===!0)}} +A.ami.prototype={} +A.zq.prototype={ +aP(){var s=this.a +s===$&&A.b() +return this.fb(0,s,!1,"volumeTapInvert")}} +A.anT.prototype={} +A.zp.prototype={ +aP(){var s=this.a +s===$&&A.b() +return this.fb(0,s,!1,"volumeTap")}} +A.anU.prototype={} +A.a8o.prototype={ +aJ(a,b){var s=null,r=b.M($.vM(),t.Wr),q=t.J,p=A.eh(s,s,s,s,s,s,A.O(A.A(a,B.h,q).gjp(),s,s,s,s,s,s,s)),o=A.a([B.JP,B.acZ,B.Lz],t.p) +if(r!=null&&r!==B.dY){q=A.A(a,B.h,q) +o.push(A.bH(!1,s,s,s,!0,s,s,!1,s,B.UT,s,s,new A.aSs(a),!1,s,s,s,s,s,A.O(q.gkZ(q),s,s,s,s,s,s,s),s,s))}return A.e_(p,s,A.j2(o,s,s,!1),s,s,s,!0,!1,!1,s,s)}} +A.aSs.prototype={ +$0(){A.fk(new A.aSr(),this.a,t.z)}, +$S:0} +A.aSr.prototype={ +$1(a){return B.QB}, +$S:925} +A.Xe.prototype={ +aJ(a,b){var s=null,r=b.M($.vM(),t.Wr),q=r!=null?A.O(r.h5(a),s,s,s,s,s,s,s):s +return A.bH(!1,s,s,s,!0,s,s,!1,s,B.V2,s,s,new A.ast(a,r,b),!1,s,s,s,q,s,A.O(A.A(a,B.h,t.J).gkS(),s,s,s,s,s,s,s),s,s)}} +A.ast.prototype={ +$0(){return A.fk(new A.ass(this.b,this.c),this.a,t.z)}, +$S:0} +A.ass.prototype={ +$1(a){var s=A.A(a,B.h,t.J).gkS(),r=this.a +if(r==null)r=B.dY +return A.uq(null,new A.asq(a),new A.asr(this.b,a),B.vh,s,r,t.qC)}, +$S:926} +A.asq.prototype={ +$1(a){return a.h5(this.a)}, +$S:927} +A.asr.prototype={ +$1(a){var s +J.eX(this.a.aa(0,$.vM().gcr(),t.ca),a) +s=A.bd(this.b).c +s===$&&A.b() +s.e7(null)}, +$S:928} +A.wg.prototype={ +aP(){var s=this.a +s===$&&A.b() +return this.fb(0,s,null,"basicCredentials")}} +A.B4.prototype={ +aJ(a,b){var s,r,q,p,o,n,m=null,l=t.QX,k=$.b7.bm(new A.mr(m,m),l) +l=$.b7.bm(new A.mr(m,m),l) +s=t.J +r=A.A(a,B.h,s) +r=A.O(r.gkZ(r),m,m,m,m,m,m,m) +q=$.bmY() +p=A.bss(k,A.tQ(m,B.en,m,m,m,m,m,m,!0,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,A.A(a,B.h,s).go7(),m,m,m,m,!1,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m),!1,new A.awO(a)) +o=A.A(a,B.h,s) +n=t.p +o=A.cO(A.a([p,B.Ki,A.bss(l,A.tQ(m,B.en,m,m,m,m,m,m,!0,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,o.gns(o),m,m,m,m,!1,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m,m),!0,new A.awP(a))],n),B.w,B.D,B.aa) +s=A.A(a,B.h,s) +return A.kP(A.a([B.dR,A.wD(!1,A.O(s.giq(s),m,m,m,m,m,m,m),B.l,m,m,m,m,m,new A.awQ(this,b,k,l,a),m,m)],n),new A.K2(o,B.pZ,q),m,r)}} +A.awO.prototype={ +$1(a){return a.length===0?A.A(this.a,B.h,t.J).gmJ():null}, +$S:305} +A.awP.prototype={ +$1(a){return a.length===0?A.A(this.a,B.h,t.J).gmI():null}, +$S:305} +A.awQ.prototype={ +$0(){var s=0,r=A.y(t.H),q=this,p,o,n +var $async$$0=A.u(function(a,b){if(a===1)return A.v(b,r) +while(true)switch(s){case 0:n=$.bmY().gR() +if(n==null)n=null +else{n.e=!0 +n.a0O() +n=n.wt()}if(n===!0){n=q.b.aa(0,$.Hn().gcr(),t.W8) +p=q.c.a.a +o=q.d.a.a +o=B.O.gfY().cN(p+":"+o) +J.eX(n,"Basic "+B.qg.gfY().cN(o)) +o=A.bd(q.e).c +o===$&&A.b() +o.e7(null)}return A.w(null,r)}}) +return A.x($async$$0,r)}, +$S:2} +A.aeB.prototype={} +A.a8q.prototype={ +A(a){var s=null,r=t.J,q=A.eh(s,s,s,s,s,s,A.O(A.A(a,B.h,r).gkB(),s,s,s,s,s,s,s)),p=A.bH(!1,s,s,s,!0,s,s,!1,s,B.UJ,s,s,new A.aSA(a),!1,s,s,s,s,s,A.O(A.A(a,B.h,r).gkt(),s,s,s,s,s,s,s),s,s),o=A.A(a,B.h,r) +return A.e_(q,s,A.j2(A.a([p,A.bH(!1,s,s,s,!0,s,s,!1,s,B.Ut,s,s,new A.aSB(a),!1,s,s,s,s,s,A.O(o.gkR(o),s,s,s,s,s,s,s),s,s),A.bH(!1,s,s,s,!0,s,s,!1,s,B.UH,s,s,new A.aSC(a),!1,s,s,s,s,s,A.O(A.A(a,B.h,r).ghz(),s,s,s,s,s,s,s),s,s),A.bH(!1,s,s,s,!0,s,s,!1,s,B.UN,s,s,new A.aSD(a),!1,s,s,s,s,s,A.O(A.A(a,B.h,r).glq(),s,s,s,s,s,s,s),s,s),A.bH(!1,s,s,s,!0,s,s,!1,s,B.UO,s,s,new A.aSE(a),!1,s,s,s,s,s,A.O(A.A(a,B.h,r).gjB(),s,s,s,s,s,s,s),s,s),A.bH(!1,s,s,s,!0,s,s,!1,s,B.tB,s,s,new A.aSF(a),!1,s,s,s,s,s,A.O(A.A(a,B.h,r).gjY(),s,s,s,s,s,s,s),s,s),A.bH(!1,s,s,s,!0,s,s,!1,s,B.tI,s,s,new A.aSG(a),!1,s,s,s,s,s,A.O(A.A(a,B.h,r).gjp(),s,s,s,s,s,s,s),s,s)],t.p),s,s,!1),s,s,s,!0,!1,!1,s,s)}} +A.aSA.prototype={ +$0(){var s=A.e8("/settings/general",null) +return A.bd(this.a).dv(s,null,t.z)}, +$S:0} +A.aSB.prototype={ +$0(){var s=A.e8("/settings/appearance",null) +return A.bd(this.a).dv(s,null,t.z)}, +$S:0} +A.aSC.prototype={ +$0(){var s=A.e8("/settings/library",null) +return A.bd(this.a).dv(s,null,t.z)}, +$S:0} +A.aSD.prototype={ +$0(){var s=A.e8("/settings/reader",null) +return A.bd(this.a).dv(s,null,t.z)}, +$S:0} +A.aSE.prototype={ +$0(){var s=A.e8("/settings/browse",null) +return A.bd(this.a).dv(s,null,t.z)}, +$S:0} +A.aSF.prototype={ +$0(){var s=A.e8("/settings/backup",null) +return A.bd(this.a).dv(s,null,t.z)}, +$S:0} +A.aSG.prototype={ +$0(){var s=A.e8("/settings/server",null) +return A.bd(this.a).dv(s,null,t.z)}, +$S:0} +A.yM.prototype={ +aP(){var s=this.a +s===$&&A.b() +return this.fb(0,s,4567,"serverPort")}} +A.yN.prototype={ +aP(){var s=this.a +s===$&&A.b() +return this.fb(0,s,!1,"serverPortToggle")}} +A.a8n.prototype={ +aJ(a,b){var s,r,q=null,p=b.M($.A8(),t.bo),o=b.M($.Ho(),t.u),n=o===!0 +o=A.O(A.A(a,B.h,t.J).gkz(),q,q,q,q,q,q,q) +s=n&&p!=null?A.O(B.f.j(p),q,q,q,q,q,q,q):q +r=A.bsm(q,q,q,!1,B.C,q,q,q,q,q,q,new A.aSp(b),q,q,q,q,q,q,q,q,n) +return A.bH(!1,q,q,q,!0,q,q,!1,q,B.V0,q,q,n?new A.aSq(a,p):q,!1,q,q,q,s,q,o,r,q)}} +A.aSp.prototype={ +$1(a){J.eX(this.a.aa(0,$.Ho().gcr(),t.Qm),a)}, +$S:7} +A.aSq.prototype={ +$0(){return A.fk(new A.aSo(this.b),this.a,t.z)}, +$S:0} +A.aSo.prototype={ +$1(a){return new A.E2(this.a,null)}, +$S:930} +A.E2.prototype={ +aJ(a,b){var s,r,q,p=null,o=this.f +o=J.cI(o==null?"":o) +o=$.b7.bm(new A.mr(o,p),t.QX) +s=t.J +r=A.O(A.A(a,B.h,s).gkz(),p,p,p,p,p,p,p) +q=A.a([$.byy()],t.VS) +q=A.EJ(!0,B.bU,!0,p,!0,B.E,p,A.W6(),o,p,p,p,p,2,A.tQ(p,B.en,p,p,B.a_,p,p,p,!0,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,A.A(a,B.h,s).glI(),p,p,p,p,!1,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p),B.C,!0,p,!0,p,!1,p,q,p,B.afc,p,5,p,1,p,p,!1,"\u2022",p,p,p,new A.aSm(this,o,b,a),p,p,!1,p,!0,p,B.dx,p,p,B.c3,B.bK,p,p,p,p,p,p,B.b3,p,B.dX,p,p,p,p) +s=A.A(a,B.h,s) +return A.kP(A.a([B.dR,A.wD(!1,A.O(s.giq(s),p,p,p,p,p,p,p),B.l,p,p,p,p,p,new A.aSn(this,o,b,a),p,p)],t.p),q,p,r)}} +A.aSm.prototype={ +$1(a){var s=A.lW(this.b.a.a,null) +J.eX(this.c.aa(0,$.A8().gcr(),t.Ev),s) +s=A.bd(this.d).c +s===$&&A.b() +s.e7(null)}, +$S:25} +A.aSn.prototype={ +$0(){var s=A.lW(this.b.a.a,null) +J.eX(this.c.aa(0,$.A8().gcr(),t.Ev),s) +s=A.bd(this.d).c +s===$&&A.b() +s.e7(null)}, +$S:0} +A.aln.prototype={} +A.alm.prototype={} +A.yO.prototype={ +aP(){var s,r=this.a +r===$&&A.b() +s=A.aaI() +return this.fb(0,r,s.gBe(s),"serverUrl")}} +A.a8p.prototype={ +aJ(a,b){var s,r=null,q=b.M($.Hp(),t.v),p=A.O(A.A(a,B.h,t.J).gkA(),r,r,r,r,r,r,r) +if(!(q==null||q.length===0)){q.toString +s=A.O(q,r,r,r,r,r,r,r)}else s=r +return A.bH(!1,r,r,r,!0,r,r,!1,r,B.tI,r,r,new A.aSw(a,q),!1,r,r,r,s,r,p,r,r)}} +A.aSw.prototype={ +$0(){return A.fk(new A.aSv(this.b),this.a,t.z)}, +$S:0} +A.aSv.prototype={ +$1(a){return new A.E4(this.a,null)}, +$S:931} +A.E4.prototype={ +a4b(a,b,c){var s=B.c.hM(b,"/")?B.c.U(b,0,b.length-1):b +J.eX(c.aa(0,$.Hp().gcr(),t.Tb),s)}, +aJ(a,b){var s=null,r=$.b7.bm(new A.mr(this.f,s),t.QX),q=t.J,p=A.O(A.A(a,B.h,q).gkA(),s,s,s,s,s,s,s),o=A.EJ(!0,B.bU,!0,s,!0,B.E,s,A.W6(),r,s,s,s,s,2,A.tQ(s,B.en,s,s,s,s,s,s,!0,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,A.A(a,B.h,q).glJ(),s,s,s,s,!1,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s),B.C,!0,s,!0,s,!1,s,s,s,s,s,s,s,1,s,s,!1,"\u2022",s,s,s,new A.aSt(this,r,b,a),s,s,!1,s,!0,s,B.dx,s,s,B.c3,B.bK,s,s,s,s,s,s,B.b3,s,B.dX,s,s,s,s) +q=A.A(a,B.h,q) +return A.kP(A.a([B.dR,A.wD(!1,A.O(q.giq(q),s,s,s,s,s,s,s),B.l,s,s,s,s,s,new A.aSu(this,r,b,a),s,s)],t.p),o,s,p)}} +A.aSt.prototype={ +$1(a){var s,r=this +r.a.a4b(0,r.b.a.a,r.c) +s=A.bd(r.d).c +s===$&&A.b() +s.e7(null)}, +$S:25} +A.aSu.prototype={ +$0(){var s,r=this +r.a.a4b(0,r.b.a.a,r.c) +s=A.bd(r.d).c +s===$&&A.b() +s.e7(null)}, +$S:0} +A.alp.prototype={} +A.NO.prototype={ +A(a){var s=this,r=null,q=s.e,p=s.y.$1(q),o=A.fR(s.d,r,r,r),n=A.O(s.c,r,r,r,r,r,r,r),m=A.db(r,r,B.tA,r,new A.aTw(s),r,r,r,r,r) +return A.bH(!1,r,!1,r,!0,r,r,!0,r,o,r,r,r,!1,r,r,r,A.dd(A.a([A.dD(A.bs5(r,p,s.x,s.r,new A.aTx(s),q),1),A.O(p,r,r,r,r,r,r,r)],t.p),B.w,B.D,B.T),r,n,m,r)}, +geB(a){return this.d}} +A.aTw.prototype={ +$0(){var s=this.a +return s.f.$1(s.w)}, +$S:0} +A.aTx.prototype={ +$1(a){return this.a.f.$1(a)}, +$S:46} +A.z9.prototype={ +aP(){var s=this.a +s===$&&A.b() +return this.vc(0,s,B.zO,B.ih,"themeMode")}} +A.WW.prototype={ +aJ(a,b){var s=null,r=b.M($.bhn(),t.YX),q=A.fR(A.r(a).ax.a===B.am?B.TD:B.TT,s,s,s),p=r!=null?A.O(A.bsA(r,a),s,s,s,s,s,s,s):s +return A.bH(!1,s,s,s,!0,s,s,!1,s,q,s,s,new A.arF(a,r,b),!1,s,s,s,p,s,A.O(A.A(a,B.h,t.J).gkP(),s,s,s,s,s,s,s),s,s)}} +A.arF.prototype={ +$0(){return A.fk(new A.arE(this.b,this.c),this.a,t.z)}, +$S:0} +A.arE.prototype={ +$1(a){var s=A.A(a,B.h,t.J).gkP(),r=this.a +if(r==null)r=B.ih +return A.uq(null,new A.arC(a),new A.arD(this.b,a),B.zO,s,r,t.jm)}, +$S:932} +A.arC.prototype={ +$1(a){return A.bsA(a,this.a)}, +$S:933} +A.arD.prototype={ +$1(a){return this.adF(a)}, +adF(a){var s=0,r=A.y(t.H),q=this,p +var $async$$1=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:J.eX(q.a.aa(0,$.bhn().gcr(),t.Ax),a) +p=q.b +if(p.f!=null){p=A.bd(p).c +p===$&&A.b() +p.e7(null)}return A.w(null,r)}}) +return A.x($async$$1,r)}, +$S:934} +A.an3.prototype={} +A.vU.prototype={ +aP(){var s=this.a +s===$&&A.b() +return this.vc(0,s,B.vh,B.dY,"authType")}} +A.tX.prototype={ +aOt(a){var s,r=t.N +r=A.F(r,r) +s=a.geV() +if(!(s==null||s.length===0)){s=a.geV() +s.toString +r.p(0,"countryCode",s)}s=a.ge_(a) +if(s.length!==0)r.p(0,"languageCode",a.ge_(a)) +s=a.b +if(!(s==null||s.length===0)){s.toString +r.p(0,"scriptCode",s)}return r}, +aIl(a){var s,r,q,p="languageCode" +if(!t.a.b(a)||J.b3(a,p)==null)s=null +else{s=J.ak(a) +r=s.i(a,p) +r.toString +r=J.cI(r) +q=s.i(a,"scriptCode") +q=q==null?null:J.cI(q) +s=s.i(a,"countryCode") +s=new A.d6(r,q,s==null?null:J.cI(s))}return s}, +aP(){var s=this,r=s.a +r===$&&A.b() +return s.aam(0,r,s.gaIk(),B.A1,"l10n",s.gaOs())}} +A.adp.prototype={} +A.ahd.prototype={} +A.Dq.prototype={ +To(a,b,c){return new A.a89(c,null)}} +A.E9.prototype={ +To(a,b,c){return new A.a8v(c,null)}} +A.C1.prototype={ +ace(a,b,c){return"/library"}} +A.tZ.prototype={ +wC(a,b){var s=null +return A.bqZ(s,new A.a2G(this.a,s),s,s,s,t.H)}} +A.F6.prototype={ +wC(a,b){return B.a9V}} +A.Az.prototype={ +wC(a,b){return B.a9Y}} +A.Bm.prototype={ +wC(a,b){return B.a9W}} +A.CP.prototype={ +wC(a,b){return B.a9X}} +A.j3.prototype={ +aJ(a,b){return new A.a35(this.a,this.b,null)}} +A.F5.prototype={ +aJ(a,b){return B.all}} +A.tE.prototype={ +aJ(a,b){var s=this.a +return new A.a1s(s,new A.bP(s,t._b))}} +A.kA.prototype={ +aJ(a,b){var s=this,r=s.a +return new A.a9e(r,s.b,s.c,s.d,new A.bP(r,t.O))}} +A.Ei.prototype={ +aJ(a,b){return new A.a9h(this.a,null)}} +A.Ad.prototype={ +aJ(a,b){return B.Lr}} +A.i4.prototype={ +wC(a,b){var s=this,r=null +return A.bEm(r,new A.a6V(s.a,s.b,s.e,r),b.y,r,r,B.bt,B.bt,new A.aNB(s),t.H)}} +A.aNB.prototype={ +$4(a,b,c,d){var s=this.a,r=s.c===!0,q=r?0:1,p=B.i.T(0,new A.l(q,r?1:0)) +if(s.d===!0)p=p.au(0,-1) +s=t.Ni +return A.NM(d,new A.aw(b,new A.aO(p,B.i,s),s.h("aw")),null,!0)}, +$C:"$4", +$R:4, +$S:306} +A.E7.prototype={ +aJ(a,b){return B.ade}} +A.Ct.prototype={ +aJ(a,b){return B.VV}} +A.Bs.prototype={ +aJ(a,b){return B.Sf}} +A.E3.prototype={ +aJ(a,b){return B.ad_}} +A.Dy.prototype={ +aJ(a,b){return B.ac5}} +A.Al.prototype={ +aJ(a,b){return B.Lx}} +A.BR.prototype={ +aJ(a,b){return B.SP}} +A.AA.prototype={ +aJ(a,b){return B.MP}} +A.At.prototype={ +aJ(a,b){return B.LC}} +A.aqp.prototype={ +$1(a){var s=A.bgK(this.a) +return A.bd(a).tU(0,s,null)}, +$S:91} +A.aqr.prototype={ +$1(a){var s=A.e8("/updates",null) +return A.bd(a).tU(0,s,null)}, +$S:91} +A.aqn.prototype={ +$1(a){var s=A.e8("/browse",null) +return A.bd(a).tU(0,s,null)}, +$S:91} +A.aqo.prototype={ +$1(a){var s=A.e8("/downloads",null) +return A.bd(a).tU(0,s,null)}, +$S:91} +A.aqq.prototype={ +$1(a){var s=A.e8("/more",null) +return A.bd(a).tU(0,s,null)}, +$S:91} +A.bdD.prototype={ +$1(a){return J.i(a.b,this.a)}, +$S(){return this.b.h("p(aU<0,f>)")}} +A.a9_.prototype={ +aJ(a,b){var s,r=b.M($.bBK(),t.aq),q=b.M($.bhn(),t.YX),p=b.M($.bn5(),t.x5),o=$.bBx(),n=o.a +n===$&&A.b() +s=q==null?B.ih:q +return new A.CI(r,new A.aTY(),n,o.b,s,p,B.W8,B.A_,!1,null)}} +A.aTY.prototype={ +$1(a){return A.A(a,B.h,t.J).gkQ()}, +$S:75} +A.as7.prototype={ +$2(a,b){var s=this.a,r=s.b +r===$&&A.b() +r.vs() +s.H9(J.cI(a))}, +$S:23} +A.asb.prototype={ +$0(){return A.bnY(this.a,this.b,this.c)}, +$S:0} +A.asc.prototype={ +$1(a){var s=null +return A.e_(A.eh(s,s,s,s,s,s,s),s,a,s,s,s,!0,!1,!1,s,s)}, +$S:135} +A.asd.prototype={ +$2(a,b){var s,r=this,q=null,p=r.a.a,o=r.b?A.A(r.c,B.h,t.J).gjH():J.cI(a),n=r.d +if(n!=null){s=A.A(r.c,B.h,t.J) +n=A.eM(!1,A.O(s.gfd(s),q,q,q,q,q,q,q),B.l,q,q,q,q,q,n,q,q)}else n=q +return A.Ak(p,A.hU(n,o))}, +$S:939} +A.ase.prototype={ +$0(){return A.Ak(this.a.a,B.e_)}, +$S:940} +A.as8.prototype={ +$1(a){return A.X6(this.a.$1(a),this.c)}, +$S(){return this.c.h("@<0>").S(this.b).h("fL<1>(2)")}} +A.as9.prototype={ +$2(a,b){return A.HS(a,b,this.a)}, +$S(){return this.a.h("eu<0>(B,cz)")}} +A.asa.prototype={ +$0(){return A.bhI(this.a)}, +$S(){return this.a.h("eY<0>()")}} +A.aIt.prototype={ +$2(a,b){if(b!=null)this.a.p(0,a,b)}, +$S(){return this.b.h("@<0>").S(this.c).h("~(1,2)")}} +A.Gq.prototype={ +a8(){var s=this.$ti +return new A.Sh(s.h("@<1>").S(s.z[1]).h("Sh<1,2>"))}} +A.Sh.prototype={ +gqA(a){var s,r,q,p,o,n,m,l=this,k=l.d +if(k===$){s=l.c +r=s.b +s=s.c +q=l.$ti +p=A.a([],t.WL) +o=A.a([],q.h("G<~(1)>")) +n=q.h("@<1>").S(q.z[1]) +m=$.b5() +l.d!==$&&A.am() +k=l.d=new A.qw(new A.bb(p,t.Zo),new A.bb(o,q.h("bb<~(1)>")),s,r,new A.j7(null,null,r,n.h("j7<1,2>")),m,n.h("qw<1,2>"))}return k}, +A(a){return this.gqA(this)}, +m(){var s=this.gqA(this) +s.x=s.w=null +s.eH() +return null}} +A.er.prototype={ +Yo(a,b,c){var s +if(c)A.tD(new A.aYf(this,b),t.H) +else{s=this.b +s===$&&A.b() +s.O1(A.bk1(null,b),B.p5)}}, +rz(a,b){return this.Yo(a,b,!1)}, +H9(a){var s=this.b +s===$&&A.b() +return s.O1(A.bk1(B.Qj,a),B.ajC)}} +A.aYf.prototype={ +$0(){var s=this.a.b +s===$&&A.b() +return s.O1(A.bk1(null,this.b),B.p5)}, +$S:0} +A.aaj.prototype={ +A(a){var s=null,r=A.O(this.c,s,s,s,s,A.eb(s,s,B.n,s,s,s,s,s,s,s,s,s,s,s,s,s,s,!0,s,s,s,s,s,s,s,s),B.eF,s),q=this.e +if(q==null)q=B.a6 +return A.cP(s,r,B.l,s,s,new A.dJ(q,s,s,B.cO,s,s,B.aE),s,s,s,B.mB,s)}, +geB(){return null}} +A.aah.prototype={ +$1(a){return A.eA(a)}, +fP(a){return A.eA(a.dy)}, +gfi(){return null}} +A.OS.prototype={ +bJ(a){var s=null,r=t.B +return new A.an8(s,!1,this,A.a([],t.nd),A.a([],r),A.a([],t._),A.a([],r),A.cx(s,s,s,t.M,t.K))}, +l(a,b){if(b==null)return!1 +return b instanceof A.OS&&b.dy===this.dy}, +gv(a){var s=A.bue(A.bue(0,A.cU(A.o(this))),A.cU(this.dy)) +s=s+((s&67108863)<<3)&536870911 +s^=s>>>11 +return s+((s&16383)<<15)&536870911}} +A.aYc.prototype={ +$1(a){var s,r,q +t.W_.a(a) +s=this.a +r=new A.er(s) +q=$.byw() +q.a=s +r.b=q +return r}, +$S:941} +A.OT.prototype={} +A.an8.prototype={} +A.apv.prototype={} +A.b_.prototype={ +aam(a,b,c,d,e,f){var s=this,r=b.M($.bhj(),t.cZ) +s.dK$!==$&&A.cl() +s.dK$=r +s.dJ$!==$&&A.cl() +s.dJ$=e +s.en$!==$&&A.cl() +s.en$=d +s.ex$!==$&&A.cl() +s.ex$=f +s.ey$!==$&&A.cl() +s.ey$=c +s.RB(b) +r=s.gaAZ(s) +if(r==null){r=s.en$ +r===$&&A.b()}return r}, +fb(a,b,c,d){return this.aam(a,b,null,c,d,null)}, +c_(a,b){this.sd8(0,b) +return b}, +gaAZ(a){var s,r,q=this,p=q.dK$ +p===$&&A.b() +s=q.dJ$ +s===$&&A.b() +r=J.b3(p.a,s) +p=q.ey$ +p===$&&A.b() +if(p!=null)return p.$1(B.at.uK(0,J.cI(r),null)) +if(r!=null&&t.j.b(r)){p=J.co(r,new A.aSK(),t.N) +return A.k(q).h("b_.T?").a(A.aa(p,!0,A.k(p).h("ax.E")))}if(A.k(q).h("b_.T?").b(r))p=r +else{p=q.en$ +p===$&&A.b()}return p}, +RB(a){return a.ab7(new A.aSL(this))}, +qm(a){var s=0,r=A.y(t.y),q,p=this,o,n,m +var $async$qm=A.u(function(b,c){if(b===1)return A.v(c,r) +while(true)switch(s){case 0:if(a==null){o=p.dK$ +o===$&&A.b() +n=p.dJ$ +n===$&&A.b() +q=o.F(0,n) +s=1 +break}o=p.ex$ +o===$&&A.b() +if(o!=null){n=p.dK$ +n===$&&A.b() +m=p.dJ$ +m===$&&A.b() +n.wn("String",m,B.at.wX(o.$1(a),null))}s=A.jl(a)?3:5 +break +case 3:o=p.dK$ +o===$&&A.b() +n=p.dJ$ +n===$&&A.b() +s=6 +return A.t(o.wn("Bool",n,a),$async$qm) +case 6:q=c +s=1 +break +s=4 +break +case 5:s=typeof a=="number"?7:9 +break +case 7:o=p.dK$ +o===$&&A.b() +n=p.dJ$ +n===$&&A.b() +s=10 +return A.t(o.wn("Double",n,a),$async$qm) +case 10:q=c +s=1 +break +s=8 +break +case 9:s=A.iK(a)?11:13 +break +case 11:o=p.dK$ +o===$&&A.b() +n=p.dJ$ +n===$&&A.b() +s=14 +return A.t(o.wn("Int",n,a),$async$qm) +case 14:q=c +s=1 +break +s=12 +break +case 13:s=typeof a=="string"?15:17 +break +case 15:o=p.dK$ +o===$&&A.b() +n=p.dJ$ +n===$&&A.b() +s=18 +return A.t(o.wn("String",n,a),$async$qm) +case 18:q=c +s=1 +break +s=16 +break +case 17:s=t.yp.b(a)?19:20 +break +case 19:o=p.dK$ +o===$&&A.b() +n=p.dJ$ +n===$&&A.b() +s=21 +return A.t(o.wn("StringList",n,a),$async$qm) +case 21:q=c +s=1 +break +case 20:case 16:case 12:case 8:case 4:q=!1 +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$qm,r)}} +A.aSK.prototype={ +$1(a){return J.cI(a)}, +$S:39} +A.aSL.prototype={ +$2(a,b){return this.a.qm(b)}, +$S(){return A.k(this.a).h("~(b_.T?,b_.T?)")}} +A.ey.prototype={ +vc(a,b,c,d,e){var s,r,q=this +q.pD$=b.M($.bhj(),t.cZ) +q.pC$=e +q.tb$=d +q.qJ$=c +q.RB(b) +s=q.pD$ +s===$&&A.b() +r=q.pC$ +r===$&&A.b() +r=A.bv(J.b3(s.a,r)) +s=q.qJ$ +s===$&&A.b() +if(r!=null&&r>=0&&r<=s.length-1){r.toString +s=s[r]}else s=q.tb$ +return s}, +qm(a){var s,r,q=this +if(a==null){s=q.pD$ +s===$&&A.b() +r=q.pC$ +r===$&&A.b() +return s.F(0,r)}s=q.pD$ +s===$&&A.b() +r=q.pC$ +r===$&&A.b() +return s.wn("Int",r,a)}, +RB(a){return a.ab7(new A.aSM(this))}} +A.aSM.prototype={ +$2(a,b){var s,r=this.a +if(b==null)s=null +else{s=r.qJ$ +s===$&&A.b() +s=B.b.eX(s,b)}return r.qm(s)}, +$S(){return A.k(this.a).h("~(ey.T?,ey.T?)")}} +A.En.prototype={} +A.tn.prototype={ +xR(a,b,c,d,e,f,g){return this.rL(d,new A.axv(this,b,e,null,c,null),f,g)}, +ob(a,b,c,d,e,f){return this.xR(a,b,c,d,null,e,f)}, +Xq(a,b,c,d,e){return this.xR(a,b,null,c,null,d,e)}, +GF(a,b,c,d,e){return this.xR(a,b,c,null,null,d,e)}, +rl(a,b,c,d){return this.xR(a,b,null,null,null,c,d)}, +MI(a,b,c,d,e,f,g){return this.rL(d,new A.axx(this,a,c,e,null,b,null,null),f,g)}, +Wr(a,b,c,d,e){return this.MI(a,b,c,null,null,d,e)}, +abS(a,b,c,d){return this.MI(a,null,b,null,null,c,d)}, +aMS(a,b,c,d,e){return this.MI(a,null,b,c,null,d,e)}, +MB(a,b,c,d,e){var s=null +return this.rL(s,new A.axw(this,a,c,s,s,b,s,s),d,e)}, +MA(a,b,c){return this.MB(a,null,null,b,c)}, +aME(a,b,c,d){return this.MB(a,null,b,c,d)}, +aN0(a,b,c,d,e,f){var s=null +return this.rL(s,new A.axy(this,b,d,s,s,c,s,s),e,f)}, +a8C(a,b,c,d,e,f,g,h,i){return this.rL(e,new A.axu(this,b,d,g,f,c),h,i)}, +zU(a,b,c,d){return this.a8C(a,b,null,null,null,null,null,c,d)}, +aGU(a,b,c,d,e){return this.a8C(a,b,c,null,null,null,null,d,e)}, +rL(a,b,c,d){return this.arv(a,b,c,d,c.h("fB<0?>"))}, +arv(a0,a1,a2,a3,a4){var s=0,r=A.y(a4),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e,d,c,b,a +var $async$rL=A.u(function(a5,a6){if(a5===1){o=a6 +s=p}while(true)switch(s){case 0:p=4 +s=7 +return A.t(a1.$0(),$async$rL) +case 7:m=a6 +l=null +s=a0!=null?8:10 +break +case 8:s=11 +return A.t(n.Dw(a0,m.a,a2,a3),$async$rL) +case 11:l=a6 +s=9 +break +case 10:if(a2.h("0?").b(m.a))l=m.a +case 9:j=m +i=l +if(i==null){i=j.a +i=a2.h("0?").b(i)?i:null}h=j.e +g=j.b +f=j.f +e=j.c +d=j.d +c=j.r +j=j.w +j=A.a7G(i,j,h,f,c,g,e,d,a2) +q=j +s=1 +break +p=2 +s=6 +break +case 4:p=3 +a=o +j=A.ai(a) +if(j instanceof A.hv){k=j +throw A.c(A.bEK(k))}else throw A.c("Unexpected error occurred") +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.w(q,r) +case 2:return A.v(o,r)}}) +return A.x($async$rL,r)}, +Dw(a,b,c,d){return this.azx(a,b,c,d,c.h("0?"))}, +azx(a,b,c,d,e){var s=0,r=A.y(e),q,p,o +var $async$Dw=A.u(function(f,g){if(f===1)return A.v(g,r) +while(true)switch(s){case 0:p=c.h("0?") +s=t.j.b(b)?3:5 +break +case 3:o=p +s=6 +return A.t(A.Hf(new A.axt(a,d),b,null,t.z,d.h("e<0>")),$async$Dw) +case 6:q=o.a(g) +s=1 +break +s=4 +break +case 5:o=p +s=7 +return A.t(A.Hf(a,b,null,t.a,d),$async$Dw) +case 7:q=o.a(g) +s=1 +break +case 4:case 1:return A.w(q,r)}}) +return A.x($async$Dw,r)}} +A.axv.prototype={ +$0(){var s=this +return s.a.a.aNO(0,s.b,s.e,null,s.f,A.a08("GET",s.d),s.c,t.z)}, +$S:88} +A.axx.prototype={ +$0(){var s=this +return s.a.a.xJ(0,s.b,s.f,s.c,s.w,s.r,A.a08("POST",s.e),s.d,t.z)}, +$S:88} +A.axw.prototype={ +$0(){var s=this +return s.a.a.xJ(0,s.b,s.f,s.c,s.w,s.r,A.a08("PATCH",s.e),s.d,t.z)}, +$S:88} +A.axy.prototype={ +$0(){var s=this +return s.a.a.xJ(0,s.b,s.f,s.c,s.w,s.r,A.a08("PUT",s.e),s.d,t.z)}, +$S:88} +A.axu.prototype={ +$0(){var s=this +return s.a.a.aNN(0,s.b,s.f,s.c,A.a08("DELETE",s.e),s.d,t.z)}, +$S:88} +A.axt.prototype={ +$1(a){var s,r,q=A.a([],this.b.h("G<0>")) +for(s=J.ao(a),r=this.a;s.u();)q.push(r.$1(s.gH(s))) +return q}, +$S(){return this.b.h("e<0>(@)")}} +A.Bh.prototype={ +aMU(a,b,c,d,e,f){var s=null,r=A.a([401,403],t.t),q=new A.a28(A.a([B.NJ],t.i6)),p=new A.asE(A.bQN()),o=new A.axz($,q,$,p,!1),n=t.N,m=t.z,l=new A.asT($,$,s,"GET",s,s,B.fC,A.bx6(),!0,A.F(n,m),!0,5,!0,s,s,B.js) +l.Zz(s,s,s,s,s,s,s,s,s,s,s,s,B.fC,s,s) +l.ER$=A.F(n,m) +l.uU$="" +l.sTG(s) +n=l +o.L9$=n +o.a9h$=new A.atM(A.aY(t.Gf)) +p.a=A.bTX() +n.uU$=A.aAb(a,!0,c,f) +n.sTG(B.rK) +n.d=B.rK +n.sTI(0,"application/json") +n.saa9(0,A.ap(["Content-Type","application/json; charset=utf-8"],t.N,t.z)) +e.toString +q.G(q,new A.Je(new A.aue(B.qE,r,B.Rx,B.qG,e),e)) +q.G(q,new A.a29(new A.axS(b,d),s,s,s)) +return o}} +A.axS.prototype={ +$2(a,b){var s,r +if(this.a===B.iB){s=this.b +if(!(s==null||s.length===0)){r=a.b +r===$&&A.b() +r.cJ(0,"Authorization",new A.axR(s))}}return b.fp(0,a)}, +$S:67} +A.axR.prototype={ +$0(){return this.a}, +$S:115} +A.X5.prototype={ +A(a){var s=this,r=null,q=s.d,p=$.b7.bm(new A.cW(q,r,t.Kr),t.uh) +$.b7.bm(new A.dz(new A.arN(s,p),[q]),t.H) +q=p.a +return A.AI(r,B.jt,r,r,new A.arO(s,p),r,s.f,!1,q)}} +A.arN.prototype={ +$0(){this.b.sk(0,this.a.d) +return null}, +$S:5} +A.arO.prototype={ +$1(a){var s=a===!0 +this.b.sk(0,s) +this.a.e.$1(s)}, +$S:35} +A.Xa.prototype={ +A(a){var s,r,q=this,p=q.d,o=$.b7.bm(new A.cW(p,null,t.Kr),t.uh) +$.b7.bm(new A.dz(new A.as5(q,o),[p]),t.H) +p=o.a +s=p?null:q.z +p=!p +r=p?q.w:q.f +p=p?q.x:q.r +return A.bbE(r,p,new A.as6(q,o),s)}} +A.as5.prototype={ +$0(){this.b.sk(0,this.a.d) +return null}, +$S:5} +A.as6.prototype={ +$0(){var s=this.b +s.sk(0,!s.a) +this.a.e.$0()}, +$S:0} +A.J1.prototype={ +aJ(a,b){var s,r=this,q=null,p=b.M(r.f,t.u),o=A.r(a),n=r.w +if(n)s=p +else s=p!==!1 +return A.AI(o.dy,B.f8,q,q,r.r,q,A.O(r.e,q,q,q,q,q,q,q),n,s)}} +A.pM.prototype={ +A(a){var s=null,r=t.l +return A.f1(A.cZ(B.Kl,A.aS(a,s,r).w.a.b*0.35,A.aS(a,s,r).w.a.a*0.35),s,s)}} +A.a90.prototype={ +A(a){var s=null,r=A.r(a),q=A.r(a) +return A.brT(r.ax.CW,A.C5(new A.mA("assets/icons/dark_icon.png",s,s),s,s),q.dy)}} +A.a57.prototype={ +A(a){var s=null +return new A.b8(B.aT,new A.ez(16,16,A.bor(s,this.c,s,s,s,0,s,3,this.d,s),s),s)}} +A.Bz.prototype={ +A(a){var s,r=null,q=A.O($.b7.bm(new A.ib(new A.aA7(),B.cY,t.Nb),t.N),r,r,r,r,A.r(a).p3.b,B.eF,r) +q=A.a([q,B.fI],t.p) +s=this.d +if(s.length!==0)q.push(A.O(s,3,B.ac,r,r,A.r(a).p3.w,B.eF,r)) +s=this.f +if(s!=null)q.push(s) +return new A.b8(B.aT,A.f1(A.cO(q,B.w,B.dg,B.aa),r,r),r)}} +A.aA7.prototype={ +$0(){var s=B.a_P[B.fZ.xu(6)] +s.toString +return s}, +$S:14} +A.qo.prototype={ +A(a){var s,r,q,p,o,n,m,l,k=this,j=null,i=k.d +if(i==null)i=new A.aHQ(k,a) +s=k.w?A.bj5(k.c,j,k.f):j +r=k.r +if(r){q=k.c +p=q.ghk(q) +q=p==null?q.gzs():p +q=A.bH(!1,B.bC,!0,j,!0,j,j,!1,j,j,j,j,j,!1,j,j,j,j,j,A.O(q==null?"":q,2,B.ac,j,j,j,j,j),j,j)}else q=j +p=k.c +o=p.gq4() +if(!(o==null||o.length===0)){o=A.bo4(A.r(a).as,0) +if(k.x){n=A.r(a).as.a +n=A.a([new A.c8(0,B.a2,A.K(B.e.bi(127.5),n>>>16&255,n>>>8&255,n&255),B.i,0)],t.G)}else n=j +if(r){r=A.r(a).as.a +r=A.K(0,r>>>16&255,r>>>8&255,r&255) +m=A.r(a).as.a +m=A.K(102,m>>>16&255,m>>>8&255,m&255) +l=A.r(a).as.a +l=new A.u2(B.X,B.ix,B.cK,A.a([r,m,A.K(B.e.bi(229.5),l>>>16&255,l>>>8&255,l&255)],t.t_),j,j) +r=l}else r=j +p=p.gq4() +r=A.cP(j,A.nf(!1,j,p==null?"":p,j,!1,j,j),B.l,j,j,j,new A.dJ(j,j,o,j,n,r,B.aE),j,j,j,j)}else{r=t.l +p=A.aS(a,j,r).w +p=A.cZ(A.C5(new A.mA("assets/icons/dark_icon.png",j,j),j,A.aS(a,j,r).w.a.b*0.2),p.a.b*0.3,j) +r=p}return A.bqa(!1,j,!0,A.pI(new A.a1y(s,q,r,j),B.bc,j,j,new A.cE(B.q2,B.t)),!1,j,!0,!1,j,j,j,B.lV,j,j,j,j,j,j,j,k.e,j,j,j,j,i,j,j,j,j,j,j,j,j)}} +A.aHQ.prototype={ +$0(){var s=null,r=A.a([],t.Zt),q=$.a9,p=t.LR,o=t.zh,n=A.lX(B.bN),m=A.a([],t.wi),l=A.ed(s,t.v),k=$.a9 +return A.j5(this.b,!1).Bk(new A.LY(new A.aHO(this.a),new A.aHP(),!1,!0,!0,s,s,r,new A.bo(s,t.Ts),new A.bo(s,t.C),new A.oD(),s,0,new A.aD(new A.a8(q,p),o),n,m,B.fD,l,new A.aD(new A.a8(k,p),o),t.vo),t.z)}, +$S:0} +A.aHO.prototype={ +$3(a,b,c){var s=this.a.c.gq4() +return new A.CH(s==null?"":s,null)}, +$C:"$3", +$R:3, +$S:943} +A.aHP.prototype={ +$4(a,b,c,d){var s=t.Ni +return A.NM(d,new A.aw(A.c_(B.aL,b,null),new A.aO(B.o1,B.i,s),s.h("aw")),null,!0)}, +$C:"$4", +$R:4, +$S:306} +A.CG.prototype={ +A(a){var s,r,q,p,o,n,m,l=this,k=null,j=l.c,i=j.gfS(j) +i=i==null?k:i.gh9(i) +if(i==null)i=A.A(a,B.h,t.J).go5() +s=A.cZ(A.bj7(j,k,k,!1,!1,!1,!1),160,120) +r=l.w!=null?new A.aHN(l):k +q=j.ghk(j) +if(q==null)q=A.A(a,B.h,t.J).go4() +p=A.r(a) +r=A.jE(!1,k,!0,A.O(q,2,B.ac,j.ghk(j),k,p.p3.r,k,k),k,!0,k,k,k,k,k,k,k,k,k,r,k,k,k,k,k,k,k) +p=j.gzs() +q=p==null?A.A(a,B.h,t.J).go3():p +q=A.O(q,k,B.ac,k,k,A.r(a).p3.Q,k,k) +p=t.p +o=A.a([],p) +if(j.gaL(j)!=null){n=j.gaL(j).c +m=A.r(a).p3.Q +B.b.I(o,A.a([A.fR(n,m==null?k:m.b,k,16),A.O(" "+j.gaL(j).h5(a),k,k,k,k,A.r(a).p3.Q,k,k)],p))}n=j.gfS(j) +if((n==null?k:n.gh9(n))!=null)o.push(A.O(" \u2022 "+i,k,k,k,k,A.r(a).p3.Q,k,k)) +i=A.a([r,new A.b8(B.RX,q,k),A.b__(B.iq,o,B.anq,0,0)],p) +if(l.d)i.push(A.aS(a,k,t.l).w.a.a>=600?new A.a33(j,!0,k):A.bj5(j,B.cy,!0)) +return A.jE(!1,k,!0,new A.b8(B.aT,A.dd(A.a([s,A.dD(new A.b8(B.aT,A.cO(i,B.cS,B.D,B.aa),k),3)],p),B.w,B.D,B.T),k),k,!0,k,k,k,k,k,k,k,k,l.r,l.f,k,k,k,k,k,k,k)}} +A.aHN.prototype={ +$0(){var s=this.a,r=s.w +r.toString +s=s.c +return r.$1(s.ghk(s))}, +$S:0} +A.mU.prototype={ +A(a){var s,r=this,q=null,p=r.c,o=p.gq4() +o=A.o3(B.bh,A.nf(!1,q,o==null?"":o,q,!1,B.adV,q),B.bc) +s=p.ghk(p) +if(s==null)s=p.gzs() +o=A.a([new A.b8(B.aT,o,q),A.dD(new A.b8(B.bC,A.O(s==null?"":s,3,B.ac,q,q,q,q,q),q),1)],t.p) +o.push(A.bj5(p,q,r.f)) +return A.jE(!1,q,!0,A.dd(o,B.w,B.D,B.T),q,!0,q,q,q,q,q,q,q,q,r.e,r.d,q,q,q,q,q,q,q)}} +A.wA.prototype={ +aP(){var s=this.a +s===$&&A.b() +return this.fb(0,s,!0,"downloadedBadge")}} +A.zk.prototype={ +aP(){var s=this.a +s===$&&A.b() +return this.fb(0,s,!0,"unreadBadge")}} +A.afs.prototype={} +A.anI.prototype={} +A.a2V.prototype={ +aJ(a,b){var s,r,q,p,o,n,m,l=this,k=null,j=t.u,i=b.M($.bh5(),j),h=i!==!1 +j=b.M($.bho(),j) +s=j!==!1 +j=l.w +if(j==null)j=B.aT +i=t.p +r=A.a([],i) +q=l.r +if(!q){p=l.e.gfJ() +p=p===!0}else p=!1 +if(p)r.push(A.o3(B.bh,new A.CE(k,B.n0,A.r(a).ax.b,A.r(a).ax.c,k),B.bc)) +if(q){q=A.a([],i) +p=l.e +o=p.gtP() +if((o==null?!1:o>0)&&s){o=p.gtP() +if(o==null||B.f.gd6(o))o=0 +else o.toString +q.push(new A.CE(""+o,k,A.r(a).ax.b,A.r(a).ax.c,k))}o=p.gwU() +if((o==null?!1:o>0)&&h){p=p.gwU() +if(p==null||B.f.gd6(p))p=0 +else p.toString +o=A.r(a).ax +n=o.y +o=n==null?o.f:n +n=A.r(a).ax +m=n.z +n=m==null?n.r:m +q.push(new A.CE(""+p,k,o,n,k))}i=A.a([A.o3(B.bh,A.dd(q,B.w,B.D,B.aa),B.bc)],i) +B.b.I(r,i)}return new A.b8(j,A.dd(r,B.w,B.D,B.aa),k)}} +A.CE.prototype={ +A(a){var s=this,r=null,q=s.c,p=q==null||q.length===0,o=s.f +if(!p){q.toString +q=A.O(q,r,r,r,r,A.eb(r,r,o,r,r,r,r,r,r,r,r,r,r,r,r,r,r,!0,r,r,r,r,r,r,r,r),r,r)}else q=A.fR(s.d,o,r,16) +return A.pI(new A.b8(B.e7,q,r),r,s.e,B.a4,B.et)}, +geB(a){return this.d}} +A.a33.prototype={ +aJ(a,b){var s,r,q,p,o,n,m=t.u,l=b.M($.bh5(),m),k=l!==!1 +m=b.M($.bho(),m) +s=m!==!1 +m=t.p +l=A.a([],m) +r=A.a([],m) +q=this.e +p=q.gtP() +if((p==null?!1:p>0)&&s){p=t.J +o=A.A(a,B.h,p) +o.toString +p=A.A(a,B.h,p).gjS() +n=q.gtP() +if(n==null||B.f.gd6(n))n=0 +else n.toString +r.push(new A.L4(o.lh(p,n),A.r(a).ax.b,A.r(a).ax.c,null))}p=q.gwU() +if((p==null?!1:p>0)&&k){p=t.J +o=A.A(a,B.h,p) +o.toString +p=A.A(a,B.h,p) +p=p.gfE(p) +q=q.gwU() +if(q==null||B.f.gd6(q))q=0 +else q.toString +q=o.lh(p,q) +p=A.r(a).ax +o=p.y +p=o==null?p.f:o +o=A.r(a).ax +n=o.z +r.push(new A.L4(q,p,n==null?o.r:n,null))}B.b.I(l,A.a([A.dd(r,B.w,B.D,B.aa)],m)) +return new A.b8(B.cy,A.b__(B.iq,l,B.pp,0,0),null)}} +A.L4.prototype={ +A(a){var s=null +return new A.b8(B.S8,A.bhS(this.d,A.O(this.c,s,s,s,s,s,s,s),A.eb(s,s,this.e,s,s,s,s,s,s,s,s,s,s,s,s,s,s,!0,s,s,s,s,s,s,s,s)),s)}} +A.xM.prototype={ +XI(){var s,r,q,p,o,n,m=A.F(this.$ti.c,t.y) +for(s=this.e,r=s.length,q=this.f,p=J.ak(q),o=0;o>")),m.h("ec>")) +$.b7.bm(new A.dz(new A.aJV(p,n),[p.f,p.e]),t.H) +s=A.O(p.d,o,o,o,o,o,o,o) +r=n.a +q=A.A(a,B.h,t.J) +return A.kP(A.a([B.dR,A.wD(!1,A.O(q.giq(q),o,o,o,o,o,o,o),B.l,o,o,o,o,o,new A.aJW(p,n),o,o)],t.p),new A.AJ(r,new A.aJX(p,n),p.w,o,o,m.h("AJ<1>")),B.cy,s)}} +A.aJV.prototype={ +$0(){this.b.sk(0,this.a.XI()) +return null}, +$S:5} +A.aJX.prototype={ +$1(a){var s=this.b,r=s.a +J.ie(r,a.a,a.b) +s.sk(0,r)}, +$S(){return this.a.$ti.h("~(aU<1,p>)")}} +A.aJW.prototype={ +$0(){var s=this.b.a,r=this.a +r.r.$1(J.lC(J.jq(s),new A.aJU(r,s)).fL(0))}, +$S:0} +A.aJU.prototype={ +$1(a){var s=J.b3(this.b,a) +return s===!0}, +$S(){return this.a.$ti.h("p(1)")}} +A.AJ.prototype={ +a8(){return new A.Q5(B.m,this.$ti.h("Q5<1>"))}} +A.Q5.prototype={ +aep(a,b,c){var s=null,r=b.a,q=B.f.j(J.T(r)),p=A.r(a),o=this.a.e.$1(r) +r=A.O(o==null?"MapEntry("+A.h(r)+": "+A.h(b.b)+")":o,s,s,s,s,s,s,s) +this.a.toString +return A.AI(p.dy,B.jt,s,new A.bP(q,t.O),new A.b1K(c),s,r,!1,b.b)}, +A(a){var s=null,r=A.aS(a,s,t.l).w,q=J.Wp(this.a.c) +return new A.ew(new A.aL(0,1/0,0,r.a.b*0.7),A.ng(A.cO(q.ig(q,new A.b1J(this,a),t.l7).fL(0),B.w,B.D,B.aa),s,B.C,s,s,B.R),s)}} +A.b1K.prototype={ +$1(a){this.a.$1(a===!0)}, +$S:35} +A.b1J.prototype={ +$1(a){var s=this.a +return s.aep(this.b,a,new A.b1I(s,a))}, +$S(){return this.a.$ti.h("d(aU<1,p>)")}} +A.b1I.prototype={ +$1(a){var s=this.a +s.a7(new A.b1H(s,this.b,a))}, +$S:7} +A.b1H.prototype={ +$0(){var s=this.a +s.a.d.$1(new A.aU(this.b.a,this.c,s.$ti.h("aU<1,p>")))}, +$S:0} +A.ul.prototype={ +A(a){var s=null,r=this.c +if(r==null){r=A.A(a,B.h,t.J) +r=r.gdP(r)}return A.eM(!1,A.O(r,s,s,s,s,s,s,s),B.l,s,s,s,s,s,new A.aLX(a),s,s)}} +A.aLX.prototype={ +$0(){A.j5(this.a,!1).e7(null) +return null}, +$S:0} +A.hD.prototype={ +A(a){var s=this,r=null +return A.kP(B.a_V,new A.ye(s.d,s.e,s.f,s.r,s.w,r,s.$ti.h("ye<1>")),B.cy,A.O(s.c,r,r,r,r,r,r,r))}} +A.ye.prototype={ +aeQ(a,b){var s,r=this,q=null,p=A.r(a),o=r.f.$1(b) +o=A.O(o==null?J.cI(b):o,q,q,q,q,q,q,q) +s=r.r +s=s!=null?A.O(s.$1(b),q,q,q,q,q,q,q):q +return A.bjy(p.dy,r.d,new A.aN3(r),s,o,b,r.$ti.c)}, +A(a){var s=null,r=this.c,q=A.ab(r).h("ad<1,d>") +return new A.ew(new A.aL(0,1/0,0,A.aS(a,s,t.l).w.a.b*0.7),A.ng(A.cO(A.aa(new A.ad(r,new A.aN2(this,a),q),!0,q.h("ax.E")),B.w,B.D,B.aa),s,B.C,s,s,B.R),s)}} +A.aN3.prototype={ +$1(a){if(a!=null)this.a.e.$1(a)}, +$S(){return this.a.$ti.h("~(1?)")}} +A.aN2.prototype={ +$1(a){return this.a.aeQ(this.b,a)}, +$S(){return this.a.$ti.h("d(1)")}} +A.qP.prototype={ +A(a){var s,r=this,q=null,p=$.b7.bm(new A.mr(r.e,q),t.QX),o=r.w!=null?A.db(q,q,B.n1,q,new A.aRy(r),q,q,q,q,q):q,n=t.l +n=A.aS(a,q,n).w.a.a>=720?0.3*A.aS(a,q,n).w.a.a:q +s=r.d +if(s==null){s=A.A(a,B.h,t.J) +s=s.gkx(s)}return A.cZ(new A.b8(B.mB,A.EJ(!0,B.bU,r.x,q,!0,B.E,q,A.W6(),p,q,q,q,q,2,A.tQ(q,B.en,q,q,q,q,q,q,!0,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,!1,!0,q,q,s,q,q,q,q,q,q,q,q,o,q,q,q,q),B.C,!0,q,!0,q,!1,q,q,q,q,q,q,q,1,q,q,!1,"\u2022",q,r.f,q,r.r,q,q,!1,q,!0,q,B.dx,q,q,B.c3,B.bK,q,q,q,q,q,q,B.b3,q,B.dX,q,q,q,q),q),q,n)}} +A.aRy.prototype={ +$0(){var s=this.a,r=s.w +if(r!=null)r.$0() +r=s.f +if(r!=null)r.$1(null) +s=s.r +if(s!=null)s.$1(null)}, +$S:0} +A.a8l.prototype={ +aJ(a,b){var s,r,q,p,o,n,m,l=this,k=null,j=$.b7.bm(new A.cW(new A.kF(),k,t.o9),t.kT),i=b.M($.vM(),t.Wr),h=t.v,g=b.M($.Hn(),h) +h=b.M($.Hp(),h) +s=b.M($.A8(),t.bo) +r=b.M($.Ho(),t.u) +q=A.aAb(r===!0,l.x,h,s)+l.f +h=i===B.iB +if(h&&g!=null){s=t.N +p=A.ap(["Authorization",g],s,s)}else p=k +o=h&&g!=null?B.Vb:B.Va +h=j.a +s=l.r +r=s==null +n=r?k:s.b +m=$.bgM() +s=r?k:s.a +r=l.w +if(r==null)r=B.Mc +return new A.Ii(new A.t6(m,q,k,k,p,k,k,o),q,new A.aSl(l),new A.aSj(l,j),s,n,r,h)}} +A.aSl.prototype={ +$3(a,b,c){var s=this.a,r=s.y +r=r==null?null:r.$3(a,b,c) +if(r==null)r=B.e_ +return A.Ak(s.z,r)}, +$S:944} +A.aSj.prototype={ +$3(a,b,c){var s=null,r=this.a,q=r.z +if(r.Q){r=A.A(a,B.h,t.J) +return A.Ak(q,new A.b8(B.aT,A.f1(A.cO(A.a([B.tE,B.ae1,A.eM(!1,A.O(r.gq_(r),s,s,s,s,s,s,s),B.l,s,s,s,s,s,new A.aSk(this.b),s,s)],t.p),B.w,B.dg,B.aa),s,s),s))}else return A.Ak(q,B.tE)}, +$S:945} +A.aSk.prototype={ +$0(){this.a.sk(0,new A.kF())}, +$S:0} +A.a8m.prototype={ +A(a){var s=this,r=null,q=s.f,p=s.d +if(s.c)return A.a8G(A.fr(B.Ls,A.a([B.ab0,A.nf(!1,r,q,new A.aSi(),!1,s.e,r)],t.p),B.E,B.aH,r),p) +else return A.nf(!1,r,q,r,!1,p,r)}} +A.aSi.prototype={ +$3(a,b,c){return B.e_}, +$S:295} +A.Xz.prototype={ +A(a){var s,r,q,p,o=null,n="assets/icons/dark_icon.png",m=t.l +if(A.aS(a,o,m).w.a.a>=1200){s=A.C5(new A.mA(n,o,o),o,48) +r=A.O(A.A(a,B.h,t.J).gkQ(),o,o,o,o,o,o,o) +q=A.r(a).p3.y +p=A.bbE(s,r,new A.atj(a),A.Ox(o,o,o,o,o,o,o,o,o,q==null?o:q.b,o,o,o,o,o,o,o,o,o))}else p=A.db(o,o,A.C5(new A.mA(n,o,o),o,48),o,new A.atk(a),o,o,o,o,o) +s=A.aS(a,o,m).w +m=A.aS(a,o,m).w.a.a>=1200?B.nZ:B.a9S +r=$.Wc() +q=A.ab(r).h("ad<1,CS>") +return new A.LI(s.a.a>=1200,p,A.aa(new A.ad(r,new A.atl(this,a),q),!0,q.h("ax.E")),A.bqT(this.c),new A.atm(a),5,m,!0,o)}} +A.atj.prototype={ +$0(){var s=A.e8("/about",null) +return A.bd(this.a).dv(s,null,t.z)}, +$S:0} +A.atk.prototype={ +$0(){var s=A.e8("/about",null) +return A.bd(this.a).dv(s,null,t.z)}, +$S:0} +A.atl.prototype={ +$1(a){var s=null,r=A.fR(a.c,s,s,s),q=A.O(a.a.$1(this.b),s,s,s,s,s,s,s),p=A.fR(a.d,s,s,s) +return new A.CS(r,p,q)}, +$S:946} +A.atm.prototype={ +$1(a){return J.bnB($.Wc()[a],this.a)}, +$S:38} +A.a8v.prototype={ +t_(a,b,c,d){return this.aF7(a,b,c,d)}, +aF7(a,b,c,d){var s=0,r=A.y(t.H),q,p,o +var $async$t_=A.u(function(e,f){if(e===1)return A.v(f,r) +while(true)switch(s){case 0:s=3 +return A.t(d.$0(),$async$t_) +case 3:p=f +o=c.b +o===$&&A.b() +o.vs() +if(a.f!=null)A.vT(p,new A.aSZ(b,a,c),null,t.rC,t.P) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$t_,r)}, +aJ(a,b){var s,r=null +$.b7.bm(new A.dz(new A.aSY(this,b,a),[]),t.H) +s=this.f +if(A.aS(a,r,t.l).w.a.a>=600)return A.e_(r,r,A.dd(A.a([new A.Xz(A.YD(a),r),A.dD(s,1)],t.p),B.w,B.D,B.T),r,r,r,!0,!1,!1,r,r) +else return A.e_(r,r,s,new A.a8U(A.YD(a),r),r,r,!0,!1,!1,r,B.Oy)}} +A.aSZ.prototype={ +$1(a){if(a!=null)A.blm(this.b,"v"+a.gTq(),this.a,this.c,null)}, +$S:260} +A.aSY.prototype={ +$0(){A.tD(new A.aSX(this.a,this.b,this.c),t.H) +return}, +$S:5} +A.aSX.prototype={ +$0(){var s=this.b,r=s.aa(0,$.aqN(),t.A9).a,q=this.c,p=s.aa(0,$.aqH(),t.JC).ga7w() +return this.a.t_(q,r,s.aa(0,A.eA(q),t.g),p)}, +$S:2} +A.a8U.prototype={ +A(a){var s=null,r=A.bqT(this.c),q=$.Wc(),p=A.ab(q).h("ad<1,xR>") +return A.bqU(new A.a5n(r,A.aa(new A.ad(q,new A.aTW(this,a),p),!0,p.h("ax.E")),new A.aTX(a),s),new A.xQ(s,s,s,s,s,s,s,new A.bE(B.aiS,t.wG),s,s))}} +A.aTX.prototype={ +$1(a){return J.bnB($.Wc()[a],this.a)}, +$S:38} +A.aTW.prototype={ +$1(a){var s=null,r=this.b,q=A.fR(a.c,s,s,s),p=a.a.$1(r) +return new A.xR(q,A.fR(a.d,s,s,s),p,a.a.$1(r),s)}, +$S:947} +A.NU.prototype={ +A(a){var s=this,r=null,q=s.c?B.Tq:B.Tm,p=s.d?A.fR(q,A.r(a).dy,r,r):A.cZ(r,r,A.r(a).ok.a) +return A.bH(!1,r,r,r,!0,r,r,!1,r,p,r,r,new A.aTZ(s),!1,r,r,r,r,r,s.r,r,r)}} +A.aTZ.prototype={ +$0(){var s=this.a +return s.d?s.e.$1(!s.c):s.f.$0()}, +$S:0} +A.EK.prototype={ +A(a){var s=this,r=null,q=$.b7.bm(new A.mr(s.f,r),t.QX),p=s.d,o=A.O(p,r,r,r,r,r,r,r),n=t.p,m=A.a([],n),l=s.e +if(l.length!==0)m.push(new A.b8(B.S_,A.O(l,r,r,r,r,r,r,r),r)) +m.push(new A.b8(B.j3,A.EJ(!0,B.bU,!0,r,!0,B.E,r,A.W6(),q,r,r,r,r,2,A.tQ(r,B.en,r,r,r,r,r,r,!0,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,p,r,r,r,r,!1,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r),B.C,!0,r,!0,r,!1,r,r,r,r,r,r,r,1,r,r,!1,"\u2022",r,r,r,new A.aXe(s,a),r,r,!1,r,!0,r,B.dx,r,r,B.c3,B.bK,r,r,r,r,r,r,B.b3,r,B.dX,r,r,r,r),r)) +p=A.cO(m,B.w,B.D,B.aa) +m=A.A(a,B.h,t.J) +return A.kP(A.a([B.dR,A.wD(!1,A.O(m.giq(m),r,r,r,r,r,r,r),B.l,r,r,r,r,r,new A.aXf(s,q),r,r)],n),new A.b8(B.bC,p,r),B.mA,o)}} +A.aXe.prototype={ +$1(a){var s +this.a.r.$1(a) +s=A.bd(this.b).c +s===$&&A.b() +s.e7(null)}, +$S:25} +A.aXf.prototype={ +$0(){this.a.r.$1(this.b.a.a)}, +$S:0} +A.r2.prototype={ +gt(a){return this.b}, +i(a,b){if(b>=this.b)throw A.c(A.a21(b,this,null,null,null)) +return this.a[b]}, +p(a,b,c){if(b>=this.b)throw A.c(A.a21(b,this,null,null,null)) +this.a[b]=c}, +st(a,b){var s,r,q,p=this,o=p.b +if(bo){if(o===0)q=new Uint8Array(b) +else q=p.JB(b) +B.L.di(q,0,p.b,p.a) +p.a=q}}p.b=b}, +St(a,b){var s=this,r=s.b +if(r===s.a.length)s.a5s(r) +s.a[s.b++]=b}, +G(a,b){var s=this,r=s.b +if(r===s.a.length)s.a5s(r) +s.a[s.b++]=b}, +I(a,b){A.fA(0,"start") +this.aCJ(b,0,null)}, +aCJ(a,b,c){var s,r,q +if(t.j.b(a))c=J.aZ(a) +if(c!=null){this.aCL(this.b,a,b,c) +return}for(s=J.ao(a),r=0;s.u();){q=s.gH(s) +if(r>=b)this.St(0,q);++r}if(rs.gt(b)||d>s.gt(b))throw A.c(A.R("Too few elements"))}r=d-c +q=o.b+r +o.aCK(q) +s=o.a +p=a+r +B.L.cA(s,p,o.b+r,s,a) +B.L.cA(o.a,a,p,b,c) +o.b=q}, +fu(a,b,c){var s,r,q,p=this +if(b<0||b>p.b)throw A.c(A.cK(b,0,p.b,null,null)) +s=p.b +r=p.a +if(ss)throw A.c(A.cK(c,0,s,null,null)) +s=this.a +if(A.k(this).h("r2").b(d))B.L.cA(s,b,c,d.a,e) +else B.L.cA(s,b,c,d,e)}, +di(a,b,c,d){return this.cA(a,b,c,d,0)}} +A.ah_.prototype={} +A.aat.prototype={} +A.Cn.prototype={ +K(){return"LaunchMode."+this.b}} +A.aZV.prototype={} +A.aJ4.prototype={ +Fo(a,b,c,d,e,f,g,h){var s=t.y +return B.a9E.pl("launch",A.ap(["url",a,"useSafariVC",f,"useWebView",g,"enableJavaScript",!0,"enableDomStorage",!0,"universalLinksOnly",e,"headers",d],t.N,t.K),!1,s).b9(new A.aJ5(),s)}} +A.aJ5.prototype={ +$1(a){return a===!0}, +$S:948} +A.ya.prototype={ +K(){return"PreferredLaunchMode."+this.b}} +A.a20.prototype={} +A.a2v.prototype={} +A.aZE.prototype={ +Fo(a,b,c,d,e,f,g,h){throw A.c(A.cL("launch() has not been implemented."))}, +Fp(a,b){var s,r,q=B.c.c8(a,"http:")||B.c.c8(a,"https:"),p=b.a +if(p!==B.J2)if(p!==B.J3){s=q&&p===B.oa +r=s}else r=!0 +else r=!0 +return this.Fo(a,!0,!0,b.b.c,p===B.J4,r,r,b.c)}} +A.aZF.prototype={ +aMo(a,b){var s=A.bLr(a) +if(B.ad5.n(0,s==null?null:s.gfg()))return null +return B.pj.aMk(this.a,a,b,"noopener,noreferrer")}, +Fo(a,b,c,d,e,f,g,h){return this.aKL(a,!0,!0,d,e,f,g,h)}, +aKL(a,b,c,d,e,f,g,h){var s=0,r=A.y(t.y),q,p=this +var $async$Fo=A.u(function(i,j){if(i===1)return A.v(j,r) +while(true)switch(s){case 0:q=p.Fp(a,new A.a2v(B.oa,B.Vf,h)) +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$Fo,r)}, +Fp(a,b){return this.aKM(a,b)}, +aKM(a,b){var s=0,r=A.y(t.y),q,p=this +var $async$Fp=A.u(function(c,d){if(c===1)return A.v(d,r) +while(true)switch(s){case 0:q=p.aMo(a,b.c)!=null +s=1 +break +case 1:return A.w(q,r)}}) +return A.x($async$Fp,r)}} +A.aaP.prototype={ +K(){return"ValidationMode."+this.b}} +A.aN0.prototype={ +Xo(){var s=this.ae9() +return s}} +A.a4Z.prototype={ +ae9(){var s,r=new Uint8Array(16),q=$.byR() +for(s=0;s<16;++s)r[s]=q.xu(256) +return r}} +A.aaN.prototype={ +ads(){return new A.aZJ(null).ae7(null)}} +A.aZJ.prototype={ +auN(){if($.bt_)return +var s=new A.a4Z().Xo() +$.bt2=A.a([s[0]|1,s[1],s[2],s[3],s[4],s[5]],t.t) +$.bk4=(s[6]<<8|s[7])&262143 +$.bt_=!0}, +ae7(a){var s,r,q,p,o,n,m,l,k,j,i +this.auN() +s=new Uint8Array(16) +r=$.bk4 +q=1000*Date.now() +p=$.bt1 +o=p+1 +n=$.bt0 +p=q-n+(o-p)/1e4<0 +if(p)m=!0 +else m=!1 +if(m)r=r+1&16383 +if(p||q>n)p=!0 +else p=!1 +if(p)o=0 +if(o>=1e4)throw A.c(A.cR("uuid.v1(): Can't create more than 10M uuids/sec")) +$.bt0=q +$.bt1=o +$.bk4=r +q+=122192928e5 +l=((q&268435455)*1e4+o)%4294967296 +s[0]=l>>>24&255 +s[1]=l>>>16&255 +s[2]=l>>>8&255 +s[3]=l&255 +k=B.e.eA(q/4294967296*1e4)&268435455 +s[4]=k>>>8&255 +s[5]=k&255 +s[6]=k>>>24&255 +s[7]=k>>>16&255 +s[8]=r>>>8&63 +s[9]=r&255 +s[6]=s[6]&15|16 +s[8]=s[8]|128 +j=$.bt2 +for(i=0;i<6;++i)s[10+i]=j[i] +return A.bk3(s)}} +A.aZK.prototype={ +ae8(a,b,c){var s,r,q,p,o,n,m=new A.a4Z().Xo() +m[6]=m[6]&15|64 +m[8]=m[8]&63|128 +A.bk3(m) +s=A.bLv(a) +r=A.a([],t.t) +for(q=new A.hQ(b),p=t.Hz,q=new A.bZ(q,q.gt(q),p.h("bZ")),p=p.h("ac.E");q.u();){o=q.d +r.push(o==null?p.a(o):o)}q=A.aa(s,!0,t.S) +B.b.I(q,r) +n=B.OO.cN(q).a +n[6]=n[6]&15|80 +n[8]=n[8]&63|128 +return A.bk3(B.L.d2(n,0,16))}} +A.bS.prototype={ +cd(a){var s=a.a,r=this.a +r[15]=s[15] +r[14]=s[14] +r[13]=s[13] +r[12]=s[12] +r[11]=s[11] +r[10]=s[10] +r[9]=s[9] +r[8]=s[8] +r[7]=s[7] +r[6]=s[6] +r[5]=s[5] +r[4]=s[4] +r[3]=s[3] +r[2]=s[2] +r[1]=s[1] +r[0]=s[0]}, +j(a){var s=this +return"[0] "+s.GU(0).j(0)+"\n[1] "+s.GU(1).j(0)+"\n[2] "+s.GU(2).j(0)+"\n[3] "+s.GU(3).j(0)+"\n"}, +i(a,b){return this.a[b]}, +p(a,b,c){this.a[b]=c}, +l(a,b){var s,r,q +if(b==null)return!1 +if(b instanceof A.bS){s=this.a +r=s[0] +q=b.a +s=r===q[0]&&s[1]===q[1]&&s[2]===q[2]&&s[3]===q[3]&&s[4]===q[4]&&s[5]===q[5]&&s[6]===q[6]&&s[7]===q[7]&&s[8]===q[8]&&s[9]===q[9]&&s[10]===q[10]&&s[11]===q[11]&&s[12]===q[12]&&s[13]===q[13]&&s[14]===q[14]&&s[15]===q[15]}else s=!1 +return s}, +gv(a){return A.dt(this.a)}, +NX(a,b){var s=b.a,r=this.a +r[a]=s[0] +r[4+a]=s[1] +r[8+a]=s[2] +r[12+a]=s[3]}, +GU(a){var s=new Float64Array(4),r=this.a +s[0]=r[a] +s[1]=r[4+a] +s[2]=r[8+a] +s[3]=r[12+a] +return new A.nn(s)}, +au(a,b){var s=new A.bS(new Float64Array(16)) +s.cd(this) +s.rq(0,b,null,null) +return s}, +T(a,b){var s,r=new Float64Array(16),q=new A.bS(r) +q.cd(this) +s=b.a +r[0]=r[0]+s[0] +r[1]=r[1]+s[1] +r[2]=r[2]+s[2] +r[3]=r[3]+s[3] +r[4]=r[4]+s[4] +r[5]=r[5]+s[5] +r[6]=r[6]+s[6] +r[7]=r[7]+s[7] +r[8]=r[8]+s[8] +r[9]=r[9]+s[9] +r[10]=r[10]+s[10] +r[11]=r[11]+s[11] +r[12]=r[12]+s[12] +r[13]=r[13]+s[13] +r[14]=r[14]+s[14] +r[15]=r[15]+s[15] +return q}, +a2(a,b){var s,r=new Float64Array(16),q=new A.bS(r) +q.cd(this) +s=b.a +r[0]=r[0]-s[0] +r[1]=r[1]-s[1] +r[2]=r[2]-s[2] +r[3]=r[3]-s[3] +r[4]=r[4]-s[4] +r[5]=r[5]-s[5] +r[6]=r[6]-s[6] +r[7]=r[7]-s[7] +r[8]=r[8]-s[8] +r[9]=r[9]-s[9] +r[10]=r[10]-s[10] +r[11]=r[11]-s[11] +r[12]=r[12]-s[12] +r[13]=r[13]-s[13] +r[14]=r[14]-s[14] +r[15]=r[15]-s[15] +return q}, +bj(a,b,a0){var s=this.a,r=s[0],q=s[4],p=s[8],o=s[12],n=s[1],m=s[5],l=s[9],k=s[13],j=s[2],i=s[6],h=s[10],g=s[14],f=s[3],e=s[7],d=s[11],c=s[15] +s[12]=r*b+q*a0+p*0+o +s[13]=n*b+m*a0+l*0+k +s[14]=j*b+i*a0+h*0+g +s[15]=f*b+e*a0+d*0+c}, +MZ(a){var s=Math.cos(a),r=Math.sin(a),q=this.a,p=q[0],o=q[4],n=q[1],m=q[5],l=q[2],k=q[6],j=q[3],i=q[7],h=-r +q[0]=p*s+o*r +q[1]=n*s+m*r +q[2]=l*s+k*r +q[3]=j*s+i*r +q[4]=p*h+o*s +q[5]=n*h+m*s +q[6]=l*h+k*s +q[7]=j*h+i*s}, +rq(a,b,c,d){var s=c==null?b:c,r=d==null?b:d,q=this.a +q[0]=q[0]*b +q[1]=q[1]*b +q[2]=q[2]*b +q[3]=q[3]*b +q[4]=q[4]*s +q[5]=q[5]*s +q[6]=q[6]*s +q[7]=q[7]*s +q[8]=q[8]*r +q[9]=q[9]*r +q[10]=q[10]*r +q[11]=q[11]*r +q[12]=q[12] +q[13]=q[13] +q[14]=q[14] +q[15]=q[15]}, +hF(a,b,c){return this.rq(a,b,c,null)}, +cl(a,b){return this.rq(a,b,null,null)}, +Yk(){var s=this.a +s[0]=0 +s[1]=0 +s[2]=0 +s[3]=0 +s[4]=0 +s[5]=0 +s[6]=0 +s[7]=0 +s[8]=0 +s[9]=0 +s[10]=0 +s[11]=0 +s[12]=0 +s[13]=0 +s[14]=0 +s[15]=0}, +fQ(){var s=this.a +s[0]=1 +s[1]=0 +s[2]=0 +s[3]=0 +s[4]=0 +s[5]=1 +s[6]=0 +s[7]=0 +s[8]=0 +s[9]=0 +s[10]=1 +s[11]=0 +s[12]=0 +s[13]=0 +s[14]=0 +s[15]=1}, +NK(){var s=this.a,r=s[14],q=s[13],p=s[12] +s=new A.d4(new Float64Array(3)) +s.h6(p,q,r) +return s}, +Yj(a){var s=a.a,r=s[2],q=s[1],p=s[0],o=this.a +o[14]=r +o[13]=q +o[12]=p}, +xW(){var s=this.a,r=s[0],q=s[1],p=s[2],o=s[4],n=s[5],m=s[6],l=s[8],k=s[9] +s=s[10] +return Math.sqrt(Math.max(r*r+q*q+p*p,Math.max(o*o+n*n+m*m,l*l+k*k+s*s)))}, +k0(b5){var s,r,q,p,o=b5.a,n=o[0],m=o[1],l=o[2],k=o[3],j=o[4],i=o[5],h=o[6],g=o[7],f=o[8],e=o[9],d=o[10],c=o[11],b=o[12],a=o[13],a0=o[14],a1=o[15],a2=n*i-m*j,a3=n*h-l*j,a4=n*g-k*j,a5=m*h-l*i,a6=m*g-k*i,a7=l*g-k*h,a8=f*a-e*b,a9=f*a0-d*b,b0=f*a1-c*b,b1=e*a0-d*a,b2=e*a1-c*a,b3=d*a1-c*a0,b4=a2*b3-a3*b2+a4*b1+a5*b0-a6*a9+a7*a8 +if(b4===0){this.cd(b5) +return 0}s=1/b4 +r=this.a +r[0]=(i*b3-h*b2+g*b1)*s +r[1]=(-m*b3+l*b2-k*b1)*s +r[2]=(a*a7-a0*a6+a1*a5)*s +r[3]=(-e*a7+d*a6-c*a5)*s +q=-j +r[4]=(q*b3+h*b0-g*a9)*s +r[5]=(n*b3-l*b0+k*a9)*s +p=-b +r[6]=(p*a7+a0*a4-a1*a3)*s +r[7]=(f*a7-d*a4+c*a3)*s +r[8]=(j*b2-i*b0+g*a8)*s +r[9]=(-n*b2+m*b0-k*a8)*s +r[10]=(b*a6-a*a4+a1*a2)*s +r[11]=(-f*a6+e*a4-c*a2)*s +r[12]=(q*b1+i*a9-h*a8)*s +r[13]=(n*b1-m*a9+l*a8)*s +r[14]=(p*a5+a*a3-a0*a2)*s +r[15]=(f*a5-e*a3+d*a2)*s +return b4}, +f_(b5,b6){var s=this.a,r=s[0],q=s[4],p=s[8],o=s[12],n=s[1],m=s[5],l=s[9],k=s[13],j=s[2],i=s[6],h=s[10],g=s[14],f=s[3],e=s[7],d=s[11],c=s[15],b=b6.a,a=b[0],a0=b[4],a1=b[8],a2=b[12],a3=b[1],a4=b[5],a5=b[9],a6=b[13],a7=b[2],a8=b[6],a9=b[10],b0=b[14],b1=b[3],b2=b[7],b3=b[11],b4=b[15] +s[0]=r*a+q*a3+p*a7+o*b1 +s[4]=r*a0+q*a4+p*a8+o*b2 +s[8]=r*a1+q*a5+p*a9+o*b3 +s[12]=r*a2+q*a6+p*b0+o*b4 +s[1]=n*a+m*a3+l*a7+k*b1 +s[5]=n*a0+m*a4+l*a8+k*b2 +s[9]=n*a1+m*a5+l*a9+k*b3 +s[13]=n*a2+m*a6+l*b0+k*b4 +s[2]=j*a+i*a3+h*a7+g*b1 +s[6]=j*a0+i*a4+h*a8+g*b2 +s[10]=j*a1+i*a5+h*a9+g*b3 +s[14]=j*a2+i*a6+h*b0+g*b4 +s[3]=f*a+e*a3+d*a7+c*b1 +s[7]=f*a0+e*a4+d*a8+c*b2 +s[11]=f*a1+e*a5+d*a9+c*b3 +s[15]=f*a2+e*a6+d*b0+c*b4}, +M6(a){var s=new A.bS(new Float64Array(16)) +s.cd(this) +s.f_(0,a) +return s}, +rj(a){var s=a.a,r=this.a,q=r[0],p=s[0],o=r[4],n=s[1],m=r[8],l=s[2],k=r[12],j=r[1],i=r[5],h=r[9],g=r[13],f=r[2],e=r[6],d=r[10] +r=r[14] +s[0]=q*p+o*n+m*l+k +s[1]=j*p+i*n+h*l+g +s[2]=f*p+e*n+d*l+r +return a}, +a_(a2,a3){var s=a3.a,r=this.a,q=r[0],p=s[0],o=r[4],n=s[1],m=r[8],l=s[2],k=r[12],j=s[3],i=r[1],h=r[5],g=r[9],f=r[13],e=r[2],d=r[6],c=r[10],b=r[14],a=r[3],a0=r[7],a1=r[11] +r=r[15] +s[0]=q*p+o*n+m*l+k*j +s[1]=i*p+h*n+g*l+f*j +s[2]=e*p+d*n+c*l+b*j +s[3]=a*p+a0*n+a1*l+r*j +return a3}, +ME(a){var s=a.a,r=this.a,q=r[0],p=s[0],o=r[4],n=s[1],m=r[8],l=s[2],k=r[12],j=r[1],i=r[5],h=r[9],g=r[13],f=r[2],e=r[6],d=r[10],c=r[14],b=1/(r[3]*p+r[7]*n+r[11]*l+r[15]) +s[0]=(q*p+o*n+m*l+k)*b +s[1]=(j*p+i*n+h*l+g)*b +s[2]=(f*p+e*n+d*l+c)*b +return a}, +aaX(){var s=this.a +return s[0]===0&&s[1]===0&&s[2]===0&&s[3]===0&&s[4]===0&&s[5]===0&&s[6]===0&&s[7]===0&&s[8]===0&&s[9]===0&&s[10]===0&&s[11]===0&&s[12]===0&&s[13]===0&&s[14]===0&&s[15]===0}} +A.a6B.prototype={} +A.d4.prototype={ +h6(a,b,c){var s=this.a +s[0]=a +s[1]=b +s[2]=c}, +cd(a){var s=a.a,r=this.a +r[0]=s[0] +r[1]=s[1] +r[2]=s[2]}, +j(a){var s=this.a +return"["+A.h(s[0])+","+A.h(s[1])+","+A.h(s[2])+"]"}, +l(a,b){var s,r,q +if(b==null)return!1 +if(b instanceof A.d4){s=this.a +r=s[0] +q=b.a +s=r===q[0]&&s[1]===q[1]&&s[2]===q[2]}else s=!1 +return s}, +gv(a){return A.dt(this.a)}, +a2(a,b){var s,r=new Float64Array(3),q=new A.d4(r) +q.cd(this) +s=b.a +r[0]=r[0]-s[0] +r[1]=r[1]-s[1] +r[2]=r[2]-s[2] +return q}, +T(a,b){var s,r=new Float64Array(3),q=new A.d4(r) +q.cd(this) +s=b.a +r[0]=r[0]+s[0] +r[1]=r[1]+s[1] +r[2]=r[2]+s[2] +return q}, +au(a,b){return this.NO(b)}, +i(a,b){return this.a[b]}, +p(a,b,c){this.a[b]=c}, +gt(a){var s=this.a,r=s[0],q=s[1] +s=s[2] +return Math.sqrt(r*r+q*q+s*s)}, +wT(a){var s=a.a,r=this.a +return r[0]*s[0]+r[1]*s[1]+r[2]*s[2]}, +NO(a){var s=new Float64Array(3),r=new A.d4(s) +r.cd(this) +s[2]=s[2]*a +s[1]=s[1]*a +s[0]=s[0]*a +return r}} +A.nn.prototype={ +H6(a,b,c,d){var s=this.a +s[3]=d +s[2]=c +s[1]=b +s[0]=a}, +cd(a){var s=a.a,r=this.a +r[3]=s[3] +r[2]=s[2] +r[1]=s[1] +r[0]=s[0]}, +j(a){var s=this.a +return A.h(s[0])+","+A.h(s[1])+","+A.h(s[2])+","+A.h(s[3])}, +l(a,b){var s,r,q +if(b==null)return!1 +if(b instanceof A.nn){s=this.a +r=s[0] +q=b.a +s=r===q[0]&&s[1]===q[1]&&s[2]===q[2]&&s[3]===q[3]}else s=!1 +return s}, +gv(a){return A.dt(this.a)}, +a2(a,b){var s,r=new Float64Array(4),q=new A.nn(r) +q.cd(this) +s=b.a +r[0]=r[0]-s[0] +r[1]=r[1]-s[1] +r[2]=r[2]-s[2] +r[3]=r[3]-s[3] +return q}, +T(a,b){var s,r=new Float64Array(4),q=new A.nn(r) +q.cd(this) +s=b.a +r[0]=r[0]+s[0] +r[1]=r[1]+s[1] +r[2]=r[2]+s[2] +r[3]=r[3]+s[3] +return q}, +au(a,b){var s=new A.nn(new Float64Array(4)) +s.cd(this) +s.cl(0,b) +return s}, +i(a,b){return this.a[b]}, +p(a,b,c){this.a[b]=c}, +gt(a){var s=this.a,r=s[0],q=s[1],p=s[2] +s=s[3] +return Math.sqrt(r*r+q*q+p*p+s*s)}, +cl(a,b){var s=this.a +s[0]=s[0]*b +s[1]=s[1]*b +s[2]=s[2]*b +s[3]=s[3]*b}} +A.aF3.prototype={ +gph(){var s,r=this,q=r.w +if(q===$){s=r.r.b +s===$&&A.b() +s=s.a +s===$&&A.b() +q!==$&&A.am() +q=r.w=new A.Ri(r,s)}return q}, +alz(a){var s=this,r=s.f=new A.aD(new A.a8($.a9,t.b),t.gR),q=s.a,p=q.readyState +p.toString +if(p===1){r.fj(0) +s.a2j()}else{if(p===2||p===3)r.ms(new A.P5("WebSocket state error: "+p)) +r=new A.jd(q,"open",!1,t._F) +r.gN(r).b9(new A.aF5(s),t.P)}r=new A.jd(q,"error",!1,t._F) +p=t.P +r.gN(r).b9(new A.aF6(s),p) +A.je(q,"message",new A.aF7(s),!1,t.SA) +q=new A.jd(q,"close",!1,t.rR) +q.gN(q).b9(new A.aF8(s),p)}, +a2j(){var s=this.r.a +s===$&&A.b() +s=s.b +s===$&&A.b() +new A.d_(s,A.k(s).h("d_<1>")).aKW(B.alz.gafh(this.a),new A.aF4(this))}} +A.aF5.prototype={ +$1(a){var s=this.a,r=s.f +r===$&&A.b() +r.fj(0) +s.a2j()}, +$S:309} +A.aF6.prototype={ +$1(a){var s=new A.P5("WebSocket connection failed."),r=this.a,q=r.f +q===$&&A.b() +q.ms(s) +r=r.r.a +r===$&&A.b() +q=r.a +q===$&&A.b() +q.pp(s) +r=r.a +r===$&&A.b() +r.ad(0)}, +$S:309} +A.aF7.prototype={ +$1(a){var s,r=new A.nz([],[]).t1(a.data,!0) +if(t.pI.b(r))r=A.dF(r,0,null) +s=this.a.r.a +s===$&&A.b() +s=s.a +s===$&&A.b() +s.G(0,r)}, +$S:950} +A.aF8.prototype={ +$1(a){var s +a.code +a.reason +s=this.a.r.a +s===$&&A.b() +s=s.a +s===$&&A.b() +s.ad(0)}, +$S:951} +A.aF4.prototype={ +$0(){var s=this.a,r=s.d,q=r!=null +if(q&&s.e!=null)s.a.close(r,s.e) +else{s=s.a +if(q)s.close(r) +else s.close()}}, +$S:0} +A.Ri.prototype={ +TB(a,b,c){var s=this.b +s.d=b +s.e=c +return this.agP(0)}, +ad(a){return this.TB(a,null,null)}, +TA(a,b){return this.TB(a,b,null)}} +A.bk8.prototype={} +A.P5.prototype={ +j(a){return"WebSocketChannelException: "+this.a}, +$icm:1} +A.bfQ.prototype={ +$0(){return A.aqf()}, +$S:0} +A.bfP.prototype={ +$0(){var s,r,q,p,o=$.bBR(),n=$.byx() +A.a6p(n,$.Wb(),!1) +$.bFU=n +new A.lQ("flutter_native_splash",B.bM,o).tY(new A.a14().gV0()) +s=new A.a16() +s.LI() +new A.lQ("PonnamKarthik/fluttertoast",B.bM,o).tY(s.gV0()) +n=$.byS() +r=new A.aKw() +q=$.A4() +q.p(0,r,n) +A.a6p(r,n,!1) +n=$.bmf() +r=new A.aL1() +q.p(0,r,n) +A.a6p(r,n,!1) +$.bIk=r +r=$.bmj() +n=new A.aSN() +q.p(0,n,r) +A.a6p(n,r,!0) +$.bK1=n +n=window +n.toString +r=$.bmn() +p=new A.aZF(n) +q.p(0,p,r) +n=n.navigator.userAgent +n.toString +p.b=B.c.n(n,"Safari")&&!B.c.n(n,"Chrome") +A.a6p(p,r,!0) +$.bLs=p +$.bBI() +$.bhg().aNr("__url_launcher::link",A.bTw(),!1) +$.bxe=o.gaIB()}, +$S:0};(function aliases(){var s=A.al0.prototype +s.ajO=s.ab +s.ajU=s.eb +s.ajS=s.dq +s.ajX=s.bj +s.ajV=s.hF +s.ajT=s.tJ +s.ajW=s.a_ +s.ajR=s.uD +s.ajQ=s.wE +s.ajP=s.mr +s=A.B2.prototype +s.agI=s.tD +s=A.Qx.prototype +s.Zp=s.bJ +s=A.fo.prototype +s.ahF=s.MY +s.Z1=s.aP +s.Hm=s.zj +s.Z5=s.c_ +s.Z4=s.rf +s.Z2=s.py +s.Z3=s.xD +s=A.hb.prototype +s.ahC=s.xD +s.ahD=s.pZ +s.u3=s.c_ +s.ahE=s.rf +s.Cv=s.py +s=A.a6v.prototype +s.u4=s.ff +s.Cw=s.m +s=A.Ja.prototype +s.Oh=s.AR +s.agO=s.X9 +s.agM=s.px +s.agN=s.Ut +s=J.Cb.prototype +s.ah4=s.j +s.ah3=s.D +s=J.tY.prototype +s.ahg=s.j +s=A.j_.prototype +s.ah6=s.aaA +s.ah7=s.aaC +s.ah9=s.aaE +s.ah8=s.aaD +s=A.mi.prototype +s.aj3=s.vY +s.aj5=s.G +s.aj6=s.ad +s.aj4=s.CG +s=A.hl.prototype +s.Cz=s.on +s.yr=s.jV +s.OB=s.rI +s=A.TE.prototype +s.ak9=s.qx +s=A.rh.prototype +s.ajg=s.yA +s.ajh=s.a0V +s.ajj=s.a4c +s.aji=s.rQ +s=A.ac.prototype +s.YX=s.cA +s=A.cr.prototype +s.agL=s.aIm +s=A.GU.prototype +s.aka=s.ad +s=A.z.prototype +s.Cs=s.jm +s.ah5=s.ag0 +s=A.B.prototype +s.rD=s.l +s.e0=s.j +s=A.cv.prototype +s.Oi=s.qD +s=A.aJ.prototype +s.agV=s.zg +s=A.Tn.prototype +s.ak8=s.uz +s=A.qj.prototype +s.aha=s.i +s.ahb=s.p +s=A.G7.prototype +s.Zq=s.p +s=A.M.prototype +s.agz=s.l +s.agA=s.j +s=A.Bd.prototype +s.agP=s.ad +s=A.bQ.prototype +s.Hh=s.Gl +s=A.rW.prototype +s.YE=s.J +s.YF=s.e8 +s=A.M5.prototype +s.ahB=s.a_ +s=A.HG.prototype +s.Cr=s.m +s=A.V1.prototype +s.aky=s.m +s=A.V2.prototype +s.akz=s.m +s=A.V3.prototype +s.akA=s.m +s=A.V6.prototype +s.akD=s.m +s=A.H7.prototype +s.akB=s.m +s=A.V5.prototype +s.akC=s.m +s=A.V7.prototype +s.akE=s.m +s=A.Vs.prototype +s.akW=s.aA +s.akX=s.ap +s=A.XB.prototype +s.agt=s.mS +s.agu=s.xe +s.agv=s.X4 +s=A.im.prototype +s.YH=s.P +s.YI=s.J +s.eH=s.m +s.Hj=s.ag +s=A.ec.prototype +s.vV=s.sk +s=A.aI.prototype +s.agQ=s.f2 +s=A.o7.prototype +s.agR=s.f2 +s=A.BT.prototype +s.On=s.aJG +s.ah_=s.aHa +s=A.kp.prototype +s.ahh=s.mW +s=A.eK.prototype +s.YP=s.JX +s.ym=s.mW +s.YQ=s.m +s=A.LT.prototype +s.Ct=s.kN +s.Z_=s.AG +s.Z0=s.L +s.pi=s.m +s.ahx=s.Cq +s=A.Di.prototype +s.ahG=s.kN +s.Z6=s.kM +s.ahH=s.jh +s=A.kC.prototype +s.aiP=s.mW +s=A.UX.prototype +s.akt=s.m +s=A.UZ.prototype +s.aku=s.m +s=A.V_.prototype +s.akw=s.aR +s.akv=s.m +s=A.Vr.prototype +s.akV=s.m +s=A.QD.prototype +s.aja=s.m +s=A.By.prototype +s.agU=s.t5 +s=A.Va.prototype +s.akG=s.m +s=A.Vf.prototype +s.akM=s.aR +s.akL=s.fk +s=A.UW.prototype +s.aks=s.m +s=A.Ve.prototype +s.akK=s.m +s=A.Vg.prototype +s.akN=s.m +s=A.ok.prototype +s.rC=s.m +s=A.Vy.prototype +s.ala=s.m +s=A.Vl.prototype +s.akS=s.m +s=A.VG.prototype +s.alk=s.m +s=A.VH.prototype +s.alm=s.m +s=A.Fv.prototype +s.aj9=s.aD +s=A.V0.prototype +s.akx=s.m +s=A.Vi.prototype +s.akP=s.m +s=A.H8.prototype +s.akT=s.m +s=A.H9.prototype +s.akU=s.m +s=A.Sy.prototype +s.aju=s.m +s=A.T1.prototype +s.ajY=s.m +s=A.T2.prototype +s.ajZ=s.m +s=A.T3.prototype +s.ak0=s.aY +s.ak_=s.cp +s.ak1=s.m +s=A.Vc.prototype +s.akI=s.m +s=A.Vu.prototype +s.al_=s.aA +s.al0=s.ap +s=A.Vw.prototype +s.al3=s.aA +s.al4=s.ap +s=A.VD.prototype +s.alf=s.m +s=A.Vj.prototype +s.akQ=s.m +s=A.Vk.prototype +s.akR=s.m +s=A.V8.prototype +s.akF=s.m +s=A.EF.prototype +s.aiQ=s.t5 +s=A.VF.prototype +s.ali=s.aY +s.alh=s.cp +s.alj=s.m +s=A.ES.prototype +s.aiT=s.m +s=A.U3.prototype +s.akf=s.m +s=A.I4.prototype +s.agx=s.Ob +s.agw=s.G +s=A.dp.prototype +s.Hs=s.eY +s.Ht=s.eZ +s=A.fS.prototype +s.yn=s.eY +s.yo=s.eZ +s=A.kX.prototype +s.Of=s.eY +s.Og=s.eZ +s=A.XI.prototype +s.YG=s.m +s=A.eI.prototype +s.YK=s.G +s=A.adO.prototype +s.Zn=s.m +s=A.xb.prototype +s.YS=s.P +s.ah1=s.ic +s.YT=s.J +s.ah0=s.IE +s=A.kl.prototype +s.YV=s.l +s=A.hH.prototype +s.aiB=s.l +s=A.O5.prototype +s.aiH=s.hD +s=A.DG.prototype +s.ai4=s.V1 +s.ai6=s.Va +s.ai5=s.V4 +s.ai3=s.Uq +s=A.aL.prototype +s.agy=s.l +s=A.ij.prototype +s.Hi=s.j +s=A.N.prototype +s.Ho=s.hL +s.Cx=s.a6 +s.Os=s.cX +s.Zd=s.xB +s.qb=s.dc +s.ahP=s.eI +s=A.SD.prototype +s.ajv=s.aA +s.ajw=s.ap +s=A.SF.prototype +s.ajx=s.aA +s.ajy=s.ap +s=A.SG.prototype +s.ajz=s.aA +s.ajA=s.ap +s=A.yq.prototype +s.ahQ=s.cj +s=A.SH.prototype +s.ajB=s.m +s=A.h7.prototype +s.ahc=s.CZ +s.YW=s.m +s.ahf=s.Nl +s.ahd=s.aA +s.ahe=s.ap +s=A.hR.prototype +s.u2=s.l6 +s.agG=s.aA +s.agH=s.ap +s=A.oC.prototype +s.ahw=s.l6 +s=A.dQ.prototype +s.Cu=s.ap +s=A.H.prototype +s.jr=s.m +s.Ze=s.m6 +s.eR=s.aA +s.eS=s.ap +s.ahU=s.a6 +s.ahT=s.cX +s.ahV=s.aU +s.ahR=s.eI +s.jq=s.hv +s.Ot=s.zB +s.yp=s.jl +s.Zf=s.zq +s.ahS=s.oQ +s.ahW=s.f2 +s.Hp=s.i2 +s=A.b1.prototype +s.Zh=s.jf +s=A.aq.prototype +s.Oe=s.Vj +s.agK=s.F +s.agJ=s.FE +s.YJ=s.jf +s.Hk=s.ck +s=A.ut.prototype +s.Or=s.CA +s=A.k1.prototype +s.ajl=s.K4 +s=A.SP.prototype +s.ajC=s.aA +s.ajD=s.ap +s=A.TT.prototype +s.akd=s.ap +s=A.iw.prototype +s.Oy=s.c3 +s.Ow=s.bV +s.Ox=s.bW +s.Ov=s.c1 +s.ai_=s.ds +s.yq=s.cj +s.Hq=s.dY +s.ahZ=s.eI +s.ol=s.aD +s=A.MZ.prototype +s.ai0=s.dc +s=A.SR.prototype +s.ys=s.aA +s.u5=s.ap +s=A.SS.prototype +s.ajE=s.hL +s=A.ys.prototype +s.ai2=s.aD +s.ai1=s.dY +s=A.SU.prototype +s.Zs=s.aA +s.Zt=s.ap +s=A.qS.prototype +s.aiC=s.j +s=A.he.prototype +s.aiD=s.j +s=A.SW.prototype +s.ajF=s.aA +s.ajG=s.ap +s=A.N0.prototype +s.Zi=s.cj +s=A.k2.prototype +s.ajJ=s.aA +s.ajK=s.ap +s=A.iE.prototype +s.aj_=s.FF +s.aiZ=s.fX +s=A.i6.prototype +s.aim=s.UY +s=A.za.prototype +s.Zl=s.m +s=A.X3.prototype +s.agr=s.B1 +s=A.E5.prototype +s.aiz=s.F3 +s.aiA=s.v7 +s=A.lQ.prototype +s.ahi=s.pl +s=A.c7.prototype +s.YD=s.iX +s.agp=s.tn +s.ago=s.SS +s.agq=s.MR +s=A.UV.prototype +s.akr=s.m +s=A.vW.prototype +s.Oc=s.A +s=A.BJ.prototype +s.agW=s.b4 +s=A.SO.prototype +s.Zr=s.hU +s=A.Us.prototype +s.akg=s.mS +s.akh=s.X4 +s=A.Ut.prototype +s.aki=s.mS +s.akj=s.xe +s=A.Uu.prototype +s.akk=s.mS +s.akl=s.xe +s=A.Uv.prototype +s.akn=s.mS +s.akm=s.F3 +s=A.Uw.prototype +s.ako=s.mS +s=A.Ux.prototype +s.akp=s.mS +s.akq=s.xe +s=A.QJ.prototype +s.ajb=s.aR +s=A.QK.prototype +s.ajc=s.m +s=A.a19.prototype +s.yl=s.aKf +s.agX=s.Tt +s=A.l2.prototype +s.agY=s.KS +s.agZ=s.kn +s=A.FU.prototype +s.ajd=s.aY +s.aje=s.m +s=A.af.prototype +s.b5=s.aR +s.br=s.aY +s.rF=s.fk +s.d3=s.cn +s.aZ=s.m +s.ei=s.cp +s=A.aG.prototype +s.Zg=s.b4 +s=A.bG.prototype +s.agT=s.fM +s.YO=s.hU +s.Hl=s.c_ +s.agS=s.SE +s.YN=s.Fa +s.qa=s.oN +s.YL=s.cn +s.Oj=s.fk +s.yk=s.lw +s.Ok=s.zY +s.YM=s.a8E +s.Ol=s.cp +s.Om=s.pS +s=A.IH.prototype +s.Od=s.hU +s.agB=s.Q4 +s.agC=s.pS +s=A.Eo.prototype +s.aiN=s.aP +s.aiO=s.c_ +s=A.i7.prototype +s.aiI=s.aP +s.aiM=s.c_ +s.aiJ=s.fk +s.aiL=s.lw +s.aiK=s.cp +s=A.Mu.prototype +s.Z8=s.aP +s.ahJ=s.c_ +s.ahK=s.Xe +s=A.iY.prototype +s.YU=s.xv +s=A.c0.prototype +s.vU=s.hU +s.rE=s.c_ +s.Ou=s.pS +s.ahX=s.fk +s.ahY=s.lw +s=A.kr.prototype +s.YY=s.oT +s.YZ=s.oV +s.ahl=s.q1 +s.ahk=s.hU +s.ahm=s.c_ +s=A.C7.prototype +s.ah2=s.aR +s=A.G4.prototype +s.ajk=s.m +s=A.Vh.prototype +s.akO=s.m +s=A.dc.prototype +s.aij=s.vd +s.aig=s.EB +s.aib=s.Ex +s.aih=s.Ue +s.aik=s.p6 +s.aie=s.t7 +s.aif=s.A0 +s.aic=s.Ey +s.aid=s.Ez +s.aia=s.pu +s.ai9=s.Km +s.aii=s.m +s=A.akM.prototype +s.ajN=s.Ku +s=A.S7.prototype +s.ajn=s.cn +s.ajo=s.m +s=A.S8.prototype +s.ajq=s.aY +s.ajp=s.cp +s.ajr=s.m +s=A.a5w.prototype +s.Op=s.fX +s=A.zS.prototype +s.ajI=s.cj +s.ajH=s.aD +s=A.Vv.prototype +s.al1=s.aA +s.al2=s.ap +s=A.Sd.prototype +s.ajs=s.fX +s=A.Vd.prototype +s.akJ=s.m +s=A.VE.prototype +s.alg=s.m +s=A.fT.prototype +s.aPD=s.m +s=A.lZ.prototype +s.ai8=s.Uh +s=A.dh.prototype +s.Oz=s.sk +s=A.lu.prototype +s.ajL=s.AF +s.ajM=s.BC +s=A.mj.prototype +s.aj7=s.JY +s.aj8=s.MS +s.Zo=s.Vp +s=A.Ha.prototype +s.al6=s.aY +s.al5=s.cp +s.al7=s.m +s=A.CZ.prototype +s.ahA=s.vd +s.ahy=s.t7 +s.ahz=s.m +s=A.fg.prototype +s.aiU=s.TU +s.aiY=s.vd +s.aiX=s.EB +s.aiV=s.Ex +s.aiW=s.t7 +s=A.dX.prototype +s.ahj=s.Ez +s=A.Gi.prototype +s.ajm=s.p6 +s=A.a81.prototype +s.Hr=s.m +s=A.yC.prototype +s.aio=s.aA +s=A.jN.prototype +s.Cy=s.fX +s=A.T7.prototype +s.ak3=s.fX +s=A.yE.prototype +s.aip=s.K5 +s.aiq=s.zO +s=A.nc.prototype +s.air=s.uu +s.OA=s.afy +s.ait=s.qu +s.Zj=s.pr +s.ais=s.E3 +s.aix=s.Uw +s.aiu=s.oA +s.aiw=s.m +s.aiv=s.fX +s=A.T5.prototype +s.ak2=s.fX +s=A.yG.prototype +s.aiy=s.uu +s=A.Tc.prototype +s.ak4=s.m +s=A.Td.prototype +s.ak6=s.aY +s.ak5=s.cp +s.ak7=s.m +s=A.oK.prototype +s.Zc=s.aR +s.ahL=s.cp +s.ahO=s.Lu +s.Zb=s.Lw +s.Za=s.Lv +s.ahM=s.UZ +s.ahN=s.V_ +s.Z9=s.m +s=A.Gv.prototype +s.ajt=s.m +s=A.CQ.prototype +s.ahn=s.Ub +s.aht=s.aJc +s.ahu=s.aJd +s.ahq=s.aIp +s.ahs=s.aID +s.ahr=s.aIr +s.ahv=s.V7 +s.ahp=s.m +s.aho=s.l_ +s=A.Vz.prototype +s.alb=s.m +s=A.Vt.prototype +s.akY=s.aA +s.akZ=s.ap +s=A.kz.prototype +s.aiE=s.Uy +s=A.TO.prototype +s.akb=s.kb +s.akc=s.jh +s=A.PN.prototype +s.aj1=s.kN +s.aj2=s.m +s=A.OI.prototype +s.Zk=s.B9 +s.aiS=s.Bb +s.aiR=s.Ba +s=A.VA.prototype +s.alc=s.m +s=A.VB.prototype +s.ald=s.m +s=A.hZ.prototype +s.YR=s.LG +s.Oo=s.A3 +s=A.B1.prototype +s.agE=s.cp +s.agD=s.aP +s.agF=s.lw +s=A.U1.prototype +s.ake=s.m +s=A.fU.prototype +s.ail=s.l +s=A.Xs.prototype +s.ags=s.UQ +s=A.Vb.prototype +s.akH=s.m +s=A.hk.prototype +s.Zm=s.p_ +s.aj0=s.tS +s=A.aV.prototype +s.ahI=s.c_ +s.Oq=s.tS +s.Z7=s.m +s.Hn=s.p_ +s=A.fG.prototype +s.ajf=s.p_ +s=A.Vx.prototype +s.al8=s.cn +s.al9=s.m +s=A.VC.prototype +s.ale=s.m +s=A.El.prototype +s.aiG=s.bM +s.aiF=s.l})();(function installTearOffs(){var s=hunkHelpers._static_2,r=hunkHelpers._static_1,q=hunkHelpers._instance_0u,p=hunkHelpers._instance_1u,o=hunkHelpers._instance_1i,n=hunkHelpers._instance_0i,m=hunkHelpers.installInstanceTearOff,l=hunkHelpers._static_0,k=hunkHelpers.installStaticTearOff,j=hunkHelpers._instance_2u,i=hunkHelpers._instance_2i +s(A,"bON","bQX",258) +r(A,"bOL","bDe",3) +r(A,"bOM","bPW",48) +r(A,"apV","bOI",31) +q(A.Hu.prototype,"gSl","aCh",0) +var h +p(h=A.a1O.prototype,"gaza","azb",38) +p(h,"gauS","auT",38) +p(A.Yh.prototype,"gaE5","aE6",468) +p(h=A.oU.prototype,"gaox","aoy",3) +p(h,"gaov","aow",3) +p(A.a9H.prototype,"gazg","azh",690) +p(A.a15.prototype,"gawc","awd",500) +o(h=A.a0S.prototype,"gjx","G",786) +q(h,"gO5","u1",2) +p(A.a2n.prototype,"gaxe","axf",139) +o(A.Ly.prototype,"gWb","Wc",11) +o(A.NK.prototype,"gWb","Wc",11) +p(A.a1E.prototype,"gaxa","axb",3) +q(h=A.a0E.prototype,"gev","m",0) +p(h,"ga5N","aD3",7) +p(A.a6s.prototype,"gRv","axi",504) +p(A.uS.prototype,"gayD","ayE",676) +p(A.a9s.prototype,"gaLn","VO",678) +q(A.a7U.prototype,"gev","m",0) +p(h=A.Yy.prototype,"garS","arT",3) +p(h,"garU","arV",3) +p(h,"garQ","arR",3) +p(h=A.Ja.prototype,"gF2","a9O",3) +p(h,"gLn","aIo",3) +p(h,"gFB","aLm",3) +p(A.a_F.prototype,"gamL","amM",109) +p(A.a1i.prototype,"gaxH","axI",3) +s(J,"bla","bGZ",107) +n(h=A.AG.prototype,"gdP","aQ",36) +p(h,"gawW","awX",11) +m(h,"gij",1,0,null,["$1","$0"],["jM","jL"],313,0,0) +n(h,"gh4","jk",0) +o(A.nB.prototype,"gkY","n",49) +l(A,"bPF","bIQ",74) +o(A.ke.prototype,"gkY","n",49) +o(A.h6.prototype,"gkY","n",49) +r(A,"bQI","bM_",53) +r(A,"bQJ","bM0",53) +r(A,"bQK","bM1",53) +r(A,"bQH","bGl",49) +k(A,"bw3",1,function(){return[null]},["$2","$1"],["bpL",function(a){return A.bpL(a,null)}],955,0) +l(A,"bw4","bQc",0) +r(A,"bQL","bPY",31) +s(A,"bQM","bQ_",13) +l(A,"beu","bPZ",0) +q(h=A.zx.prototype,"gDi","qh",0) +q(h,"gDj","qi",0) +o(h=A.mi.prototype,"gjx","G",11) +n(h,"gdU","ad",36) +j(h,"gHz","jV",13) +o(h=A.Fr.prototype,"gjx","G",11) +m(h,"gww",0,1,function(){return[null]},["$2","$1"],["dO","pp"],178,0,0) +n(h,"gdU","ad",36) +m(A.zA.prototype,"gKs",0,1,function(){return[null]},["$2","$1"],["f6","ms"],178,0,0) +j(A.a8.prototype,"gyz","it",13) +o(h=A.vt.prototype,"gjx","G",11) +m(h,"gww",0,1,function(){return[null]},["$2","$1"],["dO","pp"],178,0,0) +n(h,"gdU","ad",36) +o(h,"gamz","on",11) +j(h,"gHz","jV",13) +q(h,"gao9","rI",0) +q(h=A.v8.prototype,"gDi","qh",0) +q(h,"gDj","qi",0) +m(h=A.hl.prototype,"gij",1,0,null,["$1","$0"],["jM","jL"],175,0,0) +n(h,"gh4","jk",0) +n(h,"gdP","aQ",36) +q(h,"gDi","qh",0) +q(h,"gDj","qi",0) +m(h=A.FG.prototype,"gij",1,0,null,["$1","$0"],["jM","jL"],175,0,0) +n(h,"gh4","jk",0) +n(h,"gdP","aQ",36) +q(h,"gaAG","qj",0) +q(h=A.Fq.prototype,"gawR","yV",0) +q(h,"gamC","amD",0) +m(h=A.v5.prototype,"gij",1,0,null,["$1","$0"],["jM","jL"],175,0,0) +n(h,"gh4","jk",0) +n(h,"gdP","aQ",36) +p(h=A.nK.prototype,"gamA","amB",11) +j(h,"gax3","ax4",13) +q(h,"gawY","awZ",0) +q(h=A.FV.prototype,"gDi","qh",0) +q(h,"gDj","qi",0) +p(h,"gQs","Qt",11) +j(h,"gQA","QB",499) +q(h,"gQu","Qv",0) +q(h=A.GK.prototype,"gDi","qh",0) +q(h,"gDj","qi",0) +p(h,"gQs","Qt",11) +j(h,"gQA","QB",13) +q(h,"gQu","Qv",0) +j(A.akT.prototype,"gaa0","aJq",13) +s(A,"blq","bOz",161) +r(A,"blr","bOA",71) +s(A,"bR4","bHn",107) +s(A,"bR5","bOH",107) +m(h=A.ph.prototype,"gRp",0,0,null,["$1$0","$0"],["Dh","Rq"],174,0,0) +o(h,"gkY","n",49) +m(h=A.kI.prototype,"gRp",0,0,null,["$1$0","$0"],["Dh","Rq"],174,0,0) +o(h,"gkY","n",49) +m(h=A.Em.prototype,"gawD",0,0,null,["$1$0","$0"],["a2I","yU"],174,0,0) +o(h,"gkY","n",49) +k(A,"bRj",1,function(){return{toEncodable:null}},["$2$toEncodable","$1"],["bwT",function(a){return A.bwT(a,null)}],956,0) +k(A,"bRi",1,function(){return{reviver:null}},["$2$reviver","$1"],["bwS",function(a){return A.bwS(a,null)}],957,0) +r(A,"blu","bOC",55) +n(A.RC.prototype,"gdU","ad",0) +o(h=A.PY.prototype,"gjx","G",11) +n(h,"gdU","ad",0) +m(A.ah8.prototype,"gam4",0,3,null,["$3"],["am5"],522,0,0) +r(A,"bwg","bT2",71) +k(A,"bwh",1,function(){return{onError:null,radix:null}},["$3$onError$radix","$1","$2$onError"],["ef",function(a){return A.ef(a,null,null)},function(a,b){return A.ef(a,b,null)}],958,0) +s(A,"bwf","bT1",161) +s(A,"bwd","bDU",959) +k(A,"bRl",1,function(){return{encoding:B.O}},["$2$encoding","$1"],["bsV",function(a){return A.bsV(a,B.O)}],960,0) +r(A,"bRk","bLq",19) +l(A,"bRm","bND",961) +s(A,"bwe","bQl",962) +o(A.z.prototype,"gkY","n",49) +m(A.cV.prototype,"gaPu",0,0,null,["$1","$0"],["adD","aPv"],307,0,0) +k(A,"bSZ",4,null,["$4"],["bMD"],311,0) +k(A,"bT_",4,null,["$4"],["bME"],311,0) +i(A.tI.prototype,"gafB","afC",83) +o(A.Fa.prototype,"gafh","iM",31) +n(h=A.FO.prototype,"gdP","aQ",36) +m(h,"gij",1,0,null,["$1","$0"],["jM","jL"],313,0,0) +n(h,"gh4","jk",0) +q(h=A.ag_.prototype,"gayY","RL",0) +n(h,"gava","avb",0) +n(A.QV.prototype,"gt","vf",168) +n(h=A.zP.prototype,"gdU","ad",2) +n(h,"gt","vf",168) +r(A,"bTm","bkZ",123) +r(A,"bTl","bkY",964) +k(A,"bx0",2,null,["$1$2","$2"],["bx1",function(a,b){return A.bx1(a,b,t.Jy)}],965,1) +k(A,"W9",3,null,["$3"],["aTn"],966,0) +k(A,"Wa",3,null,["$3"],["ag"],967,0) +k(A,"dj",3,null,["$3"],["W"],968,0) +p(A.TB.prototype,"gaaF","hf",48) +q(A.rb.prototype,"ga0n","aps",0) +j(h=A.Ii.prototype,"gawO","awP",853) +m(h,"gawM",0,3,null,["$3"],["awN"],281,0,0) +p(h=A.a5e.prototype,"gawp","awq",6) +q(h,"gawr","a2C",0) +o(h,"gDV","P",164) +j(h=A.a_R.prototype,"gaHv","dj",161) +o(h,"gaJt","du",71) +p(h,"gaKB","aKC",49) +m(A.hP.prototype,"gdP",1,0,function(){return[null]},["$1","$0"],["a7r","aQ"],307,0,0) +j(h=A.km.prototype,"gMm","oW",67) +j(h,"gWd","ty",157) +i(h,"gtx","nq",156) +j(h=A.ah2.prototype,"gMm","oW",67) +j(h,"gWd","ty",157) +i(h,"gtx","nq",156) +j(A.Ko.prototype,"gMm","oW",67) +r(A,"bx6","bOD",969) +r(A,"bQN","bOx",99) +j(h=A.Je.prototype,"gMm","oW",67) +j(h,"gWd","ty",157) +i(h,"gtx","nq",156) +r(A,"c1q","auf",970) +n(A.Lp.prototype,"gt","vf",168) +s(A,"bTP","bOB",971) +p(A.Lq.prototype,"gaGS","aGT",439) +r(A,"bWd","bTh",10) +m(h=A.my.prototype,"gacL",1,0,null,["$1$from","$0"],["WT","d9"],458,0,0) +p(h,"gap6","ap7",459) +p(h,"gOX","amq",6) +p(A.jL.prototype,"gz9","Jk",9) +p(A.wm.prototype,"gJC","JD",9) +p(h=A.zf.prototype,"gz9","Jk",9) +q(h,"gSJ","aDD",0) +p(h=A.B_.prototype,"ga2w","aw7",9) +q(h,"ga2v","aw6",0) +q(A.vR.prototype,"geL","ag",0) +p(A.rV.prototype,"gabt","vi",9) +p(h=A.Qh.prototype,"ganp","anq",40) +p(h,"ganr","ans",77) +q(h,"gann","ano",0) +p(A.Qi.prototype,"gW3","W4",7) +p(h=A.Qj.prototype,"gax1","ax2",78) +p(h,"gax5","ax6",64) +q(A.Qn.prototype,"gRc","a2m",0) +s(A,"bTR","bPH",972) +k(A,"bTT",3,null,["$3"],["bPV"],973,0) +k(A,"bTS",5,null,["$5"],["bPU"],213,0) +m(A.PL.prototype,"gan9",0,3,null,["$3"],["ana"],496,0,0) +q(A.Qk.prototype,"gaxM","axN",0) +p(h=A.FB.prototype,"gayW","ayX",35) +p(h,"gW3","W4",7) +p(h=A.FA.prototype,"gazJ","azK",41) +p(h,"gazL","azM",18) +p(h,"gazH","azI",30) +q(h,"gazF","azG",0) +p(h,"gazN","azO",66) +q(A.Ql.prototype,"gaa_","Lu",0) +p(h=A.Qm.prototype,"gaBQ","aBR",40) +m(h,"gSh",0,0,function(){return[null]},["$1","$0"],["a4L","aBP"],136,0,0) +p(h,"gaBS","aBT",77) +q(h,"gauf","aug",0) +p(h,"gaBL","aBM",41) +p(h,"gaBN","aBO",18) +p(h,"gaBJ","aBK",30) +p(h,"gaxu","axv",7) +k(A,"bVU",4,null,["$4"],["bEf"],974,0) +p(h=A.Qq.prototype,"gaxc","axd",30) +q(h,"gat2","a1G",0) +q(h,"gats","a1I",0) +p(h,"gJl","aBu",9) +p(h=A.Qo.prototype,"gaxy","axz",40) +p(h,"gaxA","axB",77) +q(h,"gaxw","axx",0) +p(h=A.ET.prototype,"gaCw","aCx",40) +m(h,"ga5i",0,0,function(){return[null]},["$1","$0"],["a5j","aCv"],136,0,0) +m(h,"ga5k",0,0,null,["$1","$0"],["a5l","aCy"],249,0,0) +p(h,"gaCt","aCu",7) +k(A,"bQE",1,null,["$2$forceReport","$1"],["biG",function(a){return A.biG(a,!1)}],975,0) +o(h=A.im.prototype,"gDV","P",53) +o(h,"gacn","J",53) +q(h,"gev","m",0) +q(h,"geL","ag",0) +r(A,"bVD","bKk",976) +p(h=A.BT.prototype,"gatb","atc",581) +p(h,"gap1","ap2",593) +p(h,"gaF1","aF2",38) +q(h,"gaqv","Q7",0) +p(h,"gatf","a1H",34) +q(h,"gaty","atz",0) +k(A,"c1V",3,null,["$3"],["bpG"],977,0) +p(A.mN.prototype,"gv6","kb",34) +r(A,"bwV","bHs",56) +r(A,"blK","bFg",220) +r(A,"blL","bFh",56) +p(A.Jq.prototype,"gv6","kb",34) +r(A,"bTQ","bFd",56) +q(A.aeA.prototype,"gaxC","axD",0) +p(h=A.mL.prototype,"gIJ","aws",34) +p(h,"gaz9","Du",620) +q(h,"gawt","we",0) +r(A,"Hj","bGp",56) +p(A.Di.prototype,"gv6","kb",34) +p(A.nb.prototype,"gv6","kb",34) +j(h=A.RM.prototype,"gav4","av5",667) +j(h,"gaw0","aw1",51) +p(A.Pz.prototype,"gOY","ams",670) +p(h=A.PT.prototype,"ga_3","amH",41) +p(h,"ga_4","amI",18) +p(h,"ga_2","amG",30) +p(h,"gUC","UD",141) +p(h,"gas4","as5",7) +p(h=A.Sz.prototype,"gbZ","c3",1) +p(h,"gc2","bV",1) +p(h,"gcD","bW",1) +p(h,"gd4","c1",1) +p(h=A.Gh.prototype,"gaIu","aIv",41) +m(h,"gaIs",0,1,null,["$2$isClosing","$1"],["a9P","aIt"],237,0,0) +p(h=A.SJ.prototype,"gbZ","c3",1) +p(h,"gcD","bW",1) +p(h,"gc2","bV",1) +p(h,"gd4","c1",1) +q(A.PW.prototype,"gxc","V8",0) +p(h=A.SK.prototype,"gbZ","c3",1) +p(h,"gcD","bW",1) +p(h,"gc2","bV",1) +p(h,"gd4","c1",1) +q(A.Iu.prototype,"gauu","auv",0) +p(h=A.St.prototype,"ganY","anZ",40) +q(h,"ganW","anX",0) +q(h,"ganU","anV",0) +p(h=A.SB.prototype,"gbZ","c3",1) +p(h,"gc2","bV",1) +p(h,"gcD","bW",1) +p(h,"gd4","c1",1) +k(A,"bRN",4,null,["$4"],["bO0"],312,0) +q(h=A.Bn.prototype,"gamn","amo",0) +p(h,"gapu","apv",9) +q(h,"gast","asu",0) +p(h,"gas2","as3",224) +q(h,"gas0","as1",0) +p(h,"ga2A","awi",18) +p(h,"ga4m","aAV",30) +n(h,"gdU","ad",0) +p(h=A.FL.prototype,"gapA","apB",7) +q(h,"gat5","at6",0) +q(A.FI.prototype,"gapC","PU",0) +q(h=A.QT.prototype,"gaq3","aq4",0) +j(h,"gamS","amT",51) +p(h=A.SA.prototype,"gbZ","c3",1) +p(h,"gcD","bW",1) +q(h=A.Ru.prototype,"gatu","atv",0) +p(h,"gamP","amQ",12) +q(A.Ks.prototype,"gauU","auV",0) +p(A.tP.prototype,"garx","ary",9) +p(A.Kt.prototype,"gauX","auY",9) +p(A.Ku.prototype,"gauZ","av_",9) +p(h=A.C9.prototype,"gNI","C4",149) +p(h,"gaGK","aGL",873) +m(h=A.Rs.prototype,"gYr",0,0,function(){return[null]},["$1","$0"],["Ys","afY"],136,0,0) +q(h,"gafW","afX",0) +q(h,"gxc","V8",0) +p(h,"ga9R","aIy",219) +p(h,"gaIz","aIA",7) +p(h,"gaJj","aJk",40) +p(h,"gaJl","aJm",77) +p(h,"gaJ8","aJ9",40) +p(h,"gaJa","aJb",77) +q(h,"gV9","Ls",0) +q(h,"gaJh","aJi",0) +q(h,"gaIK","a9V",0) +q(h,"gaJ4","aJ5",0) +q(h,"gaJ6","aJ7",0) +p(h,"gaIP","aIQ",78) +p(h,"gaIR","aIS",64) +q(A.Rd.prototype,"gQW","QX",0) +p(h=A.SE.prototype,"gbZ","c3",1) +p(h,"gc2","bV",1) +p(h,"gcD","bW",1) +p(h,"gd4","c1",1) +p(h,"ganN","anO",218) +j(h,"gaxU","axV",15) +q(A.Rx.prototype,"gQW","QX",0) +p(h=A.SN.prototype,"gbZ","c3",1) +p(h,"gc2","bV",1) +p(h,"gcD","bW",1) +p(h,"gd4","c1",1) +q(A.TS.prototype,"gPO","a09",0) +p(A.Rm.prototype,"gNI","C4",149) +p(A.Qt.prototype,"ga65","a66",9) +q(A.S4.prototype,"gawu","a2F",0) +p(A.Rl.prototype,"gNI","C4",149) +q(h=A.H6.prototype,"gB7","aLL",0) +p(h,"gB6","aLK",9) +p(h=A.Uz.prototype,"gDk","Rw",31) +q(h,"gev","m",0) +p(h=A.UA.prototype,"gDk","Rw",31) +q(h,"gev","m",0) +q(A.De.prototype,"gV9","Ls",0) +q(A.Dd.prototype,"gafO","afP",0) +p(A.Gu.prototype,"gayU","ayV",35) +p(h=A.MF.prototype,"gatC","atD",47) +p(h,"gasD","asE",327) +p(h=A.QX.prototype,"gatq","atr",9) +q(h,"gaxj","axk",0) +p(h=A.DQ.prototype,"gapO","apP",7) +q(h,"gau8","au9",0) +p(h=A.GN.prototype,"gaA1","aA2",41) +m(h,"gaA_",0,1,null,["$2$isClosing","$1"],["a3K","aA0"],237,0,0) +p(h,"gaua","aub",9) +p(h,"gUC","UD",141) +k(A,"bxt",3,null,["$3"],["bPG"],979,0) +s(A,"bVe","bJO",179) +p(h=A.ale.prototype,"gW6","B9",59) +p(h,"gW5","FL",59) +p(h,"gabD","Wf",97) +p(h,"gWh","Bb",114) +p(h,"gWg","Ba",70) +q(h=A.Tf.prototype,"ga2N","awT",0) +j(h,"gaAy","aAz",215) +q(h,"gaAA","aAB",0) +p(h=A.Tp.prototype,"garM","arN",46) +p(h,"gQy","Qz",46) +p(h,"gQw","Qx",46) +p(h,"galZ","am_",340) +p(h,"gaso","asp",7) +p(h,"gasv","asw",7) +q(h=A.Gz.prototype,"gapR","PW",0) +p(h,"gQy","Qz",41) +p(h,"gas6","as7",18) +p(h,"gQw","Qx",30) +p(h,"gauh","aui",40) +p(h,"gaum","aun",77) +p(h,"gbZ","c3",1) +p(h,"gc2","bV",1) +p(h,"gcD","bW",1) +p(h,"gd4","c1",1) +q(h,"gaJW","LF",0) +q(h,"gaGQ","KK",0) +p(h=A.RQ.prototype,"gaBF","aBG",41) +p(h,"gaBH","aBI",18) +p(h,"gaBD","aBE",30) +p(h,"gaBB","aBC",35) +q(h=A.TI.prototype,"garY","arZ",0) +q(h,"gev","m",0) +q(A.qW.prototype,"gev","m",0) +q(A.Rn.prototype,"geE","aU",0) +q(h=A.TK.prototype,"gw9","QH",0) +q(h,"gQI","aud",0) +m(h,"gazY",0,3,null,["$3"],["azZ"],345,0,0) +q(h=A.TL.prototype,"gw9","QH",0) +p(h,"gaBW","aBX",47) +s(A,"W6","bKH",179) +p(h=A.amM.prototype,"gW6","B9",59) +p(h,"gW5","FL",59) +p(h,"gWh","Bb",114) +p(h,"gWg","Ba",70) +q(h=A.TQ.prototype,"gJu","aC1",0) +j(h,"gaC2","aC3",215) +q(h,"gatK","atL",0) +s(A,"bVT","bKJ",179) +q(A.GY.prototype,"gQr","arW",0) +s(A,"bVV","bKS",981) +p(h=A.zd.prototype,"gaCr","aCs",40) +m(h,"ga5g",0,0,function(){return[null]},["$1","$0"],["a5h","aCq"],136,0,0) +m(h,"ga1M",0,0,null,["$1","$0"],["a1N","auj"],249,0,0) +p(h,"gaCm","aCn",7) +p(h,"gaCo","aCp",7) +q(A.ES.prototype,"gev","m",0) +p(h=A.EV.prototype,"gaCB","aCC",9) +p(h,"gatd","ate",66) +p(h,"ga1D","asr",34) +q(h,"gauk","aul",0) +q(h,"gasH","asI",0) +q(h,"gato","atp",0) +p(h,"ga5m","aCz",78) +p(h,"ga5n","aCA",64) +p(h,"ganh","ani",12) +m(h=A.M3.prototype,"gaK5",0,1,null,["$4$allowUpscaling$cacheHeight$cacheWidth","$1"],["aaw","Fg"],358,0,0) +m(h,"gaK8",0,1,null,["$4$allowUpscaling$cacheHeight$cacheWidth","$1"],["aax","aK9"],359,0,0) +m(h,"gaKa",0,1,null,["$2$getTargetSize","$1"],["aaz","aKb"],360,0,0) +k(A,"bln",3,null,["$3"],["br3"],982,0) +j(A.a_O.prototype,"gasx","asy",201) +k(A,"blx",3,null,["$3"],["fx"],983,0) +o(h=A.xb.prototype,"gDV","P",164) +p(h,"gaNL","aNM",193) +p(h=A.a5d.prototype,"garO","arP",269) +p(h,"garE","arF",6) +o(h,"gDV","P",164) +j(A.Fd.prototype,"gaBd","aBe",379) +k(A,"W7",3,null,["$3"],["c1"],984,0) +o(h=A.a1h.prototype,"gaPw","hD",1) +o(h,"gUr","j1",1) +q(h=A.DG.prototype,"gatT","atU",0) +p(h,"gatX","atY",385) +q(h,"gatV","atW",0) +p(h,"gaux","auy",6) +p(h,"gat7","at8",6) +q(A.PP.prototype,"gev","m",0) +p(h=A.N.prototype,"gbZ","c3",1) +p(h,"gc2","bV",1) +p(h,"gcD","bW",1) +p(h,"gd4","c1",1) +q(h,"gtv","a6",0) +j(A.dR.prototype,"ga8A","wM",15) +p(h=A.MM.prototype,"gbZ","c3",1) +p(h,"gc2","bV",1) +p(h,"gcD","bW",1) +p(h,"gd4","c1",1) +p(h=A.MN.prototype,"gbZ","c3",1) +p(h,"gc2","bV",1) +p(h,"gcD","bW",1) +p(h,"gd4","c1",1) +q(h=A.yp.prototype,"geE","aU",0) +q(h,"gJf","aB8",0) +p(h,"gau0","au1",25) +p(h,"gatZ","au_",389) +p(h,"gasX","asY",7) +p(h,"gasT","asU",7) +p(h,"gasZ","at_",7) +p(h,"gasV","asW",7) +p(h,"gbZ","c3",1) +p(h,"gc2","bV",1) +p(h,"gcD","bW",1) +p(h,"gd4","c1",1) +p(h,"gapH","apI",40) +q(h,"gapF","apG",0) +q(h,"gapD","apE",0) +j(h,"gaxS","a3_",15) +p(h=A.MP.prototype,"gc2","bV",1) +p(h,"gd4","c1",1) +p(h=A.yq.prototype,"gbZ","c3",1) +p(h,"gc2","bV",1) +p(h,"gcD","bW",1) +p(h,"gd4","c1",1) +p(h=A.MR.prototype,"gbZ","c3",1) +p(h,"gc2","bV",1) +p(h,"gcD","bW",1) +p(h,"gd4","c1",1) +p(h=A.MU.prototype,"gbZ","c3",1) +p(h,"gc2","bV",1) +p(h,"gcD","bW",1) +p(h,"gd4","c1",1) +r(A,"bx4","bJk",24) +r(A,"bx5","bJl",24) +q(A.Mi.prototype,"gaDt","a63",0) +p(h=A.H.prototype,"gWI","ra",24) +q(h,"geE","aU",0) +m(h,"giE",0,2,null,["$2"],["aD"],15,0,1) +q(h,"gB4","bX",0) +m(h,"ga2r",0,1,null,["$2$isMergeUp","$1"],["IC","avX"],397,0,0) +m(h,"gyc",0,0,null,["$4$curve$descendant$duration$rect","$0","$1$rect","$3$curve$duration$rect","$2$descendant$rect"],["i2","Cn","vN","yd","vO"],177,0,0) +p(h=A.aq.prototype,"ga7x","aFe","aq.0?(B?)") +p(h,"gTv","aFd","aq.0?(B?)") +q(A.ut.prototype,"gum","aAb",0) +p(h=A.MY.prototype,"gbZ","c3",1) +p(h,"gc2","bV",1) +p(h,"gcD","bW",1) +p(h,"gd4","c1",1) +p(h,"ganP","anQ",218) +p(h=A.iw.prototype,"gbZ","c3",1) +p(h,"gc2","bV",1) +p(h,"gcD","bW",1) +p(h,"gd4","c1",1) +m(h,"giE",0,2,null,["$2"],["aD"],15,0,1) +p(h=A.DD.prototype,"gbZ","c3",1) +p(h,"gc2","bV",1) +p(h,"gcD","bW",1) +p(h,"gd4","c1",1) +p(h=A.MT.prototype,"gbZ","c3",1) +p(h,"gc2","bV",1) +p(h,"gcD","bW",1) +p(h,"gd4","c1",1) +q(A.MJ.prototype,"gJG","SA",0) +q(A.Gx.prototype,"gIB","yQ",0) +p(h=A.MW.prototype,"gbZ","c3",1) +p(h,"gc2","bV",1) +p(h,"gcD","bW",1) +p(h,"gd4","c1",1) +q(h=A.qK.prototype,"gayo","ayp",0) +q(h,"gayq","ayr",0) +q(h,"gays","ayt",0) +q(h,"gaym","ayn",0) +q(h=A.N_.prototype,"gayv","ayw",0) +q(h,"gayh","ayi",0) +q(h,"gaye","ayf",0) +q(h,"gay8","ay9",0) +q(h,"gaya","ayb",0) +q(h,"gayj","ayk",0) +q(h,"gayc","ayd",0) +q(A.a8e.prototype,"ga48","a49",0) +p(h=A.ys.prototype,"gbZ","c3",1) +p(h,"gc2","bV",1) +p(h,"gcD","bW",1) +p(h,"gd4","c1",1) +m(h,"giE",0,2,null,["$2"],["aD"],15,0,1) +p(h=A.MX.prototype,"gbZ","c3",1) +p(h,"gc2","bV",1) +p(h,"gcD","bW",1) +p(h,"gd4","c1",1) +p(h=A.MO.prototype,"gbZ","c3",1) +p(h,"gc2","bV",1) +p(h,"gcD","bW",1) +p(h,"gd4","c1",1) +m(A.d7.prototype,"gaJF",0,1,null,["$3$crossAxisPosition$mainAxisPosition"],["aaa"],403,0,0) +p(h=A.DE.prototype,"gbZ","c3",1) +p(h,"gc2","bV",1) +p(h,"gcD","bW",1) +p(h,"gd4","c1",1) +j(h,"gabM","Mz",15) +j(A.MS.prototype,"gabM","Mz",15) +p(h=A.qL.prototype,"gbZ","c3",1) +p(h,"gc2","bV",1) +p(h,"gcD","bW",1) +p(h,"gd4","c1",1) +j(h,"gaDG","a6h",15) +m(h,"gyc",0,0,null,["$4$curve$descendant$duration$rect","$0","$1$rect","$3$curve$duration$rect","$2$descendant$rect"],["i2","Cn","vN","yd","vO"],177,0,0) +p(h=A.N2.prototype,"gbZ","c3",1) +p(h,"gc2","bV",1) +p(h,"gcD","bW",1) +p(h,"gd4","c1",1) +s(A,"bQS","bJA",985) +k(A,"bQT",0,null,["$2$priority$scheduler"],["bRE"],986,0) +p(h=A.i6.prototype,"gaq_","aq0",182) +q(h,"gazR","azS",0) +p(h,"garI","arJ",6) +q(h,"gas9","asa",0) +q(h,"gaph","api",0) +p(A.za.prototype,"gJv","aCe",6) +q(h=A.a8f.prototype,"gap4","ap5",0) +q(h,"gatS","a1K",0) +p(h,"gatQ","atR",410) +p(A.e0.prototype,"ga3p","az4",411) +q(A.Ny.prototype,"gev","m",0) +p(A.nd.prototype,"gaEf","T1",418) +r(A,"bQF","bD_",987) +r(A,"bQG","bLY",988) +r(A,"bQR","bJX",989) +q(h=A.E5.prototype,"gama","amb",422) +p(h,"gasF","QE",423) +p(h,"gat9","Ih",69) +p(h=A.a2m.prototype,"gaIE","aIF",139) +p(h,"gaJ2","V6",426) +p(h,"gaoA","aoB",427) +p(A.N6.prototype,"gawa","Rk",188) +p(h=A.fp.prototype,"gapy","apz",189) +p(h,"ga3n","a3o",189) +p(A.aa4.prototype,"gavR","Iz",69) +p(A.aay.prototype,"gaur","QK",69) +p(A.Pu.prototype,"ga1v","arw",441) +p(h=A.R1.prototype,"ga1C","asq",219) +p(h,"gasP","asQ",78) +p(h,"gasR","asS",64) +p(h,"gasl","asm",7) +s(A,"bw0","bCW",990) +s(A,"bw_","bCV",991) +p(A.Pw.prototype,"gaDx","SG",443) +p(h=A.Ur.prototype,"gax8","ax9",446) +p(h,"gaxF","axG",447) +p(A.PK.prototype,"gam6","am7",449) +q(A.KF.prototype,"gev","m",0) +q(h=A.P6.prototype,"gaII","aIJ",0) +p(h,"gat0","at1",69) +q(h,"garK","arL",0) +q(h=A.Uy.prototype,"gaIO","V1",0) +q(h,"gaJo","Va",0) +q(h,"gaIW","V4",0) +p(h,"gaIn","UY",953) +p(A.QH.prototype,"gOV","ZX",9) +q(h=A.tq.prototype,"ga2M","awS",0) +q(h,"gax7","a2P",0) +q(h,"gazy","azz",0) +q(h,"gDJ","aCP",0) +q(h,"gax_","ax0",0) +q(h,"gawU","awV",0) +q(h,"ga2O","Rt",0) +q(h,"gHV","a0c",0) +q(h,"gQD","asn",0) +p(h,"gaog","aoh",456) +m(h,"gaA7",0,0,function(){return[null]},["$1","$0"],["a3Q","a3P"],196,0,0) +p(h,"gaMJ","aMK",25) +m(h,"gawj",0,3,null,["$3"],["awk"],197,0,0) +m(h,"gawm",0,3,null,["$3"],["awn"],197,0,0) +q(h,"ganD","a_h",93) +q(h,"gawE","awF",93) +q(h,"gavw","avx",93) +q(h,"gay3","ay4",93) +q(h,"gapn","apo",93) +p(h,"gaCH","aCI",460) +p(h,"gazm","a3y",461) +p(h,"gaAf","aAg",462) +p(h,"gaAc","aAd",463) +p(h,"gaq5","aq6",464) +p(h,"gaDl","aDm",465) +p(h,"gauD","auE",466) +p(h,"gaoX","aoY",66) +q(A.eJ.prototype,"gev","m",0) +q(h=A.JW.prototype,"gev","m",0) +q(h,"gamv","amw",0) +p(h=A.agy.prototype,"ga9W","V5",34) +p(h,"ga9U","aIG",475) +q(A.FS.prototype,"gQ9","aqy",0) +k(A,"bSu",1,null,["$5$alignment$alignmentPolicy$curve$duration","$1","$2$alignmentPolicy"],["biH",function(a){return A.biH(a,null,null,null,null)},function(a,b){return A.biH(a,null,b,null,null)}],992,0) +r(A,"bfn","bMF",22) +s(A,"bfm","bFs",993) +r(A,"bwD","bFr",22) +p(A.af.prototype,"gafG","a7",53) +p(h=A.agQ.prototype,"gaCR","a5u",22) +q(h,"gaCS","aCT",0) +p(A.bG.prototype,"gaGJ","KJ",22) +p(h=A.Du.prototype,"gaqJ","aqK",66) +p(h,"gatg","ath",505) +p(h,"gaDr","aDs",506) +p(h=A.rj.prototype,"gan4","an5",12) +p(h,"garB","a1w",9) +q(h,"gabE","aMg",0) +p(h=A.lJ.prototype,"gasi","asj",509) +m(h,"gaoV",0,5,null,["$5"],["aoW"],213,0,0) +k(A,"bwK",3,null,["$3"],["qf"],994,0) +j(h=A.Rj.prototype,"gasB","asC",201) +p(h,"gasz","asA",193) +q(A.Ai.prototype,"garz","arA",0) +q(A.G5.prototype,"gQL","aut",0) +p(h=A.Ry.prototype,"gaxq","axr",519) +p(h,"gaxs","axt",520) +p(h,"gaxo","axp",521) +p(h,"gaz0","az1",181) +q(h,"gIL","awQ",0) +q(h,"gIP","axn",0) +q(h,"ga2U","axE",0) +p(A.G8.prototype,"ga2g","avm",11) +p(h=A.SL.prototype,"gbZ","c3",1) +p(h,"gc2","bV",1) +p(h,"gcD","bW",1) +p(h,"gd4","c1",1) +s(A,"bx2","bIa",995) +r(A,"rK","bNc",95) +r(A,"bx3","bNd",95) +r(A,"W1","bNe",95) +p(A.Gl.prototype,"gFI","tw",106) +p(A.Gk.prototype,"gFI","tw",106) +p(A.S5.prototype,"gFI","tw",106) +p(A.S6.prototype,"gFI","tw",106) +p(h=A.kt.prototype,"gawv","aww",66) +p(h,"gatk","atl",34) +p(h=A.Gy.prototype,"gcD","bW",1) +p(h,"gd4","c1",1) +p(h,"gbZ","c3",1) +p(h,"gc2","bV",1) +r(A,"bU_","bNa",24) +m(A.zS.prototype,"giE",0,2,null,["$2"],["aD"],15,0,1) +p(h=A.vq.prototype,"gbZ","c3",1) +p(h,"gc2","bV",1) +p(h,"gcD","bW",1) +p(h,"gd4","c1",1) +p(A.R9.prototype,"gRx","Ry",47) +q(h=A.R8.prototype,"gev","m",0) +p(h,"gPd","Pe",9) +p(h,"gaCf","aCg",6) +p(A.TG.prototype,"gRx","Ry",47) +p(h=A.TF.prototype,"gPd","Pe",9) +q(h,"gev","m",0) +p(A.a_V.prototype,"gaw8","Rj",188) +q(A.SY.prototype,"gRT","azl",0) +q(A.fT.prototype,"gev","m",0) +p(A.lZ.prototype,"gaDg","SB",543) +p(h=A.GC.prototype,"gazp","azq",6) +q(h,"gIj","a1J",0) +q(h,"gQp","arH",130) +q(h,"gQF","atx",0) +p(h=A.DN.prototype,"gafu","afv",150) +p(h,"gafD","afE",150) +p(A.fg.prototype,"ga1L","auc",9) +p(h=A.dX.prototype,"gan0","an1",12) +p(h,"gan2","an3",12) +q(h=A.Xo.prototype,"gS6","S7",0) +q(h,"gS4","S5",0) +q(h=A.a0r.prototype,"gS6","S7",0) +q(h,"gS4","S5",0) +q(A.yC.prototype,"gev","m",0) +s(A,"rN","bvk",241) +o(h=A.Ti.prototype,"gjx","G",96) +o(h,"gls","F",96) +r(A,"Hk","bRF",47) +q(h=A.nc.prototype,"gaH7","aH8",0) +q(h,"gev","m",0) +q(A.yG.prototype,"gev","m",0) +p(h=A.DW.prototype,"ga3Z","aAh",224) +p(h,"ga40","aAj",41) +p(h,"ga41","aAk",18) +p(h,"ga4_","aAi",30) +q(h,"ga3X","a3Y",0) +q(h,"gape","apf",0) +q(h,"gapc","apd",0) +p(h,"gaAp","aAq",181) +p(h,"gaAl","aAm",34) +p(h,"gaAn","aAo",144) +q(h=A.Ta.prototype,"ga3O","aA5",0) +q(h,"gev","m",0) +q(A.DX.prototype,"gev","m",0) +p(h=A.oK.prototype,"gaDB","aDC",9) +q(h,"gaa_","Lu",0) +p(h,"gaup","auq",40) +p(h,"gatA","atB",144) +p(h,"gaAr","aAs",47) +p(h,"gati","atj",34) +p(h,"gaAt","aAu",181) +o(h=A.CQ.prototype,"gjx","G",96) +o(h,"gls","F",96) +j(h,"gPt","aoe",567) +q(h,"gQG","atF",0) +q(h,"gev","m",0) +j(A.Tm.prototype,"gat3","at4",242) +q(A.NH.prototype,"gev","m",0) +q(A.Tl.prototype,"ga4p","aB0",0) +q(h=A.SV.prototype,"gIn","auB",0) +p(h,"gbZ","c3",1) +p(h,"gc2","bV",1) +p(h,"gcD","bW",1) +p(h,"gd4","c1",1) +m(h,"gyc",0,0,null,["$4$curve$descendant$duration$rect","$0","$1$rect","$3$curve$duration$rect","$2$descendant$rect"],["i2","Cn","vN","yd","vO"],177,0,0) +p(A.Eh.prototype,"gaNx","acl",575) +q(A.GA.prototype,"gIN","axl",0) +q(A.Qw.prototype,"gev","m",0) +p(A.Tz.prototype,"gOW","amp",9) +p(h=A.TO.prototype,"gv6","kb",34) +q(h,"gaot","aou",0) +p(A.I0.prototype,"gv6","kb",34) +q(h=A.aa8.prototype,"ga67","SF",0) +p(h,"gatG","atH",41) +p(h,"gatI","atJ",18) +p(h,"gatM","atN",41) +p(h,"gatO","atP",18) +p(h,"garC","arD",30) +p(h=A.a8d.prototype,"gau4","au5",41) +p(h,"gau6","au7",18) +p(h,"gau2","au3",30) +p(h,"gasd","ase",41) +p(h,"gasf","asg",18) +p(h,"gasb","asc",30) +p(h,"gand","ane",12) +p(h,"gamV","amW",12) +p(h,"ganf","ang",12) +q(A.Tj.prototype,"gJx","Sm",0) +q(A.Th.prototype,"gQM","QN",0) +p(h=A.OI.prototype,"gaMe","aMf",129) +p(h,"gW6","B9",59) +p(h,"gW5","FL",59) +p(h,"gWh","Bb",114) +q(h,"gaMb","aMc",0) +p(h,"gWg","Ba",70) +p(h,"gabD","Wf",97) +p(h,"gaM9","aMa",124) +q(h,"gaM4","aM5",0) +p(h,"gaM6","aM7",40) +p(h,"gaLP","aLQ",129) +p(h,"gaMh","aMi",129) +p(h,"gaLT","aLU",227) +p(h,"gaLV","aLW",228) +p(h,"gaLR","aLS",229) +p(h=A.TU.prototype,"ga54","aC8",129) +p(h,"ga55","aC9",114) +q(h,"ga53","aC7",0) +p(h,"ga51","aC5",227) +p(h,"ga52","aC6",228) +p(h,"ga50","aC4",229) +p(h,"gaqC","aqD",59) +p(h,"gaqA","aqB",59) +p(h,"gasN","asO",70) +p(h,"gasL","asM",97) +p(h,"gasJ","asK",124) +q(A.IF.prototype,"gev","m",0) +q(A.fC.prototype,"ghI","hJ",0) +q(A.dG.prototype,"gej","es",0) +q(A.Pv.prototype,"gSr","aCG",0) +q(h=A.F0.prototype,"gadg","Gq",0) +q(h,"gacf","G5",0) +p(h,"gaCM","aCN",586) +p(h,"gaz5","az6",587) +q(h,"gRI","a3g",0) +q(h,"gQC","a1B",0) +q(A.P0.prototype,"gev","m",0) +q(A.H5.prototype,"gSK","aDE",0) +p(h=A.ST.prototype,"gd4","c1",1) +p(h,"gc2","bV",1) +p(h,"gcD","bW",1) +p(h,"gbZ","c3",1) +q(A.Ga.prototype,"gDc","R7",0) +q(A.GQ.prototype,"gDc","R7",0) +p(A.a14.prototype,"gV0","xb",69) +p(A.U7.prototype,"ga0N","aqx",53) +m(A.a73.prototype,"gaIB",0,3,null,["$3"],["Lo"],599,0,0) +p(A.a16.prototype,"gV0","xb",69) +m(A.a7O.prototype,"gaMu",0,0,null,["$5$arguments$child$key$name$restorationId"],["aMv"],600,0,0) +j(A.aiW.prototype,"gabA","aM0",609) +m(h=A.Kd.prototype,"gatm",0,3,null,["$3"],["atn"],615,0,0) +p(h,"gTn","A",12) +p(h,"gYh","NW",150) +q(A.Kc.prototype,"gev","m",0) +k(A,"bRy",0,null,["$5$arguments$child$key$name$restorationId"],["bU1"],996,0) +k(A,"aq6",4,null,["$4"],["bIb"],312,0) +k(A,"bTO",0,null,["$5$arguments$child$key$name$restorationId"],["bU2"],997,0) +s(A,"bUK","bJw",238) +p(A.Oc.prototype,"gaGP","a8w",55) +q(h=A.qw.prototype,"gaO_","aO0",0) +q(h,"gev","m",0) +q(A.RI.prototype,"gQq","a1z",0) +r(A,"pw","a_J",314) +r(A,"bTZ","bjo",314) +r(A,"bTa","bQg",19) +l(A,"k7","bOF",8) +l(A,"fZ","bNV",8) +l(A,"eQ","bNN",8) +l(A,"A2","bNP",8) +l(A,"blO","bNQ",8) +l(A,"bU7","bNY",8) +l(A,"bU8","bNZ",8) +l(A,"bg_","bO_",8) +l(A,"bg0","bO3",8) +l(A,"bxg","bOt",8) +l(A,"bU9","bOu",8) +l(A,"bUa","bOv",8) +l(A,"aqg","bOP",8) +l(A,"bxf","bOc",8) +l(A,"blP","bP_",8) +l(A,"bUc","bP2",8) +l(A,"bxh","bPj",8) +l(A,"bUb","bOW",8) +l(A,"bUd","bPD",8) +l(A,"blN","bNO",8) +l(A,"bUe","bPJ",8) +l(A,"bUf","bPK",8) +l(A,"bUg","bPQ",8) +l(A,"bUi","bPT",8) +l(A,"bUj","bQ1",8) +l(A,"bxi","bQ3",8) +l(A,"bUh","bPR",8) +l(A,"bxj","bQ5",8) +l(A,"bUk","bQa",8) +l(A,"bUl","bQb",8) +r(A,"bUm","bTx",10) +p(A.QU.prototype,"gT7","aEp",9) +p(h=A.a1V.prototype,"gTn","A",12) +m(h,"gauK",0,4,null,["$4"],["auL"],143,0,0) +m(h,"gayy",0,4,null,["$4"],["ayz"],143,0,0) +m(h,"gayJ",0,4,null,["$4"],["ayK"],143,0,0) +m(h,"gavM",0,3,null,["$3"],["avN"],656,0,0) +m(h,"gapU",0,3,null,["$3"],["apV"],281,0,0) +m(h=A.bY.prototype,"gaxg",0,1,null,["$2$seamless","$1"],["Ru","axh"],146,0,0) +m(h,"gtx",1,1,null,["$2$seamless","$1"],["B8","vj"],146,0,0) +m(h,"gFK",0,1,null,["$2$seamless","$1"],["VY","j9"],146,0,0) +q(h,"gawe","awf",660) +r(A,"bSB","bOE",53) +o(h=A.aV.prototype,"gio","c_",11) +q(h,"gavW","Re",0) +n(A.e2.prototype,"gh3","hX","1()") +n(A.zO.prototype,"gh3","hX","1()") +n(A.Gt.prototype,"gh3","hX","1()") +q(A.ajE.prototype,"gaBZ","aC_",0) +n(A.GG.prototype,"gh3","hX","2()") +o(A.F8.prototype,"gio","c_",11) +j(A.Un.prototype,"gawI","awJ",13) +s(A,"bVE","bgA",1000) +o(A.Ew.prototype,"gjx","G",11) +p(h=A.GP.prototype,"gFK","j9",11) +i(h,"gtx","nq",13) +q(h,"gW_","W0",0) +p(h=A.GO.prototype,"gFK","j9",11) +i(h,"gtx","nq",13) +q(h,"gW_","W0",0) +q(A.Sn.prototype,"ga3S","S3",0) +q(A.T8.prototype,"ga5V","aDf",0) +q(A.il.prototype,"gad3","BD",92) +r(A,"bSA","bGi",110) +r(A,"bwC","bGh",110) +r(A,"bSy","bGf",110) +r(A,"bSz","bGg",110) +q(A.KL.prototype,"gad3","BD",92) +r(A,"bW6","bL9",317) +r(A,"bW5","bL8",317) +r(A,"bQy","bQv",1003) +q(h=A.vO.prototype,"gaF8","Ko",698) +m(h,"ga7w",0,0,null,["$1$cancelToken","$0"],["Ea","aF9"],699,0,0) +r(A,"bSh","bS9",1004) +r(A,"bVC","bVt",1005) +k(A,"bSn",1,null,["$1$1","$1"],["bto",function(a){return A.bto(a,t.z)}],61,1) +k(A,"vD",1,null,["$1$1","$1"],["btp",function(a){return A.btp(a,t.z)}],61,1) +k(A,"bVB",1,null,["$1$1","$1"],["btq",function(a){return A.btq(a,t.z)}],61,1) +k(A,"W5",1,null,["$1$1","$1"],["btr",function(a){return A.btr(a,t.z)}],61,1) +r(A,"bSc","bf1",1007) +r(A,"bSe","bS6",167) +r(A,"bSd","bS5",1009) +l(A,"bSa","bFP",1010) +r(A,"bSf","bS7",167) +r(A,"bSg","bS8",167) +l(A,"bSb","bFQ",1011) +r(A,"bVx","bgp",1012) +r(A,"bVy","bVq",1013) +l(A,"bVu","bKe",1014) +r(A,"bVz","bVr",1015) +l(A,"bVv","bKf",1016) +l(A,"bVw","bKg",1017) +l(A,"bVA","bKd",1018) +r(A,"bR0","bQZ",1019) +k(A,"bR_",1,null,["$1$1","$1"],["bts",function(a){return A.bts(a,t.z)}],61,1) +l(A,"bS0","bDw",1020) +l(A,"bTv","bHh",1021) +l(A,"bTr","bHd",1022) +l(A,"bTs","bHe",1023) +l(A,"bTq","bHc",1024) +l(A,"bTu","bHg",1025) +l(A,"bTt","bHf",1026) +l(A,"bTp","bHb",1027) +r(A,"bRY","bRT",1028) +l(A,"bRV","bFf",1029) +r(A,"bRX","bRS",1030) +r(A,"bRW","bRQ",1031) +r(A,"bRZ","bRU",1032) +r(A,"bS_","bVl",1033) +q(h=A.pS.prototype,"gO5","u1",2) +q(h,"gagg","agh",2) +q(h,"gaFm","aFn",2) +r(A,"bTF","bTC",1034) +r(A,"bWc","bW9",1035) +r(A,"bWb","bgG",1036) +l(A,"bWa","bLl",1037) +k(A,"bR1",1,null,["$1$1","$1"],["btt",function(a){return A.btt(a,t.z)}],61,1) +k(A,"bTN",1,null,["$1$1","$1"],["btu",function(a){return A.btu(a,t.z)}],61,1) +l(A,"bTM","bHz",1038) +l(A,"bTL","bHy",1039) +l(A,"bTJ","bHw",1040) +l(A,"bTK","bHx",1041) +l(A,"bTI","bHv",1042) +l(A,"bUu","bIY",1043) +r(A,"bQP","bQO",1044) +l(A,"bSV","bGs",1045) +l(A,"bVn","bK3",1046) +l(A,"bUx","bJ8",1047) +l(A,"bUy","bGS",1048) +l(A,"bUz","bJ9",1049) +l(A,"bUA","bJa",1050) +l(A,"bUB","bJb",1051) +l(A,"bUC","bJc",1052) +l(A,"bUD","bJd",1053) +l(A,"bUE","bKu",1054) +l(A,"bUF","bLz",1055) +l(A,"bUG","bLA",1056) +l(A,"bRx","bE_",1057) +l(A,"bVg","bJT",1058) +l(A,"bVf","bJS",1059) +l(A,"bVh","bJU",1060) +l(A,"bVW","bKY",1061) +r(A,"bSR","bRP",1062) +l(A,"bSO","bD4",1063) +l(A,"bSP","bHa",1064) +r(A,"bSU","bVj",1065) +r(A,"bSQ","bQB",1066) +r(A,"bSS","bSY",1067) +r(A,"bST","bUv",1068) +p(h=A.tX.prototype,"gaOs","aOt",935) +p(h,"gaIk","aIl",936) +r(A,"bV8","bUJ",1069) +r(A,"bUZ","bxY",1070) +r(A,"bV3","by3",1071) +r(A,"bUU","bxQ",1072) +r(A,"bUV","bxR",1073) +r(A,"bV7","by7",1074) +r(A,"bUO","bxG",1075) +r(A,"bUQ","bxK",1076) +r(A,"bUY","bxV",1077) +r(A,"bUX","bxU",1078) +r(A,"bV6","by6",1079) +r(A,"bUT","bxP",1080) +r(A,"bV5","by5",1081) +r(A,"bV4","by4",1082) +r(A,"bUL","bxD",1083) +r(A,"bV_","bxZ",1084) +r(A,"bV2","by1",1085) +r(A,"bUW","bxT",1086) +r(A,"bUR","bxN",1087) +r(A,"bV1","by0",1088) +r(A,"bV0","by_",1089) +r(A,"bUM","bxE",1090) +r(A,"bUS","bxO",1091) +r(A,"bUP","bxJ",1092) +r(A,"bUN","bxF",1093) +r(A,"blT","bLW",10) +o(A.b_.prototype,"gio","c_",11) +r(A,"bTV","bQ0",99) +r(A,"bTX","bU6",99) +r(A,"bTW","bTU",1094) +l(A,"bTG","bFe",1095) +l(A,"bTH","bLk",1096) +m(A.Ri.prototype,"gdU",1,0,function(){return[null,null]},["$2","$0","$1"],["TB","ad","TA"],952,0,0) +r(A,"bTw","bHl",1097) +l(A,"c1u","bm0",151) +k(A,"bRe",2,null,["$2$3$debugLabel","$2","$2$2"],["VT",function(a,b){return A.VT(a,b,null,t.z,t.z)},function(a,b,c,d){return A.VT(a,b,null,c,d)}],1098,0) +k(A,"blQ",1,null,["$2$wrapWidth","$1"],["bwo",function(a){return A.bwo(a,null)}],1099,0) +l(A,"bUr","bv3",0) +s(A,"rI","boo",113) +s(A,"vE","bDB",113) +s(A,"bRG","bRC",200) +s(A,"bRH","bRD",107) +r(A,"bVc","bVa",53) +r(A,"bTn","bwH",257) +r(A,"bTo","bSJ",257) +r(A,"bQw","beq",1101) +r(A,"bQx","bU0",734)})();(function inheritance(){var s=hunkHelpers.mixin,r=hunkHelpers.mixinHard,q=hunkHelpers.inheritMany,p=hunkHelpers.inherit +q(null,[A.B,A.J4]) +q(A.B,[A.Hu,A.arv,A.te,A.b3b,A.al0,A.aww,A.kU,A.auC,A.a2U,A.Yd,A.a1O,A.ud,A.mY,A.z,A.a0v,A.p3,A.a8H,A.yo,A.uX,A.wX,A.aTp,A.a1U,A.AP,A.Yf,A.Yb,A.XN,A.j0,A.aM2,A.aLi,A.a2x,A.aGH,A.aGI,A.aCF,A.awn,A.avS,A.Yh,A.aK4,A.iD,A.YH,A.AQ,A.Iy,A.Yl,A.ta,A.aN6,A.XT,A.a8y,A.Oi,A.oU,A.Ym,A.a9H,A.Yk,A.IA,A.Iz,A.Yj,A.Yg,A.avT,A.d0,A.Yt,A.aw5,A.aw6,A.aAP,A.aAQ,A.aAi,A.aBY,A.a1R,A.aFe,A.a1Q,A.Kj,A.a0e,A.Jk,A.afk,A.afp,A.a0d,A.a15,A.aAh,A.a7Y,A.yA,A.al_,A.aQz,A.aCe,A.a0S,A.BM,A.wY,A.K0,A.HR,A.kh,A.YI,A.Fy,A.fo,A.ea,A.aWC,A.Qx,A.aWK,A.aWJ,A.Ex,A.a9I,A.kd,A.aMM,A.awp,A.aef,A.awS,A.uP,A.aLp,A.D7,A.uh,A.qI,A.aTo,A.aLr,A.uf,A.aOy,A.f6,A.b7J,A.aPB,A.bcF,A.aEW,A.Ey,A.aWD,A.aKE,A.aSJ,A.aAl,A.pW,A.a0B,A.a8r,A.ND,A.yP,A.vn,A.aM3,A.Kh,A.NL,A.a1N,A.Hx,A.qg,A.a2a,A.ol,A.a2n,A.oh,A.aGt,A.aJo,A.atL,A.al,A.pN,A.aK3,A.a0D,A.a0C,A.a1E,A.aLE,A.aaV,A.a6n,A.aLH,A.aLJ,A.aQx,A.a6s,A.aLU,A.RJ,A.b0B,A.anV,A.pl,A.zy,A.Gs,A.aLM,A.bjw,A.aN9,A.a1p,A.a1o,A.aKP,A.ara,A.a6v,A.qM,A.Wv,A.BA,A.aAc,A.a8k,A.a8i,A.yL,A.aAy,A.aS3,A.aS_,A.af6,A.ac,A.lP,A.aGb,A.aGd,A.aVR,A.aVV,A.b_0,A.a6N,A.aWH,A.XU,A.xY,A.aLn,A.Ev,A.auE,A.aES,A.aXp,A.aXo,A.b4g,A.b4h,A.b4f,A.uS,A.aH8,A.a9s,A.a7U,A.aXO,A.od,A.oE,A.JC,A.JE,A.JD,A.OD,A.aX9,A.aa3,A.eB,A.r3,A.atH,A.Yy,A.aAm,A.aAn,A.Oy,A.aAd,A.Xf,A.EI,A.Bw,A.aFV,A.aXs,A.aXa,A.aFh,A.azU,A.azi,A.a2R,A.ds,A.aBe,A.axs,A.afO,A.b23,A.wR,A.aaW,A.biX,A.Ki,A.b4D,J.Cb,J.e6,A.bA,A.AG,A.b1n,A.XX,A.bg,A.aSh,A.bZ,A.c2,A.jc,A.a0M,A.a9S,A.a8I,A.a8J,A.a0w,A.a1b,A.p4,A.JQ,A.aaB,A.qV,A.rn,A.xH,A.B0,A.vd,A.m4,A.KA,A.aYW,A.a5y,A.JH,A.Ty,A.b9x,A.aHa,A.Cv,A.mR,A.Gd,A.r8,A.Et,A.baZ,A.b1v,A.b5a,A.m0,A.agm,A.U5,A.bb0,A.KV,A.U_,A.PA,A.adm,A.RB,A.po,A.X7,A.hl,A.mi,A.zA,A.mm,A.a8,A.adl,A.a9B,A.vt,A.amn,A.PB,A.zV,A.ad1,A.af9,A.b2I,A.pj,A.FG,A.v5,A.nK,A.QS,A.G_,A.bcN,A.G0,A.mo,A.b63,A.mp,A.G9,A.j1,A.ahZ,A.H2,A.Qz,A.afr,A.ahD,A.am6,A.am5,A.pm,A.oT,A.mH,A.cr,A.Ig,A.PM,A.Y9,A.alD,A.b5R,A.b5N,A.b1X,A.bb_,A.anN,A.Ul,A.iF,A.dl,A.bk,A.a5J,A.O7,A.FP,A.l3,A.a27,A.a2d,A.aU,A.aE,A.pn,A.Ep,A.aQs,A.cV,A.Ug,A.aaH,A.mq,A.BD,A.uD,A.aYb,A.awR,A.biw,A.FO,A.G2,A.bD,A.LN,A.Tn,A.amh,A.BI,A.aeW,A.b9S,A.anO,A.bb2,A.b_N,A.qr,A.wN,A.iV,A.kg,A.zP,A.JL,A.qj,A.a5x,A.b5H,A.b8q,A.b5I,A.a0z,A.b1x,A.TB,A.rb,A.avB,A.a5C,A.I,A.bq,A.lY,A.ko,A.M,A.xI,A.biQ,A.uE,A.tM,A.tC,A.d6,A.E0,A.oG,A.Mj,A.eU,A.ex,A.aSf,A.lH,A.tB,A.Oz,A.OC,A.hf,A.bR,A.d8,A.qx,A.auu,A.a1m,A.arL,A.au0,A.aEd,A.aLK,A.Bd,A.afc,A.jD,A.agO,A.b6T,A.a1X,A.Es,A.mF,A.Ar,A.awf,A.cN,A.a_T,A.xh,A.xw,A.H3,A.Gc,A.xG,A.a_R,A.a1D,A.ww,A.axr,A.aEc,A.yv,A.atM,A.hP,A.afe,A.hv,A.axA,A.fn,A.b0D,A.km,A.ah2,A.K3,A.Kf,A.ua,A.a5H,A.b9w,A.aKT,A.fB,A.aYO,A.t5,A.aue,A.pH,A.w6,A.XR,A.aui,A.r_,A.awg,A.Lq,A.afZ,A.aIT,A.aBx,A.hB,A.q3,A.aBy,A.ay9,A.ahB,A.aLF,A.tx,A.aGj,A.aMK,A.lf,A.au,A.aT4,A.rW,A.M5,A.HH,A.HG,A.vR,A.rV,A.aA,A.hi,A.ah4,A.am7,A.im,A.aY2,A.agM,A.fy,A.a_S,A.Re,A.b72,A.b71,A.b6V,A.IY,A.dc,A.jM,A.Qg,A.af2,A.XI,A.akq,A.aeQ,A.TW,A.LL,A.aeT,A.aeR,A.a_E,A.ET,A.fO,A.agb,A.XB,A.b7g,A.aI,A.o7,A.iq,A.bkM,A.lM,A.D8,A.bcj,A.b_1,A.ME,A.ni,A.ct,A.eS,A.BS,A.FY,A.aDj,A.b9y,A.BT,A.pT,A.ob,A.oc,A.jx,A.ajd,A.fW,A.acX,A.aek,A.aeu,A.aep,A.aen,A.aeo,A.aem,A.aeq,A.aey,A.aew,A.aex,A.aev,A.aes,A.aet,A.aer,A.ael,A.wZ,A.a02,A.l4,A.H1,A.qc,A.CB,A.KY,A.CA,A.rx,A.bkz,A.aLV,A.a2A,A.aeA,A.GX,A.aLQ,A.aLT,A.j6,A.zN,A.Nc,A.Nd,A.DR,A.ahy,A.ED,A.uQ,A.aed,A.aDm,A.kG,A.zo,A.Sk,A.k_,A.ad_,A.a82,A.aT7,A.adi,A.rd,A.adv,A.ai_,A.adD,A.adE,A.adG,A.adK,A.adM,A.aho,A.aik,A.adN,A.adP,A.ae2,A.bN,A.ae6,A.b1Q,A.ae8,A.aec,A.aeX,A.aeZ,A.afd,A.afi,A.afx,A.lt,A.b6C,A.afA,A.afL,A.rg,A.aAR,A.afR,A.ag1,A.b2y,A.ag9,A.aBW,A.a0R,A.aBb,A.aBc,A.aBV,A.agL,A.ok,A.Ca,A.dp,A.a12,A.af0,A.b9_,A.Kv,A.agW,A.ahF,A.a_U,A.adC,A.amY,A.RF,A.bc,A.bE,A.Ll,A.aic,A.ai9,A.aib,A.ahq,A.aJF,A.ait,A.aiw,A.CS,A.aix,A.aiQ,A.Lk,A.qv,A.aiX,A.H6,A.ajA,A.ajD,A.ajM,A.aQB,A.a7Z,A.aws,A.ad0,A.DP,A.al7,A.al8,A.ahp,A.al9,A.ala,A.OI,A.ah0,A.alI,A.aTv,A.aTy,A.aTz,A.asX,A.b8L,A.b2T,A.alR,A.amj,A.apr,A.amm,A.aps,A.ams,A.amH,A.amP,A.amZ,A.an2,A.G3,A.afW,A.anS,A.an6,A.an9,A.zd,A.anb,A.anA,A.vQ,A.a9Y,A.M3,A.I4,A.a1_,A.avX,A.tF,A.a_O,A.eI,A.b1Y,A.aE0,A.aFq,A.adO,A.aiZ,A.xa,A.nX,A.l5,A.kj,A.agN,A.agP,A.aFI,A.Wx,A.qh,A.amf,A.D9,A.kD,A.bbQ,A.bbU,A.zI,A.zE,A.aa7,A.aVO,A.b24,A.b7s,A.bcn,A.OV,A.DG,A.dQ,A.RA,A.dR,A.axb,A.z7,A.aZQ,A.b5Y,A.HL,A.WJ,A.ahh,A.a2w,A.Co,A.ail,A.aoJ,A.Mi,A.b1,A.fa,A.aq,A.ut,A.baq,A.alj,A.ne,A.a7g,A.apb,A.iw,A.MJ,A.hF,A.a8e,A.aRM,A.uB,A.yJ,A.alM,A.a7x,A.aTD,A.aTE,A.aTB,A.mS,A.aPw,A.lj,A.aaU,A.oN,A.T_,A.FW,A.aLt,A.i6,A.za,A.zb,A.OO,A.a8f,A.aS2,A.AL,A.Y6,A.B9,A.dI,A.alh,A.alk,A.r9,A.nJ,A.ru,A.nd,A.all,A.aS0,A.X3,A.Fs,A.rX,A.HU,A.atn,A.E5,A.atK,A.tc,A.aha,A.aEa,A.KH,A.a2m,A.aGE,A.ahc,A.ov,A.y0,A.Ls,A.aWz,A.aGc,A.aGe,A.aVS,A.aVW,A.aJp,A.Lv,A.t_,A.lQ,A.aAL,A.ajO,A.ajP,A.aNd,A.eV,A.fp,A.uO,A.O3,A.axh,A.arI,A.oX,A.amL,A.qY,A.aio,A.bbF,A.EM,A.aXt,A.aN7,A.eN,A.aY3,A.aXr,A.yK,A.aXu,A.aa4,A.OE,A.aoQ,A.aay,A.aZ1,A.acZ,A.Gp,A.v6,A.a5w,A.vW,A.hj,A.P6,A.ht,A.YE,A.a0b,A.EU,A.kH,A.b9W,A.agt,A.adr,A.aC4,A.agg,A.agd,A.agy,A.FT,A.agk,A.FF,A.aff,A.axT,A.aoX,A.aoW,A.agQ,A.au2,A.LO,A.b7h,A.aPR,A.tN,A.x0,A.aS1,A.b4O,A.rj,A.oy,A.aM,A.XV,A.lk,A.Gr,A.a_Z,A.os,A.aa6,A.xz,A.Lm,A.qN,A.aaq,A.vi,A.akM,A.qt,A.zS,A.aKV,A.TA,A.oD,A.ag7,A.yE,A.aJ1,A.aLG,A.lZ,A.lm,A.mj,A.a7P,A.KU,A.a2O,A.a81,A.aRf,A.bcM,A.uJ,A.m1,A.k0,A.aaX,A.a8b,A.a87,A.az2,A.alE,A.ao4,A.aly,A.alB,A.iz,A.m7,A.Qw,A.O2,A.amx,A.amA,A.amz,A.amB,A.amy,A.TO,A.aa8,A.a8d,A.nk,A.OL,A.fC,A.dG,A.Qd,A.F1,A.anD,A.auc,A.aFr,A.auh,A.awo,A.aub,A.l1,A.a5u,A.lE,A.aIO,A.aBw,A.a1S,A.a6D,A.aZS,A.fK,A.agC,A.agB,A.a1J,A.xT,A.a1q,A.a1r,A.a1t,A.a14,A.aB6,A.an7,A.a16,A.aCO,A.a7O,A.aiW,A.aQ9,A.n9,A.fU,A.eq,A.BU,A.akV,A.aST,A.aQf,A.aQp,A.BV,A.bl,A.ato,A.atq,A.Ia,A.Xm,A.Ob,A.lI,A.w1,A.avz,A.a2o,A.aYY,A.a1G,A.Rf,A.N3,A.b7i,A.a0_,A.a22,A.vj,A.ah6,A.Xr,A.Xs,A.asW,A.ID,A.Ln,A.a5Q,A.j7,A.Ba,A.uc,A.h4,A.v9,A.aKH,A.a5z,A.aKI,A.aWA,A.F3,A.a2P,A.xo,A.Cy,A.Cz,A.a1V,A.xV,A.LX,A.YC,A.aWB,A.a6a,A.a6b,A.lq,A.Ss,A.Dp,A.a6C,A.h2,A.aMH,A.aV,A.bY,A.C,A.WB,A.WA,A.Am,A.da,A.a2k,A.rs,A.Dn,A.Do,A.e7,A.bp,A.kv,A.e2,A.zO,A.eo,A.Sq,A.ajE,A.Vq,A.GG,A.dT,A.Un,A.c5,A.e9,A.fq,A.ao0,A.K5,A.b39,A.a0G,A.RX,A.kn,A.Cd,A.xg,A.ahC,A.uH,A.aM1,A.aDG,A.aU_,A.a98,A.El,A.aEp,A.jf,A.nD,A.nh,A.a9q,A.il,A.dW,A.KL,A.xn,A.dS,A.nm,A.aaO,A.a9A,A.Ra,A.a9z,A.Og,A.aH7,A.ox,A.vO,A.acW,A.b_u,A.Pf,A.alo,A.b_I,A.zs,A.tv,A.Ej,A.afV,A.b_C,A.Fi,A.ag4,A.b_D,A.Fj,A.ns,A.alS,A.fF,A.nr,A.nu,A.nw,A.nq,A.nx,A.nv,A.nt,A.mf,A.b_J,A.pd,A.pe,A.ahf,A.b_E,A.ahV,A.b_H,A.Pp,A.am1,A.b_K,A.zt,A.alY,A.b_L,A.Fl,A.ny,A.i9,A.np,A.p8,A.pf,A.pb,A.pc,A.p9,A.O0,A.Mw,A.NZ,A.O1,A.HY,A.aUk,A.I_,A.aV4,A.t7,A.adT,A.b_w,A.Ff,A.lr,A.Im,A.Ip,A.auU,A.pS,A.Jp,A.u5,A.uZ,A.adZ,A.b_x,A.Pj,A.r6,A.adW,A.adX,A.b_y,A.Fg,A.p7,A.b_z,A.Pl,A.Fh,A.afv,A.b_A,A.Pm,A.afu,A.b_B,A.Pn,A.ahY,A.ahU,A.b_F,A.v2,A.b_G,A.Po,A.anL,A.b_M,A.L7,A.L3,A.JP,A.Ka,A.aIk,A.aHI,A.aHD,A.aHz,A.Is,A.pa,A.Pq,A.Pr,A.Pi,A.Ph,A.Pg,A.Mr,A.rY,A.adu,A.b_v,A.er,A.OT,A.b_,A.ey,A.En,A.tn,A.Bh,A.aZV,A.a20,A.a2v,A.aN0,A.aaN,A.aZJ,A.aZK,A.bS,A.a6B,A.d4,A.nn,A.P5]) +q(A.te,[A.Yw,A.arB,A.arx,A.Yx,A.avQ,A.bdb,A.bdu,A.bdt,A.aF1,A.aF2,A.aEZ,A.aF_,A.aF0,A.beS,A.beR,A.aTu,A.bgf,A.bdE,A.bdS,A.awb,A.awc,A.aw9,A.awa,A.aw8,A.ayi,A.ayk,A.bej,A.aC2,A.aC3,A.bgk,A.bgj,A.aCf,A.aCg,A.aCh,A.aCi,A.aCj,A.aCk,A.aCn,A.aCo,A.bfe,A.bff,A.bfg,A.bfd,A.aEY,A.aKF,A.aEQ,A.aER,A.aEO,A.aEP,A.bfC,A.aG8,A.aG7,A.bfo,A.bfp,A.bdV,A.bdW,A.bdX,A.bdY,A.bdZ,A.be_,A.be0,A.be1,A.aGo,A.aGp,A.aGq,A.aGs,A.aGz,A.aGD,A.aJH,A.aT9,A.aTa,A.aAv,A.aAr,A.aAs,A.aAt,A.aAu,A.aAq,A.aAo,A.aAx,A.aQy,A.b0C,A.b7N,A.b7P,A.b7Q,A.b7R,A.b7S,A.b7T,A.b7U,A.bcd,A.bce,A.bcf,A.bcg,A.bch,A.b6N,A.b6O,A.b6P,A.b6Q,A.b6R,A.b6S,A.aNa,A.aNb,A.aNf,A.ard,A.are,A.aFQ,A.aFR,A.aRv,A.aRw,A.aS8,A.aAA,A.axo,A.aJc,A.aX6,A.aXg,A.aXh,A.aXi,A.aXk,A.auF,A.aAg,A.aAe,A.aAf,A.axi,A.axj,A.axk,A.axl,A.aFn,A.aFo,A.aFl,A.arr,A.aBQ,A.aBR,A.aFi,A.azj,A.bfr,A.beB,A.ax0,A.ax3,A.aej,A.aCS,A.b4F,A.b4G,A.b1t,A.auI,A.a26,A.a9X,A.aGi,A.aGh,A.bfy,A.bfA,A.bb1,A.b0k,A.b0j,A.bd4,A.bd3,A.bbj,A.bbl,A.bbk,A.aDc,A.aD9,A.aDa,A.aCT,A.b4o,A.b4v,A.aWb,A.aWe,A.aWi,A.aWg,A.aWv,A.aWs,A.aWq,A.aWt,A.aWw,A.aWo,A.aWm,A.aWk,A.baX,A.b9D,A.b4C,A.b2t,A.b62,A.aIp,A.aVK,A.aVN,A.bdl,A.b5M,A.b0H,A.bcq,A.bcu,A.bdp,A.bdq,A.azW,A.b3e,A.b3f,A.aKD,A.aKC,A.baD,A.baE,A.bbA,A.bdj,A.aBK,A.aBL,A.aBM,A.bdf,A.aKO,A.b3w,A.b3A,A.b3y,A.b3E,A.b3D,A.b3K,A.b3M,A.b3J,A.b3G,A.b3F,A.b8r,A.b8u,A.b8t,A.b8v,A.b8s,A.bdm,A.bdn,A.ben,A.beo,A.bep,A.bfI,A.bga,A.bgb,A.beP,A.aGn,A.bez,A.aEg,A.aEe,A.aTm,A.aJK,A.aFx,A.aFy,A.aFz,A.auw,A.auy,A.auB,A.atP,A.atR,A.atS,A.atT,A.atU,A.atV,A.atW,A.axK,A.axM,A.axN,A.axP,A.axH,A.axI,A.axB,A.axC,A.axF,A.axG,A.axQ,A.aCx,A.aCz,A.aCv,A.aCu,A.aCw,A.aEi,A.aWO,A.aWR,A.beX,A.beY,A.beE,A.au9,A.aF9,A.aFb,A.aFc,A.b3q,A.b3t,A.b3p,A.b6A,A.aIW,A.bgh,A.aAE,A.aAF,A.aAG,A.aAH,A.aAI,A.aAJ,A.aBs,A.aBt,A.aBu,A.aBv,A.aBq,A.aBr,A.aBl,A.aBm,A.aBn,A.aBk,A.aGk,A.aGl,A.aML,A.bfh,A.bfi,A.b26,A.b2d,A.b25,A.b2a,A.b2b,A.b2e,A.b8W,A.b8U,A.b8X,A.b8Y,A.ax_,A.aKy,A.b2p,A.aC_,A.aC0,A.aC1,A.beQ,A.aVP,A.aWS,A.b4w,A.aLO,A.aLP,A.aLW,A.aQX,A.aR0,A.asx,A.asy,A.asz,A.awh,A.awi,A.awj,A.ayY,A.ayZ,A.az_,A.aA8,A.aA9,A.aAa,A.arn,A.aro,A.arp,A.aIx,A.b2P,A.b2Q,A.b6D,A.aJg,A.b0L,A.b1j,A.b1k,A.b1l,A.b0X,A.b0Y,A.b0Z,A.b19,A.b1c,A.b1d,A.b1e,A.b1f,A.b1g,A.b1h,A.b1i,A.b1_,A.b10,A.b11,A.b1a,A.b0V,A.b1b,A.b0U,A.b12,A.b13,A.b14,A.b15,A.b16,A.b17,A.b18,A.b1L,A.b1M,A.b1B,A.b1z,A.b1A,A.b1G,A.b1E,A.b1D,A.b1F,A.b1T,A.axq,A.b30,A.b2Y,A.b2Z,A.b2W,A.b2U,A.b2V,A.b2X,A.b34,A.b36,A.b38,A.b35,A.b37,A.b3j,A.b3N,A.b3P,A.b3R,A.b3O,A.b3Q,A.b4Y,A.b4V,A.b4X,A.b4W,A.b3T,A.b3U,A.b3W,A.b3V,A.b3X,A.b3Y,A.b4_,A.b3Z,A.b7n,A.b7o,A.b7q,A.b7r,A.b7p,A.b5f,A.b5c,A.b91,A.b5o,A.b5q,A.b5m,A.b5n,A.b5k,A.b5l,A.b5p,A.b5r,A.b5s,A.b5z,A.b5w,A.b5u,A.b5B,A.b5C,A.b5D,A.b5A,A.b5x,A.b5y,A.b5v,A.aHe,A.b9a,A.aHd,A.aXN,A.b6t,A.b6c,A.b6d,A.b6e,A.b6f,A.aIB,A.aKg,A.aKh,A.b77,A.b76,A.b6Y,A.b6Z,A.b7a,A.b7j,A.b7l,A.b7m,A.b7k,A.bcQ,A.bcR,A.bcS,A.bcT,A.aL5,A.b8_,A.b7Z,A.aLZ,A.b7X,A.b8m,A.b8n,A.b8h,A.b8i,A.b8k,A.b8l,A.aOE,A.aQA,A.aQN,A.aQM,A.b6l,A.b6i,A.b6k,A.b6j,A.b6h,A.baN,A.b9j,A.b9h,A.b9g,A.baH,A.b6v,A.b6w,A.b6x,A.bbh,A.bb9,A.bba,A.bb7,A.bb8,A.bbd,A.bbe,A.bbf,A.bbc,A.bb5,A.bbw,A.bbs,A.bbp,A.bbq,A.bbz,A.bbB,A.bbD,A.bbC,A.bbO,A.bbP,A.be7,A.be8,A.aXm,A.aXn,A.b9l,A.b9m,A.b9o,A.b9p,A.b0b,A.aY7,A.b20,A.b21,A.avY,A.avZ,A.aw_,A.bed,A.bdU,A.aH9,A.b1o,A.aFF,A.aFA,A.arJ,A.aFJ,A.aFK,A.aFU,A.aFT,A.bax,A.bay,A.baz,A.aY1,A.aXX,A.aXW,A.aY4,A.aCQ,A.aPF,A.atx,A.aOR,A.aOQ,A.aOO,A.aP7,A.aP8,A.aP3,A.aP4,A.aP5,A.aP6,A.aP1,A.aP2,A.aJs,A.aJr,A.aPf,A.aPg,A.aPb,A.aPc,A.aPd,A.aOI,A.aPm,A.aPn,A.aPi,A.aPr,A.aPt,A.aPv,A.aPu,A.aPA,A.aPy,A.aPz,A.aPx,A.aPE,A.aPD,A.aR4,A.aR3,A.aYa,A.aS6,A.aS4,A.bav,A.bau,A.bas,A.bat,A.bdc,A.aSa,A.aS9,A.aRS,A.aRW,A.aRU,A.aRX,A.aRV,A.aRY,A.aRZ,A.aus,A.aLD,A.b0g,A.aSy,A.b2v,A.at7,A.aJ6,A.aAM,A.aPN,A.aPO,A.aPM,A.aBN,A.aXc,A.aXI,A.aXH,A.aXJ,A.b7L,A.bdT,A.ari,A.arl,A.arj,A.ark,A.arm,A.b4d,A.b4a,A.b48,A.b49,A.b4c,A.b08,A.b09,A.b0a,A.bcG,A.bcH,A.b0u,A.b0z,A.bcl,A.bck,A.aw2,A.bcK,A.bcJ,A.awv,A.axg,A.ayb,A.ayc,A.azL,A.azQ,A.azM,A.azO,A.azl,A.azt,A.azN,A.azx,A.azs,A.azT,A.azk,A.azA,A.b9X,A.aC6,A.bdP,A.aCb,A.aCa,A.b8I,A.axV,A.axW,A.axY,A.axZ,A.axU,A.ay5,A.ay6,A.ay7,A.ay8,A.b8F,A.b8G,A.b8D,A.aOx,A.aCC,A.b56,A.aA1,A.aA_,A.azZ,A.aA2,A.aA4,A.azX,A.aA0,A.azY,A.aLo,A.aJG,A.aDr,A.aDy,A.aDA,A.aDC,A.aDE,A.aDt,A.aDv,A.aDx,A.b2A,A.b2B,A.b2C,A.b2F,A.b2G,A.b2H,A.aEo,A.aEm,A.aEl,A.aFp,A.b53,A.aFO,A.aFN,A.aFM,A.b_W,A.b00,A.b01,A.b02,A.b03,A.b04,A.b05,A.b_V,A.b_U,A.b_X,A.b_Y,A.b_Z,A.b0_,A.aFS,A.be4,A.be5,A.be6,A.b69,A.b6a,A.aHp,A.aHr,A.aHo,A.aXM,A.aHs,A.aIJ,A.aQo,A.aQn,A.aKt,A.b9F,A.b9I,A.aKs,A.aKn,A.aKU,A.b9u,A.b9s,A.b9t,A.b9r,A.b94,A.b95,A.aL4,A.b7y,A.b9A,A.b9N,A.b9L,A.asw,A.aYU,A.aYR,A.aHf,A.b6L,A.b6I,A.aRb,A.aRc,A.aRd,A.aRe,A.aRh,A.aRi,A.aRj,A.aRl,A.aRt,A.aRq,A.aRs,A.bag,A.aRx,A.aNk,A.aNg,A.aNh,A.aNi,A.aNm,A.aNo,A.aNp,A.aJY,A.aJZ,A.aK_,A.aK0,A.aK1,A.aTJ,A.aRP,A.aRR,A.aRQ,A.aRO,A.aRN,A.bao,A.bbW,A.bbY,A.bc_,A.bc1,A.bc3,A.aZ0,A.beh,A.aZR,A.aZW,A.aBX,A.aud,A.auk,A.aul,A.aZT,A.aZU,A.bcY,A.b4y,A.aOH,A.aB9,A.aQ8,A.aPZ,A.aQ7,A.aPX,A.aQc,A.aQd,A.aQe,A.aQb,A.aQa,A.aDY,A.aDZ,A.bgl,A.aQh,A.aQj,A.aQk,A.aQl,A.aQi,A.b9J,A.aDV,A.aDW,A.bdw,A.aDR,A.aSV,A.aSU,A.aSW,A.asC,A.asD,A.aVZ,A.aW_,A.aW0,A.aW1,A.aW2,A.aW3,A.bcV,A.bfv,A.asV,A.atI,A.atJ,A.au7,A.auH,A.aIM,A.bf0,A.aLh,A.aLg,A.b7B,A.b7C,A.b7I,A.b7G,A.b7A,A.aLa,A.aLc,A.aLb,A.aLd,A.aLf,A.aLe,A.aG9,A.kW,A.aKL,A.aKK,A.awx,A.awy,A.bek,A.aZZ,A.aZP,A.bd1,A.bd0,A.aD3,A.aD2,A.aD0,A.aCZ,A.aCV,A.b0h,A.b0i,A.arY,A.bdA,A.bdy,A.bdz,A.aW9,A.arQ,A.arR,A.arS,A.arT,A.arU,A.arV,A.asf,A.asg,A.ash,A.asi,A.asj,A.ask,A.asl,A.baS,A.baT,A.aMf,A.aMh,A.aMj,A.aMk,A.aMi,A.aMl,A.aMA,A.aMy,A.aMz,A.aMw,A.aMx,A.aMp,A.aMq,A.aMr,A.aMs,A.aMt,A.aMu,A.aMv,A.aMn,A.aMo,A.b88,A.b89,A.b86,A.b87,A.b8c,A.b8a,A.b8b,A.b4i,A.b4j,A.bdO,A.aMJ,A.bcC,A.bcB,A.bcE,A.bea,A.bgB,A.bdG,A.bdH,A.bdN,A.b81,A.ba9,A.ba7,A.ba8,A.b9Z,A.ba1,A.ba0,A.ba5,A.aSO,A.baB,A.aEr,A.aEq,A.aEs,A.aEu,A.aEw,A.aEt,A.aEK,A.avr,A.avs,A.avt,A.avy,A.avx,A.avv,A.avw,A.avu,A.aYJ,A.aYG,A.aYF,A.aYD,A.aYE,A.aYL,A.aYK,A.aZN,A.aZM,A.b4A,A.bfK,A.aK6,A.aK5,A.aK7,A.aK8,A.aK9,A.aKa,A.aKb,A.aqY,A.aqV,A.aqX,A.ar7,A.ar5,A.ar3,A.ar8,A.bet,A.aB_,A.aVx,A.aVu,A.aVv,A.aVt,A.aVy,A.aVw,A.bcU,A.b_e,A.b_d,A.b_b,A.b_c,A.b_h,A.b_i,A.aVn,A.aVo,A.b_j,A.b_k,A.atz,A.atD,A.atF,A.bf6,A.bf8,A.bfa,A.bfc,A.bf5,A.bf4,A.bf2,A.aB3,A.aAT,A.aG_,A.aFX,A.bgd,A.aVs,A.aMV,A.aDN,A.aDO,A.aVH,A.bgr,A.bgt,A.aU0,A.aU1,A.aU2,A.bgq,A.bgv,A.bgu,A.bgw,A.aVr,A.aVD,A.aU3,A.aUl,A.aVp,A.asY,A.aUC,A.aUz,A.aUT,A.aUO,A.aUQ,A.aUH,A.aUI,A.aUJ,A.aUE,A.aUD,A.aUK,A.aUM,A.aUS,A.aBB,A.aBC,A.aBD,A.aBE,A.aBG,A.aBH,A.aBI,A.aUb,A.aU9,A.aUa,A.aUd,A.aUg,A.aUm,A.aUv,A.aUx,A.aUu,A.aUy,A.aUw,A.aV_,A.aV1,A.aUZ,A.aV2,A.aV0,A.at_,A.aV7,A.aV5,A.aVi,A.aVj,A.aVf,A.aVc,A.aVb,A.aVe,A.aV9,A.aVa,A.aVd,A.aV8,A.avg,A.avh,A.beF,A.auR,A.azb,A.auP,A.auO,A.avl,A.avj,A.avk,A.az4,A.az5,A.avd,A.av1,A.av0,A.av_,A.auV,A.auX,A.auY,A.auZ,A.auS,A.aH3,A.aGV,A.aGW,A.aGZ,A.aGR,A.aH_,A.aH1,A.aH5,A.aGO,A.aGN,A.aGP,A.ayM,A.ayL,A.beU,A.beW,A.beV,A.bgm,A.ayK,A.aHx,A.aHv,A.aHu,A.aHw,A.aZc,A.aZf,A.aZe,A.aZd,A.b_7,A.b_8,A.b_9,A.b_a,A.aIm,A.aIn,A.b_g,A.b_m,A.b_n,A.b_o,A.b_p,A.b_q,A.b_r,A.b_s,A.b_t,A.ayP,A.ayv,A.bfV,A.bfS,A.bfU,A.bfk,A.bfl,A.bfu,A.aHB,A.aIh,A.aHJ,A.aBS,A.aDI,A.aIa,A.aIb,A.aIc,A.aIe,A.aI7,A.aI_,A.aI8,A.aHY,A.aIf,A.aJT,A.aJP,A.aJN,A.aJO,A.atg,A.ata,A.azh,A.azg,A.azf,A.aHF,A.aHG,A.aHL,A.aHS,A.aHW,A.aHX,A.aTS,A.aTM,A.aTU,A.avM,A.aNI,A.aNH,A.aNK,A.aNC,A.aL3,A.awC,A.awK,A.awz,A.awA,A.aTh,A.aTb,A.aO5,A.aNY,A.aNZ,A.aO4,A.aNW,A.aNX,A.aO2,A.aOq,A.aOr,A.aOt,A.aOc,A.aOd,A.aOe,A.aOf,A.aOg,A.aOh,A.aOl,A.aOm,A.aOk,A.aNQ,A.aNO,A.aNP,A.aNN,A.aNR,A.aZj,A.aZg,A.aZp,A.aZo,A.aZv,A.aZu,A.aZx,A.aZw,A.aZm,A.aJE,A.aJy,A.aJz,A.aJA,A.aJB,A.aJC,A.aJD,A.ayx,A.ayz,A.aZ8,A.aZa,A.aZ3,A.bg4,A.bg5,A.bg1,A.bg2,A.bg3,A.bg6,A.bg7,A.bg8,A.bg9,A.aMd,A.aMO,A.aRG,A.aRI,A.aRB,A.aRD,A.aRE,A.aMY,A.aMZ,A.asL,A.asI,A.asJ,A.asK,A.b_3,A.b_4,A.b_5,A.aE2,A.aE3,A.asQ,A.asO,A.asM,A.asF,A.asG,A.asH,A.aDf,A.aDe,A.aNq,A.as1,A.as0,A.aNt,A.aNr,A.aNs,A.aNx,A.aNv,A.aNw,A.aNA,A.as4,A.as3,A.aSr,A.ass,A.asq,A.asr,A.awO,A.awP,A.aSp,A.aSo,A.aSm,A.aSv,A.aSt,A.aTx,A.arE,A.arC,A.arD,A.aNB,A.aqp,A.aqr,A.aqn,A.aqo,A.aqq,A.bdD,A.aTY,A.asc,A.as8,A.aYc,A.aSK,A.axt,A.arO,A.aHO,A.aHP,A.aJX,A.aJU,A.b1K,A.b1J,A.b1I,A.aN3,A.aN2,A.aSl,A.aSj,A.aSi,A.atl,A.atm,A.aSZ,A.aTX,A.aTW,A.aXe,A.aJ5,A.aF5,A.aF6,A.aF7,A.aF8]) +q(A.Yw,[A.arA,A.arz,A.ary,A.aTq,A.aTr,A.aTs,A.aTt,A.aCM,A.aCN,A.auD,A.avU,A.aCm,A.aCl,A.aBd,A.aLv,A.aEX,A.aWF,A.aWG,A.aE1,A.atZ,A.au_,A.bfE,A.bfF,A.bd7,A.aGA,A.aGB,A.aGC,A.aGv,A.aGw,A.aGx,A.aAw,A.bfH,A.aLI,A.b7O,A.aLN,A.aNc,A.aNe,A.arb,A.aQm,A.arc,A.aRu,A.aAz,A.aAC,A.aAB,A.aJd,A.aXj,A.aXl,A.aET,A.aEU,A.aEV,A.aQw,A.aFm,A.aBP,A.aXb,A.aAj,A.aAk,A.b4E,A.b4L,A.b4K,A.b4H,A.b4I,A.b4J,A.b1s,A.auK,A.bfY,A.aM9,A.b0l,A.b0m,A.bc8,A.bc7,A.bd2,A.b0o,A.b0p,A.b0r,A.b0s,A.b0q,A.b0n,A.aD7,A.aD6,A.aD5,A.aDb,A.b4k,A.b4r,A.b4q,A.b4n,A.b4m,A.b4l,A.b4u,A.b4t,A.b4s,A.aWf,A.aWd,A.aWh,A.aWr,A.aWp,A.aWu,A.aWx,A.aWn,A.aWl,A.aWj,A.baW,A.baV,A.b_S,A.b0T,A.b0S,A.b7K,A.b6U,A.bd9,A.bda,A.bec,A.b9C,A.aZI,A.aZH,A.b3C,A.b3v,A.b3L,A.b3I,A.avC,A.avD,A.aGm,A.beA,A.au1,A.aEf,A.aTl,A.aup,A.aum,A.aun,A.auq,A.auo,A.aFw,A.auA,A.atQ,A.atY,A.axL,A.axO,A.axJ,A.axD,A.aCy,A.aK2,A.aWP,A.bgJ,A.aFd,A.aFa,A.aIQ,A.aIR,A.aIS,A.aJ_,A.aJ0,A.b3o,A.b3r,A.b6B,A.aIU,A.aIX,A.aIY,A.aIV,A.b27,A.b28,A.b2k,A.b2j,A.b2i,A.b73,A.awW,A.awX,A.awY,A.b2f,A.b2g,A.b2h,A.b2o,A.b8V,A.b2m,A.b2n,A.b2l,A.aYk,A.aYm,A.aYh,A.bef,A.bd6,A.aBZ,A.atr,A.avA,A.aDl,A.aDk,A.aDo,A.aDp,A.aCr,A.aCp,A.aCq,A.aHl,A.aHk,A.aHj,A.ayQ,A.ayV,A.ayW,A.ayR,A.ayS,A.ayT,A.ayU,A.aLS,A.aM5,A.aQZ,A.aR_,A.aQV,A.aQW,A.aX0,A.aX1,A.aX2,A.aX3,A.aX4,A.aDn,A.b_P,A.aru,A.b0e,A.aIw,A.b0O,A.b0M,A.b0N,A.b6F,A.b0K,A.b1m,A.b0W,A.b8x,A.b8w,A.b8y,A.b8A,A.b8B,A.b8C,A.az0,A.b3_,A.b3k,A.b3i,A.bdR,A.bdQ,A.b5e,A.b5g,A.b5b,A.b5d,A.b4N,A.b5E,A.bbS,A.bbR,A.bbT,A.aIz,A.aIA,A.aKc,A.b58,A.b2q,A.b2r,A.b2s,A.b7d,A.b7b,A.b7c,A.b57,A.aN1,A.aOB,A.aOz,A.aOA,A.aOC,A.aOD,A.b40,A.aQK,A.aQS,A.aQQ,A.aQO,A.aQR,A.aQJ,A.aQG,A.aQH,A.aQI,A.aQD,A.aQE,A.aQC,A.aQF,A.aQP,A.aQU,A.b6r,A.b6q,A.b6p,A.b6n,A.b6o,A.b6m,A.bal,A.bak,A.bam,A.baL,A.baM,A.baJ,A.baK,A.baI,A.b9i,A.b6u,A.aWL,A.aWZ,A.bbo,A.bbr,A.bbt,A.bbu,A.bbv,A.bbG,A.bbI,A.bbH,A.bbK,A.bbL,A.bbJ,A.bc5,A.bc4,A.aY9,A.aYj,A.aYl,A.aYg,A.aYi,A.aYu,A.aYv,A.aYw,A.aYx,A.aYy,A.aYz,A.aYB,A.aYA,A.aYs,A.aYt,A.aYp,A.aYq,A.aYr,A.aFt,A.aFs,A.b67,A.aFC,A.aFD,A.aJI,A.aXP,A.aXR,A.aXQ,A.aXS,A.aXT,A.aXU,A.aXV,A.aXZ,A.aY_,A.aY0,A.aXY,A.aOJ,A.aOL,A.aON,A.aOM,A.aOP,A.aGJ,A.aGK,A.aJv,A.aJu,A.aJt,A.aLl,A.aLk,A.aLj,A.aPe,A.aPh,A.aPj,A.aPs,A.aR6,A.aR7,A.aR8,A.aSx,A.aAN,A.aAO,A.aN8,A.aPK,A.aPL,A.aPJ,A.aWV,A.aXK,A.aXL,A.b_Q,A.b4b,A.b46,A.b47,A.b45,A.b07,A.bcI,A.b0y,A.b0w,A.b0x,A.b0v,A.aZX,A.aP9,A.aPa,A.azp,A.azC,A.azD,A.azE,A.azF,A.azG,A.azH,A.azI,A.azJ,A.azK,A.azq,A.azr,A.azm,A.azo,A.azP,A.azR,A.azS,A.azu,A.azv,A.azw,A.azy,A.b41,A.b42,A.b43,A.b44,A.aCD,A.aCE,A.aCB,A.aCA,A.au3,A.awl,A.awm,A.aDq,A.aDs,A.aDz,A.aDB,A.aDD,A.aDF,A.aDu,A.aDw,A.b2E,A.b2D,A.b4S,A.b4R,A.b4Q,A.b5_,A.b52,A.b51,A.b54,A.b55,A.ars,A.b5F,A.b5V,A.b5W,A.b5X,A.b68,A.b6y,A.aJf,A.b9H,A.b9G,A.b9E,A.aKo,A.aKp,A.aKq,A.aKr,A.aKm,A.b9b,A.b7t,A.aKZ,A.aKY,A.aL_,A.aKX,A.aKW,A.b7u,A.b7w,A.b7v,A.b4z,A.b9z,A.aPP,A.b9Q,A.b9R,A.b9P,A.b9K,A.b9O,A.b9M,A.b1p,A.aYS,A.aYT,A.b6G,A.aJi,A.aJh,A.aRa,A.bap,A.aRg,A.aRp,A.aRr,A.aNn,A.aNj,A.aNl,A.aT_,A.aT1,A.aT2,A.aTH,A.aTI,A.aTG,A.aTK,A.baU,A.at5,A.at6,A.at3,A.at4,A.at1,A.at2,A.at0,A.ban,A.bbV,A.bbX,A.bbZ,A.bc0,A.bc2,A.b06,A.beg,A.bcA,A.auj,A.b66,A.bgI,A.bgH,A.baQ,A.b4x,A.b6g,A.bcL,A.awu,A.bcm,A.aB8,A.aB7,A.aYe,A.aYd,A.aQ_,A.aQ0,A.aQ1,A.aQ2,A.aQ3,A.b7x,A.aAK,A.awV,A.aIv,A.aIL,A.b7H,A.aKM,A.aHh,A.b3n,A.b8f,A.aMN,A.aD1,A.aCW,A.arX,A.arW,A.bdB,A.aW8,A.aW7,A.asn,A.aMg,A.aMD,A.aMG,A.b8e,A.aD4,A.bcD,A.aKG,A.at8,A.aVY,A.aVX,A.bdF,A.bdK,A.bdL,A.bdI,A.bdJ,A.bdM,A.baf,A.bae,A.bab,A.bac,A.bad,A.b9Y,A.ba2,A.ba_,A.ba3,A.ba4,A.aEJ,A.aEx,A.aEE,A.aEF,A.aEG,A.aEH,A.aEC,A.aED,A.aEy,A.aEz,A.aEA,A.aEB,A.aEI,A.b4T,A.avq,A.aCL,A.aCJ,A.aCG,A.aCH,A.aCI,A.aGM,A.aYH,A.aYI,A.aE5,A.aE4,A.aqW,A.ar4,A.aqZ,A.ar2,A.ar_,A.ar0,A.ar1,A.ber,A.bes,A.aw7,A.aIH,A.aII,A.aBJ,A.atA,A.atB,A.atC,A.atE,A.atG,A.bf7,A.bf9,A.bfb,A.aB4,A.aB1,A.aB2,A.aB0,A.aAX,A.aAY,A.aAW,A.aAZ,A.aAV,A.aFZ,A.aFW,A.bgy,A.aDL,A.aVG,A.aVF,A.bgs,A.aVE,A.aVB,A.aVC,A.aU5,A.aU8,A.aU7,A.aUj,A.aUB,A.aUU,A.aUP,A.aUF,A.aUG,A.aUL,A.aUN,A.aUR,A.aBz,A.aBF,A.aBA,A.aUc,A.aUe,A.aUf,A.aUh,A.aUi,A.aUn,A.aUo,A.aUt,A.aUq,A.aUr,A.aUs,A.aUY,A.aUV,A.aUW,A.aUX,A.aV3,A.aVk,A.aVl,A.aVg,A.aVh,A.aVm,A.auL,A.auM,A.auN,A.aza,A.az7,A.az9,A.azc,A.auQ,A.avm,A.avn,A.avo,A.avp,A.avi,A.az6,A.ave,A.avc,A.av7,A.av6,A.av4,A.av5,A.av3,A.av2,A.avb,A.auT,A.aH2,A.aGU,A.aGX,A.aGY,A.aGT,A.aGS,A.aH0,A.aH4,A.aGQ,A.ayO,A.ayw,A.ayr,A.ays,A.ayt,A.ayu,A.ayn,A.ayo,A.ayp,A.ayq,A.ayH,A.ayI,A.aIl,A.aHK,A.aHE,A.aHA,A.aIj,A.aHH,A.aHC,A.aHy,A.aId,A.aIg,A.aI3,A.aI4,A.aI5,A.aI6,A.aI2,A.aI0,A.aHZ,A.aI1,A.aI9,A.aJQ,A.aJR,A.aJS,A.ati,A.atf,A.atd,A.ate,A.at9,A.atc,A.ath,A.avH,A.avE,A.avF,A.avG,A.aze,A.aHM,A.aHT,A.aHR,A.aHU,A.aHV,A.aTV,A.aTQ,A.aTR,A.aTP,A.aTL,A.aTO,A.aTT,A.aIi,A.aNG,A.aNF,A.aNJ,A.aNE,A.aNM,A.aND,A.aNL,A.avN,A.avO,A.awE,A.awF,A.awG,A.awH,A.awN,A.awB,A.awM,A.awL,A.aTd,A.aTe,A.aTf,A.aTk,A.aTc,A.aTj,A.aTi,A.aNz,A.aO6,A.aNV,A.aO7,A.aNU,A.aO8,A.aOj,A.aO3,A.aOn,A.aOo,A.aOp,A.aO1,A.aO0,A.aOs,A.aO9,A.aOa,A.aOb,A.aO_,A.aOi,A.aNS,A.aNT,A.aZi,A.aZq,A.aZr,A.aZs,A.aZt,A.aZy,A.aZn,A.aZk,A.aZl,A.avI,A.avJ,A.avK,A.avL,A.aJx,A.aJw,A.aT6,A.aT5,A.ayG,A.ayB,A.ayA,A.ayC,A.ayD,A.ayE,A.ayy,A.ayF,A.aZ4,A.aZ5,A.aZ6,A.aZ7,A.aZ9,A.aZb,A.aZ2,A.aMX,A.aMW,A.avf,A.aMR,A.aMQ,A.aMS,A.aMU,A.aMP,A.aMT,A.aRA,A.aRF,A.aVq,A.aRL,A.aRK,A.aN_,A.asN,A.asR,A.asS,A.aDg,A.aDh,A.aH6,A.aJj,A.aJk,A.aJl,A.aJm,A.aJn,A.as_,A.aNu,A.aNy,A.as2,A.aSs,A.ast,A.awQ,A.aSA,A.aSB,A.aSC,A.aSD,A.aSE,A.aSF,A.aSG,A.aSq,A.aSn,A.aSw,A.aSu,A.aTw,A.arF,A.asb,A.ase,A.asa,A.aYf,A.axv,A.axx,A.axw,A.axy,A.axu,A.axR,A.arN,A.as5,A.as6,A.aA7,A.aHQ,A.aHN,A.aJV,A.aJW,A.b1H,A.aLX,A.aRy,A.aSk,A.atj,A.atk,A.aSY,A.aSX,A.aTZ,A.aXf,A.aF4,A.bfQ,A.bfP]) +q(A.Yx,[A.arw,A.aWI,A.beM,A.beI,A.aLu,A.bfD,A.aG5,A.aG6,A.bfq,A.aGy,A.aGu,A.aAp,A.aVT,A.bdg,A.bgi,A.aFj,A.ax1,A.b4M,A.b1u,A.auJ,A.awr,A.aM6,A.aGg,A.bfz,A.bd5,A.bem,A.aDd,A.aD8,A.aCU,A.b4p,A.aWc,A.b_T,A.bd8,A.b9B,A.b4B,A.aEb,A.aHc,A.aIo,A.aIr,A.aVJ,A.aVM,A.aVL,A.b5L,A.b5S,A.b5O,A.b0G,A.aKA,A.aZC,A.aZz,A.aZA,A.aZB,A.bct,A.bcs,A.bdo,A.aJ7,A.aJ8,A.aJ9,A.aJa,A.aQq,A.aQr,A.aW4,A.aW5,A.aW6,A.b0t,A.bcz,A.bb3,A.bb4,A.b_O,A.beL,A.b3x,A.b3z,A.b3B,A.b3H,A.aso,A.asp,A.aJL,A.aJM,A.aFv,A.auv,A.aux,A.auz,A.atO,A.atN,A.atX,A.axE,A.aCs,A.aCt,A.aEh,A.aEj,A.bei,A.aYP,A.aYQ,A.aWN,A.aWQ,A.beZ,A.bf_,A.beD,A.aug,A.aIP,A.aIZ,A.b3s,A.b3u,A.aBp,A.awU,A.b74,A.b8S,A.b8Z,A.b8T,A.aLR,A.aQY,A.aR1,A.aIu,A.b6b,A.b6E,A.b96,A.b97,A.b8z,A.b8N,A.b8Q,A.b8R,A.b8O,A.b8P,A.b31,A.b32,A.b33,A.b93,A.b92,A.b90,A.b99,A.aKd,A.aKf,A.aKj,A.aKk,A.aKi,A.b7_,A.b2J,A.b70,A.bcO,A.bcP,A.b80,A.b60,A.b61,A.b1W,A.b8M,A.aOF,A.b0I,A.aQL,A.aQT,A.baP,A.b9U,A.b9k,A.bbM,A.bbN,A.bcZ,A.bc6,A.b9n,A.aY6,A.b2_,A.aFu,A.aFE,A.aFB,A.arK,A.aJJ,A.aPG,A.aOK,A.aOS,A.aOW,A.aOU,A.aOV,A.aOT,A.aJq,A.aLz,A.aLy,A.aLA,A.aLB,A.aP_,A.aPl,A.aPk,A.aPo,A.aPp,A.aPC,A.aOY,A.aOX,A.aPq,A.aOZ,A.aR5,A.bar,A.aSb,A.aSc,A.aRT,A.aut,A.b2w,A.aVU,A.azn,A.azz,A.azB,A.ay0,A.ay2,A.ay1,A.ay3,A.ay4,A.axX,A.ay_,A.b8H,A.b8E,A.aOv,A.aOw,A.b4e,A.aA3,A.aEn,A.b4P,A.aEk,A.b50,A.axm,A.b4U,A.b7f,A.b9q,A.baY,A.b7z,A.bcW,A.bcX,A.b6K,A.b6J,A.b6H,A.aRk,A.baj,A.bah,A.bai,A.aRo,A.aT0,A.aT8,A.b9f,A.b9e,A.b9d,A.b9c,A.bfM,A.awt,A.aPY,A.aQ4,A.aQ5,A.aQ6,A.aFL,A.aDQ,A.aDS,A.aDT,A.aDX,A.aE_,A.asU,A.aIN,A.arG,A.arH,A.b7D,A.b7E,A.b7F,A.aL9,A.aL7,A.aL8,A.ax8,A.ax9,A.axa,A.aD_,A.aCX,A.aCY,A.arZ,A.bdC,A.aWa,A.asm,A.aMB,A.aMC,A.aMm,A.aME,A.aMF,A.b8d,A.b82,A.b83,A.b84,A.baa,A.ba6,A.baA,A.aEv,A.aCK,A.bfL,A.ar6,A.ar9,A.b_f,A.b_l,A.bf3,A.aB5,A.aAU,A.aFY,A.bgc,A.aDM,A.aVz,A.aVA,A.aU4,A.aU6,A.aUA,A.aUp,A.aV6,A.az8,A.av8,A.av9,A.ava,A.auW,A.b_6,A.ayN,A.bfT,A.atb,A.aTN,A.awD,A.awJ,A.awI,A.aTg,A.aZh,A.aRJ,A.aRC,A.aRH,A.asP,A.as7,A.asd,A.as9,A.aIt,A.aSL,A.aSM,A.axS]) +q(A.b3b,[A.Ic,A.qs,A.xN,A.AE,A.Ky,A.awk,A.y_,A.wp,A.HQ,A.Q4,A.oI,A.yy,A.arf,A.x_,A.NB,A.JB,A.u0,A.BO,A.Q9,A.ag5,A.EG,A.OZ,A.cY,A.fs,A.Yn,A.a6c,A.aLq,A.KG,A.Oh,A.a9G,A.a69,A.t0,A.AR,A.atu,A.wO,A.nW,A.HN,A.ax5,A.qA,A.oH,A.Db,A.ui,A.nj,A.Ov,A.aX8,A.aa5,A.ma,A.Ou,A.XG,A.aty,A.aaf,A.Ay,A.a1Y,A.to,A.Cc,A.DJ,A.a2K,A.AD,A.w5,A.a0V,A.nV,A.Fo,A.WH,A.anh,A.zB,A.Jc,A.o8,A.fV,A.a1l,A.zF,A.QA,A.a0l,A.K8,A.GE,A.hg,A.Fx,A.au6,A.au5,A.b1N,A.b1O,A.pg,A.b1R,A.a0o,A.b3S,A.QY,A.b4Z,A.vb,A.JU,A.ia,A.a2L,A.KR,A.a2M,A.nE,A.u6,A.dn,A.aKe,A.a5q,A.b_R,A.b8o,A.b8p,A.vo,A.aOG,A.b59,A.kK,A.baO,A.a8K,A.GL,A.aT3,A.NR,A.bbi,A.bbg,A.a9P,A.Ol,A.H_,A.xK,A.Ne,A.ML,A.Xg,A.aaQ,A.Aq,A.XD,A.XK,A.w3,A.C6,A.EN,A.aY5,A.O6,A.DC,A.G6,A.a10,A.a2T,A.u4,A.wh,A.Kg,A.a_P,A.uC,A.Nu,A.EL,A.DZ,A.Nv,A.OJ,A.a1A,A.a9v,A.XQ,A.Nj,A.acK,A.acL,A.yB,A.axc,A.X2,A.Cl,A.a2l,A.xm,A.lb,A.wu,A.Ok,A.a9O,A.a9M,A.a50,A.a8V,A.a8W,A.jX,A.aX7,A.JT,A.m3,A.aax,A.wf,A.tV,A.aaz,A.tA,A.aC5,A.zh,A.aar,A.asv,A.baR,A.FN,A.C_,A.R7,A.aLm,A.a5I,A.hM,A.aKl,A.U2,A.DL,A.id,A.SZ,A.a5M,A.FZ,A.amb,A.GT,A.aQg,A.WE,A.a83,A.yF,A.a86,A.a84,A.No,A.a8X,A.QB,A.AX,A.qa,A.a0U,A.OR,A.LF,A.le,A.aL6,A.n2,A.WI,A.Sj,A.Ea,A.hr,A.eT,A.fc,A.kq,A.kT,A.el,A.lO,A.z_,A.Cn,A.ya,A.aaP]) +p(A.auG,A.al0) +q(A.Yd,[A.Iv,A.Ix,A.AO]) +q(A.z,[A.Lz,A.hL,A.re,A.nB,A.an,A.en,A.be,A.ip,A.z6,A.qR,A.yT,A.q5,A.es,A.zH,A.ad2,A.amc,A.k4,A.jF,A.wz,A.fe,A.bb,A.BZ,A.RE]) +q(A.Yf,[A.Q7,A.Q8]) +p(A.Iw,A.XN) +q(A.j0,[A.B2,A.a6j]) +q(A.B2,[A.a7K,A.Xl,A.Yo,A.Yr,A.Yq,A.a5F,A.OY,A.a8s]) +p(A.a5D,A.OY) +p(A.Ye,A.a8y) +q(A.d0,[A.XS,A.hX,A.l7,A.r0,A.a2f,A.aaA,A.aeV,A.a7V,A.afP,A.Ci,A.vS,A.kQ,A.a5t,A.aaC,A.F2,A.iA,A.Yz,A.agc,A.a1v,A.a1H,A.Ya]) +q(A.hX,[A.a1d,A.JZ,A.K_]) +q(A.fo,[A.hb,A.a6f]) +q(A.hb,[A.M9,A.aj0,A.aj_,A.Ma,A.Mc,A.Md,A.Me,A.Mf,A.Mg]) +q(A.aAh,[A.pE,A.afj]) +p(A.Mb,A.aj0) +p(A.a6d,A.aj_) +p(A.ayd,A.afj) +p(A.a6g,A.a6f) +q(A.f6,[A.Jr,A.M2,A.a64,A.a68,A.a66,A.a65,A.a67]) +q(A.Jr,[A.a5T,A.a5S,A.a5R,A.a5X,A.a5Z,A.a62,A.a61,A.a5V,A.a5Y,A.a5U,A.a60,A.a63,A.a5W,A.a6_]) +p(A.BY,A.aAl) +q(A.pW,[A.PQ,A.RR]) +q(A.a0B,[A.Lu,A.aID]) +p(A.a1M,A.Kh) +q(A.atL,[A.Ly,A.NK]) +p(A.a0E,A.aLE) +q(A.b0B,[A.aoR,A.bcc,A.aoI]) +p(A.b7M,A.aoR) +p(A.b6M,A.aoI) +q(A.a6v,[A.avP,A.a07,A.aFG,A.aFP,A.aRn,A.aDi,A.au4,A.aXd]) +q(A.qM,[A.a7S,A.a1a,A.a2r,A.a2N,A.a9W]) +q(A.aS_,[A.axn,A.aJb]) +p(A.Ja,A.af6) +q(A.Ja,[A.aSe,A.a1u,A.a7W]) +q(A.ac,[A.ps,A.F4,A.ae4,A.iH,A.a0Y,A.a28,A.r2]) +p(A.agZ,A.ps) +p(A.aas,A.agZ) +p(A.Da,A.aLn) +q(A.Ev,[A.Y7,A.a7M]) +q(A.aXp,[A.aGL,A.aBa,A.aZL]) +q(A.aXo,[A.b1Z,A.u_,A.vX]) +p(A.ahi,A.b1Z) +p(A.ahj,A.ahi) +p(A.ahk,A.ahj) +p(A.mT,A.ahk) +p(A.a0u,A.mT) +q(A.aAm,[A.aKz,A.aAD,A.aym,A.aDP,A.aKx,A.aM4,A.aRz,A.aSg]) +q(A.aAn,[A.aKB,A.aXF,A.aKN,A.axd,A.aLx,A.aA5,A.aZD,A.a5h]) +q(A.a1u,[A.aFk,A.arq,A.aBO]) +q(A.aXs,[A.aXz,A.aXG,A.aXB,A.aXE,A.aXA,A.aXD,A.aXq,A.aXw,A.aXC,A.aXy,A.aXx,A.aXv]) +q(A.axs,[A.a_F,A.a1i]) +p(A.aA6,A.afO) +q(A.aA6,[A.ax2,A.aCR]) +p(A.a8D,A.wR) +p(A.a0A,A.a8D) +p(A.a0F,A.a0A) +p(A.b22,A.b4D) +q(J.Cb,[J.Kz,J.Ch,J.j,J.tT,J.qi]) +q(J.j,[J.tY,J.G,A.xO,A.h9,A.aJ,A.Ww,A.t1,A.aX,A.mI,A.dB,A.aeD,A.js,A.a_H,A.a0c,A.afl,A.Jm,A.afn,A.a0f,A.afX,A.jB,A.a1F,A.agE,A.C4,A.a2Q,A.a51,A.aid,A.aie,A.jI,A.aif,A.aiz,A.jK,A.aj3,A.akZ,A.E8,A.jS,A.am2,A.jT,A.ama,A.iB,A.an_,A.aag,A.jZ,A.anc,A.aam,A.aaJ,A.aof,A.aot,A.aoK,A.apm,A.app,A.J0,A.Kn,A.Ck,A.LQ,A.l8,A.ahm,A.ld,A.aiJ,A.a6r,A.amd,A.lp,A.ani,A.Xb,A.ado]) +q(J.tY,[J.a6m,J.p2,J.on]) +p(J.aGf,J.G) +q(J.tT,[J.Cg,J.KB]) +q(A.bA,[A.Ik,A.GS,A.z0,A.Fq,A.QQ,A.zL,A.R4,A.PU,A.jd,A.ag_,A.Jb,A.v4,A.GV]) +q(A.nB,[A.w7,A.UY,A.pL,A.pK]) +p(A.QM,A.w7) +p(A.Q3,A.UY) +p(A.ik,A.Q3) +q(A.bg,[A.pJ,A.j_,A.rh,A.RD,A.adn]) +q(A.F4,[A.hQ,A.zj]) +q(A.an,[A.ax,A.jy,A.c9,A.ri,A.RL,A.rq,A.zU,A.Tt]) +q(A.ax,[A.jW,A.ad,A.d1,A.KQ,A.ah7,A.R6]) +p(A.pV,A.en) +p(A.Jy,A.z6) +p(A.Bx,A.qR) +p(A.Jx,A.q5) +q(A.rn,[A.ajY,A.ajZ,A.ak_]) +q(A.ajY,[A.nH,A.Gw,A.Sv,A.ak0,A.ak1,A.ak2]) +q(A.ajZ,[A.ak3,A.ak4,A.Sw]) +p(A.Sx,A.ak_) +p(A.Ud,A.xH) +p(A.md,A.Ud) +q(A.md,[A.wd,A.oe]) +q(A.B0,[A.a2,A.dm]) +q(A.m4,[A.II,A.GH]) +q(A.II,[A.ke,A.h6]) +p(A.cs,A.a26) +p(A.LP,A.r0) +q(A.a9X,[A.a9y,A.Aw]) +q(A.j_,[A.KD,A.xk,A.RH]) +q(A.h9,[A.LA,A.CR]) +q(A.CR,[A.S_,A.S1]) +p(A.S0,A.S_) +p(A.ub,A.S0) +p(A.S2,A.S1) +p(A.lc,A.S2) +q(A.ub,[A.LB,A.a5j]) +q(A.lc,[A.a5k,A.LC,A.a5l,A.a5m,A.LD,A.LE,A.xP]) +p(A.U6,A.afP) +p(A.d_,A.GS) +p(A.iG,A.d_) +q(A.hl,[A.v8,A.FV,A.GK]) +p(A.zx,A.v8) +q(A.mi,[A.nL,A.ls]) +p(A.Fr,A.nL) +q(A.zA,[A.aD,A.rt]) +q(A.vt,[A.mg,A.pp]) +p(A.TC,A.ad1) +q(A.af9,[A.iI,A.zC]) +p(A.RY,A.mg) +p(A.nF,A.R4) +q(A.a9B,[A.TE,A.a8C,A.a9x,A.a9w]) +p(A.TD,A.TE) +p(A.akT,A.bcN) +q(A.rh,[A.vc,A.Qu]) +q(A.GH,[A.ph,A.kI]) +q(A.Qz,[A.rf,A.zD]) +q(A.am6,[A.k3,A.jh]) +q(A.am5,[A.Tu,A.Tv]) +p(A.O4,A.Tu) +q(A.pm,[A.rr,A.Tx,A.zT]) +p(A.Tw,A.Tv) +p(A.Em,A.Tw) +q(A.oT,[A.GU,A.anG,A.zW]) +p(A.RC,A.GU) +q(A.mH,[A.mM,A.Xp,A.a2g,A.a7R]) +q(A.mM,[A.X_,A.a2s,A.aaL,A.a9L]) +q(A.cr,[A.anF,A.anE,A.Xq,A.R5,A.a2j,A.a2i,A.aaM,A.P2,A.a1C,A.akX,A.akW]) +q(A.anF,[A.X1,A.a2u]) +q(A.anE,[A.X0,A.a2t]) +q(A.Ig,[A.b3c,A.baC,A.b0A,A.PX,A.PY,A.ahg,A.bcx,A.bcw]) +p(A.b0R,A.PM) +q(A.b0A,[A.b0f,A.bcv]) +p(A.a2h,A.Ci) +q(A.Y9,[A.b5K,A.ah8]) +q(A.b5R,[A.b5P,A.ah9]) +p(A.aoz,A.ah9) +p(A.b5T,A.aoz) +p(A.b5U,A.ahg) +p(A.apN,A.anN) +p(A.Um,A.apN) +q(A.kQ,[A.Dt,A.Kp]) +p(A.aeY,A.Ug) +q(A.aJ,[A.br,A.JK,A.a0W,A.a1c,A.x4,A.CO,A.a5v,A.jP,A.Tr,A.jY,A.iC,A.TX,A.aaS,A.Fa,A.v0,A.p5,A.wo,A.Xd,A.rZ]) +q(A.br,[A.cv,A.o1,A.pQ,A.Ft]) +q(A.cv,[A.ba,A.bh]) +q(A.ba,[A.WD,A.WZ,A.Au,A.vY,A.a1e,A.xe,A.KP,A.Nf,A.a8a,A.Oo,A.a9Q,A.a9R,A.EE]) +q(A.aX,[A.td,A.u9,A.lg,A.v_]) +p(A.YJ,A.mI) +p(A.wi,A.aeD) +q(A.js,[A.YK,A.YL]) +p(A.afm,A.afl) +p(A.Jl,A.afm) +p(A.afo,A.afn) +p(A.Jn,A.afo) +p(A.hV,A.t1) +p(A.afY,A.afX) +p(A.BG,A.afY) +p(A.agF,A.agE) +p(A.x3,A.agF) +p(A.tI,A.x4) +p(A.a54,A.aid) +p(A.a55,A.aie) +p(A.aig,A.aif) +p(A.a56,A.aig) +p(A.aiA,A.aiz) +p(A.LM,A.aiA) +p(A.aj4,A.aj3) +p(A.a6q,A.aj4) +p(A.a7T,A.akZ) +p(A.Ts,A.Tr) +p(A.a94,A.Ts) +p(A.am3,A.am2) +p(A.a9t,A.am3) +p(A.Oa,A.ama) +p(A.an0,A.an_) +p(A.aac,A.an0) +p(A.TY,A.TX) +p(A.aad,A.TY) +p(A.and,A.anc) +p(A.aal,A.and) +p(A.aog,A.aof) +p(A.aeC,A.aog) +p(A.Qy,A.Jm) +p(A.aou,A.aot) +p(A.agn,A.aou) +p(A.aoL,A.aoK) +p(A.RZ,A.aoL) +p(A.apn,A.apm) +p(A.am4,A.apn) +p(A.apq,A.app) +p(A.amg,A.apq) +p(A.QN,A.adn) +p(A.QO,A.jd) +p(A.amD,A.Tn) +p(A.TH,A.bb2) +p(A.nz,A.b_N) +p(A.o6,A.J0) +q(A.iV,[A.M6,A.M7,A.M8]) +p(A.QV,A.kg) +q(A.qj,[A.KC,A.G7]) +p(A.xj,A.G7) +p(A.ahn,A.ahm) +p(A.a2C,A.ahn) +p(A.aiK,A.aiJ) +p(A.a5A,A.aiK) +p(A.DS,A.bh) +p(A.ame,A.amd) +p(A.a9D,A.ame) +p(A.anj,A.ani) +p(A.aao,A.anj) +q(A.a5C,[A.l,A.V]) +p(A.Xc,A.ado) +p(A.a5B,A.rZ) +p(A.a03,A.afc) +q(A.a03,[A.d,A.bG,A.kl,A.Nw,A.a8j]) +q(A.d,[A.a4,A.P,A.aG,A.aiE,A.b2,A.aiH]) +q(A.a4,[A.Ii,A.YN,A.a_x,A.aj1,A.a_y,A.ads,A.PL,A.U4,A.aiu,A.a_z,A.YO,A.a_C,A.a_D,A.acY,A.zu,A.Xj,A.Yv,A.a0q,A.a0y,A.Wz,A.afw,A.PS,A.XW,A.Iu,A.AM,A.Y8,A.a00,A.Be,A.a06,A.Af,A.Bi,A.aaR,A.Js,A.FM,A.QE,A.afN,A.wQ,A.a1y,A.x6,A.C9,A.qm,A.a2S,A.Tk,A.a5n,A.xR,A.a5p,A.aiq,A.afb,A.air,A.ais,A.ae9,A.ajN,A.Fn,A.ao3,A.Sl,A.My,A.adA,A.a88,A.a9K,A.Ez,A.z3,A.amJ,A.aa9,A.amQ,A.amT,A.aab,A.EQ,A.ana,A.aiF,A.a23,A.a6t,A.ir,A.ej,A.YB,A.aiG,A.a_W,A.Jh,A.a0m,A.a0L,A.a1k,A.bC,A.a1W,A.ra,A.ah1,A.Dw,A.ahJ,A.a58,A.aii,A.LJ,A.D1,A.uo,A.a7X,A.a85,A.a8A,A.a8O,A.a8N,A.a9r,A.aiI,A.m9,A.ER,A.aaT,A.F9,A.a1K,A.BC,A.B5,A.CK,A.K1,A.CU,A.CV,A.FR,A.M0,A.v3,A.M1,A.Dh,A.CM,A.a0P,A.a9n,A.wP,A.uM,A.a9i,A.Cs,A.a5f,A.wa,A.xD,A.CH,A.a5O,A.a0s,A.a2p,A.a2q,A.a7I,A.Y3,A.zl,A.lF,A.yH,A.a6I,A.WX,A.As,A.XM,A.a2H,A.a8q,A.NO,A.aaj,A.pM,A.a90,A.a57,A.qo,A.CG,A.mU,A.CE,A.L4,A.ul,A.hD,A.ye,A.a8m,A.Xz,A.a8U,A.NU]) +q(A.jD,[A.t6,A.X4,A.Nh]) +p(A.xb,A.agO) +q(A.xb,[A.a5e,A.Fm,A.b3d,A.a5d]) +p(A.E6,A.H3) +p(A.alq,A.a1C) +p(A.baw,A.aEc) +p(A.axz,A.afe) +q(A.b0D,[A.yu,A.yw,A.wE]) +q(A.km,[A.ah3,A.Ko,A.Je]) +p(A.a29,A.ah3) +q(A.b9w,[A.adw,A.akJ]) +p(A.asT,A.adw) +p(A.ll,A.akJ) +p(A.aWM,A.aYO) +p(A.asE,A.aWM) +p(A.qd,A.aui) +q(A.r_,[A.Q0,A.PZ,A.Q_,A.Xx,A.J8,A.a_K]) +p(A.b8J,A.awg) +q(A.Lq,[A.ai8,A.Lp]) +p(A.Lo,A.ai8) +p(A.b6z,A.aBx) +p(A.Dz,A.hB) +q(A.Dz,[A.hw,A.l0]) +p(A.a7L,A.hw) +p(A.b85,A.aBy) +q(A.aLF,[A.aBg,A.aKv,A.aL0,A.aSP,A.aZE]) +q(A.aBg,[A.aBo,A.aBh,A.aBj,A.aBi]) +q(A.au,[A.bQ,A.a_G,A.P3,A.vg,A.amo,A.J2,A.DN]) +q(A.bQ,[A.ade,A.ad3,A.ad4,A.Hv,A.ajF,A.akO,A.aeU,A.ane,A.Qa,A.UU,A.aod,A.aol]) +p(A.adf,A.ade) +p(A.adg,A.adf) +p(A.my,A.adg) +q(A.aT4,[A.b5G,A.b9v,A.a1h,A.O5,A.b2M,A.atw,A.avV]) +p(A.ajG,A.ajF) +p(A.ajH,A.ajG) +p(A.Mt,A.ajH) +p(A.akP,A.akO) +p(A.jL,A.akP) +p(A.wm,A.aeU) +p(A.anf,A.ane) +p(A.ang,A.anf) +p(A.zf,A.ang) +p(A.Qb,A.Qa) +p(A.Qc,A.Qb) +p(A.B_,A.Qc) +q(A.B_,[A.HI,A.Py]) +q(A.M5,[A.ju,A.b0P,A.b0Q]) +q(A.ju,[A.RG,A.Na,A.dO,A.ON,A.f3,A.OM,A.jz,A.af_]) +p(A.aw,A.UU) +q(A.aA,[A.dq,A.aO,A.eE,A.P_]) +q(A.aO,[A.N7,A.dk,A.a8F,A.ur,A.tR,A.pO,A.Lj,A.Rw,A.uG,A.z8,A.a_Q,A.Jw,A.wC,A.w_,A.XE,A.p_,A.DA]) +q(A.P,[A.IL,A.IM,A.IN,A.wj,A.J_,A.HF,A.IW,A.IX,A.B6,A.Fz,A.Dx,A.IZ,A.Qp,A.tj,A.CI,A.HM,A.I7,A.zK,A.MD,A.If,A.It,A.MA,A.Jt,A.FK,A.FJ,A.Bp,A.JI,A.Te,A.xc,A.Rt,A.PR,A.Rc,A.xd,A.OF,A.L9,A.a2_,A.S3,A.O9,A.vr,A.Qs,A.LI,A.vv,A.vw,A.Ml,A.Dc,A.a6z,A.Dr,A.yn,A.Nb,A.QW,A.na,A.vs,A.Nt,A.NN,A.RP,A.J9,A.Om,A.On,A.OA,A.q6,A.TV,A.OW,A.pB,A.wW,A.HC,A.HD,A.Fc,A.Ap,A.O8,A.Bq,A.Bv,A.T4,A.wS,A.JX,A.K2,A.n6,A.qb,A.C3,A.Kx,A.KW,A.RT,A.LK,A.rk,A.CY,A.LW,A.Kb,A.Oe,A.D2,A.ux,A.N8,A.DM,A.Gj,A.GF,A.Nk,A.Nm,A.Tb,A.DY,A.NE,A.yR,A.NG,A.rp,A.Tg,A.OH,A.zc,A.F_,A.F7,A.zr,A.YA,A.Ms,A.U0,A.PV,A.KT,A.D3,A.tw,A.LS,A.MG,A.Mn,A.Nn,A.NF,A.AJ]) +p(A.af,A.am7) +q(A.af,[A.V1,A.V2,A.V3,A.Qj,A.V6,A.aeL,A.Qk,A.H7,A.FA,A.Gv,A.V5,A.V7,A.Qo,A.RM,A.Pz,A.PT,A.Gh,A.aoV,A.UX,A.UZ,A.aoU,A.QD,A.FL,A.QF,A.V9,A.Va,A.ald,A.Ru,A.Vf,A.UW,A.Ve,A.Vg,A.TS,A.aoG,A.G4,A.aiv,A.Vy,A.Qt,A.Vl,A.VG,A.VH,A.De,A.Dd,A.Vi,A.V0,A.H8,A.Sy,A.T1,A.Vc,A.T2,A.GN,A.Tf,A.VD,A.Vj,A.V8,A.TK,A.TL,A.VF,A.FU,A.apu,A.U3,A.Pu,A.R1,A.ao5,A.UV,A.apQ,A.PK,A.am8,A.QH,A.QJ,A.al3,A.FS,A.agj,A.K4,A.Du,A.G1,A.aoy,A.Vh,A.ahH,A.aoH,A.S7,A.Gn,A.aiU,A.aiT,A.Vd,A.VE,A.aiY,A.apa,A.SY,A.Ha,A.kJ,A.ape,A.Nl,A.Tc,A.al6,A.apd,A.alu,A.Tm,A.Tl,A.Tz,A.VB,A.VA,A.TU,A.an4,A.Pv,A.U8,A.H5,A.ao_,A.IJ,A.a6A,A.U1,A.adL,A.RI,A.Sg,A.Vb,A.aiL,A.ak8,A.Sn,A.Vx,A.VC,A.Q5]) +p(A.aeF,A.V1) +q(A.a_G,[A.aeE,A.amO,A.aeG,A.ahG,A.afy,A.agV,A.als,A.ahz,A.Fv,A.Rn,A.amN,A.ags]) +p(A.Qh,A.V2) +p(A.aoh,A.V3) +p(A.Qi,A.aoh) +q(A.im,[A.aak,A.ec,A.ES,A.Rv,A.a8Y,A.al1,A.qW,A.iE,A.yC,A.PP,A.uu,A.a5a,A.Ny,A.N6,A.KF,A.GB,A.fT,A.R8,A.TF,A.DX,A.NT,A.BW]) +q(A.aak,[A.ae0,A.ajL]) +q(A.M,[A.aeI,A.o4,A.a4U]) +p(A.ek,A.aeI) +q(A.aY2,[A.awT,A.awZ,A.axp,A.aIC]) +p(A.aoi,A.awT) +p(A.aeH,A.aoi) +p(A.cX,A.agM) +p(A.aeJ,A.cX) +p(A.YP,A.aeJ) +q(A.fy,[A.aeK,A.ai1,A.anY,A.adk,A.agr,A.ai2,A.anZ]) +p(A.Qn,A.V6) +q(A.HF,[A.ag8,A.alr,A.amw,A.WG,A.Ec,A.a80,A.a7N,A.a8E,A.Mo,A.a_N,A.a_X,A.KS]) +p(A.V4,A.H7) +p(A.FB,A.V4) +q(A.dc,[A.CZ,A.aiB]) +p(A.fg,A.CZ) +p(A.Gi,A.fg) +p(A.dX,A.Gi) +q(A.dX,[A.jJ,A.Mm]) +q(A.jJ,[A.Vo,A.Vp,A.LY,A.Qv]) +p(A.rl,A.Vo) +p(A.f5,A.jM) +q(A.f5,[A.jt,A.mW,A.io,A.CW]) +p(A.kX,A.af2) +q(A.kX,[A.nC,A.uV,A.dJ,A.hH]) +q(A.XI,[A.b2c,A.bco,A.adH,A.alt]) +q(A.Dx,[A.B7,A.Ge]) +p(A.oK,A.Gv) +q(A.oK,[A.Ql,A.ai3]) +p(A.Qm,A.V5) +q(A.aG,[A.a2z,A.by,A.Qr,A.Tq,A.fz,A.yr,A.ti,A.Go,A.a8S]) +q(A.a2z,[A.aeM,A.alH,A.anP,A.a6L,A.a0K]) +p(A.H,A.akq) +q(A.H,[A.N,A.d7,A.akF]) +q(A.N,[A.SR,A.SU,A.Vs,A.aoY,A.ap_,A.ap4,A.Vu,A.Vw,A.akj,A.ap8,A.SD,A.SF,A.akg,A.MP,A.MR,A.akl,A.SP,A.akB,A.k2,A.akH,A.ap2,A.ap5,A.Vv,A.Vt,A.ap7]) +p(A.SS,A.SR) +p(A.a7p,A.SS) +q(A.a7p,[A.DD,A.ako,A.SI,A.amW,A.MZ,A.MN,A.a7i,A.MT,A.a7k,A.ak9,A.a76,A.Gx,A.a7b,A.a7C,A.a7e,A.a7q,A.MQ,A.MW,A.MH,A.N_,A.a77,A.a7j,A.a7c,A.a7f,A.a7h,A.a7d,A.MK,A.akc,A.akn,A.aku,A.ap0,A.SM,A.akt,A.GA,A.akG,A.alw]) +q(A.DD,[A.akd,A.akb]) +p(A.aeN,A.awZ) +p(A.a_B,A.aeN) +q(A.by,[A.aeP,A.adj,A.adF,A.agX,A.agY,A.ae5,A.Gg,A.ae3,A.agU,A.aia,A.amV,A.Lw,A.ada,A.HJ,A.a5E,A.Xk,A.J3,A.AV,A.Yp,A.AS,A.a6h,A.a6i,A.p1,A.wc,A.AZ,A.a1f,A.b8,A.e5,A.kV,A.ez,A.ew,A.a2I,A.CX,A.a2b,A.iy,A.yU,A.Cx,A.i5,A.C2,A.Wu,A.bu,A.u8,A.XC,A.pY,A.C8,A.th,A.a_M,A.aee,A.agp,A.ahI,A.alg,A.af7,A.al5,A.GJ,A.alL,A.alJ,A.a8Z,A.a9V,A.a9U,A.cS,A.anR,A.adq,A.GI]) +p(A.ys,A.SU) +q(A.ys,[A.ake,A.a74,A.Sz,A.SJ,A.SK,A.akp,A.MX,A.MO]) +p(A.Qq,A.V7) +q(A.aeG,[A.ahl,A.akQ]) +q(A.bG,[A.c0,A.aiD,A.IH,A.aiC]) +q(A.c0,[A.aeO,A.kr,A.NJ,A.SO,A.a2y,A.G8,A.aiS,A.Eh,A.NQ]) +p(A.aoZ,A.Vs) +p(A.zQ,A.aoZ) +p(A.wl,A.aeQ) +q(A.b2,[A.bi,A.ha,A.dP,A.a72]) +q(A.bi,[A.Ro,A.QC,A.Ju,A.JS,A.dE,A.Si,A.zM,A.afS,A.T0,A.al2,A.TN,A.Pt,A.anC,A.kk,A.R3,A.oj,A.RK,A.x2,A.zR,A.Dj,A.zi,A.akY,A.RW,A.Ni,A.T6,A.T9,A.E_,A.alA,A.QL,A.Up,A.Uq,A.EZ,A.tO,A.Rp]) +p(A.aeS,A.LL) +p(A.B8,A.aeS) +p(A.b2x,A.wl) +q(A.fO,[A.hu,A.wv,A.a05]) +p(A.va,A.hu) +q(A.va,[A.BB,A.a0J,A.a0H]) +p(A.cc,A.agb) +p(A.q4,A.agc) +q(A.wv,[A.aga,A.a04,A.ali]) +q(A.iq,[A.jG,A.hy]) +q(A.jG,[A.kF,A.bP]) +p(A.KN,A.lM) +q(A.bcj,[A.agl,A.v7,A.Rb]) +p(A.JV,A.cc) +p(A.c3,A.ajd) +p(A.apA,A.acX) +p(A.apB,A.apA) +p(A.ano,A.apB) +q(A.c3,[A.aj5,A.ajq,A.ajg,A.ajb,A.aje,A.aj9,A.aji,A.ajy,A.j8,A.ajm,A.ajo,A.ajk,A.aj7]) +p(A.aj6,A.aj5) +p(A.y1,A.aj6) +q(A.ano,[A.apw,A.apI,A.apD,A.apz,A.apC,A.apy,A.apE,A.apM,A.apK,A.apL,A.apJ,A.apG,A.apH,A.apF,A.apx]) +p(A.ank,A.apw) +p(A.ajr,A.ajq) +p(A.y6,A.ajr) +p(A.anv,A.apI) +p(A.ajh,A.ajg) +p(A.qC,A.ajh) +p(A.anq,A.apD) +p(A.ajc,A.ajb) +p(A.uj,A.ajc) +p(A.ann,A.apz) +p(A.ajf,A.aje) +p(A.uk,A.ajf) +p(A.anp,A.apC) +p(A.aja,A.aj9) +p(A.qB,A.aja) +p(A.anm,A.apy) +p(A.ajj,A.aji) +p(A.y3,A.ajj) +p(A.anr,A.apE) +p(A.ajz,A.ajy) +p(A.qE,A.ajz) +p(A.anz,A.apM) +q(A.j8,[A.aju,A.ajw,A.ajs]) +p(A.ajv,A.aju) +p(A.y8,A.ajv) +p(A.anx,A.apK) +p(A.ajx,A.ajw) +p(A.y9,A.ajx) +p(A.any,A.apL) +p(A.ajt,A.ajs) +p(A.y7,A.ajt) +p(A.anw,A.apJ) +p(A.ajn,A.ajm) +p(A.qD,A.ajn) +p(A.ant,A.apG) +p(A.ajp,A.ajo) +p(A.y5,A.ajp) +p(A.anu,A.apH) +p(A.ajl,A.ajk) +p(A.y4,A.ajl) +p(A.ans,A.apF) +p(A.aj8,A.aj7) +p(A.qz,A.aj8) +p(A.anl,A.apx) +q(A.eS,[A.ago,A.zz]) +p(A.eK,A.ago) +q(A.eK,[A.LT,A.mL]) +q(A.LT,[A.mN,A.Di,A.Jq,A.nb,A.PN]) +q(A.H1,[A.RS,A.Gm]) +q(A.Di,[A.kp,A.Xw]) +q(A.Jq,[A.no,A.mO,A.n1]) +q(A.Xw,[A.kC,A.Fp]) +p(A.x5,A.k_) +p(A.CC,A.x5) +q(A.acY,[A.Xh,A.Yu,A.a0p,A.a0x]) +p(A.Ae,A.ad_) +p(A.aIy,A.a82) +q(A.aT7,[A.bc9,A.afz,A.b7Y,A.bcb,A.a01,A.aaa]) +p(A.So,A.V) +q(A.a74,[A.aka,A.SA,A.a75,A.a7o]) +p(A.Aj,A.adi) +q(A.Aj,[A.b0c,A.b0d]) +p(A.CL,A.ur) +p(A.HW,A.adv) +p(A.La,A.ai_) +p(A.I5,A.adD) +p(A.I6,A.adE) +q(A.Mm,[A.Lt,A.MB,A.QG,A.Sm]) +p(A.w0,A.adG) +p(A.b0J,A.w0) +p(A.ajQ,A.aoV) +p(A.Id,A.adK) +p(A.cp,A.adM) +p(A.PW,A.UX) +p(A.dY,A.aik) +q(A.dY,[A.a4V,A.af8,A.oW]) +q(A.a4V,[A.aij,A.afF,A.QR,A.afG]) +p(A.XO,A.adN) +p(A.AF,A.adP) +q(A.AF,[A.b1q,A.b1r]) +p(A.V_,A.UZ) +p(A.ae1,A.V_) +q(A.ES,[A.ae_,A.ajK,A.TI]) +p(A.AK,A.ae2) +q(A.AK,[A.b1y,A.b1C]) +p(A.Vr,A.aoU) +p(A.St,A.Vr) +q(A.bN,[A.agT,A.aom,A.aop,A.aon,A.aoo,A.agG,A.agI,A.aox,A.agS,A.aoN,A.aoP,A.aoO,A.TP,A.amF,A.apt]) +p(A.NP,A.Tq) +q(A.NP,[A.ae7,A.af3,A.ahE]) +p(A.SB,A.aoY) +p(A.AN,A.ae8) +q(A.AN,[A.b1P,A.b1S]) +p(A.tf,A.aec) +q(A.o4,[A.CJ,A.a38]) +p(A.J6,A.aeX) +p(A.J7,A.aeZ) +p(A.aoj,A.axp) +p(A.afa,A.aoj) +p(A.Jd,A.MB) +p(A.Bf,A.afd) +q(A.Bf,[A.b2K,A.b2L]) +p(A.Bj,A.afi) +q(A.Bj,[A.b2N,A.b2O]) +p(A.Bn,A.QD) +p(A.Bo,A.afx) +q(A.Bo,[A.b2R,A.b2S]) +p(A.pU,A.QE) +p(A.FI,A.V9) +p(A.Jv,A.afA) +q(A.If,[A.By,A.a0X,A.agK,A.a5K,A.EF]) +p(A.QP,A.aom) +p(A.afJ,A.aop) +p(A.afH,A.aon) +p(A.afI,A.aoo) +p(A.afM,A.By) +q(A.cp,[A.afK,A.ag0,A.agJ,A.ag2,A.ag3,A.aiR,A.aiP,A.amG]) +p(A.JA,A.afL) +p(A.QT,A.Va) +p(A.BE,A.afR) +q(A.BE,[A.b3g,A.b3h]) +p(A.JM,A.ag1) +p(A.BK,A.ag9) +q(A.BK,[A.b3l,A.b3m]) +q(A.aBW,[A.aVQ,A.bci]) +q(A.aVQ,[A.aob,A.aoq]) +p(A.aoc,A.aob) +p(A.b1w,A.aoc) +p(A.aor,A.aoq) +p(A.b3a,A.aor) +p(A.b9V,A.aBV) +p(A.agH,A.aox) +p(A.qe,A.agL) +q(A.dE,[A.Kk,A.xx,A.LG,A.Rr,A.tm,A.x8,A.Bc]) +q(A.ok,[A.Ks,A.tS]) +q(A.tS,[A.tP,A.Kt,A.Ku]) +q(A.Ca,[A.b5h,A.b5i]) +p(A.Rs,A.Vf) +q(A.C9,[A.a24,A.Rm,A.Rl]) +q(A.dp,[A.l6,A.fS,A.mk,A.XF]) +q(A.l6,[A.aiy,A.nl,A.lU]) +p(A.adB,A.UW) +p(A.Rd,A.Ve) +p(A.SE,A.ap_) +p(A.Rx,A.Vg) +p(A.Kw,A.agW) +q(A.Kw,[A.b5j,A.b5t]) +p(A.SN,A.ap4) +p(A.Cw,A.ahF) +q(A.Cw,[A.b64,A.b65]) +p(A.ai4,A.aoG) +q(A.a2_,[A.RN,A.HE,A.Hz,A.HB,A.Hy,A.Hw,A.HA]) +p(A.C7,A.G4) +q(A.C7,[A.Ai,A.ad6]) +q(A.Ai,[A.ai0,A.adc,A.ad7,A.ad9,A.ad5,A.ad8]) +p(A.Gf,A.a4U) +p(A.b9,A.adC) +p(A.a4T,A.b9) +p(A.RO,A.a4T) +p(A.J,A.amY) +p(A.a4W,A.J) +p(A.ai5,A.a4W) +q(A.ec,[A.a4X,A.qX,A.aap,A.aea,A.P0,A.qw]) +p(A.CN,A.aic) +p(A.a52,A.CN) +p(A.Lr,A.ai9) +p(A.a53,A.aib) +q(A.aJF,[A.b75,A.b9T,A.bca]) +p(A.GR,A.O9) +p(A.alc,A.Vy) +p(A.xQ,A.ait) +q(A.xQ,[A.b6W,A.b6X]) +p(A.LH,A.aiw) +p(A.S4,A.Vl) +p(A.CT,A.aix) +q(A.CT,[A.b78,A.b79]) +p(A.Sa,A.aoN) +p(A.aiO,A.aoP) +p(A.aiN,A.aoO) +p(A.LV,A.aiQ) +p(A.Se,A.Vp) +p(A.ao1,A.VG) +p(A.ao2,A.VH) +q(A.qv,[A.acM,A.a_A]) +p(A.a5P,A.aiX) +q(A.a8Y,[A.Uz,A.UA]) +p(A.um,A.Ml) +p(A.Df,A.ajA) +q(A.Df,[A.b7V,A.b7W]) +q(A.a6z,[A.KO,A.o2]) +p(A.ahA,A.Vi) +p(A.Q6,A.V0) +p(A.ak5,A.Fv) +p(A.a70,A.o2) +p(A.ak6,A.Q6) +p(A.Dm,A.ajD) +q(A.Dm,[A.b1U,A.b5Z,A.b1V,A.b6_]) +p(A.H9,A.H8) +p(A.Gu,A.H9) +p(A.Ds,A.ajM) +q(A.Ds,[A.b8g,A.b8j]) +p(A.MF,A.Sy) +p(A.a8_,A.T1) +q(A.aws,[A.aL,A.uK]) +p(A.Fu,A.aL) +p(A.QX,A.Vc) +p(A.T3,A.T2) +p(A.DQ,A.T3) +p(A.c7,A.ad0) +q(A.c7,[A.a0a,A.f2,A.cq,A.aaZ,A.Ji,A.Qf,A.a7F,A.a5s,A.a6u,A.Jf]) +q(A.a0a,[A.afg,A.afh]) +p(A.Mh,A.DP) +p(A.Np,A.al7) +p(A.Nq,A.al8) +p(A.Nr,A.al9) +p(A.Ns,A.ala) +p(A.amX,A.qX) +q(A.OI,[A.ale,A.amM]) +p(A.Tp,A.VD) +p(A.Gz,A.Vu) +p(A.bB,A.ah0) +q(A.bB,[A.nA,A.rU,A.t3,A.kf,A.qH,A.xS,A.yb,A.tp,A.hE,A.Jj,A.a09,A.qQ,A.o5,A.ug,A.us,A.n8,A.uW,A.me,A.uU,A.lS,A.mZ,A.lV,A.n4,A.tH,A.uI,A.tG]) +p(A.akE,A.Vw) +p(A.Ed,A.alI) +q(A.Ed,[A.baF,A.baG]) +p(A.akU,A.aTz) +p(A.aPW,A.akU) +p(A.aPV,A.aTy) +q(A.aTv,[A.aPU,A.aPT,A.a7_,A.az1]) +p(A.NS,A.alR) +p(A.Vk,A.Vj) +p(A.RQ,A.Vk) +p(A.amk,A.apr) +p(A.EA,A.amm) +q(A.EA,[A.bb6,A.bbb]) +p(A.aml,A.aps) +p(A.z5,A.ams) +p(A.af5,A.V8) +p(A.akk,A.akj) +p(A.SH,A.akk) +p(A.yq,A.SH) +p(A.amv,A.yq) +q(A.fz,[A.BJ,A.amR,A.tk,A.a2J,A.uN,A.acJ,A.a7H,A.QI,A.a5L,A.TZ,A.r4,A.a8x]) +q(A.BJ,[A.amu,A.DO,A.wb]) +p(A.adU,A.aod) +p(A.FH,A.aol) +p(A.al4,A.iE) +p(A.nc,A.al4) +p(A.yG,A.nc) +q(A.yG,[A.TJ,A.vl]) +q(A.yC,[A.amr,A.xW]) +q(A.z5,[A.bbx,A.bby]) +p(A.amE,A.apt) +p(A.amI,A.EF) +p(A.Ow,A.amH) +p(A.TQ,A.VF) +p(A.OB,A.q6) +p(A.l2,A.FU) +p(A.GY,A.l2) +p(A.ai6,A.aIC) +p(A.a4Y,A.ai6) +p(A.OK,A.amP) +p(A.amU,A.apu) +q(A.kr,[A.amS,A.agR,A.an1,A.apO]) +p(A.akD,A.ap8) +p(A.ff,A.amZ) +p(A.mc,A.an2) +p(A.a39,A.B8) +p(A.r5,A.anS) +p(A.OP,A.an6) +p(A.OU,A.an9) +p(A.afQ,A.Lw) +q(A.MZ,[A.MV,A.a7n,A.qK,A.SC,A.N1,A.DF]) +p(A.aki,A.MV) +p(A.EV,A.U3) +p(A.OX,A.anb) +p(A.EX,A.anA) +q(A.vQ,[A.hp,A.ig,A.aih]) +q(A.I4,[A.dg,A.vZ,A.RV]) +q(A.XF,[A.ei,A.iR]) +p(A.c8,A.uE) +q(A.fS,[A.h3,A.cE,A.jg,A.jV,A.ji,A.jj]) +q(A.eI,[A.aK,A.eH,A.vh]) +p(A.u2,A.aE0) +q(A.adO,[A.Q1,A.Gb]) +p(A.mA,A.X4) +p(A.jC,A.agN) +p(A.aFH,A.agP) +q(A.kl,[A.a6l,A.uT]) +p(A.Eu,A.amf) +q(A.kD,[A.Fd,A.anJ,A.AH,A.Cu,A.M4,A.wx,A.aeb]) +p(A.uA,A.O5) +q(A.qc,[A.pG,A.Eg]) +q(A.l4,[A.w4,A.a8R]) +q(A.dQ,[A.ij,A.TT,A.qS,A.oS]) +p(A.Qe,A.ij) +p(A.IK,A.Qe) +q(A.IK,[A.lR,A.hW,A.oq,A.fD,A.p6,A.pi,A.jb]) +p(A.akf,A.SD) +p(A.MM,A.akf) +p(A.SG,A.SF) +p(A.akh,A.SG) +p(A.yp,A.akh) +q(A.uu,[A.TR,A.Q2,A.Fw]) +p(A.h7,A.ahh) +q(A.h7,[A.a6k,A.hR]) +q(A.hR,[A.oC,A.AW,A.AU,A.AT,A.NC,A.HV,A.KM,A.JY,A.HK]) +q(A.oC,[A.zg,A.LU]) +p(A.akm,A.akl) +p(A.MU,A.akm) +p(A.aim,A.aoJ) +p(A.D5,A.avX) +q(A.baq,[A.aei,A.k1]) +q(A.k1,[A.akS,A.Rk,A.zX]) +p(A.qy,A.ne) +p(A.mb,A.TT) +p(A.akr,A.SP) +p(A.aks,A.akr) +p(A.MY,A.aks) +p(A.apc,A.apb) +p(A.ro,A.apc) +p(A.MI,A.ak9) +q(A.J2,[A.uF,A.af1,A.afq]) +q(A.Gx,[A.a7a,A.a79,A.a78,A.SQ]) +q(A.SQ,[A.a7l,A.a7m]) +q(A.aRM,[A.IC,A.yI]) +p(A.a8Q,A.alM) +q(A.qS,[A.alN,A.alO]) +p(A.oR,A.alN) +p(A.alQ,A.oS) +p(A.jO,A.alQ) +q(A.d7,[A.akz,A.SW,A.akv]) +p(A.akA,A.akz) +p(A.a7A,A.akA) +q(A.a7A,[A.a7B,A.a7s]) +p(A.akx,A.SW) +p(A.aky,A.akx) +p(A.oM,A.aky) +q(A.oM,[A.a7u,A.a7w,A.a7y]) +q(A.a7u,[A.a7t,A.a7v]) +p(A.aTF,A.aTE) +p(A.aTC,A.aTB) +p(A.alP,A.alO) +p(A.he,A.alP) +p(A.Ef,A.he) +p(A.N0,A.akv) +q(A.N0,[A.a7z,A.akw]) +p(A.akC,A.akB) +p(A.DE,A.akC) +p(A.MS,A.DE) +p(A.a7D,A.akF) +p(A.qL,A.k2) +q(A.qL,[A.uw,A.a7r]) +p(A.akI,A.akH) +p(A.N2,A.akI) +p(A.a8h,A.alh) +p(A.e0,A.alk) +p(A.E1,A.all) +p(A.xU,A.E1) +q(A.aS0,[A.art,A.aYo,A.aHm,A.aX5]) +p(A.aur,A.X3) +p(A.aLC,A.aur) +q(A.atn,[A.b2u,A.a73]) +p(A.tU,A.aha) +q(A.tU,[A.xl,A.tW,A.KI]) +p(A.aGF,A.ahc) +q(A.aGF,[A.n,A.L]) +p(A.amq,A.Lv) +p(A.n_,A.lQ) +p(A.MC,A.ajO) +p(A.n7,A.ajP) +q(A.n7,[A.oJ,A.Dv]) +p(A.a6M,A.MC) +p(A.i8,A.d8) +p(A.uR,A.amL) +q(A.uR,[A.aa_,A.a9Z,A.aa0,A.EH]) +q(A.qY,[A.JN,A.a2B]) +p(A.aj2,A.aoQ) +p(A.arg,A.acZ) +q(A.f2,[A.a6x,A.Vm,A.Vn,A.rc,A.Ue,A.Uf,A.alb,A.aez,A.Ng]) +p(A.Sb,A.Vm) +p(A.Sc,A.Vn) +p(A.adb,A.ao5) +p(A.Pw,A.UV) +p(A.Ur,A.apQ) +q(A.a5w,[A.Cj,A.lL,A.Sd,A.T5]) +q(A.IH,[A.Mu,A.Eo,A.i7]) +q(A.Mu,[A.iY,A.xZ,A.aoM,A.ak7]) +q(A.iY,[A.anB,A.Kq,A.G5,A.U7]) +p(A.lG,A.anC) +p(A.t8,A.e5) +q(A.ha,[A.KJ,A.un,A.og,A.KE,A.anW]) +q(A.NJ,[A.aiM,A.apf]) +p(A.Su,A.uN) +p(A.tt,A.og) +p(A.uv,A.SO) +p(A.Us,A.XB) +p(A.Ut,A.Us) +p(A.Uu,A.Ut) +p(A.Uv,A.Uu) +p(A.Uw,A.Uv) +p(A.Ux,A.Uw) +p(A.Uy,A.Ux) +p(A.ab_,A.Uy) +q(A.kk,[A.Rq,A.QZ,A.BX]) +p(A.afB,A.QJ) +p(A.QK,A.afB) +p(A.afC,A.QK) +p(A.afD,A.afC) +p(A.tq,A.afD) +p(A.Fb,A.a6l) +p(A.nI,A.Fb) +p(A.agh,A.agg) +p(A.eJ,A.agh) +q(A.eJ,[A.wU,A.R0]) +p(A.age,A.agd) +p(A.JW,A.age) +p(A.a17,A.wS) +p(A.agi,A.FS) +p(A.a19,A.agk) +p(A.fX,A.aoX) +p(A.pk,A.aoW) +p(A.ajX,A.a19) +p(A.aOu,A.ajX) +q(A.hy,[A.bo,A.q9]) +q(A.x0,[A.dy,A.adh]) +p(A.b2z,A.aS1) +p(A.lJ,A.oy) +p(A.Rj,A.aoy) +p(A.Ry,A.Vh) +p(A.Cp,A.ti) +p(A.ap3,A.ap2) +p(A.SL,A.ap3) +p(A.CD,A.hH) +q(A.oj,[A.qp,A.alv]) +p(A.ai7,A.aoH) +p(A.a_Y,A.aaq) +p(A.ic,A.qN) +q(A.vi,[A.Gl,A.Gk,A.S5,A.S6]) +p(A.S8,A.S7) +p(A.kt,A.S8) +q(A.akM,[A.aip,A.bke]) +q(A.fT,[A.agz,A.dh]) +p(A.S9,A.aoM) +p(A.ap6,A.ap5) +p(A.Gy,A.ap6) +p(A.D_,A.aiU) +p(A.H0,A.fD) +p(A.ap9,A.Vv) +p(A.vq,A.ap9) +q(A.j1,[A.vk,A.ve,A.ml]) +p(A.ap1,A.ap0) +p(A.vp,A.ap1) +p(A.R9,A.Vd) +p(A.TG,A.VE) +p(A.ue,A.Sd) +p(A.JR,A.ag7) +p(A.a5N,A.JR) +q(A.yE,[A.R2,A.D0,A.a6K,A.I8,A.IB,A.WC,A.a5r]) +p(A.a_V,A.aLG) +p(A.akN,A.apa) +q(A.dh,[A.lu,A.akK,A.akL]) +q(A.lu,[A.SX,A.N5]) +q(A.SX,[A.N4,A.yx]) +p(A.GC,A.Ha) +p(A.Xi,A.mj) +p(A.akR,A.Xi) +p(A.a7J,A.akR) +q(A.P3,[A.a7Q,A.aeg]) +q(A.a81,[A.tJ,A.aEN,A.ayX,A.Xo,A.a0r]) +p(A.GD,A.bP) +q(A.uJ,[A.kx,A.a8M]) +p(A.Ti,A.ape) +p(A.T7,A.lL) +p(A.jN,A.T7) +q(A.jN,[A.DV,A.kw,A.n0,A.oP,A.aaK]) +p(A.yD,A.T5) +q(A.a85,[A.J5,A.XJ]) +q(A.XJ,[A.xy,A.a1z,A.LZ,A.M_]) +p(A.Td,A.Tc) +p(A.DW,A.Td) +p(A.ain,A.a8b) +p(A.CQ,A.ain) +p(A.Ta,A.CQ) +p(A.pq,A.kp) +p(A.pr,A.kC) +p(A.Vz,A.apd) +p(A.alf,A.Vz) +p(A.alF,A.alE) +p(A.bj,A.alF) +p(A.zv,A.ao4) +p(A.alz,A.aly) +p(A.yQ,A.alz) +p(A.NH,A.alB) +p(A.apg,A.apf) +p(A.alG,A.apg) +p(A.SV,A.Vt) +p(A.kz,A.a8S) +q(A.kz,[A.m6,A.a8P,A.Ee,A.alK]) +p(A.Op,A.amx) +p(A.Os,A.amA) +p(A.Or,A.amz) +p(A.Ot,A.amB) +p(A.Oq,A.amy) +p(A.I0,A.PN) +q(A.I0,[A.oY,A.oZ]) +p(A.aa1,A.a9U) +q(A.a09,[A.wr,A.wt,A.ws,A.iU,A.qO]) +q(A.iU,[A.q_,A.q1,A.wK,A.wG,A.wH,A.l_,A.tu,A.q2,A.wI,A.wJ,A.q0]) +p(A.Tj,A.VB) +p(A.Th,A.VA) +p(A.IF,A.aea) +p(A.anX,A.za) +p(A.WF,A.KS) +p(A.F0,A.U8) +p(A.apP,A.apO) +p(A.anQ,A.apP) +p(A.ST,A.ap7) +p(A.af4,A.auc) +p(A.wq,A.af4) +q(A.l1,[A.kZ,A.of]) +p(A.aFg,A.aBw) +p(A.a1P,A.Ki) +q(A.fK,[A.WK,A.WL,A.WM,A.WN,A.WO,A.WP,A.WQ,A.HO,A.WS,A.HP]) +p(A.WR,A.HO) +q(A.HP,[A.WT,A.WU]) +p(A.hY,A.agC) +p(A.hZ,A.agB) +q(A.Eo,[A.apo,A.ajB]) +p(A.am9,A.apo) +q(A.hY,[A.zJ,A.Px,A.To,A.R_,A.Sf,A.ib,A.dz,A.cW,A.TM,A.mr,A.Gq]) +p(A.Uk,A.zJ) +q(A.hZ,[A.Ga,A.add,A.an5,A.agf,A.aiV,A.RU,A.afE,A.GQ,A.amt,A.amK,A.Sh]) +p(A.anM,A.Ga) +q(A.a1q,[A.YQ,A.YR,A.YS,A.YT,A.YU,A.YV,A.YW,A.YX,A.YY,A.YZ,A.Z_,A.Z0,A.Z1,A.IO,A.Z3,A.IP,A.IQ,A.Zw,A.Zx,A.Zy,A.Zz,A.ZA,A.IR,A.ZC,A.ZD,A.ZE,A.ZF,A.ZG,A.ZH,A.ZI,A.ZJ,A.ZK,A.ZL,A.ZM,A.ZN,A.ZO,A.ZP,A.ZQ,A.ZR,A.ZS,A.ZT,A.ZU,A.ZV,A.ZW,A.ZX,A.ZY,A.ZZ,A.a__,A.a_0,A.a_1,A.a_2,A.a_3,A.a_4,A.a_5,A.a_6,A.a_7,A.a_8,A.IS,A.a_a,A.a_b,A.a_c,A.a_d,A.a_e,A.a_f,A.IT,A.a_i,A.a_j,A.a_k,A.a_l,A.a_m,A.a_n,A.a_o,A.a_p,A.a_q,A.a_r,A.a_s,A.IU,A.a_w]) +p(A.Z2,A.IO) +q(A.IP,[A.Z4,A.Z5,A.Z6,A.Z7,A.Z8,A.Z9,A.Za,A.Zb]) +q(A.IQ,[A.Zc,A.Zd,A.Ze,A.Zf,A.Zg,A.Zh,A.Zi,A.Zj,A.Zk,A.Zl,A.Zm,A.Zn,A.Zo,A.Zp,A.Zq,A.Zr,A.Zs,A.Zt,A.Zu,A.Zv]) +p(A.ZB,A.IR) +p(A.a_9,A.IS) +q(A.IT,[A.a_g,A.a_h]) +q(A.IU,[A.a_t,A.IV]) +q(A.IV,[A.a_u,A.a_v]) +q(A.a1r,[A.a3a,A.a3b,A.a3c,A.a3d,A.a3e,A.a3f,A.a3g,A.a3h,A.a3i,A.a3j,A.a3k,A.a3l,A.a3m,A.Lb,A.a3o,A.Lc,A.Ld,A.a3R,A.a3S,A.a3T,A.a3U,A.a3V,A.Le,A.a3X,A.a3Y,A.a3Z,A.a4_,A.a40,A.a41,A.a42,A.a43,A.a44,A.a45,A.a46,A.a47,A.a48,A.a49,A.a4a,A.a4b,A.a4c,A.a4d,A.a4e,A.a4f,A.a4g,A.a4h,A.a4i,A.a4j,A.a4k,A.a4l,A.a4m,A.a4n,A.a4o,A.a4p,A.a4q,A.a4r,A.a4s,A.a4t,A.a4u,A.Lf,A.a4w,A.a4x,A.a4y,A.a4z,A.a4A,A.a4B,A.Lg,A.a4E,A.a4F,A.a4G,A.a4H,A.a4I,A.a4J,A.a4K,A.a4L,A.a4M,A.a4N,A.a4O,A.Lh,A.a4S]) +p(A.a3n,A.Lb) +q(A.Lc,[A.a3p,A.a3q,A.a3r,A.a3s,A.a3t,A.a3u,A.a3v,A.a3w]) +q(A.Ld,[A.a3x,A.a3y,A.a3z,A.a3A,A.a3B,A.a3C,A.a3D,A.a3E,A.a3F,A.a3G,A.a3H,A.a3I,A.a3J,A.a3K,A.a3L,A.a3M,A.a3N,A.a3O,A.a3P,A.a3Q]) +p(A.a3W,A.Le) +p(A.a4v,A.Lf) +q(A.Lg,[A.a4C,A.a4D]) +q(A.Lh,[A.a4P,A.Li]) +q(A.Li,[A.a4Q,A.a4R]) +q(A.a1t,[A.ab0,A.ab1,A.ab2,A.ab3,A.ab4,A.ab5,A.ab6,A.ab7,A.ab8,A.ab9,A.aba,A.abb,A.abc,A.P7,A.abe,A.P8,A.P9,A.abH,A.abI,A.abJ,A.abK,A.abL,A.Pa,A.abN,A.abO,A.abP,A.abQ,A.abR,A.abS,A.abT,A.abU,A.abV,A.abW,A.abX,A.abY,A.abZ,A.ac_,A.ac0,A.ac1,A.ac2,A.ac3,A.ac4,A.ac5,A.ac6,A.ac7,A.ac8,A.ac9,A.aca,A.acb,A.acc,A.acd,A.ace,A.acf,A.acg,A.ach,A.aci,A.acj,A.ack,A.Pb,A.acm,A.acn,A.aco,A.acp,A.acq,A.acr,A.Pc,A.acu,A.acv,A.acw,A.acx,A.acy,A.acz,A.acA,A.acB,A.acC,A.acD,A.acE,A.Pd,A.acI]) +p(A.abd,A.P7) +q(A.P8,[A.abf,A.abg,A.abh,A.abi,A.abj,A.abk,A.abl,A.abm]) +q(A.P9,[A.abn,A.abo,A.abp,A.abq,A.abr,A.abs,A.abt,A.abu,A.abv,A.abw,A.abx,A.aby,A.abz,A.abA,A.abB,A.abC,A.abD,A.abE,A.abF,A.abG]) +p(A.abM,A.Pa) +p(A.acl,A.Pb) +q(A.Pc,[A.acs,A.act]) +q(A.Pd,[A.acF,A.Pe]) +q(A.Pe,[A.acG,A.acH]) +p(A.we,A.YA) +p(A.aeh,A.IJ) +p(A.B1,A.i7) +p(A.aLL,A.a73) +p(A.aai,A.U1) +p(A.Kl,A.aM) +p(A.cQ,A.zj) +p(A.agw,A.DN) +p(A.Kd,A.agw) +p(A.b7e,A.a2d) +p(A.agu,A.a7Q) +p(A.agv,A.agu) +p(A.Kc,A.agv) +p(A.i_,A.fU) +p(A.oz,A.io) +p(A.aDU,A.a7P) +p(A.m_,A.akV) +q(A.m_,[A.ki,A.a8t]) +p(A.m5,A.a8t) +q(A.aQf,[A.a1w,A.a8u]) +p(A.Bb,A.dl) +p(A.Oc,A.Ob) +p(A.atp,A.ato) +p(A.XA,A.atq) +q(A.w1,[A.XH,A.Cr]) +p(A.aEM,A.aYY) +p(A.Rg,A.Rf) +p(A.Rh,A.Rg) +p(A.C0,A.Rh) +p(A.ahb,A.ah6) +q(A.we,[A.a1I,A.Ys,A.a0O,A.a25,A.qT,A.a99,A.a9a,A.a9d,A.a9f,A.a2D,A.a2E,A.a2F,A.a0k,A.a0i,A.Xy,A.a2X,A.a31,A.a32,A.a8T,A.Y5,A.a5b,A.a8z,A.aaD,A.uY,A.aaE,A.a6E,A.uL,A.a1x,A.Xn,A.a8w,A.a1j,A.a59,A.a6X,A.a6Q,A.a6R,A.a6S,A.a6U,A.a8o,A.Xe,A.a8n,A.a8p,A.WW,A.a9_,A.J1,A.a2V,A.a33]) +p(A.aow,A.B1) +p(A.agA,A.aow) +p(A.Ib,A.Xr) +q(A.z0,[A.AC,A.Ew]) +p(A.aPH,A.Xs) +q(A.asW,[A.DH,A.Er]) +p(A.Ij,A.cN) +p(A.WY,A.kx) +q(A.v9,[A.FC,A.FE,A.FD]) +p(A.aKw,A.aKv) +p(A.QU,A.Vb) +q(A.aL0,[A.aL1,A.aJ2]) +p(A.aG4,A.aWB) +q(A.aG4,[A.aM0,A.aZG,A.aZY]) +p(A.Sp,A.aMH) +p(A.bm,A.Sp) +q(A.bm,[A.pD,A.Eq,A.Uo,A.mn,A.oB,A.Rz]) +q(A.h2,[A.hO,A.mG]) +q(A.hO,[A.An,A.acS,A.acR,A.acP]) +p(A.PD,A.pD) +p(A.fm,A.PD) +q(A.aV,[A.hk,A.F8,A.fG,A.fb,A.eL]) +p(A.mB,A.hk) +q(A.mB,[A.eZ,A.Od]) +p(A.PC,A.eZ) +p(A.o_,A.PC) +p(A.vV,A.mG) +p(A.PJ,A.Eq) +p(A.HT,A.PJ) +p(A.PI,A.Od) +p(A.Ao,A.PI) +q(A.C,[A.fL,A.eY,A.eu]) +p(A.Gt,A.kv) +p(A.Sr,A.Sq) +p(A.n5,A.Sr) +p(A.rm,A.Vq) +p(A.zn,A.Uo) +p(A.PF,A.mn) +p(A.fM,A.PF) +p(A.h5,A.fG) +p(A.PE,A.h5) +p(A.lD,A.PE) +p(A.cd,A.Un) +p(A.aR,A.c5) +q(A.aR,[A.cH,A.acT,A.acU,A.acO,A.acQ]) +p(A.f_,A.oB) +p(A.PG,A.fb) +p(A.mC,A.PG) +p(A.iZ,A.Rz) +p(A.ev,A.iZ) +p(A.PH,A.eL) +p(A.iQ,A.PH) +p(A.I1,A.Ew) +q(A.K5,[A.GP,A.GO]) +p(A.aau,A.J5) +p(A.T8,A.Vx) +p(A.aaw,A.r4) +p(A.aav,A.uw) +q(A.aSP,[A.aJ3,A.aSN]) +p(A.alx,A.VC) +p(A.a0T,A.a98) +q(A.El,[A.FQ,A.a9p]) +p(A.Ek,A.a9q) +p(A.qU,A.a9p) +q(A.a9A,[A.a1B,A.aF3,A.bk8]) +p(A.a9E,A.Ek) +p(A.kO,A.acW) +p(A.hG,A.alo) +q(A.a1I,[A.Wt,A.XL,A.a0Q,A.BF,A.a1s,A.a9m,A.a96,A.a9e,A.a9h,A.a0t,A.XY,A.Y1,A.Bt,A.w9,A.a2G,A.a0g,A.a35,A.Bu,A.a34,A.a6V,A.YF,A.a8B,A.a6T,A.a6Z,A.aaF,A.a5c,A.a0h,A.a6F,A.a6O,A.a6P,A.X8,A.X9,A.a6W,A.a9J,A.B4,A.E2,A.E4,A.a8l,A.a8v]) +p(A.cw,A.afV) +p(A.bx,A.ag4) +p(A.UJ,A.Fj) +p(A.yV,A.alS) +q(A.fF,[A.UI,A.UL,A.UM,A.UG,A.UN,A.ry,A.UK,A.UH]) +p(A.UR,A.pd) +p(A.Cm,A.ahf) +p(A.ahe,A.Cm) +p(A.Fk,A.ahe) +p(A.iu,A.ahV) +p(A.aj,A.am1) +p(A.bV,A.alY) +p(A.US,A.Fl) +q(A.i9,[A.UF,A.UD,A.UT,A.UO,A.UQ,A.UE]) +q(A.cH,[A.afT,A.afU,A.yX,A.alU,A.alV,A.alT,A.ahx,A.aht,A.ahu,A.ahs,A.ahw,A.ahv,A.ahr,A.ahT,A.ahS,A.ahN,A.ahP,A.ahM,A.ajI,A.agx,A.alC,A.ajR,A.ah5,A.ajS,A.ajT,A.ajU,A.ajV,A.ajW,A.ami,A.anT,A.anU,A.aeB,A.aln,A.alm,A.alp,A.an3,A.adp,A.ahd,A.afs,A.anI]) +p(A.wL,A.afT) +p(A.wM,A.afU) +q(A.e7,[A.a9l,A.a6G,A.a9k,A.a95,A.Xt,A.a9c,A.Xv,A.a9g,A.XZ,A.Y_,A.Y0,A.a0j,A.a36,A.a3_,A.a0Z,A.a1n,A.a37,A.a2Z,A.a2Y,A.a2W,A.Y2,A.a6y,A.aah]) +q(A.fM,[A.O_,A.NX,A.HX,A.HZ,A.In,A.Ir]) +q(A.lD,[A.apl,A.apj,A.ao6,A.ao7,A.ao9,A.aoe]) +p(A.am0,A.apl) +q(A.ev,[A.Mv,A.NY,A.Il,A.Jo,A.L6,A.L2,A.JO,A.K9,A.Mq,A.OS]) +q(A.iQ,[A.aoT,A.apk,A.ao8,A.aok,A.aoE,A.aoD,A.aos,A.aov,A.aoS,A.apv]) +p(A.ajJ,A.aoT) +p(A.yY,A.alU) +p(A.yZ,A.alV) +p(A.am_,A.apk) +p(A.jQ,A.acT) +p(A.yW,A.alT) +p(A.alZ,A.apj) +p(A.adx,A.ao6) +q(A.f_,[A.NV,A.NW,A.Iq,A.L_]) +q(A.mC,[A.aph,A.api,A.aoa,A.aoB]) +p(A.alW,A.aph) +q(A.a1K,[A.a9b,A.a6Y,A.a6H,A.a89,A.X5,A.Xa,A.Bz,A.xM,A.qP,A.EK]) +p(A.jR,A.acU) +p(A.ady,A.ao7) +p(A.alX,A.api) +p(A.aQ,A.adT) +p(A.UB,A.Ff) +p(A.w8,A.An) +p(A.adQ,A.ao8) +p(A.kb,A.acO) +p(A.xv,A.ahx) +p(A.xr,A.aht) +p(A.xs,A.ahu) +p(A.xq,A.ahs) +p(A.xt,A.ahw) +p(A.xu,A.ahv) +p(A.xp,A.ahr) +p(A.adR,A.ao9) +p(A.adS,A.aoa) +q(A.vV,[A.wB,A.zm]) +p(A.aft,A.aok) +p(A.a5,A.adZ) +p(A.adV,A.a5) +p(A.Pk,A.adV) +p(A.kS,A.adW) +p(A.kc,A.adX) +p(A.UC,A.Fg) +p(A.hT,A.afv) +p(A.cC,A.afu) +p(A.a3,A.ahY) +p(A.L5,A.ahU) +p(A.UP,A.v2) +p(A.ahK,A.a3) +p(A.r7,A.ahK) +p(A.eO,A.anL) +p(A.anK,A.eO) +p(A.Ps,A.anK) +p(A.iv,A.acS) +p(A.it,A.acR) +p(A.jH,A.acQ) +p(A.xE,A.ahT) +p(A.xF,A.ahS) +p(A.xB,A.ahN) +p(A.xC,A.ahP) +p(A.xA,A.ahM) +p(A.is,A.acP) +p(A.ahW,A.aoE) +p(A.ahR,A.aoD) +p(A.ag6,A.aos) +p(A.agq,A.aov) +q(A.fm,[A.L8,A.L1,A.KZ]) +q(A.o_,[A.aoF,A.aoC,A.aoA]) +p(A.ahX,A.aoF) +p(A.ahQ,A.aoC) +p(A.ahO,A.aoB) +p(A.ahL,A.aoA) +p(A.adY,A.aoe) +p(A.yd,A.ajI) +p(A.ajC,A.aoS) +p(A.kR,A.adu) +p(A.adt,A.kR) +p(A.Fe,A.adt) +p(A.x1,A.agx) +p(A.yS,A.alC) +p(A.yg,A.ajR) +p(A.xf,A.ah5) +p(A.yh,A.ajS) +p(A.yi,A.ajT) +p(A.yj,A.ajU) +p(A.yk,A.ajV) +p(A.yl,A.ajW) +p(A.z1,A.ami) +p(A.zq,A.anT) +p(A.zp,A.anU) +p(A.wg,A.aeB) +p(A.yM,A.aln) +p(A.yN,A.alm) +p(A.yO,A.alp) +p(A.z9,A.an3) +p(A.vU,A.adp) +p(A.tX,A.ahd) +q(A.a8u,[A.Dq,A.E9]) +q(A.a1w,[A.C1,A.tZ,A.F6,A.Az,A.Bm,A.CP,A.j3,A.F5,A.tE,A.kA,A.Ei,A.Ad,A.i4,A.E7,A.Ct,A.Bs,A.E3,A.Dy,A.Al,A.BR,A.AA,A.At]) +p(A.an8,A.apv) +p(A.wA,A.afs) +p(A.zk,A.anI) +p(A.ah_,A.r2) +p(A.aat,A.ah_) +q(A.aZE,[A.aJ4,A.aZF]) +p(A.a4Z,A.aN0) +p(A.Ri,A.Bd) +s(A.af6,A.Yy) +s(A.afj,A.aQz) +s(A.afO,A.b23) +s(A.ahi,A.b4g) +s(A.ahj,A.b4h) +s(A.ahk,A.b4f) +r(A.aj_,A.Qx) +r(A.aj0,A.Qx) +s(A.aoI,A.anV) +s(A.aoR,A.anV) +s(A.F4,A.aaB) +s(A.UY,A.ac) +s(A.S_,A.ac) +s(A.S0,A.JQ) +s(A.S1,A.ac) +s(A.S2,A.JQ) +s(A.mg,A.PB) +s(A.pp,A.amn) +s(A.Tu,A.bg) +s(A.Tv,A.z) +s(A.Tw,A.m4) +s(A.Ud,A.H2) +s(A.aoz,A.b5N) +s(A.apN,A.oT) +s(A.aeD,A.awR) +s(A.afl,A.ac) +s(A.afm,A.bD) +s(A.afn,A.ac) +s(A.afo,A.bD) +s(A.afX,A.ac) +s(A.afY,A.bD) +s(A.agE,A.ac) +s(A.agF,A.bD) +s(A.aid,A.bg) +s(A.aie,A.bg) +s(A.aif,A.ac) +s(A.aig,A.bD) +s(A.aiz,A.ac) +s(A.aiA,A.bD) +s(A.aj3,A.ac) +s(A.aj4,A.bD) +s(A.akZ,A.bg) +s(A.Tr,A.ac) +s(A.Ts,A.bD) +s(A.am2,A.ac) +s(A.am3,A.bD) +s(A.ama,A.bg) +s(A.an_,A.ac) +s(A.an0,A.bD) +s(A.TX,A.ac) +s(A.TY,A.bD) +s(A.anc,A.ac) +s(A.and,A.bD) +s(A.aof,A.ac) +s(A.aog,A.bD) +s(A.aot,A.ac) +s(A.aou,A.bD) +s(A.aoK,A.ac) +s(A.aoL,A.bD) +s(A.apm,A.ac) +s(A.apn,A.bD) +s(A.app,A.ac) +s(A.apq,A.bD) +r(A.G7,A.ac) +s(A.ahm,A.ac) +s(A.ahn,A.bD) +s(A.aiJ,A.ac) +s(A.aiK,A.bD) +s(A.amd,A.ac) +s(A.ame,A.bD) +s(A.ani,A.ac) +s(A.anj,A.bD) +s(A.ado,A.bg) +s(A.afe,A.axA) +s(A.ah3,A.ah2) +s(A.adw,A.a5H) +s(A.akJ,A.a5H) +s(A.ai8,A.ay9) +s(A.ade,A.HG) +s(A.adf,A.vR) +s(A.adg,A.rV) +s(A.Qa,A.HH) +s(A.Qb,A.vR) +s(A.Qc,A.rV) +s(A.aeU,A.rW) +s(A.ajF,A.HH) +s(A.ajG,A.vR) +s(A.ajH,A.rV) +s(A.akO,A.HH) +s(A.akP,A.rV) +s(A.ane,A.HG) +s(A.anf,A.vR) +s(A.ang,A.rV) +s(A.UU,A.rW) +r(A.V1,A.fC) +r(A.V2,A.fC) +r(A.V3,A.dG) +s(A.aoh,A.ET) +s(A.aeI,A.aI) +s(A.aoi,A.nk) +s(A.aeJ,A.aI) +r(A.V6,A.fC) +r(A.H7,A.dG) +s(A.V4,A.ET) +r(A.Vo,A.IY) +r(A.V5,A.dG) +s(A.aeN,A.nk) +r(A.V7,A.dG) +r(A.Vs,A.aq) +s(A.aoZ,A.dR) +s(A.aeQ,A.aI) +s(A.aeS,A.aI) +s(A.agc,A.o7) +s(A.agb,A.aI) +s(A.afc,A.aI) +s(A.aj5,A.fW) +s(A.aj6,A.aek) +s(A.aj7,A.fW) +s(A.aj8,A.ael) +s(A.aj9,A.fW) +s(A.aja,A.aem) +s(A.ajb,A.fW) +s(A.ajc,A.aen) +s(A.ajd,A.aI) +s(A.aje,A.fW) +s(A.ajf,A.aeo) +s(A.ajg,A.fW) +s(A.ajh,A.aep) +s(A.aji,A.fW) +s(A.ajj,A.aeq) +s(A.ajk,A.fW) +s(A.ajl,A.aer) +s(A.ajm,A.fW) +s(A.ajn,A.aes) +s(A.ajo,A.fW) +s(A.ajp,A.aet) +s(A.ajq,A.fW) +s(A.ajr,A.aeu) +s(A.ajs,A.fW) +s(A.ajt,A.aev) +s(A.aju,A.fW) +s(A.ajv,A.aew) +s(A.ajw,A.fW) +s(A.ajx,A.aex) +s(A.ajy,A.fW) +s(A.ajz,A.aey) +s(A.apw,A.aek) +s(A.apx,A.ael) +s(A.apy,A.aem) +s(A.apz,A.aen) +s(A.apA,A.aI) +s(A.apB,A.fW) +s(A.apC,A.aeo) +s(A.apD,A.aep) +s(A.apE,A.aeq) +s(A.apF,A.aer) +s(A.apG,A.aes) +s(A.apH,A.aet) +s(A.apI,A.aeu) +s(A.apJ,A.aev) +s(A.apK,A.aew) +s(A.apL,A.aex) +s(A.apM,A.aey) +s(A.ago,A.o7) +s(A.ad_,A.aI) +s(A.adi,A.aI) +s(A.adv,A.aI) +s(A.ai_,A.aI) +s(A.adD,A.aI) +s(A.adE,A.aI) +s(A.adG,A.aI) +s(A.aoV,A.Ll) +s(A.adK,A.aI) +s(A.adM,A.aI) +r(A.UX,A.dG) +s(A.adN,A.aI) +s(A.adP,A.aI) +r(A.UZ,A.dG) +r(A.V_,A.zd) +s(A.ae2,A.aI) +s(A.aoU,A.Ll) +r(A.Vr,A.dG) +r(A.aoY,A.m7) +s(A.ae8,A.aI) +s(A.aec,A.aI) +s(A.aeX,A.aI) +s(A.aeZ,A.aI) +s(A.aoj,A.nk) +s(A.afd,A.aI) +s(A.afi,A.aI) +r(A.QD,A.fC) +s(A.afx,A.aI) +s(A.V9,A.hj) +s(A.afA,A.aI) +s(A.aom,A.aI) +s(A.aon,A.aI) +s(A.aoo,A.aI) +s(A.aop,A.aI) +s(A.afL,A.aI) +r(A.Va,A.fC) +s(A.afR,A.aI) +s(A.ag1,A.aI) +s(A.aob,A.aBb) +s(A.aoc,A.a0R) +s(A.aoq,A.aBc) +s(A.aor,A.a0R) +s(A.ag9,A.aI) +s(A.aox,A.aI) +s(A.agL,A.aI) +r(A.Vf,A.vW) +s(A.agW,A.aI) +r(A.UW,A.dG) +r(A.Ve,A.fC) +r(A.Vg,A.dG) +r(A.ap_,A.m7) +r(A.ap4,A.m7) +s(A.ahF,A.aI) +r(A.aoG,A.dG) +s(A.ai9,A.aI) +s(A.aib,A.aI) +s(A.aic,A.aI) +r(A.Vy,A.fC) +s(A.ait,A.aI) +s(A.aiw,A.aI) +r(A.Vl,A.dG) +s(A.aix,A.aI) +s(A.aoN,A.aI) +s(A.aoO,A.aI) +s(A.aoP,A.aI) +s(A.aiQ,A.aI) +s(A.Vp,A.Lk) +s(A.aiX,A.aI) +r(A.VG,A.H6) +r(A.VH,A.H6) +s(A.ajA,A.aI) +r(A.V0,A.fC) +r(A.Vi,A.fC) +s(A.ajD,A.aI) +r(A.H8,A.dG) +r(A.H9,A.zd) +s(A.ajM,A.aI) +r(A.Sy,A.dG) +r(A.T1,A.dG) +r(A.T2,A.dG) +r(A.T3,A.lZ) +r(A.Vc,A.dG) +s(A.al7,A.aI) +s(A.al8,A.aI) +s(A.al9,A.aI) +s(A.ala,A.aI) +r(A.Vu,A.ut) +r(A.Vw,A.ut) +r(A.VD,A.dG) +s(A.akU,A.asX) +s(A.alI,A.aI) +s(A.alR,A.aI) +r(A.Vj,A.dG) +r(A.Vk,A.zd) +s(A.apr,A.amj) +s(A.aps,A.amj) +s(A.amm,A.aI) +s(A.ams,A.aI) +r(A.V8,A.fC) +s(A.aod,A.rW) +s(A.aol,A.rW) +s(A.apt,A.aI) +s(A.amH,A.aI) +r(A.VF,A.lZ) +s(A.ai6,A.nk) +s(A.amP,A.aI) +r(A.ap8,A.aq) +r(A.apu,A.dG) +s(A.amZ,A.aI) +s(A.an2,A.aI) +s(A.anS,A.aI) +s(A.an6,A.aI) +s(A.an9,A.aI) +r(A.U3,A.fC) +s(A.anb,A.aI) +s(A.anA,A.aI) +s(A.adC,A.aI) +s(A.af2,A.aI) +s(A.agN,A.aI) +s(A.agP,A.aI) +s(A.agO,A.aI) +s(A.amf,A.aI) +s(A.amY,A.aI) +r(A.Qe,A.fa) +r(A.SD,A.aq) +s(A.akf,A.dR) +r(A.SF,A.ut) +r(A.SG,A.aq) +s(A.akh,A.a7g) +r(A.akj,A.aq) +s(A.akk,A.dR) +r(A.SH,A.axb) +s(A.ahh,A.o7) +r(A.akl,A.aq) +s(A.akm,A.dR) +s(A.aoJ,A.aI) +s(A.akq,A.o7) +r(A.SP,A.aq) +s(A.akr,A.a7g) +r(A.aks,A.ut) +r(A.TT,A.fa) +s(A.apb,A.hF) +s(A.apc,A.im) +r(A.ak9,A.MJ) +r(A.SR,A.b1) +r(A.SS,A.iw) +r(A.SU,A.b1) +r(A.akz,A.b1) +s(A.akA,A.a7x) +s(A.alM,A.aI) +r(A.alN,A.fa) +r(A.alQ,A.fa) +r(A.SW,A.aq) +s(A.akx,A.a7x) +s(A.aky,A.aPw) +r(A.alO,A.fa) +s(A.alP,A.mS) +r(A.akv,A.b1) +r(A.akB,A.aq) +s(A.akC,A.dR) +r(A.akF,A.b1) +r(A.k2,A.aq) +r(A.akH,A.aq) +s(A.akI,A.dR) +s(A.alh,A.aI) +s(A.alk,A.o7) +s(A.all,A.aI) +s(A.aha,A.aI) +s(A.ahc,A.aI) +s(A.aik,A.aI) +s(A.ajP,A.aI) +s(A.ajO,A.aI) +s(A.amL,A.aI) +s(A.aoQ,A.OE) +s(A.ad0,A.aI) +s(A.acZ,A.aI) +s(A.ah0,A.aI) +r(A.Vm,A.Gp) +r(A.Vn,A.Gp) +r(A.ao5,A.fC) +r(A.UV,A.dG) +s(A.apQ,A.hj) +r(A.SO,A.aPR) +r(A.Us,A.BT) +r(A.Ut,A.i6) +r(A.Uu,A.E5) +r(A.Uv,A.M3) +r(A.Uw,A.a8f) +r(A.Ux,A.DG) +r(A.Uy,A.P6) +r(A.QJ,A.vW) +s(A.afB,A.hj) +r(A.QK,A.dG) +s(A.afC,A.aY3) +s(A.afD,A.aXr) +s(A.agd,A.o7) +s(A.age,A.im) +s(A.agg,A.o7) +s(A.agh,A.im) +s(A.agk,A.aI) +r(A.ajX,A.axT) +s(A.aoW,A.aI) +s(A.aoX,A.aI) +r(A.FU,A.lZ) +s(A.am7,A.aI) +s(A.agM,A.aI) +s(A.aoy,A.hj) +r(A.G4,A.fC) +r(A.Vh,A.dG) +r(A.ap2,A.b1) +s(A.ap3,A.lk) +s(A.aoH,A.hj) +r(A.S7,A.dG) +r(A.S8,A.lZ) +s(A.aoM,A.LO) +r(A.ap5,A.aq) +s(A.ap6,A.dR) +r(A.aiU,A.dG) +s(A.ap0,A.zS) +s(A.ap1,A.j1) +r(A.Vv,A.aq) +s(A.ap9,A.zS) +r(A.Sd,A.k0) +r(A.Vd,A.dG) +r(A.VE,A.dG) +r(A.apa,A.lZ) +s(A.akR,A.hj) +r(A.Ha,A.lZ) +r(A.Gi,A.a2O) +r(A.ape,A.vW) +s(A.ag7,A.m1) +r(A.T7,A.k0) +r(A.T5,A.k0) +s(A.al4,A.m1) +r(A.Tc,A.dG) +r(A.Td,A.lZ) +r(A.Gv,A.dG) +s(A.ain,A.im) +s(A.apd,A.hF) +r(A.Vz,A.a8e) +s(A.aly,A.aI) +s(A.alz,A.im) +s(A.alB,A.im) +s(A.alE,A.aI) +s(A.alF,A.aJ1) +s(A.ao4,A.aI) +r(A.Vt,A.b1) +s(A.apf,A.LO) +s(A.apg,A.aaX) +r(A.Tq,A.iz) +r(A.PN,A.TO) +s(A.amx,A.aI) +s(A.amy,A.aI) +s(A.amz,A.aI) +s(A.amA,A.aI) +s(A.amB,A.aI) +s(A.aea,A.hj) +r(A.VA,A.fC) +r(A.VB,A.fC) +s(A.U8,A.aZ1) +s(A.apO,A.LO) +s(A.apP,A.aaX) +r(A.ap7,A.b1) +s(A.af4,A.aFr) +s(A.agC,A.aI) +s(A.agB,A.aI) +r(A.apo,A.a1J) +r(A.U1,A.fC) +s(A.agw,A.im) +s(A.agu,A.hj) +s(A.agv,A.im) +s(A.akV,A.aI) +s(A.Rf,A.a1G) +s(A.Rg,A.ac) +s(A.Rh,A.a0_) +r(A.aow,A.a1J) +r(A.Vb,A.fC) +r(A.hk,A.bY) +r(A.PC,A.da) +s(A.PD,A.Am) +r(A.PI,A.da) +s(A.PJ,A.Am) +s(A.Sp,A.bp) +s(A.Sq,A.bp) +s(A.Sr,A.WB) +s(A.Uo,A.WA) +s(A.Vq,A.bp) +s(A.PF,A.Am) +r(A.PE,A.da) +r(A.fG,A.bY) +r(A.PG,A.da) +r(A.PH,A.da) +s(A.Rz,A.eo) +r(A.Vx,A.dG) +r(A.VC,A.fC) +s(A.acW,A.b_u) +s(A.alo,A.b_I) +s(A.afV,A.b_C) +s(A.ag4,A.b_D) +s(A.alS,A.b_J) +s(A.ahf,A.b_E) +s(A.ahV,A.b_H) +s(A.am1,A.b_K) +s(A.alY,A.b_L) +s(A.afT,A.b_) +s(A.afU,A.En) +s(A.aoT,A.Mw) +s(A.apl,A.O0) +s(A.alU,A.b_) +s(A.alV,A.b_) +s(A.apk,A.NZ) +s(A.alT,A.ey) +s(A.ao6,A.HY) +s(A.aph,A.aUk) +s(A.apj,A.O1) +s(A.ao7,A.I_) +s(A.api,A.aV4) +s(A.adT,A.b_w) +s(A.ao8,A.Im) +s(A.ahr,A.ey) +s(A.ahs,A.b_) +s(A.aht,A.b_) +s(A.ahu,A.b_) +s(A.ahw,A.ey) +s(A.ahv,A.b_) +s(A.ahx,A.En) +s(A.ao9,A.Ip) +s(A.aoa,A.auU) +s(A.aok,A.Jp) +s(A.adZ,A.b_x) +s(A.adW,A.b_y) +s(A.adX,A.b_z) +s(A.afv,A.b_A) +s(A.afu,A.b_B) +s(A.ahY,A.b_F) +s(A.ahU,A.b_G) +s(A.anL,A.b_M) +s(A.ahM,A.b_) +s(A.ahN,A.b_) +s(A.ahP,A.b_) +s(A.ahT,A.ey) +s(A.ahS,A.b_) +s(A.aos,A.JP) +s(A.aov,A.Ka) +s(A.aoA,A.aHz) +s(A.aoB,A.aHD) +s(A.aoC,A.aHI) +s(A.aoD,A.L3) +s(A.aoE,A.L7) +s(A.aoF,A.aIk) +s(A.aoe,A.Is) +s(A.ajI,A.En) +s(A.aoS,A.Mr) +s(A.adu,A.b_v) +s(A.agx,A.b_) +s(A.alC,A.b_) +s(A.ajR,A.b_) +s(A.ah5,A.b_) +s(A.ajS,A.b_) +s(A.ajT,A.ey) +s(A.ajU,A.ey) +s(A.ajV,A.b_) +s(A.ajW,A.b_) +s(A.ami,A.b_) +s(A.anT,A.b_) +s(A.anU,A.b_) +s(A.aeB,A.b_) +s(A.aln,A.b_) +s(A.alm,A.b_) +s(A.alp,A.b_) +s(A.an3,A.ey) +s(A.adp,A.ey) +s(A.ahd,A.b_) +s(A.apv,A.OT) +s(A.afs,A.b_) +s(A.anI,A.b_)})() +var v={typeUniverse:{eC:new Map(),tR:{},eT:{},tPV:{},sEA:[]},mangledGlobalNames:{m:"int",Y:"double",d9:"num",f:"String",p:"bool",aE:"Null",e:"List"},mangledNames:{},types:["~()","Y(Y)","U<~>()","~(j)","M(bz)","aE()","~(bk)","~(p)","n2()","~(nV)","p(f)","~(B?)","d(E)","~(B,cz)","f()","~(D5,l)","p(pG,l)","p()","~(oc)","f(f)","aE(~)","Y(N)","~(bG)","aE(B,cz)","~(H)","~(f)","p(a5)","M?(bz)","J(bz)","aE(@)","~(jx)","~(@)","aE(j)","d(E,m)","~(c3)","~(p?)","U<@>()","~(f,@)","~(m)","f(@)","~(ED)","~(ob)","e()","~(f?)","p(bG)","p(eJ)","~(Y)","p(jN)","~(dK?)","p(B?)","aO(@)","d(E,d?)","U()","~(~())","p(oh)","@(@)","p(m)","~(aX)","~(@,@)","~(wZ)","oW(bz)","0^(0^)","m(eJ,eJ)","~(fT,~())","~(uk)","p(al)","~(qB)","~(ll,yu)","f(Y)","U<@>(ov)","~(CB)","m(B?)","Bz(E)","a3(@)","m()","f(E)","m(bkm)","~(uQ)","~(uj)","Y(N,Y)","Y()","~(aV)","~()()","~(f,f)","p(iY)","~(B?,B?)","a6(a3)","p(@)","U>()","b9(bz)","m(m)","~(E)","dS()","kD()","bN?(cp?)","p(ic)","~(hF)","~(KY)","aE(lg)","@(f)","dW()","p(kl)","Y(V)","U?>()","e>(E)","pM(E)","~(oy)","m(@,@)","dk(@)","~(V)","dW(f)","M(M)","e>()","V(N,aL)","~(Os)","f?()","e()","I()","m(f)","Bu(E)","aE(@,@)","j()","m(H,H)","B?(B?)","~(CA)","Y(Y,Y)","d(E)?(Ae?)","aM(E)","f(av)","~(Op)","U

()","aE(p)","f(xJ)","dY(bz)","~(lg)","na(d)","~([bB?])","p(jf)","bN?(cp?)","p(ko)","bu(E,d?)","p(a0n)","Ee(m,uJ)","d(E,d,m?,p)","p(yD)","Y(bz)","~(B?{seamless:p})","~(cd)","p(kn)","I()?(N)","U<~>(B?)","dl()","no()","f(dW)","Af(E)","aU(f,@)","~(hv,wE)","~(fB<@>,yw)","~(no)","U>()","~(e)","p(B?,B?)","e(e)","e()","~(kj)","x6(E)","p(e0)","C>>(bM>>>)","U()","~(a5)","qm(f)","p(wW)","m(m,m)","hf(hf)","bz<0^>()","~([U<~>?])","U<@>(@)","~({curve:ju,descendant:H?,duration:bk,rect:I?})","~(B[cz?])","d(E,tq)","m(e0,e0)","~(j8)","~(e)","~(uK)","e(nJ)","p(pG)","k1(nd)","U(dK?)","U<~>(ov)","~(fp)","a6()","j([j?])","ma()","~(jC)","~(x_)","p(aya)","~([bk?])","bR(bR,p,kD)","xb()","~(OQ)","p(m,m)","~(l5,p)","m(fX,fX)","kC()","~(kC)","kp()","~(kp)","mO()","~(mO)","n1()","~(n1)","mN()","V()","d(E,bQ,C_,E,E)","aO<@>?(aO<@>?,@,aO<@>(@))","~(i8,m3?)","vv(E,bQ,d?)","~(N?)","AL(e)","~(tA)","k_(c3)","ko()","kV(E)","p(hF,Y)","~(pT)","rp(E)","e()","~(Or)","~(Ot)","~(Oq)","p(ml)","bN?(cp?)","eq/(f?)","m_(fU)","U<~>(p)","p(fU)","eq(eq)","~(jx{isClosing:p?})","f?/(E,bl)","~(v_)","~(yL)","m(d,m)","tV(eJ,n7)","v3(E,d(E,m),m,d(E))","kz(E,d(E,m),m,d(E))","Y(zN)","aE(B?)","aE(B)","fV()","~([uQ?])","~([~])","M?(M?)","kn(kn,kn)","B()","~(df)","p3?(m)","m(dW)","f(d6)","f(f,f)","hB?(hw,f,hB?)","aE(lq?)","p(f,f)","aj(@)","iu?(@)","bx(@)","f(f,B?)","~(mN)","~(f,e)","U(df)","~(hs)","a6>(a6>)","Ez(E,m)","U()","e(e)","e(e?)","qT(E,m)","B(B,cz)","z()","e?()","~(bx)","f(el)","d(E,B,cz?)","~(B)","aQ(@)","rb()","d(e?)","Bt(E)","U(yf)","p(a3)","zP(B?)","~(yf)","aE(df)","U<~>([p])","p(oA)","p(br)","pM(E,f,kZ)","hD(E)","f(eT)","U<~>(eT)","hD(E)","f(fc)","U<~>(fc)","cj(aj)","~(df,f,m)","U<~>(Y)","f?(f?)","Ec(E,bQ,bQ,d)","~([B?])","@()","aE(aX)","U()","p(cv,f,f,G2)","d(E,bQ,bQ,d)","~([U<@>?])","p(f?)","~(f,f?)","~(aU)","dS(f)","f(m)","vw(E,bQ,d?)","~(l5?,p)","aU>(f,f)","m(ud)","qv?(fV)","cS(E,d?)","~(Y,Y)","m(uf,uf)","p(ue)","qp(E,aL)","dP(E)","d(E,~(~()))","pB(E,d?)","e5(E,d?)","@(@)(~(ll,yu))","p(bz)","m(vn,vn)","@(@)(~(fB<@>,yw))","@(B)(~(hv,wE))","U<@>(B)","fn()","~(nA)","M?()","uX()","AZ(E)","bQ(p)","~(e,ma,Y)","hy>(d)","t8(m)","xd(E,d?)","zi(l2)","z8(@)","mc()","aU>(B,p0<@>)","p(aU>)","J()","dJ()","Ay()","ff()","U(df{allowUpscaling:p,cacheHeight:m?,cacheWidth:m?})","U(tM{allowUpscaling:p,cacheHeight:m?,cacheWidth:m?})","U(tM{getTargetSize:bKA(m,m)?})","eI(eI,dp)","dp(dp)","f(dp)","~(fB<@>)","p(Y)","M(Y)","Gb()","0&(hv)","U<~>(B,cz?)","@(@,f)","aE(arM)","U(f,a6)","~(B,cz?)?(kj)","~(jC)?(kj)","aE(f,B?)","D4(c8)","I(c8)","D6(c8)","p(m,p)","aU(aU)","nj()","U<@>(aU)","l()","u1(u1)","~(bjH)","qc(l,m)","f(Y,Y,f)","Y?()","~(i8)","p(qh)","I(I?,hf)","aU>(f,e)","dY(ow)","~(ow,bS)","p(ow)","aE(~())","~(e{isMergeUp:p})","bA>()","~(j,j)","~(ro)","p(ro)","~(df,dL)","p(Eg{crossAxisPosition!Y,mainAxisPosition!Y})","U<~>(hv)","~(B?,f)","p(N)","p(d7)","aE(f)","~(m,FW)","~(E0)","~(e0)","aE(@,cz)","e0(ru)","~(Og,a6,e)","hw?(hw,p)","m(e0)","e0(m)","~(ne)","~(eU,~(B?))","dK(dK?)","rX(a6)","bA()","U(f?)","Dz?(hw,p)","U<~>(dK?,~(dK?))","U>(@)","~(n7)","l0()","U(dK?)","MC()","~(l0)","l0(l0)","~(m,@)","e()","e(e)","Y(d9)","e<@>(f)","e(yK)","~(hB)","hB?(hw,f,hB?,m,m)","~(c7)","a8<@>?()","~(v6)","d(v6)","p(d)","dc<@>?(jM)","dc<@>(jM)","ER(E)","p(Cj)","~(hV,df?,f?,bA>?)","AS(E)","U<~>(@)","tm(E)","yo?(XP,f,f)","I(aya)","~(h7)","U(f)","zb({from:Y?})","~(Fo)","~(uU)","~(n8)","~(qO)","~(hE)","~(aAS)","~(me)","B?(kf)","eN(eN,qY)","~(kU)","U<~>(ug)","~(eN)","p(eN?,eN)","wc(E,iE)","p(l4)","p/()","p(KH)","~(FT)","p(FF)","f(B?)","p(zh)","bz(fX)","f(f,M)","e(E)","I(fX)","m(pk,pk)","e(fX,z)","p(fX)","p(l2<@>)","hu(bG)","bG?(bG)","B?(m,bG?)","a8<@>(@)","aE(e,j)","mL()","~(mL)","qb(E)","d(E,f?,d?)","f?(f)","~(m,p(oh))","~(@,cz)","~(V?)","nb()","~(nb)","~(e,j)","~(z)","~(qD)","~(qK)","~(i7,B)","un(E,d?)","~(rj)","zy()","p(rj)","qp(E,d?)","x8(E)","~(B,cz?)","U<~>(~)","wC(@)","p_(@)","w_(@)","~(Nc)","~(Nd)","~(DR)","~(df,m,m)","U<@>(Gr)","a6(e<@>)","a6(a6)","aE(a6)","aE(E,xz,ec)","~(qN?,p)","p(dc<@>?)","p(qt)","aE(iD)","Gs()","ic(dc<@>)","~(Oj,@)","aU>(@,@)","N?()","zR()","N(m)","~(aL)","AV(E,d?)","r4(E,iE)","aE(fp?)","~(fT)","ct

(p)","U

(p)","kU(ta)","ux(E,d?)","pB(E)","C2(E,d?)","x5(c3)","CC(c3)","a6(a6,f)","~(f,m)","fV?()","d(E,iE)","p(kw)","aE(e<~>)","~(f,m?)","~(f,B?)","p(m1?)","pq()","~(pq)","BB(f)","pr()","~(pr)","~(qC)","m(hF,hF)","I(I)","p(I)","p(hF)","~(Eb,bB)","e()","B?()","GJ(E,iE)","~(N)","bG?()","~(m,m,m)","df(@,@)","f(eS)","FY()","~(Mj)","oY()","~(oY)","oZ()","~(oZ)","~(uW)","~(us)","qa(p)","p(l1)","aua(p)","U(lE?)","e(e)","Y?(m)","ct()","ct()","~(f,Ba)","ct()","kv()","U<~>(f,dK?,~(dK?)?)","f5<~>({arguments!B?,child!d,key!jG,name!f?,restorationId!f})","BX(E)","p(hy,lJ)","p(Oi,kU)","lJ()","d(e?,f?{requestFocus:p})","CK(E,bl)","B5(E,bl)","BC(E,bl)","p(dc<@>,@)","e()","eq/(eq)","p(oG)","f?/(f?)","f(eq)","p(dc,B?,fU?)","fW?(oG)","e()","~(Cy)","0&(E,bl)","~(GX)","p(aU)","m(aU)","a6(i_)","a6<~(c3),bS?>()","~(~(c3),bS?)","d(E,bl)","f5<~>(E,bl)","od(oE)","d(E,bl,d)","f5<~>(E,bl,d)","tO(E,d)","p(f5,bl)","U<+(f,hX?)>()","B?(o6)","@(o6)","U(avW)","Ln()","~(~(le))","zz()","hX?()","CU(E)","CV(E)","v3(E,d(E,m),m,d(E)?)","~(br,br?)","@(@,@)","kz(E,d(E,m),m,d(E)?)","tj(ht)","dl(m,m,m,m,m,m,m,p)","FE(f,h4)","FD(f,h4)","FC(f,h4)","f?(uc)","f(uc)","Cz()","Be(ht)","d(E,d,jC?)","f(f?)","B(f)","wj(ht)","iA()","CL(I?,I?)","~(e9)","~(fq)","~(Dn)","rs()","~({origin!bm,override!bm})","d(E,~())","cv(br)","p(dW)","~(jN)","Cx(E,aL)","U<~>(bk)","Y(rd)","~(cv)","GI(E,d?)","~(oE)","m(nD)","~(mT)","B(nD)","B(jf)","m(jf,jf)","e(aU>)","qU()","~(u0,m)","il()","dS(dS)","p(dS)","e(dS)","m(dS)","~(oU)","f(dS)","~(f,j)","0^?(0^?(cp?))","dW(f,f)","m(p)","p(ox)","0^?(bN<0^>?(cp?))","U?>()","U>({cancelToken:hP?})","kO?(@)","hG(@)","U?>()","lq?(a6?)","aE(C?>)","aE(e?)","p(hG)","hG()","~(Bw?,EI?)","bN?(cp?)","cw(@)","U(yf,m)","bN?(cp?)","aE(m)","bV(@)","e?()","a6(bx)","bN?(cp?)","bN?(cp?)","dY?(bz)","hy>()","we(E)","dY?(cp?)","U(m)","a6>(e?)","M?(cp?)","aU>(f,e)","p(cw)","BF(E,m)","U?>()","d(a6>)","r5?(cp?)","B?(C<~>)","xK?(cp?)","xV(@)","e<+mangaList,source(C>,aj)>(a6>?)","U>(eD>)","C>,aj)>>(bM>,aj)>>>)","a4(e<+mangaList,source(C>,aj)>)","d(e)","bk?(cp?)","e()","a6>(e?)","p?(cp?)","a6>(a6>)","z(e)","p(aj)","e?(bM?>)","U?>()","d(a6>?)","vQ?(cp?)","m(f,f)","e?(e?)","aj?/(eD)","U?>(eD?>)","jQ()","B?(C)","aE(iu?)","Ca?(cp?)","~(e?)","na(aj?)","uM(E)","df(B?)","KC(@)","pU(m)","~(m?)","xj<@>(@)","hD(E)","xc(E,d?)","U<~>(el)","U?>(a3)","wP(E,m)","l(V,Y)","d(E,bQ,bQ)","qo(E,a3,m)","DO(E)","mU(E,a3,m)","U?>(eD?>)","jR()","xy(e?)","~(bV)","hD(E)","xM(E)","~(e)","EK(E)","qj(@)","~(al)","p(aQ)","e?(bM?>)","~(rU)","~(t3)","U<~>(aQ)","~(aQ)","d(e?)","mU(E,m)","aG(d)","qo(E,m)","CG(E,m)","Y(@)","m(a3,a3)","fL?>(fL?>)","eu?>(eu?>)","eY?>(eY?>)","U?>(eD?>)","kb()","z3(aQ)","U<~>([j?])","Cs(E)","uY(E)","aQ?()","w9(aQ)","~(el)","U(@)","hT(f)","cC?(a6)","C(C)","f?(hT)","p(cC)","cC?(bM)","a3?(@)","a5?(@)","a5(@)","kc?(@)","eO?(@)","U(@)","eO(f)","kS(@)","a6(kS)","cC(@)","a6(cC)","a4(f?)","p(M?)","U()","U?>()","aE(e?)","b9?(bz)","m(a5,a5)","e(e?)","a6(e?)","bz(bM>)","C?>(bM?>>)","a5?(bM)","+first,second(a5?,a5?)?(bM<+first,second(a5?,a5?)?>)","iv()","it()","jH()","is()","~(e)","U([@])","na(a3?)","xD(E)","d(e?)","a4(E,m)","d(E,jC?)","ew(e?)","wb(a6?)","AM(f)","b8(f)","aG(e?)","wa(E,m)","iy(d)","a5?/(eD)","U(m)","U<~>(m)","U<~>(j,j)","d(a3?)","d(a5?)","xg()","a2c()","ez(E,m)","t8(E,f,kZ)","ez(d)","wq()","p(E)","~(e,j)","p(tP?)","M(vb)","V(j)","wY(@)","BM(@)","~(qa)","~(lV)","~(lS)","aE(n4)","~(mZ)","aE(tH)","~(qE)","~(qz)","U()","B?(C)","aE(kc?)","p?(C)","d(E,kS,m)","U([p])","yn(eO?)","mU(a3)","aE(~(hs))","e?(a3{category:aQ?,query:f?})","cj(a5)","e?(f)","cj(a3)","cj(aQ)","e?(bM?>)","i8()","yH(cj)","qm(f,f?,f)","uL(aj)","uL(aj,f)","lF(aQ)","lF(aQ,a3)","lF(aQ?,a3,a5)","ez(aj?,a3)","ez(aj?,a3,a5)","ez()","aE(uI)","aE(tG)","kR?(@)","er(@)","U()","~(kR?)","As(E)","M?(M?,M?,M?[M?])","hD(E)","~(d6)","xx(E)","B4(E)","hD


(E)","f(hr)","~(hr)","P?(E,xz,ec)","E2(E)","E4(E)","hD(E)","f(hg)","U<~>(hg)","a6(d6)","d6?(@)","p(lL)","~(m,m)","d(B,cz)","d()","er(bM)","Ey()","CH(E,bQ,bQ)","d(E,f,kZ)","d(E,f,@)","CS(ox)","xR(ox)","p(p?)","uG(@)","~(u9)","aE(td)","U<@>([m?,f?])","~(nW)","zM(E,bQ)","~(B?[B?])","f(B?{toEncodable:B?(B?)?})","@(f{reviver:B?(B?,B?)?})","m(f{onError:m(f)?,radix:m?})","m(cu<@>,cu<@>)","f(f{encoding:mM})","e()","e(f,e)","uN(E)","B?(@)","0^(0^,0^)","V?(V?,V?,Y)","Y?(d9?,d9?,Y)","M?(M?,M?,Y)","p(m?)","f(ll)","~(f,q3)","ur(I?,I?)","d(E,V,d)","d(E,l,p,d)","~(cc{forceReport:p})","ni?(f)","Y(Y,Y,Y)","b8(E)","p?(p?,p?,Y)","p1(E,d?)","d(E,d)","fS?(fS?,fS?,Y)","eI?(eI?,eI?,Y)","J?(J?,J?,Y)","m(amC<@>,amC<@>)","p({priority!m,scheduler!i6})","f(dK)","Fs(dK)","e(f)","d(d,bQ)","d(d?,e)","~(eJ{alignment:Y?,alignmentPolicy:yF?,curve:ju?,duration:bk?})","m(bG,bG)","cX(cX?,cX?,Y)","e>(kt,f)","jt<~>({arguments!B?,child!d,key!jG,name!f?,restorationId!f})","mW<~>({arguments!B?,child!d,key!jG,name!f?,restorationId!f})","vr(E,d?)","cS(E,bQ)","0&(B,cz)","tk(E,bQ)","d(E,bQ)","vO(@)","tv(bM)","Ej(@)","p(M)","U?>(eD?>)","cX(bz)","e(bM>)","wL()","wM()","U?>(eD?>)","C>>(bM>>>)","yX()","C>?>(bM>?>>)","yY()","yZ()","yW()","t7(bM)","w8()","xv()","xr()","xs()","xq()","xt()","xu()","xp()","pS(bM)","wB()","a6(bM>)","e(bM>)","C(bM>)","p(bM

)","u5(bM)","uZ(bM)","U(eD)","zm()","xE()","xF()","xB()","xC()","xA()","yd()","rY(bM)","x1()","yS()","yg()","xf()","yh()","yi()","yj()","yk()","yl()","z1()","zq()","zp()","wg()","yM()","yN()","yO()","z9()","tn(bM)","vU()","tX()","uH(@)","Jg?(@)","qd(bM)","Dp(@)","BV(@)","Dq(bl)","E9(bl)","C1(bl)","tZ(bl)","F6(bl)","Az(bl)","Bm(bl)","CP(bl)","j3(bl)","F5(bl)","tE(bl)","Ei(bl)","kA(bl)","Ad(bl)","i4(bl)","E7(bl)","Ct(bl)","Bs(bl)","E3(bl)","Dy(bl)","Al(bl)","BR(bl)","AA(bl)","At(bl)","Bh(@)","wA()","zk()","cv(m)","U<1^>(1^/(0^),0^{debugLabel:f?})","~(f?{wrapWidth:m?})","bQ(my)","U(eD)","e(e,e)"],interceptorsByTag:null,leafTags:null,arrayRti:Symbol("$ti"),rttc:{"2;":(a,b)=>c=>c instanceof A.nH&&a.b(c.a)&&b.b(c.b),"2;cacheSize,maxTextLength":(a,b)=>c=>c instanceof A.Gw&&a.b(c.a)&&b.b(c.b),"2;closeStream,stream":(a,b)=>c=>c instanceof A.Sv&&a.b(c.a)&&b.b(c.b),"2;first,second":(a,b)=>c=>c instanceof A.ak0&&a.b(c.a)&&b.b(c.b),"2;key,value":(a,b)=>c=>c instanceof A.ak1&&a.b(c.a)&&b.b(c.b),"2;mangaList,source":(a,b)=>c=>c instanceof A.ak2&&a.b(c.a)&&b.b(c.b),"3;breaks,graphemes,words":(a,b,c)=>d=>d instanceof A.ak3&&a.b(d.a)&&b.b(d.b)&&c.b(d.c),"3;large,medium,small":(a,b,c)=>d=>d instanceof A.ak4&&a.b(d.a)&&b.b(d.b)&&c.b(d.c),"3;x,y,z":(a,b,c)=>d=>d instanceof A.Sw&&a.b(d.a)&&b.b(d.b)&&c.b(d.c),"4;domBlurListener,domFocusListener,element,semanticsNodeId":a=>b=>b instanceof A.Sx&&A.bU3(a,b.a)}} +A.bNv(v.typeUniverse,JSON.parse('{"a6m":"tY","p2":"tY","on":"tY","bXK":"j","bXL":"j","bWr":"j","bWk":"aX","bXd":"aX","bWt":"rZ","bWm":"aJ","bY0":"aJ","bYC":"aJ","bWj":"bh","bXu":"bh","bZW":"lg","bWu":"ba","bXV":"ba","bYF":"br","bX7":"br","bXA":"pQ","bZh":"iC","bWR":"p5","bWA":"o1","bYV":"o1","bXS":"cv","bXF":"x4","bXD":"x3","bWH":"dB","bWJ":"mI","bWM":"iB","bWN":"js","bWI":"js","bWK":"js","Iw":{"hs":[]},"hX":{"d0":[]},"hb":{"fo":[]},"od":{"u1":[]},"Yd":{"t9":[]},"Iv":{"t9":[]},"Ix":{"t9":[]},"AO":{"t9":[]},"Lz":{"z":["mY"],"z.E":"mY"},"a1U":{"cm":[]},"Yf":{"t9":[]},"Q7":{"t9":[]},"Q8":{"t9":[]},"Yb":{"hs":[]},"B2":{"j0":[]},"a7K":{"j0":[]},"Xl":{"j0":[],"asB":[]},"Yo":{"j0":[],"aw1":[]},"Yr":{"j0":[],"aw4":[]},"Yq":{"j0":[],"aw3":[]},"a5F":{"j0":[],"aKS":[]},"OY":{"j0":[],"aan":[]},"a5D":{"j0":[],"aan":[],"aKQ":[]},"a8s":{"j0":[],"aSH":[]},"a6j":{"j0":[]},"AQ":{"D4":[]},"Iy":{"D6":[]},"a8y":{"bhU":[]},"Ye":{"bhU":[]},"Yg":{"u1":[]},"XS":{"d0":[]},"a1R":{"bq2":[]},"a1Q":{"cm":[]},"Kj":{"cm":[]},"hL":{"z":["1"],"z.E":"1"},"re":{"z":["1"],"z.E":"1"},"a1d":{"hX":[],"d0":[]},"JZ":{"hX":[],"d0":[]},"K_":{"hX":[],"d0":[]},"M9":{"hb":[],"fo":[],"asB":[]},"Mb":{"hb":[],"fo":[],"aw4":[]},"a6d":{"hb":[],"fo":[],"aw3":[]},"Ma":{"hb":[],"fo":[],"aw1":[]},"Mc":{"hb":[],"fo":[],"aKQ":[]},"Md":{"hb":[],"fo":[],"aKS":[]},"Ex":{"D4":[]},"uP":{"D6":[]},"a6g":{"fo":[]},"Jr":{"f6":[]},"M2":{"f6":[]},"a64":{"f6":[]},"a68":{"f6":[]},"a66":{"f6":[]},"a65":{"f6":[]},"a67":{"f6":[]},"a5T":{"f6":[]},"a5S":{"f6":[]},"a5R":{"f6":[]},"a5X":{"f6":[]},"a5Z":{"f6":[]},"a62":{"f6":[]},"a61":{"f6":[]},"a5V":{"f6":[]},"a5Y":{"f6":[]},"a5U":{"f6":[]},"a60":{"f6":[]},"a63":{"f6":[]},"a5W":{"f6":[]},"a6_":{"f6":[]},"Me":{"hb":[],"fo":[]},"Mf":{"hb":[],"fo":[],"aSH":[]},"PQ":{"pW":[]},"RR":{"pW":[]},"a0B":{"pW":[]},"Lu":{"pW":[]},"a6f":{"fo":[]},"Mg":{"hb":[],"fo":[],"aan":[]},"Kh":{"hs":[]},"a1M":{"hs":[]},"NL":{"K6":[]},"XN":{"hs":[]},"Hx":{"K6":[]},"a7S":{"qM":[]},"a1a":{"qM":[]},"a2r":{"qM":[]},"a2N":{"qM":[]},"a8k":{"bjH":[]},"a9W":{"qM":[]},"ps":{"ac":["1"],"e":["1"],"an":["1"],"z":["1"]},"agZ":{"ps":["m"],"ac":["m"],"e":["m"],"an":["m"],"z":["m"]},"aas":{"ps":["m"],"ac":["m"],"e":["m"],"an":["m"],"z":["m"],"ac.E":"m","z.E":"m","ps.E":"m"},"Da":{"xY":[]},"Y7":{"Ev":[]},"a7M":{"Ev":[]},"a0u":{"mT":[]},"a0A":{"wR":[]},"a0F":{"wR":[]},"Ki":{"cm":[]},"j":{"at":[]},"Kz":{"p":[],"e1":[]},"Ch":{"aE":[],"e1":[]},"tY":{"j":[],"at":[]},"G":{"e":["1"],"j":[],"an":["1"],"at":[],"z":["1"],"ci":["1"],"z.E":"1"},"aGf":{"G":["1"],"e":["1"],"j":[],"an":["1"],"at":[],"z":["1"],"ci":["1"],"z.E":"1"},"tT":{"Y":[],"d9":[],"cu":["d9"]},"Cg":{"Y":[],"m":[],"d9":[],"cu":["d9"],"e1":[]},"KB":{"Y":[],"d9":[],"cu":["d9"],"e1":[]},"qi":{"f":[],"cu":["f"],"ci":["@"],"e1":[]},"Ik":{"bA":["2"],"bA.T":"2"},"AG":{"lo":["2"]},"nB":{"z":["2"]},"w7":{"nB":["1","2"],"z":["2"],"z.E":"2"},"QM":{"w7":["1","2"],"nB":["1","2"],"an":["2"],"z":["2"],"z.E":"2"},"Q3":{"ac":["2"],"e":["2"],"nB":["1","2"],"an":["2"],"z":["2"]},"ik":{"Q3":["1","2"],"ac":["2"],"e":["2"],"nB":["1","2"],"an":["2"],"z":["2"],"ac.E":"2","z.E":"2"},"pL":{"bz":["2"],"nB":["1","2"],"an":["2"],"z":["2"],"z.E":"2"},"pJ":{"bg":["3","4"],"a6":["3","4"],"bg.V":"4","bg.K":"3"},"pK":{"nB":["1","2"],"an":["2"],"z":["2"],"z.E":"2"},"l7":{"d0":[]},"hQ":{"ac":["m"],"e":["m"],"an":["m"],"z":["m"],"ac.E":"m","z.E":"m"},"an":{"z":["1"]},"ax":{"an":["1"],"z":["1"]},"jW":{"ax":["1"],"an":["1"],"z":["1"],"ax.E":"1","z.E":"1"},"en":{"z":["2"],"z.E":"2"},"pV":{"en":["1","2"],"an":["2"],"z":["2"],"z.E":"2"},"ad":{"ax":["2"],"an":["2"],"z":["2"],"ax.E":"2","z.E":"2"},"be":{"z":["1"],"z.E":"1"},"ip":{"z":["2"],"z.E":"2"},"z6":{"z":["1"],"z.E":"1"},"Jy":{"z6":["1"],"an":["1"],"z":["1"],"z.E":"1"},"qR":{"z":["1"],"z.E":"1"},"Bx":{"qR":["1"],"an":["1"],"z":["1"],"z.E":"1"},"yT":{"z":["1"],"z.E":"1"},"jy":{"an":["1"],"z":["1"],"z.E":"1"},"q5":{"z":["1"],"z.E":"1"},"Jx":{"q5":["1"],"an":["1"],"z":["1"],"z.E":"1"},"es":{"z":["1"],"z.E":"1"},"F4":{"ac":["1"],"e":["1"],"an":["1"],"z":["1"]},"d1":{"ax":["1"],"an":["1"],"z":["1"],"ax.E":"1","z.E":"1"},"qV":{"Oj":[]},"wd":{"md":["1","2"],"xH":["1","2"],"H2":["1","2"],"a6":["1","2"]},"B0":{"a6":["1","2"]},"a2":{"B0":["1","2"],"a6":["1","2"]},"zH":{"z":["1"],"z.E":"1"},"dm":{"B0":["1","2"],"a6":["1","2"]},"II":{"m4":["1"],"bz":["1"],"an":["1"],"z":["1"]},"ke":{"m4":["1"],"bz":["1"],"an":["1"],"z":["1"],"z.E":"1"},"h6":{"m4":["1"],"bz":["1"],"an":["1"],"z":["1"],"z.E":"1"},"a26":{"q7":[]},"cs":{"q7":[]},"LP":{"r0":[],"d0":[]},"a2f":{"d0":[]},"aaA":{"d0":[]},"a5y":{"cm":[]},"Ty":{"cz":[]},"te":{"q7":[]},"Yw":{"q7":[]},"Yx":{"q7":[]},"a9X":{"q7":[]},"a9y":{"q7":[]},"Aw":{"q7":[]},"aeV":{"d0":[]},"a7V":{"d0":[]},"j_":{"bg":["1","2"],"a6":["1","2"],"bg.V":"2","bg.K":"1"},"c9":{"an":["1"],"z":["1"],"z.E":"1"},"KD":{"j_":["1","2"],"bg":["1","2"],"a6":["1","2"],"bg.V":"2","bg.K":"1"},"xk":{"j_":["1","2"],"bg":["1","2"],"a6":["1","2"],"bg.V":"2","bg.K":"1"},"mR":{"brz":[]},"Gd":{"a71":[],"xJ":[]},"ad2":{"z":["a71"],"z.E":"a71"},"Et":{"xJ":[]},"amc":{"z":["xJ"],"z.E":"xJ"},"xO":{"j":[],"at":[],"XP":[],"e1":[]},"h9":{"j":[],"at":[],"fh":[]},"LA":{"h9":[],"j":[],"dK":[],"at":[],"fh":[],"e1":[]},"CR":{"h9":[],"cy":["1"],"j":[],"at":[],"fh":[],"ci":["1"]},"ub":{"ac":["Y"],"h9":[],"cy":["Y"],"e":["Y"],"j":[],"an":["Y"],"at":[],"fh":[],"ci":["Y"],"z":["Y"]},"lc":{"ac":["m"],"h9":[],"cy":["m"],"e":["m"],"j":[],"an":["m"],"at":[],"fh":[],"ci":["m"],"z":["m"]},"LB":{"ub":[],"ac":["Y"],"aBT":[],"h9":[],"cy":["Y"],"e":["Y"],"j":[],"an":["Y"],"at":[],"fh":[],"ci":["Y"],"z":["Y"],"e1":[],"ac.E":"Y","z.E":"Y"},"a5j":{"ub":[],"ac":["Y"],"aBU":[],"h9":[],"cy":["Y"],"e":["Y"],"j":[],"an":["Y"],"at":[],"fh":[],"ci":["Y"],"z":["Y"],"e1":[],"ac.E":"Y","z.E":"Y"},"a5k":{"lc":[],"ac":["m"],"aG0":[],"h9":[],"cy":["m"],"e":["m"],"j":[],"an":["m"],"at":[],"fh":[],"ci":["m"],"z":["m"],"e1":[],"ac.E":"m","z.E":"m"},"LC":{"lc":[],"ac":["m"],"aG1":[],"h9":[],"cy":["m"],"e":["m"],"j":[],"an":["m"],"at":[],"fh":[],"ci":["m"],"z":["m"],"e1":[],"ac.E":"m","z.E":"m"},"a5l":{"lc":[],"ac":["m"],"aG2":[],"h9":[],"cy":["m"],"e":["m"],"j":[],"an":["m"],"at":[],"fh":[],"ci":["m"],"z":["m"],"e1":[],"ac.E":"m","z.E":"m"},"a5m":{"lc":[],"ac":["m"],"aYZ":[],"h9":[],"cy":["m"],"e":["m"],"j":[],"an":["m"],"at":[],"fh":[],"ci":["m"],"z":["m"],"e1":[],"ac.E":"m","z.E":"m"},"LD":{"lc":[],"ac":["m"],"EY":[],"h9":[],"cy":["m"],"e":["m"],"j":[],"an":["m"],"at":[],"fh":[],"ci":["m"],"z":["m"],"e1":[],"ac.E":"m","z.E":"m"},"LE":{"lc":[],"ac":["m"],"aZ_":[],"h9":[],"cy":["m"],"e":["m"],"j":[],"an":["m"],"at":[],"fh":[],"ci":["m"],"z":["m"],"e1":[],"ac.E":"m","z.E":"m"},"xP":{"lc":[],"ac":["m"],"df":[],"h9":[],"cy":["m"],"e":["m"],"j":[],"an":["m"],"at":[],"fh":[],"ci":["m"],"z":["m"],"e1":[],"ac.E":"m","z.E":"m"},"U5":{"kE":[]},"afP":{"d0":[]},"U6":{"r0":[],"d0":[]},"a8":{"U":["1"]},"a5g":{"dL":["1"]},"hl":{"lo":["1"],"hl.T":"1"},"G_":{"dL":["1"]},"U_":{"OQ":[]},"PA":{"IG":["1"]},"k4":{"z":["1"],"z.E":"1"},"X7":{"d0":[]},"iG":{"d_":["1"],"GS":["1"],"bA":["1"],"bA.T":"1"},"zx":{"v8":["1"],"hl":["1"],"lo":["1"],"hl.T":"1"},"mi":{"dL":["1"]},"nL":{"mi":["1"],"dL":["1"]},"ls":{"mi":["1"],"dL":["1"]},"Fr":{"nL":["1"],"mi":["1"],"dL":["1"]},"zA":{"IG":["1"]},"aD":{"zA":["1"],"IG":["1"]},"rt":{"zA":["1"],"IG":["1"]},"z0":{"bA":["1"],"bA.T":"1"},"vt":{"dL":["1"]},"mg":{"PB":["1"],"vt":["1"],"dL":["1"]},"pp":{"vt":["1"],"dL":["1"]},"d_":{"GS":["1"],"bA":["1"],"bA.T":"1"},"v8":{"hl":["1"],"lo":["1"],"hl.T":"1"},"zV":{"dL":["1"]},"TC":{"ad1":["1"]},"GS":{"bA":["1"]},"FG":{"lo":["1"]},"Fq":{"bA":["1"],"bA.T":"1"},"v5":{"lo":["1"]},"QQ":{"bA":["1"],"bA.T":"1"},"zL":{"bA":["1"],"bA.T":"1"},"RY":{"mg":["1"],"PB":["1"],"vt":["1"],"a5g":["1"],"dL":["1"]},"R4":{"bA":["2"]},"FV":{"hl":["2"],"lo":["2"],"hl.T":"2"},"nF":{"R4":["1","2"],"bA":["2"],"bA.T":"2"},"QS":{"dL":["1"]},"GK":{"hl":["2"],"lo":["2"],"hl.T":"2"},"PU":{"bA":["2"],"bA.T":"2"},"TD":{"TE":["1","2"]},"rh":{"bg":["1","2"],"a6":["1","2"],"bg.V":"2","bg.K":"1"},"vc":{"rh":["1","2"],"bg":["1","2"],"a6":["1","2"],"bg.V":"2","bg.K":"1"},"Qu":{"rh":["1","2"],"bg":["1","2"],"a6":["1","2"],"bg.V":"2","bg.K":"1"},"ri":{"an":["1"],"z":["1"],"z.E":"1"},"RH":{"j_":["1","2"],"bg":["1","2"],"a6":["1","2"],"bg.V":"2","bg.K":"1"},"ph":{"GH":["1"],"m4":["1"],"bz":["1"],"an":["1"],"z":["1"],"z.E":"1"},"kI":{"GH":["1"],"m4":["1"],"bqr":["1"],"bz":["1"],"an":["1"],"z":["1"],"z.E":"1"},"zj":{"ac":["1"],"e":["1"],"an":["1"],"z":["1"],"ac.E":"1","z.E":"1"},"jF":{"z":["1"],"z.E":"1"},"ac":{"e":["1"],"an":["1"],"z":["1"]},"bg":{"a6":["1","2"]},"RL":{"an":["2"],"z":["2"],"z.E":"2"},"xH":{"a6":["1","2"]},"md":{"xH":["1","2"],"H2":["1","2"],"a6":["1","2"]},"rf":{"Qz":["1"],"bpc":["1"]},"zD":{"Qz":["1"]},"wz":{"an":["1"],"z":["1"],"z.E":"1"},"KQ":{"ax":["1"],"an":["1"],"z":["1"],"ax.E":"1","z.E":"1"},"m4":{"bz":["1"],"an":["1"],"z":["1"]},"GH":{"m4":["1"],"bz":["1"],"an":["1"],"z":["1"]},"O4":{"bg":["1","2"],"a6":["1","2"],"bg.V":"2","bg.K":"1"},"rq":{"an":["1"],"z":["1"],"z.E":"1"},"zU":{"an":["2"],"z":["2"],"z.E":"2"},"Tt":{"an":["aU<1,2>"],"z":["aU<1,2>"],"z.E":"aU<1,2>"},"rr":{"pm":["1","2","1"],"pm.T":"1"},"Tx":{"pm":["1","jh<1,2>","2"],"pm.T":"2"},"zT":{"pm":["1","jh<1,2>","aU<1,2>"],"pm.T":"aU<1,2>"},"Em":{"m4":["1"],"bz":["1"],"an":["1"],"z":["1"],"z.E":"1"},"mM":{"mH":["f","e"]},"RD":{"bg":["f","@"],"a6":["f","@"],"bg.V":"@","bg.K":"f"},"ah7":{"ax":["f"],"an":["f"],"z":["f"],"ax.E":"f","z.E":"f"},"RC":{"oT":[]},"X_":{"mM":[],"mH":["f","e"]},"anF":{"cr":["f","e"]},"X1":{"cr":["f","e"],"cr.S":"f","cr.T":"e"},"anG":{"oT":[]},"anE":{"cr":["e","f"]},"X0":{"cr":["e","f"],"cr.S":"e","cr.T":"f"},"Xp":{"mH":["e","f"]},"Xq":{"cr":["e","f"],"cr.S":"e","cr.T":"f"},"R5":{"cr":["1","3"],"cr.S":"1","cr.T":"3"},"Ci":{"d0":[]},"a2h":{"d0":[]},"a2g":{"mH":["B?","f"]},"a2j":{"cr":["B?","f"],"cr.S":"B?","cr.T":"f"},"a2i":{"cr":["f","B?"],"cr.S":"f","cr.T":"B?"},"a2s":{"mM":[],"mH":["f","e"]},"a2u":{"cr":["f","e"],"cr.S":"f","cr.T":"e"},"a2t":{"cr":["e","f"],"cr.S":"e","cr.T":"f"},"GU":{"oT":[]},"zW":{"oT":[]},"aaL":{"mM":[],"mH":["f","e"]},"aaM":{"cr":["f","e"],"cr.S":"f","cr.T":"e"},"Um":{"oT":[]},"P2":{"cr":["e","f"],"cr.S":"e","cr.T":"f"},"I2":{"cu":["I2"]},"dl":{"cu":["dl"]},"Y":{"d9":[],"cu":["d9"]},"bk":{"cu":["bk"]},"iA":{"d0":[]},"m":{"d9":[],"cu":["d9"]},"e":{"an":["1"],"z":["1"]},"d9":{"cu":["d9"]},"a71":{"xJ":[]},"bz":{"an":["1"],"z":["1"]},"f":{"cu":["f"]},"iF":{"I2":[],"cu":["I2"]},"vS":{"d0":[]},"r0":{"d0":[]},"kQ":{"d0":[]},"Dt":{"d0":[]},"Kp":{"d0":[]},"a5t":{"d0":[]},"aaC":{"d0":[]},"F2":{"d0":[]},"Yz":{"d0":[]},"a5J":{"d0":[]},"O7":{"d0":[]},"FP":{"cm":[]},"l3":{"cm":[]},"a27":{"cm":[],"d0":[]},"R6":{"ax":["1"],"an":["1"],"z":["1"],"ax.E":"1","z.E":"1"},"pn":{"cz":[]},"Ug":{"aaG":[]},"mq":{"aaG":[]},"aeY":{"aaG":[]},"ba":{"cv":[],"br":[],"j":[],"at":[]},"td":{"aX":[],"j":[],"at":[]},"dB":{"j":[],"at":[]},"cv":{"br":[],"j":[],"at":[]},"aX":{"j":[],"at":[]},"hV":{"t1":[],"j":[],"at":[]},"jB":{"j":[],"at":[]},"tI":{"j":[],"at":[]},"u9":{"aX":[],"j":[],"at":[]},"jI":{"j":[],"at":[]},"br":{"j":[],"at":[]},"jK":{"j":[],"at":[]},"lg":{"aX":[],"j":[],"at":[]},"jP":{"j":[],"at":[]},"jS":{"j":[],"at":[]},"jT":{"j":[],"at":[]},"iB":{"j":[],"at":[]},"jY":{"j":[],"at":[]},"iC":{"j":[],"at":[]},"jZ":{"j":[],"at":[]},"G2":{"oA":[]},"Ww":{"j":[],"at":[]},"WD":{"ba":[],"cv":[],"br":[],"j":[],"at":[]},"WZ":{"ba":[],"cv":[],"br":[],"j":[],"at":[]},"Au":{"ba":[],"cv":[],"br":[],"j":[],"at":[]},"t1":{"j":[],"at":[]},"vY":{"ba":[],"cv":[],"br":[],"j":[],"at":[]},"o1":{"br":[],"j":[],"at":[]},"YJ":{"j":[],"at":[]},"wi":{"j":[],"at":[]},"js":{"j":[],"at":[]},"mI":{"j":[],"at":[]},"YK":{"j":[],"at":[]},"YL":{"j":[],"at":[]},"a_H":{"j":[],"at":[]},"pQ":{"br":[],"j":[],"at":[]},"a0c":{"j":[],"at":[]},"Jl":{"ac":["li"],"bD":["li"],"e":["li"],"cy":["li"],"j":[],"an":["li"],"at":[],"z":["li"],"ci":["li"],"bD.E":"li","ac.E":"li","z.E":"li"},"Jm":{"j":[],"li":["d9"],"at":[]},"Jn":{"ac":["f"],"bD":["f"],"e":["f"],"cy":["f"],"j":[],"an":["f"],"at":[],"z":["f"],"ci":["f"],"bD.E":"f","ac.E":"f","z.E":"f"},"a0f":{"j":[],"at":[]},"ae4":{"ac":["cv"],"e":["cv"],"an":["cv"],"z":["cv"],"ac.E":"cv","z.E":"cv"},"aJ":{"j":[],"at":[]},"BG":{"ac":["hV"],"bD":["hV"],"e":["hV"],"cy":["hV"],"j":[],"an":["hV"],"at":[],"z":["hV"],"ci":["hV"],"bD.E":"hV","ac.E":"hV","z.E":"hV"},"JK":{"j":[],"at":[]},"a0W":{"j":[],"at":[]},"a1c":{"j":[],"at":[]},"a1e":{"ba":[],"cv":[],"br":[],"j":[],"at":[]},"a1F":{"j":[],"at":[]},"x3":{"ac":["br"],"bD":["br"],"e":["br"],"cy":["br"],"j":[],"an":["br"],"at":[],"z":["br"],"ci":["br"],"bD.E":"br","ac.E":"br","z.E":"br"},"x4":{"j":[],"at":[]},"C4":{"j":[],"at":[]},"xe":{"ba":[],"cv":[],"br":[],"j":[],"at":[]},"KP":{"ba":[],"cv":[],"br":[],"j":[],"at":[]},"a2Q":{"j":[],"at":[]},"a51":{"j":[],"at":[]},"CO":{"j":[],"at":[]},"a54":{"j":[],"bg":["f","@"],"at":[],"a6":["f","@"],"bg.V":"@","bg.K":"f"},"a55":{"j":[],"bg":["f","@"],"at":[],"a6":["f","@"],"bg.V":"@","bg.K":"f"},"a56":{"ac":["jI"],"bD":["jI"],"e":["jI"],"cy":["jI"],"j":[],"an":["jI"],"at":[],"z":["jI"],"ci":["jI"],"bD.E":"jI","ac.E":"jI","z.E":"jI"},"iH":{"ac":["br"],"e":["br"],"an":["br"],"z":["br"],"ac.E":"br","z.E":"br"},"LM":{"ac":["br"],"bD":["br"],"e":["br"],"cy":["br"],"j":[],"an":["br"],"at":[],"z":["br"],"ci":["br"],"bD.E":"br","ac.E":"br","z.E":"br"},"a5v":{"j":[],"at":[]},"a6q":{"ac":["jK"],"bD":["jK"],"e":["jK"],"cy":["jK"],"j":[],"an":["jK"],"at":[],"z":["jK"],"ci":["jK"],"bD.E":"jK","ac.E":"jK","z.E":"jK"},"a7T":{"j":[],"bg":["f","@"],"at":[],"a6":["f","@"],"bg.V":"@","bg.K":"f"},"Nf":{"ba":[],"cv":[],"br":[],"j":[],"at":[]},"a8a":{"ba":[],"cv":[],"br":[],"j":[],"at":[]},"E8":{"j":[],"at":[]},"a94":{"ac":["jP"],"bD":["jP"],"e":["jP"],"cy":["jP"],"j":[],"an":["jP"],"at":[],"z":["jP"],"ci":["jP"],"bD.E":"jP","ac.E":"jP","z.E":"jP"},"a9t":{"ac":["jS"],"bD":["jS"],"e":["jS"],"cy":["jS"],"j":[],"an":["jS"],"at":[],"z":["jS"],"ci":["jS"],"bD.E":"jS","ac.E":"jS","z.E":"jS"},"Oa":{"j":[],"bg":["f","f"],"at":[],"a6":["f","f"],"bg.V":"f","bg.K":"f"},"Oo":{"ba":[],"cv":[],"br":[],"j":[],"at":[]},"a9Q":{"ba":[],"cv":[],"br":[],"j":[],"at":[]},"a9R":{"ba":[],"cv":[],"br":[],"j":[],"at":[]},"EE":{"ba":[],"cv":[],"br":[],"j":[],"at":[]},"aac":{"ac":["iC"],"bD":["iC"],"e":["iC"],"cy":["iC"],"j":[],"an":["iC"],"at":[],"z":["iC"],"ci":["iC"],"bD.E":"iC","ac.E":"iC","z.E":"iC"},"aad":{"ac":["jY"],"bD":["jY"],"e":["jY"],"cy":["jY"],"j":[],"an":["jY"],"at":[],"z":["jY"],"ci":["jY"],"bD.E":"jY","ac.E":"jY","z.E":"jY"},"aag":{"j":[],"at":[]},"aal":{"ac":["jZ"],"bD":["jZ"],"e":["jZ"],"cy":["jZ"],"j":[],"an":["jZ"],"at":[],"z":["jZ"],"ci":["jZ"],"bD.E":"jZ","ac.E":"jZ","z.E":"jZ"},"aam":{"j":[],"at":[]},"aaJ":{"j":[],"at":[]},"aaS":{"j":[],"at":[]},"Fa":{"j":[],"at":[]},"v0":{"j":[],"at":[]},"p5":{"j":[],"at":[]},"Ft":{"br":[],"j":[],"at":[]},"aeC":{"ac":["dB"],"bD":["dB"],"e":["dB"],"cy":["dB"],"j":[],"an":["dB"],"at":[],"z":["dB"],"ci":["dB"],"bD.E":"dB","ac.E":"dB","z.E":"dB"},"Qy":{"j":[],"li":["d9"],"at":[]},"agn":{"ac":["jB?"],"bD":["jB?"],"e":["jB?"],"cy":["jB?"],"j":[],"an":["jB?"],"at":[],"z":["jB?"],"ci":["jB?"],"bD.E":"jB?","ac.E":"jB?","z.E":"jB?"},"RZ":{"ac":["br"],"bD":["br"],"e":["br"],"cy":["br"],"j":[],"an":["br"],"at":[],"z":["br"],"ci":["br"],"bD.E":"br","ac.E":"br","z.E":"br"},"am4":{"ac":["jT"],"bD":["jT"],"e":["jT"],"cy":["jT"],"j":[],"an":["jT"],"at":[],"z":["jT"],"ci":["jT"],"bD.E":"jT","ac.E":"jT","z.E":"jT"},"amg":{"ac":["iB"],"bD":["iB"],"e":["iB"],"cy":["iB"],"j":[],"an":["iB"],"at":[],"z":["iB"],"ci":["iB"],"bD.E":"iB","ac.E":"iB","z.E":"iB"},"adn":{"bg":["f","f"],"a6":["f","f"]},"QN":{"bg":["f","f"],"a6":["f","f"],"bg.V":"f","bg.K":"f"},"jd":{"bA":["1"],"bA.T":"1"},"QO":{"jd":["1"],"bA":["1"],"bA.T":"1"},"FO":{"lo":["1"]},"LN":{"oA":[]},"Tn":{"oA":[]},"amD":{"oA":[]},"amh":{"oA":[]},"aeW":{"j":[],"at":[]},"a0Y":{"ac":["cv"],"e":["cv"],"an":["cv"],"z":["cv"],"ac.E":"cv","z.E":"cv"},"o6":{"j":[],"at":[]},"wo":{"j":[],"at":[]},"v_":{"aX":[],"j":[],"at":[]},"J0":{"j":[],"at":[]},"Kn":{"j":[],"at":[]},"Ck":{"j":[],"at":[]},"LQ":{"j":[],"at":[]},"Jg":{"kg":[]},"JJ":{"kg":[]},"zP":{"yf":[]},"qr":{"cm":[]},"iV":{"cm":[]},"M6":{"cm":[]},"M7":{"cm":[]},"M8":{"cm":[]},"ag_":{"bA":["e"],"bA.T":"e"},"QV":{"JJ":[],"kg":[]},"a9L":{"mM":[],"mH":["f","e"]},"xj":{"ac":["1"],"e":["1"],"an":["1"],"z":["1"],"ac.E":"1","z.E":"1"},"a5x":{"cm":[]},"li":{"bZU":["1"]},"l8":{"j":[],"at":[]},"ld":{"j":[],"at":[]},"lp":{"j":[],"at":[]},"a2C":{"ac":["l8"],"bD":["l8"],"e":["l8"],"j":[],"an":["l8"],"at":[],"z":["l8"],"bD.E":"l8","ac.E":"l8","z.E":"l8"},"a5A":{"ac":["ld"],"bD":["ld"],"e":["ld"],"j":[],"an":["ld"],"at":[],"z":["ld"],"bD.E":"ld","ac.E":"ld","z.E":"ld"},"a6r":{"j":[],"at":[]},"DS":{"bh":[],"cv":[],"br":[],"j":[],"at":[]},"a9D":{"ac":["f"],"bD":["f"],"e":["f"],"j":[],"an":["f"],"at":[],"z":["f"],"bD.E":"f","ac.E":"f","z.E":"f"},"bh":{"cv":[],"br":[],"j":[],"at":[]},"aao":{"ac":["lp"],"bD":["lp"],"e":["lp"],"j":[],"an":["lp"],"at":[],"z":["lp"],"bD.E":"lp","ac.E":"lp","z.E":"lp"},"dK":{"fh":[]},"aG2":{"e":["m"],"an":["m"],"z":["m"],"fh":[]},"df":{"e":["m"],"an":["m"],"z":["m"],"fh":[]},"aZ_":{"e":["m"],"an":["m"],"z":["m"],"fh":[]},"aG0":{"e":["m"],"an":["m"],"z":["m"],"fh":[]},"aYZ":{"e":["m"],"an":["m"],"z":["m"],"fh":[]},"aG1":{"e":["m"],"an":["m"],"z":["m"],"fh":[]},"EY":{"e":["m"],"an":["m"],"z":["m"],"fh":[]},"aBT":{"e":["Y"],"an":["Y"],"z":["Y"],"fh":[]},"aBU":{"e":["Y"],"an":["Y"],"z":["Y"],"fh":[]},"a8D":{"wR":[]},"Xb":{"j":[],"at":[]},"Xc":{"j":[],"bg":["f","@"],"at":[],"a6":["f","@"],"bg.V":"@","bg.K":"f"},"Xd":{"j":[],"at":[]},"rZ":{"j":[],"at":[]},"a5B":{"j":[],"at":[]},"Bd":{"dL":["1"]},"Ii":{"a4":[],"d":[]},"t6":{"jD":["t6"],"jD.T":"t6"},"fe":{"z":["f"],"z.E":"f"},"cN":{"a6":["2","3"]},"E6":{"H3":["1","bz<1>"],"H3.E":"1"},"a1C":{"cr":["e","ww"]},"alq":{"cr":["e","ww"],"cr.S":"e","cr.T":"ww"},"hv":{"cm":[]},"a29":{"km":[]},"a28":{"ac":["km"],"e":["km"],"an":["km"],"z":["km"],"ac.E":"km","z.E":"km"},"Ko":{"km":[]},"Je":{"km":[]},"Q0":{"r_":["pH"]},"PZ":{"r_":["t5"]},"Q_":{"r_":["w5"]},"Lo":{"bii":[],"BH":[],"Jg":[],"kg":[]},"Lp":{"biB":[],"BH":[],"JJ":[],"kg":[]},"afZ":{"dL":["e"]},"Lq":{"BH":[],"kg":[]},"Dz":{"hB":[]},"hw":{"hB":[]},"l0":{"hB":[]},"bHj":{"hB":[]},"a7L":{"hw":[],"hB":[]},"ahB":{"bkm":[]},"bQ":{"au":[]},"my":{"bQ":["Y"],"au":[]},"ad3":{"bQ":["Y"],"au":[]},"ad4":{"bQ":["Y"],"au":[]},"Hv":{"bQ":["1"],"au":[]},"Mt":{"bQ":["Y"],"au":[]},"jL":{"bQ":["Y"],"au":[]},"wm":{"bQ":["Y"],"au":[]},"zf":{"bQ":["Y"],"au":[]},"B_":{"bQ":["1"],"au":[]},"HI":{"bQ":["1"],"au":[]},"RG":{"ju":[]},"Na":{"ju":[]},"dO":{"ju":[]},"ON":{"ju":[]},"f3":{"ju":[]},"OM":{"ju":[]},"jz":{"ju":[]},"af_":{"ju":[]},"aO":{"aA":["1"],"aO.T":"1","aA.T":"1"},"dk":{"aO":["M?"],"aA":["M?"],"aO.T":"M?","aA.T":"M?"},"ur":{"aO":["I?"],"aA":["I?"],"aO.T":"I?","aA.T":"I?"},"aw":{"bQ":["1"],"au":[]},"dq":{"aA":["1"],"aA.T":"1"},"N7":{"aO":["1"],"aA":["1"],"aO.T":"1","aA.T":"1"},"a8F":{"aO":["V?"],"aA":["V?"],"aO.T":"V?","aA.T":"V?"},"tR":{"aO":["m"],"aA":["m"],"aO.T":"m","aA.T":"m"},"pO":{"aO":["1"],"aA":["1"],"aO.T":"1","aA.T":"1"},"eE":{"aA":["Y"],"aA.T":"Y"},"P_":{"aA":["1"],"aA.T":"1"},"IL":{"P":[],"d":[]},"aeF":{"af":["IL"],"aN":[]},"aeE":{"au":[]},"IM":{"P":[],"d":[]},"Qh":{"af":["IM"],"aN":[]},"IN":{"P":[],"d":[]},"Qi":{"af":["IN"],"aN":[]},"ae0":{"au":[]},"ek":{"M":[]},"aeH":{"nk":[]},"YN":{"a4":[],"d":[]},"wj":{"P":[],"d":[]},"Qj":{"af":["wj"]},"YP":{"cX":[]},"aeK":{"fy":["az"],"fy.T":"az"},"a_S":{"az":[]},"J_":{"P":[],"d":[]},"Qn":{"af":["J_"],"aN":[]},"a_x":{"a4":[],"d":[]},"IW":{"P":[],"qF":[],"d":[]},"ag8":{"P":[],"d":[]},"aeL":{"af":["IW"]},"aj1":{"a4":[],"d":[]},"a_y":{"a4":[],"d":[]},"ads":{"a4":[],"d":[]},"PL":{"a4":[],"d":[]},"U4":{"a4":[],"d":[]},"aiu":{"a4":[],"d":[]},"IX":{"P":[],"d":[]},"Qk":{"af":["IX"]},"B6":{"P":[],"d":[]},"FB":{"af":["B6<1>"],"aN":[]},"ajL":{"au":[]},"jt":{"f5":["1"],"jM":[]},"Fz":{"P":[],"d":[]},"rl":{"IY":["1"],"dX":["1"],"fg":["1"],"dc":["1"],"dX.T":"1"},"a_z":{"a4":[],"d":[]},"YO":{"a4":[],"d":[]},"FA":{"af":["Fz<1>"]},"nC":{"kX":[]},"B7":{"P":[],"d":[]},"Ql":{"oK":["B7"],"af":["B7"],"aN":[]},"IZ":{"P":[],"d":[]},"Qm":{"af":["IZ"],"aN":[]},"aeM":{"aG":[],"d":[]},"akd":{"N":[],"b1":["N"],"H":[],"aC":[]},"amO":{"au":[]},"a_B":{"nk":[]},"Qp":{"P":[],"d":[]},"a_C":{"a4":[],"d":[]},"aeP":{"by":[],"aG":[],"d":[]},"ake":{"N":[],"b1":["N"],"H":[],"aC":[]},"Qq":{"af":["Qp"],"aN":[]},"ahl":{"au":[]},"akQ":{"au":[]},"aeG":{"au":[]},"Qr":{"aG":[],"d":[]},"aeO":{"c0":[],"bG":[],"E":[]},"zQ":{"dR":["N","jb"],"N":[],"aq":["N","jb"],"H":[],"aC":[],"aq.1":"jb","dR.1":"jb","aq.0":"N"},"aiD":{"bG":[],"E":[]},"aiE":{"d":[]},"tj":{"P":[],"d":[]},"Qo":{"af":["tj"]},"ahG":{"au":[]},"Ro":{"bi":[],"b2":[],"d":[]},"a_D":{"a4":[],"d":[]},"aak":{"au":[]},"va":{"hu":["e"],"fO":[]},"BB":{"va":[],"hu":["e"],"fO":[]},"a0J":{"va":[],"hu":["e"],"fO":[]},"a0H":{"va":[],"hu":["e"],"fO":[]},"q4":{"vS":[],"d0":[]},"aga":{"wv":["cc"],"fO":[]},"im":{"au":[]},"ec":{"au":[]},"P3":{"au":[]},"vg":{"au":[]},"hu":{"fO":[]},"wv":{"fO":[]},"a04":{"wv":["a03"],"fO":[]},"a05":{"fO":[]},"jG":{"iq":[]},"kF":{"jG":[],"iq":[]},"bP":{"jG":[],"iq":[],"bP.T":"1"},"KN":{"lM":[]},"bb":{"z":["1"],"z.E":"1"},"BZ":{"z":["1"],"z.E":"1"},"ct":{"U":["1"]},"BT":{"aC":[]},"JV":{"cc":[]},"fW":{"c3":[]},"qC":{"c3":[]},"uj":{"c3":[]},"uk":{"c3":[]},"qB":{"c3":[]},"qE":{"c3":[]},"j8":{"c3":[]},"qD":{"c3":[]},"qz":{"c3":[]},"acX":{"c3":[]},"ano":{"c3":[]},"y1":{"c3":[]},"ank":{"y1":[],"c3":[]},"y6":{"c3":[]},"anv":{"y6":[],"c3":[]},"anq":{"qC":[],"c3":[]},"ann":{"uj":[],"c3":[]},"anp":{"uk":[],"c3":[]},"anm":{"qB":[],"c3":[]},"y3":{"c3":[]},"anr":{"y3":[],"c3":[]},"anz":{"qE":[],"c3":[]},"y8":{"j8":[],"c3":[]},"anx":{"y8":[],"j8":[],"c3":[]},"y9":{"j8":[],"c3":[]},"any":{"y9":[],"j8":[],"c3":[]},"y7":{"j8":[],"c3":[]},"anw":{"y7":[],"j8":[],"c3":[]},"ant":{"qD":[],"c3":[]},"y5":{"c3":[]},"anu":{"y5":[],"c3":[]},"y4":{"c3":[]},"ans":{"y4":[],"c3":[]},"anl":{"qz":[],"c3":[]},"mN":{"eK":[],"eS":[]},"RS":{"H1":[]},"Gm":{"H1":[]},"kp":{"eK":[],"eS":[]},"no":{"eK":[],"eS":[]},"mO":{"eK":[],"eS":[]},"n1":{"eK":[],"eS":[]},"Jq":{"eK":[],"eS":[]},"mL":{"eK":[],"eS":[]},"eK":{"eS":[]},"LT":{"eK":[],"eS":[]},"Di":{"eK":[],"eS":[]},"nb":{"eK":[],"eS":[]},"kC":{"eK":[],"eS":[]},"Xw":{"eK":[],"eS":[]},"zz":{"eS":[]},"aed":{"BS":[]},"x5":{"k_":[]},"CC":{"k_":[]},"acY":{"a4":[],"d":[]},"zu":{"a4":[],"d":[]},"Xj":{"a4":[],"d":[]},"Xh":{"a4":[],"d":[]},"Yv":{"a4":[],"d":[]},"Yu":{"a4":[],"d":[]},"a0q":{"a4":[],"d":[]},"a0p":{"a4":[],"d":[]},"a0y":{"a4":[],"d":[]},"a0x":{"a4":[],"d":[]},"bCP":{"dE":[],"bi":[],"b2":[],"d":[]},"Wz":{"a4":[],"d":[]},"CI":{"P":[],"d":[]},"RM":{"af":["CI"]},"HM":{"P":[],"qF":[],"d":[]},"So":{"V":[]},"Pz":{"af":["HM"]},"adj":{"by":[],"aG":[],"d":[]},"aka":{"N":[],"b1":["N"],"H":[],"aC":[]},"CL":{"aO":["I?"],"aA":["I?"],"aO.T":"I?","aA.T":"I?"},"Lj":{"aO":["l"],"aA":["l"],"aO.T":"l","aA.T":"l"},"bHE":{"dE":[],"bi":[],"b2":[],"d":[]},"I7":{"P":[],"d":[]},"zK":{"P":[],"d":[]},"PT":{"af":["I7"]},"afw":{"a4":[],"d":[]},"adF":{"by":[],"aG":[],"d":[]},"Sz":{"N":[],"b1":["N"],"H":[],"aC":[]},"Gh":{"af":["zK<1>"]},"Lt":{"dX":["1"],"fg":["1"],"dc":["1"],"dX.T":"1"},"PS":{"a4":[],"d":[]},"MD":{"P":[],"d":[]},"ajQ":{"af":["MD"]},"agX":{"by":[],"aG":[],"d":[]},"SJ":{"N":[],"b1":["N"],"H":[],"aC":[]},"aho":{"bN":["b9?"]},"If":{"P":[],"d":[]},"PW":{"af":["If"],"aN":[]},"aij":{"dY":[],"bN":["dY"]},"agY":{"by":[],"aG":[],"d":[]},"SK":{"N":[],"b1":["N"],"H":[],"aC":[]},"bDo":{"dE":[],"bi":[],"b2":[],"d":[]},"XW":{"a4":[],"d":[]},"It":{"P":[],"d":[]},"ae1":{"af":["It"],"aN":[]},"ae_":{"au":[]},"Iu":{"a4":[],"d":[]},"bDy":{"bi":[],"b2":[],"d":[]},"AM":{"a4":[],"d":[]},"MA":{"P":[],"d":[]},"St":{"af":["MA"],"aN":[]},"agT":{"bN":["M?"]},"ae5":{"by":[],"aG":[],"d":[]},"akb":{"N":[],"b1":["N"],"H":[],"aC":[]},"ae7":{"iz":["pg","N"],"aG":[],"d":[],"iz.0":"pg","iz.1":"N"},"SB":{"N":[],"m7":["pg","N"],"H":[],"aC":[]},"bDC":{"dE":[],"bi":[],"b2":[],"d":[]},"Y8":{"a4":[],"d":[]},"CJ":{"o4":["m"],"M":[],"o4.T":"m"},"a38":{"o4":["m"],"M":[],"o4.T":"m"},"afa":{"nk":[]},"a00":{"a4":[],"d":[]},"Be":{"a4":[],"d":[]},"Af":{"a4":[],"d":[]},"a06":{"a4":[],"d":[]},"Jd":{"dX":["1"],"fg":["1"],"dc":["1"],"dX.T":"1"},"Bi":{"a4":[],"d":[]},"aaR":{"a4":[],"d":[]},"bET":{"dE":[],"bi":[],"b2":[],"d":[]},"QC":{"bi":[],"b2":[],"d":[]},"Jt":{"P":[],"d":[]},"Bn":{"af":["Jt"],"aN":[]},"Js":{"a4":[],"d":[]},"bFj":{"dE":[],"bi":[],"b2":[],"d":[]},"FK":{"P":[],"d":[]},"FJ":{"P":[],"d":[]},"FM":{"a4":[],"d":[]},"Gg":{"by":[],"aG":[],"d":[]},"pU":{"a4":[],"d":[]},"Ju":{"bi":[],"b2":[],"d":[]},"Bp":{"P":[],"d":[]},"afy":{"au":[]},"FL":{"af":["FK<1>"]},"QF":{"af":["FJ<1>"]},"QG":{"dX":["lt<1>"],"fg":["lt<1>"],"dc":["lt<1>"],"dX.T":"lt<1>"},"ako":{"N":[],"b1":["N"],"H":[],"aC":[]},"QE":{"a4":[],"d":[]},"FI":{"af":["Bp<1>"],"hj":[]},"By":{"P":[],"d":[]},"QP":{"bN":["M?"]},"afJ":{"bN":["M?"]},"afH":{"bN":["Y"]},"afI":{"bN":["dY?"]},"afM":{"P":[],"d":[]},"afN":{"a4":[],"d":[]},"afK":{"cp":[]},"bFu":{"dE":[],"bi":[],"b2":[],"d":[]},"JI":{"P":[],"d":[]},"QT":{"af":["JI"],"aN":[]},"bFM":{"dE":[],"bi":[],"b2":[],"d":[]},"a0X":{"P":[],"d":[]},"ag0":{"cp":[]},"bFX":{"dE":[],"bi":[],"b2":[],"d":[]},"JS":{"bi":[],"b2":[],"d":[]},"wQ":{"a4":[],"d":[]},"afF":{"dY":[],"bN":["dY"]},"ae3":{"by":[],"aG":[],"d":[]},"SA":{"N":[],"b1":["N"],"H":[],"aC":[]},"Py":{"bQ":["1"],"au":[]},"a1y":{"a4":[],"d":[]},"x6":{"a4":[],"d":[]},"Te":{"P":[],"d":[]},"ald":{"af":["Te"]},"agK":{"P":[],"d":[]},"agG":{"bN":["M?"]},"agI":{"bN":["M?"]},"agH":{"bN":["dY?"]},"agJ":{"cp":[]},"ag2":{"cp":[]},"ag3":{"cp":[]},"aiR":{"cp":[]},"Kk":{"dE":[],"bi":[],"b2":[],"d":[]},"xc":{"P":[],"d":[]},"Ru":{"af":["xc"]},"Ks":{"ok":[]},"tP":{"tS":[],"ok":[]},"Kt":{"tS":[],"ok":[]},"Ku":{"tS":[],"ok":[]},"tS":{"ok":[]},"Si":{"bi":[],"b2":[],"d":[]},"Rt":{"P":[],"d":[]},"C9":{"a4":[],"d":[]},"Rs":{"af":["Rt"],"bkD":[]},"a24":{"a4":[],"d":[]},"l6":{"dp":[]},"aiy":{"l6":[],"dp":[]},"nl":{"l6":[],"dp":[]},"lU":{"l6":[],"dp":[]},"PR":{"P":[],"d":[]},"Rc":{"P":[],"d":[]},"xd":{"P":[],"d":[]},"Rv":{"au":[]},"Rw":{"aO":["l6"],"aA":["l6"],"aO.T":"l6","aA.T":"l6"},"agV":{"au":[]},"adB":{"af":["PR"],"aN":[]},"alr":{"P":[],"d":[]},"Rd":{"af":["Rc"],"aN":[]},"SE":{"N":[],"m7":["ia","N"],"H":[],"aC":[]},"af3":{"iz":["ia","N"],"aG":[],"d":[],"iz.0":"ia","iz.1":"N"},"Rx":{"af":["xd"],"aN":[]},"qm":{"a4":[],"d":[]},"agS":{"bN":["M?"]},"ahE":{"iz":["nE","N"],"aG":[],"d":[],"iz.0":"nE","iz.1":"N"},"SN":{"N":[],"m7":["nE","N"],"H":[],"aC":[]},"xx":{"dE":[],"bi":[],"b2":[],"d":[]},"OF":{"P":[],"d":[]},"TS":{"af":["OF"]},"a2S":{"a4":[],"d":[]},"L9":{"P":[],"d":[]},"SI":{"N":[],"b1":["N"],"H":[],"aC":[]},"uG":{"aO":["dp?"],"aA":["dp?"],"aO.T":"dp?","aA.T":"dp?"},"RN":{"P":[],"d":[]},"ai4":{"af":["L9"],"aN":[]},"agU":{"by":[],"aG":[],"d":[]},"ai0":{"af":["RN"],"aN":[]},"Tk":{"a4":[],"d":[]},"als":{"au":[]},"ai1":{"fy":["av"],"fy.T":"av"},"a_U":{"av":[]},"a4U":{"M":[],"bN":["M"]},"Gf":{"M":[],"bN":["M"]},"a4V":{"dY":[],"bN":["dY"]},"QR":{"dY":[],"bN":["dY"]},"a4T":{"b9":[],"bN":["b9?"]},"RO":{"b9":[],"bN":["b9?"]},"a4W":{"J":[],"bN":["J"]},"ai5":{"J":[],"bN":["J"]},"RF":{"bN":["1?"]},"bc":{"bN":["1"]},"bE":{"bN":["1"]},"a4X":{"ec":["bz"],"au":[]},"ahq":{"bN":["b9?"]},"xR":{"a4":[],"d":[]},"S3":{"P":[],"d":[]},"zM":{"bi":[],"b2":[],"d":[]},"vr":{"P":[],"d":[]},"Qs":{"P":[],"d":[]},"a5n":{"a4":[],"d":[]},"aiv":{"af":["S3"]},"Rm":{"a4":[],"d":[]},"a5p":{"a4":[],"d":[]},"aiq":{"a4":[],"d":[]},"afb":{"a4":[],"d":[]},"air":{"a4":[],"d":[]},"ais":{"a4":[],"d":[]},"ae9":{"a4":[],"d":[]},"GR":{"P":[],"d":[]},"alc":{"af":["vr"],"aN":[]},"Qt":{"af":["Qs"]},"LG":{"dE":[],"bi":[],"b2":[],"d":[]},"LI":{"P":[],"d":[]},"S4":{"af":["LI"],"aN":[]},"ajN":{"a4":[],"d":[]},"Rl":{"a4":[],"d":[]},"Fn":{"a4":[],"d":[]},"afS":{"bi":[],"b2":[],"d":[]},"bI8":{"dE":[],"bi":[],"b2":[],"d":[]},"a5K":{"P":[],"d":[]},"Sa":{"bN":["M?"]},"aiO":{"bN":["M?"]},"aiN":{"bN":["dY?"]},"aiP":{"cp":[]},"bIh":{"dE":[],"bi":[],"b2":[],"d":[]},"mW":{"f5":["1"],"jM":[]},"Se":{"Lk":["1"],"dX":["1"],"fg":["1"],"dc":["1"],"dX.T":"1"},"vv":{"P":[],"d":[]},"vw":{"P":[],"d":[]},"ao3":{"a4":[],"d":[]},"ao1":{"af":["vv"]},"ao2":{"af":["vw"]},"acM":{"qv":[]},"a_A":{"qv":[]},"Uz":{"au":[]},"UA":{"au":[]},"um":{"P":[],"d":[]},"Dc":{"P":[],"d":[]},"Ml":{"P":[],"d":[]},"aia":{"by":[],"aG":[],"d":[]},"akp":{"N":[],"b1":["N"],"H":[],"aC":[]},"De":{"af":["2"]},"Sl":{"a4":[],"d":[]},"Sm":{"dX":["1"],"fg":["1"],"dc":["1"],"dX.T":"1"},"Dd":{"af":["Dc<1>"]},"afG":{"dY":[],"bN":["dY"]},"bIJ":{"dE":[],"bi":[],"b2":[],"d":[]},"KO":{"P":[],"d":[]},"o2":{"P":[],"d":[]},"a6z":{"P":[],"d":[]},"ahz":{"au":[]},"ahA":{"af":["KO"],"aN":[]},"Fv":{"au":[]},"Q6":{"af":["o2"],"aN":[]},"ak5":{"au":[]},"a70":{"P":[],"d":[]},"ak6":{"af":["o2"],"aN":[]},"bIV":{"dE":[],"bi":[],"b2":[],"d":[]},"Dr":{"P":[],"d":[]},"Gu":{"af":["Dr<1>"],"aN":[]},"ajK":{"au":[]},"My":{"a4":[],"d":[]},"bJ_":{"bi":[],"b2":[],"d":[]},"yn":{"P":[],"d":[]},"MF":{"af":["yn"],"aN":[]},"Nb":{"P":[],"d":[]},"T0":{"bi":[],"b2":[],"d":[]},"QW":{"P":[],"d":[]},"na":{"P":[],"d":[]},"DQ":{"af":["na"],"aN":[]},"vs":{"P":[],"d":[]},"GN":{"af":["vs"]},"a8_":{"af":["Nb"],"aN":[]},"al1":{"au":[]},"Fu":{"aL":[]},"adA":{"a4":[],"d":[]},"QX":{"af":["QW"],"aN":[]},"afg":{"c7":["kf"],"c7.T":"kf"},"Mh":{"DP":["vs","1"]},"al2":{"bi":[],"b2":[],"d":[]},"Ge":{"P":[],"d":[]},"a88":{"a4":[],"d":[]},"ai3":{"oK":["Ge"],"af":["Ge"],"aN":[]},"bJG":{"dE":[],"bi":[],"b2":[],"d":[]},"ahp":{"bN":["b9?"]},"Nt":{"P":[],"d":[]},"amX":{"qX":[],"ec":["eN"],"au":[]},"Tf":{"af":["Nt"]},"NN":{"P":[],"d":[]},"nA":{"bB":[]},"Tp":{"af":["NN"],"aN":[]},"alH":{"aG":[],"d":[]},"Gz":{"N":[],"H":[],"aC":[]},"anP":{"aG":[],"d":[]},"akE":{"N":[],"H":[],"aC":[]},"bK7":{"dE":[],"bi":[],"b2":[],"d":[]},"bKb":{"P":[],"d":[]},"RP":{"P":[],"d":[]},"a9K":{"a4":[],"d":[]},"RQ":{"af":["RP"],"aN":[]},"TI":{"au":[]},"Ez":{"a4":[],"d":[]},"bKv":{"bi":[],"b2":[],"d":[]},"qW":{"au":[]},"TN":{"bi":[],"b2":[],"d":[]},"J9":{"P":[],"d":[]},"af5":{"af":["J9"],"aN":[]},"uV":{"kX":[]},"z3":{"a4":[],"qF":[],"d":[]},"Om":{"P":[],"qF":[],"d":[]},"On":{"P":[],"d":[]},"amw":{"P":[],"d":[]},"amv":{"dR":["N","hW"],"N":[],"aq":["N","hW"],"H":[],"aC":[],"aq.1":"hW","dR.1":"hW","aq.0":"N"},"amu":{"fz":[],"aG":[],"d":[]},"Rn":{"au":[]},"adU":{"bQ":["Y"],"au":[]},"FH":{"bQ":["Y"],"au":[]},"TJ":{"nc":[],"iE":[],"au":[],"m1":[]},"amr":{"au":[]},"TK":{"af":["Om"]},"TL":{"af":["On"]},"EF":{"P":[],"d":[]},"TP":{"bN":["M?"]},"amF":{"bN":["M?"]},"amE":{"bN":["dY?"]},"amI":{"P":[],"d":[]},"amJ":{"a4":[],"d":[]},"amG":{"cp":[]},"bKB":{"dE":[],"bi":[],"b2":[],"d":[]},"OA":{"P":[],"d":[]},"TQ":{"af":["OA"]},"OB":{"q6":["f"],"P":[],"d":[],"q6.T":"f"},"GY":{"l2":["f"],"af":["q6"]},"a4Y":{"nk":[]},"amN":{"au":[]},"bKK":{"dE":[],"bi":[],"b2":[],"d":[]},"TV":{"P":[],"d":[]},"aa9":{"a4":[],"d":[]},"amU":{"af":["TV"],"aN":[]},"amV":{"by":[],"aG":[],"d":[]},"amW":{"N":[],"b1":["N"],"H":[],"aC":[]},"amR":{"fz":[],"aG":[],"d":[]},"amS":{"c0":[],"bG":[],"E":[]},"akD":{"N":[],"aq":["N","jb"],"H":[],"aC":[],"aq.1":"jb","aq.0":"N"},"amQ":{"a4":[],"d":[]},"amT":{"a4":[],"d":[]},"aab":{"a4":[],"d":[]},"Rr":{"dE":[],"bi":[],"b2":[],"d":[]},"z8":{"aO":["mc"],"aA":["mc"],"aO.T":"mc","aA.T":"mc"},"HE":{"P":[],"d":[]},"EQ":{"a4":[],"d":[]},"adc":{"af":["HE"],"aN":[]},"ES":{"au":[]},"OW":{"P":[],"d":[]},"EV":{"af":["OW"],"aN":[]},"afQ":{"by":[],"aG":[],"d":[]},"aki":{"N":[],"b1":["N"],"H":[],"ow":[],"aC":[]},"ana":{"a4":[],"d":[]},"bL0":{"dE":[],"bi":[],"b2":[],"d":[]},"M3":{"i6":[]},"amo":{"au":[]},"fS":{"dp":[]},"mk":{"dp":[]},"ei":{"dp":[]},"XF":{"dp":[]},"iR":{"dp":[]},"dJ":{"kX":[]},"c8":{"uE":[]},"h3":{"fS":[],"dp":[]},"o4":{"M":[]},"aK":{"eI":[]},"eH":{"eI":[]},"vh":{"eI":[]},"X4":{"jD":["nX"]},"mA":{"jD":["nX"],"jD.T":"nX"},"a6l":{"kl":[]},"cE":{"fS":[],"dp":[]},"jg":{"fS":[],"dp":[]},"hH":{"kX":[]},"jV":{"fS":[],"dp":[]},"ji":{"fS":[],"dp":[]},"jj":{"fS":[],"dp":[]},"Fd":{"kD":[]},"anJ":{"kD":[]},"uT":{"kl":[],"ow":[],"aC":[]},"a75":{"N":[],"b1":["N"],"H":[],"aC":[]},"DG":{"i6":[],"aC":[]},"PP":{"au":[]},"pG":{"qc":[]},"N":{"H":[],"aC":[]},"w4":{"l4":["N"]},"ij":{"dQ":[]},"IK":{"ij":[],"fa":["1"],"dQ":[]},"lR":{"ij":[],"fa":["N"],"dQ":[]},"MM":{"dR":["N","lR"],"N":[],"aq":["N","lR"],"H":[],"aC":[],"aq.1":"lR","dR.1":"lR","aq.0":"N"},"a_G":{"au":[]},"MN":{"N":[],"b1":["N"],"H":[],"aC":[]},"uu":{"au":[]},"yp":{"N":[],"aq":["N","mb"],"H":[],"aC":[],"aq.1":"mb","aq.0":"N"},"akg":{"N":[],"H":[],"aC":[]},"TR":{"uu":[],"au":[]},"Q2":{"uu":[],"au":[]},"Fw":{"uu":[],"au":[]},"MP":{"N":[],"H":[],"aC":[]},"hW":{"ij":[],"fa":["N"],"dQ":[]},"yq":{"dR":["N","hW"],"N":[],"aq":["N","hW"],"H":[],"aC":[],"aq.1":"hW","dR.1":"hW","aq.0":"N"},"MR":{"N":[],"H":[],"aC":[]},"hR":{"h7":[]},"AW":{"hR":[],"h7":[]},"AU":{"hR":[],"h7":[]},"AT":{"hR":[],"h7":[]},"zg":{"oC":[],"hR":[],"h7":[]},"LU":{"oC":[],"hR":[],"h7":[]},"a6k":{"h7":[]},"oC":{"hR":[],"h7":[]},"NC":{"hR":[],"h7":[]},"HV":{"hR":[],"h7":[]},"KM":{"hR":[],"h7":[]},"JY":{"hR":[],"h7":[]},"HK":{"hR":[],"h7":[]},"oq":{"ij":[],"fa":["N"],"dQ":[]},"MU":{"dR":["N","oq"],"N":[],"aq":["N","oq"],"H":[],"aC":[],"aq.1":"oq","dR.1":"oq","aq.0":"N"},"a5a":{"au":[]},"H":{"aC":[]},"fa":{"dQ":[]},"akS":{"k1":[]},"Rk":{"k1":[]},"zX":{"k1":[]},"qy":{"ne":[]},"mb":{"fa":["N"],"dQ":[]},"ro":{"hF":[],"au":[]},"MY":{"N":[],"aq":["N","mb"],"H":[],"aC":[],"aq.1":"mb","aq.0":"N"},"MI":{"N":[],"b1":["N"],"H":[],"aC":[]},"uF":{"au":[]},"MH":{"N":[],"b1":["N"],"H":[],"aC":[]},"qK":{"N":[],"b1":["N"],"H":[],"aC":[]},"a7p":{"N":[],"b1":["N"],"H":[],"aC":[]},"MZ":{"N":[],"b1":["N"],"H":[],"aC":[]},"DD":{"N":[],"b1":["N"],"H":[],"aC":[]},"a7i":{"N":[],"b1":["N"],"H":[],"aC":[]},"MT":{"N":[],"b1":["N"],"H":[],"aC":[]},"a7k":{"N":[],"b1":["N"],"H":[],"aC":[]},"a76":{"N":[],"b1":["N"],"H":[],"aC":[]},"J2":{"au":[]},"Gx":{"N":[],"b1":["N"],"H":[],"aC":[]},"a7a":{"N":[],"b1":["N"],"H":[],"aC":[]},"a79":{"N":[],"b1":["N"],"H":[],"aC":[]},"a78":{"N":[],"b1":["N"],"H":[],"aC":[]},"SQ":{"N":[],"b1":["N"],"H":[],"aC":[]},"a7l":{"N":[],"b1":["N"],"H":[],"aC":[]},"a7m":{"N":[],"b1":["N"],"H":[],"aC":[]},"a7b":{"N":[],"b1":["N"],"H":[],"aC":[]},"a7C":{"N":[],"b1":["N"],"H":[],"aC":[]},"a7e":{"N":[],"b1":["N"],"H":[],"aC":[]},"a7n":{"N":[],"b1":["N"],"H":[],"aC":[]},"MV":{"N":[],"b1":["N"],"H":[],"ow":[],"aC":[]},"a7q":{"N":[],"b1":["N"],"H":[],"aC":[]},"MQ":{"N":[],"b1":["N"],"H":[],"aC":[]},"MW":{"N":[],"b1":["N"],"H":[],"aC":[]},"N_":{"N":[],"b1":["N"],"H":[],"aC":[]},"a77":{"N":[],"b1":["N"],"H":[],"aC":[]},"a7j":{"N":[],"b1":["N"],"H":[],"aC":[]},"a7c":{"N":[],"b1":["N"],"H":[],"aC":[]},"a7f":{"N":[],"b1":["N"],"H":[],"aC":[]},"a7h":{"N":[],"b1":["N"],"H":[],"aC":[]},"a7d":{"N":[],"b1":["N"],"H":[],"aC":[]},"MK":{"N":[],"b1":["N"],"H":[],"aC":[]},"hF":{"au":[]},"ys":{"N":[],"b1":["N"],"H":[],"aC":[]},"MX":{"N":[],"b1":["N"],"H":[],"aC":[]},"a74":{"N":[],"b1":["N"],"H":[],"aC":[]},"a7o":{"N":[],"b1":["N"],"H":[],"aC":[]},"MO":{"N":[],"b1":["N"],"H":[],"aC":[]},"Eg":{"qc":[]},"oR":{"qS":[],"fa":["d7"],"dQ":[]},"jO":{"oS":[],"fa":["d7"],"dQ":[]},"d7":{"H":[],"aC":[]},"a8R":{"l4":["d7"]},"qS":{"dQ":[]},"oS":{"dQ":[]},"a7A":{"d7":[],"b1":["N"],"H":[],"aC":[]},"a7B":{"d7":[],"b1":["N"],"H":[],"aC":[]},"a7t":{"oM":[],"d7":[],"aq":["N","he"],"H":[],"aC":[],"aq.1":"he","aq.0":"N"},"a7s":{"d7":[],"b1":["N"],"H":[],"aC":[]},"a7u":{"oM":[],"d7":[],"aq":["N","he"],"H":[],"aC":[]},"a7v":{"oM":[],"d7":[],"aq":["N","he"],"H":[],"aC":[],"aq.1":"he","aq.0":"N"},"Ef":{"he":[],"qS":[],"fa":["N"],"mS":[],"dQ":[]},"a7w":{"oM":[],"d7":[],"aq":["N","he"],"H":[],"aC":[],"aq.1":"he","aq.0":"N"},"a7y":{"oM":[],"d7":[],"aq":["N","he"],"H":[],"aC":[],"aq.1":"he","aq.0":"N"},"mS":{"dQ":[]},"he":{"qS":[],"fa":["N"],"mS":[],"dQ":[]},"oM":{"d7":[],"aq":["N","he"],"H":[],"aC":[]},"N0":{"d7":[],"b1":["d7"],"H":[],"aC":[]},"a7z":{"d7":[],"b1":["d7"],"H":[],"aC":[]},"fD":{"ij":[],"fa":["N"],"dQ":[]},"DE":{"dR":["N","fD"],"N":[],"aq":["N","fD"],"H":[],"aC":[],"aq.1":"fD","dR.1":"fD","aq.0":"N"},"MS":{"dR":["N","fD"],"N":[],"aq":["N","fD"],"H":[],"aC":[],"aq.1":"fD","dR.1":"fD","aq.0":"N"},"a7D":{"b1":["N"],"H":[],"aC":[]},"qL":{"k2":["1"],"N":[],"aq":["d7","1"],"DB":[],"H":[],"aC":[]},"uw":{"qL":["jO"],"k2":["jO"],"N":[],"aq":["d7","jO"],"DB":[],"H":[],"aC":[],"aq.1":"jO","k2.0":"jO","aq.0":"d7"},"a7r":{"qL":["oR"],"k2":["oR"],"N":[],"aq":["d7","oR"],"DB":[],"H":[],"aC":[],"aq.1":"oR","k2.0":"oR","aq.0":"d7"},"iE":{"au":[]},"p6":{"ij":[],"fa":["N"],"dQ":[]},"N2":{"dR":["N","p6"],"N":[],"aq":["N","p6"],"H":[],"aC":[],"aq.1":"p6","dR.1":"p6","aq.0":"N"},"zb":{"U":["~"]},"OO":{"cm":[]},"r9":{"cu":["r9"]},"nJ":{"cu":["nJ"]},"ru":{"cu":["ru"]},"E1":{"cu":["E1"]},"ali":{"wv":["e0"],"fO":[]},"Ny":{"au":[]},"xU":{"cu":["E1"]},"Fs":{"arM":[]},"E5":{"i6":[]},"xl":{"tU":[]},"tW":{"tU":[]},"KI":{"tU":[]},"y0":{"cm":[]},"Ls":{"cm":[]},"oW":{"dY":[]},"af8":{"dY":[]},"amq":{"Lv":[]},"oJ":{"n7":[]},"Dv":{"n7":[]},"N6":{"au":[]},"AH":{"kD":[]},"Cu":{"kD":[]},"M4":{"kD":[]},"wx":{"kD":[]},"aa_":{"uR":[]},"a9Z":{"uR":[]},"aa0":{"uR":[]},"EH":{"uR":[]},"JN":{"qY":[]},"a2B":{"qY":[]},"aj2":{"OE":[]},"pB":{"P":[],"d":[]},"Pt":{"bi":[],"b2":[],"d":[]},"wW":{"P":[],"d":[]},"bk7":{"bB":[]},"bEW":{"bB":[]},"bEV":{"bB":[]},"rU":{"bB":[]},"t3":{"bB":[]},"kf":{"bB":[]},"qH":{"bB":[]},"f2":{"c7":["1"]},"cq":{"c7":["1"],"c7.T":"1"},"Pu":{"af":["pB"]},"R1":{"af":["wW"]},"aaZ":{"c7":["bk7"],"c7.T":"bk7"},"Ji":{"c7":["bB"],"c7.T":"bB"},"a0a":{"c7":["kf"]},"a6x":{"f2":["qH"],"c7":["qH"],"c7.T":"qH","f2.T":"qH"},"Sb":{"Vm":["1"],"f2":["1"],"Gp":["1"],"c7":["1"],"c7.T":"1","f2.T":"1"},"Sc":{"Vn":["1"],"f2":["1"],"Gp":["1"],"c7":["1"],"c7.T":"1","f2.T":"1"},"Qf":{"c7":["1"],"c7.T":"1"},"HC":{"P":[],"d":[]},"adb":{"af":["HC"],"aN":[]},"ada":{"by":[],"aG":[],"d":[]},"HD":{"P":[],"d":[]},"Pw":{"af":["HD"],"aN":[]},"HJ":{"by":[],"aG":[],"d":[]},"Fc":{"P":[],"d":[]},"Ur":{"af":["Fc"],"hj":[]},"Ap":{"P":[],"d":[]},"PK":{"af":["Ap"]},"KF":{"au":[]},"aiF":{"a4":[],"d":[]},"lG":{"bi":[],"b2":[],"d":[]},"AV":{"by":[],"aG":[],"d":[]},"AS":{"by":[],"aG":[],"d":[]},"p1":{"by":[],"aG":[],"d":[]},"wc":{"by":[],"aG":[],"d":[]},"AZ":{"by":[],"aG":[],"d":[]},"b8":{"by":[],"aG":[],"d":[]},"e5":{"by":[],"aG":[],"d":[]},"t8":{"by":[],"aG":[],"d":[]},"kV":{"by":[],"aG":[],"d":[]},"KJ":{"ha":["lR"],"b2":[],"d":[],"ha.T":"lR"},"tk":{"fz":[],"aG":[],"d":[]},"ez":{"by":[],"aG":[],"d":[]},"ew":{"by":[],"aG":[],"d":[]},"iy":{"by":[],"aG":[],"d":[]},"uN":{"fz":[],"aG":[],"d":[]},"un":{"ha":["fD"],"b2":[],"d":[],"ha.T":"fD"},"DO":{"fz":[],"aG":[],"d":[]},"wb":{"fz":[],"aG":[],"d":[]},"bEx":{"bi":[],"b2":[],"d":[]},"Cx":{"by":[],"aG":[],"d":[]},"C2":{"by":[],"aG":[],"d":[]},"bu":{"by":[],"aG":[],"d":[]},"O8":{"P":[],"d":[]},"anB":{"iY":[],"bG":[],"E":[]},"anC":{"bi":[],"b2":[],"d":[]},"a5E":{"by":[],"aG":[],"d":[]},"Xk":{"by":[],"aG":[],"d":[]},"J3":{"by":[],"aG":[],"d":[]},"Yp":{"by":[],"aG":[],"d":[]},"a6h":{"by":[],"aG":[],"d":[]},"a6i":{"by":[],"aG":[],"d":[]},"a1f":{"by":[],"aG":[],"d":[]},"a2I":{"by":[],"aG":[],"d":[]},"CX":{"by":[],"aG":[],"d":[]},"aiM":{"c0":[],"bG":[],"E":[]},"a2b":{"by":[],"aG":[],"d":[]},"yU":{"by":[],"aG":[],"d":[]},"a2J":{"fz":[],"aG":[],"d":[]},"a23":{"a4":[],"d":[]},"Su":{"fz":[],"aG":[],"d":[]},"agR":{"c0":[],"bG":[],"E":[]},"a6t":{"a4":[],"d":[]},"BJ":{"fz":[],"aG":[],"d":[]},"og":{"ha":["hW"],"b2":[],"d":[],"ha.T":"hW"},"tt":{"ha":["hW"],"b2":[],"d":[],"ha.T":"hW"},"acJ":{"fz":[],"aG":[],"d":[]},"a7H":{"fz":[],"aG":[],"d":[]},"a6L":{"aG":[],"d":[]},"Lw":{"by":[],"aG":[],"d":[]},"i5":{"by":[],"aG":[],"d":[]},"Wu":{"by":[],"aG":[],"d":[]},"u8":{"by":[],"aG":[],"d":[]},"XC":{"by":[],"aG":[],"d":[]},"pY":{"by":[],"aG":[],"d":[]},"C8":{"by":[],"aG":[],"d":[]},"ir":{"a4":[],"d":[]},"ej":{"a4":[],"d":[]},"am8":{"af":["O8"]},"th":{"by":[],"aG":[],"d":[]},"SC":{"N":[],"b1":["N"],"H":[],"aC":[]},"P6":{"i6":[],"aC":[]},"yr":{"aG":[],"d":[]},"uv":{"c0":[],"bG":[],"E":[]},"ab_":{"i6":[],"aC":[]},"a_M":{"by":[],"aG":[],"d":[]},"YB":{"a4":[],"d":[]},"af1":{"au":[]},"tm":{"dE":[],"bi":[],"b2":[],"d":[]},"aiG":{"a4":[],"d":[]},"a_W":{"a4":[],"d":[]},"Jh":{"a4":[],"d":[]},"a0n":{"k0":[]},"GB":{"au":[]},"Rq":{"kk":["GB"],"bi":[],"b2":[],"d":[],"kk.T":"GB"},"a0m":{"a4":[],"d":[]},"Bq":{"P":[],"d":[]},"QH":{"af":["Bq"]},"qX":{"ec":["eN"],"au":[]},"Bv":{"P":[],"d":[]},"tq":{"af":["Bv"],"hj":[],"aN":[]},"T4":{"P":[],"d":[]},"nI":{"Fb":[],"kl":[]},"aee":{"by":[],"aG":[],"d":[]},"akc":{"N":[],"b1":["N"],"H":[],"aC":[]},"QI":{"fz":[],"aG":[],"d":[]},"al3":{"af":["T4"],"brN":[]},"aeb":{"kD":[]},"rc":{"f2":["1"],"c7":["1"],"c7.T":"1","f2.T":"1"},"Ue":{"f2":["1"],"c7":["1"],"c7.T":"1","f2.T":"1"},"Uf":{"f2":["1"],"c7":["1"],"c7.T":"1","f2.T":"1"},"alb":{"f2":["qQ"],"c7":["qQ"],"c7.T":"qQ","f2.T":"qQ"},"aez":{"f2":["o5"],"c7":["o5"],"c7.T":"o5","f2.T":"o5"},"eJ":{"au":[]},"wU":{"eJ":[],"au":[]},"JW":{"au":[]},"wS":{"P":[],"d":[]},"QZ":{"kk":["eJ"],"bi":[],"b2":[],"d":[],"kk.T":"eJ"},"FS":{"af":["wS"]},"a17":{"P":[],"d":[]},"agi":{"af":["wS"]},"a0L":{"a4":[],"d":[]},"JX":{"P":[],"d":[]},"bjC":{"bB":[]},"xS":{"bB":[]},"yb":{"bB":[]},"tp":{"bB":[]},"R0":{"eJ":[],"au":[]},"agj":{"af":["JX"]},"a7F":{"c7":["bjC"],"c7.T":"bjC"},"a5s":{"c7":["xS"],"c7.T":"xS"},"a6u":{"c7":["yb"],"c7.T":"yb"},"Jf":{"c7":["tp"],"c7.T":"tp"},"K2":{"P":[],"d":[]},"K4":{"af":["K2"]},"R3":{"bi":[],"b2":[],"d":[]},"q6":{"P":[],"d":[]},"l2":{"af":["q6<1>"]},"hy":{"iq":[]},"bo":{"hy":["1"],"iq":[]},"a4":{"d":[]},"P":{"d":[]},"aG":{"d":[]},"bG":{"E":[]},"i7":{"bG":[],"E":[]},"iY":{"bG":[],"E":[]},"q9":{"hy":["1"],"iq":[]},"b2":{"d":[]},"ha":{"b2":[],"d":[]},"bi":{"b2":[],"d":[]},"a2z":{"aG":[],"d":[]},"by":{"aG":[],"d":[]},"fz":{"aG":[],"d":[]},"a0K":{"aG":[],"d":[]},"IH":{"bG":[],"E":[]},"Eo":{"bG":[],"E":[]},"Mu":{"bG":[],"E":[]},"xZ":{"bG":[],"E":[]},"c0":{"bG":[],"E":[]},"a2y":{"c0":[],"bG":[],"E":[]},"NJ":{"c0":[],"bG":[],"E":[]},"kr":{"c0":[],"bG":[],"E":[]},"aiC":{"bG":[],"E":[]},"aiH":{"d":[]},"n6":{"P":[],"d":[]},"Du":{"af":["n6"]},"dy":{"x0":["1"]},"a1k":{"a4":[],"d":[]},"agp":{"by":[],"aG":[],"d":[]},"qb":{"P":[],"d":[]},"G1":{"af":["qb"]},"lJ":{"oy":[]},"bC":{"a4":[],"d":[]},"x8":{"dE":[],"bi":[],"b2":[],"d":[]},"C3":{"P":[],"d":[]},"Rj":{"af":["C3"],"hj":[]},"a1W":{"a4":[],"d":[]},"wC":{"aO":["eI"],"aA":["eI"],"aO.T":"eI","aA.T":"eI"},"w_":{"aO":["dg?"],"aA":["dg?"],"aO.T":"dg?","aA.T":"dg?"},"p_":{"aO":["J"],"aA":["J"],"aO.T":"J","aA.T":"J"},"Hz":{"P":[],"d":[]},"HB":{"P":[],"d":[]},"Hy":{"P":[],"d":[]},"Hw":{"P":[],"d":[]},"HA":{"P":[],"d":[]},"a_Q":{"aO":["kX"],"aA":["kX"],"aO.T":"kX","aA.T":"kX"},"Jw":{"aO":["aK"],"aA":["aK"],"aO.T":"aK","aA.T":"aK"},"XE":{"aO":["ei?"],"aA":["ei?"],"aO.T":"ei?","aA.T":"ei?"},"a2_":{"P":[],"d":[]},"C7":{"af":["1"],"aN":[]},"Ai":{"af":["1"],"aN":[]},"ad7":{"af":["Hz"],"aN":[]},"ad9":{"af":["HB"],"aN":[]},"ad6":{"af":["Hy"],"aN":[]},"ad5":{"af":["Hw"],"aN":[]},"ad8":{"af":["HA"],"aN":[]},"oj":{"bi":[],"b2":[],"d":[]},"Kq":{"iY":[],"bG":[],"E":[]},"kk":{"bi":[],"b2":[],"d":[]},"G5":{"iY":[],"bG":[],"E":[]},"dE":{"bi":[],"b2":[],"d":[]},"ra":{"a4":[],"d":[]},"Kx":{"P":[],"d":[]},"Ry":{"af":["Kx"],"aN":[]},"ah1":{"a4":[],"d":[]},"aap":{"ec":["bS"],"au":[]},"ti":{"aG":[],"d":[]},"G8":{"c0":[],"bG":[],"E":[]},"Cp":{"ti":["aL"],"aG":[],"d":[],"ti.0":"aL"},"SL":{"lk":["aL","N"],"N":[],"b1":["N"],"H":[],"aC":[],"lk.0":"aL"},"RK":{"bi":[],"b2":[],"d":[]},"KW":{"P":[],"d":[]},"anY":{"fy":["ay"],"fy.T":"ay"},"a_Z":{"ay":[]},"ahH":{"af":["KW"]},"bqy":{"bi":[],"b2":[],"d":[]},"CD":{"hH":[],"kX":[]},"Dw":{"a4":[],"d":[]},"ahJ":{"a4":[],"d":[]},"afq":{"au":[]},"ahI":{"by":[],"aG":[],"d":[]},"akn":{"N":[],"b1":["N"],"H":[],"aC":[]},"qp":{"oj":["hM"],"bi":[],"b2":[],"d":[],"oj.T":"hM"},"RT":{"P":[],"d":[]},"ai7":{"af":["RT"],"hj":[]},"Fp":{"eK":[],"eS":[]},"alg":{"by":[],"aG":[],"d":[]},"aku":{"N":[],"b1":["N"],"H":[],"aC":[]},"a58":{"a4":[],"d":[]},"WG":{"P":[],"d":[]},"adh":{"x0":["Fp"]},"aii":{"a4":[],"d":[]},"LJ":{"a4":[],"d":[]},"f5":{"jM":[]},"x2":{"bi":[],"b2":[],"d":[]},"LK":{"P":[],"d":[]},"ic":{"qN":[]},"kt":{"af":["LK"],"aN":[]},"aiB":{"dc":["~"]},"Gl":{"vi":[]},"Gk":{"vi":[]},"S5":{"vi":[]},"S6":{"vi":[]},"agz":{"fT":["a6>?"],"au":[]},"dP":{"b2":[],"d":[]},"S9":{"bG":[],"E":[]},"pi":{"ij":[],"fa":["N"],"dQ":[]},"a5L":{"fz":[],"aG":[],"d":[]},"Gy":{"dR":["N","pi"],"N":[],"aq":["N","pi"],"H":[],"aC":[],"aq.1":"pi","dR.1":"pi","aq.0":"N"},"qt":{"au":[]},"rk":{"P":[],"d":[]},"Gn":{"af":["rk"]},"CY":{"P":[],"d":[]},"D_":{"af":["CY"],"aN":[]},"vq":{"N":[],"aq":["N","fD"],"H":[],"aC":[],"aq.1":"fD","aq.0":"N"},"LW":{"P":[],"d":[]},"vk":{"j1":["vk"],"j1.E":"vk"},"zR":{"bi":[],"b2":[],"d":[]},"vp":{"N":[],"b1":["N"],"H":[],"aC":[],"j1":["vp"],"j1.E":"vp"},"SM":{"N":[],"b1":["N"],"H":[],"aC":[]},"TZ":{"fz":[],"aG":[],"d":[]},"an1":{"c0":[],"bG":[],"E":[]},"H0":{"fD":[],"ij":[],"fa":["N"],"dQ":[]},"aiT":{"af":["LW"]},"Go":{"aG":[],"d":[]},"aiS":{"c0":[],"bG":[],"E":[]},"af7":{"by":[],"aG":[],"d":[]},"Kb":{"P":[],"d":[]},"Oe":{"P":[],"d":[]},"ue":{"k0":[]},"R9":{"af":["Kb"],"aN":[]},"R8":{"au":[]},"ags":{"au":[]},"TG":{"af":["Oe"],"aN":[]},"TF":{"au":[]},"br7":{"bP":["1"],"jG":[],"iq":[]},"D1":{"a4":[],"d":[]},"xW":{"au":[]},"D2":{"P":[],"d":[]},"a5N":{"m1":[]},"vl":{"nc":[],"iE":[],"au":[],"m1":[]},"aiY":{"af":["D2"]},"jJ":{"dX":["1"],"fg":["1"],"dc":["1"]},"LY":{"dX":["1"],"fg":["1"],"dc":["1"],"dX.T":"1"},"uo":{"a4":[],"qF":[],"d":[]},"Dj":{"bi":[],"b2":[],"d":[]},"ux":{"P":[],"d":[]},"zi":{"bi":[],"b2":[],"d":[]},"N8":{"P":[],"d":[]},"fT":{"au":[]},"akN":{"af":["ux"]},"SY":{"af":["N8"]},"dh":{"fT":["1"],"au":[]},"lu":{"fT":["1"],"au":[]},"SX":{"lu":["1"],"fT":["1"],"au":[]},"N4":{"lu":["1"],"fT":["1"],"au":[],"dh.T":"1","lu.T":"1"},"yx":{"lu":["p"],"fT":["p"],"au":[],"dh.T":"p","lu.T":"p"},"N5":{"lu":["f?"],"fT":["f?"],"au":[],"dh.T":"f?","lu.T":"f?"},"DM":{"P":[],"d":[]},"bon":{"mj":["U

"]},"GC":{"af":["DM<1>"]},"akY":{"bi":[],"b2":[],"d":[]},"Xi":{"mj":["U

"]},"a7J":{"mj":["U

"],"hj":[],"mj.T":"U

"},"DN":{"au":[]},"a7Q":{"au":[]},"akK":{"fT":["lm?"],"au":[],"dh.T":"lm?"},"RW":{"bi":[],"b2":[],"d":[]},"Gj":{"P":[],"d":[]},"kJ":{"af":["Gj<1>"]},"dX":{"fg":["1"],"dc":["1"]},"CZ":{"dc":["1"]},"fg":{"dc":["1"]},"afh":{"c7":["kf"],"c7.T":"kf"},"Mm":{"dX":["1"],"fg":["1"],"dc":["1"]},"MB":{"dX":["1"],"fg":["1"],"dc":["1"]},"a7X":{"a4":[],"d":[]},"Nh":{"jD":["1"],"jD.T":"1"},"Ni":{"bi":[],"b2":[],"d":[]},"yC":{"au":[]},"GF":{"P":[],"d":[]},"GD":{"bP":["iq"],"jG":[],"iq":[],"bP.T":"iq"},"kx":{"uJ":[]},"a8M":{"uJ":[]},"Ti":{"af":["GF"]},"JR":{"m1":[]},"jN":{"lL":[],"k0":[]},"kw":{"jN":[],"lL":[],"k0":[]},"DV":{"jN":[],"lL":[],"k0":[]},"n0":{"jN":[],"lL":[],"k0":[]},"oP":{"jN":[],"lL":[],"k0":[]},"aaK":{"jN":[],"lL":[],"k0":[]},"T6":{"bi":[],"b2":[],"d":[]},"ve":{"j1":["ve"],"j1.E":"ve"},"Nk":{"P":[],"d":[]},"Nl":{"af":["Nk"]},"nc":{"iE":[],"au":[],"m1":[]},"yD":{"k0":[]},"yG":{"nc":[],"iE":[],"au":[],"m1":[]},"xy":{"a4":[],"d":[]},"a85":{"a4":[],"d":[]},"J5":{"a4":[],"d":[]},"XJ":{"a4":[],"d":[]},"a1z":{"a4":[],"d":[]},"Nm":{"P":[],"d":[]},"T9":{"bi":[],"b2":[],"d":[]},"Tb":{"P":[],"d":[]},"DW":{"af":["Nm"],"aN":[]},"al6":{"af":["Tb"]},"Ta":{"au":[]},"al5":{"by":[],"aG":[],"d":[]},"akt":{"N":[],"b1":["N"],"H":[],"aC":[]},"akL":{"fT":["Y?"],"au":[],"dh.T":"Y?"},"hE":{"bB":[]},"Ng":{"f2":["hE"],"c7":["hE"],"c7.T":"hE","f2.T":"hE"},"Dx":{"P":[],"d":[]},"pq":{"kp":[],"eK":[],"eS":[]},"pr":{"kC":[],"eK":[],"eS":[]},"DX":{"au":[]},"oK":{"af":["1"],"aN":[]},"CQ":{"au":[]},"DY":{"P":[],"d":[]},"E_":{"bi":[],"b2":[],"d":[]},"alf":{"hF":[],"af":["DY"],"au":[]},"a8b":{"au":[]},"NE":{"P":[],"d":[]},"alu":{"af":["NE"]},"alv":{"oj":["B"],"bi":[],"b2":[],"d":[],"oj.T":"B"},"bj":{"Eb":[]},"yR":{"P":[],"d":[]},"NG":{"P":[],"d":[]},"yQ":{"au":[]},"Tm":{"af":["yR"]},"NH":{"au":[]},"Tl":{"af":["NG"]},"alA":{"bi":[],"b2":[],"d":[]},"GJ":{"by":[],"aG":[],"d":[]},"a8A":{"a4":[],"d":[]},"alG":{"c0":[],"bG":[],"E":[]},"SV":{"N":[],"b1":["N"],"DB":[],"H":[],"aC":[]},"kz":{"aG":[],"d":[]},"Ee":{"kz":[],"aG":[],"d":[]},"a8S":{"aG":[],"d":[]},"m6":{"kz":[],"aG":[],"d":[]},"a8P":{"kz":[],"aG":[],"d":[]},"Eh":{"c0":[],"bG":[],"E":[]},"KE":{"ha":["mS"],"b2":[],"d":[],"ha.T":"mS"},"a8O":{"a4":[],"d":[]},"alK":{"kz":[],"aG":[],"d":[]},"alL":{"by":[],"aG":[],"d":[]},"akw":{"d7":[],"b1":["d7"],"H":[],"aC":[]},"a8N":{"a4":[],"d":[]},"alJ":{"by":[],"aG":[],"d":[]},"NP":{"iz":["1","2"],"aG":[],"d":[]},"NQ":{"c0":[],"bG":[],"E":[]},"NT":{"au":[]},"a8Z":{"by":[],"aG":[],"d":[]},"GA":{"N":[],"b1":["N"],"H":[],"aC":[]},"a8Y":{"au":[]},"Qw":{"au":[]},"a9r":{"a4":[],"d":[]},"O9":{"P":[],"d":[]},"Tz":{"af":["O9"]},"oY":{"eK":[],"eS":[]},"oZ":{"eK":[],"eS":[]},"I0":{"eK":[],"eS":[]},"N1":{"N":[],"b1":["N"],"H":[],"aC":[]},"DF":{"N":[],"b1":["N"],"H":[],"aC":[]},"a9V":{"by":[],"aG":[],"d":[]},"a9U":{"by":[],"aG":[],"d":[]},"aa1":{"by":[],"aG":[],"d":[]},"Bc":{"dE":[],"bi":[],"b2":[],"d":[]},"bEB":{"dE":[],"bi":[],"b2":[],"d":[]},"aiI":{"a4":[],"d":[]},"m9":{"a4":[],"d":[]},"Jj":{"bB":[]},"wr":{"bB":[]},"wt":{"bB":[]},"ws":{"bB":[]},"iU":{"bB":[]},"q_":{"iU":[],"bB":[]},"q1":{"iU":[],"bB":[]},"wK":{"iU":[],"bB":[]},"wG":{"iU":[],"bB":[]},"wH":{"iU":[],"bB":[]},"l_":{"iU":[],"bB":[]},"tu":{"iU":[],"bB":[]},"q2":{"iU":[],"bB":[]},"wI":{"iU":[],"bB":[]},"wJ":{"iU":[],"bB":[]},"q0":{"iU":[],"bB":[]},"qO":{"bB":[]},"aAS":{"bB":[]},"qQ":{"bB":[]},"o5":{"bB":[]},"ug":{"bB":[]},"us":{"bB":[]},"n8":{"bB":[]},"uW":{"bB":[]},"me":{"bB":[]},"uU":{"bB":[]},"a09":{"bB":[]},"jb":{"ij":[],"fa":["N"],"dQ":[]},"rp":{"P":[],"d":[]},"Tg":{"P":[],"d":[]},"OH":{"P":[],"d":[]},"Tj":{"af":["rp"],"aN":[]},"Th":{"af":["Tg"],"aN":[]},"TU":{"af":["OH"]},"IF":{"ec":["AX"],"au":[],"hj":[]},"zc":{"P":[],"d":[]},"QL":{"bi":[],"b2":[],"d":[]},"an4":{"af":["zc"]},"Qd":{"au":[]},"ER":{"a4":[],"d":[]},"HF":{"P":[],"d":[]},"Ec":{"P":[],"d":[]},"cS":{"by":[],"aG":[],"d":[]},"Pv":{"af":["HF"]},"a80":{"P":[],"d":[]},"a7N":{"P":[],"d":[]},"a8E":{"P":[],"d":[]},"DA":{"aO":["lj"],"aA":["lj"],"aO.T":"lj","aA.T":"lj"},"Mo":{"P":[],"d":[]},"a_N":{"P":[],"d":[]},"a_X":{"P":[],"d":[]},"KS":{"P":[],"d":[]},"WF":{"P":[],"d":[]},"F_":{"P":[],"d":[]},"F0":{"af":["F_<1>"]},"P0":{"ec":["F1"],"au":[]},"F7":{"P":[],"d":[]},"H5":{"af":["F7<1>"]},"Up":{"bi":[],"b2":[],"d":[]},"aaT":{"a4":[],"d":[]},"r4":{"fz":[],"aG":[],"d":[]},"anQ":{"c0":[],"bG":[],"E":[]},"a8x":{"fz":[],"aG":[],"d":[]},"Uq":{"bi":[],"b2":[],"d":[]},"F9":{"a4":[],"d":[]},"anR":{"by":[],"aG":[],"d":[]},"akG":{"N":[],"b1":["N"],"H":[],"aC":[]},"Fb":{"kl":[]},"anW":{"ha":["mb"],"b2":[],"d":[],"ha.T":"mb"},"adq":{"by":[],"aG":[],"d":[]},"ST":{"N":[],"b1":["N"],"H":[],"aC":[]},"zr":{"P":[],"d":[]},"ao_":{"af":["zr"]},"kZ":{"l1":[]},"of":{"l1":[]},"a5u":{"aua":[]},"a1S":{"bpt":[]},"a1P":{"cm":[]},"adk":{"fy":["fK"],"fy.T":"fK"},"WK":{"fK":[]},"WL":{"fK":[]},"WM":{"fK":[]},"WN":{"fK":[]},"WO":{"fK":[]},"WP":{"fK":[]},"WQ":{"fK":[]},"HO":{"fK":[]},"WR":{"fK":[]},"WS":{"fK":[]},"HP":{"fK":[]},"WT":{"fK":[]},"WU":{"fK":[]},"ml":{"j1":["ml<1>"],"j1.E":"ml<1>"},"a1K":{"a4":[],"d":[]},"am9":{"bG":[],"E":[]},"Px":{"hY":["my"]},"To":{"hY":["aN"]},"R_":{"hY":["eJ"]},"zJ":{"hY":["~"]},"Sf":{"hY":["xW"]},"ib":{"hY":["1"]},"dz":{"hY":["~"]},"cW":{"hY":["ec<1>"]},"TM":{"hY":["qW"]},"mr":{"hY":["qX"]},"Uk":{"hY":["~"]},"anM":{"hZ":["~","zJ"]},"add":{"hZ":["my","Px"]},"an5":{"hZ":["aN","To"],"aN":[]},"agf":{"hZ":["eJ","R_"]},"Ga":{"hZ":["~","zJ"]},"aiV":{"hZ":["xW","Sf"]},"RU":{"hZ":["1","ib<1>"]},"afE":{"hZ":["~","dz"]},"GQ":{"hZ":["ec<1>","cW<1>"]},"amt":{"hZ":["qW","TM"]},"amK":{"hZ":["qX","mr"]},"a1q":{"az":[]},"agr":{"fy":["az"],"fy.T":"az"},"YQ":{"az":[]},"YR":{"az":[]},"YS":{"az":[]},"YT":{"az":[]},"YU":{"az":[]},"YV":{"az":[]},"YW":{"az":[]},"YX":{"az":[]},"YY":{"az":[]},"YZ":{"az":[]},"Z_":{"az":[]},"Z0":{"az":[]},"Z1":{"az":[]},"IO":{"az":[]},"Z2":{"az":[]},"Z3":{"az":[]},"IP":{"az":[]},"Z4":{"az":[]},"Z5":{"az":[]},"Z6":{"az":[]},"Z7":{"az":[]},"Z8":{"az":[]},"Z9":{"az":[]},"Za":{"az":[]},"Zb":{"az":[]},"IQ":{"az":[]},"Zc":{"az":[]},"Zd":{"az":[]},"Ze":{"az":[]},"Zf":{"az":[]},"Zg":{"az":[]},"Zh":{"az":[]},"Zi":{"az":[]},"Zj":{"az":[]},"Zk":{"az":[]},"Zl":{"az":[]},"Zm":{"az":[]},"Zn":{"az":[]},"Zo":{"az":[]},"Zp":{"az":[]},"Zq":{"az":[]},"Zr":{"az":[]},"Zs":{"az":[]},"Zt":{"az":[]},"Zu":{"az":[]},"Zv":{"az":[]},"Zw":{"az":[]},"Zx":{"az":[]},"Zy":{"az":[]},"Zz":{"az":[]},"ZA":{"az":[]},"IR":{"az":[]},"ZB":{"az":[]},"ZC":{"az":[]},"ZD":{"az":[]},"ZE":{"az":[]},"ZF":{"az":[]},"ZG":{"az":[]},"ZH":{"az":[]},"ZI":{"az":[]},"ZJ":{"az":[]},"ZK":{"az":[]},"ZL":{"az":[]},"ZM":{"az":[]},"ZN":{"az":[]},"ZO":{"az":[]},"ZP":{"az":[]},"ZQ":{"az":[]},"ZR":{"az":[]},"ZS":{"az":[]},"ZT":{"az":[]},"ZU":{"az":[]},"ZV":{"az":[]},"ZW":{"az":[]},"ZX":{"az":[]},"ZY":{"az":[]},"ZZ":{"az":[]},"a__":{"az":[]},"a_0":{"az":[]},"a_1":{"az":[]},"a_2":{"az":[]},"a_3":{"az":[]},"a_4":{"az":[]},"a_5":{"az":[]},"a_6":{"az":[]},"a_7":{"az":[]},"a_8":{"az":[]},"IS":{"az":[]},"a_9":{"az":[]},"a_a":{"az":[]},"a_b":{"az":[]},"a_c":{"az":[]},"a_d":{"az":[]},"a_e":{"az":[]},"a_f":{"az":[]},"IT":{"az":[]},"a_g":{"az":[]},"a_h":{"az":[]},"a_i":{"az":[]},"a_j":{"az":[]},"a_k":{"az":[]},"a_l":{"az":[]},"a_m":{"az":[]},"a_n":{"az":[]},"a_o":{"az":[]},"a_p":{"az":[]},"a_q":{"az":[]},"a_r":{"az":[]},"a_s":{"az":[]},"IU":{"az":[]},"a_t":{"az":[]},"IV":{"az":[]},"a_u":{"az":[]},"a_v":{"az":[]},"a_w":{"az":[]},"a3a":{"av":[]},"a3b":{"av":[]},"a3c":{"av":[]},"a3d":{"av":[]},"a3e":{"av":[]},"a3f":{"av":[]},"a3g":{"av":[]},"a3h":{"av":[]},"a3i":{"av":[]},"a3j":{"av":[]},"a3k":{"av":[]},"a3l":{"av":[]},"a3m":{"av":[]},"Lb":{"av":[]},"a3n":{"av":[]},"a3o":{"av":[]},"Lc":{"av":[]},"a3p":{"av":[]},"a3q":{"av":[]},"a3r":{"av":[]},"a3s":{"av":[]},"a3t":{"av":[]},"a3u":{"av":[]},"a3v":{"av":[]},"a3w":{"av":[]},"Ld":{"av":[]},"a3x":{"av":[]},"a3y":{"av":[]},"a3z":{"av":[]},"a3A":{"av":[]},"a3B":{"av":[]},"a3C":{"av":[]},"a3D":{"av":[]},"a3E":{"av":[]},"a3F":{"av":[]},"a3G":{"av":[]},"a3H":{"av":[]},"a3I":{"av":[]},"a3J":{"av":[]},"a3K":{"av":[]},"a3L":{"av":[]},"a3M":{"av":[]},"a3N":{"av":[]},"a3O":{"av":[]},"a3P":{"av":[]},"a3Q":{"av":[]},"a3R":{"av":[]},"a3S":{"av":[]},"a3T":{"av":[]},"a3U":{"av":[]},"a3V":{"av":[]},"Le":{"av":[]},"a3W":{"av":[]},"a3X":{"av":[]},"a3Y":{"av":[]},"a3Z":{"av":[]},"a4_":{"av":[]},"a40":{"av":[]},"a41":{"av":[]},"a42":{"av":[]},"a43":{"av":[]},"a44":{"av":[]},"a45":{"av":[]},"a46":{"av":[]},"a47":{"av":[]},"a48":{"av":[]},"a49":{"av":[]},"a4a":{"av":[]},"a4b":{"av":[]},"a4c":{"av":[]},"a4d":{"av":[]},"a4e":{"av":[]},"a4f":{"av":[]},"a4g":{"av":[]},"a4h":{"av":[]},"a4i":{"av":[]},"a4j":{"av":[]},"a4k":{"av":[]},"a4l":{"av":[]},"a4m":{"av":[]},"a4n":{"av":[]},"a4o":{"av":[]},"a4p":{"av":[]},"a4q":{"av":[]},"a4r":{"av":[]},"a4s":{"av":[]},"a4t":{"av":[]},"a4u":{"av":[]},"Lf":{"av":[]},"a4v":{"av":[]},"a4w":{"av":[]},"a4x":{"av":[]},"a4y":{"av":[]},"a4z":{"av":[]},"a4A":{"av":[]},"a4B":{"av":[]},"Lg":{"av":[]},"a4C":{"av":[]},"a4D":{"av":[]},"a4E":{"av":[]},"a4F":{"av":[]},"a4G":{"av":[]},"a4H":{"av":[]},"a4I":{"av":[]},"a4J":{"av":[]},"a4K":{"av":[]},"a4L":{"av":[]},"a4M":{"av":[]},"a4N":{"av":[]},"a4O":{"av":[]},"Lh":{"av":[]},"a4P":{"av":[]},"Li":{"av":[]},"a4Q":{"av":[]},"a4R":{"av":[]},"a4S":{"av":[]},"ab0":{"ay":[]},"ab1":{"ay":[]},"ab2":{"ay":[]},"ab3":{"ay":[]},"ab4":{"ay":[]},"ab5":{"ay":[]},"ab6":{"ay":[]},"ab7":{"ay":[]},"ab8":{"ay":[]},"ab9":{"ay":[]},"aba":{"ay":[]},"abb":{"ay":[]},"abc":{"ay":[]},"P7":{"ay":[]},"abd":{"ay":[]},"abe":{"ay":[]},"P8":{"ay":[]},"abf":{"ay":[]},"abg":{"ay":[]},"abh":{"ay":[]},"abi":{"ay":[]},"abj":{"ay":[]},"abk":{"ay":[]},"abl":{"ay":[]},"abm":{"ay":[]},"P9":{"ay":[]},"abn":{"ay":[]},"abo":{"ay":[]},"abp":{"ay":[]},"abq":{"ay":[]},"abr":{"ay":[]},"abs":{"ay":[]},"abt":{"ay":[]},"abu":{"ay":[]},"abv":{"ay":[]},"abw":{"ay":[]},"abx":{"ay":[]},"aby":{"ay":[]},"abz":{"ay":[]},"abA":{"ay":[]},"abB":{"ay":[]},"abC":{"ay":[]},"abD":{"ay":[]},"abE":{"ay":[]},"abF":{"ay":[]},"abG":{"ay":[]},"abH":{"ay":[]},"abI":{"ay":[]},"abJ":{"ay":[]},"abK":{"ay":[]},"abL":{"ay":[]},"Pa":{"ay":[]},"abM":{"ay":[]},"abN":{"ay":[]},"abO":{"ay":[]},"abP":{"ay":[]},"abQ":{"ay":[]},"abR":{"ay":[]},"abS":{"ay":[]},"abT":{"ay":[]},"abU":{"ay":[]},"abV":{"ay":[]},"abW":{"ay":[]},"abX":{"ay":[]},"abY":{"ay":[]},"abZ":{"ay":[]},"ac_":{"ay":[]},"ac0":{"ay":[]},"ac1":{"ay":[]},"ac2":{"ay":[]},"ac3":{"ay":[]},"ac4":{"ay":[]},"ac5":{"ay":[]},"ac6":{"ay":[]},"ac7":{"ay":[]},"ac8":{"ay":[]},"ac9":{"ay":[]},"aca":{"ay":[]},"acb":{"ay":[]},"acc":{"ay":[]},"acd":{"ay":[]},"ace":{"ay":[]},"acf":{"ay":[]},"acg":{"ay":[]},"ach":{"ay":[]},"aci":{"ay":[]},"acj":{"ay":[]},"ack":{"ay":[]},"Pb":{"ay":[]},"acl":{"ay":[]},"acm":{"ay":[]},"acn":{"ay":[]},"aco":{"ay":[]},"acp":{"ay":[]},"acq":{"ay":[]},"acr":{"ay":[]},"Pc":{"ay":[]},"acs":{"ay":[]},"act":{"ay":[]},"acu":{"ay":[]},"acv":{"ay":[]},"acw":{"ay":[]},"acx":{"ay":[]},"acy":{"ay":[]},"acz":{"ay":[]},"acA":{"ay":[]},"acB":{"ay":[]},"acC":{"ay":[]},"acD":{"ay":[]},"acE":{"ay":[]},"Pd":{"ay":[]},"acF":{"ay":[]},"Pe":{"ay":[]},"acG":{"ay":[]},"acH":{"ay":[]},"acI":{"ay":[]},"a1r":{"av":[]},"ai2":{"fy":["av"],"fy.T":"av"},"a1t":{"ay":[]},"anZ":{"fy":["ay"],"fy.T":"ay"},"we":{"P":[],"d":[]},"aeh":{"af":["we"]},"YA":{"P":[],"d":[]},"IJ":{"af":["1"]},"B1":{"i7":[],"bG":[],"E":[],"bk9":[]},"Ms":{"P":[],"d":[]},"EZ":{"bi":[],"b2":[],"d":[]},"a6A":{"af":["Ms"]},"U7":{"iY":[],"bG":[],"E":[]},"U0":{"P":[],"d":[]},"aai":{"af":["U0"],"aN":[]},"cQ":{"zj":["1"],"ac":["1"],"e":["1"],"an":["1"],"z":["1"],"ac.E":"1","z.E":"1"},"oe":{"md":["1","2"],"xH":["1","2"],"H2":["1","2"],"a6":["1","2"]},"Kd":{"au":[]},"Kc":{"au":[],"hj":[]},"i_":{"fU":[]},"a7R":{"mH":["eq","a6"]},"akX":{"cr":["eq","a6"],"cr.S":"eq","cr.T":"a6"},"akW":{"cr":["a6","eq"],"cr.S":"a6","cr.T":"eq"},"BC":{"a4":[],"d":[]},"PV":{"P":[],"d":[]},"adL":{"af":["PV"]},"a1v":{"d0":[]},"BU":{"cm":[]},"tO":{"bi":[],"b2":[],"d":[]},"B5":{"a4":[],"d":[]},"io":{"f5":["1"],"jM":[]},"Qv":{"dX":["1"],"fg":["1"],"dc":["1"],"dX.T":"1"},"oz":{"io":["1"],"f5":["1"],"jM":[]},"CK":{"a4":[],"d":[]},"ki":{"m_":[]},"bKm":{"m_":[]},"a8t":{"m_":[]},"m5":{"m_":[]},"CW":{"f5":["~"],"jM":[]},"aeg":{"au":[]},"BX":{"kk":["BW"],"bi":[],"b2":[],"d":[],"kk.T":"BW"},"BW":{"au":[]},"Cq":{"I9":["1"]},"a1H":{"d0":[]},"Xx":{"r_":["I2"]},"Bb":{"dl":[],"cu":["dl"]},"J8":{"r_":["1"]},"a_K":{"r_":["dl"]},"Oc":{"Ob":[]},"w1":{"I9":["1"]},"XH":{"w1":["1"],"I9":["1"]},"Cr":{"w1":["1"],"Cq":["1"],"I9":["1"]},"C0":{"ac":["1"],"a0_":["1"],"e":["1"],"an":["1"],"z":["1"],"ac.E":"1","z.E":"1"},"RE":{"z":["1"],"z.E":"1"},"a1I":{"P":[],"d":[]},"agA":{"i7":[],"bG":[],"E":[],"bk9":[]},"Xr":{"avW":[]},"Ib":{"avW":[]},"AC":{"z0":["e"],"bA":["e"],"bA.T":"e"},"ID":{"cm":[]},"Ij":{"cN":["f","f","1"],"a6":["f","1"],"cN.V":"1","cN.K":"f","cN.C":"f"},"qw":{"ec":["j7<1,2>"],"au":[]},"WY":{"uJ":[]},"KT":{"P":[],"d":[]},"RI":{"af":["KT"]},"K1":{"a4":[],"d":[]},"CU":{"a4":[],"d":[]},"CV":{"a4":[],"d":[]},"D3":{"P":[],"d":[]},"Sg":{"af":["D3<1,2>"]},"FR":{"a4":[],"d":[]},"LZ":{"a4":[],"d":[]},"M_":{"a4":[],"d":[]},"v3":{"a4":[],"d":[]},"M0":{"a4":[],"d":[]},"M1":{"a4":[],"d":[]},"FC":{"v9":[]},"FE":{"v9":[]},"FD":{"v9":[]},"a2P":{"cm":[]},"xo":{"cu":["xo"]},"tw":{"P":[],"d":[]},"QU":{"af":["tw"],"aN":[]},"LS":{"P":[],"d":[]},"aiL":{"af":["LS"]},"a6b":{"cm":[]},"lq":{"cu":["bt5"]},"a6C":{"cm":[]},"pD":{"bm":["C<2>"],"bp":["C<2>"],"bO":[]},"hO":{"h2":["1"]},"An":{"hO":["1"],"h2":["1"]},"fm":{"pD":["1","2"],"bm":["C<2>"],"bp":["C<2>"],"bO":[],"bm.0":"C<2>","fm.0":"1","fm.T":"2","bp.0":"C<2>"},"o_":{"eZ":["1","2"],"mB":["1","2"],"hk":["1","2"],"bY":["2"],"da":["C<2>"],"aV":["C<2>"],"aV.0":"C<2>","hk.T":"2","eZ.0":"1","eZ.T":"2","bY.T":"2"},"mB":{"hk":["1","2"],"bY":["2"],"aV":["C<2>"]},"eZ":{"mB":["1","2"],"hk":["1","2"],"bY":["2"],"aV":["C<2>"]},"Eq":{"bm":["C<2>"],"bp":["C<2>"],"bO":[]},"mG":{"h2":["1"]},"vV":{"mG":["1"],"h2":["1"]},"HT":{"Eq":["1","2"],"bm":["C<2>"],"bp":["C<2>"],"bO":[],"bm.0":"C<2>","bp.0":"C<2>"},"Ao":{"Od":["1","2"],"mB":["1","2"],"hk":["1","2"],"bY":["2"],"da":["C<2>"],"aV":["C<2>"],"aV.0":"C<2>","hk.T":"2","bY.T":"2"},"Od":{"mB":["1","2"],"hk":["1","2"],"bY":["2"],"aV":["C<2>"]},"fL":{"C":["1"]},"eY":{"C":["1"]},"eu":{"C":["1"]},"da":{"aV":["1"]},"e7":{"bO":[]},"bm":{"bp":["1"],"bO":[]},"e2":{"kv":["1"]},"zO":{"kv":["1"]},"Do":{"bO":[]},"Ya":{"d0":[]},"Gt":{"kv":["1"]},"n5":{"bp":["2"],"bp.0":"2"},"rm":{"bp":["2"],"bp.0":"2"},"GG":{"kv":["2"]},"zn":{"bm":["1"],"bp":["1"],"bO":[],"bm.0":"1","bp.0":"1"},"F8":{"aV":["1"],"aV.0":"1"},"mn":{"bm":["C<1>"],"bp":["C<1>"],"bO":[]},"fM":{"mn":["1"],"bm":["C<1>"],"bp":["C<1>"],"bO":[],"bm.0":"C<1>","fM.T":"1","bp.0":"C<1>"},"lD":{"h5":["1"],"fG":["1"],"bY":["1"],"da":["C<1>"],"eD":["1"],"aV":["C<1>"],"aV.0":"C<1>","bY.T":"1","fG.T":"1","h5.T":"1"},"h5":{"fG":["1"],"bY":["1"],"aV":["C<1>"]},"cd":{"Un":["1"]},"oB":{"bm":["2"],"bp":["2"],"bO":[]},"aR":{"c5":["1"]},"cH":{"aR":["1"],"c5":["1"]},"f_":{"oB":["1","2"],"bm":["2"],"bp":["2"],"bO":[],"bm.0":"2","f_.0":"1","f_.T":"2","bp.0":"2"},"mC":{"fb":["1","2"],"da":["2"],"aV":["2"],"aV.0":"2","fb.0":"1","fb.T":"2"},"fb":{"aV":["2"]},"iZ":{"eo":["1"],"bm":["1"],"bp":["1"],"bO":[]},"ev":{"iZ":["1"],"eo":["1"],"bm":["1"],"bp":["1"],"bO":[],"eo.0":"1","bm.0":"1","ev.T":"1","bp.0":"1"},"iQ":{"eL":["1"],"da":["1"],"bM":["1"],"aV":["1"],"aV.0":"1","eL.0":"1"},"eL":{"aV":["1"]},"e9":{"DK":["1"]},"fq":{"DK":["1"]},"Jb":{"bA":["1"],"bA.T":"1"},"I1":{"Ew":["1"],"z0":["1"],"dL":["1"],"bA":["1"],"bA.T":"1"},"v4":{"bA":["1"],"bA.T":"1"},"Ew":{"z0":["1"],"dL":["1"],"bA":["1"]},"GV":{"bA":["1"],"bA.T":"1"},"RX":{"dL":["1"]},"MG":{"P":[],"d":[]},"Rp":{"bi":[],"b2":[],"d":[]},"a72":{"b2":[],"d":[]},"ak8":{"af":["MG"]},"ak7":{"bG":[],"E":[]},"Cd":{"a2c":[]},"Mn":{"P":[],"d":[]},"Sn":{"af":["Mn"]},"Dh":{"a4":[],"d":[]},"ajB":{"bG":[],"E":[]},"aau":{"a4":[],"d":[]},"Nn":{"P":[],"d":[]},"T8":{"af":["Nn"],"aN":[]},"aaw":{"r4":[],"fz":[],"aG":[],"d":[]},"aav":{"uw":[],"qL":["jO"],"k2":["jO"],"N":[],"aq":["d7","jO"],"DB":[],"H":[],"aC":[],"aq.1":"jO","k2.0":"jO","aq.0":"d7"},"J4":{"aq.1":"bEl","k2.0":"bEl","aq.0":"d7"},"NF":{"P":[],"d":[]},"GI":{"by":[],"aG":[],"d":[]},"alx":{"af":["NF"],"aN":[]},"alw":{"N":[],"b1":["N"],"H":[],"aC":[]},"a0T":{"nh":[],"cu":["nh"]},"FQ":{"qU":[],"cu":["a9o"]},"nh":{"cu":["nh"]},"a98":{"nh":[],"cu":["nh"]},"a9o":{"cu":["a9o"]},"a9p":{"cu":["a9o"]},"a9q":{"cm":[]},"Ek":{"l3":[],"cm":[]},"El":{"cu":["a9o"]},"qU":{"cu":["a9o"]},"il":{"cz":[]},"KL":{"il":[],"cz":[]},"xn":{"dS":[],"cz":[]},"dS":{"cz":[]},"nm":{"dW":[]},"aaO":{"cz":[]},"Ra":{"dL":["1"]},"a9E":{"l3":[],"cm":[]},"lS":{"bB":[]},"mZ":{"bB":[]},"lV":{"bB":[]},"n4":{"bB":[]},"tH":{"bB":[]},"Pf":{"kO":[]},"zs":{"hG":[]},"Wt":{"P":[],"d":[]},"Ys":{"P":[],"d":[]},"CM":{"a4":[],"d":[]},"Fi":{"cw":[]},"ns":{"bx":[]},"UJ":{"Fj":["1","ns"],"Fj.1":"ns"},"nr":{"iW":[]},"nu":{"iW":[]},"nw":{"iW":[]},"nq":{"iW":[]},"nx":{"iW":[]},"nv":{"bpy":[],"iW":[]},"nt":{"bpx":[],"iW":[]},"mf":{"bpw":[],"iW":[]},"pe":{"yV":[]},"fF":{"fF.1":"2"},"UI":{"fF":["1","nr"],"fF.1":"nr"},"UL":{"fF":["1","nu"],"fF.1":"nu"},"UM":{"fF":["1","nw"],"fF.1":"nw"},"UG":{"fF":["1","nq"],"fF.1":"nq"},"UN":{"fF":["1","nx"],"fF.1":"nx"},"ry":{"fF":["1","nv"],"fF.1":"nv"},"UK":{"fF":["1","nt"],"fF.1":"nt"},"UH":{"fF":["1","mf"],"fF.1":"mf"},"pd":{"pd.1":"2"},"UR":{"pd":["1","pe"],"pd.1":"pe"},"Fk":{"Cm":[]},"ahe":{"Cm":[]},"Pp":{"iu":[]},"zt":{"aj":[]},"ny":{"bV":[]},"US":{"Fl":["1","ny"],"Fl.1":"ny"},"np":{"m8":[]},"p8":{"m8":[]},"pf":{"m8":[]},"pb":{"m8":[]},"pc":{"m8":[]},"p9":{"bph":[],"m8":[]},"i9":{"i9.1":"2"},"UF":{"i9":["1","np"],"i9.1":"np"},"UD":{"i9":["1","p8"],"i9.1":"p8"},"UT":{"i9":["1","pf"],"i9.1":"pf"},"UO":{"i9":["1","pb"],"i9.1":"pb"},"UQ":{"i9":["1","pc"],"i9.1":"pc"},"UE":{"i9":["1","p9"],"i9.1":"p9"},"XL":{"P":[],"d":[]},"wL":{"cH":["e?"],"aR":["e?"],"c5":["e?"],"b_":["e"],"b_.T":"e","aR.0":"e?"},"wM":{"cH":["f?"],"aR":["f?"],"c5":["f?"],"aR.0":"f?"},"a0Q":{"P":[],"d":[]},"a0O":{"P":[],"d":[]},"BF":{"P":[],"d":[]},"a0P":{"a4":[],"d":[]},"a25":{"P":[],"d":[]},"O_":{"fM":["e"],"mn":["e"],"bm":["C>"],"bp":["C>"],"bO":[],"bm.0":"C>","fM.T":"e","bp.0":"C>"},"Mv":{"ev":["C>,aj)>>"],"iZ":["C>,aj)>>"],"eo":["C>,aj)>>"],"bm":["C>,aj)>>"],"bp":["C>,aj)>>"],"bO":[],"eo.0":"C>,aj)>>","bm.0":"C>,aj)>>","ev.T":"C>,aj)>>","bp.0":"C>,aj)>>"},"a9l":{"e7":["C>"],"bO":[]},"am0":{"lD":["e"],"h5":["e"],"fG":["e"],"O0":[],"bY":["e"],"da":["C>"],"eD":["e"],"aV":["C>"],"aV.0":"C>","bY.T":"e","fG.T":"e","h5.T":"e"},"a6G":{"e7":["C>,aj)>>"],"bO":[]},"ajJ":{"iQ":["C>,aj)>>"],"Mw":[],"eL":["C>,aj)>>"],"da":["C>,aj)>>"],"bM":["C>,aj)>>"],"aV":["C>,aj)>>"],"aV.0":"C>,aj)>>","eL.0":"C>,aj)>>"},"a1s":{"P":[],"d":[]},"a9n":{"a4":[],"d":[]},"yX":{"cH":["a6"],"aR":["a6"],"c5":["a6"],"aR.0":"a6"},"yY":{"cH":["e?"],"aR":["e?"],"c5":["e?"],"b_":["e"],"b_.T":"e","aR.0":"e?"},"yZ":{"cH":["f?"],"aR":["f?"],"c5":["f?"],"b_":["f"],"b_.T":"f","aR.0":"f?"},"NY":{"ev":["e?"],"iZ":["e?"],"eo":["e?"],"bm":["e?"],"bp":["e?"],"bO":[],"eo.0":"e?","bm.0":"e?","ev.T":"e?","bp.0":"e?"},"a9k":{"e7":["e?"],"bO":[]},"am_":{"iQ":["e?"],"NZ":[],"eL":["e?"],"da":["e?"],"bM":["e?"],"aV":["e?"],"aV.0":"e?","eL.0":"e?"},"a9m":{"P":[],"d":[]},"a96":{"P":[],"d":[]},"qT":{"P":[],"d":[]},"jQ":{"aR":["C?>"],"c5":["C?>"],"aR.0":"C?>"},"yW":{"cH":["el?"],"aR":["el?"],"c5":["el?"],"ey":["el"],"ey.T":"el","aR.0":"el?"},"NX":{"fM":["aj?"],"mn":["aj?"],"bm":["C"],"bp":["C"],"bO":[],"bm.0":"C","fM.T":"aj?","bp.0":"C"},"HX":{"fM":["e?"],"mn":["e?"],"bm":["C?>"],"bp":["C?>"],"bO":[],"bm.0":"C?>","fM.T":"e?","bp.0":"C?>"},"NV":{"f_":["jQ","C?>"],"oB":["jQ","C?>"],"bm":["C?>"],"bp":["C?>"],"bO":[],"bm.0":"C?>","f_.0":"jQ","f_.T":"C?>","bp.0":"C?>"},"a95":{"e7":["C"],"bO":[]},"alZ":{"lD":["aj?"],"h5":["aj?"],"fG":["aj?"],"O1":[],"bY":["aj?"],"da":["C"],"eD":["aj?"],"aV":["C"],"aV.0":"C","bY.T":"aj?","fG.T":"aj?","h5.T":"aj?"},"Xt":{"e7":["C?>"],"bO":[]},"adx":{"lD":["e?"],"h5":["e?"],"fG":["e?"],"HY":[],"bY":["e?"],"da":["C?>"],"eD":["e?"],"aV":["C?>"],"aV.0":"C?>","bY.T":"e?","fG.T":"e?","h5.T":"e?"},"acT":{"aR":["C?>"],"c5":["C?>"]},"a9c":{"e7":["C?>"],"bO":[]},"alW":{"mC":["jQ","C?>"],"fb":["jQ","C?>"],"da":["C?>"],"aV":["C?>"],"aV.0":"C?>","fb.0":"jQ","fb.T":"C?>"},"a9e":{"P":[],"d":[]},"wP":{"a4":[],"d":[]},"a99":{"P":[],"d":[]},"a9a":{"P":[],"d":[]},"a9b":{"a4":[],"d":[]},"a9d":{"P":[],"d":[]},"a9f":{"P":[],"d":[]},"uM":{"a4":[],"d":[]},"jR":{"aR":["C?>"],"c5":["C?>"],"aR.0":"C?>"},"HZ":{"fM":["e?"],"mn":["e?"],"bm":["C?>"],"bp":["C?>"],"bO":[],"bm.0":"C?>","fM.T":"e?","bp.0":"C?>"},"NW":{"f_":["jR","C?>"],"oB":["jR","C?>"],"bm":["C?>"],"bp":["C?>"],"bO":[],"bm.0":"C?>","f_.0":"jR","f_.T":"C?>","bp.0":"C?>"},"Xv":{"e7":["C?>"],"bO":[]},"ady":{"lD":["e?"],"h5":["e?"],"fG":["e?"],"I_":[],"bY":["e?"],"da":["C?>"],"eD":["e?"],"aV":["C?>"],"aV.0":"C?>","bY.T":"e?","fG.T":"e?","h5.T":"e?"},"acU":{"aR":["C?>"],"c5":["C?>"]},"a9g":{"e7":["C?>"],"bO":[]},"alX":{"mC":["jR","C?>"],"fb":["jR","C?>"],"da":["C?>"],"aV":["C?>"],"aV.0":"C?>","fb.0":"jR","fb.T":"C?>"},"a9h":{"P":[],"d":[]},"a9i":{"a4":[],"d":[]},"lr":{"aQ":[]},"UB":{"Ff":["1","lr"],"Ff.1":"lr"},"w8":{"An":["e?"],"hO":["e?"],"h2":["e?"],"hO.0":"e?"},"Il":{"ev":["e?"],"iZ":["e?"],"eo":["e?"],"bm":["e?"],"bp":["e?"],"bO":[],"eo.0":"e?","bm.0":"e?","ev.T":"e?","bp.0":"e?"},"XZ":{"e7":["e?"],"bO":[]},"adQ":{"iQ":["e?"],"Im":[],"eL":["e?"],"da":["e?"],"bM":["e?"],"aV":["e?"],"aV.0":"e?","eL.0":"e?"},"a0t":{"P":[],"d":[]},"XY":{"P":[],"d":[]},"Y1":{"P":[],"d":[]},"Bt":{"P":[],"d":[]},"w9":{"P":[],"d":[]},"kb":{"aR":["C?>"],"c5":["C?>"],"aR.0":"C?>"},"xv":{"cH":["f?"],"aR":["f?"],"c5":["f?"],"aR.0":"f?"},"xr":{"cH":["p?"],"aR":["p?"],"c5":["p?"],"b_":["p"],"b_.T":"p","aR.0":"p?"},"xs":{"cH":["p?"],"aR":["p?"],"c5":["p?"],"b_":["p"],"b_.T":"p","aR.0":"p?"},"xq":{"cH":["p?"],"aR":["p?"],"c5":["p?"],"b_":["p"],"b_.T":"p","aR.0":"p?"},"xt":{"cH":["kq?"],"aR":["kq?"],"c5":["kq?"],"ey":["kq"],"ey.T":"kq","aR.0":"kq?"},"xu":{"cH":["p?"],"aR":["p?"],"c5":["p?"],"b_":["p"],"b_.T":"p","aR.0":"p?"},"xp":{"cH":["el?"],"aR":["el?"],"c5":["el?"],"ey":["el"],"ey.T":"el","aR.0":"el?"},"In":{"fM":["e?"],"mn":["e?"],"bm":["C?>"],"bp":["C?>"],"bO":[],"bm.0":"C?>","fM.T":"e?","bp.0":"C?>"},"Iq":{"f_":["kb","C?>"],"oB":["kb","C?>"],"bm":["C?>"],"bp":["C?>"],"bO":[],"bm.0":"C?>","f_.0":"kb","f_.T":"C?>","bp.0":"C?>"},"Y_":{"e7":["C?>"],"bO":[]},"adR":{"lD":["e?"],"h5":["e?"],"fG":["e?"],"Ip":[],"bY":["e?"],"da":["C?>"],"eD":["e?"],"aV":["C?>"],"aV.0":"C?>","bY.T":"e?","fG.T":"e?","h5.T":"e?"},"acO":{"aR":["C?>"],"c5":["C?>"]},"Y0":{"e7":["C?>"],"bO":[]},"adS":{"mC":["kb","C?>"],"fb":["kb","C?>"],"da":["C?>"],"aV":["C?>"],"aV.0":"C?>","fb.0":"kb","fb.T":"C?>"},"a2G":{"P":[],"d":[]},"a2D":{"P":[],"d":[]},"a2E":{"P":[],"d":[]},"Cs":{"a4":[],"d":[]},"a2F":{"P":[],"d":[]},"wB":{"vV":["hT"],"mG":["hT"],"h2":["hT"],"mG.0":"hT"},"Jo":{"ev":["cC?"],"iZ":["cC?"],"eo":["cC?"],"bm":["cC?"],"bp":["cC?"],"bO":[],"eo.0":"cC?","bm.0":"cC?","ev.T":"cC?","bp.0":"cC?"},"a0j":{"e7":["cC?"],"bO":[]},"aft":{"iQ":["cC?"],"Jp":[],"eL":["cC?"],"da":["cC?"],"bM":["cC?"],"aV":["cC?"],"aV.0":"cC?","eL.0":"cC?"},"zm":{"vV":["eO"],"mG":["eO"],"h2":["eO"],"mG.0":"eO"},"Pk":{"a5":[]},"adV":{"a5":[]},"p7":{"kS":[]},"UC":{"Fg":["1","p7"],"Fg.1":"p7"},"Pl":{"kc":[]},"Pm":{"hT":[]},"Pn":{"cC":[]},"r7":{"a3":[]},"v2":{"v2.1":"2"},"UP":{"v2":["1","r7"],"v2.1":"r7"},"ahK":{"a3":[]},"Po":{"L5":[]},"Ps":{"eO":[]},"anK":{"eO":[]},"a0k":{"P":[],"d":[]},"a0g":{"P":[],"d":[]},"a0i":{"P":[],"d":[]},"iv":{"hO":["a3?"],"h2":["a3?"],"hO.0":"a3?"},"it":{"hO":["e?"],"h2":["e?"],"hO.0":"e?"},"jH":{"aR":["f"],"c5":["f"],"aR.0":"f"},"xE":{"cH":["kT?"],"aR":["kT?"],"c5":["kT?"],"ey":["kT"],"ey.T":"kT","aR.0":"kT?"},"xF":{"cH":["p?"],"aR":["p?"],"c5":["p?"],"b_":["p"],"b_.T":"p","aR.0":"p?"},"xB":{"cH":["p?"],"aR":["p?"],"c5":["p?"],"b_":["p"],"b_.T":"p","aR.0":"p?"},"xC":{"cH":["p?"],"aR":["p?"],"c5":["p?"],"b_":["p"],"b_.T":"p","aR.0":"p?"},"xA":{"cH":["p?"],"aR":["p?"],"c5":["p?"],"b_":["p"],"b_.T":"p","aR.0":"p?"},"is":{"hO":["a6?"],"h2":["a6?"],"hO.0":"a6?"},"L6":{"ev":["bz"],"iZ":["bz"],"eo":["bz"],"bm":["bz"],"bp":["bz"],"bO":[],"eo.0":"bz","bm.0":"bz","ev.T":"bz","bp.0":"bz"},"L2":{"ev":["C?>"],"iZ":["C?>"],"eo":["C?>"],"bm":["C?>"],"bp":["C?>"],"bO":[],"eo.0":"C?>","bm.0":"C?>","ev.T":"C?>","bp.0":"C?>"},"JO":{"ev":["a5?"],"iZ":["a5?"],"eo":["a5?"],"bm":["a5?"],"bp":["a5?"],"bO":[],"eo.0":"a5?","bm.0":"a5?","ev.T":"a5?","bp.0":"a5?"},"K9":{"ev":["+first,second(a5?,a5?)?"],"iZ":["+first,second(a5?,a5?)?"],"eo":["+first,second(a5?,a5?)?"],"bm":["+first,second(a5?,a5?)?"],"bp":["+first,second(a5?,a5?)?"],"bO":[],"eo.0":"+first,second(a5?,a5?)?","bm.0":"+first,second(a5?,a5?)?","ev.T":"+first,second(a5?,a5?)?","bp.0":"+first,second(a5?,a5?)?"},"L8":{"fm":["iv","a3?"],"pD":["iv","a3?"],"bm":["C"],"bp":["C"],"bO":[],"bm.0":"C","fm.0":"iv","fm.T":"a3?","bp.0":"C"},"L1":{"fm":["it","e?"],"pD":["it","e?"],"bm":["C?>"],"bp":["C?>"],"bO":[],"bm.0":"C?>","fm.0":"it","fm.T":"e?","bp.0":"C?>"},"L_":{"f_":["jH","f"],"oB":["jH","f"],"bm":["f"],"bp":["f"],"bO":[],"bm.0":"f","f_.0":"jH","f_.T":"f","bp.0":"f"},"KZ":{"fm":["is","a6?"],"pD":["is","a6?"],"bm":["C?>"],"bp":["C?>"],"bO":[],"bm.0":"C?>","fm.0":"is","fm.T":"a6?","bp.0":"C?>"},"a36":{"e7":["bz"],"bO":[]},"ahW":{"iQ":["bz"],"L7":[],"eL":["bz"],"da":["bz"],"bM":["bz"],"aV":["bz"],"aV.0":"bz","eL.0":"bz"},"a3_":{"e7":["C?>"],"bO":[]},"ahR":{"iQ":["C?>"],"L3":[],"eL":["C?>"],"da":["C?>"],"bM":["C?>"],"aV":["C?>"],"aV.0":"C?>","eL.0":"C?>"},"a0Z":{"e7":["a5?"],"bO":[]},"ag6":{"iQ":["a5?"],"JP":[],"eL":["a5?"],"da":["a5?"],"bM":["a5?"],"aV":["a5?"],"aV.0":"a5?","eL.0":"a5?"},"a1n":{"e7":["+first,second(a5?,a5?)?"],"bO":[]},"agq":{"iQ":["+first,second(a5?,a5?)?"],"Ka":[],"eL":["+first,second(a5?,a5?)?"],"da":["+first,second(a5?,a5?)?"],"bM":["+first,second(a5?,a5?)?"],"aV":["+first,second(a5?,a5?)?"],"aV.0":"+first,second(a5?,a5?)?","eL.0":"+first,second(a5?,a5?)?"},"acS":{"hO":["a3?"],"h2":["a3?"]},"a37":{"e7":["C"],"bO":[]},"ahX":{"o_":["iv","a3?"],"eZ":["iv","a3?"],"mB":["iv","a3?"],"hk":["iv","a3?"],"bY":["a3?"],"da":["C"],"aV":["C"],"aV.0":"C","hk.T":"a3?","eZ.0":"iv","eZ.T":"a3?","bY.T":"a3?"},"acR":{"hO":["e?"],"h2":["e?"]},"a2Z":{"e7":["C?>"],"bO":[]},"ahQ":{"o_":["it","e?"],"eZ":["it","e?"],"mB":["it","e?"],"hk":["it","e?"],"bY":["e?"],"da":["C?>"],"aV":["C?>"],"aV.0":"C?>","hk.T":"e?","eZ.0":"it","eZ.T":"e?","bY.T":"e?"},"acQ":{"aR":["f"],"c5":["f"]},"a2Y":{"e7":["f"],"bO":[]},"ahO":{"mC":["jH","f"],"fb":["jH","f"],"da":["f"],"aV":["f"],"aV.0":"f","fb.0":"jH","fb.T":"f"},"acP":{"hO":["a6?"],"h2":["a6?"]},"a2W":{"e7":["C?>"],"bO":[]},"ahL":{"o_":["is","a6?"],"eZ":["is","a6?"],"mB":["is","a6?"],"hk":["is","a6?"],"bY":["a6?"],"da":["C?>"],"aV":["C?>"],"aV.0":"C?>","hk.T":"a6?","eZ.0":"is","eZ.T":"a6?","bY.T":"a6?"},"a35":{"P":[],"d":[]},"a5f":{"a4":[],"d":[]},"Xy":{"P":[],"d":[]},"wa":{"a4":[],"d":[]},"Bu":{"P":[],"d":[]},"a2X":{"P":[],"d":[]},"xD":{"a4":[],"d":[]},"a31":{"P":[],"d":[]},"a32":{"P":[],"d":[]},"a34":{"P":[],"d":[]},"a8T":{"P":[],"d":[]},"CH":{"a4":[],"d":[]},"Ir":{"fM":["a5?"],"mn":["a5?"],"bm":["C"],"bp":["C"],"bO":[],"bm.0":"C","fM.T":"a5?","bp.0":"C"},"Y2":{"e7":["C"],"bO":[]},"adY":{"lD":["a5?"],"h5":["a5?"],"fG":["a5?"],"Is":[],"bY":["a5?"],"da":["C"],"eD":["a5?"],"aV":["C"],"aV.0":"C","bY.T":"a5?","fG.T":"a5?","h5.T":"a5?"},"a6V":{"P":[],"d":[]},"Y5":{"P":[],"d":[]},"a5O":{"a4":[],"d":[]},"YF":{"P":[],"d":[]},"a8B":{"P":[],"d":[]},"a0s":{"a4":[],"d":[]},"a2p":{"a4":[],"d":[]},"a2q":{"a4":[],"d":[]},"a7I":{"a4":[],"d":[]},"a6T":{"P":[],"d":[]},"a6Z":{"P":[],"d":[]},"a6Y":{"a4":[],"d":[]},"aaF":{"P":[],"d":[]},"Y3":{"a4":[],"d":[]},"a5b":{"P":[],"d":[]},"a5c":{"P":[],"d":[]},"a8z":{"P":[],"d":[]},"a0h":{"P":[],"d":[]},"aaD":{"P":[],"d":[]},"uY":{"P":[],"d":[]},"aaE":{"P":[],"d":[]},"zl":{"a4":[],"d":[]},"pa":{"cj":[]},"Pq":{"cj":[]},"Pr":{"cj":[]},"Pi":{"cj":[]},"Ph":{"cj":[]},"Pg":{"cj":[]},"yd":{"cH":["f?"],"aR":["f?"],"c5":["f?"],"aR.0":"f?"},"Mq":{"ev":["e?"],"iZ":["e?"],"eo":["e?"],"bm":["e?"],"bp":["e?"],"bO":[],"eo.0":"e?","bm.0":"e?","ev.T":"e?","bp.0":"e?"},"a6y":{"e7":["e?"],"bO":[]},"ajC":{"iQ":["e?"],"Mr":[],"eL":["e?"],"da":["e?"],"bM":["e?"],"aV":["e?"],"aV.0":"e?","eL.0":"e?"},"a6H":{"a4":[],"d":[]},"lF":{"a4":[],"d":[]},"a6E":{"P":[],"d":[]},"a6F":{"P":[],"d":[]},"yH":{"a4":[],"d":[]},"uL":{"P":[],"d":[]},"uI":{"bB":[]},"tG":{"bB":[]},"a89":{"a4":[],"d":[]},"a6I":{"a4":[],"d":[]},"Fe":{"kR":[]},"adt":{"kR":[]},"WX":{"a4":[],"d":[]},"x1":{"cH":["Y?"],"aR":["Y?"],"c5":["Y?"],"b_":["Y"],"b_.T":"Y","aR.0":"Y?"},"a1x":{"P":[],"d":[]},"Xn":{"P":[],"d":[]},"As":{"a4":[],"d":[]},"XM":{"a4":[],"d":[]},"yS":{"cH":["p?"],"aR":["p?"],"c5":["p?"],"b_":["p"],"b_.T":"p","aR.0":"p?"},"a8w":{"P":[],"d":[]},"a1j":{"P":[],"d":[]},"a2H":{"a4":[],"d":[]},"a59":{"P":[],"d":[]},"a6X":{"P":[],"d":[]},"yg":{"cH":["p?"],"aR":["p?"],"c5":["p?"],"b_":["p"],"b_.T":"p","aR.0":"p?"},"a6O":{"P":[],"d":[]},"xf":{"cH":["p?"],"aR":["p?"],"c5":["p?"],"b_":["p"],"b_.T":"p","aR.0":"p?"},"a6P":{"P":[],"d":[]},"yh":{"cH":["Y?"],"aR":["Y?"],"c5":["Y?"],"b_":["Y"],"b_.T":"Y","aR.0":"Y?"},"a6Q":{"P":[],"d":[]},"X8":{"P":[],"d":[]},"yi":{"cH":["eT?"],"aR":["eT?"],"c5":["eT?"],"ey":["eT"],"ey.T":"eT","aR.0":"eT?"},"a6R":{"P":[],"d":[]},"yj":{"cH":["fc?"],"aR":["fc?"],"c5":["fc?"],"ey":["fc"],"ey.T":"fc","aR.0":"fc?"},"a6S":{"P":[],"d":[]},"yk":{"cH":["Y?"],"aR":["Y?"],"c5":["Y?"],"b_":["Y"],"b_.T":"Y","aR.0":"Y?"},"a6U":{"P":[],"d":[]},"X9":{"P":[],"d":[]},"yl":{"cH":["p?"],"aR":["p?"],"c5":["p?"],"b_":["p"],"b_.T":"p","aR.0":"p?"},"a6W":{"P":[],"d":[]},"z1":{"cH":["p?"],"aR":["p?"],"c5":["p?"],"b_":["p"],"b_.T":"p","aR.0":"p?"},"a9J":{"P":[],"d":[]},"zq":{"cH":["p?"],"aR":["p?"],"c5":["p?"],"b_":["p"],"b_.T":"p","aR.0":"p?"},"zp":{"cH":["p?"],"aR":["p?"],"c5":["p?"],"b_":["p"],"b_.T":"p","aR.0":"p?"},"a8o":{"P":[],"d":[]},"Xe":{"P":[],"d":[]},"wg":{"cH":["f?"],"aR":["f?"],"c5":["f?"],"b_":["f"],"b_.T":"f","aR.0":"f?"},"B4":{"P":[],"d":[]},"a8q":{"a4":[],"d":[]},"yM":{"cH":["m?"],"aR":["m?"],"c5":["m?"],"b_":["m"],"b_.T":"m","aR.0":"m?"},"yN":{"cH":["p?"],"aR":["p?"],"c5":["p?"],"b_":["p"],"b_.T":"p","aR.0":"p?"},"E2":{"P":[],"d":[]},"a8n":{"P":[],"d":[]},"yO":{"cH":["f?"],"aR":["f?"],"c5":["f?"],"b_":["f"],"b_.T":"f","aR.0":"f?"},"E4":{"P":[],"d":[]},"a8p":{"P":[],"d":[]},"NO":{"a4":[],"d":[]},"z9":{"cH":["hg?"],"aR":["hg?"],"c5":["hg?"],"ey":["hg"],"ey.T":"hg","aR.0":"hg?"},"WW":{"P":[],"d":[]},"vU":{"cH":["hr?"],"aR":["hr?"],"c5":["hr?"],"ey":["hr"],"ey.T":"hr","aR.0":"hr?"},"tX":{"cH":["d6?"],"aR":["d6?"],"c5":["d6?"],"b_":["d6"],"b_.T":"d6","aR.0":"d6?"},"a9_":{"P":[],"d":[]},"Gq":{"hY":["qw<1,2>"]},"Sh":{"hZ":["qw<1,2>","Gq<1,2>"]},"OS":{"ev":["er"],"iZ":["er"],"eo":["er"],"bm":["er"],"bp":["er"],"bO":[],"eo.0":"er","bm.0":"er","ev.T":"er","bp.0":"er"},"aaj":{"a4":[],"d":[]},"aah":{"e7":["er"],"bO":[]},"an8":{"iQ":["er"],"OT":[],"eL":["er"],"da":["er"],"bM":["er"],"aV":["er"],"aV.0":"er","eL.0":"er"},"X5":{"a4":[],"d":[]},"Xa":{"a4":[],"d":[]},"J1":{"P":[],"d":[]},"pM":{"a4":[],"d":[]},"a90":{"a4":[],"d":[]},"a57":{"a4":[],"d":[]},"Bz":{"a4":[],"d":[]},"qo":{"a4":[],"d":[]},"CG":{"a4":[],"d":[]},"mU":{"a4":[],"d":[]},"wA":{"cH":["p?"],"aR":["p?"],"c5":["p?"],"b_":["p"],"b_.T":"p","aR.0":"p?"},"zk":{"cH":["p?"],"aR":["p?"],"c5":["p?"],"b_":["p"],"b_.T":"p","aR.0":"p?"},"a2V":{"P":[],"d":[]},"CE":{"a4":[],"d":[]},"a33":{"P":[],"d":[]},"L4":{"a4":[],"d":[]},"xM":{"a4":[],"d":[]},"AJ":{"P":[],"d":[]},"Q5":{"af":["AJ<1>"]},"ul":{"a4":[],"d":[]},"hD":{"a4":[],"d":[]},"ye":{"a4":[],"d":[]},"qP":{"a4":[],"d":[]},"a8l":{"P":[],"d":[]},"a8m":{"a4":[],"d":[]},"Xz":{"a4":[],"d":[]},"a8v":{"P":[],"d":[]},"a8U":{"a4":[],"d":[]},"NU":{"a4":[],"d":[]},"EK":{"a4":[],"d":[]},"r2":{"ac":["1"],"e":["1"],"an":["1"],"z":["1"]},"ah_":{"r2":["m"],"ac":["m"],"e":["m"],"an":["m"],"z":["m"]},"aat":{"r2":["m"],"ac":["m"],"e":["m"],"an":["m"],"z":["m"],"ac.E":"m","z.E":"m","r2.E":"m"},"Ri":{"dL":["@"]},"P5":{"cm":[]},"bii":{"BH":[],"Jg":[],"kg":[]},"biB":{"BH":[],"JJ":[],"kg":[]},"BH":{"kg":[]},"bE1":{"P":[],"d":[]},"bEh":{"bi":[],"b2":[],"d":[]},"bHD":{"P":[],"d":[]},"bNl":{"bi":[],"b2":[],"d":[]},"bM3":{"bi":[],"b2":[],"d":[]},"bt5":{"cu":["bt5"]}}')) +A.bNu(v.typeUniverse,JSON.parse('{"JQ":1,"aaB":1,"F4":1,"UY":2,"II":1,"CR":1,"dL":1,"a5g":1,"a9B":2,"amn":1,"af9":1,"am6":2,"am5":2,"Tu":2,"Tv":1,"Tw":1,"Ud":2,"Y9":1,"GU":1,"cu":1,"a2d":1,"G7":1,"Bd":1,"rW":1,"B_":1,"Qa":1,"Qb":1,"Qc":1,"M5":1,"UU":1,"H7":1,"V4":1,"Vo":1,"ET":1,"P3":1,"V9":1,"Ll":1,"Vp":1,"H6":1,"Ml":1,"H8":1,"H9":1,"zd":1,"IK":1,"Qe":1,"iw":1,"MJ":1,"J2":1,"Gx":1,"SQ":1,"vW":1,"FU":1,"C7":1,"Ai":1,"G4":1,"f5":1,"aaq":1,"br7":1,"jJ":1,"fT":1,"lZ":1,"dh":1,"SX":1,"a7P":1,"DN":1,"Ha":1,"CZ":1,"a2O":1,"Mm":1,"MB":1,"Gi":1,"Gv":1,"NP":2,"Tq":2,"fC":1,"dG":1,"U8":1,"hY":1,"IJ":1,"a1G":1,"Rf":1,"Rg":1,"Rh":1,"ah6":3,"h2":1,"PC":2,"PD":2,"PI":2,"PJ":2,"da":1,"e7":1,"WB":1,"WA":1,"Am":1,"Sp":1,"Sq":2,"Sr":2,"Uo":1,"Vq":2,"eD":1,"PF":1,"PE":1,"c5":1,"PG":2,"bM":1,"PH":1,"Rz":1,"DK":1,"K5":2,"a9A":1,"En":1}')) +var u={q:"\x10@\x100@@\xa0\x80 0P`pPP\xb1\x10@\x100@@\xa0\x80 0P`pPP\xb0\x11@\x100@@\xa0\x80 0P`pPP\xb0\x10@\x100@@\xa0\x80 1P`pPP\xb0\x10A\x101AA\xa1\x81 1QaqQQ\xb0\x10@\x100@@\xa0\x80 1Q`pPP\xb0\x10@\x100@@\xa0\x80 1QapQP\xb0\x10@\x100@@\xa0\x80 1PaqQQ\xb0\x10\xe0\x100@@\xa0\x80 1P`pPP\xb0\xb1\xb1\xb1\xb1\x91\xb1\xc1\x81\xb1\xb1\xb1\xb1\xb1\xb1\xb1\xb1\x10@\x100@@\xd0\x80 1P`pPP\xb0\x11A\x111AA\xa1\x81!1QaqQQ\xb1\x10@\x100@@\x90\x80 1P`pPP\xb0",S:" 0\x10000\xa0\x80\x10@P`p`p\xb1 0\x10000\xa0\x80\x10@P`p`p\xb0 0\x10000\xa0\x80\x11@P`p`p\xb0 1\x10011\xa0\x80\x10@P`p`p\xb0 1\x10111\xa1\x81\x10AQaqaq\xb0 1\x10011\xa0\x80\x10@Qapaq\xb0 1\x10011\xa0\x80\x10@Paq`p\xb0 1\x10011\xa0\x80\x10@P`q`p\xb0 \x91\x100\x811\xa0\x80\x10@P`p`p\xb0 1\x10011\xa0\x81\x10@P`p`p\xb0 1\x100111\x80\x10@P`p`p\xb0!1\x11111\xa1\x81\x11AQaqaq\xb1",D:" must not be greater than the number of characters in the file, ",e:" was disposed during loading state, yet no value could be emitted.",v:'"recorder" must not already be associated with another Canvas.',Z:"$remainingCount na character ang natitira",T:"% of the way to being a CircleBorder that is ",W:"' has been assigned during initialization.",K:"00000008A0009!B000a!C000b000cD000d!E000e000vA000w!F000x!G000y!H000z!I0010!J0011!K0012!I0013!H0014!L0015!M0016!I0017!J0018!N0019!O001a!N001b!P001c001lQ001m001nN001o001qI001r!G001s002iI002j!L002k!J002l!M002m003eI003f!L003g!B003h!R003i!I003j003oA003p!D003q004fA004g!S004h!L004i!K004j004lJ004m004qI004r!H004s!I004t!B004u004vI004w!K004x!J004y004zI0050!T00510056I0057!H0058005aI005b!L005c00jrI00js!T00jt00jvI00jw!T00jx00keI00kf!T00kg00lbI00lc00niA00nj!S00nk00nvA00nw00o2S00o300ofA00og00otI00ou!N00ov00w2I00w300w9A00wa013cI013d!N013e!B013h013iI013j!J013l014tA014u!B014v!A014w!I014x014yA014z!I01500151A0152!G0153!A015c0162U0167016aU016b016wI016x016zK01700171N01720173I0174017eA017f!G017g!A017i017jG017k018qI018r019bA019c019lQ019m!K019n019oQ019p019rI019s!A019t01cjI01ck!G01cl!I01cm01csA01ct01cuI01cv01d0A01d101d2I01d301d4A01d5!I01d601d9A01da01dbI01dc01dlQ01dm01e8I01e9!A01ea01f3I01f401fuA01fx01idI01ie01ioA01ip!I01j401jdQ01je01kaI01kb01kjA01kk01knI01ko!N01kp!G01kq!I01kt!A01ku01kvJ01kw01lhI01li01llA01lm!I01ln01lvA01lw!I01lx01lzA01m0!I01m101m5A01m801ncI01nd01nfA01ni01qfI01qr01r5A01r6!I01r701s3A01s401tlI01tm01toA01tp!I01tq01u7A01u8!I01u901ufA01ug01upI01uq01urA01us01utB01uu01v3Q01v401vkI01vl01vnA01vp01x5I01x8!A01x9!I01xa01xgA01xj01xkA01xn01xpA01xq!I01xz!A01y401y9I01ya01ybA01ye01ynQ01yo01ypI01yq01yrK01ys01ywI01yx!K01yy!I01yz!J01z001z1I01z2!A01z501z7A01z9020pI020s!A020u020yA02130214A02170219A021d!A021l021qI021y0227Q02280229A022a022cI022d!A022e!I022p022rA022t0249I024c!A024d!I024e024lA024n024pA024r024tA024w025dI025e025fA025i025rQ025s!I025t!J0261!I02620267A0269026bA026d027tI027w!A027x!I027y0284A02870288A028b028dA028l028nA028s028xI028y028zA0292029bQ029c029jI029u!A029v02bdI02bi02bmA02bq02bsA02bu02bxA02c0!I02c7!A02cm02cvQ02cw02d4I02d5!J02d6!I02dc02dgA02dh02f1I02f202f8A02fa02fcA02fe02fhA02fp02fqA02fs02g1I02g202g3A02g602gfQ02gn!T02go02gwI02gx02gzA02h0!T02h102ihI02ik!A02il!I02im02isA02iu02iwA02iy02j1A02j902jaA02ji02jlI02jm02jnA02jq02jzQ02k102k2I02kg02kjA02kk02m2I02m302m4A02m5!I02m602mcA02me02mgA02mi02mlA02mm02muI02mv!A02mw02n5I02n602n7A02na02njQ02nk02nsI02nt!K02nu02nzI02o102o3A02o502pyI02q2!A02q702qcA02qe!A02qg02qnA02qu02r3Q02r602r7A02r802t6I02tb!J02tc02trI02ts02u1Q02u202u3B02v502x9I02xc02xlQ02xo02yoI02yp02ysT02yt!I02yu02yvT02yw!S02yx02yyT02yz!B02z0!S02z102z5G02z6!S02z7!I02z8!G02z902zbI02zc02zdA02ze02zjI02zk02ztQ02zu0303I0304!B0305!A0306!I0307!A0308!I0309!A030a!L030b!R030c!L030d!R030e030fA030g031oI031t0326A0327!B0328032cA032d!B032e032fA032g032kI032l032vA032x033wA033y033zB03400345I0346!A0347034fI034g034hT034i!B034j!T034k034oI034p034qS035s037jI037k037tQ037u037vB037w039rI039s03a1Q03a203cvI03cw03fjV03fk03hjW03hk03jzX03k003tmI03tp03trA03ts!I03tt!B03tu03y5I03y8!B03y904fzI04g0!B04g104gqI04gr!L04gs!R04gw04iyI04iz04j1B04j204k1I04k204k4A04kg04kxI04ky04l0A04l104l2B04lc04ltI04lu04lvA04m804moI04mq04mrA04n404pfI04pg04phB04pi!Y04pj!I04pk!B04pl!I04pm!B04pn!J04po04ppI04ps04q1Q04q804qpI04qq04qrG04qs04qtB04qu!T04qv!I04qw04qxG04qy!I04qz04r1A04r2!S04r404rdQ04rk04ucI04ud04ueA04uf04vcI04vd!A04ve04ymI04yo04yzA04z404zfA04zk!I04zo04zpG04zq04zzQ0500053dI053k053tQ053u055iI055j055nA055q058cI058f!A058g058pQ058w0595Q059c059pI059s05a8A05c005c4A05c505dfI05dg05dwA05dx05e3I05e805ehQ05ei05ejB05ek!I05el05eoB05ep05eyI05ez05f7A05f805fgI05fk05fmA05fn05ggI05gh05gtA05gu05gvI05gw05h5Q05h605idI05ie05irA05j005k3I05k405knA05kr05kvB05kw05l5Q05l905lbI05lc05llQ05lm05mlI05mm05mnB05mo05onI05ow05oyA05oz!I05p005pkA05pl05poI05pp!A05pq05pvI05pw!A05px05pyI05pz05q1A05q205vjI05vk05x5A05x705xbA05xc06bgI06bh!T06bi!I06bk06bqB06br!S06bs06buB06bv!Z06bw!A06bx!a06by06bzA06c0!B06c1!S06c206c3B06c4!b06c506c7I06c806c9H06ca!L06cb06cdH06ce!L06cf!H06cg06cjI06ck06cmc06cn!B06co06cpD06cq06cuA06cv!S06cw06d3K06d4!I06d506d6H06d7!I06d806d9Y06da06dfI06dg!N06dh!L06di!R06dj06dlY06dm06dxI06dy!B06dz!I06e006e3B06e4!I06e506e7B06e8!d06e906ecI06ee06enA06eo06f0I06f1!L06f2!R06f306fgI06fh!L06fi!R06fk06fwI06g006g6J06g7!K06g806glJ06gm!K06gn06gqJ06gr!K06gs06gtJ06gu!K06gv06hbJ06hc06i8A06io06iqI06ir!K06is06iwI06ix!K06iy06j9I06ja!J06jb06q9I06qa06qbJ06qc06weI06wf!c06wg06x3I06x4!L06x5!R06x6!L06x7!R06x806xlI06xm06xne06xo06y0I06y1!L06y2!R06y3073jI073k073ne073o07i7I07i807ibe07ic07irI07is07ite07iu07ivI07iw!e07ix!I07iy07j0e07j1!f07j207j3e07j407jsI07jt07jve07jw07l3I07l4!e07l507lqI07lr!e07ls07ngI07nh07nse07nt07nwI07nx!e07ny!I07nz07o1e07o2!I07o307o4e07o507o7I07o807o9e07oa07obI07oc!e07od07oeI07of07ohe07oi07opI07oq!e07or07owI07ox07p1e07p2!I07p307p4e07p5!f07p6!e07p707p8I07p907pge07ph07pjI07pk07ple07pm07ppf07pq07ruI07rv07s0H07s1!I07s207s3G07s4!e07s507s7I07s8!L07s9!R07sa!L07sb!R07sc!L07sd!R07se!L07sf!R07sg!L07sh!R07si!L07sj!R07sk!L07sl!R07sm07usI07ut!L07uu!R07uv07vpI07vq!L07vr!R07vs!L07vt!R07vu!L07vv!R07vw!L07vx!R07vy!L07vz!R07w00876I0877!L0878!R0879!L087a!R087b!L087c!R087d!L087e!R087f!L087g!R087h!L087i!R087j!L087k!R087l!L087m!R087n!L087o!R087p!L087q!R087r!L087s!R087t089jI089k!L089l!R089m!L089n!R089o08ajI08ak!L08al!R08am08viI08vj08vlA08vm08vnI08vt!G08vu08vwB08vx!I08vy!G08vz!B08w008z3I08z4!B08zj!A08zk0926I09280933A0934093hH093i093pB093q!I093r!B093s!L093t!B093u093vI093w093xH093y093zI09400941H0942!L0943!R0944!L0945!R0946!L0947!R0948!L0949!R094a094dB094e!G094f!I094g094hB094i!I094j094kB094l094pI094q094rb094s094uB094v!I094w094xB094y!L094z0956B0957!I0958!B0959!I095a095bB095c095eI096o097de097f099ve09a809g5e09gw09h7e09hc!B09hd09heR09hf09hge09hh!Y09hi09hje09hk!L09hl!R09hm!L09hn!R09ho!L09hp!R09hq!L09hr!R09hs!L09ht!R09hu09hve09hw!L09hx!R09hy!L09hz!R09i0!L09i1!R09i2!L09i3!R09i4!Y09i5!L09i609i7R09i809ihe09ii09inA09io09ise09it!A09iu09iye09iz09j0Y09j109j3e09j5!Y09j6!e09j7!Y09j8!e09j9!Y09ja!e09jb!Y09jc!e09jd!Y09je09k2e09k3!Y09k409kye09kz!Y09l0!e09l1!Y09l2!e09l3!Y09l409l9e09la!Y09lb09lge09lh09liY09ll09lmA09ln09lqY09lr!e09ls09ltY09lu!e09lv!Y09lw!e09lx!Y09ly!e09lz!Y09m0!e09m1!Y09m209mqe09mr!Y09ms09nme09nn!Y09no!e09np!Y09nq!e09nr!Y09ns09nxe09ny!Y09nz09o4e09o509o6Y09o709oae09ob09oeY09of!e09ol09pre09pt09see09sg09ure09v409vjY09vk09wee09wg09xje09xk09xrI09xs0fcve0fcw0fenI0feo0vmce0vmd!Y0vme0wi4e0wi80wjqe0wk00wl9I0wla0wlbB0wlc0wssI0wst!B0wsu!G0wsv!B0wsw0wtbI0wtc0wtlQ0wtm0wviI0wvj0wvmA0wvn!I0wvo0wvxA0wvy0wwtI0wwu0wwvA0www0wz3I0wz40wz5A0wz6!I0wz70wzbB0wzk0x6pI0x6q!A0x6r0x6tI0x6u!A0x6v0x6yI0x6z!A0x700x7mI0x7n0x7rA0x7s0x7vI0x7w!A0x800x87I0x88!K0x890x9vI0x9w0x9xT0x9y0x9zG0xa80xa9A0xaa0xbnI0xbo0xc5A0xce0xcfB0xcg0xcpQ0xcw0xddA0xde0xdnI0xdo!T0xdp0xdqI0xdr!A0xds0xe1Q0xe20xetI0xeu0xf1A0xf20xf3B0xf40xfqI0xfr0xg3A0xgf!I0xgg0xh8V0xhc0xhfA0xhg0xiqI0xir0xj4A0xj50xjaI0xjb0xjdB0xje0xjjI0xjk0xjtQ0xjy0xkfI0xkg0xkpQ0xkq0xm0I0xm10xmeA0xmo0xmqI0xmr!A0xms0xmzI0xn00xn1A0xn40xndQ0xng!I0xnh0xnjB0xnk0xreI0xrf0xrjA0xrk0xrlB0xrm0xroI0xrp0xrqA0xs10xyaI0xyb0xyiA0xyj!B0xyk0xylA0xyo0xyxQ0xz4!g0xz50xzvh0xzw!g0xzx0y0nh0y0o!g0y0p0y1fh0y1g!g0y1h0y27h0y28!g0y290y2zh0y30!g0y310y3rh0y3s!g0y3t0y4jh0y4k!g0y4l0y5bh0y5c!g0y5d0y63h0y64!g0y650y6vh0y6w!g0y6x0y7nh0y7o!g0y7p0y8fh0y8g!g0y8h0y97h0y98!g0y990y9zh0ya0!g0ya10yarh0yas!g0yat0ybjh0ybk!g0ybl0ycbh0ycc!g0ycd0yd3h0yd4!g0yd50ydvh0ydw!g0ydx0yenh0yeo!g0yep0yffh0yfg!g0yfh0yg7h0yg8!g0yg90ygzh0yh0!g0yh10yhrh0yhs!g0yht0yijh0yik!g0yil0yjbh0yjc!g0yjd0yk3h0yk4!g0yk50ykvh0ykw!g0ykx0ylnh0ylo!g0ylp0ymfh0ymg!g0ymh0yn7h0yn8!g0yn90ynzh0yo0!g0yo10yorh0yos!g0yot0ypjh0ypk!g0ypl0yqbh0yqc!g0yqd0yr3h0yr4!g0yr50yrvh0yrw!g0yrx0ysnh0yso!g0ysp0ytfh0ytg!g0yth0yu7h0yu8!g0yu90yuzh0yv0!g0yv10yvrh0yvs!g0yvt0ywjh0ywk!g0ywl0yxbh0yxc!g0yxd0yy3h0yy4!g0yy50yyvh0yyw!g0yyx0yznh0yzo!g0yzp0z0fh0z0g!g0z0h0z17h0z18!g0z190z1zh0z20!g0z210z2rh0z2s!g0z2t0z3jh0z3k!g0z3l0z4bh0z4c!g0z4d0z53h0z54!g0z550z5vh0z5w!g0z5x0z6nh0z6o!g0z6p0z7fh0z7g!g0z7h0z87h0z88!g0z890z8zh0z90!g0z910z9rh0z9s!g0z9t0zajh0zak!g0zal0zbbh0zbc!g0zbd0zc3h0zc4!g0zc50zcvh0zcw!g0zcx0zdnh0zdo!g0zdp0zefh0zeg!g0zeh0zf7h0zf8!g0zf90zfzh0zg0!g0zg10zgrh0zgs!g0zgt0zhjh0zhk!g0zhl0zibh0zic!g0zid0zj3h0zj4!g0zj50zjvh0zjw!g0zjx0zknh0zko!g0zkp0zlfh0zlg!g0zlh0zm7h0zm8!g0zm90zmzh0zn0!g0zn10znrh0zns!g0znt0zojh0zok!g0zol0zpbh0zpc!g0zpd0zq3h0zq4!g0zq50zqvh0zqw!g0zqx0zrnh0zro!g0zrp0zsfh0zsg!g0zsh0zt7h0zt8!g0zt90ztzh0zu0!g0zu10zurh0zus!g0zut0zvjh0zvk!g0zvl0zwbh0zwc!g0zwd0zx3h0zx4!g0zx50zxvh0zxw!g0zxx0zynh0zyo!g0zyp0zzfh0zzg!g0zzh1007h1008!g1009100zh1010!g1011101rh101s!g101t102jh102k!g102l103bh103c!g103d1043h1044!g1045104vh104w!g104x105nh105o!g105p106fh106g!g106h1077h1078!g1079107zh1080!g1081108rh108s!g108t109jh109k!g109l10abh10ac!g10ad10b3h10b4!g10b510bvh10bw!g10bx10cnh10co!g10cp10dfh10dg!g10dh10e7h10e8!g10e910ezh10f0!g10f110frh10fs!g10ft10gjh10gk!g10gl10hbh10hc!g10hd10i3h10i4!g10i510ivh10iw!g10ix10jnh10jo!g10jp10kfh10kg!g10kh10l7h10l8!g10l910lzh10m0!g10m110mrh10ms!g10mt10njh10nk!g10nl10obh10oc!g10od10p3h10p4!g10p510pvh10pw!g10px10qnh10qo!g10qp10rfh10rg!g10rh10s7h10s8!g10s910szh10t0!g10t110trh10ts!g10tt10ujh10uk!g10ul10vbh10vc!g10vd10w3h10w4!g10w510wvh10ww!g10wx10xnh10xo!g10xp10yfh10yg!g10yh10z7h10z8!g10z910zzh1100!g1101110rh110s!g110t111jh111k!g111l112bh112c!g112d1133h1134!g1135113vh113w!g113x114nh114o!g114p115fh115g!g115h1167h1168!g1169116zh1170!g1171117rh117s!g117t118jh118k!g118l119bh119c!g119d11a3h11a4!g11a511avh11aw!g11ax11bnh11bo!g11bp11cfh11cg!g11ch11d7h11d8!g11d911dzh11e0!g11e111erh11es!g11et11fjh11fk!g11fl11gbh11gc!g11gd11h3h11h4!g11h511hvh11hw!g11hx11inh11io!g11ip11jfh11jg!g11jh11k7h11k8!g11k911kzh11l0!g11l111lrh11ls!g11lt11mjh11mk!g11ml11nbh11nc!g11nd11o3h11o4!g11o511ovh11ow!g11ox11pnh11po!g11pp11qfh11qg!g11qh11r7h11r8!g11r911rzh11s0!g11s111srh11ss!g11st11tjh11tk!g11tl11ubh11uc!g11ud11v3h11v4!g11v511vvh11vw!g11vx11wnh11wo!g11wp11xfh11xg!g11xh11y7h11y8!g11y911yzh11z0!g11z111zrh11zs!g11zt120jh120k!g120l121bh121c!g121d1223h1224!g1225122vh122w!g122x123nh123o!g123p124fh124g!g124h1257h1258!g1259125zh1260!g1261126rh126s!g126t127jh127k!g127l128bh128c!g128d1293h1294!g1295129vh129w!g129x12anh12ao!g12ap12bfh12bg!g12bh12c7h12c8!g12c912czh12d0!g12d112drh12ds!g12dt12ejh12ek!g12el12fbh12fc!g12fd12g3h12g4!g12g512gvh12gw!g12gx12hnh12ho!g12hp12ifh12ig!g12ih12j7h12j8!g12j912jzh12k0!g12k112krh12ks!g12kt12ljh12lk!g12ll12mbh12mc!g12md12n3h12n4!g12n512nvh12nw!g12nx12onh12oo!g12op12pfh12pg!g12ph12q7h12q8!g12q912qzh12r0!g12r112rrh12rs!g12rt12sjh12sk!g12sl12tbh12tc!g12td12u3h12u4!g12u512uvh12uw!g12ux12vnh12vo!g12vp12wfh12wg!g12wh12x7h12x8!g12x912xzh12y0!g12y112yrh12ys!g12yt12zjh12zk!g12zl130bh130c!g130d1313h1314!g1315131vh131w!g131x132nh132o!g132p133fh133g!g133h1347h1348!g1349134zh1350!g1351135rh135s!g135t136jh136k!g136l137bh137c!g137d1383h1384!g1385138vh138w!g138x139nh139o!g139p13afh13ag!g13ah13b7h13b8!g13b913bzh13c0!g13c113crh13cs!g13ct13djh13dk!g13dl13ebh13ec!g13ed13f3h13f4!g13f513fvh13fw!g13fx13gnh13go!g13gp13hfh13hg!g13hh13i7h13i8!g13i913izh13j0!g13j113jrh13js!g13jt13kjh13kk!g13kl13lbh13lc!g13ld13m3h13m4!g13m513mvh13mw!g13mx13nnh13no!g13np13ofh13og!g13oh13p7h13p8!g13p913pzh13q0!g13q113qrh13qs!g13qt13rjh13rk!g13rl13sbh13sc!g13sd13t3h13t4!g13t513tvh13tw!g13tx13unh13uo!g13up13vfh13vg!g13vh13w7h13w8!g13w913wzh13x0!g13x113xrh13xs!g13xt13yjh13yk!g13yl13zbh13zc!g13zd1403h1404!g1405140vh140w!g140x141nh141o!g141p142fh142g!g142h1437h1438!g1439143zh1440!g1441144rh144s!g144t145jh145k!g145l146bh146c!g146d1473h1474!g1475147vh147w!g147x148nh148o!g148p149fh149g!g149h14a7h14a8!g14a914azh14b0!g14b114brh14bs!g14bt14cjh14ck!g14cl14dbh14dc!g14dd14e3h14e4!g14e514evh14ew!g14ex14fnh14fo!g14fp14gfh14gg!g14gh14h7h14h8!g14h914hzh14i0!g14i114irh14is!g14it14jjh14jk!g14jl14kbh14kc!g14kd14l3h14l4!g14l514lvh14lw!g14lx14mnh14mo!g14mp14nfh14ng!g14nh14o7h14o8!g14o914ozh14p0!g14p114prh14ps!g14pt14qjh14qk!g14ql14rbh14rc!g14rd14s3h14s4!g14s514svh14sw!g14sx14tnh14to!g14tp14ufh14ug!g14uh14v7h14v8!g14v914vzh14w0!g14w114wrh14ws!g14wt14xjh14xk!g14xl14ybh14yc!g14yd14z3h14z4!g14z514zvh14zw!g14zx150nh150o!g150p151fh151g!g151h1527h1528!g1529152zh1530!g1531153rh153s!g153t154jh154k!g154l155bh155c!g155d1563h1564!g1565156vh156w!g156x157nh157o!g157p158fh158g!g158h1597h1598!g1599159zh15a0!g15a115arh15as!g15at15bjh15bk!g15bl15cbh15cc!g15cd15d3h15d4!g15d515dvh15dw!g15dx15enh15eo!g15ep15ffh15fg!g15fh15g7h15g8!g15g915gzh15h0!g15h115hrh15hs!g15ht15ijh15ik!g15il15jbh15jc!g15jd15k3h15k4!g15k515kvh15kw!g15kx15lnh15lo!g15lp15mfh15mg!g15mh15n7h15n8!g15n915nzh15o0!g15o115orh15os!g15ot15pjh15pk!g15pl15qbh15qc!g15qd15r3h15r4!g15r515rvh15rw!g15rx15snh15so!g15sp15tfh15tg!g15th15u7h15u8!g15u915uzh15v0!g15v115vrh15vs!g15vt15wjh15wk!g15wl15xbh15xc!g15xd15y3h15y4!g15y515yvh15yw!g15yx15znh15zo!g15zp160fh160g!g160h1617h1618!g1619161zh1620!g1621162rh162s!g162t163jh163k!g163l164bh164c!g164d1653h1654!g1655165vh165w!g165x166nh166o!g166p167fh167g!g167h1687h1688!g1689168zh1690!g1691169rh169s!g169t16ajh16ak!g16al16bbh16bc!g16bd16c3h16c4!g16c516cvh16cw!g16cx16dnh16do!g16dp16efh16eg!g16eh16f7h16f8!g16f916fzh16g0!g16g116grh16gs!g16gt16hjh16hk!g16hl16ibh16ic!g16id16j3h16j4!g16j516jvh16jw!g16jx16knh16ko!g16kp16lfh16ls16meW16mj16nvX16o01d6nI1d6o1dkve1dkw1dljI1dlp!U1dlq!A1dlr1dm0U1dm1!I1dm21dmeU1dmg1dmkU1dmm!U1dmo1dmpU1dmr1dmsU1dmu1dn3U1dn41e0tI1e0u!R1e0v!L1e1c1e63I1e64!K1e65!I1e681e6nA1e6o!N1e6p1e6qR1e6r1e6sN1e6t1e6uG1e6v!L1e6w!R1e6x!c1e741e7jA1e7k1e7oe1e7p!L1e7q!R1e7r!L1e7s!R1e7t!L1e7u!R1e7v!L1e7w!R1e7x!L1e7y!R1e7z!L1e80!R1e81!L1e82!R1e83!L1e84!R1e851e86e1e87!L1e88!R1e891e8fe1e8g!R1e8h!e1e8i!R1e8k1e8lY1e8m1e8nG1e8o!e1e8p!L1e8q!R1e8r!L1e8s!R1e8t!L1e8u!R1e8v1e92e1e94!e1e95!J1e96!K1e97!e1e9c1ed8I1edb!d1edd!G1ede1edfe1edg!J1edh!K1edi1edje1edk!L1edl!R1edm1edne1edo!R1edp!e1edq!R1edr1ee1e1ee21ee3Y1ee41ee6e1ee7!G1ee81eeye1eez!L1ef0!e1ef1!R1ef21efue1efv!L1efw!e1efx!R1efy!e1efz!L1eg01eg1R1eg2!L1eg31eg4R1eg5!Y1eg6!e1eg71eggY1egh1ehpe1ehq1ehrY1ehs1eime1eiq1eive1eiy1ej3e1ej61ejbe1eje1ejge1ejk!K1ejl!J1ejm1ejoe1ejp1ejqJ1ejs1ejyI1ek91ekbA1ekc!i1ekd1ereI1erk1ermB1err1eykI1eyl!A1f281f4gI1f4w!A1f4x1f91I1f921f96A1f9c1fa5I1fa7!B1fa81fbjI1fbk!B1fbl1fh9I1fhc1fhlQ1fhs1g7pI1g7r!B1g7s1gd7I1gdb!B1gdc1gjkI1gjl1gjnA1gjp1gjqA1gjw1gjzA1gk01gl1I1gl41gl6A1glb!A1glc1glkI1gls1glzB1gm01gpwI1gpx1gpyA1gq31gq7I1gq81gqdB1gqe!c1gqo1gs5I1gs91gsfB1gsg1h5vI1h5w1h5zA1h681h6hQ1heo1hgpI1hgr1hgsA1hgt!B1hgw1hl1I1hl21hlcA1hld1hpyI1hq81hqaA1hqb1hrrI1hrs1hs6A1hs71hs8B1hs91ht1I1ht21htbQ1htr1htuA1htv1hv3I1hv41hveA1hvf1hvhI1hvi1hvlB1hvx1hwoI1hww1hx5Q1hxc1hxeA1hxf1hyeI1hyf1hysA1hyu1hz3Q1hz41hz7B1hz8!I1hz91hzaA1hzb1i0iI1i0j!A1i0k!I1i0l!T1i0m!I1i0w1i0yA1i0z1i2aI1i2b1i2oA1i2p1i2sI1i2t1i2uB1i2v!I1i2w!B1i2x1i30A1i31!I1i321i33A1i341i3dQ1i3e!I1i3f!T1i3g!I1i3h1i3jB1i3l1i5nI1i5o1i5zA1i601i61B1i62!I1i631i64B1i65!I1i66!A1i801i94I1i95!B1i9c1iamI1ian1iayA1ib41ibdQ1ibk1ibnA1ibp1id5I1id71id8A1id9!I1ida1idgA1idj1idkA1idn1idpA1ids!I1idz!A1ie51ie9I1iea1iebA1iee1iekA1ieo1iesA1iio1ik4I1ik51ikmA1ikn1ikqI1ikr1ikuB1ikv!I1ikw1il5Q1il61il7B1il9!I1ila!A1ilb1injI1ink1io3A1io41io7I1iog1iopQ1itc1iumI1iun1iutA1iuw1iv4A1iv5!T1iv61iv7B1iv81iv9G1iva1ivcI1ivd1ivrB1ivs1ivvI1ivw1ivxA1iww1iy7I1iy81iyoA1iyp1iyqB1iyr1iysI1iz41izdQ1izk1izwT1j0g1j1mI1j1n1j1zA1j20!I1j281j2hQ1j401j57I1j5c1j5lQ1j5m1j5nI1j5o1j5qB1j5r1jcbI1jcc1jcqA1jcr1jhbI1jhc1jhlQ1jhm1jjjI1jjk1jjpA1jjr1jjsA1jjv1jjyA1jjz!I1jk0!A1jk1!I1jk21jk3A1jk41jk6B1jkg1jkpQ1jmo1jo0I1jo11jo7A1joa1jogA1joh!I1joi!T1joj!I1jok!A1jpc!I1jpd1jpmA1jpn1jqqI1jqr1jqxA1jqy!I1jqz1jr2A1jr3!T1jr4!I1jr51jr8B1jr9!T1jra!I1jrb!A1jrk!I1jrl1jrvA1jrw1jt5I1jt61jtlA1jtm1jtoB1jtp!I1jtq1jtsT1jtt1jtuB1juo1k4uI1k4v1k52A1k541k5bA1k5c!I1k5d1k5hB1k5s1k61Q1k621k6kI1k6o!T1k6p!G1k6q1k7jI1k7m1k87A1k891k8mA1kao1kc0I1kc11kc6A1kca!A1kcc1kcdA1kcf1kclA1kcm!I1kcn!A1kcw1kd5Q1kdc1kehI1kei1kemA1keo1kepA1ker1kevA1kew!I1kf41kfdQ1ko01koiI1koj1komA1kon1kv0I1kv11kv4K1kv51kvlI1kvz!B1kw01lriI1lrk1lroB1ls01oifI1oig1oiiL1oij1oilR1oim1ojlI1ojm!R1ojn1ojpI1ojq!L1ojr!R1ojs!L1ojt!R1oju1oqgI1oqh!L1oqi1oqjR1oqk1oviI1ovk1ovqS1ovr!L1ovs!R1s001sctI1scu!L1scv!R1scw1zkuI1zkw1zl5Q1zla1zlbB1zo01zotI1zow1zp0A1zp1!B1zpc1zqnI1zqo1zquA1zqv1zqxB1zqy1zr7I1zr8!B1zr9!I1zrk1zrtQ1zrv20euI20ev20ewB20ex20juI20jz!A20k0!I20k120ljA20lr20luA20lv20m7I20o020o3Y20o4!S20og20ohA20ow25fbe25fk260ve260w26dxI26f426fce2dc02djye2dlc2dleY2dlw2dlzY2dm82dx7e2fpc2ftoI2ftp2ftqA2ftr!B2fts2ftvA2jnk2jxgI2jxh2jxlA2jxm2jxoI2jxp2jyaA2jyb2jycI2jyd2jyjA2jyk2jzdI2jze2jzhA2jzi2k3lI2k3m2k3oA2k3p2l6zI2l722l8fQ2l8g2lmnI2lmo2lo6A2lo72loaI2lob2lpoA2lpp2lpwI2lpx!A2lpy2lqbI2lqc!A2lqd2lqeI2lqf2lqiB2lqj!I2lqz2lr3A2lr52lrjA2mtc2mtiA2mtk2mu0A2mu32mu9A2mub2mucA2mue2muiA2n0g2n1oI2n1s2n1yA2n1z2n25I2n282n2hQ2n2m2ne3I2ne42ne7A2ne82nehQ2nen!J2oe82ojzI2ok02ok6A2olc2on7I2on82oneA2onf!I2onk2ontQ2ony2onzL2p9t2pbfI2pbg!K2pbh2pbjI2pbk!K2pbl2prlI2pz42q67e2q682q6kI2q6l2q6ne2q6o2q98I2q992q9be2q9c2qb0I2qb12qcle2qcm2qdbj2qdc2qo4e2qo5!f2qo62qore2qos2qotI2qou2qpge2qph2qpiI2qpj2qpne2qpo!I2qpp2qpte2qpu2qpwf2qpx2qpye2qpz!f2qq02qq1e2qq22qq4f2qq52qree2qrf2qrjk2qrk2qtde2qte2qtff2qtg2qthe2qti2qtsf2qtt2qude2que2quwf2qux2quze2qv0!f2qv12qv4e2qv52qv7f2qv8!e2qv92qvbf2qvc2qvie2qvj!f2qvk!e2qvl!f2qvm2qvze2qw0!I2qw1!e2qw2!I2qw3!e2qw4!I2qw52qw9e2qwa!f2qwb2qwee2qwf!I2qwg!e2qwh2qwiI2qwj2qyne2qyo2qyuI2qyv2qzae2qzb2qzoI2qzp2r01e2r022r0pI2r0q2r1ve2r1w2r1xf2r1y2r21e2r22!f2r232r2ne2r2o!f2r2p2r2se2r2t2r2uf2r2v2r4je2r4k2r4rI2r4s2r5fe2r5g2r5lI2r5m2r7oe2r7p2r7rf2r7s2r7ue2r7v2r7zf2r802r91I2r922r94H2r952r97Y2r982r9bI2r9c2raae2rab!f2rac2rare2ras2rauf2rav2rb3e2rb4!f2rb52rbfe2rbg!f2rbh2rcve2rcw2rg3I2rg42rgfe2rgg2risI2rit2rjze2rk02rkbI2rkc2rkfe2rkg2rlzI2rm02rm7e2rm82rmhI2rmi2rmne2rmo2rnrI2rns2rnze2ro02rotI2rou2rr3e2rr42rrfI2rrg!f2rrh2rrie2rrj!f2rrk2rrre2rrs2rrzf2rs02rs5e2rs6!f2rs72rsfe2rsg2rspf2rsq2rsre2rss2rsuf2rsv2ruee2ruf!f2rug2rw4e2rw52rw6f2rw7!e2rw82rw9f2rwa!e2rwb!f2rwc2rwse2rwt2rwvf2rww!e2rwx2rx9f2rxa2ry7e2ry82s0jI2s0k2s5be2s5c2sayI2sc02sc9Q2scg2t4te2t4w47p9e47pc5m9pejny9!Ajnz4jo1rAjo5cjobzAl2ionvnhI",M:": URI should have a non-empty host name: ",C:"===== asynchronous gap ===========================\n",U:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",X:"Broadcast stream controllers do not support pause callbacks",J:"Cannot change handlers of asBroadcastStream source subscription.",F:"Cannot extract a file path from a URI with a fragment component",z:"Cannot extract a file path from a URI with a query component",Q:"Cannot extract a non-Windows file path from a file URI with an authority",c:"Cannot fire new event. Controller is already firing an event",w:'Cannot use "ref" after the widget was disposed.',a:"Categoria predefinida quando um novo mang\xe1 \xe9 adicionado \xe0 biblioteca",p:"C\xf3pia da Biblioteca como c\xf3pia de seguran\xe7a de Tachidesk",t:"Default category when adding new manga to library",I:'E533333333333333333333333333DDDDDDD4333333333333333333334C43333CD53333333333333333333333UEDTE4\x933343333\x933333333333333333333333333D433333333333333333CDDEDDD43333333S5333333333333333333333C333333D533333333333333333333333SUDDDDT5\x9933CD4E333333333333333333333333UEDDDDE433333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333TUUS5CT\x94\x95E3333333333333333333333333333333333333333333333333333333333333333333333SUDD3DUU43533333333333333333C3333333333333w733337333333s3333333w7333333333w33333333333333333333CDDTETE43333ED4S5SE3333C33333D33333333333334E433C3333333C33333333333333333333333333333CETUTDT533333CDDDDDDDDDD3333333343333333D$433333333333333333333333SUDTEE433C34333333333333333333333333333333333333333333333333333333333333333333333333333333TUDDDD3333333333CT5333333333333333333333333333DCEUU3U3U5333343333S5CDDD3CDD333333333333333333333333333333333333333333333333333333333333333333333s73333s33333333333""""""""333333339433333333333333CDDDDDDDDDDDDDDDD3333333CDDDDDDDDDDD\x94DDDDDDDDDDDDDDDDDDDDDDDD33333333DDDDDDDD3333333373s333333333333333333333333333333CDTDDDCTE43C4CD3C333333333333333D3C33333\xee\xee\xed\xee\xee\xee\xee\xee\xee\xee\xee\xee\xee\xee\xee\xee\xed\xee\xee\xee\xee\xee\xee\xee\xee\xee\xee\xee\xee\xee\xed\xee\xee\xee\xee\xee\xee\xee\xee\xee\xee\xee\xee\xee333333\xbb\xbb\xbb\xbb\xbb\xbb\xbb\xbb33\xcc\xcc\xcc\xcc\xcc\xcc\xcc\xcc\xcc\xcc\xcc\xcc\xcc\xcc\xcc\xcc\xcc\xcc\xcc\xcc\xcc\xcc\xcc\xcc<3sww73333swwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww7333swwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww7333333w7333333333333333733333333333333333333333333333sww733333s7333333s3wwwww333333333wwwwwwwwwwwwwwwwwwwwwwwwwwwwgffffffffffffvww7wwwwwwswwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww733333333333333333333333swwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww7333333333333333333333333333333333333333333333333333333333swwwww7333333333333333333333333333333333333333333wwwwwwwwwwwwwwwwwwwww7swwwwwss33373733s33333w33333CT333333333333333EDTETD433333333#\x14"333333333333"""233333373ED4U5UE9333C33333D33333333333333www3333333s73333333333EEDDDCC3DDDDUUUDDDDD3T5333333333333333333333333333CCU3333333333333333333333333333334EDDD33SDD4D5U4333333333C43333333333CDDD9DDD3DCD433333333C433333333333333C433333333333334443SEUCUSE4333D33333C43333333533333CU33333333333333333333333333334EDDDD3CDDDDDDDDDDDDDDDDDDDDDDDDDDD33DDDDDDDDDDDDDDDDDDDDDDDDD33334333333C33333333333DD4DDDDDDD433333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333CSUUUUUUUUUUUUUUUUUUUUUUUUUUU333CD43333333333333333333333333333333333333333433333U3333333333333333333333333UUUUUUTEDDDDD3333C3333333333333333373333333333s333333333333swwwww33w733wwwwwww73333s33333333337swwwwsw73333wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwDD4D33CDDDDDCDDDDDDDDDDDDDDDDD43EDDDTUEUCDDD33333D33333333333333DDCDDDDCDCDD333333333DT33333333333333D5333333333333333333333333333CSUE4333333333333CDDDDDDDD4333333DT33333333333333333333333CUDDUDU3SUSU43333433333333333333333333ET533E3333SDD3U3U4333D43333C43333333333333s733333s33333333333CTE333333333333333333UUUUDDDDUD3333"""""(\x02"""""""""3333333333333333333DDDD333333333333333333333333CDDDD3333C3333T333333333333333333333334343C33333333333SET334333333333DDDDDDDDDDDDDDDDDDDDDD4DDDDDDDD4CDDDC4DD43333333333333333333333333333333333333333333333333C33333333333333333333333333333333333333333333333333333333333333333333333333333333DDD433333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333334333333333333333333333333333333DD3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333DD433333333333333333333333333333DDD43333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333DDDDDDD533333333333333333333333DDDTTU5D4DD333C433333D333333333333333333333DDD733333s373ss33w7733333ww733333333333ss33333333333333333333333333333ww3333333333333333333333333333wwww33333www33333333333333333333wwww333333333333333wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww333333wwwwwwwwwwwwwwwwwwwwwww7wwwwwswwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww73333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333C4""333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333DD3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333DDD4333333333333333333333333333333333333333333333333333333DDD4333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333UEDDDTEE43333333333333333333333333333333333333333333333333333CEUDDDE33333333333333333333333333333333333333333333333333CD3DDEDD3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333EDDDCDDT43333333333333333333333333333333333333333CDDDDDDDDDD4EDDDETD3333333333333333333333333333333333333333333333333333333333333DDD3CC4DDD\x94433333333333333333333333333333333SUUC4UT4333333333333333333333333333333333333333333333333333#"""""""B333DDDDDDD433333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333CED3SDD$"""BDDD4CDDD333333333333333DD33333333333333333333333333333333333333333DEDDDUE333333333333333333333333333CCD3D33CD533333333333333333333333333CESEU3333333333333333333DDDD433333CU33333333333333333333333333334DC44333333333333333333333333333CD4DDDDD33333333333333333333DDD\x95DD333343333DDDUD43333333333333333333\x93\x99\x99IDDDDDDE43333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333CDDDDDDDDDDDDDDDDDDDDDD4CDDDDDDDDDDD33333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333CD3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333433333333333333333333333333333333333333333333333333333333333333333333333333DD4333333333333333333333333333333333333333333333333333333333333333333""""""33D4D33CD43333333333333333333CD3343333333333333333333333333333333333333333333333333333333333333333333333333333333333D33333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333CT53333DY333333333333333333333333UDD43UT43333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333D3333333333333333333333333333333333333333D43333333333333333333333333333333333CDDDDD333333333333333333333333CD4333333333333333333333333333333333333333333333333333333333333SUDDDDUDT43333333333343333333333333333333333333333333333333333TEDDTTEETD333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333CUDD3UUDE43333333333333D3333333333333333343333333333SE43CD33333333DD33333C33TEDCSUUU433333333S533333CDDDDDU333333\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa:3\x99\x99\x9933333DDDDD4233333333333333333UTEUS433333333CDCDDDDDDEDDD33433C3E433#"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""BDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD$"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""BDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD$"""""""""""""""2333373r33333333\x93933CDDD4333333333333333CDUUDU53SEUUUD43\xa3\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xaa\xba\xbb\xbb\xbb\xbb\xbb\xbb\xbb\xbb\xbb\xbb\xbb\xbb\xbb\xbb\xbb\xbb\xbb\xbb\xbb\xcb\xcc\xcc\xcc\xcc\xcc\xcc\xcc\xcc\xcc\xcc\xcc\xcc\xcc\xcc\xcc\xcc\xcc\xcc\xcc\xcc\xcc\xcc\xcc\xcc\xcc\xcc\xcc\xcc\xcc\xcc\xcc\f',l:"Error handler must accept one Object or one Object and a StackTrace as arguments, and return a value of the returned future's type",d:"Error: Context is null, Please call init(context) before showing toast.",O:"Failed to load network image.\nImage URL: ",k:"Go to Chapter Name 'CN' from Manga 'M' in Category 'C'",m:"Isto ir\xe1 fundir todos os mangas desta categoria para predefinidos!",j:"Isto n\xe3o impede extens\xf5es n\xe3o oficiais ou incorretamente marcadas de mostrarem conte\xfado NSFW (18+) dentro da aplica\xe7\xe3o",o:"It seems like you constructed your class using `MyClass._()`. This constructor is only meant to be used by freezed and you are not supposed to need it nor use it.\nPlease check the documentation here for more information: https://github.com/rrousselGit/freezed#custom-getters-and-methods",H:"Nenhum manga encontrado nesta categoria.\n(Dica: Verifique as suas pesquisas e filtros!)",B:"No manga found in this Category. \n(Tip: Check your search & filters!)",s:"Nome da categoria n\xe3o pode ficar em branco",P:"Nome de utilizador n\xe3o pode ficar em branco",L:"N\xe3o foi poss\xedvel encontrar a extens\xe3o selecionada",_:"N\xe3o tem nenhuma categoria.\nCria uma nas defini\xe7\xf5es para organizar a sua biblioteca",b:"Restaurar Tachidesk pela c\xf3pia de seguran\xe7a",R:"Search for query X (Results are based on screen context)",A:"Shows title and quick settings when opening a chapter",V:"Stream has been disposed.\nAn ImageStream is considered disposed once at least one listener has been added and subsequently all listeners have been removed and no handles are outstanding from the keepAlive method.\nTo resolve this error, maintain at least one listener on the stream, or create an ImageStreamCompleterHandle from the keepAlive method, or create a new stream for the image.",Y:"SystemChrome.setApplicationSwitcherDescription",f:"TextInputClient.updateEditingStateWithDeltas",n:"TextInputClient.updateEditingStateWithTag",x:"There was a problem trying to load FontManifest.json",u:"This does not prevent unofficial or potentially incorrectly flagged extensions from surfacing NSFW(18+) content within app",r:"This will merge all Mangas in this Category to Default!",g:"You cannot add items while items are being added from addStream",G:"You don't have any Categories. \n(Tip: Tap the Plus button to create one for organizing your library)",N:"You don't have any Categories. \nCreate one in settings for organizing your library",i:"]. Custom extension filters are only allowed with FileType.custom, please change it or remove filters.",h:"called ProviderSubscription.read on a subscription that was closed",y:"handleError callback must take either an Object (the error), or both an Object (the error) and a StackTrace.",E:"max must be in range 0 < max \u2264 2^32, was ",ba:"\u1ac4\u2bb8\u411f\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u3f4f\u0814\u32b6\u32b6\u32b6\u32b6\u1f81\u32b6\u32b6\u32b6\u1bbb\u2f6f\u3cc2\u051e\u32b6\u11d3\u079b\u2c12\u3967\u1b18\u18aa\u392b\u414f\u07f1\u2eb5\u1880\u1123\u047a\u1909\u08c6\u1909\u11af\u2f32\u1a19\u04d1\u19c3\u2e6b\u209a\u1298\u1259\u0667\u108e\u1160\u3c49\u116f\u1b03\u12a3\u1f7c\u121b\u2023\u1840\u34b0\u088a\u3c13\u04b6\u32b6\u41af\u41cf\u41ef\u4217\u32b6\u32b6\u32b6\u32b6\u32b6\u3927\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u18d8\u1201\u2e2e\u15be\u0553\u32b6\u3be9\u32b6\u416f\u32b6\u32b6\u32b6\u1a68\u10e5\u2a59\u2c0e\u205e\u2ef3\u1019\u04e9\u1a84\u32b6\u32b6\u3d0f\u32b6\u32b6\u32b6\u3f4f\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u104e\u076a\u32b6\u07bb\u15dc\u32b6\u10ba\u32b6\u32b6\u32b6\u32b6\u32b6\u1a3f\u32b6\u0cf2\u1606\u32b6\u32b6\u32b6\u0877\u32b6\u32b6\u073d\u2139\u0dcb\u0bcb\u09b3\u0bcb\u0fd9\u20f7\u03e3\u32b6\u32b6\u32b6\u32b6\u32b6\u0733\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u041d\u0864\u32b6\u32b6\u32b6\u32b6\u32b6\u3915\u32b6\u3477\u32b6\u3193\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u20be\u32b6\u36b1\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u2120\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u2f80\u36ac\u369a\u32b6\u32b6\u32b6\u32b6\u1b8c\u32b6\u1584\u1947\u1ae4\u3c82\u1986\u03b8\u043a\u1b52\u2e77\u19d9\u32b6\u32b6\u32b6\u3cdf\u090a\u0912\u091a\u0906\u090e\u0916\u091e\u090a\u0912\u091a\u0906\u090e\u0916\u091e\u090a\u0912\u091a\u0906\u090e\u0916\u091e\u090a\u0912\u091a\u0906\u090e\u0916\u091e\u090a\u0912\u091a\u0906\u090e\u0916\u091e\u090a\u0912\u091a\u0906\u090e\u0916\u091e\u090a\u0912\u091a\u0906\u090e\u0916\u091e\u090a\u0912\u091a\u0906\u090e\u0916\u091e\u090a\u0912\u091a\u0906\u090e\u0916\u091e\u090a\u0912\u091a\u0906\u090e\u0916\u091e\u090a\u0912\u091a\u0906\u090e\u0916\u091e\u090a\u0912\u091a\u0906\u090e\u0916\u091e\u090a\u0912\u091a\u0906\u090e\u0916\u091e\u090a\u0912\u091a\u0906\u090e\u0916\u091e\u090a\u0912\u091a\u0906\u090e\u0916\u091e\u090a\u0912\u091a\u0906\u090e\u0916\u091e\u090a\u0912\u091a\u0906\u090e\u0916\u091e\u090a\u0912\u091a\u0906\u090e\u0916\u091e\u090a\u0912\u091a\u0906\u090e\u0916\u091e\u090a\u0912\u091a\u0906\u090e\u0916\u091e\u090a\u0912\u091a\u0906\u090e\u0916\u091e\u090a\u0912\u091a\u0906\u090e\u0916\u091e\u090a\u0912\u091a\u0906\u090e\u0916\u091e\u090a\u0912\u091a\u0906\u090e\u0916\u091e\u090a\u0912\u091a\u0906\u090e\u0916\u093a\u0973\u3d4f\u3d4f\u3d4f\u3d4f\u3d4f\u3d4f\u3d4f\u3d4f\u3d4f\u3d4f\u3d4f\u3d4f\u3d4f\u3d4f\u3d4f\u3d4f\u3d4f\u3d4f\u3d4f\u3d4f\u3d4f\u3d4f\u3d4f\u3d4f\u3d4f\u3d4f\u3d4f\u3d4f\u3d4f\u3d4f\u3d4f\u3d4f\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u3498\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u0834\u32b6\u32b6\u2bb8\u32b6\u32b6\u36ac\u35a6\u32b9\u33d6\u32b6\u32b6\u32b6\u35e5\u24ee\u3847\x00\u0567\u3a12\u2826\u01d4\u2fb3\u29f7\u36f2\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u2bc7\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u1e54\u32b6\u1394\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u2412\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u30b3\u2c62\u3271\u32b6\u32b6\u32b6\u12e3\u32b6\u32b6\u1bf2\u1d44\u2526\u32b6\u2656\u32b6\u32b6\u32b6\u0bcb\u1645\u0a85\u0ddf\u2168\u22af\u09c3\u09c5\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u3f2f\u3d4f\u3d4f\u3d4f\u3d4f\u3d4f\u3d4f\u3d4f\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6\u32b6"} +var t=(function rtii(){var s=A.ah +return{RD:s("kO"),JC:s("vO"),uY:s("Ad"),vH:s("bCP"),od:s("c7"),pC:s("vQ"),A_:s("my"),so:s("bQ"),Jo:s("bQ"),rb:s("bQ"),m:s("bQ"),Bs:s("bQ"),s1:s("HN"),J:s("fK"),Ao:s("Al"),vp:s("vS"),S7:s("HR"),jo:s("arM"),pR:s("rX"),rv:s("C"),uw:s("C>"),z6:s("C>,aj)>>"),yG:s("C>>"),nS:s("C>>"),QO:s("C"),_T:s("C"),Zx:s("C"),Pa:s("C?>"),uV:s("C?>"),Ep:s("C?>"),L2:s("C?>"),ng:s("C?>"),uU:s("C?>"),AC:s("C?>"),ms:s("C"),Lq:s("C?>"),z1:s("C>?>"),uR:s("C"),TX:s("C"),vM:s("C"),lZ:s("C"),qC:s("hr"),ca:s("vU"),M1:s("Xf"),e8:s("kR"),nc:s("rY"),kk:s("At"),N3:s("Au"),uJ:s("HY"),nw:s("I_"),Al:s("t_"),UL:s("I1"),jj:s("t1"),C4:s("vY"),m_:s("dg"),k:s("aL"),q:s("ij"),i4:s("Az"),y7:s("AA"),Xj:s("bDo"),pI:s("XP"),V4:s("dK"),M8:s("t5"),Pt:s("aua"),LE:s("lE"),PL:s("w5"),JS:s("pH"),uq:s("w6"),wY:s("cq"),nz:s("cq"),OX:s("cq"),vr:s("cq"),Ft:s("cq"),iw:s("cq"),oC:s("cq"),yz:s("cq"),gv:s("cq"),S9:s("cq"),KI:s("cq"),fN:s("cq"),Tx:s("cq"),fn:s("cq"),sl:s("cq"),D5:s("cq"),j5:s("cq"),_n:s("cq"),Vg:s("cq"),zB:s("cq"),zI:s("XU"),d0:s("ik?,dc<@>>"),oo:s("aQ"),PY:s("w8"),_v:s("Im"),y6:s("w9"),rB:s("Ip"),ad:s("t7"),Uc:s("il"),vg:s("im"),o:s("a5"),dA:s("kS"),ic:s("kc"),eW:s("Is"),ES:s("bDy"),Ox:s("bon"),aL:s("bDC"),Lh:s("Iw"),XY:s("AP"),p1:s("t9"),qo:s("AQ"),tG:s("Yj"),m6:s("Yk"),E_:s("Iy"),Bn:s("Yl"),wW:s("ta"),S3:s("Iz"),BQ:s("IA"),nR:s("IC"),xG:s("AT"),FG:s("AU"),O5:s("AW"),Hz:s("hQ"),hP:s("hs"),n8:s("M"),IC:s("dk"),b8:s("cu<@>"),F6:s("wd"),w:s("a2"),eL:s("a2"),fF:s("ke"),Bx:s("pO"),Od:s("pO"),vn:s("B2"),T:s("hR"),Az:s("aq>"),W8:s("wg"),d1:s("YI"),VD:s("bE1"),ho:s("az"),gF:s("jt<~>"),My:s("IY<@>"),H5:s("bEh"),WS:s("o6"),HY:s("eE"),ip:s("J3"),I7:s("B9"),Bk:s("wo"),fs:s("Ba"),W7:s("dl"),l4:s("bEx"),IG:s("wq"),Uf:s("tm"),uy:s("bEB"),sp:s("Bc"),Je:s("bX0"),f6:s("hu<~>"),JX:s("a07"),w6:s("tn"),_Z:s("hv"),lm:s("Bh"),I:s("lG"),ra:s("bX6"),Db:s("bii"),Tg:s("hw"),xm:s("kf"),zo:s("el"),uZ:s("a0b>"),Jj:s("bET"),VF:s("pQ"),yN:s("a0d"),oV:s("wz>"),Pj:s("wA"),BP:s("hT"),t9:s("Jp"),b6:s("cC"),vm:s("pS"),g7:s("Bm"),uL:s("ob"),zk:s("oc"),ty:s("bFj"),U2:s("Ju"),CB:s("Bp"),b_:s("pU"),Tu:s("bk"),U6:s("aK"),A0:s("eI"),sv:s("Bs"),c0:s("bph"),Ee:s("an<@>"),lU:s("cv"),F:s("bG"),ds:s("bFu"),m1:s("pW"),IH:s("JC"),iR:s("a0C"),X8:s("a0D"),Q4:s("JE"),dQ:s("cQ"),Mq:s("cQ"),r8:s("cQ"),V6:s("cQ"),ls:s("cQ"),ka:s("cQ"),Kp:s("oe"),Lt:s("d0"),I3:s("aX"),VI:s("cm"),IX:s("ip"),bh:s("wG"),oB:s("wH"),ii:s("BD"),o6:s("bFM"),_w:s("q_"),HH:s("q0"),OO:s("l_"),cP:s("wI"),b7:s("wJ"),P9:s("q1"),eI:s("wK"),q8:s("cw"),TO:s("wL"),ct:s("wM"),FT:s("tv"),Sf:s("e7<@>"),gw:s("e7"),rq:s("hV"),IP:s("of"),yX:s("BG"),jL:s("l0"),cL:s("l1"),nZ:s("bpt"),vi:s("BH"),mm:s("kg"),hS:s("biB"),lC:s("JJ"),Q9:s("bFX"),we:s("bx"),zJ:s("bpw"),fM:s("bpx"),xe:s("bpy"),AK:s("iW"),OJ:s("JP"),US:s("hW"),KL:s("JS"),s4:s("aBT"),OE:s("aBU"),mx:s("eJ"),l5:s("wU"),zq:s("BM"),ia:s("wX"),VW:s("wY"),FK:s("hX"),jU:s("K0"),gx:s("l2<@>"),bE:s("l3"),OP:s("dW"),Uy:s("K6"),Nh:s("kh"),_8:s("q7"),N4:s("U([@])"),ef:s("U(m)"),Z9:s("U"),xd:s("U(f,a6)"),wF:s("U

"),UA:s("U

()"),L0:s("U<@>"),AJ:s("U<@>()"),f8:s("U"),j0:s("U?>"),EJ:s("U?>"),uz:s("U<~>"),db:s("U<~>([p])"),Dp:s("U<~>(m)"),Fp:s("dm"),pl:s("dm"),b4:s("h6"),Lu:s("h6"),MA:s("h6"),Ih:s("h6"),RQ:s("BR"),SP:s("BS"),ne:s("eK"),uA:s("dy"),C1:s("dy"),Uv:s("dy"),jn:s("dy"),YC:s("dy"),lG:s("dy"),hg:s("dy"),_U:s("dy"),UN:s("dy"),ok:s("dy"),fi:s("dy"),EK:s("dy"),xR:s("x0"),HJ:s("Ka"),Bt:s("hy"),yi:s("hy>"),rO:s("q9"),bT:s("q9>"),Ul:s("tE"),By:s("ki"),aq:s("BV"),Js:s("bl"),rQ:s("bXt"),XW:s("x1"),op:s("BZ<~(tA)>"),G7:s("a1D>"),rA:s("qb"),Pd:s("lJ"),mS:s("x2"),AL:s("l4"),Fn:s("qc"),zE:s("aC"),tR:s("qd"),zz:s("C0"),Ae:s("C1"),gc:s("a1N"),Lk:s("bq2"),Gf:s("tI"),g5:s("Kk"),Oh:s("x8"),oA:s("jC"),J2:s("C4"),bi:s("jD"),dW:s("kj"),SG:s("tM"),x2:s("i_"),nT:s("a22<@,lI>"),Bc:s("tN"),pq:s("iY"),q0:s("tO"),og:s("dE"),WB:s("bi"),U1:s("l6"),R_:s("xe"),JZ:s("aG0"),XO:s("aG1"),pT:s("aG2"),Hd:s("tR"),vz:s("bB"),nQ:s("tS"),Ya:s("Ca"),oF:s("fn"),FN:s("fn"),Pm:s("fn>"),OL:s("fn<@>"),tA:s("xf"),Wq:s("a2c"),Cr:s("xg"),K9:s("xh<@>"),Hk:s("z"),JY:s("z<@>"),VG:s("z"),QP:s("G"),NS:s("G"),eZ:s("G>"),Pv:s("G"),G:s("G"),Cs:s("G"),vN:s("G"),D3:s("G"),k3:s("G"),SJ:s("G"),qN:s("G"),Cu:s("G"),oR:s("G"),t_:s("G"),LU:s("G>"),td:s("G"),KV:s("G


"),ZD:s("G"),R:s("G"),vl:s("G"),dP:s("G"),Up:s("G"),mt:s("G"),lX:s("G"),An:s("G"),dH:s("G"),bp:s("G"),z8:s("G"),Wv:s("G"),uf:s("G"),EN:s("G
  • "),kZ:s("G>"),no:s("G"),sR:s("G"),wQ:s("G>"),Rh:s("G>"),mo:s("G>"),iQ:s("G"),om:s("G>"),_B:s("G"),XZ:s("G"),Fa:s("G"),fJ:s("G"),VB:s("G"),VO:s("G"),O_:s("G"),zX:s("G"),A:s("G"),r0:s("G"),K0:s("G"),Li:s("G"),k5:s("G"),cN:s("G"),s9:s("G"),Y4:s("G"),_f:s("G"),ER:s("G"),X_:s("G>"),i1:s("G>"),Zb:s("G>"),Eo:s("G"),u6:s("G"),ss:s("G"),a9:s("G>"),So:s("G"),cS:s("G>"),Iq:s("G>"),H7:s("G>"),n4:s("G>"),Xr:s("G"),Ji:s("G"),YE:s("G"),tc:s("G"),qF:s("G"),Qg:s("G"),jl:s("G"),yv:s("G"),wi:s("G"),jT:s("G"),AT:s("G"),g8:s("G>"),Im:s("G>"),EO:s("G"),nx:s("G"),OB:s("G"),zY:s("G"),wc:s("G"),cD:s("G"),UY:s("G"),M6:s("G"),D9:s("G"),nm:s("G>"),NK:s("G"),_:s("G>"),BF:s("G"),ha:s("G>"),RI:s("G"),kG:s("G"),Du:s("G<+mangaList,source(C>,aj)>"),Co:s("G<+(f,uX)>"),AO:s("G"),Bw:s("G"),Pc:s("G"),Ik:s("G"),xT:s("G"),TT:s("G"),Ry:s("G"),QT:s("G"),VM:s("G"),yo:s("G"),i3:s("G"),k4:s("G"),Fm:s("G"),CK:s("G"),vj:s("G"),ZP:s("G"),D1:s("G"),u1:s("G"),q1:s("G"),QF:s("G"),o4:s("G"),Qo:s("G"),vU:s("G"),fe:s("G"),b5:s("G"),N_:s("G"),X4:s("G"),wb:s("G"),s:s("G"),oU:s("G"),XS:s("G"),bt:s("G"),y1:s("G"),Lx:s("G"),sD:s("G"),VS:s("G"),fm:s("G"),Ne:s("G"),a5:s("G>>"),ch:s("G"),BC:s("G>"),x0:s("G>"),XE:s("G"),LX:s("G"),p:s("G"),GA:s("G"),Na:s("G"),OM:s("G"),TV:s("G"),ob:s("G"),Kj:s("G"),Vf:s("G>>>"),bx:s("G>,aj)>>>>"),pV:s("G>>"),d2:s("G?>>>"),bG:s("G?>>>"),LP:s("G?>>>"),VV:s("G?>>>"),NQ:s("G>>"),x_:s("G?>>>"),gn:s("G>>"),Rc:s("G>>"),sP:s("G>"),nd:s("G>"),qk:s("G>"),ZS:s("G>"),SW:s("G?>>"),o2:s("G?>>"),lB:s("G?>>"),Q0:s("G>"),_Y:s("G"),CZ:s("G"),mz:s("G"),Kx:s("G"),he:s("G"),zj:s("G"),ML:s("G"),m5:s("G"),Ei:s("G"),B:s("G>"),F1:s("G>"),jE:s("G"),qi:s("G"),uD:s("G"),M7:s("G"),au:s("G"),s6:s("G"),lb:s("G"),PN:s("G"),Z6:s("G"),cR:s("G

    "),NM:s("G"),HZ:s("G

    "),up:s("G"),ee:s("G<@>"),t:s("G"),i6:s("G"),tZ:s("G"),L:s("G"),JK:s("G"),cA:s("G"),Rs:s("G"),ny:s("G?>"),Fi:s("G"),_m:s("G"),_x:s("G"),Z:s("G"),a0:s("G"),Zt:s("G()>"),iO:s("G()>"),xf:s("G"),sA:s("G"),sQ:s("G<~(x_)?>"),qj:s("G<~()>"),h:s("G<~(c7)>"),x8:s("G<~(nV)>"),j2:s("G<~(bk)>"),Jh:s("G<~(e)>"),WL:s("G<~(le)>"),RP:s("ci<@>"),bz:s("Ch"),gZ:s("at"),lT:s("on"),dC:s("cy<@>"),e:s("j"),sW:s("xj<@>"),Hf:s("j_"),Cl:s("mS"),D2:s("iq"),M2:s("Ck"),SQ:s("Cl"),Di:s("xm"),CV:s("tX"),bR:s("bo"),NE:s("bo"),ku:s("bo"),hA:s("bo"),C:s("bo>"),Ts:s("bo>"),af:s("bo"),Xw:s("bo"),L6:s("j0"),h_:s("a2x"),kd:s("h7"),jh:s("Cq"),rf:s("KM"),XH:s("xp"),tF:s("xq"),Ls:s("xr"),Ah:s("xs"),KZ:s("xt"),O7:s("xu"),iG:s("xv"),BH:s("tZ"),Fs:s("Ct"),hz:s("lM"),jQ:s("cY"),C5:s("bHj"),uF:s("bqr"),or:s("j1>"),n_:s("jF>>>"),gL:s("jF>"),z_:s("jF"),oM:s("jF"),U9:s("oq"),wO:s("xw<@>"),NJ:s("xx"),Rk:s("e"),a6:s("e"),pU:s("e"),Py:s("e"),eT:s("e"),h1:s("e"),m3:s("e"),gS:s("e"),E9:s("e"),YN:s("e"),UX:s("e"),LF:s("e"),tt:s("e>"),gV:s("e<+mangaList,source(C>,aj)>"),I1:s("e"),RS:s("e"),V1:s("e"),WG:s("e"),iW:s("e"),To:s("e"),yp:s("e"),JF:s("e"),Z4:s("e"),TP:s("e

    "),Ly:s("e"),j:s("e<@>"),Cm:s("e"),Dn:s("e"),ga:s("e"),I_:s("au"),f0:s("jG"),da:s("d6"),JW:s("Cz"),bd:s("n"),bS:s("bqy"),wf:s("os"),nn:s("a3"),W:s("u5"),z9:s("is"),xN:s("xA"),Y3:s("xB"),Hv:s("jH"),eE:s("xC"),GV:s("it"),dq:s("L3"),LO:s("xE"),Sr:s("xF"),ur:s("mU"),KA:s("iu"),sy:s("j3"),KM:s("L7"),cM:s("iv"),tO:s("aU"),YB:s("aU"),mT:s("aU"),UH:s("aU"),DC:s("aU"),q9:s("aU"),sw:s("aU>"),lY:s("aU>"),Kc:s("aU>"),qE:s("aU>"),Dx:s("xG<@,@>"),bU:s("a6"),nf:s("a6"),GU:s("a6"),Yl:s("a6"),a:s("a6"),_P:s("a6"),e3:s("a6"),f:s("a6<@,@>"),yy:s("a6"),Lo:s("a6>"),Zk:s("a6>"),xE:s("a6"),pE:s("a6"),rr:s("a6<~(c3),bS?>"),tN:s("en"),C9:s("en"),iU:s("ad"),a4:s("ad"),B5:s("ad"),cj:s("ad"),J3:s("ad"),qn:s("ad"),Tr:s("ad"),fc:s("CI"),iB:s("bHE"),D:s("av"),sS:s("mW<~>"),Le:s("Lk<@>"),ui:s("dn"),e1:s("bE"),h9:s("bE"),Ak:s("bE"),dL:s("bE"),kU:s("bE"),iL:s("bE"),XL:s("bE"),QL:s("bE"),Il:s("bE"),wG:s("bE"),Oc:s("xK"),xV:s("bS"),l:s("qp"),SA:s("u9"),tB:s("CO"),Pw:s("ov"),Kv:s("dX"),xS:s("lb"),Ig:s("CP"),Pb:s("dY"),ZA:s("Lv"),_h:s("ow"),Wz:s("lR"),Lb:s("fz"),y_:s("xM"),RZ:s("xO"),jW:s("ub"),A4:s("lc"),F4:s("h9"),u9:s("xP"),XD:s("LG"),Ka:s("bI8"),JT:s("oy"),uK:s("kt"),hC:s("oz<~>"),_A:s("hB"),iy:s("br"),K3:s("dP"),Jd:s("dP"),Tm:s("dP"),eq:s("dP"),ji:s("dP"),WA:s("dP"),kj:s("dP"),Te:s("al"),P:s("aE"),zr:s("uc"),K:s("B"),xA:s("B(m)"),_a:s("B(m{params:B?})"),yw:s("bb"),CT:s("bb()>"),fy:s("bb<~()>"),d:s("bb<~(c7)>"),jc:s("bb<~(nV)>"),Zo:s("bb<~(le)>"),EP:s("l"),gY:s("oC"),o0:s("LU"),BR:s("bIh"),Ms:s("qt"),N1:s("D_"),A9:s("xV"),BB:s("LX"),QA:s("xW"),vo:s("LY<@>"),Mf:s("D1"),pw:s("f5<@>"),sd:s("f5"),FE:s("LZ"),Q2:s("D4"),Fw:s("ha"),oS:s("ha"),ke:s("D6"),zM:s("hb"),IF:s("Me"),ix:s("fo"),v3:s("L"),NA:s("Mi"),lO:s("Da"),hD:s("lf"),qa:s("bY3"),ge:s("y1"),Ko:s("qz"),Au:s("oH"),pY:s("qB"),qL:s("c3"),GG:s("bYa"),XA:s("qC"),n2:s("y3"),WQ:s("y4"),w5:s("qD"),DB:s("y5"),PB:s("y6"),RH:s("y7"),Mj:s("y8"),xb:s("y9"),ks:s("j8"),oN:s("qE"),xF:s("bIJ"),dx:s("Dh"),ZQ:s("qF"),bb:s("Dj"),eP:s("Mr"),_p:s("lg"),C0:s("bIV"),WK:s("bm"),M:s("aV"),o8:s("bp"),I0:s("kv"),OD:s("cd"),ZI:s("cd>>"),AX:s("cd>"),jp:s("cd?>>"),dK:s("cd?>>"),EB:s("cd?>>"),hZ:s("cd?>>"),tb:s("cd>"),Is:s("cd?>>"),Hq:s("cd>"),S6:s("cd"),PG:s("cd"),dd:s("cd"),Io:s("cd"),ew:s("cd"),h6:s("cd"),yH:s("b2"),aV:s("Dp"),ax:s("a6D"),TF:s("yd"),WM:s("cj"),_L:s("Mw"),hN:s("Dq"),FA:s("ye"),FL:s("bJ_"),YK:s("yf"),jV:s("Dx"),NF:s("yg"),pf:s("yh"),uM:s("eT"),jC:s("yi"),lR:s("fc"),j1:s("yj"),WJ:s("yk"),gy:s("i4"),sx:s("yl"),N7:s("Dy"),pK:s("bYk"),Rp:s("+()"),BZ:s("+(f,hX?)"),YT:s("I"),Bb:s("li"),Qz:s("a71"),MD:s("DA"),MY:s("MH"),NW:s("DB"),re:s("MI"),x:s("N"),DW:s("yp"),f1:s("MQ"),I9:s("H"),Cg:s("yr"),F5:s("aG"),GM:s("b1"),Wx:s("qK"),nl:s("d7"),Ss:s("oM"),Cn:s("DF"),dw:s("N1"),E1:s("uw"),UM:s("n8"),mu:s("ll"),Wd:s("DH"),Ol:s("yv"),k8:s("fB<@>"),dZ:s("N4"),yb:s("fT"),z4:s("fp"),k2:s("N7"),zw:s("d1"),Rr:s("d1"),H8:s("d1"),MV:s("d1"),o_:s("d1"),Qt:s("n9<~>"),UV:s("fU"),LQ:s("eq"),oj:s("DL"),N2:s("qN"),pO:s("dc<@>(E,B?)"),SB:s("DM"),Sv:s("yA"),nY:s("DP"),BL:s("DP"),Np:s("DQ"),MF:s("DS"),JE:s("Nh"),Cy:s("Ni"),FS:s("Nl"),gt:s("nc"),sm:s("DX"),Nn:s("bJG"),OV:s("yH"),qd:s("bYw"),hI:s("bYx"),x9:s("hF"),mb:s("yI"),Wu:s("E_"),_S:s("eU"),ZX:s("nd"),bu:s("e0"),UF:s("yL"),g3:s("ne"),Ev:s("yM"),Qm:s("yN"),yc:s("E3"),B2:s("hG"),Tb:s("yO"),HS:s("uD"),n5:s("E6<@>"),hh:s("bz"),c8:s("bz"),Ro:s("bz<@>"),G2:s("E7"),RY:s("dp"),jH:s("uF"),WE:s("E8"),cZ:s("uH"),ti:s("E9"),Vz:s("Eb"),yE:s("bYJ"),of:s("yS"),Mp:s("by"),FW:s("V"),Ws:s("yT"),Dj:s("bK7"),r:s("uK"),h5:s("Ef"),Xp:s("qS"),Gt:s("Eh"),V:s("he"),M0:s("kz"),jB:s("oS"),s7:s("aj"),bA:s("yW"),u8:s("yX"),EH:s("yY"),KP:s("yZ"),y3:s("nh"),Vi:s("jQ"),xy:s("kA"),nt:s("bV"),Sb:s("jR"),ZR:s("m8"),GP:s("Ei"),ao:s("NZ"),J9:s("O0"),mn:s("O1"),v4:s("Ej"),D_:s("qU"),IU:s("z_"),Qv:s("fD"),Km:s("cz"),MG:s("i7"),d3:s("P"),Iz:s("a4"),A5:s("Ob"),Z5:s("a9z<@>"),NP:s("bA"),ZE:s("Er"),N:s("f"),Vc:s("bKq"),NC:s("oT"),Vh:s("Ex"),Ci:s("uP"),ky:s("Ey"),ry:s("bh"),ou:s("z1"),OK:s("bKv"),kL:s("ct"),WT:s("ct"),FB:s("ct"),u4:s("ct"),rg:s("ct>"),az:s("ct"),Zs:s("ct"),E8:s("ct"),d9:s("ct

    "),hr:s("ct"),kO:s("ct<~>"),ZC:s("oW"),lu:s("oX"),xw:s("z3"),CY:s("qW"),aW:s("EE"),_0:s("Ov"),if:s("bKB"),QX:s("qX"),mr:s("OB"),mi:s("aa7"),ot:s("mb"),hL:s("i8"),qY:s("nk"),jZ:s("bKK"),AS:s("uT"),em:s("J"),ta:s("p_"),ff:s("mc"),ZM:s("z8"),ZF:s("p0>"),Ag:s("p0<@>"),jm:s("hg"),Ax:s("z9"),qb:s("aN"),qe:s("OQ"),g:s("er"),W_:s("OT"),yS:s("jb"),U4:s("bL0"),f3:s("dS"),bq:s("zg"),zW:s("e1"),kS:s("hi"),Ns:s("hi"),Ni:s("aO"),qU:s("aO"),Y:s("aO"),n:s("kE"),ns:s("r0"),e2:s("fh"),w7:s("aYZ"),rd:s("EY"),Po:s("aZ_"),E:s("df"),F9:s("EZ"),pm:s("F_"),MX:s("r3"),c:s("eB"),gA:s("iD"),ZJ:s("p2"),lQ:s("zi"),G5:s("md"),EI:s("zk"),gU:s("me"),S5:s("eO"),kg:s("F5"),BA:s("uZ"),wR:s("F6"),Xu:s("aaG"),xs:s("bP>"),gz:s("bP"),xc:s("bP"),O:s("bP"),zm:s("bP"),Ll:s("bP"),_b:s("bP"),Am:s("bP"),cz:s("ec>"),Wy:s("ec>"),rh:s("ec>"),Lm:s("ec"),kT:s("ec"),uh:s("ec

    "),gX:s("ec"),N8:s("ec"),XR:s("ec"),GY:s("k_"),mv:s("v_"),Dg:s("r4"),rS:s("k0"),X3:s("r5"),gD:s("be"),Tv:s("es"),iC:s("es"),FI:s("es"),ZK:s("es"),n0:s("es"),Ri:s("es"),ow:s("es"),kE:s("es<~(B,cz?)>"),r7:s("es<~(jC)>"),Pi:s("p4"),l7:s("d"),jA:s("bk9"),a7:s("Fb"),iM:s("Fc"),X5:s("hj"),Uh:s("ay"),BJ:s("v0"),oL:s("p5"),aP:s("p6"),L1:s("Pt"),Mx:s("ls"),jx:s("ls"),Qh:s("ls"),vh:s("ls<@>"),pA:s("ls"),h8:s("aD"),L4:s("aD"),xt:s("aD"),nj:s("aD>"),fw:s("aD>"),rK:s("aD>"),rM:s("aD"),Iy:s("aD"),FM:s("aD"),gI:s("aD"),VY:s("aD

    "),zh:s("aD<@>"),yB:s("aD"),It:s("aD"),Eq:s("aD?>"),bI:s("aD"),oe:s("aD"),F0:s("aD"),gR:s("aD<~>"),IS:s("Ft"),BY:s("bM3"),fh:s("Fu"),ZW:s("zy"),B6:s("Q1"),Ie:s("v6"),A3:s("iH"),Wb:s("pg"),EG:s("zz"),bY:s("Qr"),TC:s("zB"),uC:s("ia"),rZ:s("rc"),Fb:s("rc"),UB:s("rc"),UJ:s("aff"),qr:s("hL"),VA:s("re"),j7:s("zD>"),Pg:s("QC"),l3:s("QL"),rE:s("QO"),Wt:s("zE"),H_:s("ml>>"),rR:s("jd"),_F:s("jd"),fg:s("jd"),pz:s("bZF"),Eh:s("QZ"),fk:s("FT"),Jp:s("R3"),Jc:s("FW"),Lv:s("a8"),Ic:s("a8"),qc:s("a8"),wM:s("a8>"),mg:s("a8>"),Jk:s("a8>"),A6:s("a8"),Gl:s("a8"),EW:s("a8"),Qy:s("a8"),tq:s("a8

    "),LR:s("a8<@>"),wJ:s("a8"),gg:s("a8"),LY:s("a8"),ma:s("a8?>"),st:s("a8"),Kw:s("a8"),X6:s("a8"),b:s("a8<~>"),cK:s("FY"),Qu:s("rj"),U3:s("G1"),UR:s("jf"),R9:s("vb"),Fy:s("vc"),WD:s("Ro"),Ze:s("Rp"),tM:s("Rq"),Nr:s("Rr"),pp:s("k1"),oc:s("RA"),YL:s("zI"),cB:s("nE"),Sx:s("ve"),pt:s("Gb"),Gk:s("RK"),PJ:s("Gc"),yI:s("bc"),h2:s("bc"),bN:s("bc"),Lf:s("bc

    "),pj:s("bc"),Sq:s("bc"),U:s("bc"),gO:s("bc"),Y6:s("bc"),ol:s("bc"),p2:s("ib"),Ks:s("ib>>"),lg:s("ib"),Md:s("ib"),Nb:s("ib"),Fe:s("RW"),xg:s("ail"),kY:s("zM"),Tp:s("vi"),C2:s("vj<@,lI>"),pi:s("pi"),Vl:s("vk"),KJ:s("rk"),eU:s("Go"),gQ:s("vl"),sZ:s("Si"),Sc:s("aiZ"),y2:s("zN"),iT:s("Gs"),gT:s("Ss"),c_:s("Su"),h7:s("pk"),zP:s("fX"),ri:s("SC"),l0:s("zQ"),Lj:s("vp"),zd:s("SI"),SN:s("SM"),Tq:s("Gy"),kb:s("Gz"),xL:s("GA"),im:s("vq"),Ap:s("zR"),Ez:s("ic"),Pu:s("T0"),yd:s("T6"),jF:s("T9"),kV:s("alD"),oY:s("vs"),n7:s("cW>"),Dw:s("cW>"),gK:s("cW>"),kA:s("cW"),o9:s("cW"),Kr:s("cW

    "),hp:s("cW"),Om:s("cW"),ar:s("cW"),w4:s("rs"),S8:s("TB"),r2:s("nK"),Hb:s("nK"),c6:s("zX"),FH:s("nL"),Ua:s("k4"),Sy:s("k4>"),bm:s("k4"),oq:s("TN"),HE:s("GX"),iN:s("GY"),f2:s("TZ"),i9:s("H0"),tH:s("bNl"),yW:s("U4"),Wp:s("Uf"),vF:s("Uk"),_l:s("Up"),ps:s("Uq"),DH:s("anX"),Bi:s("ao0"),iE:s("UB"),Lz:s("UC"),Bh:s("UD"),ya:s("UE"),mW:s("UF"),P1:s("UG"),T9:s("UH"),Za:s("UI"),Sz:s("UJ"),MZ:s("UK"),yl:s("UL"),Eg:s("ry"),KR:s("UM"),xp:s("UN"),rH:s("UO"),_V:s("UP"),X0:s("UQ"),hb:s("UR"),Yj:s("US"),jY:s("UT"),y:s("p"),i:s("Y"),z:s("@"),C_:s("@(B)"),Hg:s("@(B,cz)"),S:s("m"),Lw:s("0&*"),ub:s("B*"),ly:s("kO?"),aO:s("C<~>?"),Wr:s("hr?"),tX:s("asB?"),m2:s("HV?"),ab:s("kR?"),ZU:s("pE?"),Vx:s("ei?"),sa:s("iR?"),eJ:s("w_?"),oI:s("b9?"),CD:s("dK?"),OC:s("t5?"),Cq:s("lE?"),FR:s("pH?"),ep:s("a5?"),If:s("kc?"),cu:s("kT?"),eQ:s("AQ?"),MB:s("bhU?"),L5:s("aw1?"),JG:s("AT?"),cW:s("aw3?"),eG:s("AU?"),GB:s("aw4?"),EM:s("AW?"),VC:s("tc?"),MH:s("M?"),YJ:s("dk?"),Z7:s("dl?"),V2:s("lG?"),je:s("Jg?"),y9:s("hw?"),CE:s("el?"),fC:s("cC?"),pc:s("eI?"),QS:s("wC?"),Dv:s("bG?"),fd:s("JD?"),TK:s("of?"),fW:s("tx?"),bZ:s("iW?"),pk:s("eJ?"),RC:s("JY?"),U5:s("hX?"),ZY:s("U?"),eS:s("a1p?"),_I:s("x2?"),Wm:s("qd?"),GK:s("mO?"),lF:s("cX?"),ET:s("tO?"),Pr:s("tP?"),Ef:s("l6?"),E5:s("iq?"),SC:s("ir?"),IL:s("e?"),U_:s("e?"),q6:s("e?"),uS:s("e?"),aQ:s("e?"),Xv:s("e?"),kh:s("e?"),s5:s("e?"),FF:s("e?"),Xb:s("e?"),EZ:s("e?"),kc:s("e<@>?"),z7:s("e?"),wh:s("e?"),x5:s("d6?"),oD:s("n?"),qA:s("kp?"),l8:s("a3?"),O0:s("L5?"),NG:s("iu?"),aU:s("kq?"),Qq:s("lO?"),Em:s("a6?"),YH:s("a6?"),nA:s("a6?"),Xx:s("a6<@,@>?"),Uz:s("a6>?"),J1:s("a6?"),iD:s("bS?"),Y8:s("dX?"),WV:s("dY?"),X:s("B?"),Ff:s("aKQ?"),dJ:s("oC?"),Zr:s("aKS?"),KX:s("fS?"),Zl:s("n1?"),xO:s("xZ?"),MT:s("M9?"),Cp:s("Ma?"),p7:s("Mb?"),Gr:s("Mc?"),BN:s("Md?"),zN:s("Mf?"),mc:s("fo?"),e_:s("Mg?"),yZ:s("eT?"),dr:s("fc?"),cq:s("+first,second(a5?,a5?)?"),aA:s("N?"),CA:s("yp?"),p3:s("c0?"),NT:s("uv?"),ym:s("qK?"),IT:s("d7?"),T2:s("qL>?"),oW:s("qN?"),_N:s("DW?"),Ej:s("e0?"),M9:s("bz?"),Ma:s("aSH?"),uv:s("NC?"),Zi:s("dp?"),TZ:s("uG?"),pg:s("hH?"),tW:s("V?"),MR:s("he?"),eX:s("yV?"),FO:s("aj?"),QH:s("m8?"),lE:s("i7?"),Dt:s("bA?"),v:s("f?"),aE:s("Ex?"),zn:s("kC?"),p8:s("J?"),Dh:s("p_?"),YX:s("hg?"),dN:s("OQ?"),mk:s("er?"),qf:s("aan?"),zV:s("zg?"),ir:s("aO?"),n6:s("df?"),MQ:s("EZ?"),YO:s("eO?"),rC:s("lq?"),Wn:s("no?"),Xk:s("jf?"),OZ:s("dT?"),_C:s("dT>>?"),yq:s("dT>?"),UO:s("dT?>>?"),gN:s("dT?>>?"),qP:s("dT?>>?"),I4:s("dT?>>?"),dY:s("dT>?"),m4:s("dT?>>?"),UT:s("dT>?"),Nj:s("dT?"),Df:s("dT?"),rY:s("dT?"),pL:s("dT?"),wB:s("dT?"),DJ:s("dT?"),gJ:s("vj<@,lI>?"),Aq:s("Gn?"),av:s("Sk?"),x6:s("vp?"),gW:s("vq?"),IA:s("ic?"),JI:s("amC<@>?"),u:s("p?"),PM:s("Y?"),bo:s("m?"),Nw:s("~()?"),Jy:s("d9"),H:s("~"),Q:s("~()"),Vu:s("~(bk)"),Su:s("~(tA)"),ph:s("~(e)"),mX:s("~(B)"),hK:s("~(B,cz)"),KT:s("~(le)"),Ld:s("~(c3)"),iS:s("~(n7)"),qO:s("~(Y)"),HT:s("~(B?)")}})();(function constants(){var s=hunkHelpers.makeConstList +B.q0=A.vY.prototype +B.rt=A.wi.prototype +B.rB=A.wo.prototype +B.mv=A.Jn.prototype +B.t2=A.JK.prototype +B.mZ=A.tI.prototype +B.tK=A.Kn.prototype +B.tL=A.xe.prototype +B.Vi=J.Cb.prototype +B.b=J.G.prototype +B.b0=J.Kz.prototype +B.f=J.Cg.prototype +B.Vx=J.Ch.prototype +B.e=J.tT.prototype +B.c=J.qi.prototype +B.VE=J.on.prototype +B.VF=J.j.prototype +B.VW=A.KP.prototype +B.nW=A.xO.prototype +B.kw=A.LA.prototype +B.hN=A.LB.prototype +B.hO=A.LC.prototype +B.nX=A.LD.prototype +B.L=A.xP.prototype +B.hP=A.LQ.prototype +B.J0=J.a6m.prototype +B.acp=A.Nf.prototype +B.Kn=A.Oa.prototype +B.Kv=A.Oo.prototype +B.ph=J.p2.prototype +B.alz=A.Fa.prototype +B.pj=A.v0.prototype +B.Lr=new A.Wt(null) +B.aoX=new A.arf(0,"unknown") +B.Ls=new A.ig(0,0) +B.pM=new A.ig(0,1) +B.pN=new A.ig(0,-1) +B.pO=new A.ig(1,0) +B.Lt=new A.ig(1,-1) +B.d8=new A.ig(-1,0) +B.Lu=new A.ig(-1,1) +B.bs=new A.ig(-1,-1) +B.X=new A.hp(0,0) +B.ix=new A.hp(0,1) +B.eN=new A.hp(0,-1) +B.dn=new A.hp(1,0) +B.iy=new A.hp(-1,0) +B.eO=new A.hp(-1,-1) +B.dp=new A.WC(null) +B.pP=new A.WE(0,"stretch") +B.lK=new A.WE(1,"glow") +B.z=new A.WH(0,"normal") +B.Lv=new A.WH(1,"preserve") +B.fU=new A.WI(0,"forward") +B.iz=new A.WI(1,"reverse") +B.Q=new A.nV(0,"dismissed") +B.aY=new A.nV(1,"forward") +B.aZ=new A.nV(2,"reverse") +B.a5=new A.nV(3,"completed") +B.Lw=new A.Aj(null,null,null,null,null,null,null,null,null,null,null,null,null,null,null) +B.pQ=new A.HN(0,"exit") +B.pR=new A.HN(1,"cancel") +B.iA=new A.nW(0,"detached") +B.lL=new A.nW(1,"resumed") +B.pS=new A.nW(2,"inactive") +B.pT=new A.nW(3,"hidden") +B.lM=new A.nW(4,"paused") +B.pU=new A.WW(null) +B.Lx=new A.WX(null) +B.Ly=new A.X0(!1,127) +B.pV=new A.X1(127) +B.lN=new A.HQ(0,"polite") +B.pW=new A.X2(0,"polite") +B.lO=new A.HQ(1,"assertive") +B.pX=new A.X2(1,"assertive") +B.Lz=new A.Xe(null) +B.dY=new A.hr(0,"none") +B.iB=new A.hr(1,"basic") +B.bU=A.a(s([]),t.s) +B.q=new A.Ou(1,"downstream") +B.id=new A.i8(-1,-1,B.q,!1,-1,-1) +B.c0=new A.d8(-1,-1) +B.KD=new A.eN("",B.id,B.c0) +B.pY=new A.HU(!1,"",B.bU,B.KD,null) +B.pZ=new A.asv(0,"disabled") +B.af=new A.Aq(0,"up") +B.eP=new A.Aq(1,"right") +B.ag=new A.Aq(2,"down") +B.dq=new A.Aq(3,"left") +B.aw=new A.Xg(0,"horizontal") +B.R=new A.Xg(1,"vertical") +B.LA=new A.Xj(null) +B.LB=new A.Xh(B.LA,null,null,null) +B.LC=new A.Xn(null) +B.LD=new A.HW(null,null,null,null,null,null,null,null) +B.bj=new A.aVS() +B.lP=new A.t_("flutter/accessibility",B.bj,t.Al) +B.dZ=new A.aGc() +B.LE=new A.t_("flutter/keyevent",B.dZ,t.Al) +B.lZ=new A.aWz() +B.LF=new A.t_("flutter/lifecycle",B.lZ,A.ah("t_")) +B.LG=new A.t_("flutter/system",B.dZ,t.Al) +B.jd=new A.BO(2,"previous") +B.LH=new A.vX(null,B.jd,0,0) +B.LI=new A.t0(13,"modulate") +B.q_=new A.t0(20,"hardLight") +B.LJ=new A.t0(26,"saturation") +B.eQ=new A.t0(3,"srcOver") +B.iC=new A.t0(5,"srcIn") +B.LK=new A.t0(9,"srcATop") +B.a2=new A.atu(0,"normal") +B.d3=new A.bq(16,16) +B.I=new A.bq(0,0) +B.LL=new A.vZ(B.d3,B.I,B.d3,B.I) +B.LM=new A.vZ(B.I,B.d3,B.I,B.d3) +B.aJ=new A.dg(B.I,B.I,B.I,B.I) +B.dT=new A.bq(4,4) +B.q4=new A.dg(B.dT,B.dT,B.I,B.I) +B.q3=new A.dg(B.d3,B.d3,B.I,B.I) +B.dS=new A.bq(2,2) +B.iD=new A.dg(B.dS,B.dS,B.dS,B.dS) +B.fV=new A.dg(B.dT,B.dT,B.dT,B.dT) +B.kO=new A.bq(7,7) +B.q1=new A.dg(B.kO,B.kO,B.kO,B.kO) +B.dU=new A.bq(8,8) +B.bh=new A.dg(B.dU,B.dU,B.dU,B.dU) +B.kK=new A.bq(12,12) +B.q2=new A.dg(B.kK,B.kK,B.kK,B.kK) +B.cO=new A.dg(B.d3,B.d3,B.d3,B.d3) +B.kL=new A.bq(32,32) +B.LR=new A.dg(B.kL,B.kL,B.kL,B.kL) +B.kM=new A.bq(40,40) +B.q5=new A.dg(B.kM,B.kM,B.kM,B.kM) +B.kN=new A.bq(60,50) +B.LN=new A.dg(B.kN,B.kN,B.kN,B.kN) +B.Qg=new A.M(4293454056) +B.M=new A.XD(1,"solid") +B.LS=new A.b9(B.Qg,1,B.M,-1) +B.v=new A.M(4278190080) +B.eR=new A.XD(0,"none") +B.t=new A.b9(B.v,0,B.eR,-1) +B.u=new A.M(0) +B.LU=new A.b9(B.u,0,B.M,-1) +B.lR=new A.b9(B.u,1,B.M,-1) +B.lS=new A.b9(B.u,2,B.M,-1) +B.lQ=new A.b9(B.v,1,B.M,-1) +B.q6=new A.ei(B.lR,B.t,B.lR,B.t) +B.lT=new A.ei(B.t,B.t,B.t,B.t) +B.Pg=new A.M(1291845632) +B.LV=new A.b9(B.Pg,0,B.M,-1) +B.q7=new A.ei(B.t,B.t,B.LV,B.t) +B.LX=new A.I5(null,null,null,null,null,null,null) +B.LY=new A.I6(null,null,null,null,null,null,null,null,null,null,null,null,null,null) +B.lU=new A.w0(null,null,null,null,null,null,null,null,null,null,null,null,null) +B.LZ=new A.w0(B.u,null,0,null,null,null,null,null,null,null,null,null,null) +B.acq=new A.a83(0,"normal") +B.of=new A.a6K(null) +B.M_=new A.I8(B.acq,B.of) +B.Jm=new A.a83(1,"fast") +B.M0=new A.I8(B.Jm,B.of) +B.q8=new A.aL(40,40,40,40) +B.q9=new A.aL(56,56,56,56) +B.M1=new A.aL(59,59,39,39) +B.qa=new A.aL(96,96,96,96) +B.iE=new A.aL(1/0,1/0,1/0,1/0) +B.M3=new A.aL(0,1/0,48,48) +B.M2=new A.aL(0,1/0,56,56) +B.M4=new A.aL(112,280,0,1/0) +B.qb=new A.aL(0,640,0,1/0) +B.eS=new A.aL(0,1/0,0,1/0) +B.M8=new A.aL(50,1/0,0,1/0) +B.M5=new A.aL(280,1/0,0,1/0) +B.M7=new A.aL(36,1/0,36,1/0) +B.M6=new A.aL(0,1/0,48,1/0) +B.qc=new A.aL(48,1/0,48,1/0) +B.Pf=new A.M(1006632960) +B.Fl=new A.l(0,4) +B.Mo=new A.c8(0.5,B.a2,B.Pf,B.Fl,10) +B.a3X=A.a(s([B.Mo]),t.G) +B.aE=new A.XK(0,"rectangle") +B.M9=new A.dJ(null,null,null,B.bh,B.a3X,null,B.aE) +B.hb=new A.M(4290624957) +B.LT=new A.b9(B.hb,0,B.M,-1) +B.LW=new A.ei(B.t,B.t,B.LT,B.t) +B.Ma=new A.dJ(null,null,B.LW,null,null,null,B.aE) +B.Mb=new A.w3(1,"contain") +B.Mc=new A.w3(2,"cover") +B.Md=new A.w3(3,"fitWidth") +B.Me=new A.w3(4,"fitHeight") +B.qd=new A.w3(6,"scaleDown") +B.c3=new A.XG(0,"tight") +B.qe=new A.XG(5,"strut") +B.lV=new A.XK(1,"circle") +B.bK=new A.aty(0,"tight") +B.am=new A.Ay(0,"dark") +B.aB=new A.Ay(1,"light") +B.MP=new A.XM(null) +B.dr=new A.Ic(0,"blink") +B.ah=new A.Ic(1,"webkit") +B.cP=new A.Ic(2,"firefox") +B.MQ=new A.au5(1,"padded") +B.MR=new A.Id(null,null,null,null,null,null,null,null,null) +B.MS=new A.au6(0,"normal") +B.OE=new A.QQ(A.ah("QQ>")) +B.MT=new A.AC(B.OE) +B.Nb=new A.cs(A.bSn(),A.ah("cs")) +B.N_=new A.cs(A.vD(),A.ah("cs")) +B.MW=new A.cs(A.vD(),A.ah("cs")) +B.N1=new A.cs(A.vD(),A.ah("cs")) +B.MY=new A.cs(A.vD(),A.ah("cs")) +B.MX=new A.cs(A.vD(),A.ah("cs")) +B.fW=new A.cs(A.vD(),A.ah("cs")) +B.N0=new A.cs(A.vD(),A.ah("cs")) +B.MZ=new A.cs(A.vD(),A.ah("cs")) +B.N2=new A.cs(A.vD(),A.ah("cs")) +B.MV=new A.cs(A.bVB(),A.ah("cs")) +B.N9=new A.cs(A.W5(),A.ah("cs")) +B.N4=new A.cs(A.W5(),A.ah("cs")) +B.N5=new A.cs(A.W5(),A.ah("cs")) +B.N7=new A.cs(A.W5(),A.ah("cs")) +B.N6=new A.cs(A.W5(),A.ah("cs")) +B.N8=new A.cs(A.W5(),A.ah("cs")) +B.N3=new A.cs(A.bR_(),A.ah("cs")) +B.MU=new A.cs(A.bR1(),A.ah("cs")) +B.Na=new A.cs(A.bTN(),A.ah("cs")) +B.iG=new A.cs(A.bx0(),A.ah("cs")) +B.iF=new A.cs(A.bx0(),A.ah("cs")) +B.Nc=new A.Ad() +B.Nd=new A.arg() +B.qf=new A.Hv(A.ah("Hv")) +B.Nf=new A.Al() +B.c4=new A.X_() +B.Ng=new A.At() +B.Nh=new A.Xq() +B.qg=new A.Xp() +B.Ni=new A.Xt() +B.Nj=new A.Xv() +B.lW=new A.Az() +B.Nk=new A.AA() +B.qh=new A.au0() +B.Nl=new A.XZ() +B.Nm=new A.Y_() +B.Nn=new A.Y0() +B.No=new A.Y2() +B.Np=new A.awf() +B.Nq=new A.axd() +B.iH=new A.a_T(A.ah("a_T<0&>")) +B.a0=new A.a_R() +B.Nr=new A.a_S() +B.Ns=new A.a_U() +B.Nt=new A.a_Y(A.ah("a_Y<@>")) +B.Nu=new A.a_Z() +B.V=new A.Jj() +B.Nv=new A.aym() +B.Nw=new A.a0j() +B.lX=new A.Bm() +B.Nx=new A.az1() +B.Ny=new A.Bs() +B.Nz=new A.aA5() +B.ql=new A.jy(A.ah("jy")) +B.NA=new A.jy(A.ah("jy")) +B.NB=new A.jy(A.ah("jy")) +B.qm=new A.a0w(A.ah("a0w<0&>")) +B.qn=new A.a0z() +B.bi=new A.a0z() +B.NC=new A.aAD() +B.ND=new A.a0Z() +B.iI=new A.a12() +B.d=new A.aCO() +B.NE=new A.BR() +B.aoY=new A.a1m() +B.NF=new A.a1n() +B.NG=new A.aDP() +B.NH=new A.aEd() +B.NI=new A.C1() +B.NJ=new A.Ko() +B.t7=new A.JU(1,"auto") +B.NK=new A.Kw() +B.NL=new A.a27() +B.aK=new A.aGb() +B.bL=new A.aGd() +B.fX=new A.aGe() +B.at=new A.a2g() +B.cu=new A.a2s() +B.NM=new A.Ct() +B.NN=new A.a2W() +B.NO=new A.a2Y() +B.NP=new A.a2Z() +B.NQ=new A.a3_() +B.NR=new A.a36() +B.NS=new A.a37() +B.NT=new A.aIy() +B.lY=new A.CP() +B.NU=new A.a5h() +B.NV=new A.aKx() +B.NW=new A.aKz() +B.qp=new A.aKB() +B.NX=new A.aKN() +B.iJ=new A.B() +B.NY=new A.a5J() +B.bT=new A.fV(0,"android") +B.bo=new A.fV(2,"iOS") +B.dj=new A.fV(4,"macOS") +B.qA=new A.acM() +B.qj=new A.a_A() +B.kp=new A.dm([B.bT,B.qA,B.bo,B.qj,B.dj,B.qj],A.ah("dm")) +B.NZ=new A.a5P() +B.O_=new A.a64() +B.qq=new A.M2() +B.aG=new A.m3(4,"keyboard") +B.qr=new A.ug() +B.O0=new A.aLx() +B.aoZ=new A.aLU() +B.O1=new A.aM4() +B.O3=new A.a6y() +B.O4=new A.a6G() +B.O5=new A.Dq() +B.O6=new A.Dy() +B.O7=new A.a7_() +B.qt=new A.us() +B.O8=new A.aPT() +B.O9=new A.aPU() +B.Oa=new A.aPV() +B.Ob=new A.aPW() +B.Oc=new A.a82() +B.Od=new A.aRz() +B.qu=new A.qQ() +B.Oe=new A.aSg() +B.a=new A.aSh() +B.Of=new A.E3() +B.qv=new A.E7() +B.Og=new A.E9() +B.Oh=new A.a95() +B.Oi=new A.a9c() +B.Oj=new A.a9g() +B.Ok=new A.a9k() +B.Ol=new A.a9l() +B.ds=new A.aVR() +B.eT=new A.aVV() +B.bM=new A.aVW() +B.ap_=new A.a9L() +B.Om=new A.aXq() +B.On=new A.aXw() +B.Oo=new A.aXx() +B.Op=new A.aXy() +B.Oq=new A.aXC() +B.Or=new A.aXE() +B.Os=new A.aXF() +B.Ot=new A.aXG() +B.Ou=new A.aah() +B.qw=new A.uU() +B.qx=new A.uW() +B.Ov=new A.F5() +B.m_=new A.F6() +B.Ow=new A.aZD() +B.O=new A.aaL() +B.cv=new A.aaM() +B.qy=new A.aaN() +B.Y=new A.I(0,0,0,0) +B.ij=new A.aaW(0,0,0,0) +B.a1P=A.a(s([]),A.ah("G")) +B.qz=new A.aaV() +B.cn={} +B.fl=new A.a2(B.cn,[],t.w) +B.ap0=new A.aZV() +B.eU=new A.ad3() +B.bN=new A.ad4() +B.Oy=new A.b1w() +B.Oz=new A.Qd(A.ah("Qd

    ")) +B.OA=new A.aeK() +B.dt=new A.af_() +B.OB=new A.b2u() +B.OC=new A.b2y() +B.ap1=new A.Qw() +B.cw=new A.af8() +B.fY=new A.b2I() +B.OD=new A.b2T() +B.qB=new A.b39() +B.qC=new A.b3a() +B.iK=new A.b5h() +B.OG=new A.b5i() +B.fZ=new A.b5H() +B.Z=new A.RG() +B.OH=new A.ahB() +B.OI=new A.ai1() +B.bk=new A.b7g() +B.OK=new A.b7i() +B.h_=new A.b85() +B.OL=new A.b8J() +B.OM=new A.b8L() +B.qD=new A.b9x() +B.b7=new A.akT() +B.ON=new A.b9V() +B.OO=new A.alq() +B.OP=new A.anY() +B.h0=new A.XQ(0,"pixel") +B.OR=new A.XQ(1,"viewport") +B.m0=new A.AD(0,"forceCache") +B.qE=new A.AD(1,"refreshForceCache") +B.qF=new A.AD(2,"noCache") +B.OS=new A.AD(4,"request") +B.OT=new A.w5(0,"low") +B.qG=new A.w5(1,"normal") +B.OU=new A.w5(2,"high") +B.OY=new A.AF(null,null,null,null,null,null,null) +B.OZ=new A.XY(null) +B.e_=new A.pM(null,null) +B.qH=new A.kT(0,"source") +B.P1=new A.AK(null,null,null,null,null,null,null,null,null) +B.P2=new A.AN(null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null) +B.e0=new A.h3(0,B.t) +B.P5=new A.IB(B.of) +B.qI=new A.IB(null) +B.acD=new A.Nu(2,"clear") +B.P6=new A.IC(B.acD) +B.P7=new A.Yn(0,"difference") +B.eV=new A.Yn(1,"intersect") +B.l=new A.AR(0,"none") +B.E=new A.AR(1,"hardEdge") +B.bc=new A.AR(2,"antiAlias") +B.eW=new A.AR(3,"antiAliasWithSaveLayer") +B.m1=new A.AX(0,"pasteable") +B.h1=new A.AX(1,"unknown") +B.P8=new A.AX(2,"notPasteable") +B.P9=new A.Yv(null) +B.Pa=new A.Yu(B.P9,null,null,null) +B.ap2=new A.awk(0,"mode") +B.md=new A.M(4284960932) +B.n=new A.M(4294967295) +B.re=new A.M(4293582335) +B.PE=new A.M(4280352861) +B.PV=new A.M(4284636017) +B.rd=new A.M(4293451512) +B.PD=new A.M(4280097067) +B.Q2=new A.M(4286403168) +B.ri=new A.M(4294957284) +B.PI=new A.M(4281405725) +B.Q9=new A.M(4289930782) +B.rg=new A.M(4294565596) +B.PN=new A.M(4282453515) +B.rk=new A.M(4294966270) +B.iQ=new A.M(4280032031) +B.Qf=new A.M(4293386476) +B.mb=new A.M(4282991951) +B.Q0=new A.M(4286149758) +B.ra=new A.M(4291478736) +B.r4=new A.M(4281413683) +B.Qn=new A.M(4294242292) +B.mf=new A.M(4291869951) +B.Pb=new A.tf(B.aB,B.md,B.n,B.re,B.PE,B.PV,B.n,B.rd,B.PD,B.Q2,B.n,B.ri,B.PI,B.Q9,B.n,B.rg,B.PN,B.rk,B.iQ,B.rk,B.iQ,B.Qf,B.mb,B.Q0,B.ra,B.v,B.v,B.r4,B.Qn,B.mf,B.md) +B.iU=new A.M(4289644287) +B.qW=new A.M(4278201963) +B.qZ=new A.M(4279452815) +B.iV=new A.M(4292403967) +B.Q1=new A.M(4286241911) +B.Pw=new A.M(4278204681) +B.Px=new A.M(4278211346) +B.r6=new A.M(4288018832) +B.Qr=new A.M(4294948011) +B.PZ=new A.M(4285071365) +B.Q6=new A.M(4287823882) +B.rj=new A.M(4294957782) +B.h6=new A.M(4279966495) +B.mg=new A.M(4293124838) +B.ma=new A.M(4282664783) +B.r9=new A.M(4291151568) +B.Q5=new A.M(4287533209) +B.iS=new A.M(4281556136) +B.Pc=new A.tf(B.am,B.iU,B.qW,B.qZ,B.iV,B.iU,B.qW,B.qZ,B.iV,B.Q1,B.Pw,B.Px,B.r6,B.Qr,B.PZ,B.Q6,B.rj,B.h6,B.mg,B.h6,B.mg,B.ma,B.r9,B.Q5,B.ma,B.v,B.v,B.mg,B.h6,B.iS,B.iU) +B.qV=new A.M(4278196802) +B.Py=new A.M(4278218267) +B.Pv=new A.M(4278198787) +B.Qa=new A.M(4290386458) +B.PM=new A.M(4282449922) +B.rh=new A.M(4294900735) +B.Qe=new A.M(4292993772) +B.Q_=new A.M(4285888384) +B.PH=new A.M(4281348148) +B.Qm=new A.M(4294111476) +B.Pd=new A.tf(B.aB,B.iS,B.n,B.iV,B.qV,B.iS,B.n,B.iV,B.qV,B.Py,B.n,B.r6,B.Pv,B.Qa,B.n,B.rj,B.PM,B.rh,B.h6,B.rh,B.h6,B.Qe,B.ma,B.Q_,B.r9,B.v,B.v,B.PH,B.Qm,B.iU,B.iS) +B.PK=new A.M(4281867890) +B.PT=new A.M(4283381643) +B.Qc=new A.M(4291609308) +B.PJ=new A.M(4281544001) +B.PR=new A.M(4283057240) +B.Qk=new A.M(4293900488) +B.PQ=new A.M(4282983730) +B.PW=new A.M(4284693320) +B.Ql=new A.M(4294097077) +B.PU=new A.M(4284486672) +B.Q4=new A.M(4287372568) +B.mh=new A.M(4293321189) +B.Q7=new A.M(4287860633) +B.Pe=new A.tf(B.am,B.mf,B.PK,B.PT,B.re,B.Qc,B.PJ,B.PR,B.rd,B.Qk,B.PQ,B.PW,B.ri,B.Ql,B.PU,B.Q4,B.rg,B.iQ,B.mh,B.iQ,B.mh,B.mb,B.ra,B.Q7,B.mb,B.v,B.v,B.mh,B.r4,B.md,B.mf) +B.qK=new A.M(1087163596) +B.Ph=new A.M(1308622847) +B.Pi=new A.M(134217728) +B.Pj=new A.M(1375731712) +B.qO=new A.M(144613022) +B.Pk=new A.M(1612257561) +B.Pl=new A.M(1627389952) +B.Pm=new A.M(1660944383) +B.qR=new A.M(16777215) +B.qS=new A.M(167772160) +B.m3=new A.M(1723645116) +B.Pn=new A.M(1724434632) +B.iL=new A.M(1929379840) +B.Po=new A.M(2155905152) +B.a6=new A.M(2315255808) +B.Pp=new A.M(234881023) +B.Pr=new A.M(2583691263) +B.a7=new A.M(3019898879) +B.a8=new A.M(3707764736) +B.Pt=new A.M(402653184) +B.Pu=new A.M(4039164096) +B.r_=new A.M(4279858898) +B.m6=new A.M(4280191205) +B.r0=new A.M(4280361249) +B.m7=new A.M(4280391411) +B.m8=new A.M(4281348144) +B.d9=new A.M(4282532418) +B.e1=new A.M(4284572001) +B.mc=new A.M(4284809178) +B.me=new A.M(4287679225) +B.r7=new A.M(4288585374) +B.r8=new A.M(4290502395) +B.rb=new A.M(4292030255) +B.iW=new A.M(4292927712) +B.rc=new A.M(4293128957) +B.Qj=new A.M(4293874512) +B.rf=new A.M(4294309365) +B.mi=new A.M(4294638330) +B.Qt=new A.M(436207616) +B.mj=new A.M(452984831) +B.c5=new A.M(520093696) +B.Qu=new A.M(536870911) +B.Qx=new A.M(83886080) +B.Qy=new A.th(B.qO,null,null) +B.rn=new A.wf(0,"cut") +B.ro=new A.wf(1,"copy") +B.rp=new A.wf(2,"paste") +B.rq=new A.wf(3,"selectAll") +B.QA=new A.wf(5,"liveTextInput") +B.rr=new A.o5(!1) +B.rs=new A.o5(!0) +B.QB=new A.B4(null) +B.cS=new A.wh(0,"start") +B.QC=new A.wh(1,"end") +B.w=new A.wh(2,"center") +B.hd=new A.wh(3,"stretch") +B.ml=new A.wh(4,"baseline") +B.ru=new A.f3(0.18,1,0.04,1) +B.QD=new A.f3(0.215,0.61,0.355,1) +B.rv=new A.f3(0.2,0,0,1) +B.rw=new A.f3(0,0,0.2,1) +B.rx=new A.f3(0.31,0,0.56,1) +B.QF=new A.f3(0.05,0,0.133333,0.06) +B.aL=new A.f3(0.25,0.1,0.25,1) +B.bp=new A.f3(0.42,0,1,1) +B.ry=new A.f3(0.67,0.03,0.65,0.09) +B.rz=new A.f3(0.175,0.885,0.32,1.275) +B.QI=new A.f3(0.075,0.82,0.165,1) +B.QJ=new A.f3(0.208333,0.82,0.25,1) +B.a3=new A.f3(0.4,0,0.2,1) +B.eY=new A.f3(0.35,0.91,0.33,0.97) +B.cx=new A.f3(0,0,0.58,1) +B.du=new A.f3(0.42,0,0.58,1) +B.m5=new A.M(4278221567) +B.qY=new A.M(4278879487) +B.qX=new A.M(4278206685) +B.r5=new A.M(4282424575) +B.iY=new A.ek(B.m5,"systemBlue",null,B.m5,B.qY,B.qX,B.r5,B.m5,B.qY,B.qX,B.r5,0) +B.h3=new A.M(268435456) +B.iN=new A.M(285212671) +B.QL=new A.ek(B.h3,null,null,B.h3,B.iN,B.h3,B.iN,B.h3,B.iN,B.h3,B.iN,0) +B.ha=new A.M(4290295992) +B.iT=new A.M(4284177243) +B.QM=new A.ek(B.ha,null,null,B.ha,B.iT,B.ha,B.iT,B.ha,B.iT,B.ha,B.iT,0) +B.mk=new A.M(678983808) +B.qN=new A.M(1366849664) +B.qJ=new A.M(1031305344) +B.qT=new A.M(1719171200) +B.QN=new A.ek(B.mk,"secondarySystemFill",null,B.mk,B.qN,B.qJ,B.qT,B.mk,B.qN,B.qJ,B.qT,0) +B.hc=new A.M(4294375158) +B.iR=new A.M(4280427042) +B.QO=new A.ek(B.hc,null,null,B.hc,B.iR,B.hc,B.iR,B.hc,B.iR,B.hc,B.iR,0) +B.h9=new A.M(4288256409) +B.h8=new A.M(4285887861) +B.dv=new A.ek(B.h9,"inactiveGray",null,B.h9,B.h8,B.h9,B.h8,B.h9,B.h8,B.h9,B.h8,0) +B.h7=new A.M(4282137668) +B.iX=new A.M(4293651445) +B.QP=new A.ek(B.h7,null,null,B.h7,B.iX,B.h7,B.iX,B.h7,B.iX,B.h7,B.iX,0) +B.iZ=new A.ek(B.v,null,null,B.v,B.n,B.v,B.n,B.v,B.n,B.v,B.n,0) +B.h4=new A.M(3003121663) +B.iO=new A.M(2989502512) +B.QQ=new A.ek(B.h4,null,null,B.h4,B.iO,B.h4,B.iO,B.h4,B.iO,B.h4,B.iO,0) +B.m9=new A.M(4281648985) +B.r2=new A.M(4281389400) +B.r1=new A.M(4280584765) +B.r3=new A.M(4281391963) +B.QR=new A.ek(B.m9,"systemGreen",null,B.m9,B.r2,B.r1,B.r3,B.m9,B.r2,B.r1,B.r3,0) +B.eX=new A.M(4292269782) +B.QS=new A.ek(B.eX,null,null,B.eX,B.d9,B.eX,B.d9,B.eX,B.d9,B.eX,B.d9,0) +B.m2=new A.M(1279016003) +B.qM=new A.M(1290529781) +B.qP=new A.M(1614560323) +B.qQ=new A.M(1626074101) +B.QT=new A.ek(B.m2,"placeholderText",null,B.m2,B.qM,B.qP,B.qQ,B.m2,B.qM,B.qP,B.qQ,0) +B.eZ=new A.ek(B.v,"label",null,B.v,B.n,B.v,B.n,B.v,B.n,B.v,B.n,0) +B.m4=new A.M(343176320) +B.rm=new A.M(762738304) +B.rl=new A.M(678720640) +B.qL=new A.M(1115059840) +B.j_=new A.ek(B.m4,"quaternarySystemFill",null,B.m4,B.rm,B.rl,B.qL,B.m4,B.rm,B.rl,B.qL,0) +B.h2=new A.M(1493172224) +B.iM=new A.M(2164260863) +B.QV=new A.ek(B.h2,null,null,B.h2,B.iM,B.h2,B.iM,B.h2,B.iM,B.h2,B.iM,0) +B.KO=new A.m9("Page Not Found",null,null,null,null,null,null,null,null,null) +B.pv=new A.Re(null) +B.QW=new A.IW(null) +B.PC=new A.M(4280032286) +B.PF=new A.M(4280558630) +B.rA=new A.ek(B.n,"systemBackground",null,B.n,B.v,B.n,B.v,B.n,B.PC,B.n,B.PF,0) +B.h5=new A.M(4042914297) +B.iP=new A.M(4028439837) +B.QU=new A.ek(B.h5,null,null,B.h5,B.iP,B.h5,B.iP,B.h5,B.iP,B.h5,B.iP,0) +B.anD=new A.aeR(B.eZ,B.dv) +B.ps=new A.aeT(null,B.iY,B.rA,B.QU,B.rA,!1,B.anD) +B.dw=new A.B8(B.ps,null,null,null,null,null,null,null) +B.QX=new A.ax5(1,"latency") +B.QY=new A.J6(null,null,null,null,null,null,null,null,null,null,null,null,null,null) +B.QZ=new A.J7(null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null) +B.rC=new A.wp(0,"uninitialized") +B.R_=new A.wp(1,"initializingServices") +B.rD=new A.wp(2,"initializedServices") +B.R0=new A.wp(3,"initializingUi") +B.R1=new A.wp(4,"initialized") +B.R2=new A.axc(1,"traversalOrder") +B.da=new A.a_P(0,"background") +B.rE=new A.a_P(1,"foreground") +B.aoy=new A.aiG(null) +B.f_=new A.tm(null,null,null,B.aoy,null) +B.ig=new A.J(!0,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null) +B.aR=new A.EN(0,"clip") +B.aq=new A.aY5(0,"parent") +B.aoz=new A.aiI(null) +B.mm=new A.Bc(B.ig,null,!0,B.aR,null,B.aq,null,B.aoz,null) +B.mn=new A.wr(!1) +B.mo=new A.wr(!0) +B.mp=new A.ws(!1) +B.mq=new A.ws(!0) +B.mr=new A.wt(!1) +B.ms=new A.wt(!0) +B.aS=new A.Jc(3,"info") +B.R7=new A.Jc(5,"hint") +B.R8=new A.Jc(6,"summary") +B.ap3=new A.o8(1,"sparse") +B.R9=new A.o8(10,"shallow") +B.Ra=new A.o8(11,"truncateChildren") +B.Rb=new A.o8(5,"error") +B.Rc=new A.o8(6,"whitespace") +B.mt=new A.o8(7,"flat") +B.e2=new A.o8(8,"singleLine") +B.c6=new A.o8(9,"errorProperty") +B.Rd=new A.Bf(null,null,null,null,null,null,null,null,null,null) +B.Re=new A.to(0,"connectionTimeout") +B.Rf=new A.to(2,"receiveTimeout") +B.Rg=new A.to(4,"badResponse") +B.j0=new A.to(5,"cancel") +B.Rh=new A.to(6,"connectionError") +B.Ri=new A.to(7,"unknown") +B.ts=new A.aM(983690,"MaterialIcons",null,!0) +B.j1=new A.el(B.ts,1,"list") +B.tp=new A.aM(63428,"MaterialIcons",null,!1) +B.db=new A.el(B.tp,0,"grid") +B.mu=new A.el(B.ts,2,"descriptiveList") +B.Rl=new A.Bj(null,null,null,null,null) +B.Rm=new A.Bi(0,null) +B.f0=new A.Bi(null,null) +B.Rn=new A.Bi(0.5,null) +B.mw=new A.a0l(0,"down") +B.C=new A.a0l(1,"start") +B.Rp=new A.a0o(0,"start") +B.rF=new A.a0o(1,"end") +B.Rq=new A.a0q(null) +B.Rr=new A.Bo(null,null,null,null,null,null,null,null) +B.u_=new A.Cs(null) +B.Rs=new A.Js(null,384,B.u_,null) +B.Rt=new A.Jv(null,null,null) +B.F=new A.bk(0) +B.rG=new A.bk(1) +B.b_=new A.bk(1e5) +B.e3=new A.bk(1e6) +B.Ru=new A.bk(1e7) +B.Rv=new A.bk(12e4) +B.Rw=new A.bk(12e5) +B.Rx=new A.bk(12096e8) +B.mx=new A.bk(125e3) +B.Ry=new A.bk(14e4) +B.Rz=new A.bk(15e3) +B.cT=new A.bk(15e4) +B.rH=new A.bk(15e5) +B.RA=new A.bk(16667) +B.dc=new A.bk(167e3) +B.RB=new A.bk(18e4) +B.RC=new A.bk(18e5) +B.RD=new A.bk(195e3) +B.S=new A.bk(2e5) +B.e4=new A.bk(2e6) +B.RE=new A.bk(225e3) +B.RF=new A.bk(246e3) +B.j2=new A.bk(25e4) +B.RG=new A.bk(2592e9) +B.RH=new A.bk(2961926e3) +B.bt=new A.bk(3e5) +B.RI=new A.bk(3e6) +B.rI=new A.bk(35e4) +B.rJ=new A.bk(375e3) +B.RJ=new A.bk(4e4) +B.my=new A.bk(4e5) +B.RK=new A.bk(45e3) +B.e5=new A.bk(5e4) +B.bu=new A.bk(5e5) +B.he=new A.bk(6e5) +B.rK=new A.bk(6e7) +B.rL=new A.bk(6048e8) +B.rM=new A.bk(7e4) +B.f1=new A.bk(75e3) +B.RL=new A.bk(-38e3) +B.RM=new A.eH(12,0,16,0) +B.RN=new A.eH(12,8,16,8) +B.mz=new A.eH(16,0,24,0) +B.RO=new A.eH(4,0,6,0) +B.RP=new A.eH(52,0,0,0) +B.RR=new A.eH(6,0,2,0) +B.RT=new A.eH(8,0,12,0) +B.RU=new A.eH(8,0,4,0) +B.a4=new A.aK(0,0,0,0) +B.ap4=new A.aK(0,0,0,10) +B.RV=new A.aK(0,12,0,12) +B.RW=new A.aK(0,13,0,13) +B.j3=new A.aK(0,16,0,16) +B.RX=new A.aK(0,2,0,2) +B.RY=new A.aK(0,48,0,0) +B.RZ=new A.aK(0,4,0,0) +B.S_=new A.aK(0,4,0,4) +B.cy=new A.aK(0,8,0,8) +B.rN=new A.aK(12,12,12,12) +B.S0=new A.aK(12,20,12,12) +B.S1=new A.aK(12,24,12,16) +B.rO=new A.aK(12,8,12,8) +B.cU=new A.aK(16,0,16,0) +B.S2=new A.aK(16,13,16,13) +B.mA=new A.aK(16,16,16,16) +B.S3=new A.aK(16,18,16,18) +B.j4=new A.aK(16,4,16,4) +B.mB=new A.aK(16,8,16,8) +B.S4=new A.aK(20,0,20,3) +B.dx=new A.aK(20,20,20,20) +B.S5=new A.aK(24,0,24,0) +B.S6=new A.aK(24,0,24,24) +B.S7=new A.aK(40,24,40,24) +B.S8=new A.aK(4,0,0,0) +B.e6=new A.aK(4,0,4,0) +B.e7=new A.aK(4,4,4,4) +B.ap5=new A.aK(4,4,4,5) +B.S9=new A.aK(4,8,4,8) +B.Sa=new A.aK(64,14,64,14) +B.Sb=new A.aK(6,6,6,6) +B.bC=new A.aK(8,0,8,0) +B.Sc=new A.aK(8,16,8,16) +B.Sd=new A.aK(8,2,8,5) +B.Se=new A.aK(8,4,8,4) +B.aT=new A.aK(8,8,8,8) +B.rP=new A.aK(0.5,1,0.5,1) +B.Sf=new A.a0t(null) +B.Sg=new A.JA(null) +B.Sh=new A.JB(0,"noOpinion") +B.Si=new A.JB(1,"enabled") +B.j5=new A.JB(2,"disabled") +B.Sj=new A.a0y(null) +B.ap6=new A.BA(0) +B.Sk=new A.aAL("dart-tools.dev/flutter_android_volume_keydown") +B.mC=new A.wG(!1,!1,!1,!1) +B.mD=new A.wG(!1,!1,!1,!0) +B.rQ=new A.wH(!1,!1,!1,!1) +B.rR=new A.wH(!1,!1,!1,!0) +B.f3=new A.a10(0,"tight") +B.Kj=new A.ez(1/0,1/0,null,null) +B.mE=new A.tt(1,B.f3,B.Kj,null) +B.Sl=new A.tt(2,B.f3,B.Kj,null) +B.Sm=new A.BE(null,null,null,null,null,null,null,null,null,null,null) +B.mF=new A.q_(!1,!1,!1,!1) +B.mG=new A.q_(!1,!1,!1,!0) +B.hf=new A.q_(!0,!1,!1,!1) +B.hg=new A.q_(!0,!1,!1,!0) +B.rS=new A.q0(!1,!1,!1,!1) +B.rT=new A.q0(!1,!1,!1,!0) +B.j6=new A.q0(!0,!1,!1,!1) +B.j7=new A.q0(!0,!1,!1,!0) +B.rU=new A.l_(!1,!1,!1,!1) +B.rV=new A.l_(!1,!1,!1,!0) +B.Sn=new A.l_(!1,!1,!0,!1) +B.So=new A.l_(!1,!1,!0,!0) +B.e8=new A.l_(!0,!1,!1,!1) +B.e9=new A.l_(!0,!1,!1,!0) +B.Sp=new A.l_(!0,!1,!0,!1) +B.Sq=new A.l_(!0,!1,!0,!0) +B.Sr=new A.wI(!1,!1,!1,!1) +B.Ss=new A.wI(!1,!1,!1,!0) +B.rW=new A.wJ(!1,!0,!1,!1) +B.rX=new A.wJ(!1,!0,!1,!0) +B.St=new A.q1(!1,!1,!1,!1) +B.Su=new A.q1(!1,!1,!1,!0) +B.mH=new A.q1(!0,!1,!1,!1) +B.mI=new A.q1(!0,!1,!1,!0) +B.rY=new A.wK(!1,!0,!1,!1) +B.rZ=new A.wK(!1,!0,!1,!0) +B.mJ=new A.tu(!1,!1,!1,!1) +B.mK=new A.tu(!1,!1,!1,!0) +B.j8=new A.tu(!0,!1,!1,!1) +B.j9=new A.tu(!0,!1,!1,!0) +B.mL=new A.q2(!1,!1,!1,!1) +B.mM=new A.q2(!1,!1,!1,!0) +B.t_=new A.q2(!0,!1,!1,!1) +B.t0=new A.q2(!0,!1,!1,!0) +B.Sv=new A.a0O(null) +B.mN=new A.wN(0) +B.mO=new A.wN(1) +B.Sx=new A.wN(2) +B.t1=new A.wN(3) +B.Sy=new A.wN(4) +B.Sz=new A.a0U(1,"Cache") +B.SA=new A.a0U(2,"Online") +B.f2=new A.JL(0) +B.ea=new A.JL(1) +B.ja=new A.JL(2) +B.t3=new A.iV("All nodes must have a parent.","",null) +B.SB=new A.q3(0) +B.SC=new A.q3(2) +B.SD=new A.q3(3) +B.SE=new A.q3(4) +B.t4=new A.q3(6) +B.ap7=new A.a0V(0,"any") +B.mP=new A.a0V(5,"custom") +B.SF=new A.JM(null) +B.jb=new A.wO(0,"none") +B.hh=new A.wO(1,"low") +B.t5=new A.wO(2,"medium") +B.mQ=new A.wO(3,"high") +B.x=new A.V(0,0) +B.SG=new A.a1_(B.x,B.x) +B.f4=new A.a10(1,"loose") +B.SH=new A.BK(null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null) +B.t6=new A.JT(0,"Start") +B.mR=new A.JT(1,"Update") +B.mS=new A.JT(2,"End") +B.mT=new A.JU(0,"never") +B.mU=new A.JU(2,"always") +B.mV=new A.tA(0,"touch") +B.jc=new A.tA(1,"traditional") +B.ap8=new A.aC5(0,"automatic") +B.eb=new A.lH(6,700) +B.apk=new A.b_R(0,"material") +B.P3=new A.o2(4,0,null,null,null,null,null,null,null,null) +B.SL=new A.K1(B.P3,null) +B.dg=new A.u4(2,"center") +B.T=new A.a2T(1,"max") +B.cr=new A.aaQ(1,"down") +B.eF=new A.nj(2,"center") +B.aju=new A.m9("Something went wrong. Tap to try again.",null,null,B.eF,null,null,null,null,null,null) +B.Ki=new A.ez(null,4,null,null) +B.tk=new A.aM(58644,"MaterialIcons",null,!1) +B.Uy=new A.bC(B.tk,16,null,null,null) +B.a2u=A.a(s([B.aju,B.Ki,B.Uy]),t.p) +B.Qz=new A.wb(B.R,B.dg,B.T,B.w,null,B.cr,null,B.a2u,null) +B.SM=new A.K1(B.Qz,null) +B.ta=new A.l3("Invalid method call",null,null) +B.SN=new A.l3("Expected envelope, got nothing",null,null) +B.c7=new A.l3("Message corrupted",null,null) +B.tb=new A.l3("Too many percent/permill",null,null) +B.SO=new A.l3("Invalid envelope",null,null) +B.tc=new A.BO(0,"ltr") +B.td=new A.BO(1,"rtl") +B.mX=new A.BO(3,"sandwich") +B.SP=new A.a1j(null) +B.cz=new A.a1l(0,"accepted") +B.aM=new A.a1l(1,"rejected") +B.te=new A.x_(0,"pointerEvents") +B.f5=new A.x_(1,"browserGestures") +B.dy=new A.K8(0,"ready") +B.je=new A.K8(1,"possible") +B.SQ=new A.K8(2,"defunct") +B.hi=new A.a1A(0,"forward") +B.mY=new A.a1A(1,"reverse") +B.SS=new A.qa(0,"volume_up") +B.ST=new A.qa(1,"volume_down") +B.ec=new A.C_(0,"push") +B.ed=new A.C_(1,"pop") +B.c8=new A.Kg(0,"deferToChild") +B.bv=new A.Kg(1,"opaque") +B.aN=new A.Kg(2,"translucent") +B.SU=new A.qe(null) +B.SV=new A.Kl(61857,"FontAwesomeBrands","font_awesome_flutter",!1) +B.SW=new A.Kl(62354,"FontAwesomeBrands","font_awesome_flutter",!1) +B.tf=new A.Kl(61595,"FontAwesomeBrands","font_awesome_flutter",!1) +B.tg=new A.aM(57490,"MaterialIcons",null,!0) +B.th=new A.aM(57585,"MaterialIcons",null,!1) +B.SY=new A.aM(57706,"MaterialIcons",null,!1) +B.ti=new A.aM(58332,"MaterialIcons",null,!1) +B.T1=new A.aM(58370,"MaterialIcons",null,!1) +B.tj=new A.aM(58372,"MaterialIcons",null,!1) +B.n_=new A.aM(58727,"MaterialIcons",null,!1) +B.T4=new A.aM(59374,"MaterialIcons",null,!1) +B.T5=new A.aM(59377,"MaterialIcons",null,!1) +B.T6=new A.aM(59576,"MaterialIcons",null,!1) +B.T7=new A.aM(59635,"MaterialIcons",null,!1) +B.T8=new A.aM(59648,"MaterialIcons",null,!1) +B.T9=new A.aM(60430,"MaterialIcons",null,!1) +B.Tc=new A.aM(61289,"MaterialIcons",null,!1) +B.Td=new A.aM(61426,"MaterialIcons",null,!1) +B.Te=new A.aM(61495,"MaterialIcons",null,!1) +B.Ti=new A.aM(61927,"MaterialIcons",null,!1) +B.tl=new A.aM(61966,"MaterialIcons",null,!1) +B.Tm=new A.aM(62837,"MaterialIcons",null,!1) +B.Tq=new A.aM(62846,"MaterialIcons",null,!1) +B.Ts=new A.aM(62927,"MaterialIcons",null,!1) +B.Tt=new A.aM(62929,"MaterialIcons",null,!1) +B.Tw=new A.aM(63012,"MaterialIcons",null,!1) +B.n0=new A.aM(63062,"MaterialIcons",null,!1) +B.TD=new A.aM(63116,"MaterialIcons",null,!1) +B.TJ=new A.aM(63199,"MaterialIcons",null,!1) +B.tm=new A.aM(63268,"MaterialIcons",null,!1) +B.TQ=new A.aM(63531,"MaterialIcons",null,!1) +B.TR=new A.aM(63534,"MaterialIcons",null,!1) +B.TT=new A.aM(63570,"MaterialIcons",null,!1) +B.TU=new A.aM(63705,"MaterialIcons",null,!1) +B.tq=new A.aM(983040,"MaterialIcons",null,!1) +B.tr=new A.aM(983357,"MaterialIcons",null,!1) +B.Ug=new A.aM(983633,"MaterialIcons",null,!1) +B.tt=new A.aM(985135,"MaterialIcons",null,!1) +B.Uj=new A.cX(32,null,null,null,null,null,null,null) +B.Uk=new A.cX(null,null,null,null,null,B.a8,null,null) +B.Ul=new A.cX(null,null,null,null,null,B.v,null,null) +B.Um=new A.cX(24,0,400,0,48,B.v,1,null) +B.tu=new A.cX(null,null,null,null,null,B.n,null,null) +B.TA=new A.aM(63047,"MaterialIcons",null,!1) +B.n1=new A.bC(B.TA,null,null,null,null) +B.SZ=new A.aM(57926,"MaterialIcons",null,!1) +B.tv=new A.bC(B.SZ,null,null,null,null) +B.U2=new A.aM(983307,"MaterialIcons",null,!1) +B.Un=new A.bC(B.U2,null,null,null,null) +B.Tr=new A.aM(62883,"MaterialIcons",null,!1) +B.Up=new A.bC(B.Tr,null,null,null,null) +B.tn=new A.aM(63288,"MaterialIcons",null,!1) +B.Uo=new A.bC(B.tn,null,null,null,null) +B.Uq=new A.bC(B.n_,null,null,null,null) +B.Ui=new A.aM(985052,"MaterialIcons",null,!1) +B.Ur=new A.bC(B.Ui,null,null,null,null) +B.To=new A.aM(62840,"MaterialIcons",null,!1) +B.tw=new A.bC(B.To,null,null,null,null) +B.TB=new A.aM(63064,"MaterialIcons",null,!1) +B.Ut=new A.bC(B.TB,null,null,null,null) +B.TF=new A.aM(63128,"MaterialIcons",null,!1) +B.Us=new A.bC(B.TF,null,null,null,null) +B.Uu=new A.bC(B.tf,null,null,null,null) +B.Ta=new A.aM(61054,"MaterialIcons",null,!1) +B.tx=new A.bC(B.Ta,null,null,null,null) +B.Uf=new A.aM(983632,"MaterialIcons",null,!1) +B.ty=new A.bC(B.Uf,null,null,null,null) +B.U0=new A.aM(983273,"MaterialIcons",null,!1) +B.Uw=new A.bC(B.U0,null,null,null,null) +B.tz=new A.bC(B.tr,null,null,null,null) +B.Ua=new A.aM(983443,"MaterialIcons",null,!1) +B.Uv=new A.bC(B.Ua,null,null,null,null) +B.tA=new A.bC(B.tk,null,null,null,null) +B.Tp=new A.aM(62842,"MaterialIcons",null,!0) +B.Ux=new A.bC(B.Tp,null,null,null,null) +B.Tf=new A.aM(61514,"MaterialIcons",null,!1) +B.Uz=new A.bC(B.Tf,null,null,null,null) +B.TN=new A.aM(63351,"MaterialIcons",null,!1) +B.UA=new A.bC(B.TN,null,null,null,null) +B.T3=new A.aM(58608,"MaterialIcons",null,!1) +B.tC=new A.bC(B.T3,null,null,null,null) +B.Tl=new A.aM(62827,"MaterialIcons",null,!1) +B.UC=new A.bC(B.Tl,null,null,null,null) +B.TY=new A.aM(983126,"MaterialIcons",null,!1) +B.UB=new A.bC(B.TY,null,null,null,null) +B.U6=new A.aM(983382,"MaterialIcons",null,!1) +B.tB=new A.bC(B.U6,null,null,null,null) +B.UD=new A.bC(B.th,20,null,null,null) +B.TP=new A.aM(63510,"MaterialIcons",null,!1) +B.tD=new A.bC(B.TP,null,null,null,null) +B.TE=new A.aM(63127,"MaterialIcons",null,!1) +B.UE=new A.bC(B.TE,null,null,null,null) +B.Tu=new A.aM(62956,"MaterialIcons",null,!1) +B.Qi=new A.M(4293848814) +B.a6N=new A.dm([50,B.mi,100,B.rf,200,B.Qi,300,B.iW,350,B.eX,400,B.hb,500,B.r7,600,B.h8,700,B.e1,800,B.d9,850,B.m8,900,B.r0],t.pl) +B.bD=new A.CJ(B.a6N,4288585374) +B.tE=new A.bC(B.Tu,null,B.bD,null,null) +B.Tn=new A.aM(62839,"MaterialIcons",null,!1) +B.tF=new A.bC(B.Tn,null,null,null,null) +B.UH=new A.bC(B.n0,null,null,null,null) +B.TI=new A.aM(63198,"MaterialIcons",null,!1) +B.UF=new A.bC(B.TI,null,null,null,null) +B.TO=new A.aM(63461,"MaterialIcons",null,!0) +B.UG=new A.bC(B.TO,null,null,null,null) +B.TZ=new A.aM(983200,"MaterialIcons",null,!1) +B.UI=new A.bC(B.TZ,null,null,null,null) +B.Uc=new A.aM(983553,"MaterialIcons",null,!1) +B.UK=new A.bC(B.Uc,null,null,null,null) +B.Uh=new A.aM(983640,"MaterialIcons",null,!1) +B.UJ=new A.bC(B.Uh,null,null,null,null) +B.T_=new A.aM(57928,"MaterialIcons",null,!1) +B.UL=new A.bC(B.T_,null,null,null,null) +B.T0=new A.aM(58195,"MaterialIcons",null,!1) +B.UM=new A.bC(B.T0,null,null,null,null) +B.Tk=new A.aM(62820,"MaterialIcons",null,!1) +B.UP=new A.bC(B.Tk,null,null,null,null) +B.Ty=new A.aM(63038,"MaterialIcons",null,!0) +B.UN=new A.bC(B.Ty,null,null,null,null) +B.UO=new A.bC(B.tm,null,null,null,null) +B.TL=new A.aM(63276,"MaterialIcons",null,!1) +B.UQ=new A.bC(B.TL,null,null,null,null) +B.Ue=new A.aM(983621,"MaterialIcons",null,!1) +B.tG=new A.bC(B.Ue,null,null,null,null) +B.Tx=new A.aM(63029,"MaterialIcons",null,!1) +B.UR=new A.bC(B.Tx,null,null,null,null) +B.TV=new A.aM(63708,"MaterialIcons",null,!1) +B.n2=new A.bC(B.TV,null,null,null,null) +B.U7=new A.aM(983396,"MaterialIcons",null,!1) +B.n3=new A.bC(B.U7,null,null,null,null) +B.TW=new A.aM(983120,"MaterialIcons",null,!1) +B.UT=new A.bC(B.TW,null,null,null,null) +B.U1=new A.aM(983292,"MaterialIcons",null,!1) +B.US=new A.bC(B.U1,null,null,null,null) +B.Tj=new A.aM(62775,"MaterialIcons",null,!1) +B.tH=new A.bC(B.Tj,null,null,null,null) +B.T2=new A.aM(58571,"MaterialIcons",null,!1) +B.UU=new A.bC(B.T2,null,null,null,null) +B.TC=new A.aM(63073,"MaterialIcons",null,!1) +B.tI=new A.bC(B.TC,null,null,null,null) +B.Tz=new A.aM(63043,"MaterialIcons",null,!1) +B.UW=new A.bC(B.Tz,null,null,null,null) +B.TK=new A.aM(63227,"MaterialIcons",null,!1) +B.UV=new A.bC(B.TK,null,null,null,null) +B.Ud=new A.aM(983559,"MaterialIcons",null,!1) +B.UX=new A.bC(B.Ud,null,null,null,null) +B.Th=new A.aM(61783,"MaterialIcons",null,!1) +B.UY=new A.bC(B.Th,null,null,null,null) +B.U5=new A.aM(983363,"MaterialIcons",null,!1) +B.UZ=new A.bC(B.U5,null,null,null,null) +B.to=new A.aM(63323,"MaterialIcons",null,!1) +B.tJ=new A.bC(B.to,null,null,null,null) +B.TS=new A.aM(63549,"MaterialIcons",null,!0) +B.n4=new A.bC(B.TS,null,null,null,null) +B.SX=new A.aM(57657,"MaterialIcons",null,!1) +B.V_=new A.bC(B.SX,18,null,null,null) +B.TG=new A.aM(63169,"MaterialIcons",null,!1) +B.V0=new A.bC(B.TG,null,null,null,null) +B.U4=new A.aM(983358,"MaterialIcons",null,!1) +B.V2=new A.bC(B.U4,null,null,null,null) +B.U9=new A.aM(983442,"MaterialIcons",null,!1) +B.V1=new A.bC(B.U9,null,null,null,null) +B.Ub=new A.aM(983550,"MaterialIcons",null,!1) +B.V3=new A.bC(B.Ub,null,null,null,null) +B.Va=new A.a1Y(0,"HtmlImage") +B.Vb=new A.a1Y(1,"HttpGet") +B.Vc=new A.C6(0,"repeat") +B.Vd=new A.C6(1,"repeatX") +B.Ve=new A.C6(2,"repeatY") +B.ee=new A.C6(3,"noRepeat") +B.Vf=new A.a20(!0,!0,B.fl) +B.aP=A.a(s([]),t.oU) +B.Vg=new A.qh("\ufffc",null,null,!0,!0,B.aP) +B.ap9=new A.Kv(null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,!1,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,!0,null,null,null) +B.Vh=new A.a25(null) +B.dz=new A.Cc(0,"next") +B.tM=new A.Cc(1,"resolve") +B.tN=new A.Cc(2,"resolveCallFollowing") +B.tO=new A.Cc(4,"rejectCallFollowing") +B.QK=new A.f3(0.1,0,0.45,1) +B.Vj=new A.dO(0.7038888888888889,1,B.QK) +B.Vn=new A.dO(0,0.1,B.Z) +B.tR=new A.dO(0,0.25,B.Z) +B.Vk=new A.dO(0,0.3333333333333333,B.Z) +B.tP=new A.dO(0,0.6666666666666666,B.Z) +B.tQ=new A.dO(0.1,0.33,B.Z) +B.Vp=new A.dO(0.125,0.25,B.Z) +B.Vl=new A.dO(0.25,0.5,B.Z) +B.Vm=new A.dO(0.25,0.75,B.Z) +B.Vo=new A.dO(0.6,1,B.Z) +B.tS=new A.dO(0.75,1,B.Z) +B.QE=new A.f3(0.2,0,0.8,1) +B.Vq=new A.dO(0,0.4166666666666667,B.QE) +B.tT=new A.dO(0.5,1,B.aL) +B.Vr=new A.dO(0.2075,0.4175,B.Z) +B.Vt=new A.dO(0,0.5,B.a3) +B.Vs=new A.dO(0.5,1,B.a3) +B.QG=new A.f3(0,0,0.65,1) +B.Vu=new A.dO(0.5555555555555556,0.8705555555555555,B.QG) +B.Vv=new A.dO(0.0825,0.2075,B.Z) +B.QH=new A.f3(0.4,0,1,1) +B.Vw=new A.dO(0.185,0.6016666666666667,B.QH) +B.tU=new A.Ky(0,"grapheme") +B.tV=new A.Ky(1,"word") +B.jf=new A.xh(B.iH,A.ah("xh")) +B.Vy=function(hooks) { + if (typeof dartExperimentalFixupGetTag != "function") return hooks; + hooks.getTag = dartExperimentalFixupGetTag(hooks.getTag); +} +B.tW=function(hooks) { return hooks; } + +B.Vz=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.VA=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.VB=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.tX=function getTagFallback(o) { + var s = Object.prototype.toString.call(o); + return s.substring(8, s.length - 1); +} +B.VC=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.VD=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.tY=new A.a2i(null) +B.VG=new A.a2j(null) +B.VH=new A.a2l(0,"rawKeyData") +B.VI=new A.a2l(1,"keyDataThenRawKeyData") +B.cV=new A.KG(0,"down") +B.VJ=new A.ko(B.F,B.cV,0,0,null,!1) +B.hj=new A.tV(0,"handled") +B.hk=new A.tV(1,"ignored") +B.jg=new A.tV(2,"skipRemainingHandlers") +B.c9=new A.KG(1,"up") +B.VK=new A.KG(2,"repeat") +B.ki=new A.n(4294967562) +B.VL=new A.Cl(B.ki,0,"numLock") +B.kj=new A.n(4294967564) +B.VM=new A.Cl(B.kj,1,"scrollLock") +B.hB=new A.n(4294967556) +B.VN=new A.Cl(B.hB,2,"capsLock") +B.f6=new A.xm(0,"any") +B.dd=new A.xm(3,"all") +B.VO=new A.a2t(!1,255) +B.tZ=new A.a2u(255) +B.apa=new A.Cn(0,"platformDefault") +B.VP=new A.Cn(1,"inAppWebView") +B.VQ=new A.Cn(2,"inAppBrowserView") +B.VR=new A.Cn(3,"externalApplication") +B.cA=new A.xo("INFO",800) +B.VS=new A.xo("WARNING",900) +B.VT=new A.a2D(null) +B.VU=new A.a2E(null) +B.u0=new A.tZ(null) +B.VV=new A.a2H(null) +B.ef=new A.u0(0,"opportunity") +B.U=new A.u0(1,"prohibited") +B.dA=new A.u0(2,"mandatory") +B.dB=new A.u0(3,"endOfText") +B.n5=new A.cY(0,"CM") +B.jj=new A.cY(1,"BA") +B.eg=new A.cY(10,"PO") +B.hl=new A.cY(11,"OP") +B.hm=new A.cY(12,"CP") +B.jk=new A.cY(13,"IS") +B.hn=new A.cY(14,"HY") +B.n6=new A.cY(15,"SY") +B.dC=new A.cY(16,"NU") +B.n7=new A.cY(17,"CL") +B.n8=new A.cY(18,"GL") +B.u1=new A.cY(19,"BB") +B.ho=new A.cY(2,"LF") +B.ca=new A.cY(20,"HL") +B.jl=new A.cY(21,"JL") +B.hp=new A.cY(22,"JV") +B.hq=new A.cY(23,"JT") +B.n9=new A.cY(24,"NS") +B.na=new A.cY(25,"ZW") +B.nb=new A.cY(26,"ZWJ") +B.nc=new A.cY(27,"B2") +B.u2=new A.cY(28,"IN") +B.nd=new A.cY(29,"WJ") +B.jm=new A.cY(3,"BK") +B.ne=new A.cY(30,"ID") +B.jn=new A.cY(31,"EB") +B.hr=new A.cY(32,"H2") +B.hs=new A.cY(33,"H3") +B.nf=new A.cY(34,"CB") +B.jo=new A.cY(35,"RI") +B.jp=new A.cY(36,"EM") +B.jq=new A.cY(4,"CR") +B.f7=new A.cY(5,"SP") +B.u3=new A.cY(6,"EX") +B.ng=new A.cY(7,"QU") +B.cb=new A.cY(8,"AL") +B.jr=new A.cY(9,"PR") +B.VX=new A.xw(B.iH,A.ah("xw")) +B.js=new A.a2K(4,"multi") +B.VY=new A.a2K(5,"multiCompatible") +B.f8=new A.KR(0,"leading") +B.de=new A.KR(1,"trailing") +B.jt=new A.KR(2,"platform") +B.VZ=new A.a2L(0,"list") +B.W_=new A.a2L(1,"drawer") +B.W0=new A.Cw(null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null) +B.W1=new A.a2M(0,"threeLine") +B.W2=new A.a2M(1,"titleHeight") +B.u4=new A.qm(null,null,null,null,!1,null,null,null,null,null,!0,null,null,null,!1,null,null,!1,null,null,null,null) +B.W6=A.a(s(["\xee.Hr.","d.Hr."]),t.s) +B.Qv=new A.M(637534208) +B.dO=new A.l(0,3) +B.Mp=new A.c8(0,B.a2,B.Qv,B.dO,8) +B.Pq=new A.M(251658240) +B.Mq=new A.c8(0,B.a2,B.Pq,B.dO,1) +B.u5=A.a(s([B.Mp,B.Mq]),t.G) +B.W4=A.a(s(["1e kwartaal","2e kwartaal","3e kwartaal","4e kwartaal"]),t.s) +B.u7=A.a(s(["EEEE d MMMM y","d MMMM y","d MMM y","dd/MM/y"]),t.s) +B.Wa=A.a(s(["EEEE d MMMM y","d MMMM y","d MMM y","dd/MM/yy"]),t.s) +B.W5=A.a(s(["{0} \u0b20\u0b3e\u0b30\u0b47 {1}","{0} \u0b20\u0b3e\u0b30\u0b47 {1}","{1}, {0}","{1}, {0}"]),t.s) +B.Wc=A.a(s(["\uc81c 1/4\ubd84\uae30","\uc81c 2/4\ubd84\uae30","\uc81c 3/4\ubd84\uae30","\uc81c 4/4\ubd84\uae30"]),t.s) +B.W3=A.a(s(["file","directory","link","unixDomainSock","pipe","notFound"]),t.s) +B.dD=A.a(s(["domingo","lunes","martes","mi\xe9rcoles","jueves","viernes","s\xe1bado"]),t.s) +B.u9=A.a(s(["sk","pr","an","tr","kt","pn","\u0161t"]),t.s) +B.ju=A.a(s(["\u043d","\u043f","\u0432","\u0441","\u0447","\u043f","\u0441"]),t.s) +B.u6=A.a(s(["januar","februar","marts","april","maj","juni","juli","august","september","oktober","november","december"]),t.s) +B.Wd=A.a(s(["\u041d\u044d\u0433\u0434\u04af\u0433\u044d\u044d\u0440 \u0441\u0430\u0440","\u0425\u043e\u0451\u0440\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440","\u0413\u0443\u0440\u0430\u0432\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440","\u0414\u04e9\u0440\u04e9\u0432\u0434\u04af\u0433\u044d\u044d\u0440 \u0441\u0430\u0440","\u0422\u0430\u0432\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440","\u0417\u0443\u0440\u0433\u0430\u0430\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440","\u0414\u043e\u043b\u043e\u043e\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440","\u041d\u0430\u0439\u043c\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440","\u0415\u0441\u0434\u04af\u0433\u044d\u044d\u0440 \u0441\u0430\u0440","\u0410\u0440\u0430\u0432\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440","\u0410\u0440\u0432\u0430\u043d \u043d\u044d\u0433\u0434\u04af\u0433\u044d\u044d\u0440 \u0441\u0430\u0440","\u0410\u0440\u0432\u0430\u043d \u0445\u043e\u0451\u0440\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440"]),t.s) +B.W7=A.a(s(["\u044f\u043d\u0432.","\u0444\u0435\u0432\u0440.","\u043c\u0430\u0440\u0442","\u0430\u043f\u0440.","\u043c\u0430\u0439","\u0438\u044e\u043d\u044c","\u0438\u044e\u043b\u044c","\u0430\u0432\u0433.","\u0441\u0435\u043d\u0442.","\u043e\u043a\u0442.","\u043d\u043e\u044f\u0431.","\u0434\u0435\u043a."]),t.s) +B.u8=A.a(s(["\u10d8\u10d0\u10dc","\u10d7\u10d4\u10d1","\u10db\u10d0\u10e0","\u10d0\u10de\u10e0","\u10db\u10d0\u10d8","\u10d8\u10d5\u10dc","\u10d8\u10d5\u10da","\u10d0\u10d2\u10d5","\u10e1\u10d4\u10e5","\u10dd\u10e5\u10e2","\u10dc\u10dd\u10d4","\u10d3\u10d4\u10d9"]),t.s) +B.Ox=new A.adk() +B.OJ=new A.ai2() +B.OF=new A.agr() +B.OQ=new A.anZ() +B.W8=A.a(s([B.Ox,B.OJ,B.OF,B.OQ]),t.a9) +B.W9=A.a(s(["vm.","nm."]),t.s) +B.Wb=A.a(s(["\u0c9c\u0ca8","\u0cab\u0cc6\u0cac\u0ccd\u0cb0","\u0cae\u0cbe\u0cb0\u0ccd\u0c9a\u0ccd","\u0c8f\u0caa\u0ccd\u0cb0\u0cbf","\u0cae\u0cc7","\u0c9c\u0cc2\u0ca8\u0ccd","\u0c9c\u0cc1\u0cb2\u0cc8","\u0c86\u0c97","\u0cb8\u0cc6\u0caa\u0ccd\u0c9f\u0cc6\u0c82","\u0c85\u0c95\u0ccd\u0c9f\u0ccb","\u0ca8\u0cb5\u0cc6\u0c82","\u0ca1\u0cbf\u0cb8\u0cc6\u0c82"]),t.s) +B.ua=A.a(s(["ne","po","\xfat","st","\u010dt","p\xe1","so"]),t.s) +B.We=A.a(s(["urtarrilak","otsailak","martxoak","apirilak","maiatzak","ekainak","uztailak","abuztuak","irailak","urriak","azaroak","abenduak"]),t.s) +B.ub=A.a(s(["januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december"]),t.s) +B.Wf=A.a(s(["\u049b\u0430\u04a3\u0442\u0430\u0440","\u0430\u049b\u043f\u0430\u043d","\u043d\u0430\u0443\u0440\u044b\u0437","\u0441\u04d9\u0443\u0456\u0440","\u043c\u0430\u043c\u044b\u0440","\u043c\u0430\u0443\u0441\u044b\u043c","\u0448\u0456\u043b\u0434\u0435","\u0442\u0430\u043c\u044b\u0437","\u049b\u044b\u0440\u043a\u04af\u0439\u0435\u043a","\u049b\u0430\u0437\u0430\u043d","\u049b\u0430\u0440\u0430\u0448\u0430","\u0436\u0435\u043b\u0442\u043e\u049b\u0441\u0430\u043d"]),t.s) +B.Wg=A.a(s(["B.","B.E.","\xc7.A.","\xc7.","C.A.","C.","\u015e."]),t.s) +B.Wh=A.a(s([0,1]),t.up) +B.Wi=A.a(s([0,6,12,18]),t.t) +B.Wj=A.a(s(["\u0e81\u0ec8\u0ead\u0e99 \u0e84.\u0eaa.","\u0e84.\u0eaa."]),t.s) +B.Wk=A.a(s(["y\u5e74M\u6708d\u65e5 EEEE","y\u5e74M\u6708d\u65e5","y\u5e74M\u6708d\u65e5","y/M/d"]),t.s) +B.jv=A.a(s(["Enero","Pebrero","Marso","Abril","Mayo","Hunyo","Hulyo","Agosto","Setyembre","Oktubre","Nobyembre","Disyembre"]),t.s) +B.uc=A.a(s(["\u12a5","\u1230","\u121b","\u1228","\u1210","\u12d3","\u1245"]),t.s) +B.ud=A.a(s(["Oca","\u015eub","Mar","Nis","May","Haz","Tem","A\u011fu","Eyl","Eki","Kas","Ara"]),t.s) +B.Wl=A.a(s(["Sebelum Masehi","Masehi"]),t.s) +B.Wm=A.a(s([144,169]),t.t) +B.Wn=A.a(s(["EEEE, d MMMM y '\u0433'.","d MMMM y '\u0433'.","d MMM y '\u0433'.","d.MM.yy"]),t.s) +B.ue=A.a(s(["\u044f","\u0444","\u043c","\u0430","\u043c","\u044e","\u044e","\u0430","\u0441","\u043e","\u043d","\u0434"]),t.s) +B.Wo=A.a(s(["EEEE, d. MMMM y.","d. MMMM y.","d. MMM y.","d. M. y."]),t.s) +B.dE=A.a(s(["ene","feb","mar","abr","may","jun","jul","ago","sept","oct","nov","dic"]),t.s) +B.Wp=A.a(s(["EEEE d. MMMM y","d. MMMM y","d. M. y","d. M. y"]),t.s) +B.Wq=A.a(s(["\u5348\u524d","\u5348\u5f8c"]),t.s) +B.nh=A.a(s(["HH.mm.ss zzzz","HH.mm.ss z","HH.mm.ss","HH.mm"]),t.s) +B.uf=A.a(s([200,202]),t.t) +B.Wr=A.a(s(["\u043f.\u043d.\u0435.","\u043d.\u0435."]),t.s) +B.Ws=A.a(s([239,191,189]),t.t) +B.jw=A.a(s(["\u0e21.\u0e04.","\u0e01.\u0e1e.","\u0e21\u0e35.\u0e04.","\u0e40\u0e21.\u0e22.","\u0e1e.\u0e04.","\u0e21\u0e34.\u0e22.","\u0e01.\u0e04.","\u0e2a.\u0e04.","\u0e01.\u0e22.","\u0e15.\u0e04.","\u0e1e.\u0e22.","\u0e18.\u0e04."]),t.s) +B.ug=A.a(s(["\u10d8","\u10d7","\u10db","\u10d0","\u10db","\u10d8","\u10d8","\u10d0","\u10e1","\u10dd","\u10dc","\u10d3"]),t.s) +B.Wt=A.a(s(["e.\u0259.","y.e."]),t.s) +B.uh=A.a(s(["\u0b30\u0b2c\u0b3f","\u0b38\u0b4b\u0b2e","\u0b2e\u0b19\u0b4d\u0b17\u0b33","\u0b2c\u0b41\u0b27","\u0b17\u0b41\u0b30\u0b41","\u0b36\u0b41\u0b15\u0b4d\u0b30","\u0b36\u0b28\u0b3f"]),t.s) +B.Wv=A.a(s(["trim. I","trim. II","trim. III","trim. IV"]),t.s) +B.Ww=A.a(s(["{1} 'n\xeb' {0}","{1} 'n\xeb' {0}","{1}, {0}","{1}, {0}"]),t.s) +B.Wy=A.a(s(["Tr\u01b0\u1edbc CN","Sau CN"]),t.s) +B.Wx=A.a(s(["\u0c95\u0ccd\u0cb0\u0cbf.\u0caa\u0cc2","\u0c95\u0ccd\u0cb0\u0cbf.\u0cb6"]),t.s) +B.ui=A.a(s(["dg","dl","dt","dc","dj","dv","ds"]),t.s) +B.uj=A.a(s(["\u0642\u0628\u0644 \u0645\u0633\u06cc\u062d","\u0639\u06cc\u0633\u0648\u06cc"]),t.s) +B.Wz=A.a(s(["{1} '\xe0s' {0}","{1} '\xe0s' {0}","{1}, {0}","{1}, {0}"]),t.s) +B.WA=A.a(s(["p.K.","mb.K."]),t.s) +B.uk=A.a(s(["H:mm:ss (zzzz)","H:mm:ss z","H:mm:ss","H:mm"]),t.s) +B.WB=A.a(s(["Th\xe1ng 1","Th\xe1ng 2","Th\xe1ng 3","Th\xe1ng 4","Th\xe1ng 5","Th\xe1ng 6","Th\xe1ng 7","Th\xe1ng 8","Th\xe1ng 9","Th\xe1ng 10","Th\xe1ng 11","Th\xe1ng 12"]),t.s) +B.ul=A.a(s(["\u10d9","\u10dd","\u10e1","\u10dd","\u10ee","\u10de","\u10e8"]),t.s) +B.WC=A.a(s(["{0} {1}","{0} {1}","{0}, {1}","{0}, {1}"]),t.s) +B.WD=A.a(s(["\u0e01\u0e48\u0e2d\u0e19 \u0e04.\u0e28.","\u0e04.\u0e28."]),t.s) +B.um=A.a(s(["\u09b0","\u09b8\u09cb","\u09ae","\u09ac\u09c1","\u09ac\u09c3","\u09b6\u09c1","\u09b6"]),t.s) +B.WE=A.a(s(["\u0a88\u0ab8\u0ab5\u0ac0\u0ab8\u0aa8 \u0aaa\u0ac2\u0ab0\u0acd\u0ab5\u0ac7","\u0a87\u0ab8\u0ab5\u0ac0\u0ab8\u0aa8"]),t.s) +B.WF=A.a(s(["EEEE, d 'de' MMMM 'de' y","d 'de' MMMM 'de' y","d MMM y","dd/MM/yy"]),t.s) +B.bO=A.a(s(["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sept","Oct","Nov","Dec"]),t.s) +B.WI=A.a(s(["y MMMM d, EEEE","y MMMM d","y MMM d","y-MM-dd"]),t.s) +B.WG=A.a(s(["\u09e7\u09ae\u0983 \u09a4\u09bf\u0983","\u09e8\u09af\u09bc\u0983 \u09a4\u09bf\u0983","\u09e9\u09af\u09bc\u0983 \u09a4\u09bf\u0983","\u09ea\u09f0\u09cd\u09a5\u0983 \u09a4\u09bf\u0983"]),t.s) +B.un=A.a(s(["\u0436\u0441","\u0434\u0441","\u0441\u0441","\u0441\u0440","\u0431\u0441","\u0436\u043c","\u0441\u0431"]),t.s) +B.up=A.a(s(["\u043d\u0435\u0434\u0435\u0459\u0430","\u043f\u043e\u043d\u0435\u0434\u0435\u0459\u0430\u043a","\u0443\u0442\u043e\u0440\u0430\u043a","\u0441\u0440\u0435\u0434\u0430","\u0447\u0435\u0442\u0432\u0440\u0442\u0430\u043a","\u043f\u0435\u0442\u0430\u043a","\u0441\u0443\u0431\u043e\u0442\u0430"]),t.s) +B.WH=A.a(s(["s","l","m","k","m","c","l","s","w","p","l","g"]),t.s) +B.uo=A.a(s(["\u091c\u093e\u0928\u0947\u0935\u093e\u0930\u0940","\u092b\u0947\u092c\u094d\u0930\u0941\u0935\u093e\u0930\u0940","\u092e\u093e\u0930\u094d\u091a","\u090f\u092a\u094d\u0930\u093f\u0932","\u092e\u0947","\u091c\u0942\u0928","\u091c\u0941\u0932\u0948","\u0911\u0917\u0938\u094d\u091f","\u0938\u092a\u094d\u091f\u0947\u0902\u092c\u0930","\u0911\u0915\u094d\u091f\u094b\u092c\u0930","\u0928\u094b\u0935\u094d\u0939\u0947\u0902\u092c\u0930","\u0921\u093f\u0938\u0947\u0902\u092c\u0930"]),t.s) +B.WJ=A.a(s(["\u0da2\u0db1","\u0db4\u0dd9\u0db6","\u0db8\u0dcf\u0dbb\u0dca","\u0d85\u0db4\u0dca\u200d\u0dbb\u0dda\u0dbd\u0dca","\u0db8\u0dd0\u0dba\u0dd2","\u0da2\u0dd6\u0db1\u0dd2","\u0da2\u0dd6\u0dbd\u0dd2","\u0d85\u0d9c\u0ddd","\u0dc3\u0dd0\u0db4\u0dca","\u0d94\u0d9a\u0dca","\u0db1\u0ddc\u0dc0\u0dd0","\u0daf\u0dd9\u0dc3\u0dd0"]),t.s) +B.uq=A.a(s(["\u0e27\u0e31\u0e19\u0e2d\u0e32\u0e17\u0e34\u0e15\u0e22\u0e4c","\u0e27\u0e31\u0e19\u0e08\u0e31\u0e19\u0e17\u0e23\u0e4c","\u0e27\u0e31\u0e19\u0e2d\u0e31\u0e07\u0e04\u0e32\u0e23","\u0e27\u0e31\u0e19\u0e1e\u0e38\u0e18","\u0e27\u0e31\u0e19\u0e1e\u0e24\u0e2b\u0e31\u0e2a\u0e1a\u0e14\u0e35","\u0e27\u0e31\u0e19\u0e28\u0e38\u0e01\u0e23\u0e4c","\u0e27\u0e31\u0e19\u0e40\u0e2a\u0e32\u0e23\u0e4c"]),t.s) +B.ur=A.a(s([304]),t.t) +B.WK=A.a(s(["\u05dc\u05e4\u05e0\u05d9 \u05d4\u05e1\u05e4\u05d9\u05e8\u05d4","\u05dc\u05e1\u05e4\u05d9\u05e8\u05d4"]),t.s) +B.us=A.a(s(["Januari","Februari","Mac","April","Mei","Jun","Julai","Ogos","September","Oktober","November","Disember"]),t.s) +B.jx=A.a(s(["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"]),t.s) +B.WL=A.a(s(["EEEE, d. MMMM y","d. MMMM y","d. MMM y","d.M.y"]),t.s) +B.ni=A.a(s(["EEEE, d. MMMM y","d. MMMM y","dd.MM.y","dd.MM.yy"]),t.s) +B.WM=A.a(s([3,4]),t.t) +B.WN=A.a(s(["\u091c\u0928","\u092b\u0947\u092c","\u092e\u093e\u0930\u094d\u091a","\u0905\u092a\u094d\u0930","\u092e\u0947","\u091c\u0941\u0928","\u091c\u0941\u0932","\u0905\u0917","\u0938\u0947\u092a","\u0905\u0915\u094d\u091f\u094b","\u0928\u094b\u092d\u0947","\u0921\u093f\u0938\u0947"]),t.s) +B.WO=A.a(s(["\uc624\uc804","\uc624\ud6c4"]),t.s) +B.ut=A.a(s(["\u0930\u0935\u093f\u0935\u093e\u0930","\u0938\u094b\u092e\u0935\u093e\u0930","\u092e\u0902\u0917\u0932\u0935\u093e\u0930","\u092c\u0941\u0927\u0935\u093e\u0930","\u0917\u0941\u0930\u0941\u0935\u093e\u0930","\u0936\u0941\u0915\u094d\u0930\u0935\u093e\u0930","\u0936\u0928\u093f\u0935\u093e\u0930"]),t.s) +B.uu=A.a(s(["\u0906","\u0938\u094b","\u092e","\u092c\u0941","\u092c\u093f","\u0936\u0941","\u0936"]),t.s) +B.WP=A.a(s(["eram\u0131zdan \u0259vv\u0259l","yeni era"]),t.s) +B.WQ=A.a(s([40,20,40]),t.up) +B.uv=A.a(s(["januar","februar","marec","april","maj","junij","julij","avgust","september","oktober","november","december"]),t.s) +B.X3=A.a(s(["\u0db4\u0dd9.\u0dc0.","\u0db4.\u0dc0."]),t.s) +B.X6=A.a(s(["EEEE, d MMMM y","d MMMM y","d MMM y","dd/MM/yy"]),t.s) +B.X8=A.a(s(["Dom.","Luns","Mar.","M\xe9r.","Xov.","Ven.","S\xe1b."]),t.s) +B.X7=A.a(s(["d.","l.","m.","m.","x.","v.","s."]),t.s) +B.a_=new A.ez(0,0,null,null) +B.Xb=A.a(s([B.a_]),t.p) +B.Xc=A.a(s(["1. \u010dtvrtlet\xed","2. \u010dtvrtlet\xed","3. \u010dtvrtlet\xed","4. \u010dtvrtlet\xed"]),t.s) +B.ux=A.a(s(["\u05d9\u05d5\u05dd \u05e8\u05d0\u05e9\u05d5\u05df","\u05d9\u05d5\u05dd \u05e9\u05e0\u05d9","\u05d9\u05d5\u05dd \u05e9\u05dc\u05d9\u05e9\u05d9","\u05d9\u05d5\u05dd \u05e8\u05d1\u05d9\u05e2\u05d9","\u05d9\u05d5\u05dd \u05d7\u05de\u05d9\u05e9\u05d9","\u05d9\u05d5\u05dd \u05e9\u05d9\u05e9\u05d9","\u05d9\u05d5\u05dd \u05e9\u05d1\u05ea"]),t.s) +B.uw=A.a(s(["\u062d","\u0646","\u062b","\u0631","\u062e","\u062c","\u0633"]),t.s) +B.Xd=A.a(s(["Die","H\xebn","Mar","M\xebr","Enj","Pre","Sht"]),t.s) +B.uz=A.a(s(["H:mm:ss (zzzz)","H:mm:ss (z)","H:mm:ss","H:mm"]),t.s) +B.Xh=A.a(s(["a h\uc2dc m\ubd84 s\ucd08 zzzz","a h\uc2dc m\ubd84 s\ucd08 z","a h:mm:ss","a h:mm"]),t.s) +B.uy=A.a(s(["\u0399","\u03a6","\u039c","\u0391","\u039c","\u0399","\u0399","\u0391","\u03a3","\u039f","\u039d","\u0394"]),t.s) +B.uA=A.a(s(["\u0da2","\u0db4\u0dd9","\u0db8\u0dcf","\u0d85","\u0db8\u0dd0","\u0da2\u0dd6","\u0da2\u0dd6","\u0d85","\u0dc3\u0dd0","\u0d94","\u0db1\u0dd9","\u0daf\u0dd9"]),t.s) +B.Xk=A.a(s(["M\xd6","MS"]),t.s) +B.Xl=A.a(s(["y\u5e74M\u6708d\u65e5EEEE","y\u5e74M\u6708d\u65e5","y\u5e74M\u6708d\u65e5","y/M/d"]),t.s) +B.Xi=A.a(s(["Sul","Llun","Maw","Mer","Iau","Gwen","Sad"]),t.s) +B.Xj=A.a(s(["n","p","w","\u015b","c","p","s"]),t.s) +B.uC=A.a(s(["jan.","feb.","mar.","apr.","maj","jun.","jul.","avg.","sep.","okt.","nov.","dec."]),t.s) +B.uB=A.a(s(["\u0441","\u043b","\u0441","\u043a","\u043c","\u0447","\u043b","\u0436","\u0432","\u043a","\u043b","\u0441"]),t.s) +B.cc=A.a(s([4098969767,1098797925,387629988,658151006,2872822635,2636116293,4205620056,3813380867,807425530,1991112301,3431502198,49620300,3847224535,717608907,891715652,1656065955,2984135002,3123013403,3930429454,4267565504,801309301,1283527408,1183687575,3547055865,2399397727,2450888092,1841294202,1385552473,3201576323,1951978273,3762891113,3381544136,3262474889,2398386297,1486449470,3106397553,3787372111,2297436077,550069932,3464344634,3747813450,451248689,1368875059,1398949247,1689378935,1807451310,2180914336,150574123,1215322216,1167006205,3734275948,2069018616,1940595667,1265820162,534992783,1432758955,3954313e3,3039757250,3313932923,936617224,674296455,3206787749,50510442,384654466,3481938716,2041025204,133427442,1766760930,3664104948,84334014,886120290,2797898494,775200083,4087521365,2315596513,4137973227,2198551020,1614850799,1901987487,1857900816,557775242,3717610758,1054715397,3863824061,1418835341,3295741277,100954068,1348534037,2551784699,3184957417,1082772547,3647436702,3903896898,2298972299,434583643,3363429358,2090944266,1115482383,2230896926,0,2148107142,724715757,287222896,1517047410,251526143,2232374840,2923241173,758523705,252339417,1550328230,1536938324,908343854,168604007,1469255655,4004827798,2602278545,3229634501,3697386016,2002413899,303830554,2481064634,2696996138,574374880,454171927,151915277,2347937223,3056449960,504678569,4049044761,1974422535,2582559709,2141453664,33005350,1918680309,1715782971,4217058430,1133213225,600562886,3988154620,3837289457,836225756,1665273989,2534621218,3330547729,1250262308,3151165501,4188934450,700935585,2652719919,3000824624,2249059410,3245854947,3005967382,1890163129,2484206152,3913753188,4238918796,4037024319,2102843436,857927568,1233635150,953795025,3398237858,3566745099,4121350017,2057644254,3084527246,2906629311,976020637,2018512274,1600822220,2119459398,2381758995,3633375416,959340279,3280139695,1570750080,3496574099,3580864813,634368786,2898803609,403744637,2632478307,1004239803,650971512,1500443672,2599158199,1334028442,2514904430,4289363686,3156281551,368043752,3887782299,1867173430,2682967049,2955531900,2754719666,1059729699,2781229204,2721431654,1316239292,2197595850,2430644432,2805143e3,82922136,3963746266,3447656016,2434215926,1299615190,4014165424,2865517645,2531581700,3516851125,1783372680,750893087,1699118929,1587348714,2348899637,2281337716,201010753,1739807261,3683799762,283718486,3597472583,3617229921,2704767500,4166618644,334203196,2848910887,1639396809,484568549,1199193265,3533461983,4065673075,337148366,3346251575,4149471949,4250885034,1038029935,1148749531,2949284339,1756970692,607661108,2747424576,488010435,3803974693,1009290057,234832277,2822336769,201907891,3034094820,1449431233,3413860740,852848822,1816687708,3100656215]),t.t) +B.uD=A.a(s(["\u0a10","\u0a38\u0a4b","\u0a2e\u0a70","\u0a2c\u0a41\u0a71","\u0a35\u0a40","\u0a38\u0a3c\u0a41\u0a71","\u0a38\u0a3c"]),t.s) +B.Xm=A.a(s(["\u1798\u17bb\u1793 \u1782.\u179f.","\u1782.\u179f."]),t.s) +B.uE=A.a(s(["dg.","dl.","dt.","dc.","dj.","dv.","ds."]),t.s) +B.jy=A.a(s(["H:mm:ss zzzz","H:mm:ss z","H:mm:ss","H:mm"]),t.s) +B.a16=A.a(s([137,80,78,71,13,10,26,10]),t.Z) +B.V4=new A.qg(B.a16,"image/png") +B.Xn=A.a(s([71,73,70,56,55,97]),t.Z) +B.V8=new A.qg(B.Xn,"image/gif") +B.Xo=A.a(s([71,73,70,56,57,97]),t.Z) +B.V9=new A.qg(B.Xo,"image/gif") +B.Wu=A.a(s([255,216,255]),t.Z) +B.V5=new A.qg(B.Wu,"image/jpeg") +B.Z2=A.a(s([82,73,70,70,null,null,null,null,87,69,66,80]),t.Z) +B.V7=new A.qg(B.Z2,"image/webp") +B.XI=A.a(s([66,77]),t.Z) +B.V6=new A.qg(B.XI,"image/bmp") +B.Xp=A.a(s([B.V4,B.V8,B.V9,B.V5,B.V7,B.V6]),A.ah("G")) +B.uF=A.a(s(["\u0930\u0935\u093f","\u0938\u094b\u092e","\u092e\u0902\u0917\u0933","\u092c\u0941\u0927","\u0917\u0941\u0930\u0941","\u0936\u0941\u0915\u094d\u0930","\u0936\u0928\u093f"]),t.s) +B.Xq=A.a(s([4,4]),t.t) +B.uG=A.a(s([4,5]),t.t) +B.Xr=A.a(s([4,9,14,19]),t.t) +B.uH=A.a(s(["So.","Mo.","Di.","Mi.","Do.","Fr.","Sa."]),t.s) +B.Xs=A.a(s(["EEEE\u060c d MMMM y","d MMMM y","dd\u200f/MM\u200f/y","d\u200f/M\u200f/y"]),t.s) +B.f9=A.a(s(["1\uc6d4","2\uc6d4","3\uc6d4","4\uc6d4","5\uc6d4","6\uc6d4","7\uc6d4","8\uc6d4","9\uc6d4","10\uc6d4","11\uc6d4","12\uc6d4"]),t.s) +B.Xt=A.a(s(["p\u0159ed na\u0161\xedm letopo\u010dtem","na\u0161eho letopo\u010dtu"]),t.s) +B.Xu=A.a(s(["\u05e8\u05d1\u05e2\u05d5\u05df 1","\u05e8\u05d1\u05e2\u05d5\u05df 2","\u05e8\u05d1\u05e2\u05d5\u05df 3","\u05e8\u05d1\u05e2\u05d5\u05df 4"]),t.s) +B.Xv=A.a(s(["1. \u043a\u0432.","2. \u043a\u0432.","3. \u043a\u0432.","4. \u043a\u0432."]),t.s) +B.uI=A.a(s(["\u0570\u0576\u057e","\u0583\u057f\u057e","\u0574\u0580\u057f","\u0561\u057a\u0580","\u0574\u0575\u057d","\u0570\u0576\u057d","\u0570\u056c\u057d","\u0585\u0563\u057d","\u057d\u0565\u057a","\u0570\u0578\u056f","\u0576\u0578\u0575","\u0564\u0565\u056f"]),t.s) +B.ht=A.a(s(["s\xf8n.","man.","tir.","ons.","tor.","fre.","l\xf8r."]),t.s) +B.XC=A.a(s(["\u0996\u09cd\u09b0\u09bf\u09b8\u09cd\u099f\u09aa\u09c2\u09b0\u09cd\u09ac","\u0996\u09c3\u09b7\u09cd\u099f\u09be\u09ac\u09cd\u09a6"]),t.s) +B.uJ=A.a(s(["\u0d89","\u0dc3","\u0d85","\u0db6","\u0db6\u0dca\u200d\u0dbb","\u0dc3\u0dd2","\u0dc3\u0dd9"]),t.s) +B.nj=A.a(s([0,0,65498,45055,65535,34815,65534,18431]),t.t) +B.r=A.a(s([5,6]),t.t) +B.XF=A.a(s(["\u0434\u0430 \u043d.\u044d.","\u043d.\u044d."]),t.s) +B.uK=A.a(s(["saus.","vas.","kov.","bal.","geg.","bir\u017e.","liep.","rugp.","rugs.","spal.","lapkr.","gruod."]),t.s) +B.uL=A.a(s(["Su.","M.","Tu.","W.","Th.","F.","Sa."]),t.s) +B.XG=A.a(s([65533]),t.t) +B.XH=A.a(s(["sije\u010dnja","velja\u010de","o\u017eujka","travnja","svibnja","lipnja","srpnja","kolovoza","rujna","listopada","studenoga","prosinca"]),t.s) +B.OV=new A.AE(0,"auto") +B.OW=new A.AE(1,"full") +B.OX=new A.AE(2,"chromium") +B.XJ=A.a(s([B.OV,B.OW,B.OX]),A.ah("G")) +B.uM=A.a(s(["d","h","m","m","e","p","sh"]),t.s) +B.XK=A.a(s(["\u0c9c\u0ca8\u0cb5\u0cb0\u0cbf","\u0cab\u0cc6\u0cac\u0ccd\u0cb0\u0cb5\u0cb0\u0cbf","\u0cae\u0cbe\u0cb0\u0ccd\u0c9a\u0ccd","\u0c8f\u0caa\u0ccd\u0cb0\u0cbf","\u0cae\u0cc7","\u0c9c\u0cc2\u0ca8\u0ccd","\u0c9c\u0cc1\u0cb2\u0cc8","\u0c86\u0c97","\u0cb8\u0cc6\u0caa\u0ccd\u0c9f\u0cc6\u0c82","\u0c85\u0c95\u0ccd\u0c9f\u0ccb","\u0ca8\u0cb5\u0cc6\u0c82","\u0ca1\u0cbf\u0cb8\u0cc6\u0c82"]),t.s) +B.uN=A.a(s(["januar","februar","mart","april","maj","jun","jul","avgust","septembar","oktobar","novembar","decembar"]),t.s) +B.uO=A.a(s(["\u0436\u0435\u043a\u0441\u0435\u043d\u0431\u0456","\u0434\u04af\u0439\u0441\u0435\u043d\u0431\u0456","\u0441\u0435\u0439\u0441\u0435\u043d\u0431\u0456","\u0441\u04d9\u0440\u0441\u0435\u043d\u0431\u0456","\u0431\u0435\u0439\u0441\u0435\u043d\u0431\u0456","\u0436\u04b1\u043c\u0430","\u0441\u0435\u043d\u0431\u0456"]),t.s) +B.XL=A.a(s(["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"]),t.s) +B.XM=A.a(s(["EEEE, d MMMM y '\u0433'.","d MMMM y '\u0433'.","d.MM.y '\u0433'.","d.MM.yy '\u0433'."]),t.s) +B.bI=new A.pg(0,"label") +B.b9=new A.pg(1,"avatar") +B.cs=new A.pg(2,"deleteIcon") +B.XN=A.a(s([B.bI,B.b9,B.cs]),A.ah("G")) +B.XO=A.a(s(["\u0b16\u0b4d\u0b30\u0b40\u0b37\u0b4d\u0b1f\u0b2a\u0b42\u0b30\u0b4d\u0b2c","\u0b16\u0b4d\u0b30\u0b40\u0b37\u0b4d\u0b1f\u0b3e\u0b2c\u0b4d\u0b26"]),t.s) +B.uP=A.a(s(["ne","po","ut","st","\u0161t","pi","so"]),t.s) +B.XP=A.a(s(["Thg 1","Thg 2","Thg 3","Thg 4","Thg 5","Thg 6","Thg 7","Thg 8","Thg 9","Thg 10","Thg 11","Thg 12"]),t.s) +B.cB=A.a(s([6,6]),t.t) +B.XQ=A.a(s(["1r trimestre","2n trimestre","3r trimestre","4t trimestre"]),t.s) +B.uR=A.a(s(["\u10d9\u10d5\u10d8","\u10dd\u10e0\u10e8","\u10e1\u10d0\u10db","\u10dd\u10d7\u10ee","\u10ee\u10e3\u10d7","\u10de\u10d0\u10e0","\u10e8\u10d0\u10d1"]),t.s) +B.uQ=A.a(s(["Ionawr","Chwefror","Mawrth","Ebrill","Mai","Mehefin","Gorffennaf","Awst","Medi","Hydref","Tachwedd","Rhagfyr"]),t.s) +B.XR=A.a(s(["d MMMM y, EEEE","d MMMM y","d MMM y","dd.MM.yy"]),t.s) +B.XS=A.a(s(["\u1018\u102e\u1005\u102e","\u1021\u1012\u1031\u102e"]),t.s) +B.uS=A.a(s(["\u0cad\u0cbe","\u0cb8\u0ccb","\u0cae\u0c82","\u0cac\u0cc1","\u0c97\u0cc1","\u0cb6\u0cc1","\u0cb6"]),t.s) +B.uT=A.a(s(["\u0cad\u0cbe\u0ca8\u0cc1\u0cb5\u0cbe\u0cb0","\u0cb8\u0ccb\u0cae\u0cb5\u0cbe\u0cb0","\u0cae\u0c82\u0c97\u0cb3\u0cb5\u0cbe\u0cb0","\u0cac\u0cc1\u0ca7\u0cb5\u0cbe\u0cb0","\u0c97\u0cc1\u0cb0\u0cc1\u0cb5\u0cbe\u0cb0","\u0cb6\u0cc1\u0c95\u0ccd\u0cb0\u0cb5\u0cbe\u0cb0","\u0cb6\u0ca8\u0cbf\u0cb5\u0cbe\u0cb0"]),t.s) +B.XT=A.a(s(["\u0d1e","\u0d24\u0d3f","\u0d1a\u0d4a","\u0d2c\u0d41","\u0d35\u0d4d\u0d2f\u0d3e","\u0d35\u0d46","\u0d36"]),t.s) +B.uU=A.a(s(["yan","fev","mar","apr","may","iyn","iyl","avq","sen","okt","noy","dek"]),t.s) +B.XU=A.a(s(["\u1014\u1036\u1014\u1000\u103a","\u100a\u1014\u1031"]),t.s) +B.XV=A.a(s(["\u04af.\u04e9.","\u04af.\u0445."]),t.s) +B.uV=A.a(s(["\u067e\u06c1\u0644\u06cc \u0633\u06c1 \u0645\u0627\u06c1\u06cc","\u062f\u0648\u0633\u0631\u06cc \u0633\u06c1 \u0645\u0627\u06c1\u06cc","\u062a\u06cc\u0633\u0631\u06cc \u0633\u06c1 \u0645\u0627\u06c1\u06cc","\u0686\u0648\u062a\u0647\u06cc \u0633\u06c1 \u0645\u0627\u06c1\u06cc"]),t.s) +B.nk=A.a(s(["\u4e0a\u5348","\u4e0b\u5348"]),t.s) +B.XW=A.a(s(["janu\xe1r","febru\xe1r","marec","apr\xedl","m\xe1j","j\xfan","j\xfal","august","september","okt\xf3ber","november","december"]),t.s) +B.uW=A.a(s(["n","p","t","s","\u010d","p","s"]),t.s) +B.XX=A.a(s(["th\xe1ng 1","th\xe1ng 2","th\xe1ng 3","th\xe1ng 4","th\xe1ng 5","th\xe1ng 6","th\xe1ng 7","th\xe1ng 8","th\xe1ng 9","th\xe1ng 10","th\xe1ng 11","th\xe1ng 12"]),t.s) +B.uX=A.a(s([B.n5,B.jj,B.ho,B.jm,B.jq,B.f7,B.u3,B.ng,B.cb,B.jr,B.eg,B.hl,B.hm,B.jk,B.hn,B.n6,B.dC,B.n7,B.n8,B.u1,B.ca,B.jl,B.hp,B.hq,B.n9,B.na,B.nb,B.nc,B.u2,B.nd,B.ne,B.jn,B.hr,B.hs,B.nf,B.jo,B.jp]),A.ah("G")) +B.uY=A.a(s(["\u0d1c\u0d28\u0d41","\u0d2b\u0d46\u0d2c\u0d4d\u0d30\u0d41","\u0d2e\u0d3e\u0d7c","\u0d0f\u0d2a\u0d4d\u0d30\u0d3f","\u0d2e\u0d47\u0d2f\u0d4d","\u0d1c\u0d42\u0d7a","\u0d1c\u0d42\u0d32\u0d48","\u0d13\u0d17","\u0d38\u0d46\u0d2a\u0d4d\u0d31\u0d4d\u0d31\u0d02","\u0d12\u0d15\u0d4d\u0d1f\u0d4b","\u0d28\u0d35\u0d02","\u0d21\u0d3f\u0d38\u0d02"]),t.s) +B.uZ=A.a(s(["I","Ch","M","E","M","M","G","A","M","H","T","Rh"]),t.s) +B.v_=A.a(s(["\u05d9\u05e0\u05d5\u05f3","\u05e4\u05d1\u05e8\u05f3","\u05de\u05e8\u05e5","\u05d0\u05e4\u05e8\u05f3","\u05de\u05d0\u05d9","\u05d9\u05d5\u05e0\u05d9","\u05d9\u05d5\u05dc\u05d9","\u05d0\u05d5\u05d2\u05f3","\u05e1\u05e4\u05d8\u05f3","\u05d0\u05d5\u05e7\u05f3","\u05e0\u05d5\u05d1\u05f3","\u05d3\u05e6\u05de\u05f3"]),t.s) +B.XZ=A.a(s(["\u0434\u043e \u043d\u0430\u0448\u043e\u0457 \u0435\u0440\u0438","\u043d\u0430\u0448\u043e\u0457 \u0435\u0440\u0438"]),t.s) +B.XY=A.a(s(["EEEE, d. MMMM y","d. MMMM y","d. MMM y","d. MM. yy"]),t.s) +B.v0=A.a(s(["avant J\xe9sus-Christ","apr\xe8s J\xe9sus-Christ"]),t.s) +B.Y_=A.a(s(["ah:mm:ss [zzzz]","ah:mm:ss [z]","ah:mm:ss","ah:mm"]),t.s) +B.Y1=A.a(s(["1 \u0dc0\u0db1 \u0d9a\u0dcf\u0dbb\u0dca\u0dad\u0dd4\u0dc0","2 \u0dc0\u0db1 \u0d9a\u0dcf\u0dbb\u0dca\u0dad\u0dd4\u0dc0","3 \u0dc0\u0db1 \u0d9a\u0dcf\u0dbb\u0dca\u0dad\u0dd4\u0dc0","4 \u0dc0\u0db1 \u0d9a\u0dcf\u0dbb\u0dca\u0dad\u0dd4\u0dc0"]),t.s) +B.Y0=A.a(s(["\u044f\u043d\u0432\u0430\u0440\u044f","\u0444\u0435\u0432\u0440\u0430\u043b\u044f","\u043c\u0430\u0440\u0442\u0430","\u0430\u043f\u0440\u0435\u043b\u044f","\u043c\u0430\u044f","\u0438\u044e\u043d\u044f","\u0438\u044e\u043b\u044f","\u0430\u0432\u0433\u0443\u0441\u0442\u0430","\u0441\u0435\u043d\u0442\u044f\u0431\u0440\u044f","\u043e\u043a\u0442\u044f\u0431\u0440\u044f","\u043d\u043e\u044f\u0431\u0440\u044f","\u0434\u0435\u043a\u0430\u0431\u0440\u044f"]),t.s) +B.Y2=A.a(s(["EEEE, d MMMM y","d MMMM y","d/MM/y","d/MM/yy"]),t.s) +B.Y3=A.a(s(["{1}, {0}","{1}, {0}","{1}, {0}","{1} {0}"]),t.s) +B.Y4=A.a(s(["\u0642.\u0645.","\u0645."]),t.s) +B.Y5=A.a(s(["\u0a2a\u0a42.\u0a26\u0a41.","\u0a2c\u0a3e.\u0a26\u0a41."]),t.s) +B.jz=A.a(s(["EEEE, d MMMM y","d MMMM y","d MMM y","d/M/yy"]),t.s) +B.Y6=A.a(s(["{1} {0}\u0c15\u0c3f","{1} {0}\u0c15\u0c3f","{1} {0}","{1} {0}"]),t.s) +B.v1=A.a(s(["zo","ma","di","wo","do","vr","za"]),t.s) +B.Y8=A.a(s(["i. e.","i. sz."]),t.s) +B.Y9=A.a(s(["I. negyed\xe9v","II. negyed\xe9v","III. negyed\xe9v","IV. negyed\xe9v"]),t.s) +B.Ya=A.a(s(["y\ub144 M\uc6d4 d\uc77c EEEE","y\ub144 M\uc6d4 d\uc77c","y. M. d.","yy. M. d."]),t.s) +B.anZ=new A.kH(0,1) +B.ao4=new A.kH(0.5,1) +B.ao5=new A.kH(0.5375,0.75) +B.ao3=new A.kH(0.575,0.5) +B.ao7=new A.kH(0.6125,0.25) +B.ao8=new A.kH(0.65,0) +B.ao6=new A.kH(0.85,0) +B.ao2=new A.kH(0.8875,0.25) +B.ao0=new A.kH(0.925,0.5) +B.ao1=new A.kH(0.9625,0.75) +B.ao_=new A.kH(1,1) +B.Y7=A.a(s([B.anZ,B.ao4,B.ao5,B.ao3,B.ao7,B.ao8,B.ao6,B.ao2,B.ao0,B.ao1,B.ao_]),A.ah("G")) +B.Yc=A.a(s(["1-\u0447\u0435\u0439\u0440\u0435\u043a","2-\u0447\u0435\u0439\u0440\u0435\u043a","3-\u0447\u0435\u0439\u0440\u0435\u043a","4-\u0447\u0435\u0439\u0440\u0435\u043a"]),t.s) +B.Ye=A.a(s(["{1} '\u043e' {0}","{1} '\u043e' {0}","{1}, {0}","{1}, {0}"]),t.s) +B.Yb=A.a(s(["{1} '\u0443' {0}","{1} '\u0443' {0}","{1}, {0}","{1}, {0}"]),t.s) +B.v2=A.a(s(["Y","D","S","C","P","J","S"]),t.s) +B.Yd=A.a(s(["sv\u0113tdiena","pirmdiena","otrdiena","tre\u0161diena","ceturtdiena","piektdiena","sestdiena"]),t.s) +B.Yf=A.a(s(["I kwarta\u0142","II kwarta\u0142","III kwarta\u0142","IV kwarta\u0142"]),t.s) +B.v3=A.a(s(["1\u0b2e \u0b24\u0b4d\u0b30\u0b5f\u0b2e\u0b3e\u0b38","2\u0b5f \u0b24\u0b4d\u0b30\u0b5f\u0b2e\u0b3e\u0b38","3\u0b5f \u0b24\u0b4d\u0b30\u0b5f\u0b2e\u0b3e\u0b38","4\u0b30\u0b4d\u0b25 \u0b24\u0b4d\u0b30\u0b5f\u0b2e\u0b3e\u0b38"]),t.s) +B.Yg=A.a(s(["D","L","M","M","X","V","S"]),t.s) +B.Yh=A.a(s(["EEEE\u0e17\u0e35\u0e48 d MMMM G y","d MMMM G y","d MMM y","d/M/yy"]),t.s) +B.v4=A.a(s(["niedziela","poniedzia\u0142ek","wtorek","\u015broda","czwartek","pi\u0105tek","sobota"]),t.s) +B.v5=A.a(s(["1-\u0439 \u043a\u0432\u0430\u0440\u0442\u0430\u043b","2-\u0439 \u043a\u0432\u0430\u0440\u0442\u0430\u043b","3-\u0439 \u043a\u0432\u0430\u0440\u0442\u0430\u043b","4-\u0439 \u043a\u0432\u0430\u0440\u0442\u0430\u043b"]),t.s) +B.Yi=A.a(s(["\u17a2\u17b6\u1791\u17b7\u178f\u17d2\u1799","\u1785\u17d0\u1793\u17d2\u1791","\u17a2\u1784\u17d2\u1782\u17b6\u179a","\u1796\u17bb\u1792","\u1796\u17d2\u179a\u17a0\u179f\u17d2\u1794\u178f\u17b7\u17cd","\u179f\u17bb\u1780\u17d2\u179a","\u179f\u17c5\u179a\u17cd"]),t.s) +B.v6=A.a(s(["niedz.","pon.","wt.","\u015br.","czw.","pt.","sob."]),t.s) +B.v7=A.a(s(["{1} '\xe0' {0}","{1} '\xe0' {0}","{1}, {0}","{1} {0}"]),t.s) +B.Yj=A.a(s(["\u0635","\u0645"]),t.s) +B.Yk=A.a(s(["EEEE, dd MMMM y","d MMMM y","d MMM y","dd/MM/yy"]),t.s) +B.v8=A.a(s(["vas\xe1rnap","h\xe9tf\u0151","kedd","szerda","cs\xfct\xf6rt\xf6k","p\xe9ntek","szombat"]),t.s) +B.Yl=A.a(s(["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentabr","oktabr","noyabr","dekabr"]),t.s) +B.v9=A.a(s(["sty","lut","mar","kwi","maj","cze","lip","sie","wrz","pa\u017a","lis","gru"]),t.s) +B.Ym=A.a(s(["\u0e81\u0ec8\u0ead\u0e99\u0e97\u0ec8\u0ebd\u0e87","\u0eab\u0ebc\u0eb1\u0e87\u0e97\u0ec8\u0ebd\u0e87"]),t.s) +B.jA=A.a(s(["\u06cc\u06a9\u0634\u0646\u0628\u0647","\u062f\u0648\u0634\u0646\u0628\u0647","\u0633\u0647\u200c\u0634\u0646\u0628\u0647","\u0686\u0647\u0627\u0631\u0634\u0646\u0628\u0647","\u067e\u0646\u062c\u0634\u0646\u0628\u0647","\u062c\u0645\u0639\u0647","\u0634\u0646\u0628\u0647"]),t.s) +B.va=A.a(s(["af","am","ar","as","az","be","bg","bn","bs","ca","cs","cy","da","de","el","en","es","et","eu","fa","fi","fil","fr","gl","gsw","gu","he","hi","hr","hu","hy","id","is","it","ja","ka","kk","km","kn","ko","ky","lo","lt","lv","mk","ml","mn","mr","ms","my","nb","ne","nl","no","or","pa","pl","ps","pt","ro","ru","si","sk","sl","sq","sr","sv","sw","ta","te","th","tl","tr","uk","ur","uz","vi","zh","zu"]),t.s) +B.vb=A.a(s(["e diel","e h\xebn\xeb","e mart\xeb","e m\xebrkur\xeb","e enjte","e premte","e shtun\xeb"]),t.s) +B.Yn=A.a(s(["\u043d\u044f\u043c","\u0434\u0430\u0432\u0430\u0430","\u043c\u044f\u0433\u043c\u0430\u0440","\u043b\u0445\u0430\u0433\u0432\u0430","\u043f\u04af\u0440\u044d\u0432","\u0431\u0430\u0430\u0441\u0430\u043d","\u0431\u044f\u043c\u0431\u0430"]),t.s) +B.Yo=A.a(s(["1-\u0440 \u0443\u043b\u0438\u0440\u0430\u043b","2-\u0440 \u0443\u043b\u0438\u0440\u0430\u043b","3-\u0440 \u0443\u043b\u0438\u0440\u0430\u043b","4-\u0440 \u0443\u043b\u0438\u0440\u0430\u043b"]),t.s) +B.vc=A.a(s(["janv.","febr.","marts","apr.","maijs","j\u016bn.","j\u016bl.","aug.","sept.","okt.","nov.","dec."]),t.s) +B.jB=A.a(s(["a. C.","d. C."]),t.s) +B.Yp=A.a(s(["dom.","luns","mar.","m\xe9r.","xov.","ven.","s\xe1b."]),t.s) +B.Yq=A.a(s(["\u1798\u17bb\u1793\u200b\u1782\u17d2\u179a\u17b7\u179f\u17d2\u178f\u179f\u1780\u179a\u17b6\u1787","\u1782\u17d2\u179a\u17b7\u179f\u17d2\u178f\u179f\u1780\u179a\u17b6\u1787"]),t.s) +B.a9=A.a(s(["AM","PM"]),t.s) +B.jC=A.a(s(["\u1010\u1014\u1004\u103a\u1039\u1002\u1014\u103d\u1031","\u1010\u1014\u1004\u103a\u1039\u101c\u102c","\u1021\u1004\u103a\u1039\u1002\u102b","\u1017\u102f\u1012\u1039\u1013\u101f\u1030\u1038","\u1000\u103c\u102c\u101e\u1015\u1010\u1031\u1038","\u101e\u1031\u102c\u1000\u103c\u102c","\u1005\u1014\u1031"]),t.s) +B.Yr=A.a(s(["\u0406 \u0442\u043e\u049b\u0441\u0430\u043d","\u0406\u0406 \u0442\u043e\u049b\u0441\u0430\u043d","\u0406\u0406\u0406 \u0442\u043e\u049b\u0441\u0430\u043d","IV \u0442\u043e\u049b\u0441\u0430\u043d"]),t.s) +B.Ys=A.a(s(["\u09aa\u09c2\u09f0\u09cd\u09ac\u09be\u09b9\u09cd\u09a8","\u0985\u09aa\u09f0\u09be\u09b9\u09cd\u09a8"]),t.s) +B.Yt=A.a(s(["HH:mm:ss (zzzz)","HH:mm:ss z","HH:mm:ss","HH:mm"]),t.s) +B.jD=A.a(s(["dim.","lun.","mar.","mer.","jeu.","ven.","sam."]),t.s) +B.Yu=A.a(s(["a h.mm.ss zzzz","a h.mm.ss z","a h.mm.ss","a h.mm"]),t.s) +B.jE=A.a(s([B.iA,B.lL,B.pS,B.pT,B.lM]),t.QP) +B.Yv=A.a(s(["v.Chr.","n.Chr."]),t.s) +B.vd=A.a(s(["\u039a","\u0394","\u03a4","\u03a4","\u03a0","\u03a0","\u03a3"]),t.s) +B.jF=A.a(s(["\u0930","\u0938\u094b","\u092e\u0902","\u092c\u0941","\u0917\u0941","\u0936\u0941","\u0936"]),t.s) +B.Yw=A.a(s([B.iA]),t.QP) +B.ve=A.a(s(["Januari","Februari","Maret","April","Mei","Juni","Juli","Agustus","September","Oktober","November","Desember"]),t.s) +B.Yx=A.a(s([B.lN,B.lO]),A.ah("G")) +B.vf=A.a(s(["Januwari","Februwari","Mashi","Ephreli","Meyi","Juni","Julayi","Agasti","Septhemba","Okthoba","Novemba","Disemba"]),t.s) +B.df=A.a(s(["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]),t.s) +B.vg=A.a(s(["bind","if","ref","repeat","syntax"]),t.s) +B.cC=A.a(s(["1st quarter","2nd quarter","3rd quarter","4th quarter"]),t.s) +B.vh=A.a(s([B.dY,B.iB]),A.ah("G


    ")) +B.Yy=A.a(s(["{1}\u060c \u0633\u0627\u0639\u062a {0}","{1}\u060c \u0633\u0627\u0639\u062a {0}","{1}\u060c\u200f {0}","{1}\u060c\u200f {0}"]),t.s) +B.Yz=A.a(s(["avanti Cristo","dopo Cristo"]),t.s) +B.YA=A.a(s(["\u0a08. \u0a2a\u0a42.","\u0a38\u0a70\u0a28"]),t.s) +B.YE=A.a(s(["pirms m\u016bsu \u0113ras","m\u016bsu \u0113r\u0101"]),t.s) +B.YC=A.a(s(["1-ci kvartal","2-ci kvartal","3-c\xfc kvartal","4-c\xfc kvartal"]),t.s) +B.YB=A.a(s(["1ste kwartaal","2de kwartaal","3de kwartaal","4de kwartaal"]),t.s) +B.YD=A.a(s(["HH 'h' mm 'min' ss 's' zzzz","HH 'h' mm 'min' ss 's' z","HH 'h' mm 'min' ss 's'","HH 'h' mm"]),t.s) +B.vi=A.a(s(["\u062c\u0646\u0648\u0631\u064a","\u0641\u0628\u0631\u0648\u0631\u064a","\u0645\u0627\u0631\u0686","\u0627\u067e\u0631\u06cc\u0644","\u0645\u06cd","\u062c\u0648\u0646","\u062c\u0648\u0644\u0627\u06cc","\u0627\u06ab\u0633\u062a","\u0633\u06d0\u067e\u062a\u0645\u0628\u0631","\u0627\u06a9\u062a\u0648\u0628\u0631","\u0646\u0648\u0645\u0628\u0631","\u062f\u0633\u0645\u0628\u0631"]),t.s) +B.bq=A.a(s(["BC","AD"]),t.s) +B.Tb=new A.aM(61137,"MaterialIcons",null,!1) +B.EV=new A.lO(B.Tb,"UNKNOWN",0,"unknown") +B.U3=new A.aM(983339,"MaterialIcons",null,!1) +B.a6z=new A.lO(B.U3,"ONGOING",1,"ongoing") +B.TH=new A.aM(63186,"MaterialIcons",null,!1) +B.a6A=new A.lO(B.TH,"COMPLETED",2,"completed") +B.U8=new A.aM(983403,"MaterialIcons",null,!1) +B.a6B=new A.lO(B.U8,"LICENSED",3,"licensed") +B.U_=new A.aM(983239,"MaterialIcons",null,!1) +B.a6E=new A.lO(B.U_,"PUBLISHING_FINISHED",4,"publishingFinished") +B.Tv=new A.aM(62998,"MaterialIcons",null,!1) +B.a6C=new A.lO(B.Tv,"CANCELLED",5,"cancelled") +B.TX=new A.aM(983124,"MaterialIcons",null,!1) +B.a6D=new A.lO(B.TX,"ON_HIATUS",6,"onHiatus") +B.YF=A.a(s([B.EV,B.a6z,B.a6A,B.a6B,B.a6E,B.a6C,B.a6D]),A.ah("G")) +B.vj=A.a(s(["ig.","al.","ar.","az.","og.","or.","lr."]),t.s) +B.YG=A.a(s(["prvi kvartal","drugi kvartal","tre\u0107i kvartal","\u010detvrti kvartal"]),t.s) +B.jG=A.a(s(["EEEE, d MMMM, y","d MMMM, y","d MMM, y","d/M/yy"]),t.s) +B.YH=A.a(s(["HH:mm:ss, zzzz","HH:mm:ss z","HH:mm:ss","HH:mm"]),t.s) +B.YI=A.a(s(["\u12d3/\u12d3","\u12d3/\u121d"]),t.s) +B.vk=A.a(s(["P\xfchap\xe4ev","Esmasp\xe4ev","Teisip\xe4ev","Kolmap\xe4ev","Neljap\xe4ev","Reede","Laup\xe4ev"]),t.s) +B.vl=A.a(s(["ianuarie","februarie","martie","aprilie","mai","iunie","iulie","august","septembrie","octombrie","noiembrie","decembrie"]),t.s) +B.jH=A.a(s(["1.\xba trimestre","2.\xba trimestre","3.\xba trimestre","4.\xba trimestre"]),t.s) +B.vm=A.a(s(["EEEE d. MMMM y","d. MMMM y","d. MMM y","dd.MM.y"]),t.s) +B.vn=A.a(s([0,4,12,1,5,13,3,7,15]),t.t) +B.vo=A.a(s(["\u0930\u0935\u093f\u0935\u093e\u0930","\u0938\u094b\u092e\u0935\u093e\u0930","\u092e\u0902\u0917\u0933\u0935\u093e\u0930","\u092c\u0941\u0927\u0935\u093e\u0930","\u0917\u0941\u0930\u0941\u0935\u093e\u0930","\u0936\u0941\u0915\u094d\u0930\u0935\u093e\u0930","\u0936\u0928\u093f\u0935\u093e\u0930"]),t.s) +B.YJ=A.a(s(["Sul","Llun","Maw","Mer","Iau","Gwe","Sad"]),t.s) +B.YK=A.a(s(["\u0441\u0442\u0443","\u043b\u044e\u0442","\u0441\u0430\u043a","\u043a\u0440\u0430","\u043c\u0430\u0439","\u0447\u044d\u0440","\u043b\u0456\u043f","\u0436\u043d\u0456","\u0432\u0435\u0440","\u043a\u0430\u0441","\u043b\u0456\u0441","\u0441\u043d\u0435"]),t.s) +B.YL=A.a(s(["CC","OC"]),t.s) +B.YM=A.a(s(["pointerdown","pointermove","pointerleave","pointerup","pointercancel","touchstart","touchend","touchmove","touchcancel","mousedown","mousemove","mouseleave","mouseup","keyup","keydown"]),t.s) +B.vp=A.a(s(["gen","feb","mar","apr","mag","giu","lug","ago","set","ott","nov","dic"]),t.s) +B.YN=A.a(s(["\u062c\u0646\u0648\u0631\u064a","\u0641\u06d0\u0628\u0631\u0648\u0631\u064a","\u0645\u0627\u0631\u0686","\u0627\u067e\u0631\u06cc\u0644","\u0645\u06cd","\u062c\u0648\u0646","\u062c\u0648\u0644\u0627\u06cc","\u0627\u06ab\u0633\u062a","\u0633\u067e\u062a\u0645\u0628\u0631","\u0627\u06a9\u062a\u0648\u0628\u0631","\u0646\u0648\u0645\u0628\u0631","\u062f\u0633\u0645\u0628\u0631"]),t.s) +B.vq=A.a(s(["\u0d89\u0dbb\u0dd2\u0daf\u0dcf","\u0dc3\u0db3\u0dd4\u0daf\u0dcf","\u0d85\u0d9f\u0dc4\u0dbb\u0dd4\u0dc0\u0dcf\u0daf\u0dcf","\u0db6\u0daf\u0dcf\u0daf\u0dcf","\u0db6\u0dca\u200d\u0dbb\u0dc4\u0dc3\u0dca\u0db4\u0dad\u0dd2\u0db1\u0dca\u0daf\u0dcf","\u0dc3\u0dd2\u0d9a\u0dd4\u0dbb\u0dcf\u0daf\u0dcf","\u0dc3\u0dd9\u0db1\u0dc3\u0dd4\u0dbb\u0dcf\u0daf\u0dcf"]),t.s) +B.vr=A.a(s(["sun.","m\xe1n.","\xferi.","mi\xf0.","fim.","f\xf6s.","lau."]),t.s) +B.YP=A.a(s(["y-'\u0436'., d-MMMM, EEEE","y-'\u0436'., d-MMMM","y-'\u0436'., d-MMM","d/M/yy"]),t.s) +B.YO=A.a(s(["\u0698\u0627\u0646\u0648\u06cc\u0647\u0654","\u0641\u0648\u0631\u06cc\u0647\u0654","\u0645\u0627\u0631\u0633","\u0622\u0648\u0631\u06cc\u0644","\u0645\u0647\u0654","\u0698\u0648\u0626\u0646","\u0698\u0648\u0626\u06cc\u0647\u0654","\u0627\u0648\u062a","\u0633\u067e\u062a\u0627\u0645\u0628\u0631","\u0627\u06a9\u062a\u0628\u0631","\u0646\u0648\u0627\u0645\u0628\u0631","\u062f\u0633\u0627\u0645\u0628\u0631"]),t.s) +B.YQ=A.a(s(["\xc71","\xc72","\xc73","\xc74"]),t.s) +B.YR=A.a(s(["sausio","vasario","kovo","baland\u017eio","gegu\u017e\u0117s","bir\u017eelio","liepos","rugpj\u016b\u010dio","rugs\u0117jo","spalio","lapkri\u010dio","gruod\u017eio"]),t.s) +B.YS=A.a(s(["H\u6642mm\u5206ss\u79d2 zzzz","H:mm:ss z","H:mm:ss","H:mm"]),t.s) +B.YT=A.a(s(["Ch1","Ch2","Ch3","Ch4"]),t.s) +B.vs=A.a(s(["E","P","M","A","M","Hun","Hul","Ago","Set","Okt","Nob","Dis"]),t.s) +B.vt=A.a(s(["\u0b9e\u0bbe\u0baf\u0bbf\u0bb1\u0bc1","\u0ba4\u0bbf\u0b99\u0bcd\u0b95\u0bb3\u0bcd","\u0b9a\u0bc6\u0bb5\u0bcd\u0bb5\u0bbe\u0baf\u0bcd","\u0baa\u0bc1\u0ba4\u0ba9\u0bcd","\u0bb5\u0bbf\u0baf\u0bbe\u0bb4\u0ba9\u0bcd","\u0bb5\u0bc6\u0bb3\u0bcd\u0bb3\u0bbf","\u0b9a\u0ba9\u0bbf"]),t.s) +B.YV=A.a(s(["cccc d. MMMM y","d. MMMM y","d.M.y","d.M.y"]),t.s) +B.YW=A.a(s(["I kw.","II kw.","III kw.","IV kw."]),t.s) +B.vu=A.a(s(["nedelja","ponedeljak","utorak","sreda","\u010detvrtak","petak","subota"]),t.s) +B.YX=A.a(s(["\u0431.\u0437.\u0447.","\u0431.\u0437."]),t.s) +B.fB=new A.fc(0,"defaultNavigation") +B.om=new A.fc(1,"lShaped") +B.on=new A.fc(2,"rightAndLeft") +B.oo=new A.fc(3,"edge") +B.op=new A.fc(4,"kindlish") +B.er=new A.fc(5,"disabled") +B.nl=A.a(s([B.fB,B.om,B.on,B.oo,B.op,B.er]),A.ah("G")) +B.YY=A.a(s(["a h:mm:ss zzzz","a h:mm:ss z","a h:mm:ss","a h:mm"]),t.s) +B.vv=A.a(s(["pr. Kr.","po Kr."]),t.s) +B.YZ=A.a(s(["\u0bae\u0bc1\u0bb1\u0bcd\u0baa\u0b95\u0bb2\u0bcd","\u0baa\u0bbf\u0bb1\u0bcd\u0baa\u0b95\u0bb2\u0bcd"]),t.s) +B.jI=A.a(s(["\u091c\u0928\u0935\u0930\u0940","\u092b\u0947\u092c\u094d\u0930\u0941\u0905\u0930\u0940","\u092e\u093e\u0930\u094d\u091a","\u0905\u092a\u094d\u0930\u093f\u0932","\u092e\u0947","\u091c\u0941\u0928","\u091c\u0941\u0932\u093e\u0908","\u0905\u0917\u0938\u094d\u091f","\u0938\u0947\u092a\u094d\u091f\u0947\u092e\u094d\u092c\u0930","\u0905\u0915\u094d\u091f\u094b\u092c\u0930","\u0928\u094b\u092d\u0947\u092e\u094d\u092c\u0930","\u0921\u093f\u0938\u0947\u092e\u094d\u092c\u0930"]),t.s) +B.Z0=A.a(s(["1\u0c35 \u0c24\u0c4d\u0c30\u0c48\u0c2e\u0c3e\u0c38\u0c3f\u0c15\u0c02","2\u0c35 \u0c24\u0c4d\u0c30\u0c48\u0c2e\u0c3e\u0c38\u0c3f\u0c15\u0c02","3\u0c35 \u0c24\u0c4d\u0c30\u0c48\u0c2e\u0c3e\u0c38\u0c3f\u0c15\u0c02","4\u0c35 \u0c24\u0c4d\u0c30\u0c48\u0c2e\u0c3e\u0c38\u0c3f\u0c15\u0c02"]),t.s) +B.Z_=A.a(s(["sunnuntaina","maanantaina","tiistaina","keskiviikkona","torstaina","perjantaina","lauantaina"]),t.s) +B.vw=A.a(s(["\u09b0\u09ac\u09bf","\u09b8\u09cb\u09ae","\u09ae\u0999\u09cd\u0997\u09b2","\u09ac\u09c1\u09a7","\u09ac\u09c3\u09b9\u09b8\u09cd\u09aa\u09a4\u09bf","\u09b6\u09c1\u0995\u09cd\u09b0","\u09b6\u09a8\u09bf"]),t.s) +B.Z1=A.a(s(["H.mm.ss zzzz","H.mm.ss z","H.mm.ss","H.mm"]),t.s) +B.vx=A.a(s(["Dydd Sul","Dydd Llun","Dydd Mawrth","Dydd Mercher","Dydd Iau","Dydd Gwener","Dydd Sadwrn"]),t.s) +B.Z3=A.a(s(["Xan.","Feb.","Mar.","Abr.","Maio","Xu\xf1o","Xul.","Ago.","Set.","Out.","Nov.","Dec."]),t.s) +B.Z4=A.a(s(["1. \u0442\u0440\u0438\u043c\u0435\u0441\u0435\u0447\u0438\u0435","2. \u0442\u0440\u0438\u043c\u0435\u0441\u0435\u0447\u0438\u0435","3. \u0442\u0440\u0438\u043c\u0435\u0441\u0435\u0447\u0438\u0435","4. \u0442\u0440\u0438\u043c\u0435\u0441\u0435\u0447\u0438\u0435"]),t.s) +B.aU=A.a(s(["January","February","March","April","May","June","July","August","September","October","November","December"]),t.s) +B.Z5=A.a(s(["\u0434\u0430 \u043d\u0430\u0440\u0430\u0434\u0436\u044d\u043d\u043d\u044f \u0425\u0440\u044b\u0441\u0442\u043e\u0432\u0430","\u0430\u0434 \u043d\u0430\u0440\u0430\u0434\u0436\u044d\u043d\u043d\u044f \u0425\u0440\u044b\u0441\u0442\u043e\u0432\u0430"]),t.s) +B.hu=A.a(s(["1. kvartal","2. kvartal","3. kvartal","4. kvartal"]),t.s) +B.fa=A.a(s(["Ene","Peb","Mar","Abr","May","Hun","Hul","Ago","Set","Okt","Nob","Dis"]),t.s) +B.vy=A.a(s(["HH:mm:ss (zzzz)","HH:mm:ss (z)","HH:mm:ss","HH:mm"]),t.s) +B.a1=A.a(s(["HH:mm:ss zzzz","HH:mm:ss z","HH:mm:ss","HH:mm"]),t.s) +B.vz=A.a(s(["\u10d8\u10d0\u10dc\u10d5\u10d0\u10e0\u10d8","\u10d7\u10d4\u10d1\u10d4\u10e0\u10d5\u10d0\u10da\u10d8","\u10db\u10d0\u10e0\u10e2\u10d8","\u10d0\u10de\u10e0\u10d8\u10da\u10d8","\u10db\u10d0\u10d8\u10e1\u10d8","\u10d8\u10d5\u10dc\u10d8\u10e1\u10d8","\u10d8\u10d5\u10da\u10d8\u10e1\u10d8","\u10d0\u10d2\u10d5\u10d8\u10e1\u10e2\u10dd","\u10e1\u10d4\u10e5\u10e2\u10d4\u10db\u10d1\u10d4\u10e0\u10d8","\u10dd\u10e5\u10e2\u10dd\u10db\u10d1\u10d4\u10e0\u10d8","\u10dc\u10dd\u10d4\u10db\u10d1\u10d4\u10e0\u10d8","\u10d3\u10d4\u10d9\u10d4\u10db\u10d1\u10d4\u10e0\u10d8"]),t.s) +B.Za=A.a(s(["y '\u0436'. d MMMM, EEEE","y '\u0436'. d MMMM","y '\u0436'. dd MMM","dd.MM.yy"]),t.s) +B.Zb=A.a(s(["EEEE, d MMMM y","d MMMM y","d MMM y","d.MM.y"]),t.s) +B.Zc=A.a(s(["thg 1","thg 2","thg 3","thg 4","thg 5","thg 6","thg 7","thg 8","thg 9","thg 10","thg 11","thg 12"]),t.s) +B.Ze=A.a(s(["f.h.","e.h."]),t.s) +B.Zd=A.a(s(["1-\u0448\u044b \u043a\u0432.","2-\u0433\u0456 \u043a\u0432.","3-\u0446\u0456 \u043a\u0432.","4-\u0442\u044b \u043a\u0432."]),t.s) +B.jJ=A.a(s(["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"]),t.s) +B.Zf=A.a(s(["1-\u056b\u0576 \u0565\u057c\u0574\u057d.","2-\u0580\u0564 \u0565\u057c\u0574\u057d.","3-\u0580\u0564 \u0565\u057c\u0574\u057d.","4-\u0580\u0564 \u0565\u057c\u0574\u057d."]),t.s) +B.vA=A.a(s(["\u0e2d\u0e32","\u0e08","\u0e2d","\u0e1e","\u0e1e\u0e24","\u0e28","\u0e2a"]),t.s) +B.Zg=A.a(s(["{1} \u0915\u094b {0}","{1} \u0915\u094b {0}","{1}, {0}","{1}, {0}"]),t.s) +B.vB=A.a(s(["Ahad","Isnin","Selasa","Rabu","Khamis","Jumaat","Sabtu"]),t.s) +B.vC=A.a(s(["\u0432\u043e\u0441\u043a\u0440\u0435\u0441\u0435\u043d\u044c\u0435","\u043f\u043e\u043d\u0435\u0434\u0435\u043b\u044c\u043d\u0438\u043a","\u0432\u0442\u043e\u0440\u043d\u0438\u043a","\u0441\u0440\u0435\u0434\u0430","\u0447\u0435\u0442\u0432\u0435\u0440\u0433","\u043f\u044f\u0442\u043d\u0438\u0446\u0430","\u0441\u0443\u0431\u0431\u043e\u0442\u0430"]),t.s) +B.vD=A.a(s(["duminic\u0103","luni","mar\u021bi","miercuri","joi","vineri","s\xe2mb\u0103t\u0103"]),t.s) +B.vE=A.a(s(["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des"]),t.s) +B.Zh=A.a(s(["\u0d1e\u0d3e\u0d2f\u0d31\u0d3e\u0d34\u0d4d\u200c\u0d1a","\u0d24\u0d3f\u0d19\u0d4d\u0d15\u0d33\u0d3e\u0d34\u0d4d\u200c\u0d1a","\u0d1a\u0d4a\u0d35\u0d4d\u0d35\u0d3e\u0d34\u0d4d\u0d1a","\u0d2c\u0d41\u0d27\u0d28\u0d3e\u0d34\u0d4d\u200c\u0d1a","\u0d35\u0d4d\u0d2f\u0d3e\u0d34\u0d3e\u0d34\u0d4d\u200c\u0d1a","\u0d35\u0d46\u0d33\u0d4d\u0d33\u0d3f\u0d2f\u0d3e\u0d34\u0d4d\u200c\u0d1a","\u0d36\u0d28\u0d3f\u0d2f\u0d3e\u0d34\u0d4d\u200c\u0d1a"]),t.s) +B.vF=A.a(s(["igandea","astelehena","asteartea","asteazkena","osteguna","ostirala","larunbata"]),t.s) +B.jK=A.a(s(["janeiro","fevereiro","mar\xe7o","abril","maio","junho","julho","agosto","setembro","outubro","novembro","dezembro"]),t.s) +B.vG=A.a(s(["\u0b1c\u0b3e","\u0b2b\u0b47","\u0b2e\u0b3e","\u0b05","\u0b2e\u0b07","\u0b1c\u0b41","\u0b1c\u0b41","\u0b05","\u0b38\u0b47","\u0b05","\u0b28","\u0b21\u0b3f"]),t.s) +B.vH=A.a(s(["S","V","K","B","G","B","L","R","R","S","L","G"]),t.s) +B.Zi=A.a(s(["F1","F2","F3","F4"]),t.s) +B.Zj=A.a(s(["y- MMMM d- EEEE","y- MMMM d","y- MMM d","dd-MM-yy"]),t.s) +B.cd=A.a(s([1667483301,2088564868,2004348569,2071721613,4076011277,1802229437,1869602481,3318059348,808476752,16843267,1734856361,724260477,4278118169,3621238114,2880130534,1987505306,3402272581,2189565853,3385428288,2105408135,4210749205,1499050731,1195871945,4042324747,2913812972,3570709351,2728550397,2947499498,2627478463,2762232823,1920132246,3233848155,3082253762,4261273884,2475900334,640044138,909536346,1061125697,4160222466,3435955023,875849820,2779075060,3857043764,4059166984,1903288979,3638078323,825320019,353708607,67373068,3351745874,589514341,3284376926,404238376,2526427041,84216335,2593796021,117902857,303178806,2155879323,3806519101,3958099238,656887401,2998042573,1970662047,151589403,2206408094,741103732,437924910,454768173,1852759218,1515893998,2694863867,1381147894,993752653,3604395873,3014884814,690573947,3823361342,791633521,2223248279,1397991157,3520182632,0,3991781676,538984544,4244431647,2981198280,1532737261,1785386174,3419114822,3200149465,960066123,1246401758,1280088276,1482207464,3486483786,3503340395,4025468202,2863288293,4227591446,1128498885,1296931543,859006549,2240090516,1162185423,4193904912,33686534,2139094657,1347461360,1010595908,2678007226,2829601763,1364304627,2745392638,1077969088,2408514954,2459058093,2644320700,943222856,4126535940,3166462943,3065411521,3671764853,555827811,269492272,4294960410,4092853518,3537026925,3452797260,202119188,320022069,3974939439,1600110305,2543269282,1145342156,387395129,3301217111,2812761586,2122251394,1027439175,1684326572,1566423783,421081643,1936975509,1616953504,2172721560,1330618065,3705447295,572671078,707417214,2425371563,2290617219,1179028682,4008625961,3099093971,336865340,3739133817,1583267042,185275933,3688607094,3772832571,842163286,976909390,168432670,1229558491,101059594,606357612,1549580516,3267534685,3553869166,2896970735,1650640038,2442213800,2509582756,3840201527,2038035083,3890730290,3368586051,926379609,1835915959,2374828428,3587551588,1313774802,2846444e3,1819072692,1448520954,4109693703,3941256997,1701169839,2054878350,2930657257,134746136,3132780501,2021191816,623200879,774790258,471611428,2795919345,3031724999,3334903633,3907570467,3722289532,1953818780,522141217,1263245021,3183305180,2341145990,2324303749,1886445712,1044282434,3048567236,1718013098,1212715224,50529797,4143380225,235805714,1633796771,892693087,1465364217,3115936208,2256934801,3250690392,488454695,2661164985,3789674808,4177062675,2560109491,286335539,1768542907,3654920560,2391672713,2492740519,2610638262,505297954,2273777042,3924412704,3469641545,1431677695,673730680,3755976058,2357986191,2711706104,2307459456,218962455,3216991706,3873888049,1111655622,1751699640,1094812355,2576951728,757946999,252648977,2964356043,1414834428,3149622742,370551866]),t.t) +B.Zk=A.a(s(["\u043f\u0440\u0432\u0438 \u043a\u0432\u0430\u0440\u0442\u0430\u043b","\u0434\u0440\u0443\u0433\u0438 \u043a\u0432\u0430\u0440\u0442\u0430\u043b","\u0442\u0440\u0435\u045b\u0438 \u043a\u0432\u0430\u0440\u0442\u0430\u043b","\u0447\u0435\u0442\u0432\u0440\u0442\u0438 \u043a\u0432\u0430\u0440\u0442\u0430\u043b"]),t.s) +B.jL=A.a(s(["D","S","T","Q","Q","S","S"]),t.s) +B.vI=A.a(s(["\u0540","\u0553","\u0544","\u0531","\u0544","\u0540","\u0540","\u0555","\u054d","\u0540","\u0546","\u0534"]),t.s) +B.vJ=A.a(s(["S.M.","TM"]),t.s) +B.Zl=A.a(s(["\u0996\u09cd\u09f0\u09c0\u0983 \u09aa\u09c2\u0983","\u0996\u09cd\u09f0\u09c0\u0983"]),t.s) +B.vK=A.a(s(["N","P","\xda","S","\u010c","P","S"]),t.s) +B.fb=A.a(s(["s\xf8ndag","mandag","tirsdag","onsdag","torsdag","fredag","l\xf8rdag"]),t.s) +B.Zm=A.a(s(["{1} \u05d1\u05e9\u05e2\u05d4 {0}","{1} \u05d1\u05e9\u05e2\u05d4 {0}","{1}, {0}","{1}, {0}"]),t.s) +B.Zn=A.a(s(["\u09aa\u09cd\u09f0\u09a5\u09ae \u09a4\u09bf\u09a8\u09bf\u09ae\u09be\u09b9","\u09a6\u09cd\u09ac\u09bf\u09a4\u09c0\u09af\u09bc \u09a4\u09bf\u09a8\u09bf\u09ae\u09be\u09b9","\u09a4\u09c3\u09a4\u09c0\u09af\u09bc \u09a4\u09bf\u09a8\u09bf\u09ae\u09be\u09b9","\u099a\u09a4\u09c1\u09f0\u09cd\u09a5 \u09a4\u09bf\u09a8\u09bf\u09ae\u09be\u09b9"]),t.s) +B.jM=A.a(s(["\u0b1c\u0b3e\u0b28\u0b41\u0b06\u0b30\u0b40","\u0b2b\u0b47\u0b2c\u0b43\u0b06\u0b30\u0b40","\u0b2e\u0b3e\u0b30\u0b4d\u0b1a\u0b4d\u0b1a","\u0b05\u0b2a\u0b4d\u0b30\u0b47\u0b32","\u0b2e\u0b07","\u0b1c\u0b41\u0b28","\u0b1c\u0b41\u0b32\u0b3e\u0b07","\u0b05\u0b17\u0b37\u0b4d\u0b1f","\u0b38\u0b47\u0b2a\u0b4d\u0b1f\u0b47\u0b2e\u0b4d\u0b2c\u0b30","\u0b05\u0b15\u0b4d\u0b1f\u0b4b\u0b2c\u0b30","\u0b28\u0b2d\u0b47\u0b2e\u0b4d\u0b2c\u0b30","\u0b21\u0b3f\u0b38\u0b47\u0b2e\u0b4d\u0b2c\u0b30"]),t.s) +B.vL=A.a(s(["\u0ab0\u0ab5\u0abf","\u0ab8\u0acb\u0aae","\u0aae\u0a82\u0a97\u0ab3","\u0aac\u0ac1\u0aa7","\u0a97\u0ac1\u0ab0\u0ac1","\u0ab6\u0ac1\u0a95\u0acd\u0ab0","\u0ab6\u0aa8\u0abf"]),t.s) +B.Zo=A.a(s(["EEEE, d. MMMM y","d. MMMM y","d. MMM y","dd.MM.yy"]),t.s) +B.Zp=A.a(s(["\u0e81\u0ec8\u0ead\u0e99\u0e84\u0ea3\u0eb4\u0e94\u0eaa\u0eb1\u0e81\u0e81\u0eb0\u0ea5\u0eb2\u0e94","\u0e84\u0ea3\u0eb4\u0e94\u0eaa\u0eb1\u0e81\u0e81\u0eb0\u0ea5\u0eb2\u0e94"]),t.s) +B.vM=A.a(s([0,0,0,0,1,0,0,0,0,1,0,0,0,0,1,0,0,0,1,0]),t.up) +B.Zq=A.a(s(["\u0633\u0647\u200c\u0645\u0627\u0647\u0647\u0654 \u0627\u0648\u0644","\u0633\u0647\u200c\u0645\u0627\u0647\u0647\u0654 \u062f\u0648\u0645","\u0633\u0647\u200c\u0645\u0627\u0647\u0647\u0654 \u0633\u0648\u0645","\u0633\u0647\u200c\u0645\u0627\u0647\u0647\u0654 \u0686\u0647\u0627\u0631\u0645"]),t.s) +B.Zs=A.a(s(["\u10eb\u10d5\u10d4\u10da\u10d8 \u10ec\u10d4\u10da\u10d7\u10d0\u10e6\u10e0\u10d8\u10ea\u10ee\u10d5\u10d8\u10d7","\u10d0\u10ee\u10d0\u10da\u10d8 \u10ec\u10d4\u10da\u10d7\u10d0\u10e6\u10e0\u10d8\u10ea\u10ee\u10d5\u10d8\u10d7"]),t.s) +B.vN=A.a(s(["U","O","M","A","M","E","U","A","I","U","A","A"]),t.s) +B.vO=A.a(s(["\u17a2\u17b6\u1791\u17b7\u178f\u17d2\u1799","\u1785\u1793\u17d2\u1791","\u17a2\u1784\u17d2\u1782\u17b6\u179a","\u1796\u17bb\u1792","\u1796\u17d2\u179a\u17a0","\u179f\u17bb\u1780\u17d2\u179a","\u179f\u17c5\u179a\u17cd"]),t.s) +B.vP=A.a(s(["Jan.","Feb.","M\xe4rz","Apr.","Mai","Juni","Juli","Aug.","Sept.","Okt.","Nov.","Dez."]),t.s) +B.Zt=A.a(s(["\u7b2c\u4e00\u5b63\u5ea6","\u7b2c\u4e8c\u5b63\u5ea6","\u7b2c\u4e09\u5b63\u5ea6","\u7b2c\u56db\u5b63\u5ea6"]),t.s) +B.Zu=A.a(s(["sije\u010danj","velja\u010da","o\u017eujak","travanj","svibanj","lipanj","srpanj","kolovoz","rujan","listopad","studeni","prosinac"]),t.s) +B.vQ=A.a(s(["janu\xe1r","febru\xe1r","m\xe1rcius","\xe1prilis","m\xe1jus","j\xfanius","j\xfalius","augusztus","szeptember","okt\xf3ber","november","december"]),t.s) +B.Zv=A.a(s(["\u0434\u043e \u043d. \u0435.","\u043d. \u0435."]),t.s) +B.vR=A.a(s(["\u09a4\u09cd\u09b0\u09c8\u09ae\u09be\u09b8\u09bf\u0995","\u09a6\u09cd\u09ac\u09bf\u09a4\u09c0\u09af\u09bc \u09a4\u09cd\u09b0\u09c8\u09ae\u09be\u09b8\u09bf\u0995","\u09a4\u09c3\u09a4\u09c0\u09af\u09bc \u09a4\u09cd\u09b0\u09c8\u09ae\u09be\u09b8\u09bf\u0995","\u099a\u09a4\u09c1\u09b0\u09cd\u09a5 \u09a4\u09cd\u09b0\u09c8\u09ae\u09be\u09b8\u09bf\u0995"]),t.s) +B.Zw=A.a(s(["\u0411\u0456\u0437\u0434\u0456\u04a3 \u0437\u0430\u043c\u0430\u043d\u044b\u043c\u044b\u0437\u0493\u0430 \u0434\u0435\u0439\u0456\u043d","\u0431\u0456\u0437\u0434\u0456\u04a3 \u0437\u0430\u043c\u0430\u043d\u044b\u043c\u044b\u0437"]),t.s) +B.Zx=A.a(s(["\u0642\u0628\u0644 \u0627\u0644\u0645\u064a\u0644\u0627\u062f","\u0645\u064a\u0644\u0627\u062f\u064a"]),t.s) +B.Zy=A.a(s(["xaneiro","febreiro","marzo","abril","maio","xu\xf1o","xullo","agosto","setembro","outubro","novembro","decembro"]),t.s) +B.vS=A.a(s(["\u0436\u0435\u043a.","\u0434\u04af\u0439.","\u0448\u0435\u0439\u0448.","\u0448\u0430\u0440\u0448.","\u0431\u0435\u0439\u0448.","\u0436\u0443\u043c\u0430","\u0438\u0448\u043c."]),t.s) +B.Zz=A.a(s(["\u0421","\u041b","\u0411","\u041a","\u0422","\u0427","\u041b","\u0421","\u0412","\u0416","\u041b","\u0413"]),t.s) +B.ZA=A.a(s(["{1} \u1793\u17c5\u200b\u1798\u17c9\u17c4\u1784 {0}","{1} \u1793\u17c5\u200b\u1798\u17c9\u17c4\u1784 {0}","{1}, {0}","{1}, {0}"]),t.s) +B.vT=A.a(s(["Ch\u1ee7 Nh\u1eadt","Th\u1ee9 Hai","Th\u1ee9 Ba","Th\u1ee9 T\u01b0","Th\u1ee9 N\u0103m","Th\u1ee9 S\xe1u","Th\u1ee9 B\u1ea3y"]),t.s) +B.ZB=A.a(s(["\u099c\u09be\u09a8\u09c1","\u09ab\u09c7\u09ac","\u09ae\u09be\u09b0\u09cd\u099a","\u098f\u09aa\u09cd\u09b0\u09bf\u09b2","\u09ae\u09c7","\u099c\u09c1\u09a8","\u099c\u09c1\u09b2\u09be\u0987","\u0986\u0997\u09b8\u09cd\u099f","\u09b8\u09c7\u09aa\u09cd\u099f\u09c7\u09ae\u09cd\u09ac\u09b0","\u0985\u0995\u09cd\u099f\u09cb\u09ac\u09b0","\u09a8\u09ad\u09c7\u09ae\u09cd\u09ac\u09b0","\u09a1\u09bf\u09b8\u09c7\u09ae\u09cd\u09ac\u09b0"]),t.s) +B.vU=A.a(s(["Minggu","Senin","Selasa","Rabu","Kamis","Jumat","Sabtu"]),t.s) +B.vV=A.a(s(["\u0da2\u0db1\u0dc0\u0dcf\u0dbb\u0dd2","\u0db4\u0dd9\u0db6\u0dbb\u0dc0\u0dcf\u0dbb\u0dd2","\u0db8\u0dcf\u0dbb\u0dca\u0dad\u0dd4","\u0d85\u0db4\u0dca\u200d\u0dbb\u0dda\u0dbd\u0dca","\u0db8\u0dd0\u0dba\u0dd2","\u0da2\u0dd6\u0db1\u0dd2","\u0da2\u0dd6\u0dbd\u0dd2","\u0d85\u0d9c\u0ddd\u0dc3\u0dca\u0dad\u0dd4","\u0dc3\u0dd0\u0db4\u0dca\u0dad\u0dd0\u0db8\u0dca\u0db6\u0dbb\u0dca","\u0d94\u0d9a\u0dca\u0dad\u0ddd\u0db6\u0dbb\u0dca","\u0db1\u0ddc\u0dc0\u0dd0\u0db8\u0dca\u0db6\u0dbb\u0dca","\u0daf\u0dd9\u0dc3\u0dd0\u0db8\u0dca\u0db6\u0dbb\u0dca"]),t.s) +B.ZC=A.a(s(["\u0ca4\u0ccd\u0cb0\u0cc8 1","\u0ca4\u0ccd\u0cb0\u0cc8 2","\u0ca4\u0ccd\u0cb0\u0cc8 3","\u0ca4\u0ccd\u0cb0\u0cc8 4"]),t.s) +B.vW=A.a(s(["\u0ea1.\u0e81.","\u0e81.\u0e9e.","\u0ea1.\u0e99.","\u0ea1.\u0eaa.","\u0e9e.\u0e9e.","\u0ea1\u0eb4.\u0e96.","\u0e81.\u0ea5.","\u0eaa.\u0eab.","\u0e81.\u0e8d.","\u0e95.\u0ea5.","\u0e9e.\u0e88.","\u0e97.\u0ea7."]),t.s) +B.vX=A.a(s(["j","sh","m","p","m","q","k","g","sh","t","n","dh"]),t.s) +B.dF=A.a(s(["dom","lun","mar","mi\xe9","jue","vie","s\xe1b"]),t.s) +B.vY=A.a(s(["I","A","A","A","O","O","L"]),t.s) +B.ZD=A.a(s(["\u091c\u0928","\u092b\u0947\u0947\u092c","\u092e\u093e\u0930\u094d\u091a","\u0905\u092a\u094d\u0930","\u092e\u0947","\u091c\u0941\u0928","\u091c\u0941\u0932","\u0905\u0917","\u0938\u0947\u092a","\u0905\u0915\u094d\u091f\u094b","\u0928\u094b\u092d\u0947","\u0921\u093f\u0938\u0947"]),t.s) +B.vZ=A.a(s(["\u053f","\u0535","\u0535","\u0549","\u0540","\u0548","\u0547"]),t.s) +B.ZE=A.a(s(["{1} \u0a8f {0} \u0ab5\u0abe\u0a97\u0acd\u0aaf\u0ac7","{1} \u0a8f {0} \u0ab5\u0abe\u0a97\u0acd\u0aaf\u0ac7","{1} {0}","{1} {0}"]),t.s) +B.ZF=A.a(s(["\u092a\u094d\u0930\u0925\u092e \u0924\u093f\u092e\u093e\u0939\u0940","\u0926\u094d\u0935\u093f\u0924\u0940\u092f \u0924\u093f\u092e\u093e\u0939\u0940","\u0924\u0943\u0924\u0940\u092f \u0924\u093f\u092e\u093e\u0939\u0940","\u091a\u0924\u0941\u0930\u094d\u0925 \u0924\u093f\u092e\u093e\u0939\u0940"]),t.s) +B.ZG=A.a(s(["tammikuuta","helmikuuta","maaliskuuta","huhtikuuta","toukokuuta","kes\xe4kuuta","hein\xe4kuuta","elokuuta","syyskuuta","lokakuuta","marraskuuta","joulukuuta"]),t.s) +B.w_=A.a(s(["p. n. e.","n. e."]),t.s) +B.w0=A.a(s(["\u0b9c\u0ba9\u0bb5\u0bb0\u0bbf","\u0baa\u0bbf\u0baa\u0bcd\u0bb0\u0bb5\u0bb0\u0bbf","\u0bae\u0bbe\u0bb0\u0bcd\u0b9a\u0bcd","\u0b8f\u0baa\u0bcd\u0bb0\u0bb2\u0bcd","\u0bae\u0bc7","\u0b9c\u0bc2\u0ba9\u0bcd","\u0b9c\u0bc2\u0bb2\u0bc8","\u0b86\u0b95\u0bb8\u0bcd\u0b9f\u0bcd","\u0b9a\u0bc6\u0baa\u0bcd\u0b9f\u0bae\u0bcd\u0baa\u0bb0\u0bcd","\u0b85\u0b95\u0bcd\u0b9f\u0bcb\u0baa\u0bb0\u0bcd","\u0ba8\u0bb5\u0bae\u0bcd\u0baa\u0bb0\u0bcd","\u0b9f\u0bbf\u0b9a\u0bae\u0bcd\u0baa\u0bb0\u0bcd"]),t.s) +B.ZH=A.a(s(["N","P","W","\u015a","C","P","S"]),t.s) +B.w1=A.a(s(["{1} 'nang' {0}","{1} 'nang' {0}","{1}, {0}","{1}, {0}"]),t.s) +B.ZI=A.a(s(["EEEE, d MMMM y '\u0433'.","d MMMM y '\u0433'.","d MMM y '\u0433'.","dd.MM.y"]),t.s) +B.w2=A.a(s(["\u0d1c","\u0d2b\u0d46","\u0d2e\u0d3e","\u0d0f","\u0d2e\u0d46","\u0d1c\u0d42\u0d7a","\u0d1c\u0d42","\u0d13","\u0d38\u0d46","\u0d12","\u0d28","\u0d21\u0d3f"]),t.s) +B.ZJ=A.a(s(["\u0ec4\u0e95\u0ea3\u0ea1\u0eb2\u0e94 1","\u0ec4\u0e95\u0ea3\u0ea1\u0eb2\u0e94 2","\u0ec4\u0e95\u0ea3\u0ea1\u0eb2\u0e94 3","\u0ec4\u0e95\u0ea3\u0ea1\u0eb2\u0e94 4"]),t.s) +B.ZK=A.a(s(["EEEE, d MMMM, y","d MMMM, y","d MMM, y","dd/MM/y"]),t.s) +B.jN=A.a(s(["\u65e5","\u6708","\u706b","\u6c34","\u6728","\u91d1","\u571f"]),t.s) +B.ZL=A.a(s(["\u05dc\u05e4\u05e0\u05d4\u05f4\u05e6","\u05d0\u05d7\u05d4\u05f4\u05e6"]),t.s) +B.ZM=A.a(s(["\u0c15\u0c4d\u0c30\u0c40\u0c38\u0c4d\u0c24\u0c41 \u0c2a\u0c42\u0c30\u0c4d\u0c35\u0c02","\u0c15\u0c4d\u0c30\u0c40\u0c38\u0c4d\u0c24\u0c41 \u0c36\u0c15\u0c02"]),t.s) +B.ZN=A.a(s(["\u0399\u03b1\u03bd\u03bf\u03c5\u03ac\u03c1\u03b9\u03bf\u03c2","\u03a6\u03b5\u03b2\u03c1\u03bf\u03c5\u03ac\u03c1\u03b9\u03bf\u03c2","\u039c\u03ac\u03c1\u03c4\u03b9\u03bf\u03c2","\u0391\u03c0\u03c1\u03af\u03bb\u03b9\u03bf\u03c2","\u039c\u03ac\u03b9\u03bf\u03c2","\u0399\u03bf\u03cd\u03bd\u03b9\u03bf\u03c2","\u0399\u03bf\u03cd\u03bb\u03b9\u03bf\u03c2","\u0391\u03cd\u03b3\u03bf\u03c5\u03c3\u03c4\u03bf\u03c2","\u03a3\u03b5\u03c0\u03c4\u03ad\u03bc\u03b2\u03c1\u03b9\u03bf\u03c2","\u039f\u03ba\u03c4\u03ce\u03b2\u03c1\u03b9\u03bf\u03c2","\u039d\u03bf\u03ad\u03bc\u03b2\u03c1\u03b9\u03bf\u03c2","\u0394\u03b5\u03ba\u03ad\u03bc\u03b2\u03c1\u03b9\u03bf\u03c2"]),t.s) +B.P=A.a(s(["J","F","M","A","M","J","J","A","S","O","N","D"]),t.s) +B.ZO=A.a(s(["\u043f\u0440\u0435 \u043d\u043e\u0432\u0435 \u0435\u0440\u0435","\u043d\u043e\u0432\u0435 \u0435\u0440\u0435"]),t.s) +B.ZQ=A.a(s(["ikota yesi-1","ikota yesi-2","ikota yesi-3","ikota yesi-4"]),t.s) +B.ZP=A.a(s(["\u0d1e\u0d3e","\u0d24\u0d3f","\u0d1a\u0d4a","\u0d2c\u0d41","\u0d35\u0d4d\u0d2f\u0d3e","\u0d35\u0d46","\u0d36"]),t.s) +B.fc=A.a(s(["{1} {0}","{1} {0}","{1}, {0}","{1}, {0}"]),t.s) +B.w3=A.a(s(["\u65e5\u66dc\u65e5","\u6708\u66dc\u65e5","\u706b\u66dc\u65e5","\u6c34\u66dc\u65e5","\u6728\u66dc\u65e5","\u91d1\u66dc\u65e5","\u571f\u66dc\u65e5"]),t.s) +B.ZR=A.a(s(["\u062c\u0646\u0648\u0631\u064a","\u0641\u0628\u0631\u0648\u0631\u064a","\u0645\u0627\u0631\u0686","\u0627\u067e\u0631\u06cc\u0644","\u0645\u06cd","\u062c\u0648\u0646","\u062c\u0648\u0644\u0627\u06cc","\u0627\u06ab\u0633\u062a","\u0633\u067e\u062a\u0645\u0628\u0631","\u0627\u06a9\u062a\u0648\u0628\u0631","\u0646\u0648\u0645\u0628\u0631","\u062f\u0633\u0645\u0628\u0631"]),t.s) +B.nm=A.a(s(["A::href","AREA::href","BLOCKQUOTE::cite","BODY::background","COMMAND::icon","DEL::cite","FORM::action","IMG::src","INPUT::src","INS::cite","Q::cite","VIDEO::poster"]),t.s) +B.eh=A.a(s(["K1","K2","K3","K4"]),t.s) +B.ZS=A.a(s(["ap.","ip."]),t.s) +B.ZT=A.a(s(["Ion","Chwef","Maw","Ebr","Mai","Meh","Gorff","Awst","Medi","Hyd","Tach","Rhag"]),t.s) +B.w4=A.a(s(["CN","Th 2","Th 3","Th 4","Th 5","Th 6","Th 7"]),t.s) +B.ZU=A.a(s(["{1}, 'a' 'les' {0}","{1}, 'a' 'les' {0}","{1}, {0}","{1} {0}"]),t.s) +B.ZV=A.a(s(["KK","BK"]),t.s) +B.w5=A.a(s(["1-\u0439 \u043a\u0432.","2-\u0439 \u043a\u0432.","3-\u0439 \u043a\u0432.","4-\u0439 \u043a\u0432."]),t.s) +B.ZW=A.a(s(["\u0c24\u0c4d\u0c30\u0c481","\u0c24\u0c4d\u0c30\u0c482","\u0c24\u0c4d\u0c30\u0c483","\u0c24\u0c4d\u0c30\u0c484"]),t.s) +B.ZX=A.a(s(["y MMMM d, EEEE","d MMMM y","d MMM y","dd/MM/y"]),t.s) +B.w6=A.a(s(["\u049b\u0430\u04a3.","\u0430\u049b\u043f.","\u043d\u0430\u0443.","\u0441\u04d9\u0443.","\u043c\u0430\u043c.","\u043c\u0430\u0443.","\u0448\u0456\u043b.","\u0442\u0430\u043c.","\u049b\u044b\u0440.","\u049b\u0430\u0437.","\u049b\u0430\u0440.","\u0436\u0435\u043b."]),t.s) +B.ZY=A.a(s(["KV1","KV2","KV3","KV4"]),t.s) +B.ZZ=A.a(s(["\u0caa\u0cc2\u0cb0\u0ccd\u0cb5\u0cbe\u0cb9\u0ccd\u0ca8","\u0c85\u0caa\u0cb0\u0cbe\u0cb9\u0ccd\u0ca8"]),t.s) +B.w7=A.a(s(["\u10d9\u10d5\u10d8\u10e0\u10d0","\u10dd\u10e0\u10e8\u10d0\u10d1\u10d0\u10d7\u10d8","\u10e1\u10d0\u10db\u10e8\u10d0\u10d1\u10d0\u10d7\u10d8","\u10dd\u10d7\u10ee\u10e8\u10d0\u10d1\u10d0\u10d7\u10d8","\u10ee\u10e3\u10d7\u10e8\u10d0\u10d1\u10d0\u10d7\u10d8","\u10de\u10d0\u10e0\u10d0\u10e1\u10d9\u10d4\u10d5\u10d8","\u10e8\u10d0\u10d1\u10d0\u10d7\u10d8"]),t.s) +B.a__=A.a(s(["EEEE, MMMM d, y","MMMM d, y","MMM d, y","y-MM-dd"]),t.s) +B.a_0=A.a(s(["y MMMM d, EEEE","y MMMM d","y MMM d","yy/M/d"]),t.s) +B.a_1=A.a(s(["\u043c\u0430\u043d\u0430\u0439 \u044d\u0440\u0438\u043d\u0438\u0439 \u04e9\u043c\u043d\u04e9\u0445","\u043c\u0430\u043d\u0430\u0439 \u044d\u0440\u0438\u043d\u0438\u0439"]),t.s) +B.a_c=A.a(s(["EEEE, d MMMM y","d MMMM y","d MMM y","dd.MM.y"]),t.s) +B.w8=A.a(s(["7","1","2","3","4","5","6"]),t.s) +B.a_d=A.a(s(["\u0b95\u0bbe\u0bb2\u0bbe.1","\u0b95\u0bbe\u0bb2\u0bbe.2","\u0b95\u0bbe\u0bb2\u0bbe.3","\u0b95\u0bbe\u0bb2\u0bbe.4"]),t.s) +B.a_e=A.a(s(["de gen.","de febr.","de mar\xe7","d\u2019abr.","de maig","de juny","de jul.","d\u2019ag.","de set.","d\u2019oct.","de nov.","de des."]),t.s) +B.a_f=A.a(s(["\u0441","\u043b","\u0431","\u043a","\u0442","\u0447","\u043b","\u0441","\u0432","\u0436","\u043b","\u0433"]),t.s) +B.a_g=A.a(s(["y 'm'. MMMM d 'd'., EEEE","y 'm'. MMMM d 'd'.","y-MM-dd","y-MM-dd"]),t.s) +B.ce=A.a(s([1364240372,2119394625,449029143,982933031,1003187115,535905693,2896910586,1267925987,542505520,2918608246,2291234508,4112862210,1341970405,3319253802,645940277,3046089570,3729349297,627514298,1167593194,1575076094,3271718191,2165502028,2376308550,1808202195,65494927,362126482,3219880557,2514114898,3559752638,1490231668,1227450848,2386872521,1969916354,4101536142,2573942360,668823993,3199619041,4028083592,3378949152,2108963534,1662536415,3850514714,2539664209,1648721747,2984277860,3146034795,4263288961,4187237128,1884842056,2400845125,2491903198,1387788411,2871251827,1927414347,3814166303,1714072405,2986813675,788775605,2258271173,3550808119,821200680,598910399,45771267,3982262806,2318081231,2811409529,4092654087,1319232105,1707996378,114671109,3508494900,3297443494,882725678,2728416755,87220618,2759191542,188345475,1084944224,1577492337,3176206446,1056541217,2520581853,3719169342,1296481766,2444594516,1896177092,74437638,1627329872,421854104,3600279997,2311865152,1735892697,2965193448,126389129,3879230233,2044456648,2705787516,2095648578,4173930116,0,159614592,843640107,514617361,1817080410,4261150478,257308805,1025430958,908540205,174381327,1747035740,2614187099,607792694,212952842,2467293015,3033700078,463376795,2152711616,1638015196,1516850039,471210514,3792353939,3236244128,1011081250,303896347,235605257,4071475083,767142070,348694814,1468340721,2940995445,4005289369,2751291519,4154402305,1555887474,1153776486,1530167035,2339776835,3420243491,3060333805,3093557732,3620396081,1108378979,322970263,2216694214,2239571018,3539484091,2920362745,3345850665,491466654,3706925234,233591430,2010178497,728503987,2845423984,301615252,1193436393,2831453436,2686074864,1457007741,586125363,2277985865,3653357880,2365498058,2553678804,2798617077,2770919034,3659959991,1067761581,753179962,1343066744,1788595295,1415726718,4139914125,2431170776,777975609,2197139395,2680062045,1769771984,1873358293,3484619301,3359349164,279411992,3899548572,3682319163,3439949862,1861490777,3959535514,2208864847,3865407125,2860443391,554225596,4024887317,3134823399,1255028335,3939764639,701922480,833598116,707863359,3325072549,901801634,1949809742,4238789250,3769684112,857069735,4048197636,1106762476,2131644621,389019281,1989006925,1129165039,3428076970,3839820950,2665723345,1276872810,3250069292,1182749029,2634345054,22885772,4201870471,4214112523,3009027431,2454901467,3912455696,1829980118,2592891351,930745505,1502483704,3951639571,3471714217,3073755489,3790464284,2050797895,2623135698,1430221810,410635796,1941911495,1407897079,1599843069,3742658365,2022103876,3397514159,3107898472,942421028,3261022371,376619805,3154912738,680216892,4282488077,963707304,148812556,3634160820,1687208278,2069988555,3580933682,1215585388,3494008760]),t.t) +B.a_h=A.a(s(["\u0a88.\u0ab8.\u0aaa\u0ac2\u0ab0\u0acd\u0ab5\u0ac7","\u0a88.\u0ab8."]),t.s) +B.a_i=A.a(s(["tammikuu","helmikuu","maaliskuu","huhtikuu","toukokuu","kes\xe4kuu","hein\xe4kuu","elokuu","syyskuu","lokakuu","marraskuu","joulukuu"]),t.s) +B.a4O=new A.d6("en",null,"US") +B.a_j=A.a(s([B.a4O]),t.ss) +B.a_k=A.a(s(["\u0d9a\u0dca\u200d\u0dbb\u0dd2\u0dc3\u0dca\u0dad\u0dd4 \u0db4\u0dd6\u0dbb\u0dca\u0dc0","\u0d9a\u0dca\u200d\u0dbb\u0dd2\u0dc3\u0dca\u0dad\u0dd4 \u0dc0\u0dbb\u0dca\u0dc2"]),t.s) +B.a_l=A.a(s(["EEEE 'den' d. MMMM y","d. MMMM y","d. MMM y","dd.MM.y"]),t.s) +B.a_m=A.a(s(["K.a.","K.o."]),t.s) +B.fd=A.a(s([0,0,24576,1023,65534,34815,65534,18431]),t.t) +B.w9=A.a(s(["\u0a10\u0a24\u0a35\u0a3e\u0a30","\u0a38\u0a4b\u0a2e\u0a35\u0a3e\u0a30","\u0a2e\u0a70\u0a17\u0a32\u0a35\u0a3e\u0a30","\u0a2c\u0a41\u0a71\u0a27\u0a35\u0a3e\u0a30","\u0a35\u0a40\u0a30\u0a35\u0a3e\u0a30","\u0a38\u0a3c\u0a41\u0a71\u0a15\u0a30\u0a35\u0a3e\u0a30","\u0a38\u0a3c\u0a28\u0a3f\u0a71\u0a1a\u0a30\u0a35\u0a3e\u0a30"]),t.s) +B.wa=A.a(s(["EEEE, d MMMM y","d MMMM y","d MMM y","dd/MM/y"]),t.s) +B.a_n=A.a(s(["HEAD","AREA","BASE","BASEFONT","BR","COL","COLGROUP","EMBED","FRAME","FRAMESET","HR","IMAGE","IMG","INPUT","ISINDEX","LINK","META","PARAM","SOURCE","STYLE","TITLE","WBR"]),t.s) +B.wb=A.a(s(["Sunntig","M\xe4\xe4ntig","Ziischtig","Mittwuch","Dunschtig","Friitig","Samschtig"]),t.s) +B.cf=A.a(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.t) +B.a_o=A.a(s(["EEEE, d 'de' MMMM 'de' y","d 'de' MMMM 'de' y","d 'de' MMM 'de' y","dd/MM/yy"]),t.s) +B.a_p=A.a(s(["pre nove ere","nove ere"]),t.s) +B.fe=A.a(s(["v. Chr.","n. Chr."]),t.s) +B.a_q=A.a(s(["\u0908\u0938\u0935\u0940\u0938\u0928\u092a\u0942\u0930\u094d\u0935","\u0908\u0938\u0935\u0940\u0938\u0928"]),t.s) +B.a_r=A.a(s(["\u0441\u0456\u0447\u043d\u044f","\u043b\u044e\u0442\u043e\u0433\u043e","\u0431\u0435\u0440\u0435\u0437\u043d\u044f","\u043a\u0432\u0456\u0442\u043d\u044f","\u0442\u0440\u0430\u0432\u043d\u044f","\u0447\u0435\u0440\u0432\u043d\u044f","\u043b\u0438\u043f\u043d\u044f","\u0441\u0435\u0440\u043f\u043d\u044f","\u0432\u0435\u0440\u0435\u0441\u043d\u044f","\u0436\u043e\u0432\u0442\u043d\u044f","\u043b\u0438\u0441\u0442\u043e\u043f\u0430\u0434\u0430","\u0433\u0440\u0443\u0434\u043d\u044f"]),t.s) +B.wc=A.a(s([0,0,26624,1023,65534,2047,65534,2047]),t.t) +B.a_s=A.a(s(["\u041c\u042d\u04e8","\u041c\u042d"]),t.s) +B.a_u=A.a(s(["1\u0ca8\u0cc7 \u0ca4\u0ccd\u0cb0\u0cc8\u0cae\u0cbe\u0cb8\u0cbf\u0c95","2\u0ca8\u0cc7 \u0ca4\u0ccd\u0cb0\u0cc8\u0cae\u0cbe\u0cb8\u0cbf\u0c95","3\u0ca8\u0cc7 \u0ca4\u0ccd\u0cb0\u0cc8\u0cae\u0cbe\u0cb8\u0cbf\u0c95","4\u0ca8\u0cc7 \u0ca4\u0ccd\u0cb0\u0cc8\u0cae\u0cbe\u0cb8\u0cbf\u0c95"]),t.s) +B.a_t=A.a(s(["EEEE, MMMM d, y","MMMM d, y","MMM d, y","d/M/yy"]),t.s) +B.a_v=A.a(s(["\u044f\u043d\u0432.","\u0444\u0435\u0432.","\u043c\u0430\u0440.","\u0430\u043f\u0440.","\u043c\u0430\u0439","\u0438\u044e\u043d.","\u0438\u044e\u043b.","\u0430\u0432\u0433.","\u0441\u0435\u043d.","\u043e\u043a\u0442.","\u043d\u043e\u044f.","\u0434\u0435\u043a."]),t.s) +B.wd=A.a(s(["I","F","M","A","M","I","I","A","S","O","N","D"]),t.s) +B.a_w=A.a(s(["EEEE, d MMMM y","d MMMM y","d MMM y","d.M.yy"]),t.s) +B.a_x=A.a(s(["1. \u010det.","2. \u010det.","3. \u010det.","4. \u010det."]),t.s) +B.we=A.a(s(["1er trimestre","2e trimestre","3e trimestre","4e trimestre"]),t.s) +B.ay=A.a(s(["S","M","T","W","T","F","S"]),t.s) +B.wf=A.a(s(["janv.","f\xe9vr.","mars","avr.","mai","juin","juill.","ao\xfbt","sept.","oct.","nov.","d\xe9c."]),t.s) +B.a_y=A.a(s(["e paradites","e pasdites"]),t.s) +B.wg=A.a(s(["jan","shk","mar","pri","maj","qer","korr","gush","sht","tet","n\xebn","dhj"]),t.s) +B.anK=new A.rg(0,0) +B.anP=new A.rg(1,0.05) +B.anO=new A.rg(3,0.08) +B.anL=new A.rg(6,0.11) +B.anM=new A.rg(8,0.12) +B.anN=new A.rg(12,0.14) +B.wh=A.a(s([B.anK,B.anP,B.anO,B.anL,B.anM,B.anN]),A.ah("G")) +B.a_z=A.a(s(["\u1001\u101b\u1005\u103a\u1010\u1031\u102c\u103a \u1019\u1015\u1031\u102b\u103a\u1019\u102e\u1014\u103e\u1005\u103a","\u1001\u101b\u1005\u103a\u1014\u103e\u1005\u103a"]),t.s) +B.a_A=A.a(s(["\u0c95\u0ccd\u0cb0\u0cbf\u0cb8\u0ccd\u0ca4 \u0caa\u0cc2\u0cb0\u0ccd\u0cb5","\u0c95\u0ccd\u0cb0\u0cbf\u0cb8\u0ccd\u0ca4 \u0cb6\u0c95"]),t.s) +B.aV=A.a(s(["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]),t.s) +B.wi=A.a(s(["\u0412","\u041f","\u0412","\u0421","\u0427","\u041f","\u0421"]),t.s) +B.jO=A.a(s(["\u064a\u0648\u0646\u06cd","\u062f\u0648\u0646\u06cd","\u062f\u0631\u06d0\u0646\u06cd","\u0685\u0644\u0631\u0646\u06cd","\u067e\u064a\u0646\u0681\u0646\u06cd","\u062c\u0645\u0639\u0647","\u0627\u0648\u0646\u06cd"]),t.s) +B.a_B=A.a(s(["y\u5e74M\u6708d\u65e5EEEE","y\u5e74M\u6708d\u65e5","y/MM/dd","y/MM/dd"]),t.s) +B.a_D=A.a(s(["EEEE d MMMM y","d MMMM y","d MMM y","dd-MM-y"]),t.s) +B.nn=A.a(s(["{1} 'kl'. {0}","{1} 'kl'. {0}","{1}, {0}","{1}, {0}"]),t.s) +B.a_C=A.a(s(["{1}, '\u0432\u043e' {0}","{1}, '\u0432\u043e' {0}","{1}, '\u0432\u043e' {0}","{1}, '\u0432\u043e' {0}"]),t.s) +B.wj=A.a(s(["\u0b9c","\u0baa\u0bbf","\u0bae\u0bbe","\u0b8f","\u0bae\u0bc7","\u0b9c\u0bc2","\u0b9c\u0bc2","\u0b86","\u0b9a\u0bc6","\u0b85","\u0ba8","\u0b9f\u0bbf"]),t.s) +B.wk=A.a(s(["1-\u0440 \u0441\u0430\u0440","2-\u0440 \u0441\u0430\u0440","3-\u0440 \u0441\u0430\u0440","4-\u0440 \u0441\u0430\u0440","5-\u0440 \u0441\u0430\u0440","6-\u0440 \u0441\u0430\u0440","7-\u0440 \u0441\u0430\u0440","8-\u0440 \u0441\u0430\u0440","9-\u0440 \u0441\u0430\u0440","10-\u0440 \u0441\u0430\u0440","11-\u0440 \u0441\u0430\u0440","12-\u0440 \u0441\u0430\u0440"]),t.s) +B.wl=A.a(s(["\u0432\u0441","\u043f\u043d","\u0432\u0442","\u0441\u0440","\u0447\u0442","\u043f\u0442","\u0441\u0431"]),t.s) +B.wm=A.a(s(["D","L","M","X","J","V","S"]),t.s) +B.a_E=A.a(s(["\u0642\u0628\u0644\u200c\u0627\u0632\u0638\u0647\u0631","\u0628\u0639\u062f\u0627\u0632\u0638\u0647\u0631"]),t.s) +B.wn=A.a(s(["s\xf6ndag","m\xe5ndag","tisdag","onsdag","torsdag","fredag","l\xf6rdag"]),t.s) +B.a_F=A.a(s(["\u0441\u0442\u0443","\u043b\u044e\u0442","\u0441\u0430\u043a","\u043a\u0440\u0430","\u043c\u0430\u044f","\u0447\u044d\u0440","\u043b\u0456\u043f","\u0436\u043d\u0456","\u0432\u0435\u0440","\u043a\u0430\u0441","\u043b\u0456\u0441","\u0441\u043d\u0435"]),t.s) +B.a_G=A.a(s(["\u0458\u0430\u043d-\u043c\u0430\u0440","\u0430\u043f\u0440-\u0458\u0443\u043d","\u0458\u0443\u043b-\u0441\u0435\u043f","\u043e\u043a\u0442-\u0434\u0435\u043a"]),t.s) +B.wo=A.a(s(["A","I","S","R","K","J","S"]),t.s) +B.jP=A.a(s(["jan.","fev.","mar.","abr.","mai.","jun.","jul.","ago.","set.","out.","nov.","dez."]),t.s) +B.wp=A.a(s(["\u09a6\u09c7\u0993\u09ac\u09be\u09f0","\u09b8\u09cb\u09ae\u09ac\u09be\u09f0","\u09ae\u0999\u09cd\u0997\u09b2\u09ac\u09be\u09f0","\u09ac\u09c1\u09a7\u09ac\u09be\u09f0","\u09ac\u09c3\u09b9\u09b8\u09cd\u09aa\u09a4\u09bf\u09ac\u09be\u09f0","\u09b6\u09c1\u0995\u09cd\u09f0\u09ac\u09be\u09f0","\u09b6\u09a8\u09bf\u09ac\u09be\u09f0"]),t.s) +B.a_H=A.a(s([0,0,32722,12287,65534,34815,65534,18431]),t.t) +B.wq=A.a(s(["\u041d","\u041f","\u0412","\u0421","\u0427","\u041f","\u0421"]),t.s) +B.a_I=A.a(s(["Krisztus el\u0151tt","id\u0151sz\xe1m\xedt\xe1sunk szerint"]),t.s) +B.wr=A.a(s(["\u0a9c\u0abe\u0aa8\u0acd\u0aaf\u0ac1\u0a86\u0ab0\u0ac0","\u0aab\u0ac7\u0aac\u0acd\u0ab0\u0ac1\u0a86\u0ab0\u0ac0","\u0aae\u0abe\u0ab0\u0acd\u0a9a","\u0a8f\u0aaa\u0acd\u0ab0\u0abf\u0ab2","\u0aae\u0ac7","\u0a9c\u0ac2\u0aa8","\u0a9c\u0ac1\u0ab2\u0abe\u0a88","\u0a91\u0a97\u0ab8\u0acd\u0a9f","\u0ab8\u0aaa\u0acd\u0a9f\u0ac7\u0aae\u0acd\u0aac\u0ab0","\u0a91\u0a95\u0acd\u0a9f\u0acb\u0aac\u0ab0","\u0aa8\u0ab5\u0ac7\u0aae\u0acd\u0aac\u0ab0","\u0aa1\u0abf\u0ab8\u0ac7\u0aae\u0acd\u0aac\u0ab0"]),t.s) +B.ws=A.a(s(["\u0d89\u0dbb\u0dd2\u0daf\u0dcf","\u0dc3\u0db3\u0dd4\u0daf\u0dcf","\u0d85\u0d9f\u0dc4","\u0db6\u0daf\u0dcf\u0daf\u0dcf","\u0db6\u0dca\u200d\u0dbb\u0dc4\u0dc3\u0dca","\u0dc3\u0dd2\u0d9a\u0dd4","\u0dc3\u0dd9\u0db1"]),t.s) +B.a_J=A.a(s(["EEEE, d 'de' MMMM 'de' y","d 'de' MMMM 'de' y","dd/MM/y","dd/MM/yy"]),t.s) +B.a_K=A.a(s(["\u0a2a\u0a39\u0a3f\u0a32\u0a40 \u0a24\u0a3f\u0a2e\u0a3e\u0a39\u0a40","\u0a26\u0a42\u0a1c\u0a40 \u0a24\u0a3f\u0a2e\u0a3e\u0a39\u0a40","\u0a24\u0a40\u0a1c\u0a40 \u0a24\u0a3f\u0a2e\u0a3e\u0a39\u0a40","\u0a1a\u0a4c\u0a25\u0a40 \u0a24\u0a3f\u0a2e\u0a3e\u0a39\u0a40"]),t.s) +B.jQ=A.a(s(["\u062c\u0646\u0648\u0631\u06cc","\u0641\u0631\u0648\u0631\u06cc","\u0645\u0627\u0631\u0686","\u0627\u067e\u0631\u06cc\u0644","\u0645\u0626\u06cc","\u062c\u0648\u0646","\u062c\u0648\u0644\u0627\u0626\u06cc","\u0627\u06af\u0633\u062a","\u0633\u062a\u0645\u0628\u0631","\u0627\u06a9\u062a\u0648\u0628\u0631","\u0646\u0648\u0645\u0628\u0631","\u062f\u0633\u0645\u0628\u0631"]),t.s) +B.a_L=A.a(s(["\u0d15\u0d4d\u0d30\u0d3f.\u0d2e\u0d41.","\u0d0e\u0d21\u0d3f"]),t.s) +B.wt=A.a(s(["\u099c\u09be\u09a8\u09c1","\u09ab\u09c7\u09ac\u09cd\u09f0\u09c1","\u09ae\u09be\u09f0\u09cd\u099a","\u098f\u09aa\u09cd\u09f0\u09bf\u09b2","\u09ae\u09c7\u2019","\u099c\u09c1\u09a8","\u099c\u09c1\u09b2\u09be\u0987","\u0986\u0997","\u099b\u09c7\u09aa\u09cd\u09a4\u09c7","\u0985\u0995\u09cd\u099f\u09cb","\u09a8\u09f1\u09c7","\u09a1\u09bf\u099a\u09c7"]),t.s) +B.a_M=A.a(s(["ennen Kristuksen syntym\xe4\xe4","j\xe4lkeen Kristuksen syntym\xe4n"]),t.s) +B.wu=A.a(s(["\u0416","\u0414","\u0421","\u0421","\u0411","\u0416","\u0421"]),t.s) +B.a_N=A.a(s(["\uae30\uc6d0\uc804","\uc11c\uae30"]),t.s) +B.jR=A.a(s(["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember"]),t.s) +B.a_O=A.a(s(["y('e')'ko' MMMM'ren' d('a'), EEEE","y('e')'ko' MMMM'ren' d('a')","y('e')'ko' MMM d('a')","yy/M/d"]),t.s) +B.a_P=A.a(s(["(\uff65o\uff65;)","\u03a3(\u0ca0_\u0ca0)","\u0ca5_\u0ca5","(\u02d8\uff65_\uff65\u02d8)","(\uff1b\uffe3\u0414\uffe3)","(\uff65\u0414\uff65\u3002"]),t.s) +B.wv=A.a(s(["\u044f\u043d\u0443\u0430\u0440\u0438","\u0444\u0435\u0432\u0440\u0443\u0430\u0440\u0438","\u043c\u0430\u0440\u0442","\u0430\u043f\u0440\u0438\u043b","\u043c\u0430\u0439","\u044e\u043d\u0438","\u044e\u043b\u0438","\u0430\u0432\u0433\u0443\u0441\u0442","\u0441\u0435\u043f\u0442\u0435\u043c\u0432\u0440\u0438","\u043e\u043a\u0442\u043e\u043c\u0432\u0440\u0438","\u043d\u043e\u0435\u043c\u0432\u0440\u0438","\u0434\u0435\u043a\u0435\u043c\u0432\u0440\u0438"]),t.s) +B.a_Q=A.a(s(["PG","PTG"]),t.s) +B.a_R=A.a(s(["\u0b95\u0bbf\u0bb1\u0bbf\u0bb8\u0bcd\u0ba4\u0bc1\u0bb5\u0bc1\u0b95\u0bcd\u0b95\u0bc1 \u0bae\u0bc1\u0ba9\u0bcd","\u0b85\u0ba9\u0bcd\u0ba9\u0bcb \u0b9f\u0bcb\u0bae\u0bbf\u0ba9\u0bbf"]),t.s) +B.ww=A.a(s(["\u0ead\u0eb2\u0e97\u0eb4\u0e94","\u0e88\u0eb1\u0e99","\u0ead\u0eb1\u0e87\u0e84\u0eb2\u0e99","\u0e9e\u0eb8\u0e94","\u0e9e\u0eb0\u0eab\u0eb1\u0e94","\u0eaa\u0eb8\u0e81","\u0ec0\u0eaa\u0ebb\u0eb2"]),t.s) +B.a_S=A.a(s(["Yanvar","Fevral","Mart","Aprel","May","Iyun","Iyul","Avgust","Sentabr","Oktabr","Noyabr","Dekabr"]),t.s) +B.a_T=A.a(s(["H:mm:ss '\u0447'. zzzz","H:mm:ss '\u0447'. z","H:mm:ss '\u0447'.","H:mm '\u0447'."]),t.s) +B.wx=A.a(s([B.db,B.j1]),t.dP) +B.a_U=A.a(s(["\u03a41","\u03a42","\u03a43","\u03a44"]),t.s) +B.dR=new A.ul(null,null) +B.a_V=A.a(s([B.dR]),t.p) +B.wy=A.a(s(["\u0416","\u0414","\u0428","\u0428","\u0411","\u0416","\u0418"]),t.s) +B.wz=A.a(s(["jan","feb","mar","apr","maj","jun","jul","aug","sep","okt","nov","dec"]),t.s) +B.aF=A.a(s(["Q1","Q2","Q3","Q4"]),t.s) +B.wA=A.a(s(["\u09a6","\u09b8","\u09ae","\u09ac","\u09ac","\u09b6","\u09b6"]),t.s) +B.cD=A.a(s(["D","L","M","M","J","V","S"]),t.s) +B.kP=new A.eT(0,"defaultReader") +B.og=new A.eT(1,"continuousVertical") +B.oh=new A.eT(2,"singleHorizontalLTR") +B.oi=new A.eT(3,"singleHorizontalRTL") +B.oj=new A.eT(4,"continuousHorizontalLTR") +B.ok=new A.eT(5,"continuousHorizontalRTL") +B.ol=new A.eT(6,"singleVertical") +B.hV=new A.eT(7,"webtoon") +B.no=A.a(s([B.kP,B.og,B.oh,B.oi,B.oj,B.ok,B.ol,B.hV]),A.ah("G")) +B.wB=A.a(s(["\u0c9c\u0ca8\u0cb5\u0cb0\u0cbf","\u0cab\u0cc6\u0cac\u0ccd\u0cb0\u0cb5\u0cb0\u0cbf","\u0cae\u0cbe\u0cb0\u0ccd\u0c9a\u0ccd","\u0c8f\u0caa\u0ccd\u0cb0\u0cbf\u0cb2\u0ccd","\u0cae\u0cc7","\u0c9c\u0cc2\u0ca8\u0ccd","\u0c9c\u0cc1\u0cb2\u0cc8","\u0c86\u0c97\u0cb8\u0ccd\u0c9f\u0ccd","\u0cb8\u0cc6\u0caa\u0ccd\u0c9f\u0cc6\u0c82\u0cac\u0cb0\u0ccd","\u0c85\u0c95\u0ccd\u0c9f\u0ccb\u0cac\u0cb0\u0ccd","\u0ca8\u0cb5\u0cc6\u0c82\u0cac\u0cb0\u0ccd","\u0ca1\u0cbf\u0cb8\u0cc6\u0c82\u0cac\u0cb0\u0ccd"]),t.s) +B.a_W=A.a(s(["Kabla ya Kristo","Baada ya Kristo"]),t.s) +B.a_X=A.a(s(["\u0907. \u0938. \u092a\u0942.","\u0907. \u0938."]),t.s) +B.a_Y=A.a(s(["de.","du."]),t.s) +B.a_Z=A.a(s(["H:mm:ss (zzzz)","H:mm:ss (z)","HH:mm:ss","HH:mm"]),t.s) +B.wC=A.a(s(["\u091c\u0928\u0935\u0930\u0940","\u092b\u093c\u0930\u0935\u0930\u0940","\u092e\u093e\u0930\u094d\u091a","\u0905\u092a\u094d\u0930\u0948\u0932","\u092e\u0908","\u091c\u0942\u0928","\u091c\u0941\u0932\u093e\u0908","\u0905\u0917\u0938\u094d\u0924","\u0938\u093f\u0924\u0902\u092c\u0930","\u0905\u0915\u094d\u0924\u0942\u092c\u0930","\u0928\u0935\u0902\u092c\u0930","\u0926\u093f\u0938\u0902\u092c\u0930"]),t.s) +B.a0_=A.a(s(["1-chorak","2-chorak","3-chorak","4-chorak"]),t.s) +B.wD=A.a(s(["\u0458\u0430\u043d.","\u0444\u0435\u0432.","\u043c\u0430\u0440.","\u0430\u043f\u0440.","\u043c\u0430\u0458","\u0458\u0443\u043d.","\u0458\u0443\u043b.","\u0430\u0432\u0433.","\u0441\u0435\u043f\u0442.","\u043e\u043a\u0442.","\u043d\u043e\u0435\u043c.","\u0434\u0435\u043a."]),t.s) +B.wE=A.a(s(["ISonto","UMsombuluko","ULwesibili","ULwesithathu","ULwesine","ULwesihlanu","UMgqibelo"]),t.s) +B.a00=A.a(s(["dop.","odp."]),t.s) +B.a01=A.a(s(["p.n.e.","n.e."]),t.s) +B.jS=A.a(s(["nedjelja","ponedjeljak","utorak","srijeda","\u010detvrtak","petak","subota"]),t.s) +B.a02=A.a(s(["\u062c","\u0641","\u0645","\u0627","\u0645","\u062c","\u062c","\u0627","\u0633","\u0627","\u0646","\u062f"]),t.s) +B.wF=A.a(s(["\u091c\u093e","\u092b\u0947","\u092e\u093e","\u090f","\u092e\u0947","\u091c\u0942","\u091c\u0941","\u0911","\u0938","\u0911","\u0928\u094b","\u0921\u093f"]),t.s) +B.a03=A.a(s(["Domingo","Luns","Martes","M\xe9rcores","Xoves","Venres","S\xe1bado"]),t.s) +B.wG=A.a(s(["1\xba trimestre","2\xba trimestre","3\xba trimestre","4\xba trimestre"]),t.s) +B.a04=A.a(s(["trimestrul I","trimestrul al II-lea","trimestrul al III-lea","trimestrul al IV-lea"]),t.s) +B.wH=A.a(s(["Januar","Februar","M\xe4rz","April","Mai","Juni","Juli","Auguscht","Sept\xe4mber","Oktoober","Nov\xe4mber","Dez\xe4mber"]),t.s) +B.wI=A.a(s(["Jan","Feb","Mac","Apr","Mei","Jun","Jul","Ogo","Sep","Okt","Nov","Dis"]),t.s) +B.a05=A.a(s(["\u0908\u0938\u093e-\u092a\u0942\u0930\u094d\u0935","\u0908\u0938\u0935\u0940 \u0938\u0928"]),t.s) +B.a06=A.a(s(["{1} 'am' {0}","{1} 'am' {0}","{1} {0}","{1} {0}"]),t.s) +B.a07=A.a(s(["{1} 'om' {0}","{1} 'om' {0}","{1} {0}","{1} {0}"]),t.s) +B.a08=A.a(s(["\u12d3\u1218\u1270 \u12d3\u1208\u121d","\u12d3\u1218\u1270 \u121d\u1215\u1228\u1275"]),t.s) +B.jT=A.a(s(["\u041d\u044f","\u0414\u0430","\u041c\u044f","\u041b\u0445","\u041f\u04af","\u0411\u0430","\u0411\u044f"]),t.s) +B.wJ=A.a(s(["\u05d0\u05f3","\u05d1\u05f3","\u05d2\u05f3","\u05d3\u05f3","\u05d4\u05f3","\u05d5\u05f3","\u05e9\u05f3"]),t.s) +B.a09=A.a(s(["\u0a08\u0a38\u0a35\u0a40 \u0a2a\u0a42\u0a30\u0a35","\u0a08\u0a38\u0a35\u0a40 \u0a38\u0a70\u0a28"]),t.s) +B.a0a=A.a(s(["\u043f\u0440.\u0425\u0440.","\u0441\u043b.\u0425\u0440."]),t.s) +B.wK=A.a(s(["\u178f\u17d2\u179a\u17b8\u1798\u17b6\u179f\u1791\u17b8 1","\u178f\u17d2\u179a\u17b8\u1798\u17b6\u179f\u1791\u17b8 2","\u178f\u17d2\u179a\u17b8\u1798\u17b6\u179f\u1791\u17b8 3","\u178f\u17d2\u179a\u17b8\u1798\u17b6\u179f\u1791\u17b8 4"]),t.s) +B.nS=new A.kq(0,"alphabetical") +B.a6w=new A.kq(1,"dateAdded") +B.a6x=new A.kq(2,"unread") +B.a6y=new A.kq(3,"lastRead") +B.wL=A.a(s([B.nS,B.a6w,B.a6x,B.a6y]),A.ah("G")) +B.a0b=A.a(s(["para Krishtit","mbas Krishtit"]),t.s) +B.wM=A.a(s(["\u0c06","\u0c38\u0c4b","\u0c2e","\u0c2c\u0c41","\u0c17\u0c41","\u0c36\u0c41","\u0c36"]),t.s) +B.a0c=A.a(s(["S1","S2","S3","S4"]),t.s) +B.a0d=A.a(s(["X","F","M","A","M","X","X","A","S","O","N","D"]),t.s) +B.a0e=A.a(s(["SA","CH"]),t.s) +B.wN=A.a(s(["\u0c9c","\u0cab\u0cc6","\u0cae\u0cbe","\u0c8f","\u0cae\u0cc7","\u0c9c\u0cc2","\u0c9c\u0cc1","\u0c86","\u0cb8\u0cc6","\u0c85","\u0ca8","\u0ca1\u0cbf"]),t.s) +B.a0f=A.a(s(["\u03c0.\u03bc.","\u03bc.\u03bc."]),t.s) +B.a0g=A.a(s(["Bh:mm:ss [zzzz]","Bh:mm:ss [z]","Bh:mm:ss","Bh:mm"]),t.s) +B.a0h=A.a(s(["y\u5e74M\u6708d\u65e5EEEE","y\u5e74M\u6708d\u65e5","y\u5e74M\u6708d\u65e5","d/M/y"]),t.s) +B.a0i=A.a(s(["SM","M"]),t.s) +B.a0j=A.a(s(["\u0e95\u0ea11","\u0e95\u0ea12","\u0e95\u0ea13","\u0e95\u0ea14"]),t.s) +B.a0k=A.a(s(["1Hh","2Hh","3Hh","4Hh"]),t.s) +B.wO=A.a(s(["\u4e00\u6708","\u4e8c\u6708","\u4e09\u6708","\u56db\u6708","\u4e94\u6708","\u516d\u6708","\u4e03\u6708","\u516b\u6708","\u4e5d\u6708","\u5341\u6708","\u5341\u4e00\u6708","\u5341\u4e8c\u6708"]),t.s) +B.a0r=A.a(s(["\u1229\u12651","\u1229\u12652","\u1229\u12653","\u1229\u12654"]),t.s) +B.wP=A.a(s(["diumenge","dilluns","dimarts","dimecres","dijous","divendres","dissabte"]),t.s) +B.a0s=A.a(s(["\u03c0\u03c1\u03bf \u03a7\u03c1\u03b9\u03c3\u03c4\u03bf\u03cd","\u03bc\u03b5\u03c4\u03ac \u03a7\u03c1\u03b9\u03c3\u03c4\u03cc\u03bd"]),t.s) +B.cW=A.a(s(["T1","T2","T3","T4"]),t.s) +B.wQ=A.a(s(["\u0a1c","\u0a2b\u0a3c","\u0a2e\u0a3e","\u0a05","\u0a2e","\u0a1c\u0a42","\u0a1c\u0a41","\u0a05","\u0a38","\u0a05","\u0a28","\u0a26"]),t.s) +B.a0t=A.a(s(["yan","fev","mar","apr","may","iyn","iyl","avg","sen","okt","noy","dek"]),t.s) +B.a0u=A.a(s(["TO","TK"]),t.s) +B.aQ=new A.Ou(0,"upstream") +B.a0v=A.a(s([B.aQ,B.q]),A.ah("G")) +B.ab=new A.ma(0,"rtl") +B.j=new A.ma(1,"ltr") +B.wR=A.a(s([B.ab,B.j]),A.ah("G")) +B.L6=new A.Fx(0,"topLeft") +B.L9=new A.Fx(3,"bottomRight") +B.anE=new A.rd(B.L6,B.L9) +B.anH=new A.rd(B.L9,B.L6) +B.L7=new A.Fx(1,"topRight") +B.L8=new A.Fx(2,"bottomLeft") +B.anF=new A.rd(B.L7,B.L8) +B.anG=new A.rd(B.L8,B.L7) +B.a0w=A.a(s([B.anE,B.anH,B.anF,B.anG]),A.ah("G")) +B.wS=A.a(s(["dom","lun","mar","mer","gio","ven","sab"]),t.s) +B.a0x=A.a(s(["h:mm:ss\u202fa zzzz","h:mm:ss\u202fa z","h:mm:ss\u202fa","h:mm\u202fa"]),t.s) +B.a0y=A.a(s(["\u0434\u043e \u043d. \u044d.","\u043d. \u044d."]),t.s) +B.wT=A.a(s(["domingo","segunda","ter\xe7a","quarta","quinta","sexta","s\xe1bado"]),t.s) +B.wU=A.a(s(["T","H","M","H","T","K","H","E","S","L","M","J"]),t.s) +B.wV=A.a(s(["hh:mm:ss a zzzz","hh:mm:ss a z","hh:mm:ss a","hh:mm a"]),t.s) +B.a0z=A.a(s(["\u0996\u09cd\u09b0\u09bf\u09b8\u09cd\u099f\u09aa\u09c2\u09b0\u09cd\u09ac","\u0996\u09cd\u09b0\u09c0\u09b7\u09cd\u099f\u09be\u09ac\u09cd\u09a6"]),t.s) +B.wX=A.a(s(["\u17a2","\u1785","\u17a2","\u1796","\u1796","\u179f","\u179f"]),t.s) +B.wW=A.a(s(["gennaio","febbraio","marzo","aprile","maggio","giugno","luglio","agosto","settembre","ottobre","novembre","dicembre"]),t.s) +B.Ne=new A.rU() +B.hX=new A.a84(1,"page") +B.kS=new A.hE(B.ag,B.hX) +B.a0A=A.a(s([B.Ne,B.kS]),A.ah("G")) +B.a0B=A.a(s(["prije nove ere","nove ere"]),t.s) +B.wY=A.a(s(["CN","T2","T3","T4","T5","T6","T7"]),t.s) +B.wZ=A.a(s(["GN","FB","M\xc7","AB","MG","JN","JL","AG","ST","OC","NV","DS"]),t.s) +B.aW=A.a(s(["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]),t.s) +B.a0C=A.a(s(["\u049a\u0430\u04a3\u0442\u0430\u0440","\u0410\u049b\u043f\u0430\u043d","\u041d\u0430\u0443\u0440\u044b\u0437","\u0421\u04d9\u0443\u0456\u0440","\u041c\u0430\u043c\u044b\u0440","\u041c\u0430\u0443\u0441\u044b\u043c","\u0428\u0456\u043b\u0434\u0435","\u0422\u0430\u043c\u044b\u0437","\u049a\u044b\u0440\u043a\u04af\u0439\u0435\u043a","\u049a\u0430\u0437\u0430\u043d","\u049a\u0430\u0440\u0430\u0448\u0430","\u0416\u0435\u043b\u0442\u043e\u049b\u0441\u0430\u043d"]),t.s) +B.x_=A.a(s(["\u06cc","\u062f","\u0633","\u0686","\u067e","\u062c","\u0634"]),t.s) +B.a0D=A.a(s(["y, MMMM d, EEEE","y, MMMM d","y, MMM d","d/M/yy"]),t.s) +B.a0E=A.a(s(["EEEE, d MMMM, y","d MMMM y","dd-MMM-y","dd/MM/yy"]),t.s) +B.x0=A.a(s(["\u0c1c\u0c28","\u0c2b\u0c3f\u0c2c\u0c4d\u0c30","\u0c2e\u0c3e\u0c30\u0c4d\u0c1a\u0c3f","\u0c0f\u0c2a\u0c4d\u0c30\u0c3f","\u0c2e\u0c47","\u0c1c\u0c42\u0c28\u0c4d","\u0c1c\u0c41\u0c32\u0c48","\u0c06\u0c17","\u0c38\u0c46\u0c2a\u0c4d\u0c1f\u0c46\u0c02","\u0c05\u0c15\u0c4d\u0c1f\u0c4b","\u0c28\u0c35\u0c02","\u0c21\u0c3f\u0c38\u0c46\u0c02"]),t.s) +B.a0F=A.a(s(["antes de Cristo","despois de Cristo"]),t.s) +B.x1=A.a(s(["Januari","Februari","Machi","Aprili","Mei","Juni","Julai","Agosti","Septemba","Oktoba","Novemba","Desemba"]),t.s) +B.a0G=A.a(s(["I k.","II k.","III k.","IV k."]),t.s) +B.a0H=A.a(s(["x.","f.","m.","a.","m.","x.","x.","a.","s.","o.","n.","d."]),t.s) +B.x2=A.a(s(["I","II","III","IV","V","VI","VII","VIII","IX","X","XI","XII"]),t.s) +B.a0I=A.a(s(["\u063a.\u0645.","\u063a.\u0648."]),t.s) +B.x3=A.a(s(["ian.","feb.","mar.","apr.","mai","iun.","iul.","aug.","sept.","oct.","nov.","dec."]),t.s) +B.a0J=A.a(s(["1. kvt.","2. kvt.","3. kvt.","4. kvt."]),t.s) +B.x4=A.a(s(["\u099c\u09be\u09a8\u09c1\u09f1\u09be\u09f0\u09c0","\u09ab\u09c7\u09ac\u09cd\u09f0\u09c1\u09f1\u09be\u09f0\u09c0","\u09ae\u09be\u09f0\u09cd\u099a","\u098f\u09aa\u09cd\u09f0\u09bf\u09b2","\u09ae\u09c7\u2019","\u099c\u09c1\u09a8","\u099c\u09c1\u09b2\u09be\u0987","\u0986\u0997\u09b7\u09cd\u099f","\u099b\u09c7\u09aa\u09cd\u09a4\u09c7\u09ae\u09cd\u09ac\u09f0","\u0985\u0995\u09cd\u099f\u09cb\u09ac\u09f0","\u09a8\u09f1\u09c7\u09ae\u09cd\u09ac\u09f0","\u09a1\u09bf\u099a\u09c7\u09ae\u09cd\u09ac\u09f0"]),t.s) +B.x5=A.a(s(["O","\u015e","M","N","M","H","T","A","E","E","K","A"]),t.s) +B.x6=A.a(s(["\u05d9\u05e0\u05d5\u05d0\u05e8","\u05e4\u05d1\u05e8\u05d5\u05d0\u05e8","\u05de\u05e8\u05e5","\u05d0\u05e4\u05e8\u05d9\u05dc","\u05de\u05d0\u05d9","\u05d9\u05d5\u05e0\u05d9","\u05d9\u05d5\u05dc\u05d9","\u05d0\u05d5\u05d2\u05d5\u05e1\u05d8","\u05e1\u05e4\u05d8\u05de\u05d1\u05e8","\u05d0\u05d5\u05e7\u05d8\u05d5\u05d1\u05e8","\u05e0\u05d5\u05d1\u05de\u05d1\u05e8","\u05d3\u05e6\u05de\u05d1\u05e8"]),t.s) +B.a0K=A.a(s(["\u044f\u043d\u0432.","\u0444\u0435\u0432\u0440.","\u043c\u0430\u0440.","\u0430\u043f\u0440.","\u043c\u0430\u044f","\u0438\u044e\u043d.","\u0438\u044e\u043b.","\u0430\u0432\u0433.","\u0441\u0435\u043d\u0442.","\u043e\u043a\u0442.","\u043d\u043e\u044f\u0431.","\u0434\u0435\u043a."]),t.s) +B.dG=A.a(s(["E","F","M","A","M","J","J","A","S","O","N","D"]),t.s) +B.x7=A.a(s(["Ahd","Isn","Sel","Rab","Kha","Jum","Sab"]),t.s) +B.jU=A.a(s(["\u042f","\u0424","\u041c","\u0410","\u041c","\u0418","\u0418","\u0410","\u0421","\u041e","\u041d","\u0414"]),t.s) +B.a0L=A.a(s(["I \u0443\u043b\u0438\u0440\u0430\u043b","II \u0443\u043b\u0438\u0440\u0430\u043b","III \u0443\u043b\u0438\u0440\u0430\u043b","IV \u0443\u043b\u0438\u0440\u0430\u043b"]),t.s) +B.a0M=A.a(s(["prie\u0161piet","popiet"]),t.s) +B.a0N=A.a(s(["\u0441\u0442\u0443\u0434\u0437\u0435\u043d\u044f","\u043b\u044e\u0442\u0430\u0433\u0430","\u0441\u0430\u043a\u0430\u0432\u0456\u043a\u0430","\u043a\u0440\u0430\u0441\u0430\u0432\u0456\u043a\u0430","\u043c\u0430\u044f","\u0447\u044d\u0440\u0432\u0435\u043d\u044f","\u043b\u0456\u043f\u0435\u043d\u044f","\u0436\u043d\u0456\u045e\u043d\u044f","\u0432\u0435\u0440\u0430\u0441\u043d\u044f","\u043a\u0430\u0441\u0442\u0440\u044b\u0447\u043d\u0456\u043a\u0430","\u043b\u0456\u0441\u0442\u0430\u043f\u0430\u0434\u0430","\u0441\u043d\u0435\u0436\u043d\u044f"]),t.s) +B.a0O=A.a(s(["\u0406 \u0442\u049b\u0441.","\u0406\u0406 \u0442\u049b\u0441.","\u0406\u0406\u0406 \u0442\u049b\u0441.","IV \u0442\u049b\u0441."]),t.s) +B.x8=A.a(s(["\u0436\u0435\u043a\u0448\u0435\u043c\u0431\u0438","\u0434\u04af\u0439\u0448\u04e9\u043c\u0431\u04af","\u0448\u0435\u0439\u0448\u0435\u043c\u0431\u0438","\u0448\u0430\u0440\u0448\u0435\u043c\u0431\u0438","\u0431\u0435\u0439\u0448\u0435\u043c\u0431\u0438","\u0436\u0443\u043c\u0430","\u0438\u0448\u0435\u043c\u0431\u0438"]),t.s) +B.a0P=A.a(s(["\u0431\u0438\u0437\u0434\u0438\u043d \u0437\u0430\u043c\u0430\u043d\u0433\u0430 \u0447\u0435\u0439\u0438\u043d","\u0431\u0438\u0437\u0434\u0438\u043d \u0437\u0430\u043c\u0430\u043d"]),t.s) +B.x9=A.a(s(["Jan","Feb","Mac","Apr","Mei","Jun","Jul","Ago","Sep","Okt","Nov","Des"]),t.s) +B.a0Q=A.a(s(["\u0570\u0578\u0582\u0576\u057e\u0561\u0580","\u0583\u0565\u057f\u0580\u057e\u0561\u0580","\u0574\u0561\u0580\u057f","\u0561\u057a\u0580\u056b\u056c","\u0574\u0561\u0575\u056b\u057d","\u0570\u0578\u0582\u0576\u056b\u057d","\u0570\u0578\u0582\u056c\u056b\u057d","\u0585\u0563\u0578\u057d\u057f\u0578\u057d","\u057d\u0565\u057a\u057f\u0565\u0574\u0562\u0565\u0580","\u0570\u0578\u056f\u057f\u0565\u0574\u0562\u0565\u0580","\u0576\u0578\u0575\u0565\u0574\u0562\u0565\u0580","\u0564\u0565\u056f\u057f\u0565\u0574\u0562\u0565\u0580"]),t.s) +B.xa=A.a(s(["\u0a1c\u0a28\u0a35\u0a30\u0a40","\u0a2b\u0a3c\u0a30\u0a35\u0a30\u0a40","\u0a2e\u0a3e\u0a30\u0a1a","\u0a05\u0a2a\u0a4d\u0a30\u0a48\u0a32","\u0a2e\u0a08","\u0a1c\u0a42\u0a28","\u0a1c\u0a41\u0a32\u0a3e\u0a08","\u0a05\u0a17\u0a38\u0a24","\u0a38\u0a24\u0a70\u0a2c\u0a30","\u0a05\u0a15\u0a24\u0a42\u0a2c\u0a30","\u0a28\u0a35\u0a70\u0a2c\u0a30","\u0a26\u0a38\u0a70\u0a2c\u0a30"]),t.s) +B.a0R=A.a(s([0,0,32722,12287,65535,34815,65534,18431]),t.t) +B.xb=A.a(s([0,0,65490,12287,65535,34815,65534,18431]),t.t) +B.a0S=A.a(s(["y '\u043e\u043d\u044b' MMMM'\u044b\u043d' d, EEEE '\u0433\u0430\u0440\u0430\u0433'","y '\u043e\u043d\u044b' MMMM'\u044b\u043d' d","y '\u043e\u043d\u044b' MMM'\u044b\u043d' d","y.MM.dd"]),t.s) +B.xc=A.a(s(["jan","feb","mar","apr","m\xe1j","j\xfan","j\xfal","aug","sep","okt","nov","dec"]),t.s) +B.a0T=A.a(s(["\u0441\u0456\u0447","\u043b\u044e\u0442","\u0431\u0435\u0440","\u043a\u0432\u0456","\u0442\u0440\u0430","\u0447\u0435\u0440","\u043b\u0438\u043f","\u0441\u0435\u0440","\u0432\u0435\u0440","\u0436\u043e\u0432","\u043b\u0438\u0441","\u0433\u0440\u0443"]),t.s) +B.a0U=A.a(s(["EEEE, d-MMMM, y","d-MMMM, y","d-MMM, y","dd/MM/yy"]),t.s) +B.xd=A.a(s(["sekmadienis","pirmadienis","antradienis","tre\u010diadienis","ketvirtadienis","penktadienis","\u0161e\u0161tadienis"]),t.s) +B.a0V=A.a(s(["\u041d\u044f\u043c","\u0414\u0430\u0432\u0430\u0430","\u041c\u044f\u0433\u043c\u0430\u0440","\u041b\u0445\u0430\u0433\u0432\u0430","\u041f\u04af\u0440\u044d\u0432","\u0411\u0430\u0430\u0441\u0430\u043d","\u0411\u044f\u043c\u0431\u0430"]),t.s) +B.a0W=A.a(s(["\u0431.\u0437.\u0434.","\u0431.\u0437."]),t.s) +B.a0X=A.a(s(["K.a.","Kristo ondoren"]),t.s) +B.xe=A.a(s(["led","\xfano","b\u0159e","dub","kv\u011b","\u010dvn","\u010dvc","srp","z\xe1\u0159","\u0159\xedj","lis","pro"]),t.s) +B.xf=A.a(s(["\u7d00\u5143\u524d","\u897f\u66a6"]),t.s) +B.a0Z=A.a(s(["\u0434\u043e \u0420\u043e\u0436\u0434\u0435\u0441\u0442\u0432\u0430 \u0425\u0440\u0438\u0441\u0442\u043e\u0432\u0430","\u043e\u0442 \u0420\u043e\u0436\u0434\u0435\u0441\u0442\u0432\u0430 \u0425\u0440\u0438\u0441\u0442\u043e\u0432\u0430"]),t.s) +B.a1_=A.a(s(["Kuartal ke-1","Kuartal ke-2","Kuartal ke-3","Kuartal ke-4"]),t.s) +B.a10=A.a(s(["{0} 'do' {1}","{0} 'do' {1}","{0}, {1}","{0}, {1}"]),t.s) +B.a11=A.a(s(["1. fj\xf3r\xf0ungur","2. fj\xf3r\xf0ungur","3. fj\xf3r\xf0ungur","4. fj\xf3r\xf0ungur"]),t.s) +B.a12=A.a(s(["\u043f\u0440\u0435\u0434\u0438 \u0425\u0440\u0438\u0441\u0442\u0430","\u0441\u043b\u0435\u0434 \u0425\u0440\u0438\u0441\u0442\u0430"]),t.s) +B.xg=A.a(s(["\u099c","\u09ab","\u09ae","\u098f","\u09ae","\u099c","\u099c","\u0986","\u099b","\u0985","\u09a8","\u09a1"]),t.s) +B.a13=A.a(s(["\u042f\u043d\u0432","\u0424\u0435\u0432","\u041c\u0430\u0440","\u0410\u043f\u0440","\u041c\u0430\u0439","\u0418\u044e\u043d","\u0418\u044e\u043b","\u0410\u0432\u0433","\u0421\u0435\u043d","\u041e\u043a\u0442","\u041d\u043e\u044f","\u0414\u0435\u043a"]),t.s) +B.a14=A.a(s(["\u0924\u093f\u0967","\u0924\u093f\u0968","\u0924\u093f\u0969","\u0924\u093f\u096a"]),t.s) +B.xh=A.a(s(["\u1015\u1011\u1019 \u101e\u102f\u1036\u1038\u101c\u1015\u1010\u103a","\u1012\u102f\u1010\u102d\u101a \u101e\u102f\u1036\u1038\u101c\u1015\u1010\u103a","\u1010\u1010\u102d\u101a \u101e\u102f\u1036\u1038\u101c\u1015\u1010\u103a","\u1005\u1010\u102f\u1010\u1039\u1011 \u101e\u102f\u1036\u1038\u101c\u1015\u1010\u103a"]),t.s) +B.xi=A.a(s([0,0,32776,33792,1,10240,0,0]),t.t) +B.a15=A.a(s([47,47,47,47,72,97,122,147]),t.t) +B.bw=A.a(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.t) +B.a17=A.a(s(["1. ceturksnis","2. ceturksnis","3. ceturksnis","4. ceturksnis"]),t.s) +B.a18=A.a(s(["I ketvirtis","II ketvirtis","III ketvirtis","IV ketvirtis"]),t.s) +B.a19=A.a(s(["stycznia","lutego","marca","kwietnia","maja","czerwca","lipca","sierpnia","wrze\u015bnia","pa\u017adziernika","listopada","grudnia"]),t.s) +B.a1a=A.a(s(["1:a kvartalet","2:a kvartalet","3:e kvartalet","4:e kvartalet"]),t.s) +B.a1b=A.a(s(["EEEE dd MMMM y","dd MMMM y","dd MMM y","y-MM-dd"]),t.s) +B.xj=A.a(s(["ned.","pon.","tor.","sre.","\u010det.","pet.","sob."]),t.s) +B.xk=A.a(s(["\u043d\u0434","\u043f\u043d","\u0430\u045e","\u0441\u0440","\u0447\u0446","\u043f\u0442","\u0441\u0431"]),t.s) +B.xl=A.a(s(["januari","februari","mars","april","maj","juni","juli","augusti","september","oktober","november","december"]),t.s) +B.a1c=A.a(s(["Sv\u0113td.","Pirmd.","Otrd.","Tre\u0161d.","Ceturtd.","Piektd.","Sestd."]),t.s) +B.jV=A.a(s(["\uc77c","\uc6d4","\ud654","\uc218","\ubaa9","\uae08","\ud1a0"]),t.s) +B.a1d=A.a(s(["\u0642.\u0645","\u0645"]),t.s) +B.xm=A.a(s(["\u1007\u1014\u103a\u1014\u101d\u102b\u101b\u102e","\u1016\u1031\u1016\u1031\u102c\u103a\u101d\u102b\u101b\u102e","\u1019\u1010\u103a","\u1027\u1015\u103c\u102e","\u1019\u1031","\u1007\u103d\u1014\u103a","\u1007\u1030\u101c\u102d\u102f\u1004\u103a","\u1029\u1002\u102f\u1010\u103a","\u1005\u1000\u103a\u1010\u1004\u103a\u1018\u102c","\u1021\u1031\u102c\u1000\u103a\u1010\u102d\u102f\u1018\u102c","\u1014\u102d\u102f\u101d\u1004\u103a\u1018\u102c","\u1012\u102e\u1007\u1004\u103a\u1018\u102c"]),t.s) +B.xn=A.a(s(["EEEE, d 'de' MMMM 'de' y","d 'de' MMMM 'de' y","d MMM y","d/M/yy"]),t.s) +B.a1e=A.a(s(["p\u0159. n. l.","n. l."]),t.s) +B.np=A.a(s(["1. Quartal","2. Quartal","3. Quartal","4. Quartal"]),t.s) +B.xo=A.a(s(["\u044f\u043d\u0443","\u0444\u0435\u0432","\u043c\u0430\u0440\u0442","\u0430\u043f\u0440","\u043c\u0430\u0439","\u044e\u043d\u0438","\u044e\u043b\u0438","\u0430\u0432\u0433","\u0441\u0435\u043f","\u043e\u043a\u0442","\u043d\u043e\u0435","\u0434\u0435\u043a"]),t.s) +B.a1f=A.a(s(["aC","dC"]),t.s) +B.xp=A.a(s(["\u0a9c\u0abe\u0aa8\u0acd\u0aaf\u0ac1","\u0aab\u0ac7\u0aac\u0acd\u0ab0\u0ac1","\u0aae\u0abe\u0ab0\u0acd\u0a9a","\u0a8f\u0aaa\u0acd\u0ab0\u0abf\u0ab2","\u0aae\u0ac7","\u0a9c\u0ac2\u0aa8","\u0a9c\u0ac1\u0ab2\u0abe\u0a88","\u0a91\u0a97\u0ab8\u0acd\u0a9f","\u0ab8\u0aaa\u0acd\u0a9f\u0ac7","\u0a91\u0a95\u0acd\u0a9f\u0acb","\u0aa8\u0ab5\u0ac7","\u0aa1\u0abf\u0ab8\u0ac7"]),t.s) +B.a1h=A.a(s(["\u0d15\u0d4d\u0d30\u0d3f\u0d38\u0d4d\u200c\u0d24\u0d41\u0d35\u0d3f\u0d28\u0d4d \u0d2e\u0d41\u0d2e\u0d4d\u0d2a\u0d4d","\u0d06\u0d28\u0d4d\u0d28\u0d4b \u0d21\u0d4a\u0d2e\u0d3f\u0d28\u0d3f"]),t.s) +B.a1i=A.a(s(["\u17a2\u17b6\u1791\u17b7\u178f\u17d2\u1799","\u1785\u1793\u17d2\u1791","\u17a2\u1784\u17d2\u1782\u17b6\u179a","\u1796\u17bb\u1792","\u1796\u17d2\u179a\u17a0\u179f\u17d2\u1794\u178f\u17b7\u17cd","\u179f\u17bb\u1780\u17d2\u179a","\u179f\u17c5\u179a\u17cd"]),t.s) +B.aO=A.a(s(["h:mm:ss a zzzz","h:mm:ss a z","h:mm:ss a","h:mm a"]),t.s) +B.cX=A.a(s(["{1} 'at' {0}","{1} 'at' {0}","{1}, {0}","{1}, {0}"]),t.s) +B.xq=A.a(s(["{1} 'um' {0}","{1} 'um' {0}","{1}, {0}","{1}, {0}"]),t.s) +B.xr=A.a(s(["\u0cad\u0cbe\u0ca8\u0cc1","\u0cb8\u0ccb\u0cae","\u0cae\u0c82\u0c97\u0cb3","\u0cac\u0cc1\u0ca7","\u0c97\u0cc1\u0cb0\u0cc1","\u0cb6\u0cc1\u0c95\u0ccd\u0cb0","\u0cb6\u0ca8\u0cbf"]),t.s) +B.xs=A.a(s(["\u0627\u0644\u0631\u0628\u0639 \u0627\u0644\u0623\u0648\u0644","\u0627\u0644\u0631\u0628\u0639 \u0627\u0644\u062b\u0627\u0646\u064a","\u0627\u0644\u0631\u0628\u0639 \u0627\u0644\u062b\u0627\u0644\u062b","\u0627\u0644\u0631\u0628\u0639 \u0627\u0644\u0631\u0627\u0628\u0639"]),t.s) +B.a1j=A.a(s(["de gener","de febrer","de mar\xe7","d\u2019abril","de maig","de juny","de juliol","d\u2019agost","de setembre","d\u2019octubre","de novembre","de desembre"]),t.s) +B.ff=A.a(s(["S","M","D","M","D","F","S"]),t.s) +B.xt=A.a(s(["P","P","S","\xc7","P","C","C"]),t.s) +B.jW=A.a(s(["janvier","f\xe9vrier","mars","avril","mai","juin","juillet","ao\xfbt","septembre","octobre","novembre","d\xe9cembre"]),t.s) +B.a1k=A.a(s(["all","lastUsed","en","localsourcelang"]),t.s) +B.a1l=A.a(s(["d MMMM y EEEE","d MMMM y","d MMM y","d.MM.y"]),t.s) +B.ei=A.a(s(["am","pm"]),t.s) +B.jX=A.a(s(["\u0627\u0644\u0623\u062d\u062f","\u0627\u0644\u0627\u062b\u0646\u064a\u0646","\u0627\u0644\u062b\u0644\u0627\u062b\u0627\u0621","\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621","\u0627\u0644\u062e\u0645\u064a\u0633","\u0627\u0644\u062c\u0645\u0639\u0629","\u0627\u0644\u0633\u0628\u062a"]),t.s) +B.a1m=A.a(s(["\u0996\u09cd\u09f0\u09c0\u09b7\u09cd\u099f\u09aa\u09c2\u09f0\u09cd\u09ac","\u0996\u09cd\u09f0\u09c0\u09b7\u09cd\u099f\u09be\u09ac\u09cd\u09a6"]),t.s) +B.a1n=A.a(s(["EEEE, dd MMMM y","dd MMMM y","dd MMM y","y/MM/dd"]),t.s) +B.xu=A.a(s(["\u0d1e\u0d3e\u0d2f\u0d7c","\u0d24\u0d3f\u0d19\u0d4d\u0d15\u0d7e","\u0d1a\u0d4a\u0d35\u0d4d\u0d35","\u0d2c\u0d41\u0d27\u0d7b","\u0d35\u0d4d\u0d2f\u0d3e\u0d34\u0d02","\u0d35\u0d46\u0d33\u0d4d\u0d33\u0d3f","\u0d36\u0d28\u0d3f"]),t.s) +B.a1o=A.a(s(["\u0e1b\u0e35\u0e01\u0e48\u0e2d\u0e19\u0e04\u0e23\u0e34\u0e2a\u0e15\u0e01\u0e32\u0e25","\u0e04\u0e23\u0e34\u0e2a\u0e15\u0e4c\u0e28\u0e31\u0e01\u0e23\u0e32\u0e0a"]),t.s) +B.xv=A.a(s(["domenica","luned\xec","marted\xec","mercoled\xec","gioved\xec","venerd\xec","sabato"]),t.s) +B.xw=A.a(s(["\u091c\u093e\u0928\u0947","\u092b\u0947\u092c\u094d\u0930\u0941","\u092e\u093e\u0930\u094d\u091a","\u090f\u092a\u094d\u0930\u093f","\u092e\u0947","\u091c\u0942\u0928","\u091c\u0941\u0932\u0948","\u0911\u0917","\u0938\u092a\u094d\u091f\u0947\u0902","\u0911\u0915\u094d\u091f\u094b","\u0928\u094b\u0935\u094d\u0939\u0947\u0902","\u0921\u093f\u0938\u0947\u0902"]),t.s) +B.R3=new A.wu(0,"portraitUp") +B.R4=new A.wu(1,"landscapeLeft") +B.R5=new A.wu(2,"portraitDown") +B.R6=new A.wu(3,"landscapeRight") +B.a1p=A.a(s([B.R3,B.R4,B.R5,B.R6]),A.ah("G")) +B.az=new A.ia(0,"icon") +B.ba=new A.ia(1,"input") +B.av=new A.ia(2,"label") +B.bf=new A.ia(3,"hint") +B.b4=new A.ia(4,"prefix") +B.b5=new A.ia(5,"suffix") +B.as=new A.ia(6,"prefixIcon") +B.b6=new A.ia(7,"suffixIcon") +B.bg=new A.ia(8,"helperError") +B.aX=new A.ia(9,"counter") +B.dm=new A.ia(10,"container") +B.a1q=A.a(s([B.az,B.ba,B.av,B.bf,B.b4,B.b5,B.as,B.b6,B.bg,B.aX,B.dm]),A.ah("G")) +B.xx=A.a(s(["Ocak","\u015eubat","Mart","Nisan","May\u0131s","Haziran","Temmuz","A\u011fustos","Eyl\xfcl","Ekim","Kas\u0131m","Aral\u0131k"]),t.s) +B.xy=A.a(s(["S","P","A","T","K","P","\u0160"]),t.s) +B.a1r=A.a(s(["\u0924\u093f1","\u0924\u093f2","\u0924\u093f3","\u0924\u093f4"]),t.s) +B.aeR=new A.Ok(0,"top") +B.aeS=new A.Ok(1,"bottom") +B.a1s=A.a(s([B.aeR,B.aeS]),A.ah("G")) +B.xz=A.a(s(["\u1007","\u1016","\u1019","\u1027","\u1019","\u1007","\u1007","\u1029","\u1005","\u1021","\u1014","\u1012"]),t.s) +B.cg=A.a(s([1673962851,2096661628,2012125559,2079755643,4076801522,1809235307,1876865391,3314635973,811618352,16909057,1741597031,727088427,4276558334,3618988759,2874009259,1995217526,3398387146,2183110018,3381215433,2113570685,4209972730,1504897881,1200539975,4042984432,2906778797,3568527316,2724199842,2940594863,2619588508,2756966308,1927583346,3231407040,3077948087,4259388669,2470293139,642542118,913070646,1065238847,4160029431,3431157708,879254580,2773611685,3855693029,4059629809,1910674289,3635114968,828527409,355090197,67636228,3348452039,591815971,3281870531,405809176,2520228246,84545285,2586817946,118360327,304363026,2149292928,3806281186,3956090603,659450151,2994720178,1978310517,152181513,2199756419,743994412,439627290,456535323,1859957358,1521806938,2690382752,1386542674,997608763,3602342358,3011366579,693271337,3822927587,794718511,2215876484,1403450707,3518589137,0,3988860141,541089824,4242743292,2977548465,1538714971,1792327274,3415033547,3194476990,963791673,1251270218,1285084236,1487988824,3481619151,3501943760,4022676207,2857362858,4226619131,1132905795,1301993293,862344499,2232521861,1166724933,4192801017,33818114,2147385727,1352724560,1014514748,2670049951,2823545768,1369633617,2740846243,1082179648,2399505039,2453646738,2636233885,946882616,4126213365,3160661948,3061301686,3668932058,557998881,270544912,4293204735,4093447923,3535760850,3447803085,202904588,321271059,3972214764,1606345055,2536874647,1149815876,388905239,3297990596,2807427751,2130477694,1031423805,1690872932,1572530013,422718233,1944491379,1623236704,2165938305,1335808335,3701702620,574907938,710180394,2419829648,2282455944,1183631942,4006029806,3094074296,338181140,3735517662,1589437022,185998603,3685578459,3772464096,845436466,980700730,169090570,1234361161,101452294,608726052,1555620956,3265224130,3552407251,2890133420,1657054818,2436475025,2503058581,3839047652,2045938553,3889509095,3364570056,929978679,1843050349,2365688973,3585172693,1318900302,2840191145,1826141292,1454176854,4109567988,3939444202,1707781989,2062847610,2923948462,135272456,3127891386,2029029496,625635109,777810478,473441308,2790781350,3027486644,3331805638,3905627112,3718347997,1961401460,524165407,1268178251,3177307325,2332919435,2316273034,1893765232,1048330814,3044132021,1724688998,1217452104,50726147,4143383030,236720654,1640145761,896163637,1471084887,3110719673,2249691526,3248052417,490350365,2653403550,3789109473,4176155640,2553000856,287453969,1775418217,3651760345,2382858638,2486413204,2603464347,507257374,2266337927,3922272489,3464972750,1437269845,676362280,3752164063,2349043596,2707028129,2299101321,219813645,3211123391,3872862694,1115997762,1758509160,1099088705,2569646233,760903469,253628687,2960903088,1420360788,3144537787,371997206]),t.t) +B.xA=A.a(s(["\u0c06\u0c26\u0c3f","\u0c38\u0c4b\u0c2e","\u0c2e\u0c02\u0c17\u0c33","\u0c2c\u0c41\u0c27","\u0c17\u0c41\u0c30\u0c41","\u0c36\u0c41\u0c15\u0c4d\u0c30","\u0c36\u0c28\u0c3f"]),t.s) +B.dH=A.a(s(["a.m.","p.m."]),t.s) +B.xC=A.a(s(["\u0a10\u0a24","\u0a38\u0a4b\u0a2e","\u0a2e\u0a70\u0a17\u0a32","\u0a2c\u0a41\u0a71\u0a27","\u0a35\u0a40\u0a30","\u0a38\u0a3c\u0a41\u0a71\u0a15\u0a30","\u0a38\u0a3c\u0a28\u0a3f\u0a71\u0a1a\u0a30"]),t.s) +B.mW=new A.lH(0,100) +B.SI=new A.lH(1,200) +B.SJ=new A.lH(2,300) +B.G=new A.lH(3,400) +B.aC=new A.lH(4,500) +B.t8=new A.lH(5,600) +B.SK=new A.lH(7,800) +B.t9=new A.lH(8,900) +B.xB=A.a(s([B.mW,B.SI,B.SJ,B.G,B.aC,B.t8,B.eb,B.SK,B.t9]),A.ah("G")) +B.a1t=A.a(s(["zzzz HH:mm:ss","z HH:mm:ss","HH:mm:ss","HH:mm"]),t.s) +B.a1u=A.a(s(["J","F","M","E","M","J","J","A","S","O","N","D"]),t.s) +B.P_=new A.kT(1,"uploadDate") +B.P0=new A.kT(2,"fetchedDate") +B.xD=A.a(s([B.qH,B.P_,B.P0]),A.ah("G")) +B.ch=A.a(s([3332727651,4169432188,4003034999,4136467323,4279104242,3602738027,3736170351,2438251973,1615867952,33751297,3467208551,1451043627,3877240574,3043153879,1306962859,3969545846,2403715786,530416258,2302724553,4203183485,4011195130,3001768281,2395555655,4211863792,1106029997,3009926356,1610457762,1173008303,599760028,1408738468,3835064946,2606481600,1975695287,3776773629,1034851219,1282024998,1817851446,2118205247,4110612471,2203045068,1750873140,1374987685,3509904869,4178113009,3801313649,2876496088,1649619249,708777237,135005188,2505230279,1181033251,2640233411,807933976,933336726,168756485,800430746,235472647,607523346,463175808,3745374946,3441880043,1315514151,2144187058,3936318837,303761673,496927619,1484008492,875436570,908925723,3702681198,3035519578,1543217312,2767606354,1984772923,3076642518,2110698419,1383803177,3711886307,1584475951,328696964,2801095507,3110654417,0,3240947181,1080041504,3810524412,2043195825,3069008731,3569248874,2370227147,1742323390,1917532473,2497595978,2564049996,2968016984,2236272591,3144405200,3307925487,1340451498,3977706491,2261074755,2597801293,1716859699,294946181,2328839493,3910203897,67502594,4269899647,2700103760,2017737788,632987551,1273211048,2733855057,1576969123,2160083008,92966799,1068339858,566009245,1883781176,4043634165,1675607228,2009183926,2943736538,1113792801,540020752,3843751935,4245615603,3211645650,2169294285,403966988,641012499,3274697964,3202441055,899848087,2295088196,775493399,2472002756,1441965991,4236410494,2051489085,3366741092,3135724893,841685273,3868554099,3231735904,429425025,2664517455,2743065820,1147544098,1417554474,1001099408,193169544,2362066502,3341414126,1809037496,675025940,2809781982,3168951902,371002123,2910247899,3678134496,1683370546,1951283770,337512970,2463844681,201983494,1215046692,3101973596,2673722050,3178157011,1139780780,3299238498,967348625,832869781,3543655652,4069226873,3576883175,2336475336,1851340599,3669454189,25988493,2976175573,2631028302,1239460265,3635702892,2902087254,4077384948,3475368682,3400492389,4102978170,1206496942,270010376,1876277946,4035475576,1248797989,1550986798,941890588,1475454630,1942467764,2538718918,3408128232,2709315037,3902567540,1042358047,2531085131,1641856445,226921355,260409994,3767562352,2084716094,1908716981,3433719398,2430093384,100991747,4144101110,470945294,3265487201,1784624437,2935576407,1775286713,395413126,2572730817,975641885,666476190,3644383713,3943954680,733190296,573772049,3535497577,2842745305,126455438,866620564,766942107,1008868894,361924487,3374377449,2269761230,2868860245,1350051880,2776293343,59739276,1509466529,159418761,437718285,1708834751,3610371814,2227585602,3501746280,2193834305,699439513,1517759789,504434447,2076946608,2835108948,1842789307,742004246]),t.t) +B.dI=A.a(s(["S","M","T","O","T","F","L"]),t.s) +B.xE=A.a(s(["\u0ab0","\u0ab8\u0acb","\u0aae\u0a82","\u0aac\u0ac1","\u0a97\u0ac1","\u0ab6\u0ac1","\u0ab6"]),t.s) +B.a1v=A.a(s(["\u0399\u03b1\u03bd\u03bf\u03c5\u03b1\u03c1\u03af\u03bf\u03c5","\u03a6\u03b5\u03b2\u03c1\u03bf\u03c5\u03b1\u03c1\u03af\u03bf\u03c5","\u039c\u03b1\u03c1\u03c4\u03af\u03bf\u03c5","\u0391\u03c0\u03c1\u03b9\u03bb\u03af\u03bf\u03c5","\u039c\u03b1\u0390\u03bf\u03c5","\u0399\u03bf\u03c5\u03bd\u03af\u03bf\u03c5","\u0399\u03bf\u03c5\u03bb\u03af\u03bf\u03c5","\u0391\u03c5\u03b3\u03bf\u03cd\u03c3\u03c4\u03bf\u03c5","\u03a3\u03b5\u03c0\u03c4\u03b5\u03bc\u03b2\u03c1\u03af\u03bf\u03c5","\u039f\u03ba\u03c4\u03c9\u03b2\u03c1\u03af\u03bf\u03c5","\u039d\u03bf\u03b5\u03bc\u03b2\u03c1\u03af\u03bf\u03c5","\u0394\u03b5\u03ba\u03b5\u03bc\u03b2\u03c1\u03af\u03bf\u03c5"]),t.s) +B.a1x=A.a(s(["1. kv.","2. kv.","3. kv.","4. kv."]),t.s) +B.a1w=A.a(s(["EEEE \u062f y \u062f MMMM d","\u062f y \u062f MMMM d","y MMM d","y/M/d"]),t.s) +B.a1y=A.a(s(["Yan","Fev","Mar","Apr","May","Iyn","Iyl","Avg","Sen","Okt","Noy","Dek"]),t.s) +B.a1z=A.a(s(["click","scroll"]),t.s) +B.qU=new A.M(419430400) +B.i=new A.l(0,0) +B.Mn=new A.c8(0.2,B.a2,B.qU,B.i,11) +B.a1A=A.a(s([B.Mn]),t.G) +B.jY=A.a(s(["Jan","Feb","M\xe4r","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez"]),t.s) +B.a1C=A.a(s(["I \u10d9\u10d5.","II \u10d9\u10d5.","III \u10d9\u10d5.","IV \u10d9\u10d5."]),t.s) +B.a1E=A.a(s(["prije Krista","poslije Krista"]),t.s) +B.a1D=A.a(s(["{1} - {0}","{1} - {0}","{1}, {0}","{1}, {0}"]),t.s) +B.xG=A.a(s(["1.","2.","3.","4.","5.","6.","7.","8.","9.","10.","11.","12."]),t.s) +B.xF=A.a(s(["\u0698","\u0641","\u0645","\u0622","\u0645","\u0698","\u0698","\u0627","\u0633","\u0627","\u0646","\u062f"]),t.s) +B.xH=A.a(s(["yakshanba","dushanba","seshanba","chorshanba","payshanba","juma","shanba"]),t.s) +B.xI=A.a(s(["janv.","f\xe9vr.","mars","avr.","mai","juin","juil.","ao\xfbt","sept.","oct.","nov.","d\xe9c."]),t.s) +B.xJ=A.a(s(["jan.","feb.","mar.","apr.","maj","jun.","jul.","aug.","sep.","okt.","nov.","dec."]),t.s) +B.a1F=A.a(s(["S","L","M","K","M","C","L","S","W","P","L","G"]),t.s) +B.aed=new A.a9m(null) +B.Sw=new A.a0Q(null) +B.a1G=A.a(s([B.aed,B.Sw]),t.p) +B.a1H=A.a(s(["\u0441\u0442\u0443\u0434\u0437\u0435\u043d\u044c","\u043b\u044e\u0442\u044b","\u0441\u0430\u043a\u0430\u0432\u0456\u043a","\u043a\u0440\u0430\u0441\u0430\u0432\u0456\u043a","\u043c\u0430\u0439","\u0447\u044d\u0440\u0432\u0435\u043d\u044c","\u043b\u0456\u043f\u0435\u043d\u044c","\u0436\u043d\u0456\u0432\u0435\u043d\u044c","\u0432\u0435\u0440\u0430\u0441\u0435\u043d\u044c","\u043a\u0430\u0441\u0442\u0440\u044b\u0447\u043d\u0456\u043a","\u043b\u0456\u0441\u0442\u0430\u043f\u0430\u0434","\u0441\u043d\u0435\u0436\u0430\u043d\u044c"]),t.s) +B.xK=A.a(s(["jaanuar","veebruar","m\xe4rts","aprill","mai","juuni","juuli","august","september","oktoober","november","detsember"]),t.s) +B.a1I=A.a(s(["eKr","pKr"]),t.s) +B.dJ=A.a(s(["j","f","m","a","m","j","j","a","s","o","n","d"]),t.s) +B.a1J=A.a(s(["y \u0569. MMMM d, EEEE","dd MMMM, y \u0569.","dd MMM, y \u0569.","dd.MM.yy"]),t.s) +B.a1K=A.a(s(["1\u03bf \u03c4\u03c1\u03af\u03bc\u03b7\u03bd\u03bf","2\u03bf \u03c4\u03c1\u03af\u03bc\u03b7\u03bd\u03bf","3\u03bf \u03c4\u03c1\u03af\u03bc\u03b7\u03bd\u03bf","4\u03bf \u03c4\u03c1\u03af\u03bc\u03b7\u03bd\u03bf"]),t.s) +B.bP=A.a(s(["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"]),t.s) +B.xL=A.a(s(["\u043d\u0435\u0434\u0435\u043b\u044f","\u043f\u043e\u043d\u0435\u0434\u0435\u043b\u043d\u0438\u043a","\u0432\u0442\u043e\u0440\u043d\u0438\u043a","\u0441\u0440\u044f\u0434\u0430","\u0447\u0435\u0442\u0432\u044a\u0440\u0442\u044a\u043a","\u043f\u0435\u0442\u044a\u043a","\u0441\u044a\u0431\u043e\u0442\u0430"]),t.s) +B.jZ=A.a(s(["\u043d\u0434","\u043f\u043d","\u0432\u0442","\u0441\u0440","\u0447\u0442","\u043f\u0442","\u0441\u0431"]),t.s) +B.xM=A.a(s(["\u0e2d\u0e32.","\u0e08.","\u0e2d.","\u0e1e.","\u0e1e\u0e24.","\u0e28.","\u0e2a."]),t.s) +B.xN=A.a(s(["\u0930\u0935\u093f","\u0938\u094b\u092e","\u092e\u0902\u0917\u0932","\u092c\u0941\u0927","\u0917\u0941\u0930\u0941","\u0936\u0941\u0915\u094d\u0930","\u0936\u0928\u093f"]),t.s) +B.a1L=A.a(s([0,0,32754,11263,65534,34815,65534,18431]),t.t) +B.k_=A.a(s(["Jumapili","Jumatatu","Jumanne","Jumatano","Alhamisi","Ijumaa","Jumamosi"]),t.s) +B.a1M=A.a(s(["1kv","2kv","3kv","4kv"]),t.s) +B.a1V=A.a(s([]),t.QP) +B.xQ=A.a(s([]),t.G) +B.xR=A.a(s([]),A.ah("G")) +B.a1O=A.a(s([]),t.R) +B.a1Z=A.a(s([]),t.fJ) +B.a1Q=A.a(s([]),t.ER) +B.apb=A.a(s([]),t.ss) +B.a1S=A.a(s([]),t.tc) +B.cY=A.a(s([]),t.jl) +B.xP=A.a(s([]),t.wi) +B.a1U=A.a(s([]),t.jT) +B.apc=A.a(s([]),t.AT) +B.a1R=A.a(s([]),A.ah("G>")) +B.nq=A.a(s([]),t.AO) +B.xS=A.a(s([]),t.Bw) +B.b1=A.a(s([]),t.yo) +B.hw=A.a(s([]),t.i3) +B.a1T=A.a(s([]),t.D1) +B.nr=A.a(s([]),t.QF) +B.a1X=A.a(s([]),t.Lx) +B.a1Y=A.a(s([]),t.fm) +B.a1N=A.a(s([]),t.p) +B.hv=A.a(s([]),t.t) +B.xO=A.a(s([]),t.ee) +B.a1W=A.a(s([]),t._m) +B.xT=A.a(s(["\u099c\u09be","\u09ab\u09c7","\u09ae\u09be","\u098f","\u09ae\u09c7","\u099c\u09c1\u09a8","\u099c\u09c1","\u0986","\u09b8\u09c7","\u0985","\u09a8","\u09a1\u09bf"]),t.s) +B.xU=A.a(s(["\u12a5\u1211\u12f5","\u1230\u129e","\u121b\u12ad\u1230","\u1228\u1261\u12d5","\u1210\u1219\u1235","\u12d3\u122d\u1265","\u1245\u12f3\u121c"]),t.s) +B.a2_=A.a(s(["1\u0ab2\u0acb \u0aa4\u0acd\u0ab0\u0abf\u0aae\u0abe\u0ab8","2\u0a9c\u0acb \u0aa4\u0acd\u0ab0\u0abf\u0aae\u0abe\u0ab8","3\u0a9c\u0acb \u0aa4\u0acd\u0ab0\u0abf\u0aae\u0abe\u0ab8","4\u0aa5\u0acb \u0aa4\u0acd\u0ab0\u0abf\u0aae\u0abe\u0ab8"]),t.s) +B.a20=A.a(s(["urtarrila","otsaila","martxoa","apirila","maiatza","ekaina","uztaila","abuztua","iraila","urria","azaroa","abendua"]),t.s) +B.a21=A.a(s(["{1} \u0641\u064a {0}","{1} \u0641\u064a {0}","{1}, {0}","{1}, {0}"]),t.s) +B.a22=A.a(s(["priek\u0161pusdien\u0101","p\u0113cpusdien\u0101"]),t.s) +B.xV=A.a(s(["J","F","M","A","M","J","J","\xc1","S","O","N","D"]),t.s) +B.xW=A.a(s(["S","M","T","K","T","P","L"]),t.s) +B.a23=A.a(s(["fm","em"]),t.s) +B.a24=A.a(s(["eKr.","jKr."]),t.s) +B.a25=A.a(s(["pred Kr.","po Kr."]),t.s) +B.a28=A.a(s(["\u0c15\u0c4d\u0c30\u0c40\u0c2a\u0c42","\u0c15\u0c4d\u0c30\u0c40\u0c36"]),t.s) +B.xX=A.a(s(["\uc77c\uc694\uc77c","\uc6d4\uc694\uc77c","\ud654\uc694\uc77c","\uc218\uc694\uc77c","\ubaa9\uc694\uc77c","\uae08\uc694\uc77c","\ud1a0\uc694\uc77c"]),t.s) +B.a29=A.a(s(["pred Kristom","po Kristovi"]),t.s) +B.a2a=A.a(s(["Qu\xfd 1","Qu\xfd 2","Qu\xfd 3","Qu\xfd 4"]),t.s) +B.a2b=A.a(s(["fyrir Krist","eftir Krist"]),t.s) +B.xY=A.a(s(["V","H","K","Sze","Cs","P","Szo"]),t.s) +B.xZ=A.a(s(["\u0b30","\u0b38\u0b4b","\u0b2e","\u0b2c\u0b41","\u0b17\u0b41","\u0b36\u0b41","\u0b36"]),t.s) +B.y_=A.a(s(["S","M","\xde","M","F","F","L"]),t.s) +B.a2c=A.a(s(["\u043f\u0440.\u043e\u0431.","\u0441\u043b.\u043e\u0431."]),t.s) +B.y0=A.a(s(["\u0ab0\u0ab5\u0abf\u0ab5\u0abe\u0ab0","\u0ab8\u0acb\u0aae\u0ab5\u0abe\u0ab0","\u0aae\u0a82\u0a97\u0ab3\u0ab5\u0abe\u0ab0","\u0aac\u0ac1\u0aa7\u0ab5\u0abe\u0ab0","\u0a97\u0ac1\u0ab0\u0ac1\u0ab5\u0abe\u0ab0","\u0ab6\u0ac1\u0a95\u0acd\u0ab0\u0ab5\u0abe\u0ab0","\u0ab6\u0aa8\u0abf\u0ab5\u0abe\u0ab0"]),t.s) +B.y1=A.a(s(["{1}, {0}","{1}, {0}","{1} {0}","{1}, {0}"]),t.s) +B.kx=new A.l(0,2) +B.Mm=new A.c8(0.75,B.a2,B.qU,B.kx,1.5) +B.y2=A.a(s([B.Mm]),t.G) +B.y3=A.a(s(["jan.","feb.","mar.","apr.","ma\xed","j\xfan.","j\xfal.","\xe1g\xfa.","sep.","okt.","n\xf3v.","des."]),t.s) +B.a2e=A.a(s(["1. nelj\xe4nnes","2. nelj\xe4nnes","3. nelj\xe4nnes","4. nelj\xe4nnes"]),t.s) +B.a2f=A.a(s(["\u03c0.\u03a7.","\u03bc.\u03a7."]),t.s) +B.y5=A.a(s(["V","H","K","Sz","Cs","P","Sz"]),t.s) +B.y4=A.a(s(["yanvar","fevral","mart","aprel","may","iyun","iyul","avqust","sentyabr","oktyabr","noyabr","dekabr"]),t.s) +B.y6=A.a(s(["av. J.-C.","ap. J.-C."]),t.s) +B.a2g=A.a(s(["v.C.","n.C."]),t.s) +B.a2j=A.a(s(["\u0434\u043f","\u043f\u043f"]),t.s) +B.a2h=A.a(s(["1-\u0448\u044b \u043a\u0432\u0430\u0440\u0442\u0430\u043b","2-\u0433\u0456 \u043a\u0432\u0430\u0440\u0442\u0430\u043b","3-\u0446\u0456 \u043a\u0432\u0430\u0440\u0442\u0430\u043b","4-\u0442\u044b \u043a\u0432\u0430\u0440\u0442\u0430\u043b"]),t.s) +B.a2i=A.a(s(["\u092a\u0939\u0932\u0940 \u0924\u093f\u092e\u093e\u0939\u0940","\u0926\u0942\u0938\u0930\u0940 \u0924\u093f\u092e\u093e\u0939\u0940","\u0924\u0940\u0938\u0930\u0940 \u0924\u093f\u092e\u093e\u0939\u0940","\u091a\u094c\u0925\u0940 \u0924\u093f\u092e\u093e\u0939\u0940"]),t.s) +B.y7=A.a(s(["\u12a5\u1211\u12f5","\u1230\u129e","\u121b\u12ad\u1230\u129e","\u1228\u1261\u12d5","\u1210\u1219\u1235","\u12d3\u122d\u1265","\u1245\u12f3\u121c"]),t.s) +B.y8=A.a(s(["N","P","U","S","\u010c","P","S"]),t.s) +B.a2m=A.a(s(["xan.","feb.","mar.","abr.","maio","xu\xf1o","xul.","ago.","set.","out.","nov.","dec."]),t.s) +B.a2n=A.a(s(["\u0d9a\u0dca\u200d\u0dbb\u0dd2.\u0db4\u0dd6.","\u0d9a\u0dca\u200d\u0dbb\u0dd2.\u0dc0."]),t.s) +B.a2o=A.a(s(["\xeenainte de Hristos","dup\u0103 Hristos"]),t.s) +B.a2p=A.a(s(["1-ch","2-ch","3-ch","4-ch"]),t.s) +B.ya=A.a(s(["\u0906\u0907\u0924","\u0938\u094b\u092e","\u092e\u0919\u094d\u0917\u0932","\u092c\u0941\u0927","\u092c\u093f\u0939\u093f","\u0936\u0941\u0915\u094d\u0930","\u0936\u0928\u093f"]),t.s) +B.y9=A.a(s(["janv\u0101ris","febru\u0101ris","marts","apr\u012blis","maijs","j\u016bnijs","j\u016blijs","augusts","septembris","oktobris","novembris","decembris"]),t.s) +B.yb=A.a(s(["\u043d","\u043f","\u0443","\u0441","\u0447","\u043f","\u0441"]),t.s) +B.yc=A.a(s(["\u0e44\u0e15\u0e23\u0e21\u0e32\u0e2a 1","\u0e44\u0e15\u0e23\u0e21\u0e32\u0e2a 2","\u0e44\u0e15\u0e23\u0e21\u0e32\u0e2a 3","\u0e44\u0e15\u0e23\u0e21\u0e32\u0e2a 4"]),t.s) +B.k0=A.a(s(["\u0627\u062a\u0648\u0627\u0631","\u067e\u06cc\u0631","\u0645\u0646\u06af\u0644","\u0628\u062f\u06be","\u062c\u0645\u0639\u0631\u0627\u062a","\u062c\u0645\u0639\u06c1","\u06c1\u0641\u062a\u06c1"]),t.s) +B.yd=A.a(s(["\u0d12\u0d28\u0d4d\u0d28\u0d3e\u0d02 \u0d2a\u0d3e\u0d26\u0d02","\u0d30\u0d23\u0d4d\u0d1f\u0d3e\u0d02 \u0d2a\u0d3e\u0d26\u0d02","\u0d2e\u0d42\u0d28\u0d4d\u0d28\u0d3e\u0d02 \u0d2a\u0d3e\u0d26\u0d02","\u0d28\u0d3e\u0d32\u0d3e\u0d02 \u0d2a\u0d3e\u0d26\u0d02"]),t.s) +B.a2v=A.a(s(["ledna","\xfanora","b\u0159ezna","dubna","kv\u011btna","\u010dervna","\u010dervence","srpna","z\xe1\u0159\xed","\u0159\xedjna","listopadu","prosince"]),t.s) +B.a2w=A.a(s(["EEEE\u060c d MMMM\u060c y","d MMMM\u060c y","d MMM\u060c y","d/M/yy"]),t.s) +B.a2x=A.a(s(["H \u0ec2\u0ea1\u0e87 m \u0e99\u0eb2\u0e97\u0eb5 ss \u0ea7\u0eb4\u0e99\u0eb2\u0e97\u0eb5 zzzz","H \u0ec2\u0ea1\u0e87 m \u0e99\u0eb2\u0e97\u0eb5 ss \u0ea7\u0eb4\u0e99\u0eb2\u0e97\u0eb5 z","H:mm:ss","H:mm"]),t.s) +B.a2y=A.a(s(["\u0d1e\u0d3e\u0d2f\u0d31\u0d3e\u0d34\u0d4d\u200c\u0d1a","\u0d24\u0d3f\u0d19\u0d4d\u0d15\u0d33\u0d3e\u0d34\u0d4d\u200c\u0d1a","\u0d1a\u0d4a\u0d35\u0d4d\u0d35\u0d3e\u0d34\u0d4d\u200c\u0d1a","\u0d2c\u0d41\u0d27\u0d28\u0d3e\u0d34\u0d4d\u200c\u0d1a","\u0d35\u0d4d\u0d2f\u0d3e\u0d34\u0d3e\u0d34\u0d4d\u200c\u0d1a","\u0d35\u0d46\u0d33\u0d4d\u0d33\u0d3f\u0d2f\u0d3e\u0d34\u0d4d\u200c\u0d1a","\u0d36\u0d28\u0d3f\u0d2f\u0d3e\u0d34\u0d4d\u200c\u0d1a"]),t.s) +B.ye=A.a(s(["sij","velj","o\u017eu","tra","svi","lip","srp","kol","ruj","lis","stu","pro"]),t.s) +B.yf=A.a(s(["EEEE d MMMM y","d MMMM y","d MMM y","d/M/yy"]),t.s) +B.k1=A.a(s(["antes de Cristo","despu\xe9s de Cristo"]),t.s) +B.a2z=A.a(s(["\u10eb\u10d5. \u10ec.","\u10d0\u10ee. \u10ec."]),t.s) +B.yg=A.a(s(["\u039a\u03c5\u03c1","\u0394\u03b5\u03c5","\u03a4\u03c1\u03af","\u03a4\u03b5\u03c4","\u03a0\u03ad\u03bc","\u03a0\u03b1\u03c1","\u03a3\u03ac\u03b2"]),t.s) +B.yh=A.a(s(["J","V","M","A","M","J","J","A","S","O","N","D"]),t.s) +B.a2B=A.a(s(["gener","febrer","mar\xe7","abril","maig","juny","juliol","agost","setembre","octubre","novembre","desembre"]),t.s) +B.yi=A.a(s(["\u0c1c\u0c28\u0c35\u0c30\u0c3f","\u0c2b\u0c3f\u0c2c\u0c4d\u0c30\u0c35\u0c30\u0c3f","\u0c2e\u0c3e\u0c30\u0c4d\u0c1a\u0c3f","\u0c0f\u0c2a\u0c4d\u0c30\u0c3f\u0c32\u0c4d","\u0c2e\u0c47","\u0c1c\u0c42\u0c28\u0c4d","\u0c1c\u0c41\u0c32\u0c48","\u0c06\u0c17\u0c38\u0c4d\u0c1f\u0c41","\u0c38\u0c46\u0c2a\u0c4d\u0c1f\u0c46\u0c02\u0c2c\u0c30\u0c4d","\u0c05\u0c15\u0c4d\u0c1f\u0c4b\u0c2c\u0c30\u0c4d","\u0c28\u0c35\u0c02\u0c2c\u0c30\u0c4d","\u0c21\u0c3f\u0c38\u0c46\u0c02\u0c2c\u0c30\u0c4d"]),t.s) +B.a2C=A.a(s(["\u0a24\u0a3f\u0a2e\u0a3e\u0a39\u0a401","\u0a24\u0a3f\u0a2e\u0a3e\u0a39\u0a402","\u0a24\u0a3f\u0a2e\u0a3e\u0a39\u0a403","\u0a24\u0a3f\u0a2e\u0a3e\u0a39\u0a404"]),t.s) +B.yj=A.a(s(["Yak","Dush","Sesh","Chor","Pay","Jum","Shan"]),t.s) +B.a2D=A.a(s(["prie\u0161 Krist\u0173","po Kristaus"]),t.s) +B.yk=A.a(s(["\u0b30\u0b2c\u0b3f\u0b2c\u0b3e\u0b30","\u0b38\u0b4b\u0b2e\u0b2c\u0b3e\u0b30","\u0b2e\u0b19\u0b4d\u0b17\u0b33\u0b2c\u0b3e\u0b30","\u0b2c\u0b41\u0b27\u0b2c\u0b3e\u0b30","\u0b17\u0b41\u0b30\u0b41\u0b2c\u0b3e\u0b30","\u0b36\u0b41\u0b15\u0b4d\u0b30\u0b2c\u0b3e\u0b30","\u0b36\u0b28\u0b3f\u0b2c\u0b3e\u0b30"]),t.s) +B.a2E=A.a(s(["abans de Crist","despr\xe9s de Crist"]),t.s) +B.yl=A.a(s(["dum.","lun.","mar.","mie.","joi","vin.","s\xe2m."]),t.s) +B.ym=A.a(s(["\u049a","\u0410","\u041d","\u0421","\u041c","\u041c","\u0428","\u0422","\u049a","\u049a","\u049a","\u0416"]),t.s) +B.a2F=A.a(s(["Suku pertama","Suku Ke-2","Suku Ke-3","Suku Ke-4"]),t.s) +B.k2=A.a(s(["\u516c\u5143\u524d","\u516c\u5143"]),t.s) +B.a2G=A.a(s(["installed","update","en","all"]),t.s) +B.yn=A.a(s(["antes de Cristo","depois de Cristo"]),t.s) +B.a2H=A.a(s(["1. \xe7eyrek","2. \xe7eyrek","3. \xe7eyrek","4. \xe7eyrek"]),t.s) +B.yo=A.a(s(["EEEE d MMMM y","d MMMM y","d MMM y","y-MM-dd"]),t.s) +B.yp=A.a(s(["jan.","feb.","mar.","apr.","mai","jun.","jul.","aug.","sep.","okt.","nov.","des."]),t.s) +B.yq=A.a(s(["M","S","S","R","K","J","S"]),t.s) +B.yr=A.a(s(["\u043d\u0435\u0434","\u043f\u043e\u043d","\u0443\u0442\u043e","\u0441\u0440\u0435","\u0447\u0435\u0442","\u043f\u0435\u0442","\u0441\u0443\u0431"]),t.s) +B.k3=A.a(s(["\u064a\u0646\u0627\u064a\u0631","\u0641\u0628\u0631\u0627\u064a\u0631","\u0645\u0627\u0631\u0633","\u0623\u0628\u0631\u064a\u0644","\u0645\u0627\u064a\u0648","\u064a\u0648\u0646\u064a\u0648","\u064a\u0648\u0644\u064a\u0648","\u0623\u063a\u0633\u0637\u0633","\u0633\u0628\u062a\u0645\u0628\u0631","\u0623\u0643\u062a\u0648\u0628\u0631","\u0646\u0648\u0641\u0645\u0628\u0631","\u062f\u064a\u0633\u0645\u0628\u0631"]),t.s) +B.a2I=A.a(s(["am Vormittag","am Namittag"]),t.s) +B.ys=A.a(s(["\u0d1c\u0d28\u0d41\u0d35\u0d30\u0d3f","\u0d2b\u0d46\u0d2c\u0d4d\u0d30\u0d41\u0d35\u0d30\u0d3f","\u0d2e\u0d3e\u0d7c\u0d1a\u0d4d\u0d1a\u0d4d","\u0d0f\u0d2a\u0d4d\u0d30\u0d3f\u0d7d","\u0d2e\u0d47\u0d2f\u0d4d","\u0d1c\u0d42\u0d7a","\u0d1c\u0d42\u0d32\u0d48","\u0d13\u0d17\u0d38\u0d4d\u0d31\u0d4d\u0d31\u0d4d","\u0d38\u0d46\u0d2a\u0d4d\u0d31\u0d4d\u0d31\u0d02\u0d2c\u0d7c","\u0d12\u0d15\u0d4d\u200c\u0d1f\u0d4b\u0d2c\u0d7c","\u0d28\u0d35\u0d02\u0d2c\u0d7c","\u0d21\u0d3f\u0d38\u0d02\u0d2c\u0d7c"]),t.s) +B.yt=A.a(s(["\u0ead\u0eb2","\u0e88","\u0ead","\u0e9e","\u0e9e\u0eab","\u0eaa\u0eb8","\u0eaa"]),t.s) +B.fg=A.a(s(["f.Kr.","e.Kr."]),t.s) +B.a2J=A.a(s(["1. nelj.","2. nelj.","3. nelj.","4. nelj."]),t.s) +B.l7=new A.nj(0,"left") +B.p_=new A.nj(1,"right") +B.l8=new A.nj(3,"justify") +B.b3=new A.nj(4,"start") +B.p0=new A.nj(5,"end") +B.a2K=A.a(s([B.l7,B.p_,B.eF,B.l8,B.b3,B.p0]),A.ah("G")) +B.a2L=A.a(s(["\u7b2c1\u56db\u534a\u671f","\u7b2c2\u56db\u534a\u671f","\u7b2c3\u56db\u534a\u671f","\u7b2c4\u56db\u534a\u671f"]),t.s) +B.a2M=A.a(s(["\u0441\u0456\u0447\u0435\u043d\u044c","\u043b\u044e\u0442\u0438\u0439","\u0431\u0435\u0440\u0435\u0437\u0435\u043d\u044c","\u043a\u0432\u0456\u0442\u0435\u043d\u044c","\u0442\u0440\u0430\u0432\u0435\u043d\u044c","\u0447\u0435\u0440\u0432\u0435\u043d\u044c","\u043b\u0438\u043f\u0435\u043d\u044c","\u0441\u0435\u0440\u043f\u0435\u043d\u044c","\u0432\u0435\u0440\u0435\u0441\u0435\u043d\u044c","\u0436\u043e\u0432\u0442\u0435\u043d\u044c","\u043b\u0438\u0441\u0442\u043e\u043f\u0430\u0434","\u0433\u0440\u0443\u0434\u0435\u043d\u044c"]),t.s) +B.a2N=A.a(s(["\u043d\u044d\u0433\u0434\u04af\u0433\u044d\u044d\u0440 \u0441\u0430\u0440","\u0445\u043e\u0451\u0440\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440","\u0433\u0443\u0440\u0430\u0432\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440","\u0434\u04e9\u0440\u04e9\u0432\u0434\u04af\u0433\u044d\u044d\u0440 \u0441\u0430\u0440","\u0442\u0430\u0432\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440","\u0437\u0443\u0440\u0433\u0430\u0430\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440","\u0434\u043e\u043b\u043e\u043e\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440","\u043d\u0430\u0439\u043c\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440","\u0435\u0441\u0434\u04af\u0433\u044d\u044d\u0440 \u0441\u0430\u0440","\u0430\u0440\u0430\u0432\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440","\u0430\u0440\u0432\u0430\u043d \u043d\u044d\u0433\u0434\u04af\u0433\u044d\u044d\u0440 \u0441\u0430\u0440","\u0430\u0440\u0432\u0430\u043d \u0445\u043e\u0451\u0440\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440"]),t.s) +B.yu=A.a(s(["\u05d9\u05d5\u05dd \u05d0\u05f3","\u05d9\u05d5\u05dd \u05d1\u05f3","\u05d9\u05d5\u05dd \u05d2\u05f3","\u05d9\u05d5\u05dd \u05d3\u05f3","\u05d9\u05d5\u05dd \u05d4\u05f3","\u05d9\u05d5\u05dd \u05d5\u05f3","\u05e9\u05d1\u05ea"]),t.s) +B.dK=A.a(s(["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"]),t.s) +B.a2P=A.a(s(["p.m.\u0113.","m.\u0113."]),t.s) +B.a2O=A.a(s(["EEEE d. MMMM y","d. MMMM y","d. M. y","dd.MM.yy"]),t.s) +B.yv=A.a(s(["bazar","bazar ert\u0259si","\xe7\u0259r\u015f\u0259nb\u0259 ax\u015fam\u0131","\xe7\u0259r\u015f\u0259nb\u0259","c\xfcm\u0259 ax\u015fam\u0131","c\xfcm\u0259","\u015f\u0259nb\u0259"]),t.s) +B.a2Q=A.a(s(["\u043f\u0440\u0432\u043e \u0442\u0440\u043e\u043c\u0435\u0441\u0435\u0447\u0458\u0435","\u0432\u0442\u043e\u0440\u043e \u0442\u0440\u043e\u043c\u0435\u0441\u0435\u0447\u0458\u0435","\u0442\u0440\u0435\u0442\u043e \u0442\u0440\u043e\u043c\u0435\u0441\u0435\u0447\u0458\u0435","\u0447\u0435\u0442\u0432\u0440\u0442\u043e \u0442\u0440\u043e\u043c\u0435\u0441\u0435\u0447\u0458\u0435"]),t.s) +B.a2R=A.a(s(["sunnuntai","maanantai","tiistai","keskiviikko","torstai","perjantai","lauantai"]),t.s) +B.a2S=A.a(s(["Cyn Crist","Oed Crist"]),t.s) +B.a2T=A.a(s(["af","am","ar","as","az","be","bg","bn","bs","ca","cs","cy","da","de","el","en","es","et","eu","fa","fi","fil","fr","gl","gsw","gu","he","hi","hr","hu","hy","id","is","it","ja","ka","kk","km","kn","ko","ky","lo","lt","lv","mk","ml","mn","mr","ms","my","nb","ne","nl","no","or","pa","pl","pt","ro","ru","si","sk","sl","sq","sr","sv","sw","ta","te","th","tl","tr","uk","ur","uz","vi","zh","zu"]),t.s) +B.ci=A.a(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.t) +B.fh=A.a(s(["\u65e5","\u4e00","\u4e8c","\u4e09","\u56db","\u4e94","\u516d"]),t.s) +B.yw=A.a(s(["Paz","Pzt","Sal","\xc7ar","Per","Cum","Cmt"]),t.s) +B.a2U=A.a(s(["1. \u0442\u0440\u0438\u043c.","2. \u0442\u0440\u0438\u043c.","3. \u0442\u0440\u0438\u043c.","4. \u0442\u0440\u0438\u043c."]),t.s) +B.yx=A.a(s(["\u0908\u0938\u093e \u092a\u0942\u0930\u094d\u0935","\u0938\u0928\u094d"]),t.s) +B.a2V=A.a(s(["\u05dc\u05e4\u05e0\u05d4\u05f4\u05e1","\u05dc\u05e1\u05e4\u05d9\u05e8\u05d4"]),t.s) +B.yy=A.a(s(["Min","Sen","Sel","Rab","Kam","Jum","Sab"]),t.s) +B.yA=A.a(s(["D","L","M","M","G","V","S"]),t.s) +B.yz=A.a(s(["Jan.","Feb.","Mrt.","Apr.","Mei","Jun.","Jul.","Aug.","Sep.","Okt.","Nov.","Des."]),t.s) +B.k4=A.a(s(["domingo","segunda-feira","ter\xe7a-feira","quarta-feira","quinta-feira","sexta-feira","s\xe1bado"]),t.s) +B.yB=A.a(s(["Z","M","D","W","D","V","Z"]),t.s) +B.yC=A.a(s(["\u09b0\u09ac\u09bf\u09ac\u09be\u09b0","\u09b8\u09cb\u09ae\u09ac\u09be\u09b0","\u09ae\u0999\u09cd\u0997\u09b2\u09ac\u09be\u09b0","\u09ac\u09c1\u09a7\u09ac\u09be\u09b0","\u09ac\u09c3\u09b9\u09b8\u09cd\u09aa\u09a4\u09bf\u09ac\u09be\u09b0","\u09b6\u09c1\u0995\u09cd\u09b0\u09ac\u09be\u09b0","\u09b6\u09a8\u09bf\u09ac\u09be\u09b0"]),t.s) +B.a30=A.a(s(["die","h\xebn","mar","m\xebr","enj","pre","sht"]),t.s) +B.a31=A.a(s(["\u043f. \u043d. \u0435.","\u043d. \u0435."]),t.s) +B.a32=A.a(s(["\u0644\u0647 \u0645\u06cc\u0644\u0627\u062f \u0648\u0693\u0627\u0646\u062f\u06d0","\u0645."]),t.s) +B.yD=A.a(s(["nede\u013ea","pondelok","utorok","streda","\u0161tvrtok","piatok","sobota"]),t.s) +B.yE=A.a(s(["G","F","M","A","M","G","L","A","S","O","N","D"]),t.s) +B.SR=new A.a1x(null) +B.a33=A.a(s([B.pU,B.SR]),t.p) +B.a34=A.a(s(["\u1325\u12cb\u1275","\u12a8\u1230\u12d3\u1275"]),t.s) +B.yF=A.a(s(["jan.","feb.","mars","apr.","maj","juni","juli","aug.","sep.","okt.","nov.","dec."]),t.s) +B.a35=A.a(s(["1. \u010detrtletje","2. \u010detrtletje","3. \u010detrtletje","4. \u010detrtletje"]),t.s) +B.a36=A.a(s(["\u042f\u043d\u0432\u0430\u0440\u044c","\u0424\u0435\u0432\u0440\u0430\u043b\u044c","\u041c\u0430\u0440\u0442","\u0410\u043f\u0440\u0435\u043b\u044c","\u041c\u0430\u0439","\u0418\u044e\u043d\u044c","\u0418\u044e\u043b\u044c","\u0410\u0432\u0433\u0443\u0441\u0442","\u0421\u0435\u043d\u0442\u044f\u0431\u0440\u044c","\u041e\u043a\u0442\u044f\u0431\u0440\u044c","\u041d\u043e\u044f\u0431\u0440\u044c","\u0414\u0435\u043a\u0430\u0431\u0440\u044c"]),t.s) +B.yG=A.a(s(["\u044f\u043d\u0432\u0430\u0440\u044c","\u0444\u0435\u0432\u0440\u0430\u043b\u044c","\u043c\u0430\u0440\u0442","\u0430\u043f\u0440\u0435\u043b\u044c","\u043c\u0430\u0439","\u0438\u044e\u043d\u044c","\u0438\u044e\u043b\u044c","\u0430\u0432\u0433\u0443\u0441\u0442","\u0441\u0435\u043d\u0442\u044f\u0431\u0440\u044c","\u043e\u043a\u0442\u044f\u0431\u0440\u044c","\u043d\u043e\u044f\u0431\u0440\u044c","\u0434\u0435\u043a\u0430\u0431\u0440\u044c"]),t.s) +B.a37=A.a(s(["\u0644\u0647 \u0645\u06cc\u0644\u0627\u062f \u0685\u062e\u0647 \u0648\u0693\u0627\u0646\u062f\u06d0","\u0644\u0647 \u0645\u06cc\u0644\u0627\u062f \u0685\u062e\u0647 \u0648\u0631\u0648\u0633\u062a\u0647"]),t.s) +B.bd=A.a(s(["1","2","3","4","5","6","7","8","9","10","11","12"]),t.s) +B.yH=A.a(s(["\u0458\u0430\u043d\u0443\u0430\u0440\u0438","\u0444\u0435\u0432\u0440\u0443\u0430\u0440\u0438","\u043c\u0430\u0440\u0442","\u0430\u043f\u0440\u0438\u043b","\u043c\u0430\u0458","\u0458\u0443\u043d\u0438","\u0458\u0443\u043b\u0438","\u0430\u0432\u0433\u0443\u0441\u0442","\u0441\u0435\u043f\u0442\u0435\u043c\u0432\u0440\u0438","\u043e\u043a\u0442\u043e\u043c\u0432\u0440\u0438","\u043d\u043e\u0435\u043c\u0432\u0440\u0438","\u0434\u0435\u043a\u0435\u043c\u0432\u0440\u0438"]),t.s) +B.a39=A.a(s(["1. hiruhilekoa","2. hiruhilekoa","3. hiruhilekoa","4. hiruhilekoa"]),t.s) +B.a3a=A.a(s(["EEEE d MMMM y","d MMMM y","d MMM y","y/M/d"]),t.s) +B.a3b=A.a(s(["EEEE, y. 'gada' d. MMMM","y. 'gada' d. MMMM","y. 'gada' d. MMM","dd.MM.yy"]),t.s) +B.fq=new A.l(1,0) +B.aal=new A.l(1,1) +B.co=new A.l(0,1) +B.aaM=new A.l(-1,1) +B.o1=new A.l(-1,0) +B.aaN=new A.l(-1,-1) +B.Fo=new A.l(0,-1) +B.aan=new A.l(1,-1) +B.k5=A.a(s([B.fq,B.aal,B.co,B.aaM,B.o1,B.aaN,B.Fo,B.aan]),t.yv) +B.a3c=A.a(s(["przed nasz\u0105 er\u0105","naszej ery"]),t.s) +B.yI=A.a(s(["\u043d\u0435\u0434\u0456\u043b\u044f","\u043f\u043e\u043d\u0435\u0434\u0456\u043b\u043e\u043a","\u0432\u0456\u0432\u0442\u043e\u0440\u043e\u043a","\u0441\u0435\u0440\u0435\u0434\u0430","\u0447\u0435\u0442\u0432\u0435\u0440","\u043f\u02bc\u044f\u0442\u043d\u0438\u0446\u044f","\u0441\u0443\u0431\u043e\u0442\u0430"]),t.s) +B.a3d=A.a(s(["sv\u0113td.","pirmd.","otrd.","tre\u0161d.","ceturtd.","piektd.","sestd."]),t.s) +B.yJ=A.a(s(["\u0b9e\u0bbe","\u0ba4\u0bbf","\u0b9a\u0bc6","\u0baa\u0bc1","\u0bb5\u0bbf","\u0bb5\u0bc6","\u0b9a"]),t.s) +B.a3e=A.a(s(["da manh\xe3","da tarde"]),t.s) +B.yK=A.a(s(["\u5468\u65e5","\u5468\u4e00","\u5468\u4e8c","\u5468\u4e09","\u5468\u56db","\u5468\u4e94","\u5468\u516d"]),t.s) +B.ns=A.a(s(["\u7b2c1\u5b63","\u7b2c2\u5b63","\u7b2c3\u5b63","\u7b2c4\u5b63"]),t.s) +B.yL=A.a(s(["jaan","veebr","m\xe4rts","apr","mai","juuni","juuli","aug","sept","okt","nov","dets"]),t.s) +B.yM=A.a(s(["\u091c\u0928\u0970","\u092b\u093c\u0930\u0970","\u092e\u093e\u0930\u094d\u091a","\u0905\u092a\u094d\u0930\u0948\u0932","\u092e\u0908","\u091c\u0942\u0928","\u091c\u0941\u0932\u0970","\u0905\u0917\u0970","\u0938\u093f\u0924\u0970","\u0905\u0915\u094d\u0924\u0942\u0970","\u0928\u0935\u0970","\u0926\u093f\u0938\u0970"]),t.s) +B.a3f=A.a(s(["miloddan avvalgi","milodiy"]),t.s) +B.nt=A.a(s(["Mon","Tue","Wed","Thu","Fri","Sat","Sun"]),t.s) +B.cR=new A.M(855638016) +B.Mh=new A.c8(-1,B.a2,B.cR,B.kx,1) +B.cQ=new A.M(603979776) +B.MB=new A.c8(0,B.a2,B.cQ,B.co,1) +B.ME=new A.c8(0,B.a2,B.c5,B.co,3) +B.yN=A.a(s([B.Mh,B.MB,B.ME]),t.G) +B.yO=A.a(s(["n","p","u","s","\u0161","p","s"]),t.s) +B.a3i=A.a(s(["1-\u0447\u0435\u0439.","2-\u0447\u0435\u0439.","3-\u0447\u0435\u0439.","4-\u0447\u0435\u0439."]),t.s) +B.yP=A.a(s(["su","ma","ti","ke","to","pe","la"]),t.s) +B.yQ=A.a(s(["\u091c","\u092b\u093c","\u092e\u093e","\u0905","\u092e","\u091c\u0942","\u091c\u0941","\u0905","\u0938\u093f","\u0905","\u0928","\u0926\u093f"]),t.s) +B.a3j=A.a(s(["\u0e01\u0e48\u0e2d\u0e19\u0e40\u0e17\u0e35\u0e48\u0e22\u0e07","\u0e2b\u0e25\u0e31\u0e07\u0e40\u0e17\u0e35\u0e48\u0e22\u0e07"]),t.s) +B.a3k=A.a(s(["EEEE, d MMMM y '\u0440'.","d MMMM y '\u0440'.","d MMM y '\u0440'.","dd.MM.yy"]),t.s) +B.yR=A.a(s(["jan\xfaar","febr\xfaar","mars","apr\xedl","ma\xed","j\xfan\xed","j\xfal\xed","\xe1g\xfast","september","okt\xf3ber","n\xf3vember","desember"]),t.s) +B.yS=A.a(s(["ika-1 quarter","ika-2 quarter","ika-3 quarter","ika-4 na quarter"]),t.s) +B.yT=A.a(s(["ned","pon","uto","sre","\u010det","pet","sub"]),t.s) +B.a3m=A.a(s(["1-\u056b\u0576 \u0565\u057c\u0561\u0574\u057d\u0575\u0561\u056f","2-\u0580\u0564 \u0565\u057c\u0561\u0574\u057d\u0575\u0561\u056f","3-\u0580\u0564 \u0565\u057c\u0561\u0574\u057d\u0575\u0561\u056f","4-\u0580\u0564 \u0565\u057c\u0561\u0574\u057d\u0575\u0561\u056f"]),t.s) +B.a3l=A.a(s(["EEEE, d. MMMM y.","d. MMMM y.","d. MMM y.","dd. MM. y."]),t.s) +B.a3o=A.a(s(["tremujori i par\xeb","tremujori i dyt\xeb","tremujori i tret\xeb","tremujori i kat\xebrt"]),t.s) +B.a3n=A.a(s(["stycze\u0144","luty","marzec","kwiecie\u0144","maj","czerwiec","lipiec","sierpie\u0144","wrzesie\u0144","pa\u017adziernik","listopad","grudzie\u0144"]),t.s) +B.hx=A.a(s([0,0,65490,45055,65535,34815,65534,18431]),t.t) +B.yU=A.a(s(["voor Christus","na Christus"]),t.s) +B.yV=A.a(s(["\u0458\u0430\u043d\u0443\u0430\u0440","\u0444\u0435\u0431\u0440\u0443\u0430\u0440","\u043c\u0430\u0440\u0442","\u0430\u043f\u0440\u0438\u043b","\u043c\u0430\u0458","\u0458\u0443\u043d","\u0458\u0443\u043b","\u0430\u0432\u0433\u0443\u0441\u0442","\u0441\u0435\u043f\u0442\u0435\u043c\u0431\u0430\u0440","\u043e\u043a\u0442\u043e\u0431\u0430\u0440","\u043d\u043e\u0432\u0435\u043c\u0431\u0430\u0440","\u0434\u0435\u0446\u0435\u043c\u0431\u0430\u0440"]),t.s) +B.bV=A.a(s(["Before Christ","Anno Domini"]),t.s) +B.a3p=A.a(s(["{1} 'klo' {0}","{1} 'klo' {0}","{1} 'klo' {0}","{1} {0}"]),t.s) +B.a3q=A.a(s(["1. \u0161tvr\u0165rok","2. \u0161tvr\u0165rok","3. \u0161tvr\u0165rok","4. \u0161tvr\u0165rok"]),t.s) +B.yW=A.a(s(["\u0b9e\u0bbe\u0baf\u0bbf.","\u0ba4\u0bbf\u0b99\u0bcd.","\u0b9a\u0bc6\u0bb5\u0bcd.","\u0baa\u0bc1\u0ba4.","\u0bb5\u0bbf\u0baf\u0bbe.","\u0bb5\u0bc6\u0bb3\u0bcd.","\u0b9a\u0ba9\u0bbf"]),t.s) +B.a3r=A.a(s(["zzzz HH:mm:ss","z HH:mm:ss","H:mm:ss","H:mm"]),t.s) +B.a3s=A.a(s(["\u0399\u03b1\u03bd","\u03a6\u03b5\u03b2","\u039c\u03b1\u03c1","\u0391\u03c0\u03c1","\u039c\u03b1\u0390","\u0399\u03bf\u03c5\u03bd","\u0399\u03bf\u03c5\u03bb","\u0391\u03c5\u03b3","\u03a3\u03b5\u03c0","\u039f\u03ba\u03c4","\u039d\u03bf\u03b5","\u0394\u03b5\u03ba"]),t.s) +B.a3t=A.a(s(["\u0da2\u0db1","\u0db4\u0dd9\u0db6","\u0db8\u0dcf\u0dbb\u0dca\u0dad\u0dd4","\u0d85\u0db4\u0dca\u200d\u0dbb\u0dda\u0dbd\u0dca","\u0db8\u0dd0\u0dba\u0dd2","\u0da2\u0dd6\u0db1\u0dd2","\u0da2\u0dd6\u0dbd\u0dd2","\u0d85\u0d9c\u0ddd","\u0dc3\u0dd0\u0db4\u0dca","\u0d94\u0d9a\u0dca","\u0db1\u0ddc\u0dc0\u0dd0","\u0daf\u0dd9\u0dc3\u0dd0"]),t.s) +B.a3u=A.a(s(["\u043f\u0440\u0435\u0434 \u043d\u0430\u0448\u0430\u0442\u0430 \u0435\u0440\u0430","\u043e\u0434 \u043d\u0430\u0448\u0430\u0442\u0430 \u0435\u0440\u0430"]),t.s) +B.yX=A.a(s(["EEEE, d. MMMM y.","d. MMMM y.","d. M. y.","d.M.yy."]),t.s) +B.a3v=A.a(s(["Sv\u0113tdiena","Pirmdiena","Otrdiena","Tre\u0161diena","Ceturtdiena","Piektdiena","Sestdiena"]),t.s) +B.a3w=A.a(s(["enne Kristust","p\xe4rast Kristust"]),t.s) +B.a3x=A.a(s(["\u0908\u0938\u093e-\u092a\u0942\u0930\u094d\u0935","\u0908\u0938\u094d\u0935\u0940"]),t.s) +B.hJ=new A.lb(0,"controlModifier") +B.hK=new A.lb(1,"shiftModifier") +B.hL=new A.lb(2,"altModifier") +B.hM=new A.lb(3,"metaModifier") +B.Fc=new A.lb(4,"capsLockModifier") +B.Fd=new A.lb(5,"numLockModifier") +B.Fe=new A.lb(6,"scrollLockModifier") +B.Ff=new A.lb(7,"functionModifier") +B.a9H=new A.lb(8,"symbolModifier") +B.yY=A.a(s([B.hJ,B.hK,B.hL,B.hM,B.Fc,B.Fd,B.Fe,B.Ff,B.a9H]),A.ah("G")) +B.a3y=A.a(s(["tammi","helmi","maalis","huhti","touko","kes\xe4","hein\xe4","elo","syys","loka","marras","joulu"]),t.s) +B.yZ=A.a(s(["So","Mo","Di","Mi","Do","Fr","Sa"]),t.s) +B.fi=A.a(s([0,0,26498,1023,65534,34815,65534,18431]),t.t) +B.z_=A.a(s(["Su.","M\xe4.","Zi.","Mi.","Du.","Fr.","Sa."]),t.s) +B.a3z=A.a(s(["EEEE, d \u05d1MMMM y","d \u05d1MMMM y","d \u05d1MMM y","d.M.y"]),t.s) +B.k6=A.a(s(["\u1798\u1780\u179a\u17b6","\u1780\u17bb\u1798\u17d2\u1797\u17c8","\u1798\u17b8\u1793\u17b6","\u1798\u17c1\u179f\u17b6","\u17a7\u179f\u1797\u17b6","\u1798\u17b7\u1790\u17bb\u1793\u17b6","\u1780\u1780\u17d2\u1780\u178a\u17b6","\u179f\u17b8\u17a0\u17b6","\u1780\u1789\u17d2\u1789\u17b6","\u178f\u17bb\u179b\u17b6","\u179c\u17b7\u1785\u17d2\u1786\u17b7\u1780\u17b6","\u1792\u17d2\u1793\u17bc"]),t.s) +B.k7=A.a(s(["Januar","Februar","M\xe4rz","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember"]),t.s) +B.a3A=A.a(s(["d","l","m","m","j","v","s"]),t.s) +B.cj=A.a(s([2817806672,1698790995,2752977603,1579629206,1806384075,1167925233,1492823211,65227667,4197458005,1836494326,1993115793,1275262245,3622129660,3408578007,1144333952,2741155215,1521606217,465184103,250234264,3237895649,1966064386,4031545618,2537983395,4191382470,1603208167,2626819477,2054012907,1498584538,2210321453,561273043,1776306473,3368652356,2311222634,2039411832,1045993835,1907959773,1340194486,2911432727,2887829862,986611124,1256153880,823846274,860985184,2136171077,2003087840,2926295940,2692873756,722008468,1749577816,4249194265,1826526343,4168831671,3547573027,38499042,2401231703,2874500650,686535175,3266653955,2076542618,137876389,2267558130,2780767154,1778582202,2182540636,483363371,3027871634,4060607472,3798552225,4107953613,3188000469,1647628575,4272342154,1395537053,1442030240,3783918898,3958809717,3968011065,4016062634,2675006982,275692881,2317434617,115185213,88006062,3185986886,2371129781,1573155077,3557164143,357589247,4221049124,3921532567,1128303052,2665047927,1122545853,2341013384,1528424248,4006115803,175939911,256015593,512030921,0,2256537987,3979031112,1880170156,1918528590,4279172603,948244310,3584965918,959264295,3641641572,2791073825,1415289809,775300154,1728711857,3881276175,2532226258,2442861470,3317727311,551313826,1266113129,437394454,3130253834,715178213,3760340035,387650077,218697227,3347837613,2830511545,2837320904,435246981,125153100,3717852859,1618977789,637663135,4117912764,996558021,2130402100,692292470,3324234716,4243437160,4058298467,3694254026,2237874704,580326208,298222624,608863613,1035719416,855223825,2703869805,798891339,817028339,1384517100,3821107152,380840812,3111168409,1217663482,1693009698,2365368516,1072734234,746411736,2419270383,1313441735,3510163905,2731183358,198481974,2180359887,3732579624,2394413606,3215802276,2637835492,2457358349,3428805275,1182684258,328070850,3101200616,4147719774,2948825845,2153619390,2479909244,768962473,304467891,2578237499,2098729127,1671227502,3141262203,2015808777,408514292,3080383489,2588902312,1855317605,3875515006,3485212936,3893751782,2615655129,913263310,161475284,2091919830,2997105071,591342129,2493892144,1721906624,3159258167,3397581990,3499155632,3634836245,2550460746,3672916471,1355644686,4136703791,3595400845,2968470349,1303039060,76997855,3050413795,2288667675,523026872,1365591679,3932069124,898367837,1955068531,1091304238,493335386,3537605202,1443948851,1205234963,1641519756,211892090,351820174,1007938441,665439982,3378624309,3843875309,2974251580,3755121753,1945261375,3457423481,935818175,3455538154,2868731739,1866325780,3678697606,4088384129,3295197502,874788908,1084473951,3273463410,635616268,1228679307,2500722497,27801969,3003910366,3837057180,3243664528,2227927905,3056784752,1550600308,1471729730]),t.t) +B.a3B=A.a(s(["B.","B.e.","\xc7.a.","\xc7.","C.a.","C.","\u015e."]),t.s) +B.z0=A.a(s(["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Agu","Sep","Okt","Nov","Des"]),t.s) +B.z1=A.a(s(["\u1798","\u1780","\u1798","\u1798","\u17a7","\u1798","\u1780","\u179f","\u1780","\u178f","\u179c","\u1792"]),t.s) +B.z2=A.a(s(["text","multiline","number","phone","datetime","emailAddress","url","visiblePassword","name","address","none"]),t.s) +B.dL=A.a(s(["Lin","Lun","Mar","Miy","Huw","Biy","Sab"]),t.s) +B.a3C=A.a(s(["prijepodne","popodne"]),t.s) +B.a3D=A.a(s(["sausis","vasaris","kovas","balandis","gegu\u017e\u0117","bir\u017eelis","liepa","rugpj\u016btis","rugs\u0117jis","spalis","lapkritis","gruodis"]),t.s) +B.k9=A.a(s(["Linggo","Lunes","Martes","Miyerkules","Huwebes","Biyernes","Sabado"]),t.s) +B.k8=A.a(s(["ned","pon","uto","sri","\u010det","pet","sub"]),t.s) +B.a3E=A.a(s(["1-ci kv.","2-ci kv.","3-c\xfc kv.","4-c\xfc kv."]),t.s) +B.a3F=A.a(s(["1.\xa0cet.","2.\xa0cet.","3.\xa0cet.","4.\xa0cet."]),t.s) +B.ka=A.a(s(["P","E","T","K","N","R","L"]),t.s) +B.ae=A.a(s(["{1} {0}","{1} {0}","{1} {0}","{1} {0}"]),t.s) +B.a3G=A.a(s(["\u0d9a\u0dcf\u0dbb\u0dca:1","\u0d9a\u0dcf\u0dbb\u0dca:2","\u0d9a\u0dcf\u0dbb\u0dca:3","\u0d9a\u0dcf\u0dbb\u0dca:4"]),t.s) +B.a3H=A.a(s(["tremujori I","tremujori II","tremujori III","tremujori IV"]),t.s) +B.z3=A.a(s(["\u1303","\u134c","\u121b","\u12a4","\u121c","\u1301","\u1301","\u12a6","\u1234","\u12a6","\u1296","\u12f2"]),t.s) +B.z4=A.a(s(["Jan","Feb","Mas","Eph","Mey","Jun","Jul","Aga","Sep","Okt","Nov","Dis"]),t.s) +B.z5=A.a(s(["urt.","ots.","mar.","api.","mai.","eka.","uzt.","abu.","ira.","urr.","aza.","abe."]),t.s) +B.nu=A.a(s(["\u099c\u09be\u09a8\u09c1\u09af\u09bc\u09be\u09b0\u09c0","\u09ab\u09c7\u09ac\u09cd\u09b0\u09c1\u09af\u09bc\u09be\u09b0\u09c0","\u09ae\u09be\u09b0\u09cd\u099a","\u098f\u09aa\u09cd\u09b0\u09bf\u09b2","\u09ae\u09c7","\u099c\u09c1\u09a8","\u099c\u09c1\u09b2\u09be\u0987","\u0986\u0997\u09b8\u09cd\u099f","\u09b8\u09c7\u09aa\u09cd\u099f\u09c7\u09ae\u09cd\u09ac\u09b0","\u0985\u0995\u09cd\u099f\u09cb\u09ac\u09b0","\u09a8\u09ad\u09c7\u09ae\u09cd\u09ac\u09b0","\u09a1\u09bf\u09b8\u09c7\u09ae\u09cd\u09ac\u09b0"]),t.s) +B.a3I=A.a(s(["\u0442\u0430\u04a3\u043a\u044b","\u0442\u04af\u0448\u0442\u04e9\u043d \u043a\u0438\u0439\u0438\u043d\u043a\u0438"]),t.s) +B.z6=A.a(s(["{1} 'u' {0}","{1} 'u' {0}","{1} {0}","{1} {0}"]),t.s) +B.a3J=A.a(s(["\u043f\u0440\u0435\u0442\u043f\u043b\u0430\u0434\u043d\u0435","\u043f\u043e\u043f\u043b\u0430\u0434\u043d\u0435"]),t.s) +B.kb=A.a(s(["\u9031\u65e5","\u9031\u4e00","\u9031\u4e8c","\u9031\u4e09","\u9031\u56db","\u9031\u4e94","\u9031\u516d"]),t.s) +B.z7=A.a(s(["nedelja","ponedeljek","torek","sreda","\u010detrtek","petek","sobota"]),t.s) +B.z8=A.a(s(["Sondag","Maandag","Dinsdag","Woensdag","Donderdag","Vrydag","Saterdag"]),t.s) +B.a3K=A.a(s(["EEEE, d 'de' MMMM 'de' y","d 'de' MMMM 'de' y","d 'de' MMM 'de' y","dd/MM/y"]),t.s) +B.a3L=A.a(s(["\u0b95\u0bbf.\u0bae\u0bc1.","\u0b95\u0bbf.\u0baa\u0bbf."]),t.s) +B.z9=A.a(s(["jan.","feb.","mrt.","apr.","mei","jun.","jul.","aug.","sep.","okt.","nov.","dec."]),t.s) +B.a3M=A.a(s(["domingo","luns","martes","m\xe9rcores","xoves","venres","s\xe1bado"]),t.s) +B.a3N=A.a(s(["1\ubd84\uae30","2\ubd84\uae30","3\ubd84\uae30","4\ubd84\uae30"]),t.s) +B.za=A.a(s(["\u0644\u0648\u0645\u0693\u06cd \u0631\u0628\u0639\u0647","\u06f2\u0645\u0647 \u0631\u0628\u0639\u0647","\u06f3\u0645\u0647 \u0631\u0628\u0639\u0647","\u06f4\u0645\u0647 \u0631\u0628\u0639\u0647"]),t.s) +B.zb=A.a(s(["f\xf8r Kristus","etter Kristus"]),t.s) +B.zc=A.a(s(["So.","Ma.","Di.","Wo.","Do.","Vr.","Sa."]),t.s) +B.ze=A.a(s(["S","M","B","T","S","H","M"]),t.s) +B.zd=A.a(s(["\u0906\u0907\u0924\u092c\u093e\u0930","\u0938\u094b\u092e\u092c\u093e\u0930","\u092e\u0919\u094d\u0917\u0932\u092c\u093e\u0930","\u092c\u0941\u0927\u092c\u093e\u0930","\u092c\u093f\u0939\u093f\u092c\u093e\u0930","\u0936\u0941\u0915\u094d\u0930\u092c\u093e\u0930","\u0936\u0928\u093f\u092c\u093e\u0930"]),t.s) +B.a3O=A.a(s(["EEEE, d MMMM y","d MMMM y","d.M.y","d.M.yy"]),t.s) +B.zf=A.a(s(["\u0ea7\u0eb1\u0e99\u0ead\u0eb2\u0e97\u0eb4\u0e94","\u0ea7\u0eb1\u0e99\u0e88\u0eb1\u0e99","\u0ea7\u0eb1\u0e99\u0ead\u0eb1\u0e87\u0e84\u0eb2\u0e99","\u0ea7\u0eb1\u0e99\u0e9e\u0eb8\u0e94","\u0ea7\u0eb1\u0e99\u0e9e\u0eb0\u0eab\u0eb1\u0e94","\u0ea7\u0eb1\u0e99\u0eaa\u0eb8\u0e81","\u0ea7\u0eb1\u0e99\u0ec0\u0eaa\u0ebb\u0eb2"]),t.s) +B.a3P=A.a(s(["Ion","Chw","Maw","Ebr","Mai","Meh","Gor","Awst","Medi","Hyd","Tach","Rhag"]),t.s) +B.eE=new A.fV(1,"fuchsia") +B.fL=new A.fV(3,"linux") +B.fM=new A.fV(5,"windows") +B.a3Q=A.a(s([B.bT,B.eE,B.bo,B.fL,B.dj,B.fM]),A.ah("G")) +B.a3R=A.a(s(["\u0554\u0580\u056b\u057d\u057f\u0578\u057d\u056b\u0581 \u0561\u057c\u0561\u057b","\u0554\u0580\u056b\u057d\u057f\u0578\u057d\u056b\u0581 \u0570\u0565\u057f\u0578"]),t.s) +B.a3S=A.a(s(["Xaneiro","Febreiro","Marzo","Abril","Maio","Xu\xf1o","Xullo","Agosto","Setembro","Outubro","Novembro","Decembro"]),t.s) +B.zg=A.a(s(["\u092a\u0939\u093f\u0932\u094b \u0938\u0924\u094d\u0930","\u0926\u094b\u0938\u094d\u0930\u094b \u0938\u0924\u094d\u0930","\u0924\u0947\u0938\u094d\u0930\u094b \u0938\u0924\u094d\u0930","\u091a\u094c\u0925\u094b \u0938\u0924\u094d\u0930"]),t.s) +B.au=A.a(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.t) +B.zh=A.a(s(["\u056f\u056b\u0580","\u0565\u0580\u056f","\u0565\u0580\u0584","\u0579\u0580\u0584","\u0570\u0576\u0563","\u0578\u0582\u0580","\u0577\u0562\u0569"]),t.s) +B.zi=A.a(s(["\u043d\u0435\u0434\u0435\u043b\u0430","\u043f\u043e\u043d\u0435\u0434\u0435\u043b\u043d\u0438\u043a","\u0432\u0442\u043e\u0440\u043d\u0438\u043a","\u0441\u0440\u0435\u0434\u0430","\u0447\u0435\u0442\u0432\u0440\u0442\u043e\u043a","\u043f\u0435\u0442\u043e\u043a","\u0441\u0430\u0431\u043e\u0442\u0430"]),t.s) +B.nv=A.a(s(["\u0698\u0627\u0646\u0648\u06cc\u0647","\u0641\u0648\u0631\u06cc\u0647","\u0645\u0627\u0631\u0633","\u0622\u0648\u0631\u06cc\u0644","\u0645\u0647","\u0698\u0648\u0626\u0646","\u0698\u0648\u0626\u06cc\u0647","\u0627\u0648\u062a","\u0633\u067e\u062a\u0627\u0645\u0628\u0631","\u0627\u06a9\u062a\u0628\u0631","\u0646\u0648\u0627\u0645\u0628\u0631","\u062f\u0633\u0627\u0645\u0628\u0631"]),t.s) +B.a3T=A.a(s(["Prvi kvartal","Drugi kvartal","Tre\u0107i kvartal","\u010cetvrti kvartal"]),t.s) +B.a3V=A.a(s(["{1} \u0b85\u0ba9\u0bcd\u0bb1\u0bc1 {0}","{1} \u0b85\u0ba9\u0bcd\u0bb1\u0bc1 {0}","{1}, {0}","{1}, {0}"]),t.s) +B.fj=A.a(s(["\u661f\u671f\u65e5","\u661f\u671f\u4e00","\u661f\u671f\u4e8c","\u661f\u671f\u4e09","\u661f\u671f\u56db","\u661f\u671f\u4e94","\u661f\u671f\u516d"]),t.s) +B.a3U=A.a(s(["leden","\xfanor","b\u0159ezen","duben","kv\u011bten","\u010derven","\u010dervenec","srpen","z\xe1\u0159\xed","\u0159\xedjen","listopad","prosinec"]),t.s) +B.kc=A.a(s(["n","p","u","s","\u010d","p","s"]),t.s) +B.zj=A.a(s([B.db,B.j1,B.mu]),t.dP) +B.a3W=A.a(s(["{1} \u0930\u094b\u091c\u0940 {0}","{1} \u0930\u094b\u091c\u0940 {0}","{1}, {0}","{1}, {0}"]),t.s) +B.zk=A.a(s(["\u064a","\u0641","\u0645","\u0623","\u0648","\u0646","\u0644","\u063a","\u0633","\u0643","\u0628","\u062f"]),t.s) +B.a3Y=A.a(s(["pr. Kr.","po. Kr."]),t.s) +B.a3Z=A.a(s(["\u0633\u200c\u0645\u06f1","\u0633\u200c\u0645\u06f2","\u0633\u200c\u0645\u06f3","\u0633\u200c\u0645\u06f4"]),t.s) +B.zl=A.a(s(["januar","februar","mart","april","maj","juni","juli","august","septembar","oktobar","novembar","decembar"]),t.s) +B.zm=A.a(s(["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec"]),t.s) +B.a4_=A.a(s(["h:mm:ss a, zzzz","h:mm:ss a, z","h:mm:ss a","h:mm a"]),t.s) +B.a40=A.a(s(["I \u10d9\u10d5\u10d0\u10e0\u10e2\u10d0\u10da\u10d8","II \u10d9\u10d5\u10d0\u10e0\u10e2\u10d0\u10da\u10d8","III \u10d9\u10d5\u10d0\u10e0\u10e2\u10d0\u10da\u10d8","IV \u10d9\u10d5\u10d0\u10e0\u10e2\u10d0\u10da\u10d8"]),t.s) +B.zn=A.a(s(["S","M","D","W","D","V","S"]),t.s) +B.a41=A.a(s(["1\u5b63\u5ea6","2\u5b63\u5ea6","3\u5b63\u5ea6","4\u5b63\u5ea6"]),t.s) +B.nw=A.a(s([!0,!1]),t.HZ) +B.zo=A.a(s(["Robo ya 1","Robo ya 2","Robo ya 3","Robo ya 4"]),t.s) +B.a42=A.a(s(["Milattan \xd6nce","Milattan Sonra"]),t.s) +B.a43=A.a(s(["dop.","pop."]),t.s) +B.zp=A.a(s(["dom.","seg.","ter.","qua.","qui.","sex.","s\xe1b."]),t.s) +B.zq=A.a(s(["\u0e21\u0e01\u0e23\u0e32\u0e04\u0e21","\u0e01\u0e38\u0e21\u0e20\u0e32\u0e1e\u0e31\u0e19\u0e18\u0e4c","\u0e21\u0e35\u0e19\u0e32\u0e04\u0e21","\u0e40\u0e21\u0e29\u0e32\u0e22\u0e19","\u0e1e\u0e24\u0e29\u0e20\u0e32\u0e04\u0e21","\u0e21\u0e34\u0e16\u0e38\u0e19\u0e32\u0e22\u0e19","\u0e01\u0e23\u0e01\u0e0e\u0e32\u0e04\u0e21","\u0e2a\u0e34\u0e07\u0e2b\u0e32\u0e04\u0e21","\u0e01\u0e31\u0e19\u0e22\u0e32\u0e22\u0e19","\u0e15\u0e38\u0e25\u0e32\u0e04\u0e21","\u0e1e\u0e24\u0e28\u0e08\u0e34\u0e01\u0e32\u0e22\u0e19","\u0e18\u0e31\u0e19\u0e27\u0e32\u0e04\u0e21"]),t.s) +B.H={code:0,name:1,nativeName:2} +B.a9n=new A.a2(B.H,["en","English","English"],t.w) +B.a9b=new A.a2(B.H,["en-us","English (US)","English (US)"],t.w) +B.a9j=new A.a2(B.H,["ca","Catalan; Valencian","Catal\xe0"],t.w) +B.a8q=new A.a2(B.H,["de","German","Deutsch"],t.w) +B.a9c=new A.a2(B.H,["es","Spanish; Castilian","Espa\xf1ol"],t.w) +B.a8B=new A.a2(B.H,["es-419","Spanish; Castilian","Espa\xf1ol (Latinoam\xe9rica)"],t.w) +B.a8r=new A.a2(B.H,["fr","French","Fran\xe7ais"],t.w) +B.a8R=new A.a2(B.H,["id","Indonesian","Indonesia"],t.w) +B.a8L=new A.a2(B.H,["it","Italian","Italiano"],t.w) +B.a8G=new A.a2(B.H,["pt","Portuguese","Portugu\xeas"],t.w) +B.a8u=new A.a2(B.H,["pt-pt","Portuguese","Portugu\xeas (Portugal)"],t.w) +B.a8x=new A.a2(B.H,["pt-br","Portuguese; Brasil","Portugu\xeas (Brasil)"],t.w) +B.a8Y=new A.a2(B.H,["vi","Vietnamese","Ti\u1ebfng Vi\u1ec7t"],t.w) +B.a8E=new A.a2(B.H,["tr","Turkish","T\xfcrk\xe7e"],t.w) +B.a8O=new A.a2(B.H,["ru","Russian","\u0440\u0443\u0441\u0441\u043a\u0438\u0439"],t.w) +B.a9d=new A.a2(B.H,["ar","Arabic","\u0627\u0644\u0639\u0631\u0628\u064a\u0629"],t.w) +B.a9m=new A.a2(B.H,["hi","Hindi","\u0939\u093f\u0928\u094d\u0926\u0940"],t.w) +B.a8I=new A.a2(B.H,["th","Thai","\u0e44\u0e17\u0e22"],t.w) +B.a8z=new A.a2(B.H,["zh","Chinese","\u4e2d\u6587"],t.w) +B.a99=new A.a2(B.H,["zh-hans","Simplified Chinese","\u7b80\u4f53\u4e2d\u6587"],t.w) +B.a8U=new A.a2(B.H,["zh-hant","Traditional Chinese","\u7e41\u9ad4\u4e2d\u6587"],t.w) +B.a97=new A.a2(B.H,["zh-rhk","Traditional Chinese (HK)","\u7e41\u4f53\u4e2d\u6587\uff08\u9999\u6e2f\uff09"],t.w) +B.a8Z=new A.a2(B.H,["zh-rtw","Traditional Chinese (TW)","\u7e41\u4f53\u4e2d\u6587\uff08\u53f0\u6e7e\uff09"],t.w) +B.a9a=new A.a2(B.H,["ja","Japanese","\u65e5\u672c\u8a9e"],t.w) +B.a8H=new A.a2(B.H,["ko","Korean","\ud55c\uad6d\uc5b4"],t.w) +B.a9g=new A.a2(B.H,["zu","Zulu","isiZulu"],t.w) +B.a9e=new A.a2(B.H,["xh","Xhosa","isiXhosa"],t.w) +B.a94=new A.a2(B.H,["uk","Ukrainian","\u0423\u043a\u0440\u0430\u0457\u043d\u0441\u044c\u043a\u0430"],t.w) +B.a90=new A.a2(B.H,["ro","Romanian","Rom\xe2n\u0103"],t.w) +B.a8P=new A.a2(B.H,["bg","Bulgarian","\u0431\u044a\u043b\u0433\u0430\u0440\u0441\u043a\u0438"],t.w) +B.a95=new A.a2(B.H,["cs","Czech","\u010de\u0161tina"],t.w) +B.a8A=new A.a2(B.H,["pl","Polish","polski"],t.w) +B.a8y=new A.a2(B.H,["no","Norwegian","Norsk"],t.w) +B.a8X=new A.a2(B.H,["nl","Dutch","Nederlands"],t.w) +B.a8t=new A.a2(B.H,["my","Burmese","\u1017\u1019\u102c\u1005\u102c"],t.w) +B.a9h=new A.a2(B.H,["ms","Malay","Malaysia"],t.w) +B.a8Q=new A.a2(B.H,["mn","Mongolian","\u041c\u043e\u043d\u0433\u043e\u043b"],t.w) +B.a91=new A.a2(B.H,["ml","Malayalam","\u0d2e\u0d32\u0d2f\u0d3e\u0d33\u0d02"],t.w) +B.a9_=new A.a2(B.H,["ku","Kurdish","Kurd\xee"],t.w) +B.a9o=new A.a2(B.H,["hu","Hungarian","Magyar"],t.w) +B.a98=new A.a2(B.H,["hr","Croatian","Hrvatski"],t.w) +B.a9f=new A.a2(B.H,["he","Hebrew","\u05e2\u05d1\u05e8\u05d9\u05ea"],t.w) +B.a8T=new A.a2(B.H,["fil","Filipino","Filipino"],t.w) +B.a8F=new A.a2(B.H,["fi","Finnish","suomi"],t.w) +B.a8J=new A.a2(B.H,["fa","Persian","\u0641\u0627\u0631\u0633\u06cc"],t.w) +B.a8s=new A.a2(B.H,["eu","Basque","euskara"],t.w) +B.a8w=new A.a2(B.H,["el","Greek","\u0395\u03bb\u03bb\u03b7\u03bd\u03b9\u03ba\u03ac"],t.w) +B.a9k=new A.a2(B.H,["da","Danish","dansk"],t.w) +B.a8K=new A.a2(B.H,["bn","Bengali","\u09ac\u09be\u0982\u09b2\u09be"],t.w) +B.a8V=new A.a2(B.H,["lt","Lithuanian","lietuvi\u0173 kalba"],t.w) +B.a8D=new A.a2(B.H,["sh","Serbo-Croatian","srpskohrvatski"],t.w) +B.a9l=new A.a2(B.H,["af","Afrikaans","Afrikaans"],t.w) +B.a9i=new A.a2(B.H,["am","Amharic","\u12a0\u121b\u122d\u129b"],t.w) +B.a93=new A.a2(B.H,["az","Azerbaijani","Az\u0259rbaycan"],t.w) +B.a8S=new A.a2(B.H,["be","Belarusian","\u0431\u0435\u043b\u0430\u0440\u0443\u0441\u043a\u0430\u044f"],t.w) +B.a8N=new A.a2(B.H,["bs","Bosnian","bosanski"],t.w) +B.F7=new A.a2(B.H,["sv","Swedish","svenska"],t.w) +B.a8C=new A.a2(B.H,["nb-no","Norwegian Bokm\xe5l (Norway)","Norwegian Bokm\xe5l (Norway)"],t.w) +B.a8M=new A.a2(B.H,["localsourcelang","Local source","Local source"],t.w) +B.a92=new A.a2(B.H,["installed","Installed","Installed"],t.w) +B.a9p=new A.a2(B.H,["lastUsed","Last Used","Last Used"],t.w) +B.a96=new A.a2(B.H,["update","Updates pending","Updates pending"],t.w) +B.a8v=new A.a2(B.H,["other","other langs","Other"],t.w) +B.a8W=new A.a2(B.H,["all","All","All"],t.w) +B.a44=A.a(s([B.a9n,B.a9b,B.a9j,B.a8q,B.a9c,B.a8B,B.a8r,B.a8R,B.a8L,B.a8G,B.a8u,B.a8x,B.a8Y,B.a8E,B.a8O,B.a9d,B.a9m,B.a8I,B.a8z,B.a99,B.a8U,B.a97,B.a8Z,B.a9a,B.a8H,B.a9g,B.a9e,B.a94,B.a90,B.a8P,B.a95,B.a8A,B.a8y,B.a8X,B.a8t,B.a9h,B.a8Q,B.a91,B.a9_,B.a9o,B.a98,B.a9f,B.a8T,B.a8F,B.a8J,B.a8s,B.a8w,B.a9k,B.a8K,B.a8V,B.a8D,B.a9l,B.a9i,B.a93,B.a8S,B.a8N,B.F7,B.F7,B.a8C,B.a8M,B.a92,B.a9p,B.a96,B.a8v,B.a8W]),A.ah("G>")) +B.a45=A.a(s(["f\xf6re Kristus","efter Kristus"]),t.s) +B.a46=A.a(s(["janu\xe1ra","febru\xe1ra","marca","apr\xedla","m\xe1ja","j\xfana","j\xfala","augusta","septembra","okt\xf3bra","novembra","decembra"]),t.s) +B.cE=A.a(s(["{1}, {0}","{1}, {0}","{1}, {0}","{1}, {0}"]),t.s) +B.zr=A.a(s(["zondag","maandag","dinsdag","woensdag","donderdag","vrijdag","zaterdag"]),t.s) +B.a47=A.a(s(["pred Kristusom","po Kristusu"]),t.s) +B.zs=A.a(s(["Januarie","Februarie","Maart","April","Mei","Junie","Julie","Augustus","September","Oktober","November","Desember"]),t.s) +B.pk=new A.fs(0,"DoubleQuote") +B.fO=new A.fs(1,"SingleQuote") +B.bH=new A.fs(2,"HebrewLetter") +B.lg=new A.fs(3,"CR") +B.lh=new A.fs(4,"LF") +B.po=new A.fs(5,"Newline") +B.im=new A.fs(6,"Extend") +B.ano=new A.fs(7,"RegionalIndicator") +B.io=new A.fs(8,"Format") +B.ip=new A.fs(9,"Katakana") +B.cM=new A.fs(10,"ALetter") +B.pl=new A.fs(11,"MidLetter") +B.pm=new A.fs(12,"MidNum") +B.ik=new A.fs(13,"MidNumLet") +B.dl=new A.fs(14,"Numeric") +B.lf=new A.fs(15,"ExtendNumLet") +B.il=new A.fs(16,"ZWJ") +B.pn=new A.fs(17,"WSegSpace") +B.L3=new A.fs(18,"Unknown") +B.a48=A.a(s([B.pk,B.fO,B.bH,B.lg,B.lh,B.po,B.im,B.ano,B.io,B.ip,B.cM,B.pl,B.pm,B.ik,B.dl,B.lf,B.il,B.pn,B.L3]),A.ah("G")) +B.a49=A.a(s(["gen.","febr.","mar\xe7","abr.","maig","juny","jul.","ag.","set.","oct.","nov.","des."]),t.s) +B.a4a=A.a(s(["*::class","*::dir","*::draggable","*::hidden","*::id","*::inert","*::itemprop","*::itemref","*::itemscope","*::lang","*::spellcheck","*::title","*::translate","A::accesskey","A::coords","A::hreflang","A::name","A::shape","A::tabindex","A::target","A::type","AREA::accesskey","AREA::alt","AREA::coords","AREA::nohref","AREA::shape","AREA::tabindex","AREA::target","AUDIO::controls","AUDIO::loop","AUDIO::mediagroup","AUDIO::muted","AUDIO::preload","BDO::dir","BODY::alink","BODY::bgcolor","BODY::link","BODY::text","BODY::vlink","BR::clear","BUTTON::accesskey","BUTTON::disabled","BUTTON::name","BUTTON::tabindex","BUTTON::type","BUTTON::value","CANVAS::height","CANVAS::width","CAPTION::align","COL::align","COL::char","COL::charoff","COL::span","COL::valign","COL::width","COLGROUP::align","COLGROUP::char","COLGROUP::charoff","COLGROUP::span","COLGROUP::valign","COLGROUP::width","COMMAND::checked","COMMAND::command","COMMAND::disabled","COMMAND::label","COMMAND::radiogroup","COMMAND::type","DATA::value","DEL::datetime","DETAILS::open","DIR::compact","DIV::align","DL::compact","FIELDSET::disabled","FONT::color","FONT::face","FONT::size","FORM::accept","FORM::autocomplete","FORM::enctype","FORM::method","FORM::name","FORM::novalidate","FORM::target","FRAME::name","H1::align","H2::align","H3::align","H4::align","H5::align","H6::align","HR::align","HR::noshade","HR::size","HR::width","HTML::version","IFRAME::align","IFRAME::frameborder","IFRAME::height","IFRAME::marginheight","IFRAME::marginwidth","IFRAME::width","IMG::align","IMG::alt","IMG::border","IMG::height","IMG::hspace","IMG::ismap","IMG::name","IMG::usemap","IMG::vspace","IMG::width","INPUT::accept","INPUT::accesskey","INPUT::align","INPUT::alt","INPUT::autocomplete","INPUT::autofocus","INPUT::checked","INPUT::disabled","INPUT::inputmode","INPUT::ismap","INPUT::list","INPUT::max","INPUT::maxlength","INPUT::min","INPUT::multiple","INPUT::name","INPUT::placeholder","INPUT::readonly","INPUT::required","INPUT::size","INPUT::step","INPUT::tabindex","INPUT::type","INPUT::usemap","INPUT::value","INS::datetime","KEYGEN::disabled","KEYGEN::keytype","KEYGEN::name","LABEL::accesskey","LABEL::for","LEGEND::accesskey","LEGEND::align","LI::type","LI::value","LINK::sizes","MAP::name","MENU::compact","MENU::label","MENU::type","METER::high","METER::low","METER::max","METER::min","METER::value","OBJECT::typemustmatch","OL::compact","OL::reversed","OL::start","OL::type","OPTGROUP::disabled","OPTGROUP::label","OPTION::disabled","OPTION::label","OPTION::selected","OPTION::value","OUTPUT::for","OUTPUT::name","P::align","PRE::width","PROGRESS::max","PROGRESS::min","PROGRESS::value","SELECT::autocomplete","SELECT::disabled","SELECT::multiple","SELECT::name","SELECT::required","SELECT::size","SELECT::tabindex","SOURCE::type","TABLE::align","TABLE::bgcolor","TABLE::border","TABLE::cellpadding","TABLE::cellspacing","TABLE::frame","TABLE::rules","TABLE::summary","TABLE::width","TBODY::align","TBODY::char","TBODY::charoff","TBODY::valign","TD::abbr","TD::align","TD::axis","TD::bgcolor","TD::char","TD::charoff","TD::colspan","TD::headers","TD::height","TD::nowrap","TD::rowspan","TD::scope","TD::valign","TD::width","TEXTAREA::accesskey","TEXTAREA::autocomplete","TEXTAREA::cols","TEXTAREA::disabled","TEXTAREA::inputmode","TEXTAREA::name","TEXTAREA::placeholder","TEXTAREA::readonly","TEXTAREA::required","TEXTAREA::rows","TEXTAREA::tabindex","TEXTAREA::wrap","TFOOT::align","TFOOT::char","TFOOT::charoff","TFOOT::valign","TH::abbr","TH::align","TH::axis","TH::bgcolor","TH::char","TH::charoff","TH::colspan","TH::headers","TH::height","TH::nowrap","TH::rowspan","TH::scope","TH::valign","TH::width","THEAD::align","THEAD::char","THEAD::charoff","THEAD::valign","TR::align","TR::bgcolor","TR::char","TR::charoff","TR::valign","TRACK::default","TRACK::kind","TRACK::label","TRACK::srclang","UL::compact","UL::type","VIDEO::controls","VIDEO::height","VIDEO::loop","VIDEO::mediagroup","VIDEO::muted","VIDEO::preload","VIDEO::width"]),t.s) +B.kd=A.a(s(["\u0458","\u0444","\u043c","\u0430","\u043c","\u0458","\u0458","\u0430","\u0441","\u043e","\u043d","\u0434"]),t.s) +B.a4b=A.a(s(["EEEE \u0e97\u0eb5 d MMMM G y","d MMMM y","d MMM y","d/M/y"]),t.s) +B.a4c=A.a(s(["\u0441\u0456\u0447.","\u043b\u044e\u0442.","\u0431\u0435\u0440.","\u043a\u0432\u0456\u0442.","\u0442\u0440\u0430\u0432.","\u0447\u0435\u0440\u0432.","\u043b\u0438\u043f.","\u0441\u0435\u0440\u043f.","\u0432\u0435\u0440.","\u0436\u043e\u0432\u0442.","\u043b\u0438\u0441\u0442.","\u0433\u0440\u0443\u0434."]),t.s) +B.a4d=A.a(s(["H \u0e19\u0e32\u0e2c\u0e34\u0e01\u0e32 mm \u0e19\u0e32\u0e17\u0e35 ss \u0e27\u0e34\u0e19\u0e32\u0e17\u0e35 zzzz","H \u0e19\u0e32\u0e2c\u0e34\u0e01\u0e32 mm \u0e19\u0e32\u0e17\u0e35 ss \u0e27\u0e34\u0e19\u0e32\u0e17\u0e35 z","HH:mm:ss","HH:mm"]),t.s) +B.zt=A.a(s(["\u0c1c","\u0c2b\u0c3f","\u0c2e\u0c3e","\u0c0f","\u0c2e\u0c47","\u0c1c\u0c42","\u0c1c\u0c41","\u0c06","\u0c38\u0c46","\u0c05","\u0c28","\u0c21\u0c3f"]),t.s) +B.a4e=A.a(s(["1T","2T","3T","4T"]),t.s) +B.zu=A.a(s(["S","P","O","T","C","P","S"]),t.s) +B.a4f=A.a(s(["\u0399\u03b1\u03bd","\u03a6\u03b5\u03b2","\u039c\u03ac\u03c1","\u0391\u03c0\u03c1","\u039c\u03ac\u03b9","\u0399\u03bf\u03cd\u03bd","\u0399\u03bf\u03cd\u03bb","\u0391\u03cd\u03b3","\u03a3\u03b5\u03c0","\u039f\u03ba\u03c4","\u039d\u03bf\u03ad","\u0394\u03b5\u03ba"]),t.s) +B.a4g=A.a(s(["y. MMMM d., EEEE","y. MMMM d.","y. MMM d.","y. MM. dd."]),t.s) +B.a4h=A.a(s(["EEEE, d MMMM y","d MMMM y","d MMM y","d/MM/yy"]),t.s) +B.zv=A.a(s(["\u1010","\u1010","\u1021","\u1017","\u1000","\u101e","\u1005"]),t.s) +B.zw=A.a(s(["janar","shkurt","mars","prill","maj","qershor","korrik","gusht","shtator","tetor","n\xebntor","dhjetor"]),t.s) +B.zx=A.a(s(["Son","Mso","Bil","Tha","Sin","Hla","Mgq"]),t.s) +B.zy=A.a(s(["J","F","M","A","M","J","J","O","S","O","N","D"]),t.s) +B.a4k=A.a(s(["\xd6\xd6","\xd6S"]),t.s) +B.a4j=A.a(s(["\u092a\u0942\u0930\u094d\u0935\u093e\u0939\u094d\u0928","\u0905\u092a\u0930\u093e\u0939\u094d\u0928"]),t.s) +B.a4i=A.a(s(["EEEE, dd MMMM, y","d MMMM, y","d MMM. y","dd.MM.yy"]),t.s) +B.zA=A.a(s(["Y","F","M","A","M","I","I","A","S","O","N","D"]),t.s) +B.zz=A.a(s(["\u1303\u1295\u12e9\u12c8\u122a","\u134c\u1265\u1229\u12c8\u122a","\u121b\u122d\u127d","\u12a4\u1355\u122a\u120d","\u121c\u12ed","\u1301\u1295","\u1301\u120b\u12ed","\u12a6\u1308\u1235\u1275","\u1234\u1355\u1274\u121d\u1260\u122d","\u12a6\u12ad\u1276\u1260\u122d","\u1296\u126c\u121d\u1260\u122d","\u12f2\u1234\u121d\u1260\u122d"]),t.s) +B.zB=A.a(s(["\u1303\u1295\u12e9","\u134c\u1265\u1229","\u121b\u122d\u127d","\u12a4\u1355\u122a","\u121c\u12ed","\u1301\u1295","\u1301\u120b\u12ed","\u12a6\u1308\u1235","\u1234\u1355\u1274","\u12a6\u12ad\u1276","\u1296\u126c\u121d","\u12f2\u1234\u121d"]),t.s) +B.zD=A.a(s(["\u043d\u0435\u0434.","\u043f\u043e\u043d.","\u0432\u0442\u043e.","\u0441\u0440\u0435.","\u0447\u0435\u0442.","\u043f\u0435\u0442.","\u0441\u0430\u0431."]),t.s) +B.zC=A.a(s([200,203,301,304,302,307,404,405,501]),t.t) +B.zE=A.a(s(["Pazar","Pazartesi","Sal\u0131","\xc7ar\u015famba","Per\u015fembe","Cuma","Cumartesi"]),t.s) +B.a4l=A.a(s(["tammik.","helmik.","maalisk.","huhtik.","toukok.","kes\xe4k.","hein\xe4k.","elok.","syysk.","lokak.","marrask.","jouluk."]),t.s) +B.ke=A.a(s(["a.C.","d.C."]),t.s) +B.zF=A.a(s(["\u897f\u5143\u524d","\u897f\u5143"]),t.s) +B.a4m=A.a(s(["EEEE, d MMMM 'de' y","d MMMM 'de' y","d MMM y","d/M/yy"]),t.s) +B.zG=A.a(s(["\u0ea1\u0eb1\u0e87\u0e81\u0ead\u0e99","\u0e81\u0eb8\u0ea1\u0e9e\u0eb2","\u0ea1\u0eb5\u0e99\u0eb2","\u0ec0\u0ea1\u0eaa\u0eb2","\u0e9e\u0eb6\u0e94\u0eaa\u0eb0\u0e9e\u0eb2","\u0ea1\u0eb4\u0e96\u0eb8\u0e99\u0eb2","\u0e81\u0ecd\u0ea5\u0eb0\u0e81\u0ebb\u0e94","\u0eaa\u0eb4\u0e87\u0eab\u0eb2","\u0e81\u0eb1\u0e99\u0e8d\u0eb2","\u0e95\u0eb8\u0ea5\u0eb2","\u0e9e\u0eb0\u0e88\u0eb4\u0e81","\u0e97\u0eb1\u0e99\u0ea7\u0eb2"]),t.s) +B.a4n=A.a(s(["EEEE, d 'de' MMMM 'de' y","d 'de' MMMM 'de' y","d MMM y","d/M/y"]),t.s) +B.a4o=A.a(s(["m.a.","milodiy"]),t.s) +B.zH=A.a(s(["1.er trimestre","2.\xba trimestre","3.er trimestre","4.\xba trimestre"]),t.s) +B.zI=A.a(s(["J","F","M","\xc1","M","J","J","A","Sz","O","N","D"]),t.s) +B.ej=A.a(s(["EEEE, MMMM d, y","MMMM d, y","MMM d, y","M/d/yy"]),t.s) +B.ct=new A.nE(0,"leading") +B.c1=new A.nE(1,"title") +B.c2=new A.nE(2,"subtitle") +B.d6=new A.nE(3,"trailing") +B.a4p=A.a(s([B.ct,B.c1,B.c2,B.d6]),A.ah("G")) +B.a4q=A.a(s([0,0.35,0.5,0.65,1]),t.up) +B.zJ=A.a(s(["ned\u011ble","pond\u011bl\xed","\xfater\xfd","st\u0159eda","\u010dtvrtek","p\xe1tek","sobota"]),t.s) +B.a4r=A.a(s(["\u0570\u0578\u0582\u0576\u057e\u0561\u0580\u056b","\u0583\u0565\u057f\u0580\u057e\u0561\u0580\u056b","\u0574\u0561\u0580\u057f\u056b","\u0561\u057a\u0580\u056b\u056c\u056b","\u0574\u0561\u0575\u056b\u057d\u056b","\u0570\u0578\u0582\u0576\u056b\u057d\u056b","\u0570\u0578\u0582\u056c\u056b\u057d\u056b","\u0585\u0563\u0578\u057d\u057f\u0578\u057d\u056b","\u057d\u0565\u057a\u057f\u0565\u0574\u0562\u0565\u0580\u056b","\u0570\u0578\u056f\u057f\u0565\u0574\u0562\u0565\u0580\u056b","\u0576\u0578\u0575\u0565\u0574\u0562\u0565\u0580\u056b","\u0564\u0565\u056f\u057f\u0565\u0574\u0562\u0565\u0580\u056b"]),t.s) +B.a4s=A.a(s(["s\xf8n","man","tir","ons","tor","fre","l\xf8r"]),t.s) +B.a4t=A.a(s(["Jan","Feb","Mar","Apr","May","June","July","Aug","Sept","Oct","Nov","Dec"]),t.s) +B.pE=new A.SZ(0,"named") +B.aoJ=new A.SZ(1,"anonymous") +B.a4v=A.a(s([B.pE,B.aoJ]),A.ah("G")) +B.a4u=A.a(s(["{1} 'kl'. {0}","{1} 'kl'. {0}","{1} {0}","{1} {0}"]),t.s) +B.zK=A.a(s(["\u0458\u0430\u043d","\u0444\u0435\u0431","\u043c\u0430\u0440","\u0430\u043f\u0440","\u043c\u0430\u0458","\u0458\u0443\u043d","\u0458\u0443\u043b","\u0430\u0432\u0433","\u0441\u0435\u043f","\u043e\u043a\u0442","\u043d\u043e\u0432","\u0434\u0435\u0446"]),t.s) +B.zL=A.a(s(["\u0a9c\u0abe","\u0aab\u0ac7","\u0aae\u0abe","\u0a8f","\u0aae\u0ac7","\u0a9c\u0ac2","\u0a9c\u0ac1","\u0a91","\u0ab8","\u0a91","\u0aa8","\u0aa1\u0abf"]),t.s) +B.a4w=A.a(s(["\u0b92\u0ba9\u0bcd\u0bb1\u0bbe\u0bae\u0bcd \u0b95\u0bbe\u0bb2\u0bbe\u0ba3\u0bcd\u0b9f\u0bc1","\u0b87\u0bb0\u0ba3\u0bcd\u0b9f\u0bbe\u0bae\u0bcd \u0b95\u0bbe\u0bb2\u0bbe\u0ba3\u0bcd\u0b9f\u0bc1","\u0bae\u0bc2\u0ba9\u0bcd\u0bb1\u0bbe\u0bae\u0bcd \u0b95\u0bbe\u0bb2\u0bbe\u0ba3\u0bcd\u0b9f\u0bc1","\u0ba8\u0bbe\u0ba9\u0bcd\u0b95\u0bbe\u0bae\u0bcd \u0b95\u0bbe\u0bb2\u0bbe\u0ba3\u0bcd\u0b9f\u0bc1"]),t.s) +B.a4x=A.a(s(["1\u129b\u12cd \u1229\u1265","2\u129b\u12cd \u1229\u1265","3\u129b\u12cd \u1229\u1265","4\u129b\u12cd \u1229\u1265"]),t.s) +B.zM=A.a(s(["sunnudagur","m\xe1nudagur","\xferi\xf0judagur","mi\xf0vikudagur","fimmtudagur","f\xf6studagur","laugardagur"]),t.s) +B.zN=A.a(s(["jan.","febr.","m\xe1rc.","\xe1pr.","m\xe1j.","j\xfan.","j\xfal.","aug.","szept.","okt.","nov.","dec."]),t.s) +B.a4A=A.a(s(["EEEE, d MMMM, y","d MMMM, y","dd-MM-y","d-M-y"]),t.s) +B.ih=new A.hg(0,"system") +B.ajy=new A.hg(1,"light") +B.KP=new A.hg(2,"dark") +B.zO=A.a(s([B.ih,B.ajy,B.KP]),A.ah("G")) +B.a4B=A.a(s(["yb","yh"]),t.s) +B.zP=A.a(s(["s\xf6n","m\xe5n","tis","ons","tors","fre","l\xf6r"]),t.s) +B.zQ=A.a(s(["\u0b9c\u0ba9.","\u0baa\u0bbf\u0baa\u0bcd.","\u0bae\u0bbe\u0bb0\u0bcd.","\u0b8f\u0baa\u0bcd.","\u0bae\u0bc7","\u0b9c\u0bc2\u0ba9\u0bcd","\u0b9c\u0bc2\u0bb2\u0bc8","\u0b86\u0b95.","\u0b9a\u0bc6\u0baa\u0bcd.","\u0b85\u0b95\u0bcd.","\u0ba8\u0bb5.","\u0b9f\u0bbf\u0b9a."]),t.s) +B.zR=A.a(s(["\u056f\u056b\u0580\u0561\u056f\u056b","\u0565\u0580\u056f\u0578\u0582\u0577\u0561\u0562\u0569\u056b","\u0565\u0580\u0565\u0584\u0577\u0561\u0562\u0569\u056b","\u0579\u0578\u0580\u0565\u0584\u0577\u0561\u0562\u0569\u056b","\u0570\u056b\u0576\u0563\u0577\u0561\u0562\u0569\u056b","\u0578\u0582\u0580\u0562\u0561\u0569","\u0577\u0561\u0562\u0561\u0569"]),t.s) +B.a4C=A.a(s(["I. n.\xe9v","II. n.\xe9v","III. n.\xe9v","IV. n.\xe9v"]),t.s) +B.zS=A.a(s(["\u1007\u1014\u103a","\u1016\u1031","\u1019\u1010\u103a","\u1027","\u1019\u1031","\u1007\u103d\u1014\u103a","\u1007\u1030","\u1029","\u1005\u1000\u103a","\u1021\u1031\u102c\u1000\u103a","\u1014\u102d\u102f","\u1012\u102e"]),t.s) +B.a4D=A.a(s(["\u0574.\u0569.\u0561.","\u0574.\u0569."]),t.s) +B.hy=A.a(s(["a.\xa0m.","p.\xa0m."]),t.s) +B.zT=A.a(s(["\u043d\u044f\u0434\u0437\u0435\u043b\u044f","\u043f\u0430\u043d\u044f\u0434\u0437\u0435\u043b\u0430\u043a","\u0430\u045e\u0442\u043e\u0440\u0430\u043a","\u0441\u0435\u0440\u0430\u0434\u0430","\u0447\u0430\u0446\u0432\u0435\u0440","\u043f\u044f\u0442\u043d\u0456\u0446\u0430","\u0441\u0443\u0431\u043e\u0442\u0430"]),t.s) +B.zU=A.a(s(["S","Ll","M","M","I","G","S"]),t.s) +B.a4E=A.a(s(["d, MMMM y, EEEE","d MMMM, y","d MMM, y","dd-MM-yy"]),t.s) +B.zV=A.a(s(["\u09a6\u09c7\u0993","\u09b8\u09cb\u09ae","\u09ae\u0999\u09cd\u0997\u09b2","\u09ac\u09c1\u09a7","\u09ac\u09c3\u09b9","\u09b6\u09c1\u0995\u09cd\u09f0","\u09b6\u09a8\u09bf"]),t.s) +B.zW=A.a(s([0,0,27858,1023,65534,51199,65535,32767]),t.t) +B.zX=A.a(s(["\u039a\u03c5\u03c1\u03b9\u03b1\u03ba\u03ae","\u0394\u03b5\u03c5\u03c4\u03ad\u03c1\u03b1","\u03a4\u03c1\u03af\u03c4\u03b7","\u03a4\u03b5\u03c4\u03ac\u03c1\u03c4\u03b7","\u03a0\u03ad\u03bc\u03c0\u03c4\u03b7","\u03a0\u03b1\u03c1\u03b1\u03c3\u03ba\u03b5\u03c5\u03ae","\u03a3\u03ac\u03b2\u03b2\u03b1\u03c4\u03bf"]),t.s) +B.zY=A.a(s(["\u0c06\u0c26\u0c3f\u0c35\u0c3e\u0c30\u0c02","\u0c38\u0c4b\u0c2e\u0c35\u0c3e\u0c30\u0c02","\u0c2e\u0c02\u0c17\u0c33\u0c35\u0c3e\u0c30\u0c02","\u0c2c\u0c41\u0c27\u0c35\u0c3e\u0c30\u0c02","\u0c17\u0c41\u0c30\u0c41\u0c35\u0c3e\u0c30\u0c02","\u0c36\u0c41\u0c15\u0c4d\u0c30\u0c35\u0c3e\u0c30\u0c02","\u0c36\u0c28\u0c3f\u0c35\u0c3e\u0c30\u0c02"]),t.s) +B.alj=new A.uY(null,!1,null) +B.a4H=A.a(s([B.alj]),t.p) +B.alk=new A.uY(null,!0,null) +B.a4G=A.a(s([B.alk]),t.p) +B.zZ=A.a(s(["\u0a1c\u0a28","\u0a2b\u0a3c\u0a30","\u0a2e\u0a3e\u0a30\u0a1a","\u0a05\u0a2a\u0a4d\u0a30\u0a48","\u0a2e\u0a08","\u0a1c\u0a42\u0a28","\u0a1c\u0a41\u0a32\u0a3e","\u0a05\u0a17","\u0a38\u0a24\u0a70","\u0a05\u0a15\u0a24\u0a42","\u0a28\u0a35\u0a70","\u0a26\u0a38\u0a70"]),t.s) +B.a4I=A.a(s([-1,0,0,1,0,0,-1,0,1,0,0,0,-1,1,0,1,1,1,1,0]),t.up) +B.a4J=A.a(s(["\u0642\u0628\u0644 \u0627\u0632 \u0645\u06cc\u0644\u0627\u062f","\u0645\u06cc\u0644\u0627\u062f\u06cc"]),t.s) +B.a4K=A.a(s(["chwarter 1af","2il chwarter","3ydd chwarter","4ydd chwarter"]),t.s) +B.a4L=A.a(s(["Tr\u01b0\u1edbc Thi\xean Ch\xfaa","Sau C\xf4ng Nguy\xean"]),t.s) +B.a4M=new A.d6("ar",null,null) +B.a4N=new A.d6("de",null,null) +B.A1=new A.d6("en",null,null) +B.a4P=new A.d6("es",null,null) +B.a4Q=new A.d6("fr",null,null) +B.a4R=new A.d6("ja",null,null) +B.a4S=new A.d6("ko",null,null) +B.a4U=new A.d6("pt",null,null) +B.a4T=new A.d6("pt",null,"PT") +B.a4V=new A.d6("uk",null,null) +B.a4Y=new A.d6("zh",null,null) +B.a4W=new A.d6("zh","Hans",null) +B.a4X=new A.d6("zh","Hant",null) +B.A_=A.a(s([B.a4M,B.a4N,B.A1,B.a4P,B.a4Q,B.a4R,B.a4S,B.a4U,B.a4T,B.a4V,B.a4Y,B.a4W,B.a4X]),t.ss) +B.A0=A.a(s(["\u043d","\u043f","\u0430","\u0441","\u0447","\u043f","\u0441"]),t.s) +B.nx=new A.n(112) +B.ck=new A.n(4294967304) +B.hA=new A.n(4294967323) +B.bW=new A.n(4294967423) +B.nB=new A.n(4294967558) +B.hE=new A.n(8589934848) +B.kk=new A.n(8589934849) +B.cl=new A.n(8589934850) +B.cH=new A.n(8589934851) +B.hF=new A.n(8589934852) +B.kl=new A.n(8589934853) +B.hG=new A.n(8589934854) +B.km=new A.n(8589934855) +B.dk=new A.kG(B.i) +B.a6p=new A.CA(B.i,B.dk) +B.a6q=new A.aHm("longPress") +B.a6r=new A.CB(B.i,B.i) +B.acj=new A.cE(B.q5,B.t) +B.a6s=new A.CD(1,null,null,null,B.y2,B.acj) +B.a6t=new A.os(B.i,B.Y,B.Y,B.Y) +B.D=new A.u4(0,"start") +B.nR=new A.u4(1,"end") +B.fk=new A.u4(3,"spaceBetween") +B.a6u=new A.u4(4,"spaceAround") +B.ko=new A.u4(5,"spaceEvenly") +B.aa=new A.a2T(0,"min") +B.a6v=new A.a31(null) +B.a6F=new A.xG(B.iH,B.iH,A.ah("xG")) +B.Fz=new A.L(16) +B.FA=new A.L(17) +B.hQ=new A.L(18) +B.FB=new A.L(19) +B.FC=new A.L(20) +B.FD=new A.L(21) +B.FE=new A.L(22) +B.FF=new A.L(23) +B.FG=new A.L(24) +B.Ir=new A.L(65666) +B.Is=new A.L(65667) +B.It=new A.L(65717) +B.FH=new A.L(392961) +B.FI=new A.L(392962) +B.FJ=new A.L(392963) +B.FK=new A.L(392964) +B.FL=new A.L(392965) +B.FM=new A.L(392966) +B.FN=new A.L(392967) +B.FO=new A.L(392968) +B.FP=new A.L(392969) +B.FQ=new A.L(392970) +B.FR=new A.L(392971) +B.FS=new A.L(392972) +B.FT=new A.L(392973) +B.FU=new A.L(392974) +B.FV=new A.L(392975) +B.FW=new A.L(392976) +B.FX=new A.L(392977) +B.FY=new A.L(392978) +B.FZ=new A.L(392979) +B.G_=new A.L(392980) +B.G0=new A.L(392981) +B.G1=new A.L(392982) +B.G2=new A.L(392983) +B.G3=new A.L(392984) +B.G4=new A.L(392985) +B.G5=new A.L(392986) +B.G6=new A.L(392987) +B.G7=new A.L(392988) +B.G8=new A.L(392989) +B.G9=new A.L(392990) +B.Ga=new A.L(392991) +B.abb=new A.L(458752) +B.abc=new A.L(458753) +B.abd=new A.L(458754) +B.abe=new A.L(458755) +B.Gb=new A.L(458756) +B.Gc=new A.L(458757) +B.Gd=new A.L(458758) +B.Ge=new A.L(458759) +B.Gf=new A.L(458760) +B.Gg=new A.L(458761) +B.Gh=new A.L(458762) +B.Gi=new A.L(458763) +B.Gj=new A.L(458764) +B.Gk=new A.L(458765) +B.Gl=new A.L(458766) +B.Gm=new A.L(458767) +B.Gn=new A.L(458768) +B.Go=new A.L(458769) +B.Gp=new A.L(458770) +B.Gq=new A.L(458771) +B.Gr=new A.L(458772) +B.Gs=new A.L(458773) +B.Gt=new A.L(458774) +B.Gu=new A.L(458775) +B.Gv=new A.L(458776) +B.Gw=new A.L(458777) +B.Gx=new A.L(458778) +B.Gy=new A.L(458779) +B.Gz=new A.L(458780) +B.GA=new A.L(458781) +B.GB=new A.L(458782) +B.GC=new A.L(458783) +B.GD=new A.L(458784) +B.GE=new A.L(458785) +B.GF=new A.L(458786) +B.GG=new A.L(458787) +B.GH=new A.L(458788) +B.GI=new A.L(458789) +B.GJ=new A.L(458790) +B.GK=new A.L(458791) +B.GL=new A.L(458792) +B.o5=new A.L(458793) +B.GM=new A.L(458794) +B.GN=new A.L(458795) +B.GO=new A.L(458796) +B.GP=new A.L(458797) +B.GQ=new A.L(458798) +B.GR=new A.L(458799) +B.GS=new A.L(458800) +B.GT=new A.L(458801) +B.GU=new A.L(458803) +B.GV=new A.L(458804) +B.GW=new A.L(458805) +B.GX=new A.L(458806) +B.GY=new A.L(458807) +B.GZ=new A.L(458808) +B.eo=new A.L(458809) +B.H_=new A.L(458810) +B.H0=new A.L(458811) +B.H1=new A.L(458812) +B.H2=new A.L(458813) +B.H3=new A.L(458814) +B.H4=new A.L(458815) +B.H5=new A.L(458816) +B.H6=new A.L(458817) +B.H7=new A.L(458818) +B.H8=new A.L(458819) +B.H9=new A.L(458820) +B.Ha=new A.L(458821) +B.Hb=new A.L(458822) +B.kC=new A.L(458823) +B.Hc=new A.L(458824) +B.Hd=new A.L(458825) +B.He=new A.L(458826) +B.Hf=new A.L(458827) +B.Hg=new A.L(458828) +B.Hh=new A.L(458829) +B.Hi=new A.L(458830) +B.Hj=new A.L(458831) +B.Hk=new A.L(458832) +B.Hl=new A.L(458833) +B.Hm=new A.L(458834) +B.kD=new A.L(458835) +B.Hn=new A.L(458836) +B.Ho=new A.L(458837) +B.Hp=new A.L(458838) +B.Hq=new A.L(458839) +B.Hr=new A.L(458840) +B.Hs=new A.L(458841) +B.Ht=new A.L(458842) +B.Hu=new A.L(458843) +B.Hv=new A.L(458844) +B.Hw=new A.L(458845) +B.Hx=new A.L(458846) +B.Hy=new A.L(458847) +B.Hz=new A.L(458848) +B.HA=new A.L(458849) +B.HB=new A.L(458850) +B.HC=new A.L(458851) +B.HD=new A.L(458852) +B.HE=new A.L(458853) +B.HF=new A.L(458854) +B.HG=new A.L(458855) +B.HH=new A.L(458856) +B.HI=new A.L(458857) +B.HJ=new A.L(458858) +B.HK=new A.L(458859) +B.HL=new A.L(458860) +B.HM=new A.L(458861) +B.HN=new A.L(458862) +B.HO=new A.L(458863) +B.HP=new A.L(458864) +B.HQ=new A.L(458865) +B.HR=new A.L(458866) +B.HS=new A.L(458867) +B.HT=new A.L(458868) +B.HU=new A.L(458869) +B.HV=new A.L(458871) +B.HW=new A.L(458873) +B.HX=new A.L(458874) +B.HY=new A.L(458875) +B.HZ=new A.L(458876) +B.I_=new A.L(458877) +B.I0=new A.L(458878) +B.I1=new A.L(458879) +B.I2=new A.L(458880) +B.I3=new A.L(458881) +B.I4=new A.L(458885) +B.I5=new A.L(458887) +B.I6=new A.L(458888) +B.I7=new A.L(458889) +B.I8=new A.L(458890) +B.I9=new A.L(458891) +B.Ia=new A.L(458896) +B.Ib=new A.L(458897) +B.Ic=new A.L(458898) +B.Id=new A.L(458899) +B.Ie=new A.L(458900) +B.If=new A.L(458907) +B.Ig=new A.L(458915) +B.Ih=new A.L(458934) +B.Ii=new A.L(458935) +B.Ij=new A.L(458939) +B.Ik=new A.L(458960) +B.Il=new A.L(458961) +B.Im=new A.L(458962) +B.In=new A.L(458963) +B.Io=new A.L(458964) +B.abf=new A.L(458967) +B.Ip=new A.L(458968) +B.Iq=new A.L(458969) +B.ft=new A.L(458976) +B.fu=new A.L(458977) +B.fv=new A.L(458978) +B.fw=new A.L(458979) +B.hR=new A.L(458980) +B.hS=new A.L(458981) +B.fx=new A.L(458982) +B.hT=new A.L(458983) +B.abg=new A.L(786528) +B.abh=new A.L(786529) +B.Iu=new A.L(786543) +B.Iv=new A.L(786544) +B.abi=new A.L(786546) +B.abj=new A.L(786547) +B.abk=new A.L(786548) +B.abl=new A.L(786549) +B.abm=new A.L(786553) +B.abn=new A.L(786554) +B.abo=new A.L(786563) +B.abp=new A.L(786572) +B.abq=new A.L(786573) +B.abr=new A.L(786580) +B.abs=new A.L(786588) +B.abt=new A.L(786589) +B.Iw=new A.L(786608) +B.Ix=new A.L(786609) +B.Iy=new A.L(786610) +B.Iz=new A.L(786611) +B.IA=new A.L(786612) +B.IB=new A.L(786613) +B.IC=new A.L(786614) +B.ID=new A.L(786615) +B.IE=new A.L(786616) +B.IF=new A.L(786637) +B.abu=new A.L(786639) +B.abv=new A.L(786661) +B.IG=new A.L(786819) +B.abw=new A.L(786820) +B.abx=new A.L(786822) +B.IH=new A.L(786826) +B.aby=new A.L(786829) +B.abz=new A.L(786830) +B.II=new A.L(786834) +B.IJ=new A.L(786836) +B.abA=new A.L(786838) +B.abB=new A.L(786844) +B.abC=new A.L(786846) +B.IK=new A.L(786847) +B.IL=new A.L(786850) +B.abD=new A.L(786855) +B.abE=new A.L(786859) +B.abF=new A.L(786862) +B.IM=new A.L(786865) +B.abG=new A.L(786871) +B.IN=new A.L(786891) +B.abH=new A.L(786945) +B.abI=new A.L(786947) +B.abJ=new A.L(786951) +B.abK=new A.L(786952) +B.IO=new A.L(786977) +B.IP=new A.L(786979) +B.IQ=new A.L(786980) +B.IR=new A.L(786981) +B.IS=new A.L(786982) +B.IT=new A.L(786983) +B.IU=new A.L(786986) +B.abL=new A.L(786989) +B.abM=new A.L(786990) +B.IV=new A.L(786994) +B.abN=new A.L(787065) +B.IW=new A.L(787081) +B.IX=new A.L(787083) +B.IY=new A.L(787084) +B.IZ=new A.L(787101) +B.J_=new A.L(787103) +B.a6G=new A.dm([16,B.Fz,17,B.FA,18,B.hQ,19,B.FB,20,B.FC,21,B.FD,22,B.FE,23,B.FF,24,B.FG,65666,B.Ir,65667,B.Is,65717,B.It,392961,B.FH,392962,B.FI,392963,B.FJ,392964,B.FK,392965,B.FL,392966,B.FM,392967,B.FN,392968,B.FO,392969,B.FP,392970,B.FQ,392971,B.FR,392972,B.FS,392973,B.FT,392974,B.FU,392975,B.FV,392976,B.FW,392977,B.FX,392978,B.FY,392979,B.FZ,392980,B.G_,392981,B.G0,392982,B.G1,392983,B.G2,392984,B.G3,392985,B.G4,392986,B.G5,392987,B.G6,392988,B.G7,392989,B.G8,392990,B.G9,392991,B.Ga,458752,B.abb,458753,B.abc,458754,B.abd,458755,B.abe,458756,B.Gb,458757,B.Gc,458758,B.Gd,458759,B.Ge,458760,B.Gf,458761,B.Gg,458762,B.Gh,458763,B.Gi,458764,B.Gj,458765,B.Gk,458766,B.Gl,458767,B.Gm,458768,B.Gn,458769,B.Go,458770,B.Gp,458771,B.Gq,458772,B.Gr,458773,B.Gs,458774,B.Gt,458775,B.Gu,458776,B.Gv,458777,B.Gw,458778,B.Gx,458779,B.Gy,458780,B.Gz,458781,B.GA,458782,B.GB,458783,B.GC,458784,B.GD,458785,B.GE,458786,B.GF,458787,B.GG,458788,B.GH,458789,B.GI,458790,B.GJ,458791,B.GK,458792,B.GL,458793,B.o5,458794,B.GM,458795,B.GN,458796,B.GO,458797,B.GP,458798,B.GQ,458799,B.GR,458800,B.GS,458801,B.GT,458803,B.GU,458804,B.GV,458805,B.GW,458806,B.GX,458807,B.GY,458808,B.GZ,458809,B.eo,458810,B.H_,458811,B.H0,458812,B.H1,458813,B.H2,458814,B.H3,458815,B.H4,458816,B.H5,458817,B.H6,458818,B.H7,458819,B.H8,458820,B.H9,458821,B.Ha,458822,B.Hb,458823,B.kC,458824,B.Hc,458825,B.Hd,458826,B.He,458827,B.Hf,458828,B.Hg,458829,B.Hh,458830,B.Hi,458831,B.Hj,458832,B.Hk,458833,B.Hl,458834,B.Hm,458835,B.kD,458836,B.Hn,458837,B.Ho,458838,B.Hp,458839,B.Hq,458840,B.Hr,458841,B.Hs,458842,B.Ht,458843,B.Hu,458844,B.Hv,458845,B.Hw,458846,B.Hx,458847,B.Hy,458848,B.Hz,458849,B.HA,458850,B.HB,458851,B.HC,458852,B.HD,458853,B.HE,458854,B.HF,458855,B.HG,458856,B.HH,458857,B.HI,458858,B.HJ,458859,B.HK,458860,B.HL,458861,B.HM,458862,B.HN,458863,B.HO,458864,B.HP,458865,B.HQ,458866,B.HR,458867,B.HS,458868,B.HT,458869,B.HU,458871,B.HV,458873,B.HW,458874,B.HX,458875,B.HY,458876,B.HZ,458877,B.I_,458878,B.I0,458879,B.I1,458880,B.I2,458881,B.I3,458885,B.I4,458887,B.I5,458888,B.I6,458889,B.I7,458890,B.I8,458891,B.I9,458896,B.Ia,458897,B.Ib,458898,B.Ic,458899,B.Id,458900,B.Ie,458907,B.If,458915,B.Ig,458934,B.Ih,458935,B.Ii,458939,B.Ij,458960,B.Ik,458961,B.Il,458962,B.Im,458963,B.In,458964,B.Io,458967,B.abf,458968,B.Ip,458969,B.Iq,458976,B.ft,458977,B.fu,458978,B.fv,458979,B.fw,458980,B.hR,458981,B.hS,458982,B.fx,458983,B.hT,786528,B.abg,786529,B.abh,786543,B.Iu,786544,B.Iv,786546,B.abi,786547,B.abj,786548,B.abk,786549,B.abl,786553,B.abm,786554,B.abn,786563,B.abo,786572,B.abp,786573,B.abq,786580,B.abr,786588,B.abs,786589,B.abt,786608,B.Iw,786609,B.Ix,786610,B.Iy,786611,B.Iz,786612,B.IA,786613,B.IB,786614,B.IC,786615,B.ID,786616,B.IE,786637,B.IF,786639,B.abu,786661,B.abv,786819,B.IG,786820,B.abw,786822,B.abx,786826,B.IH,786829,B.aby,786830,B.abz,786834,B.II,786836,B.IJ,786838,B.abA,786844,B.abB,786846,B.abC,786847,B.IK,786850,B.IL,786855,B.abD,786859,B.abE,786862,B.abF,786865,B.IM,786871,B.abG,786891,B.IN,786945,B.abH,786947,B.abI,786951,B.abJ,786952,B.abK,786977,B.IO,786979,B.IP,786980,B.IQ,786981,B.IR,786982,B.IS,786983,B.IT,786986,B.IU,786989,B.abL,786990,B.abM,786994,B.IV,787065,B.abN,787081,B.IW,787083,B.IX,787084,B.IY,787101,B.IZ,787103,B.J_],A.ah("dm")) +B.a6H=new A.dm([0,"FontWeight.w100",1,"FontWeight.w200",2,"FontWeight.w300",3,"FontWeight.w400",4,"FontWeight.w500",5,"FontWeight.w600",6,"FontWeight.w700",7,"FontWeight.w800",8,"FontWeight.w900"],A.ah("dm")) +B.EW=new A.dm([B.fB,"defaultNavigation",B.om,"lShaped",B.on,"rightAndLeft",B.oo,"edge",B.op,"kindlish",B.er,"disabled"],A.ah("dm")) +B.aa4={"application/vnd.android.package-archive":0,"application/epub+zip":1,"application/gzip":2,"application/java-archive":3,"application/json":4,"application/ld+json":5,"application/msword":6,"application/octet-stream":7,"application/ogg":8,"application/pdf":9,"application/php":10,"application/rtf":11,"application/vnd.amazon.ebook":12,"application/vnd.apple.installer+xml":13,"application/vnd.mozilla.xul+xml":14,"application/vnd.ms-excel":15,"application/vnd.ms-fontobject":16,"application/vnd.ms-powerpoint":17,"application/vnd.oasis.opendocument.presentation":18,"application/vnd.oasis.opendocument.spreadsheet":19,"application/vnd.oasis.opendocument.text":20,"application/vnd.openxmlformats-officedocument.presentationml.presentation":21,"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":22,"application/vnd.openxmlformats-officedocument.wordprocessingml.document":23,"application/vnd.rar":24,"application/vnd.visio":25,"application/x-7z-compressed":26,"application/x-abiword":27,"application/x-bzip":28,"application/x-bzip2":29,"application/x-csh":30,"application/x-freearc":31,"application/x-sh":32,"application/x-shockwave-flash":33,"application/x-tar":34,"application/xhtml+xml":35,"application/xml":36,"application/zip":37,"audio/3gpp":38,"audio/3gpp2":39,"audio/aac":40,"audio/x-aac":41,"audio/midi audio/x-midi":42,"audio/x-m4a":43,"audio/m4a":44,"audio/mpeg":45,"audio/ogg":46,"audio/opus":47,"audio/wav":48,"audio/webm":49,"font/otf":50,"font/ttf":51,"font/woff":52,"font/woff2":53,"image/bmp":54,"image/gif":55,"image/jpeg":56,"image/png":57,"image/svg+xml":58,"image/tiff":59,"image/vnd.microsoft.icon":60,"image/webp":61,"text/calendar":62,"text/css":63,"text/csv":64,"text/html":65,"text/javascript":66,"text/plain":67,"text/xml":68,"video/3gpp":69,"video/3gpp2":70,"video/mp2t":71,"video/mpeg":72,"video/ogg":73,"video/webm":74,"video/x-msvideo":75,"video/quicktime":76} +B.a6I=new A.a2(B.aa4,[".apk",".epub",".gz",".jar",".json",".jsonld",".doc",".bin",".ogx",".pdf",".php",".rtf",".azw",".mpkg",".xul",".xls",".eot",".ppt",".odp",".ods",".odt",".pptx",".xlsx",".docx",".rar",".vsd",".7z",".abw",".bz",".bz2",".csh",".arc",".sh",".swf",".tar",".xhtml",".xml",".zip",".3gp",".3g2",".aac",".aac",".midi",".m4a",".m4a",".mp3",".oga",".opus",".wav",".weba",".otf",".ttf",".woff",".woff2",".bmp",".gif",".jpg",".png",".svg",".tiff",".ico",".webp",".ics",".css",".csv",".html",".js",".txt",".xml",".3gp",".3g2",".ts",".mpeg",".ogv",".webm",".avi",".mov"],t.w) +B.aaa={BU:0,DD:1,FX:2,TP:3,YD:4,ZR:5} +B.dh=new A.a2(B.aaa,["MM","DE","FR","TL","YE","CD"],t.w) +B.a9Z={alias:0,allScroll:1,basic:2,cell:3,click:4,contextMenu:5,copy:6,forbidden:7,grab:8,grabbing:9,help:10,move:11,none:12,noDrop:13,precise:14,progress:15,text:16,resizeColumn:17,resizeDown:18,resizeDownLeft:19,resizeDownRight:20,resizeLeft:21,resizeLeftRight:22,resizeRight:23,resizeRow:24,resizeUp:25,resizeUpDown:26,resizeUpLeft:27,resizeUpRight:28,resizeUpLeftDownRight:29,resizeUpRightDownLeft:30,verticalText:31,wait:32,zoomIn:33,zoomOut:34} +B.a6L=new A.a2(B.a9Z,["alias","all-scroll","default","cell","pointer","context-menu","copy","not-allowed","grab","grabbing","help","move","none","no-drop","crosshair","progress","text","col-resize","s-resize","sw-resize","se-resize","w-resize","ew-resize","e-resize","row-resize","n-resize","ns-resize","nw-resize","ne-resize","nwse-resize","nesw-resize","vertical-text","wait","zoom-in","zoom-out"],t.w) +B.aa9={type:0} +B.a6M=new A.a2(B.aa9,["line"],t.w) +B.Fj={AVRInput:0,AVRPower:1,Accel:2,Accept:3,Again:4,AllCandidates:5,Alphanumeric:6,AltGraph:7,AppSwitch:8,ArrowDown:9,ArrowLeft:10,ArrowRight:11,ArrowUp:12,Attn:13,AudioBalanceLeft:14,AudioBalanceRight:15,AudioBassBoostDown:16,AudioBassBoostToggle:17,AudioBassBoostUp:18,AudioFaderFront:19,AudioFaderRear:20,AudioSurroundModeNext:21,AudioTrebleDown:22,AudioTrebleUp:23,AudioVolumeDown:24,AudioVolumeMute:25,AudioVolumeUp:26,Backspace:27,BrightnessDown:28,BrightnessUp:29,BrowserBack:30,BrowserFavorites:31,BrowserForward:32,BrowserHome:33,BrowserRefresh:34,BrowserSearch:35,BrowserStop:36,Call:37,Camera:38,CameraFocus:39,Cancel:40,CapsLock:41,ChannelDown:42,ChannelUp:43,Clear:44,Close:45,ClosedCaptionToggle:46,CodeInput:47,ColorF0Red:48,ColorF1Green:49,ColorF2Yellow:50,ColorF3Blue:51,ColorF4Grey:52,ColorF5Brown:53,Compose:54,ContextMenu:55,Convert:56,Copy:57,CrSel:58,Cut:59,DVR:60,Delete:61,Dimmer:62,DisplaySwap:63,Eisu:64,Eject:65,End:66,EndCall:67,Enter:68,EraseEof:69,Esc:70,Escape:71,ExSel:72,Execute:73,Exit:74,F1:75,F10:76,F11:77,F12:78,F13:79,F14:80,F15:81,F16:82,F17:83,F18:84,F19:85,F2:86,F20:87,F21:88,F22:89,F23:90,F24:91,F3:92,F4:93,F5:94,F6:95,F7:96,F8:97,F9:98,FavoriteClear0:99,FavoriteClear1:100,FavoriteClear2:101,FavoriteClear3:102,FavoriteRecall0:103,FavoriteRecall1:104,FavoriteRecall2:105,FavoriteRecall3:106,FavoriteStore0:107,FavoriteStore1:108,FavoriteStore2:109,FavoriteStore3:110,FinalMode:111,Find:112,Fn:113,FnLock:114,GoBack:115,GoHome:116,GroupFirst:117,GroupLast:118,GroupNext:119,GroupPrevious:120,Guide:121,GuideNextDay:122,GuidePreviousDay:123,HangulMode:124,HanjaMode:125,Hankaku:126,HeadsetHook:127,Help:128,Hibernate:129,Hiragana:130,HiraganaKatakana:131,Home:132,Hyper:133,Info:134,Insert:135,InstantReplay:136,JunjaMode:137,KanaMode:138,KanjiMode:139,Katakana:140,Key11:141,Key12:142,LastNumberRedial:143,LaunchApplication1:144,LaunchApplication2:145,LaunchAssistant:146,LaunchCalendar:147,LaunchContacts:148,LaunchControlPanel:149,LaunchMail:150,LaunchMediaPlayer:151,LaunchMusicPlayer:152,LaunchPhone:153,LaunchScreenSaver:154,LaunchSpreadsheet:155,LaunchWebBrowser:156,LaunchWebCam:157,LaunchWordProcessor:158,Link:159,ListProgram:160,LiveContent:161,Lock:162,LogOff:163,MailForward:164,MailReply:165,MailSend:166,MannerMode:167,MediaApps:168,MediaAudioTrack:169,MediaClose:170,MediaFastForward:171,MediaLast:172,MediaPause:173,MediaPlay:174,MediaPlayPause:175,MediaRecord:176,MediaRewind:177,MediaSkip:178,MediaSkipBackward:179,MediaSkipForward:180,MediaStepBackward:181,MediaStepForward:182,MediaStop:183,MediaTopMenu:184,MediaTrackNext:185,MediaTrackPrevious:186,MicrophoneToggle:187,MicrophoneVolumeDown:188,MicrophoneVolumeMute:189,MicrophoneVolumeUp:190,ModeChange:191,NavigateIn:192,NavigateNext:193,NavigateOut:194,NavigatePrevious:195,New:196,NextCandidate:197,NextFavoriteChannel:198,NextUserProfile:199,NonConvert:200,Notification:201,NumLock:202,OnDemand:203,Open:204,PageDown:205,PageUp:206,Pairing:207,Paste:208,Pause:209,PinPDown:210,PinPMove:211,PinPToggle:212,PinPUp:213,Play:214,PlaySpeedDown:215,PlaySpeedReset:216,PlaySpeedUp:217,Power:218,PowerOff:219,PreviousCandidate:220,Print:221,PrintScreen:222,Process:223,Props:224,RandomToggle:225,RcLowBattery:226,RecordSpeedNext:227,Redo:228,RfBypass:229,Romaji:230,STBInput:231,STBPower:232,Save:233,ScanChannelsToggle:234,ScreenModeNext:235,ScrollLock:236,Select:237,Settings:238,ShiftLevel5:239,SingleCandidate:240,Soft1:241,Soft2:242,Soft3:243,Soft4:244,Soft5:245,Soft6:246,Soft7:247,Soft8:248,SpeechCorrectionList:249,SpeechInputToggle:250,SpellCheck:251,SplitScreenToggle:252,Standby:253,Subtitle:254,Super:255,Symbol:256,SymbolLock:257,TV:258,TV3DMode:259,TVAntennaCable:260,TVAudioDescription:261,TVAudioDescriptionMixDown:262,TVAudioDescriptionMixUp:263,TVContentsMenu:264,TVDataService:265,TVInput:266,TVInputComponent1:267,TVInputComponent2:268,TVInputComposite1:269,TVInputComposite2:270,TVInputHDMI1:271,TVInputHDMI2:272,TVInputHDMI3:273,TVInputHDMI4:274,TVInputVGA1:275,TVMediaContext:276,TVNetwork:277,TVNumberEntry:278,TVPower:279,TVRadioService:280,TVSatellite:281,TVSatelliteBS:282,TVSatelliteCS:283,TVSatelliteToggle:284,TVTerrestrialAnalog:285,TVTerrestrialDigital:286,TVTimer:287,Tab:288,Teletext:289,Undo:290,Unidentified:291,VideoModeNext:292,VoiceDial:293,WakeUp:294,Wink:295,Zenkaku:296,ZenkakuHankaku:297,ZoomIn:298,ZoomOut:299,ZoomToggle:300} +B.Cv=new A.n(4294970632) +B.Cw=new A.n(4294970633) +B.Ab=new A.n(4294967553) +B.Aq=new A.n(4294968577) +B.Ar=new A.n(4294968578) +B.AP=new A.n(4294969089) +B.AQ=new A.n(4294969090) +B.kh=new A.n(4294967555) +B.DZ=new A.n(4294971393) +B.cZ=new A.n(4294968065) +B.cF=new A.n(4294968066) +B.cG=new A.n(4294968067) +B.d_=new A.n(4294968068) +B.As=new A.n(4294968579) +B.Co=new A.n(4294970625) +B.Cp=new A.n(4294970626) +B.Cq=new A.n(4294970627) +B.DQ=new A.n(4294970882) +B.Cr=new A.n(4294970628) +B.Cs=new A.n(4294970629) +B.Ct=new A.n(4294970630) +B.Cu=new A.n(4294970631) +B.DR=new A.n(4294970884) +B.DS=new A.n(4294970885) +B.C_=new A.n(4294969871) +B.C1=new A.n(4294969873) +B.C0=new A.n(4294969872) +B.AE=new A.n(4294968833) +B.AF=new A.n(4294968834) +B.Ch=new A.n(4294970369) +B.Ci=new A.n(4294970370) +B.Cj=new A.n(4294970371) +B.Ck=new A.n(4294970372) +B.Cl=new A.n(4294970373) +B.Cm=new A.n(4294970374) +B.Cn=new A.n(4294970375) +B.E_=new A.n(4294971394) +B.AG=new A.n(4294968835) +B.E0=new A.n(4294971395) +B.At=new A.n(4294968580) +B.Cx=new A.n(4294970634) +B.Cy=new A.n(4294970635) +B.nC=new A.n(4294968321) +B.BN=new A.n(4294969857) +B.CF=new A.n(4294970642) +B.AR=new A.n(4294969091) +B.Cz=new A.n(4294970636) +B.CA=new A.n(4294970637) +B.CB=new A.n(4294970638) +B.CC=new A.n(4294970639) +B.CD=new A.n(4294970640) +B.CE=new A.n(4294970641) +B.AS=new A.n(4294969092) +B.Au=new A.n(4294968581) +B.AT=new A.n(4294969093) +B.Ai=new A.n(4294968322) +B.Aj=new A.n(4294968323) +B.Ak=new A.n(4294968324) +B.DD=new A.n(4294970703) +B.CG=new A.n(4294970643) +B.CH=new A.n(4294970644) +B.B7=new A.n(4294969108) +B.AH=new A.n(4294968836) +B.ek=new A.n(4294968069) +B.E1=new A.n(4294971396) +B.kg=new A.n(4294967309) +B.Al=new A.n(4294968325) +B.Am=new A.n(4294968326) +B.Av=new A.n(4294968582) +B.CI=new A.n(4294970645) +B.Bh=new A.n(4294969345) +B.Bq=new A.n(4294969354) +B.Br=new A.n(4294969355) +B.Bs=new A.n(4294969356) +B.Bt=new A.n(4294969357) +B.Bu=new A.n(4294969358) +B.Bv=new A.n(4294969359) +B.Bw=new A.n(4294969360) +B.Bx=new A.n(4294969361) +B.By=new A.n(4294969362) +B.Bz=new A.n(4294969363) +B.Bi=new A.n(4294969346) +B.BA=new A.n(4294969364) +B.BB=new A.n(4294969365) +B.BC=new A.n(4294969366) +B.BD=new A.n(4294969367) +B.BE=new A.n(4294969368) +B.Bj=new A.n(4294969347) +B.Bk=new A.n(4294969348) +B.Bl=new A.n(4294969349) +B.Bm=new A.n(4294969350) +B.Bn=new A.n(4294969351) +B.Bo=new A.n(4294969352) +B.Bp=new A.n(4294969353) +B.CJ=new A.n(4294970646) +B.CK=new A.n(4294970647) +B.CL=new A.n(4294970648) +B.CM=new A.n(4294970649) +B.CN=new A.n(4294970650) +B.CO=new A.n(4294970651) +B.CP=new A.n(4294970652) +B.CQ=new A.n(4294970653) +B.CR=new A.n(4294970654) +B.CS=new A.n(4294970655) +B.CT=new A.n(4294970656) +B.CU=new A.n(4294970657) +B.AU=new A.n(4294969094) +B.Aw=new A.n(4294968583) +B.Ac=new A.n(4294967559) +B.E2=new A.n(4294971397) +B.E3=new A.n(4294971398) +B.AV=new A.n(4294969095) +B.AW=new A.n(4294969096) +B.AX=new A.n(4294969097) +B.AY=new A.n(4294969098) +B.CV=new A.n(4294970658) +B.CW=new A.n(4294970659) +B.CX=new A.n(4294970660) +B.B4=new A.n(4294969105) +B.B5=new A.n(4294969106) +B.B8=new A.n(4294969109) +B.E4=new A.n(4294971399) +B.Ax=new A.n(4294968584) +B.AM=new A.n(4294968841) +B.B9=new A.n(4294969110) +B.Ba=new A.n(4294969111) +B.el=new A.n(4294968070) +B.Ad=new A.n(4294967560) +B.CY=new A.n(4294970661) +B.nD=new A.n(4294968327) +B.CZ=new A.n(4294970662) +B.B6=new A.n(4294969107) +B.Bb=new A.n(4294969112) +B.Bc=new A.n(4294969113) +B.Bd=new A.n(4294969114) +B.EA=new A.n(4294971905) +B.EB=new A.n(4294971906) +B.E5=new A.n(4294971400) +B.C7=new A.n(4294970118) +B.C2=new A.n(4294970113) +B.Cf=new A.n(4294970126) +B.C3=new A.n(4294970114) +B.Cd=new A.n(4294970124) +B.Cg=new A.n(4294970127) +B.C4=new A.n(4294970115) +B.C5=new A.n(4294970116) +B.C6=new A.n(4294970117) +B.Ce=new A.n(4294970125) +B.C8=new A.n(4294970119) +B.C9=new A.n(4294970120) +B.Ca=new A.n(4294970121) +B.Cb=new A.n(4294970122) +B.Cc=new A.n(4294970123) +B.D_=new A.n(4294970663) +B.D0=new A.n(4294970664) +B.D1=new A.n(4294970665) +B.D2=new A.n(4294970666) +B.AI=new A.n(4294968837) +B.BO=new A.n(4294969858) +B.BP=new A.n(4294969859) +B.BQ=new A.n(4294969860) +B.E7=new A.n(4294971402) +B.D3=new A.n(4294970667) +B.DE=new A.n(4294970704) +B.DP=new A.n(4294970715) +B.D4=new A.n(4294970668) +B.D5=new A.n(4294970669) +B.D6=new A.n(4294970670) +B.D7=new A.n(4294970671) +B.BR=new A.n(4294969861) +B.D8=new A.n(4294970672) +B.D9=new A.n(4294970673) +B.Da=new A.n(4294970674) +B.DF=new A.n(4294970705) +B.DG=new A.n(4294970706) +B.DH=new A.n(4294970707) +B.DI=new A.n(4294970708) +B.BS=new A.n(4294969863) +B.DJ=new A.n(4294970709) +B.BT=new A.n(4294969864) +B.BU=new A.n(4294969865) +B.DT=new A.n(4294970886) +B.DU=new A.n(4294970887) +B.DW=new A.n(4294970889) +B.DV=new A.n(4294970888) +B.AZ=new A.n(4294969099) +B.DK=new A.n(4294970710) +B.DL=new A.n(4294970711) +B.DM=new A.n(4294970712) +B.DN=new A.n(4294970713) +B.BV=new A.n(4294969866) +B.B_=new A.n(4294969100) +B.Db=new A.n(4294970675) +B.Dc=new A.n(4294970676) +B.B0=new A.n(4294969101) +B.E6=new A.n(4294971401) +B.Dd=new A.n(4294970677) +B.BW=new A.n(4294969867) +B.hC=new A.n(4294968071) +B.hD=new A.n(4294968072) +B.DO=new A.n(4294970714) +B.An=new A.n(4294968328) +B.Ay=new A.n(4294968585) +B.De=new A.n(4294970678) +B.Df=new A.n(4294970679) +B.Dg=new A.n(4294970680) +B.Dh=new A.n(4294970681) +B.Az=new A.n(4294968586) +B.Di=new A.n(4294970682) +B.Dj=new A.n(4294970683) +B.Dk=new A.n(4294970684) +B.AJ=new A.n(4294968838) +B.AK=new A.n(4294968839) +B.B1=new A.n(4294969102) +B.BX=new A.n(4294969868) +B.AL=new A.n(4294968840) +B.B2=new A.n(4294969103) +B.AA=new A.n(4294968587) +B.Dl=new A.n(4294970685) +B.Dm=new A.n(4294970686) +B.Dn=new A.n(4294970687) +B.Ao=new A.n(4294968329) +B.Do=new A.n(4294970688) +B.Be=new A.n(4294969115) +B.Dt=new A.n(4294970693) +B.Du=new A.n(4294970694) +B.BY=new A.n(4294969869) +B.Dp=new A.n(4294970689) +B.Dq=new A.n(4294970690) +B.AB=new A.n(4294968588) +B.Dr=new A.n(4294970691) +B.Ah=new A.n(4294967569) +B.B3=new A.n(4294969104) +B.BF=new A.n(4294969601) +B.BG=new A.n(4294969602) +B.BH=new A.n(4294969603) +B.BI=new A.n(4294969604) +B.BJ=new A.n(4294969605) +B.BK=new A.n(4294969606) +B.BL=new A.n(4294969607) +B.BM=new A.n(4294969608) +B.DX=new A.n(4294971137) +B.DY=new A.n(4294971138) +B.BZ=new A.n(4294969870) +B.Ds=new A.n(4294970692) +B.AN=new A.n(4294968842) +B.Dv=new A.n(4294970695) +B.Ae=new A.n(4294967566) +B.Af=new A.n(4294967567) +B.Ag=new A.n(4294967568) +B.Dx=new A.n(4294970697) +B.E9=new A.n(4294971649) +B.Ea=new A.n(4294971650) +B.Eb=new A.n(4294971651) +B.Ec=new A.n(4294971652) +B.Ed=new A.n(4294971653) +B.Ee=new A.n(4294971654) +B.Ef=new A.n(4294971655) +B.Dy=new A.n(4294970698) +B.Eg=new A.n(4294971656) +B.Eh=new A.n(4294971657) +B.Ei=new A.n(4294971658) +B.Ej=new A.n(4294971659) +B.Ek=new A.n(4294971660) +B.El=new A.n(4294971661) +B.Em=new A.n(4294971662) +B.En=new A.n(4294971663) +B.Eo=new A.n(4294971664) +B.Ep=new A.n(4294971665) +B.Eq=new A.n(4294971666) +B.Er=new A.n(4294971667) +B.Dz=new A.n(4294970699) +B.Es=new A.n(4294971668) +B.Et=new A.n(4294971669) +B.Eu=new A.n(4294971670) +B.Ev=new A.n(4294971671) +B.Ew=new A.n(4294971672) +B.Ex=new A.n(4294971673) +B.Ey=new A.n(4294971674) +B.Ez=new A.n(4294971675) +B.kf=new A.n(4294967305) +B.Dw=new A.n(4294970696) +B.Ap=new A.n(4294968330) +B.Aa=new A.n(4294967297) +B.DA=new A.n(4294970700) +B.E8=new A.n(4294971403) +B.AO=new A.n(4294968843) +B.DB=new A.n(4294970701) +B.Bf=new A.n(4294969116) +B.Bg=new A.n(4294969117) +B.AC=new A.n(4294968589) +B.AD=new A.n(4294968590) +B.DC=new A.n(4294970702) +B.a6O=new A.a2(B.Fj,[B.Cv,B.Cw,B.Ab,B.Aq,B.Ar,B.AP,B.AQ,B.kh,B.DZ,B.cZ,B.cF,B.cG,B.d_,B.As,B.Co,B.Cp,B.Cq,B.DQ,B.Cr,B.Cs,B.Ct,B.Cu,B.DR,B.DS,B.C_,B.C1,B.C0,B.ck,B.AE,B.AF,B.Ch,B.Ci,B.Cj,B.Ck,B.Cl,B.Cm,B.Cn,B.E_,B.AG,B.E0,B.At,B.hB,B.Cx,B.Cy,B.nC,B.BN,B.CF,B.AR,B.Cz,B.CA,B.CB,B.CC,B.CD,B.CE,B.AS,B.Au,B.AT,B.Ai,B.Aj,B.Ak,B.DD,B.bW,B.CG,B.CH,B.B7,B.AH,B.ek,B.E1,B.kg,B.Al,B.hA,B.hA,B.Am,B.Av,B.CI,B.Bh,B.Bq,B.Br,B.Bs,B.Bt,B.Bu,B.Bv,B.Bw,B.Bx,B.By,B.Bz,B.Bi,B.BA,B.BB,B.BC,B.BD,B.BE,B.Bj,B.Bk,B.Bl,B.Bm,B.Bn,B.Bo,B.Bp,B.CJ,B.CK,B.CL,B.CM,B.CN,B.CO,B.CP,B.CQ,B.CR,B.CS,B.CT,B.CU,B.AU,B.Aw,B.nB,B.Ac,B.E2,B.E3,B.AV,B.AW,B.AX,B.AY,B.CV,B.CW,B.CX,B.B4,B.B5,B.B8,B.E4,B.Ax,B.AM,B.B9,B.Ba,B.el,B.Ad,B.CY,B.nD,B.CZ,B.B6,B.Bb,B.Bc,B.Bd,B.EA,B.EB,B.E5,B.C7,B.C2,B.Cf,B.C3,B.Cd,B.Cg,B.C4,B.C5,B.C6,B.Ce,B.C8,B.C9,B.Ca,B.Cb,B.Cc,B.D_,B.D0,B.D1,B.D2,B.AI,B.BO,B.BP,B.BQ,B.E7,B.D3,B.DE,B.DP,B.D4,B.D5,B.D6,B.D7,B.BR,B.D8,B.D9,B.Da,B.DF,B.DG,B.DH,B.DI,B.BS,B.DJ,B.BT,B.BU,B.DT,B.DU,B.DW,B.DV,B.AZ,B.DK,B.DL,B.DM,B.DN,B.BV,B.B_,B.Db,B.Dc,B.B0,B.E6,B.ki,B.Dd,B.BW,B.hC,B.hD,B.DO,B.An,B.Ay,B.De,B.Df,B.Dg,B.Dh,B.Az,B.Di,B.Dj,B.Dk,B.AJ,B.AK,B.B1,B.BX,B.AL,B.B2,B.AA,B.Dl,B.Dm,B.Dn,B.Ao,B.Do,B.Be,B.Dt,B.Du,B.BY,B.Dp,B.Dq,B.kj,B.AB,B.Dr,B.Ah,B.B3,B.BF,B.BG,B.BH,B.BI,B.BJ,B.BK,B.BL,B.BM,B.DX,B.DY,B.BZ,B.Ds,B.AN,B.Dv,B.Ae,B.Af,B.Ag,B.Dx,B.E9,B.Ea,B.Eb,B.Ec,B.Ed,B.Ee,B.Ef,B.Dy,B.Eg,B.Eh,B.Ei,B.Ej,B.Ek,B.El,B.Em,B.En,B.Eo,B.Ep,B.Eq,B.Er,B.Dz,B.Es,B.Et,B.Eu,B.Ev,B.Ew,B.Ex,B.Ey,B.Ez,B.kf,B.Dw,B.Ap,B.Aa,B.DA,B.E8,B.AO,B.DB,B.Bf,B.Bg,B.AC,B.AD,B.DC],A.ah("a2")) +B.a6P=new A.a2(B.Fj,[4294970632,4294970633,4294967553,4294968577,4294968578,4294969089,4294969090,4294967555,4294971393,4294968065,4294968066,4294968067,4294968068,4294968579,4294970625,4294970626,4294970627,4294970882,4294970628,4294970629,4294970630,4294970631,4294970884,4294970885,4294969871,4294969873,4294969872,4294967304,4294968833,4294968834,4294970369,4294970370,4294970371,4294970372,4294970373,4294970374,4294970375,4294971394,4294968835,4294971395,4294968580,4294967556,4294970634,4294970635,4294968321,4294969857,4294970642,4294969091,4294970636,4294970637,4294970638,4294970639,4294970640,4294970641,4294969092,4294968581,4294969093,4294968322,4294968323,4294968324,4294970703,4294967423,4294970643,4294970644,4294969108,4294968836,4294968069,4294971396,4294967309,4294968325,4294967323,4294967323,4294968326,4294968582,4294970645,4294969345,4294969354,4294969355,4294969356,4294969357,4294969358,4294969359,4294969360,4294969361,4294969362,4294969363,4294969346,4294969364,4294969365,4294969366,4294969367,4294969368,4294969347,4294969348,4294969349,4294969350,4294969351,4294969352,4294969353,4294970646,4294970647,4294970648,4294970649,4294970650,4294970651,4294970652,4294970653,4294970654,4294970655,4294970656,4294970657,4294969094,4294968583,4294967558,4294967559,4294971397,4294971398,4294969095,4294969096,4294969097,4294969098,4294970658,4294970659,4294970660,4294969105,4294969106,4294969109,4294971399,4294968584,4294968841,4294969110,4294969111,4294968070,4294967560,4294970661,4294968327,4294970662,4294969107,4294969112,4294969113,4294969114,4294971905,4294971906,4294971400,4294970118,4294970113,4294970126,4294970114,4294970124,4294970127,4294970115,4294970116,4294970117,4294970125,4294970119,4294970120,4294970121,4294970122,4294970123,4294970663,4294970664,4294970665,4294970666,4294968837,4294969858,4294969859,4294969860,4294971402,4294970667,4294970704,4294970715,4294970668,4294970669,4294970670,4294970671,4294969861,4294970672,4294970673,4294970674,4294970705,4294970706,4294970707,4294970708,4294969863,4294970709,4294969864,4294969865,4294970886,4294970887,4294970889,4294970888,4294969099,4294970710,4294970711,4294970712,4294970713,4294969866,4294969100,4294970675,4294970676,4294969101,4294971401,4294967562,4294970677,4294969867,4294968071,4294968072,4294970714,4294968328,4294968585,4294970678,4294970679,4294970680,4294970681,4294968586,4294970682,4294970683,4294970684,4294968838,4294968839,4294969102,4294969868,4294968840,4294969103,4294968587,4294970685,4294970686,4294970687,4294968329,4294970688,4294969115,4294970693,4294970694,4294969869,4294970689,4294970690,4294967564,4294968588,4294970691,4294967569,4294969104,4294969601,4294969602,4294969603,4294969604,4294969605,4294969606,4294969607,4294969608,4294971137,4294971138,4294969870,4294970692,4294968842,4294970695,4294967566,4294967567,4294967568,4294970697,4294971649,4294971650,4294971651,4294971652,4294971653,4294971654,4294971655,4294970698,4294971656,4294971657,4294971658,4294971659,4294971660,4294971661,4294971662,4294971663,4294971664,4294971665,4294971666,4294971667,4294970699,4294971668,4294971669,4294971670,4294971671,4294971672,4294971673,4294971674,4294971675,4294967305,4294970696,4294968330,4294967297,4294970700,4294971403,4294968843,4294970701,4294969116,4294969117,4294968589,4294968590,4294970702],t.eL) +B.eD=new A.bj(B.cZ,!1,!1,!1,!1) +B.eC=new A.bj(B.d_,!1,!1,!1,!1) +B.ajK=new A.zh(2,"down") +B.Rk=new A.tp(B.ajK) +B.KV=new A.zh(0,"up") +B.Rj=new A.tp(B.KV) +B.a6Q=new A.dm([B.eD,B.Rk,B.eC,B.Rj],t.Fp) +B.eA=new A.bj(B.cF,!1,!1,!1,!1) +B.eB=new A.bj(B.cG,!1,!1,!1,!1) +B.aoO=new A.GL(1,"left") +B.L5=new A.nA(B.aoO) +B.aoN=new A.GL(0,"right") +B.L4=new A.nA(B.aoN) +B.a6R=new A.dm([B.eA,B.L5,B.eB,B.L4],t.Fp) +B.aab={Abort:0,Again:1,AltLeft:2,AltRight:3,ArrowDown:4,ArrowLeft:5,ArrowRight:6,ArrowUp:7,AudioVolumeDown:8,AudioVolumeMute:9,AudioVolumeUp:10,Backquote:11,Backslash:12,Backspace:13,BracketLeft:14,BracketRight:15,BrightnessDown:16,BrightnessUp:17,BrowserBack:18,BrowserFavorites:19,BrowserForward:20,BrowserHome:21,BrowserRefresh:22,BrowserSearch:23,BrowserStop:24,CapsLock:25,Comma:26,ContextMenu:27,ControlLeft:28,ControlRight:29,Convert:30,Copy:31,Cut:32,Delete:33,Digit0:34,Digit1:35,Digit2:36,Digit3:37,Digit4:38,Digit5:39,Digit6:40,Digit7:41,Digit8:42,Digit9:43,DisplayToggleIntExt:44,Eject:45,End:46,Enter:47,Equal:48,Esc:49,Escape:50,F1:51,F10:52,F11:53,F12:54,F13:55,F14:56,F15:57,F16:58,F17:59,F18:60,F19:61,F2:62,F20:63,F21:64,F22:65,F23:66,F24:67,F3:68,F4:69,F5:70,F6:71,F7:72,F8:73,F9:74,Find:75,Fn:76,FnLock:77,GameButton1:78,GameButton10:79,GameButton11:80,GameButton12:81,GameButton13:82,GameButton14:83,GameButton15:84,GameButton16:85,GameButton2:86,GameButton3:87,GameButton4:88,GameButton5:89,GameButton6:90,GameButton7:91,GameButton8:92,GameButton9:93,GameButtonA:94,GameButtonB:95,GameButtonC:96,GameButtonLeft1:97,GameButtonLeft2:98,GameButtonMode:99,GameButtonRight1:100,GameButtonRight2:101,GameButtonSelect:102,GameButtonStart:103,GameButtonThumbLeft:104,GameButtonThumbRight:105,GameButtonX:106,GameButtonY:107,GameButtonZ:108,Help:109,Home:110,Hyper:111,Insert:112,IntlBackslash:113,IntlRo:114,IntlYen:115,KanaMode:116,KeyA:117,KeyB:118,KeyC:119,KeyD:120,KeyE:121,KeyF:122,KeyG:123,KeyH:124,KeyI:125,KeyJ:126,KeyK:127,KeyL:128,KeyM:129,KeyN:130,KeyO:131,KeyP:132,KeyQ:133,KeyR:134,KeyS:135,KeyT:136,KeyU:137,KeyV:138,KeyW:139,KeyX:140,KeyY:141,KeyZ:142,KeyboardLayoutSelect:143,Lang1:144,Lang2:145,Lang3:146,Lang4:147,Lang5:148,LaunchApp1:149,LaunchApp2:150,LaunchAssistant:151,LaunchControlPanel:152,LaunchMail:153,LaunchScreenSaver:154,MailForward:155,MailReply:156,MailSend:157,MediaFastForward:158,MediaPause:159,MediaPlay:160,MediaPlayPause:161,MediaRecord:162,MediaRewind:163,MediaSelect:164,MediaStop:165,MediaTrackNext:166,MediaTrackPrevious:167,MetaLeft:168,MetaRight:169,MicrophoneMuteToggle:170,Minus:171,NonConvert:172,NumLock:173,Numpad0:174,Numpad1:175,Numpad2:176,Numpad3:177,Numpad4:178,Numpad5:179,Numpad6:180,Numpad7:181,Numpad8:182,Numpad9:183,NumpadAdd:184,NumpadBackspace:185,NumpadClear:186,NumpadClearEntry:187,NumpadComma:188,NumpadDecimal:189,NumpadDivide:190,NumpadEnter:191,NumpadEqual:192,NumpadMemoryAdd:193,NumpadMemoryClear:194,NumpadMemoryRecall:195,NumpadMemoryStore:196,NumpadMemorySubtract:197,NumpadMultiply:198,NumpadParenLeft:199,NumpadParenRight:200,NumpadSubtract:201,Open:202,PageDown:203,PageUp:204,Paste:205,Pause:206,Period:207,Power:208,PrintScreen:209,PrivacyScreenToggle:210,Props:211,Quote:212,Resume:213,ScrollLock:214,Select:215,SelectTask:216,Semicolon:217,ShiftLeft:218,ShiftRight:219,ShowAllWindows:220,Slash:221,Sleep:222,Space:223,Super:224,Suspend:225,Tab:226,Turbo:227,Undo:228,WakeUp:229,ZoomToggle:230} +B.a6S=new A.a2(B.aab,[458907,458873,458978,458982,458833,458832,458831,458834,458881,458879,458880,458805,458801,458794,458799,458800,786544,786543,786980,786986,786981,786979,786983,786977,786982,458809,458806,458853,458976,458980,458890,458876,458875,458828,458791,458782,458783,458784,458785,458786,458787,458788,458789,458790,65717,786616,458829,458792,458798,458793,458793,458810,458819,458820,458821,458856,458857,458858,458859,458860,458861,458862,458811,458863,458864,458865,458866,458867,458812,458813,458814,458815,458816,458817,458818,458878,18,19,392961,392970,392971,392972,392973,392974,392975,392976,392962,392963,392964,392965,392966,392967,392968,392969,392977,392978,392979,392980,392981,392982,392983,392984,392985,392986,392987,392988,392989,392990,392991,458869,458826,16,458825,458852,458887,458889,458888,458756,458757,458758,458759,458760,458761,458762,458763,458764,458765,458766,458767,458768,458769,458770,458771,458772,458773,458774,458775,458776,458777,458778,458779,458780,458781,787101,458896,458897,458898,458899,458900,786836,786834,786891,786847,786826,786865,787083,787081,787084,786611,786609,786608,786637,786610,786612,786819,786615,786613,786614,458979,458983,24,458797,458891,458835,458850,458841,458842,458843,458844,458845,458846,458847,458848,458849,458839,458939,458968,458969,458885,458851,458836,458840,458855,458963,458962,458961,458960,458964,458837,458934,458935,458838,458868,458830,458827,458877,458824,458807,458854,458822,23,458915,458804,21,458823,458871,786850,458803,458977,458981,787103,458808,65666,458796,17,20,458795,22,458874,65667,786994],t.eL) +B.aa5={"deleteBackward:":0,"deleteWordBackward:":1,"deleteToBeginningOfLine:":2,"deleteForward:":3,"deleteWordForward:":4,"deleteToEndOfLine:":5,"moveLeft:":6,"moveRight:":7,"moveForward:":8,"moveBackward:":9,"moveUp:":10,"moveDown:":11,"moveLeftAndModifySelection:":12,"moveRightAndModifySelection:":13,"moveUpAndModifySelection:":14,"moveDownAndModifySelection:":15,"moveWordLeft:":16,"moveWordRight:":17,"moveToBeginningOfParagraph:":18,"moveToEndOfParagraph:":19,"moveWordLeftAndModifySelection:":20,"moveWordRightAndModifySelection:":21,"moveParagraphBackwardAndModifySelection:":22,"moveParagraphForwardAndModifySelection:":23,"moveToLeftEndOfLine:":24,"moveToRightEndOfLine:":25,"moveToBeginningOfDocument:":26,"moveToEndOfDocument:":27,"moveToLeftEndOfLineAndModifySelection:":28,"moveToRightEndOfLineAndModifySelection:":29,"moveToBeginningOfDocumentAndModifySelection:":30,"moveToEndOfDocumentAndModifySelection:":31,"transpose:":32,"scrollToBeginningOfDocument:":33,"scrollToEndOfDocument:":34,"scrollPageUp:":35,"scrollPageDown:":36,"pageUpAndModifySelection:":37,"pageDownAndModifySelection:":38,"cancelOperation:":39,"insertTab:":40,"insertBacktab:":41} +B.Jn=new A.qO(!1) +B.Jo=new A.qO(!0) +B.ox=new A.hE(B.af,B.hX) +B.qk=new A.kf() +B.qo=new A.xS() +B.qs=new A.yb() +B.a6T=new A.a2(B.aa5,[B.mn,B.mr,B.mp,B.mo,B.ms,B.mq,B.hf,B.hg,B.hg,B.hf,B.j8,B.j9,B.mF,B.mG,B.mJ,B.mK,B.mH,B.mI,B.e8,B.e9,B.rY,B.rZ,B.rW,B.rX,B.e8,B.e9,B.j6,B.j7,B.rQ,B.rR,B.mC,B.mD,B.qw,B.Jn,B.Jo,B.ox,B.kS,B.mL,B.mM,B.qk,B.qo,B.qs],A.ah("a2")) +B.EX=new A.dm([B.kP,"defaultReader",B.og,"continuousVertical",B.oh,"singleHorizontalLTR",B.oi,"singleHorizontalRTL",B.oj,"continuousHorizontalLTR",B.ok,"continuousHorizontalRTL",B.ol,"singleVertical",B.hV,"webtoon"],A.ah("dm")) +B.nA=new A.n(32) +B.i8=new A.bj(B.nA,!1,!1,!1,!1) +B.l_=new A.bj(B.kg,!1,!1,!1,!1) +B.nE=new A.n(8589935117) +B.adK=new A.bj(B.nE,!1,!1,!1,!1) +B.oF=new A.bj(B.hA,!1,!1,!1,!1) +B.adl=new A.bj(B.kf,!1,!1,!1,!1) +B.adm=new A.bj(B.kf,!1,!0,!1,!1) +B.i6=new A.bj(B.hD,!1,!1,!1,!1) +B.i7=new A.bj(B.hC,!1,!1,!1,!1) +B.O2=new A.qH() +B.qi=new A.t3() +B.kR=new A.a84(0,"line") +B.act=new A.hE(B.af,B.kR) +B.acr=new A.hE(B.ag,B.kR) +B.acs=new A.hE(B.dq,B.kR) +B.acu=new A.hE(B.eP,B.kR) +B.a6U=new A.dm([B.i8,B.O2,B.l_,B.qi,B.adK,B.qi,B.oF,B.qk,B.adl,B.qo,B.adm,B.qs,B.eC,B.act,B.eD,B.acr,B.eA,B.acs,B.eB,B.acu,B.i6,B.ox,B.i7,B.kS],t.Fp) +B.i9=new A.z_(B.tl,B.tq,0,"latest") +B.TM=new A.aM(63287,"MaterialIcons",null,!1) +B.fJ=new A.z_(B.TM,B.tn,1,"popular") +B.Tg=new A.aM(61550,"MaterialIcons",null,!1) +B.d4=new A.z_(B.Tg,B.to,2,"filter") +B.EY=new A.dm([B.i9,"latest",B.fJ,"popular",B.d4,"filter"],A.ah("dm")) +B.a5e=new A.n(33) +B.a5f=new A.n(34) +B.a5g=new A.n(35) +B.a5h=new A.n(36) +B.a5i=new A.n(37) +B.a5j=new A.n(38) +B.a5k=new A.n(39) +B.a5l=new A.n(40) +B.a5m=new A.n(41) +B.A9=new A.n(42) +B.EC=new A.n(43) +B.a5n=new A.n(44) +B.ED=new A.n(45) +B.EE=new A.n(46) +B.EF=new A.n(47) +B.EG=new A.n(48) +B.EH=new A.n(49) +B.EI=new A.n(50) +B.EJ=new A.n(51) +B.EK=new A.n(52) +B.EL=new A.n(53) +B.EM=new A.n(54) +B.EN=new A.n(55) +B.EO=new A.n(56) +B.EP=new A.n(57) +B.a5o=new A.n(58) +B.a5p=new A.n(59) +B.a5q=new A.n(60) +B.a5r=new A.n(61) +B.a5s=new A.n(62) +B.a5t=new A.n(63) +B.a5u=new A.n(64) +B.a6j=new A.n(91) +B.a6k=new A.n(92) +B.a6l=new A.n(93) +B.a6m=new A.n(94) +B.a6n=new A.n(95) +B.a6o=new A.n(96) +B.kn=new A.n(97) +B.EU=new A.n(98) +B.nQ=new A.n(99) +B.A2=new A.n(100) +B.A3=new A.n(101) +B.A4=new A.n(102) +B.a4Z=new A.n(103) +B.a5_=new A.n(104) +B.a50=new A.n(105) +B.a51=new A.n(106) +B.a52=new A.n(107) +B.a53=new A.n(108) +B.a54=new A.n(109) +B.A5=new A.n(110) +B.a55=new A.n(111) +B.a56=new A.n(113) +B.a57=new A.n(114) +B.A6=new A.n(115) +B.A7=new A.n(116) +B.a58=new A.n(117) +B.ny=new A.n(118) +B.A8=new A.n(119) +B.nz=new A.n(120) +B.a59=new A.n(121) +B.hz=new A.n(122) +B.a5a=new A.n(123) +B.a5b=new A.n(124) +B.a5c=new A.n(125) +B.a5d=new A.n(126) +B.a5v=new A.n(8589934592) +B.a5w=new A.n(8589934593) +B.a5x=new A.n(8589934594) +B.a5y=new A.n(8589934595) +B.a5z=new A.n(8589934608) +B.a5A=new A.n(8589934609) +B.a5B=new A.n(8589934610) +B.a5C=new A.n(8589934611) +B.a5D=new A.n(8589934612) +B.a5E=new A.n(8589934624) +B.a5F=new A.n(8589934625) +B.a5G=new A.n(8589934626) +B.a5H=new A.n(8589935088) +B.a5I=new A.n(8589935090) +B.a5J=new A.n(8589935092) +B.a5K=new A.n(8589935094) +B.a5L=new A.n(8589935144) +B.a5M=new A.n(8589935145) +B.EQ=new A.n(8589935146) +B.ER=new A.n(8589935147) +B.a5N=new A.n(8589935148) +B.ES=new A.n(8589935149) +B.nF=new A.n(8589935150) +B.ET=new A.n(8589935151) +B.nG=new A.n(8589935152) +B.nH=new A.n(8589935153) +B.nI=new A.n(8589935154) +B.nJ=new A.n(8589935155) +B.nK=new A.n(8589935156) +B.nL=new A.n(8589935157) +B.nM=new A.n(8589935158) +B.nN=new A.n(8589935159) +B.nO=new A.n(8589935160) +B.nP=new A.n(8589935161) +B.a5O=new A.n(8589935165) +B.a5P=new A.n(8589935361) +B.a5Q=new A.n(8589935362) +B.a5R=new A.n(8589935363) +B.a5S=new A.n(8589935364) +B.a5T=new A.n(8589935365) +B.a5U=new A.n(8589935366) +B.a5V=new A.n(8589935367) +B.a5W=new A.n(8589935368) +B.a5X=new A.n(8589935369) +B.a5Y=new A.n(8589935370) +B.a5Z=new A.n(8589935371) +B.a6_=new A.n(8589935372) +B.a60=new A.n(8589935373) +B.a61=new A.n(8589935374) +B.a62=new A.n(8589935375) +B.a63=new A.n(8589935376) +B.a64=new A.n(8589935377) +B.a65=new A.n(8589935378) +B.a66=new A.n(8589935379) +B.a67=new A.n(8589935380) +B.a68=new A.n(8589935381) +B.a69=new A.n(8589935382) +B.a6a=new A.n(8589935383) +B.a6b=new A.n(8589935384) +B.a6c=new A.n(8589935385) +B.a6d=new A.n(8589935386) +B.a6e=new A.n(8589935387) +B.a6f=new A.n(8589935388) +B.a6g=new A.n(8589935389) +B.a6h=new A.n(8589935390) +B.a6i=new A.n(8589935391) +B.a6V=new A.dm([32,B.nA,33,B.a5e,34,B.a5f,35,B.a5g,36,B.a5h,37,B.a5i,38,B.a5j,39,B.a5k,40,B.a5l,41,B.a5m,42,B.A9,43,B.EC,44,B.a5n,45,B.ED,46,B.EE,47,B.EF,48,B.EG,49,B.EH,50,B.EI,51,B.EJ,52,B.EK,53,B.EL,54,B.EM,55,B.EN,56,B.EO,57,B.EP,58,B.a5o,59,B.a5p,60,B.a5q,61,B.a5r,62,B.a5s,63,B.a5t,64,B.a5u,91,B.a6j,92,B.a6k,93,B.a6l,94,B.a6m,95,B.a6n,96,B.a6o,97,B.kn,98,B.EU,99,B.nQ,100,B.A2,101,B.A3,102,B.A4,103,B.a4Z,104,B.a5_,105,B.a50,106,B.a51,107,B.a52,108,B.a53,109,B.a54,110,B.A5,111,B.a55,112,B.nx,113,B.a56,114,B.a57,115,B.A6,116,B.A7,117,B.a58,118,B.ny,119,B.A8,120,B.nz,121,B.a59,122,B.hz,123,B.a5a,124,B.a5b,125,B.a5c,126,B.a5d,4294967297,B.Aa,4294967304,B.ck,4294967305,B.kf,4294967309,B.kg,4294967323,B.hA,4294967423,B.bW,4294967553,B.Ab,4294967555,B.kh,4294967556,B.hB,4294967558,B.nB,4294967559,B.Ac,4294967560,B.Ad,4294967562,B.ki,4294967564,B.kj,4294967566,B.Ae,4294967567,B.Af,4294967568,B.Ag,4294967569,B.Ah,4294968065,B.cZ,4294968066,B.cF,4294968067,B.cG,4294968068,B.d_,4294968069,B.ek,4294968070,B.el,4294968071,B.hC,4294968072,B.hD,4294968321,B.nC,4294968322,B.Ai,4294968323,B.Aj,4294968324,B.Ak,4294968325,B.Al,4294968326,B.Am,4294968327,B.nD,4294968328,B.An,4294968329,B.Ao,4294968330,B.Ap,4294968577,B.Aq,4294968578,B.Ar,4294968579,B.As,4294968580,B.At,4294968581,B.Au,4294968582,B.Av,4294968583,B.Aw,4294968584,B.Ax,4294968585,B.Ay,4294968586,B.Az,4294968587,B.AA,4294968588,B.AB,4294968589,B.AC,4294968590,B.AD,4294968833,B.AE,4294968834,B.AF,4294968835,B.AG,4294968836,B.AH,4294968837,B.AI,4294968838,B.AJ,4294968839,B.AK,4294968840,B.AL,4294968841,B.AM,4294968842,B.AN,4294968843,B.AO,4294969089,B.AP,4294969090,B.AQ,4294969091,B.AR,4294969092,B.AS,4294969093,B.AT,4294969094,B.AU,4294969095,B.AV,4294969096,B.AW,4294969097,B.AX,4294969098,B.AY,4294969099,B.AZ,4294969100,B.B_,4294969101,B.B0,4294969102,B.B1,4294969103,B.B2,4294969104,B.B3,4294969105,B.B4,4294969106,B.B5,4294969107,B.B6,4294969108,B.B7,4294969109,B.B8,4294969110,B.B9,4294969111,B.Ba,4294969112,B.Bb,4294969113,B.Bc,4294969114,B.Bd,4294969115,B.Be,4294969116,B.Bf,4294969117,B.Bg,4294969345,B.Bh,4294969346,B.Bi,4294969347,B.Bj,4294969348,B.Bk,4294969349,B.Bl,4294969350,B.Bm,4294969351,B.Bn,4294969352,B.Bo,4294969353,B.Bp,4294969354,B.Bq,4294969355,B.Br,4294969356,B.Bs,4294969357,B.Bt,4294969358,B.Bu,4294969359,B.Bv,4294969360,B.Bw,4294969361,B.Bx,4294969362,B.By,4294969363,B.Bz,4294969364,B.BA,4294969365,B.BB,4294969366,B.BC,4294969367,B.BD,4294969368,B.BE,4294969601,B.BF,4294969602,B.BG,4294969603,B.BH,4294969604,B.BI,4294969605,B.BJ,4294969606,B.BK,4294969607,B.BL,4294969608,B.BM,4294969857,B.BN,4294969858,B.BO,4294969859,B.BP,4294969860,B.BQ,4294969861,B.BR,4294969863,B.BS,4294969864,B.BT,4294969865,B.BU,4294969866,B.BV,4294969867,B.BW,4294969868,B.BX,4294969869,B.BY,4294969870,B.BZ,4294969871,B.C_,4294969872,B.C0,4294969873,B.C1,4294970113,B.C2,4294970114,B.C3,4294970115,B.C4,4294970116,B.C5,4294970117,B.C6,4294970118,B.C7,4294970119,B.C8,4294970120,B.C9,4294970121,B.Ca,4294970122,B.Cb,4294970123,B.Cc,4294970124,B.Cd,4294970125,B.Ce,4294970126,B.Cf,4294970127,B.Cg,4294970369,B.Ch,4294970370,B.Ci,4294970371,B.Cj,4294970372,B.Ck,4294970373,B.Cl,4294970374,B.Cm,4294970375,B.Cn,4294970625,B.Co,4294970626,B.Cp,4294970627,B.Cq,4294970628,B.Cr,4294970629,B.Cs,4294970630,B.Ct,4294970631,B.Cu,4294970632,B.Cv,4294970633,B.Cw,4294970634,B.Cx,4294970635,B.Cy,4294970636,B.Cz,4294970637,B.CA,4294970638,B.CB,4294970639,B.CC,4294970640,B.CD,4294970641,B.CE,4294970642,B.CF,4294970643,B.CG,4294970644,B.CH,4294970645,B.CI,4294970646,B.CJ,4294970647,B.CK,4294970648,B.CL,4294970649,B.CM,4294970650,B.CN,4294970651,B.CO,4294970652,B.CP,4294970653,B.CQ,4294970654,B.CR,4294970655,B.CS,4294970656,B.CT,4294970657,B.CU,4294970658,B.CV,4294970659,B.CW,4294970660,B.CX,4294970661,B.CY,4294970662,B.CZ,4294970663,B.D_,4294970664,B.D0,4294970665,B.D1,4294970666,B.D2,4294970667,B.D3,4294970668,B.D4,4294970669,B.D5,4294970670,B.D6,4294970671,B.D7,4294970672,B.D8,4294970673,B.D9,4294970674,B.Da,4294970675,B.Db,4294970676,B.Dc,4294970677,B.Dd,4294970678,B.De,4294970679,B.Df,4294970680,B.Dg,4294970681,B.Dh,4294970682,B.Di,4294970683,B.Dj,4294970684,B.Dk,4294970685,B.Dl,4294970686,B.Dm,4294970687,B.Dn,4294970688,B.Do,4294970689,B.Dp,4294970690,B.Dq,4294970691,B.Dr,4294970692,B.Ds,4294970693,B.Dt,4294970694,B.Du,4294970695,B.Dv,4294970696,B.Dw,4294970697,B.Dx,4294970698,B.Dy,4294970699,B.Dz,4294970700,B.DA,4294970701,B.DB,4294970702,B.DC,4294970703,B.DD,4294970704,B.DE,4294970705,B.DF,4294970706,B.DG,4294970707,B.DH,4294970708,B.DI,4294970709,B.DJ,4294970710,B.DK,4294970711,B.DL,4294970712,B.DM,4294970713,B.DN,4294970714,B.DO,4294970715,B.DP,4294970882,B.DQ,4294970884,B.DR,4294970885,B.DS,4294970886,B.DT,4294970887,B.DU,4294970888,B.DV,4294970889,B.DW,4294971137,B.DX,4294971138,B.DY,4294971393,B.DZ,4294971394,B.E_,4294971395,B.E0,4294971396,B.E1,4294971397,B.E2,4294971398,B.E3,4294971399,B.E4,4294971400,B.E5,4294971401,B.E6,4294971402,B.E7,4294971403,B.E8,4294971649,B.E9,4294971650,B.Ea,4294971651,B.Eb,4294971652,B.Ec,4294971653,B.Ed,4294971654,B.Ee,4294971655,B.Ef,4294971656,B.Eg,4294971657,B.Eh,4294971658,B.Ei,4294971659,B.Ej,4294971660,B.Ek,4294971661,B.El,4294971662,B.Em,4294971663,B.En,4294971664,B.Eo,4294971665,B.Ep,4294971666,B.Eq,4294971667,B.Er,4294971668,B.Es,4294971669,B.Et,4294971670,B.Eu,4294971671,B.Ev,4294971672,B.Ew,4294971673,B.Ex,4294971674,B.Ey,4294971675,B.Ez,4294971905,B.EA,4294971906,B.EB,8589934592,B.a5v,8589934593,B.a5w,8589934594,B.a5x,8589934595,B.a5y,8589934608,B.a5z,8589934609,B.a5A,8589934610,B.a5B,8589934611,B.a5C,8589934612,B.a5D,8589934624,B.a5E,8589934625,B.a5F,8589934626,B.a5G,8589934848,B.hE,8589934849,B.kk,8589934850,B.cl,8589934851,B.cH,8589934852,B.hF,8589934853,B.kl,8589934854,B.hG,8589934855,B.km,8589935088,B.a5H,8589935090,B.a5I,8589935092,B.a5J,8589935094,B.a5K,8589935117,B.nE,8589935144,B.a5L,8589935145,B.a5M,8589935146,B.EQ,8589935147,B.ER,8589935148,B.a5N,8589935149,B.ES,8589935150,B.nF,8589935151,B.ET,8589935152,B.nG,8589935153,B.nH,8589935154,B.nI,8589935155,B.nJ,8589935156,B.nK,8589935157,B.nL,8589935158,B.nM,8589935159,B.nN,8589935160,B.nO,8589935161,B.nP,8589935165,B.a5O,8589935361,B.a5P,8589935362,B.a5Q,8589935363,B.a5R,8589935364,B.a5S,8589935365,B.a5T,8589935366,B.a5U,8589935367,B.a5V,8589935368,B.a5W,8589935369,B.a5X,8589935370,B.a5Y,8589935371,B.a5Z,8589935372,B.a6_,8589935373,B.a60,8589935374,B.a61,8589935375,B.a62,8589935376,B.a63,8589935377,B.a64,8589935378,B.a65,8589935379,B.a66,8589935380,B.a67,8589935381,B.a68,8589935382,B.a69,8589935383,B.a6a,8589935384,B.a6b,8589935385,B.a6c,8589935386,B.a6d,8589935387,B.a6e,8589935388,B.a6f,8589935389,B.a6g,8589935390,B.a6h,8589935391,B.a6i],A.ah("dm")) +B.cJ=new A.u6(0,"canvas") +B.em=new A.u6(1,"card") +B.Fb=new A.u6(2,"circle") +B.nU=new A.u6(3,"button") +B.fo=new A.u6(4,"transparency") +B.a6W=new A.dm([B.cJ,null,B.em,B.iD,B.Fb,null,B.nU,B.iD,B.fo,null],A.ah("dm")) +B.F0=new A.a2(B.cn,[],A.ah("a2")) +B.a7_=new A.a2(B.cn,[],A.ah("a2")) +B.kq=new A.a2(B.cn,[],A.ah("a2")) +B.F_=new A.a2(B.cn,[],A.ah("a2>")) +B.F1=new A.a2(B.cn,[],A.ah("a2")) +B.a6Y=new A.a2(B.cn,[],A.ah("a2")) +B.EZ=new A.a2(B.cn,[],A.ah("a2")) +B.a6Z=new A.a2(B.cn,[],A.ah("a2")) +B.F2=new A.a2(B.cn,[],A.ah("a2>")) +B.aoP=new A.GL(2,"up") +B.anr=new A.nA(B.aoP) +B.aoQ=new A.GL(3,"down") +B.ans=new A.nA(B.aoQ) +B.a70=new A.dm([B.eC,B.anr,B.eD,B.ans,B.eA,B.L5,B.eB,B.L4],t.Fp) +B.oJ=new A.bj(B.cZ,!1,!1,!0,!1) +B.oG=new A.bj(B.cF,!1,!1,!0,!1) +B.oH=new A.bj(B.cG,!1,!1,!0,!1) +B.oI=new A.bj(B.d_,!1,!1,!0,!1) +B.K5=new A.bj(B.cZ,!1,!1,!1,!0) +B.K2=new A.bj(B.cF,!1,!1,!1,!0) +B.K3=new A.bj(B.cG,!1,!1,!1,!0) +B.K4=new A.bj(B.d_,!1,!1,!1,!0) +B.oE=new A.bj(B.hD,!1,!0,!1,!1) +B.oK=new A.bj(B.hC,!1,!0,!1,!1) +B.l3=new A.bj(B.ek,!1,!0,!1,!1) +B.l2=new A.bj(B.el,!1,!0,!1,!1) +B.JZ=new A.bj(B.cF,!0,!1,!1,!1) +B.K_=new A.bj(B.cG,!0,!1,!1,!1) +B.K0=new A.bj(B.cF,!0,!0,!1,!1) +B.K1=new A.bj(B.cG,!0,!0,!1,!1) +B.l1=new A.bj(B.ek,!1,!1,!1,!1) +B.l0=new A.bj(B.el,!1,!1,!1,!1) +B.K7=new A.bj(B.ek,!0,!1,!1,!1) +B.K6=new A.bj(B.el,!0,!1,!1,!1) +B.a71=new A.dm([B.oJ,B.V,B.oG,B.V,B.oH,B.V,B.oI,B.V,B.K5,B.V,B.K2,B.V,B.K3,B.V,B.K4,B.V,B.oE,B.V,B.oK,B.V,B.l3,B.V,B.l2,B.V,B.eD,B.V,B.eA,B.V,B.eB,B.V,B.eC,B.V,B.JZ,B.V,B.K_,B.V,B.K0,B.V,B.K1,B.V,B.i6,B.V,B.i7,B.V,B.l1,B.V,B.l0,B.V,B.K7,B.V,B.K6,B.V,B.i8,B.V,B.l_,B.V],t.Fp) +B.p={d:0,E:1,EEEE:2,LLL:3,LLLL:4,M:5,Md:6,MEd:7,MMM:8,MMMd:9,MMMEd:10,MMMM:11,MMMMd:12,MMMMEEEEd:13,QQQ:14,QQQQ:15,y:16,yM:17,yMd:18,yMEd:19,yMMM:20,yMMMd:21,yMMMEd:22,yMMMM:23,yMMMMd:24,yMMMMEEEEd:25,yQQQ:26,yQQQQ:27,H:28,Hm:29,Hms:30,j:31,jm:32,jms:33,jmv:34,jmz:35,jz:36,m:37,ms:38,s:39,v:40,z:41,zzzz:42,ZZZZ:43} +B.a7Z=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","M/d","EEE, M/d","LLL","MMM d","EEE, MMM d","LLLL","MMMM d","EEEE, MMMM d","QQQ","QQQQ","y","M/y","M/d/y","EEE, M/d/y","MMM y","MMM d, y","EEE, MMM d, y","MMMM y","MMMM d, y","EEEE, MMMM d, y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","h\u202fa","h:mm\u202fa","h:mm:ss\u202fa","h:mm\u202fa v","h:mm\u202fa z","h\u202fa z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.aa7={in:0,iw:1,ji:2,jw:3,mo:4,aam:5,adp:6,aue:7,ayx:8,bgm:9,bjd:10,ccq:11,cjr:12,cka:13,cmk:14,coy:15,cqu:16,drh:17,drw:18,gav:19,gfx:20,ggn:21,gti:22,guv:23,hrr:24,ibi:25,ilw:26,jeg:27,kgc:28,kgh:29,koj:30,krm:31,ktr:32,kvs:33,kwq:34,kxe:35,kzj:36,kzt:37,lii:38,lmm:39,meg:40,mst:41,mwj:42,myt:43,nad:44,ncp:45,nnx:46,nts:47,oun:48,pcr:49,pmc:50,pmu:51,ppa:52,ppr:53,pry:54,puz:55,sca:56,skk:57,tdu:58,thc:59,thx:60,tie:61,tkk:62,tlw:63,tmp:64,tne:65,tnf:66,tsf:67,uok:68,xba:69,xia:70,xkh:71,xsj:72,ybd:73,yma:74,ymt:75,yos:76,yuu:77} +B.cI=new A.a2(B.aa7,["id","he","yi","jv","ro","aas","dz","ktz","nun","bcg","drl","rki","mom","cmr","xch","pij","quh","khk","prs","dev","vaj","gvr","nyc","duz","jal","opa","gal","oyb","tdf","kml","kwv","bmf","dtp","gdj","yam","tvd","dtp","dtp","raq","rmx","cir","mry","vaj","mry","xny","kdz","ngv","pij","vaj","adx","huw","phr","bfy","lcq","prt","pub","hle","oyb","dtp","tpo","oyb","ras","twm","weo","tyj","kak","prs","taj","ema","cax","acn","waw","suj","rki","lrr","mtm","zom","yug"],t.w) +B.aa1={Abort:0,Again:1,AltLeft:2,AltRight:3,ArrowDown:4,ArrowLeft:5,ArrowRight:6,ArrowUp:7,AudioVolumeDown:8,AudioVolumeMute:9,AudioVolumeUp:10,Backquote:11,Backslash:12,Backspace:13,BracketLeft:14,BracketRight:15,BrightnessDown:16,BrightnessUp:17,BrowserBack:18,BrowserFavorites:19,BrowserForward:20,BrowserHome:21,BrowserRefresh:22,BrowserSearch:23,BrowserStop:24,CapsLock:25,Comma:26,ContextMenu:27,ControlLeft:28,ControlRight:29,Convert:30,Copy:31,Cut:32,Delete:33,Digit0:34,Digit1:35,Digit2:36,Digit3:37,Digit4:38,Digit5:39,Digit6:40,Digit7:41,Digit8:42,Digit9:43,DisplayToggleIntExt:44,Eject:45,End:46,Enter:47,Equal:48,Escape:49,Esc:50,F1:51,F10:52,F11:53,F12:54,F13:55,F14:56,F15:57,F16:58,F17:59,F18:60,F19:61,F2:62,F20:63,F21:64,F22:65,F23:66,F24:67,F3:68,F4:69,F5:70,F6:71,F7:72,F8:73,F9:74,Find:75,Fn:76,FnLock:77,GameButton1:78,GameButton10:79,GameButton11:80,GameButton12:81,GameButton13:82,GameButton14:83,GameButton15:84,GameButton16:85,GameButton2:86,GameButton3:87,GameButton4:88,GameButton5:89,GameButton6:90,GameButton7:91,GameButton8:92,GameButton9:93,GameButtonA:94,GameButtonB:95,GameButtonC:96,GameButtonLeft1:97,GameButtonLeft2:98,GameButtonMode:99,GameButtonRight1:100,GameButtonRight2:101,GameButtonSelect:102,GameButtonStart:103,GameButtonThumbLeft:104,GameButtonThumbRight:105,GameButtonX:106,GameButtonY:107,GameButtonZ:108,Help:109,Home:110,Hyper:111,Insert:112,IntlBackslash:113,IntlRo:114,IntlYen:115,KanaMode:116,KeyA:117,KeyB:118,KeyC:119,KeyD:120,KeyE:121,KeyF:122,KeyG:123,KeyH:124,KeyI:125,KeyJ:126,KeyK:127,KeyL:128,KeyM:129,KeyN:130,KeyO:131,KeyP:132,KeyQ:133,KeyR:134,KeyS:135,KeyT:136,KeyU:137,KeyV:138,KeyW:139,KeyX:140,KeyY:141,KeyZ:142,KeyboardLayoutSelect:143,Lang1:144,Lang2:145,Lang3:146,Lang4:147,Lang5:148,LaunchApp1:149,LaunchApp2:150,LaunchAssistant:151,LaunchControlPanel:152,LaunchMail:153,LaunchScreenSaver:154,MailForward:155,MailReply:156,MailSend:157,MediaFastForward:158,MediaPause:159,MediaPlay:160,MediaPlayPause:161,MediaRecord:162,MediaRewind:163,MediaSelect:164,MediaStop:165,MediaTrackNext:166,MediaTrackPrevious:167,MetaLeft:168,MetaRight:169,MicrophoneMuteToggle:170,Minus:171,NonConvert:172,NumLock:173,Numpad0:174,Numpad1:175,Numpad2:176,Numpad3:177,Numpad4:178,Numpad5:179,Numpad6:180,Numpad7:181,Numpad8:182,Numpad9:183,NumpadAdd:184,NumpadBackspace:185,NumpadClear:186,NumpadClearEntry:187,NumpadComma:188,NumpadDecimal:189,NumpadDivide:190,NumpadEnter:191,NumpadEqual:192,NumpadMemoryAdd:193,NumpadMemoryClear:194,NumpadMemoryRecall:195,NumpadMemoryStore:196,NumpadMemorySubtract:197,NumpadMultiply:198,NumpadParenLeft:199,NumpadParenRight:200,NumpadSubtract:201,Open:202,PageDown:203,PageUp:204,Paste:205,Pause:206,Period:207,Power:208,PrintScreen:209,PrivacyScreenToggle:210,Props:211,Quote:212,Resume:213,ScrollLock:214,Select:215,SelectTask:216,Semicolon:217,ShiftLeft:218,ShiftRight:219,ShowAllWindows:220,Slash:221,Sleep:222,Space:223,Super:224,Suspend:225,Tab:226,Turbo:227,Undo:228,WakeUp:229,ZoomToggle:230} +B.F6=new A.a2(B.aa1,[B.If,B.HW,B.fv,B.fx,B.Hl,B.Hk,B.Hj,B.Hm,B.I3,B.I1,B.I2,B.GW,B.GT,B.GM,B.GR,B.GS,B.Iv,B.Iu,B.IQ,B.IU,B.IR,B.IP,B.IT,B.IO,B.IS,B.eo,B.GX,B.HE,B.ft,B.hR,B.I8,B.HZ,B.HY,B.Hg,B.GK,B.GB,B.GC,B.GD,B.GE,B.GF,B.GG,B.GH,B.GI,B.GJ,B.It,B.IE,B.Hh,B.GL,B.GQ,B.o5,B.o5,B.H_,B.H8,B.H9,B.Ha,B.HH,B.HI,B.HJ,B.HK,B.HL,B.HM,B.HN,B.H0,B.HO,B.HP,B.HQ,B.HR,B.HS,B.H1,B.H2,B.H3,B.H4,B.H5,B.H6,B.H7,B.I0,B.hQ,B.FB,B.FH,B.FQ,B.FR,B.FS,B.FT,B.FU,B.FV,B.FW,B.FI,B.FJ,B.FK,B.FL,B.FM,B.FN,B.FO,B.FP,B.FX,B.FY,B.FZ,B.G_,B.G0,B.G1,B.G2,B.G3,B.G4,B.G5,B.G6,B.G7,B.G8,B.G9,B.Ga,B.HU,B.He,B.Fz,B.Hd,B.HD,B.I5,B.I7,B.I6,B.Gb,B.Gc,B.Gd,B.Ge,B.Gf,B.Gg,B.Gh,B.Gi,B.Gj,B.Gk,B.Gl,B.Gm,B.Gn,B.Go,B.Gp,B.Gq,B.Gr,B.Gs,B.Gt,B.Gu,B.Gv,B.Gw,B.Gx,B.Gy,B.Gz,B.GA,B.IZ,B.Ia,B.Ib,B.Ic,B.Id,B.Ie,B.IJ,B.II,B.IN,B.IK,B.IH,B.IM,B.IX,B.IW,B.IY,B.Iz,B.Ix,B.Iw,B.IF,B.Iy,B.IA,B.IG,B.ID,B.IB,B.IC,B.fw,B.hT,B.FG,B.GP,B.I9,B.kD,B.HB,B.Hs,B.Ht,B.Hu,B.Hv,B.Hw,B.Hx,B.Hy,B.Hz,B.HA,B.Hq,B.Ij,B.Ip,B.Iq,B.I4,B.HC,B.Hn,B.Hr,B.HG,B.In,B.Im,B.Il,B.Ik,B.Io,B.Ho,B.Ih,B.Ii,B.Hp,B.HT,B.Hi,B.Hf,B.I_,B.Hc,B.GY,B.HF,B.Hb,B.FF,B.Ig,B.GV,B.FD,B.kC,B.HV,B.IL,B.GU,B.fu,B.hS,B.J_,B.GZ,B.Ir,B.GO,B.FA,B.FC,B.GN,B.FE,B.HX,B.Is,B.IV],A.ah("a2")) +B.MM=new A.c8(-2,B.a2,B.cR,B.dO,1) +B.MF=new A.c8(0,B.a2,B.cQ,B.kx,2) +B.MG=new A.c8(0,B.a2,B.c5,B.co,5) +B.a2k=A.a(s([B.MM,B.MF,B.MG]),t.G) +B.MN=new A.c8(-2,B.a2,B.cR,B.dO,3) +B.MH=new A.c8(0,B.a2,B.cQ,B.dO,4) +B.MI=new A.c8(0,B.a2,B.c5,B.co,8) +B.a2l=A.a(s([B.MN,B.MH,B.MI]),t.G) +B.Mi=new A.c8(-1,B.a2,B.cR,B.kx,4) +B.MJ=new A.c8(0,B.a2,B.cQ,B.Fl,5) +B.MK=new A.c8(0,B.a2,B.c5,B.co,10) +B.a3g=A.a(s([B.Mi,B.MJ,B.MK]),t.G) +B.Mj=new A.c8(-1,B.a2,B.cR,B.dO,5) +B.Fm=new A.l(0,6) +B.Mr=new A.c8(0,B.a2,B.cQ,B.Fm,10) +B.Ms=new A.c8(0,B.a2,B.c5,B.co,18) +B.a3h=A.a(s([B.Mj,B.Mr,B.Ms]),t.G) +B.o_=new A.l(0,5) +B.Mk=new A.c8(-3,B.a2,B.cR,B.o_,5) +B.o0=new A.l(0,8) +B.Mt=new A.c8(1,B.a2,B.cQ,B.o0,10) +B.Mu=new A.c8(2,B.a2,B.c5,B.dO,14) +B.a_2=A.a(s([B.Mk,B.Mt,B.Mu]),t.G) +B.Ml=new A.c8(-3,B.a2,B.cR,B.o_,6) +B.Fn=new A.l(0,9) +B.Mv=new A.c8(1,B.a2,B.cQ,B.Fn,12) +B.Mw=new A.c8(2,B.a2,B.c5,B.dO,16) +B.a_3=A.a(s([B.Ml,B.Mv,B.Mw]),t.G) +B.aaj=new A.l(0,7) +B.Mf=new A.c8(-4,B.a2,B.cR,B.aaj,8) +B.aae=new A.l(0,12) +B.Mx=new A.c8(2,B.a2,B.cQ,B.aae,17) +B.My=new A.c8(4,B.a2,B.c5,B.o_,22) +B.a0Y=A.a(s([B.Mf,B.Mx,B.My]),t.G) +B.Mg=new A.c8(-5,B.a2,B.cR,B.o0,10) +B.aaf=new A.l(0,16) +B.Mz=new A.c8(2,B.a2,B.cQ,B.aaf,24) +B.MA=new A.c8(5,B.a2,B.c5,B.Fm,30) +B.a2A=A.a(s([B.Mg,B.Mz,B.MA]),t.G) +B.aad=new A.l(0,11) +B.ML=new A.c8(-7,B.a2,B.cR,B.aad,15) +B.aah=new A.l(0,24) +B.MC=new A.c8(3,B.a2,B.cQ,B.aah,38) +B.MD=new A.c8(8,B.a2,B.c5,B.Fn,46) +B.a1g=A.a(s([B.ML,B.MC,B.MD]),t.G) +B.a9q=new A.dm([0,B.xQ,1,B.yN,2,B.a2k,3,B.a2l,4,B.a3g,6,B.a3h,8,B.a_2,9,B.a_3,12,B.a0Y,16,B.a2A,24,B.a1g],A.ah("dm>")) +B.aa2={KeyA:0,KeyB:1,KeyC:2,KeyD:3,KeyE:4,KeyF:5,KeyG:6,KeyH:7,KeyI:8,KeyJ:9,KeyK:10,KeyL:11,KeyM:12,KeyN:13,KeyO:14,KeyP:15,KeyQ:16,KeyR:17,KeyS:18,KeyT:19,KeyU:20,KeyV:21,KeyW:22,KeyX:23,KeyY:24,KeyZ:25,Digit1:26,Digit2:27,Digit3:28,Digit4:29,Digit5:30,Digit6:31,Digit7:32,Digit8:33,Digit9:34,Digit0:35,Minus:36,Equal:37,BracketLeft:38,BracketRight:39,Backslash:40,Semicolon:41,Quote:42,Backquote:43,Comma:44,Period:45,Slash:46} +B.nT=new A.a2(B.aa2,["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","1","2","3","4","5","6","7","8","9","0","-","=","[","]","\\",";","'","`",",",".","/"],t.w) +B.X4=A.a(s([42,null,null,8589935146]),t.Z) +B.X5=A.a(s([43,null,null,8589935147]),t.Z) +B.X9=A.a(s([45,null,null,8589935149]),t.Z) +B.Xa=A.a(s([46,null,null,8589935150]),t.Z) +B.Xe=A.a(s([47,null,null,8589935151]),t.Z) +B.Xf=A.a(s([48,null,null,8589935152]),t.Z) +B.Xg=A.a(s([49,null,null,8589935153]),t.Z) +B.Xw=A.a(s([50,null,null,8589935154]),t.Z) +B.Xx=A.a(s([51,null,null,8589935155]),t.Z) +B.Xy=A.a(s([52,null,null,8589935156]),t.Z) +B.Xz=A.a(s([53,null,null,8589935157]),t.Z) +B.XA=A.a(s([54,null,null,8589935158]),t.Z) +B.XB=A.a(s([55,null,null,8589935159]),t.Z) +B.XD=A.a(s([56,null,null,8589935160]),t.Z) +B.XE=A.a(s([57,null,null,8589935161]),t.Z) +B.Z6=A.a(s([8589934852,8589934852,8589934853,null]),t.Z) +B.WT=A.a(s([4294967555,null,4294967555,null]),t.Z) +B.WU=A.a(s([4294968065,null,null,8589935154]),t.Z) +B.WV=A.a(s([4294968066,null,null,8589935156]),t.Z) +B.WW=A.a(s([4294968067,null,null,8589935158]),t.Z) +B.WX=A.a(s([4294968068,null,null,8589935160]),t.Z) +B.X1=A.a(s([4294968321,null,null,8589935157]),t.Z) +B.Z7=A.a(s([8589934848,8589934848,8589934849,null]),t.Z) +B.WS=A.a(s([4294967423,null,null,8589935150]),t.Z) +B.WY=A.a(s([4294968069,null,null,8589935153]),t.Z) +B.WR=A.a(s([4294967309,null,null,8589935117]),t.Z) +B.WZ=A.a(s([4294968070,null,null,8589935159]),t.Z) +B.X2=A.a(s([4294968327,null,null,8589935152]),t.Z) +B.Z8=A.a(s([8589934854,8589934854,8589934855,null]),t.Z) +B.X_=A.a(s([4294968071,null,null,8589935155]),t.Z) +B.X0=A.a(s([4294968072,null,null,8589935161]),t.Z) +B.Z9=A.a(s([8589934850,8589934850,8589934851,null]),t.Z) +B.F8=new A.dm(["*",B.X4,"+",B.X5,"-",B.X9,".",B.Xa,"/",B.Xe,"0",B.Xf,"1",B.Xg,"2",B.Xw,"3",B.Xx,"4",B.Xy,"5",B.Xz,"6",B.XA,"7",B.XB,"8",B.XD,"9",B.XE,"Alt",B.Z6,"AltGraph",B.WT,"ArrowDown",B.WU,"ArrowLeft",B.WV,"ArrowRight",B.WW,"ArrowUp",B.WX,"Clear",B.X1,"Control",B.Z7,"Delete",B.WS,"End",B.WY,"Enter",B.WR,"Home",B.WZ,"Insert",B.X2,"Meta",B.Z8,"PageDown",B.X_,"PageUp",B.X0,"Shift",B.Z9],A.ah("dm>")) +B.a2W=A.a(s([B.A9,null,null,B.EQ]),t.L) +B.a2X=A.a(s([B.EC,null,null,B.ER]),t.L) +B.a2Y=A.a(s([B.ED,null,null,B.ES]),t.L) +B.a2Z=A.a(s([B.EE,null,null,B.nF]),t.L) +B.a3_=A.a(s([B.EF,null,null,B.ET]),t.L) +B.a_4=A.a(s([B.EG,null,null,B.nG]),t.L) +B.a_5=A.a(s([B.EH,null,null,B.nH]),t.L) +B.a_6=A.a(s([B.EI,null,null,B.nI]),t.L) +B.a_7=A.a(s([B.EJ,null,null,B.nJ]),t.L) +B.a_8=A.a(s([B.EK,null,null,B.nK]),t.L) +B.a_9=A.a(s([B.EL,null,null,B.nL]),t.L) +B.a_a=A.a(s([B.EM,null,null,B.nM]),t.L) +B.a_b=A.a(s([B.EN,null,null,B.nN]),t.L) +B.a4y=A.a(s([B.EO,null,null,B.nO]),t.L) +B.a4z=A.a(s([B.EP,null,null,B.nP]),t.L) +B.a2q=A.a(s([B.hF,B.hF,B.kl,null]),t.L) +B.a4F=A.a(s([B.kh,null,B.kh,null]),t.L) +B.a0l=A.a(s([B.cZ,null,null,B.nI]),t.L) +B.a0m=A.a(s([B.cF,null,null,B.nK]),t.L) +B.a0n=A.a(s([B.cG,null,null,B.nM]),t.L) +B.a1B=A.a(s([B.d_,null,null,B.nO]),t.L) +B.a26=A.a(s([B.nC,null,null,B.nL]),t.L) +B.a2r=A.a(s([B.hE,B.hE,B.kk,null]),t.L) +B.Zr=A.a(s([B.bW,null,null,B.nF]),t.L) +B.a0o=A.a(s([B.ek,null,null,B.nH]),t.L) +B.a38=A.a(s([B.kg,null,null,B.nE]),t.L) +B.a0p=A.a(s([B.el,null,null,B.nN]),t.L) +B.a27=A.a(s([B.nD,null,null,B.nG]),t.L) +B.a2s=A.a(s([B.hG,B.hG,B.km,null]),t.L) +B.a0q=A.a(s([B.hC,null,null,B.nJ]),t.L) +B.a2d=A.a(s([B.hD,null,null,B.nP]),t.L) +B.a2t=A.a(s([B.cl,B.cl,B.cH,null]),t.L) +B.a9r=new A.dm(["*",B.a2W,"+",B.a2X,"-",B.a2Y,".",B.a2Z,"/",B.a3_,"0",B.a_4,"1",B.a_5,"2",B.a_6,"3",B.a_7,"4",B.a_8,"5",B.a_9,"6",B.a_a,"7",B.a_b,"8",B.a4y,"9",B.a4z,"Alt",B.a2q,"AltGraph",B.a4F,"ArrowDown",B.a0l,"ArrowLeft",B.a0m,"ArrowRight",B.a0n,"ArrowUp",B.a1B,"Clear",B.a26,"Control",B.a2r,"Delete",B.Zr,"End",B.a0o,"Enter",B.a38,"Home",B.a0p,"Insert",B.a27,"Meta",B.a2s,"PageDown",B.a0q,"PageUp",B.a2d,"Shift",B.a2t],A.ah("dm>")) +B.aa6={af:0,am:1,ar:2,as:3,az:4,be:5,bg:6,bn:7,bs:8,ca:9,cs:10,cy:11,da:12,de:13,de_CH:14,el:15,en:16,en_AU:17,en_CA:18,en_GB:19,en_IE:20,en_IN:21,en_NZ:22,en_SG:23,en_US:24,en_ZA:25,es:26,es_419:27,es_MX:28,es_US:29,et:30,eu:31,fa:32,fi:33,fil:34,fr:35,fr_CA:36,gl:37,gsw:38,gu:39,he:40,hi:41,hr:42,hu:43,hy:44,id:45,is:46,it:47,ja:48,ka:49,kk:50,km:51,kn:52,ko:53,ky:54,lo:55,lt:56,lv:57,mk:58,ml:59,mn:60,mr:61,ms:62,my:63,nb:64,ne:65,nl:66,no:67,or:68,pa:69,pl:70,ps:71,pt:72,pt_PT:73,ro:74,ru:75,si:76,sk:77,sl:78,sq:79,sr:80,sr_Latn:81,sv:82,sw:83,ta:84,te:85,th:86,tl:87,tr:88,uk:89,ur:90,uz:91,vi:92,zh:93,zh_HK:94,zh_TW:95,zu:96} +B.a77=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","dd-MM","EEE d/M","LLL","d MMM","EEE d MMM","LLLL","d MMMM","EEEE d MMMM","QQQ","QQQQ","y","MM-y","y-MM-dd","EEE y-MM-dd","MMM y","d MMM y","EEE d MMM y","MMMM y","d MMMM y","EEEE d MMMM y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a85=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","M/d","EEE\u1363 M/d","LLL","MMM d","EEE\u1363 MMM d","LLLL","MMMM d","EEEE\u1363 MMMM d","QQQ","QQQQ","y","M/y","d/M/y","EEE\u1363 d/M/y","MMM y","d MMM y","EEE\u1363 MMM d y","MMMM y","d MMMM y","y MMMM d, EEEE","QQQ y","QQQQ y","H","HH:mm","HH:mm:ss","h a","h:mm a","h:mm:ss a","h:mm a v","h:mm a z","h a z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a7C=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","d/\u200fM","EEE\u060c d/\u200fM","LLL","d MMM","EEE\u060c d MMM","LLLL","d MMMM","EEEE\u060c d MMMM","QQQ","QQQQ","y","M\u200f/y","d\u200f/M\u200f/y","EEE\u060c d/\u200fM/\u200fy","MMM y","d MMM y","EEE\u060c d MMM y","MMMM y","d MMMM y","EEEE\u060c d MMMM y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","h a","h:mm a","h:mm:ss a","h:mm a v","h:mm a z","h a z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a8n=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","dd-MM","EEE, dd-MM","LLL","d MMM","EEE, d MMM","LLLL","d MMMM","EEEE, d MMMM","QQQ","QQQQ","y","MM-y","dd-MM-y","EEE, dd-MM-y","MMM y","d MMM y","EEE, d MMM y","MMMM y","d MMMM, y","EEEE, d MMMM, y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","a h","a h:mm","a h:mm:ss","a h:mm v","a h:mm z","a h z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a8o=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","dd.MM","dd.MM, EEE","LLL","d MMM","d MMM, EEE","LLLL","d MMMM","d MMMM, EEEE","QQQ","QQQQ","y","MM.y","dd.MM.y","dd.MM.y, EEE","MMM y","d MMM y","d MMM y, EEE","MMMM y","d MMMM y","d MMMM y, EEEE","y QQQ","y QQQQ","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a8f=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","d.M","EEE, d.M","LLL","d MMM","EEE, d MMM","LLLL","d MMMM","EEEE, d MMMM","QQQ","QQQQ","y","M.y","d.M.y","EEE, d.M.y","LLL y","d MMM y","EEE, d MMM y","LLLL y","d MMMM y '\u0433'.","EEEE, d MMMM y '\u0433'.","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm.ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a83=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","d.MM","EEE, d.MM","MM","d.MM","EEE, d.MM","LLLL","d MMMM","EEEE, d MMMM","QQQ","QQQQ","y '\u0433'.","MM.y '\u0433'.","d.MM.y '\u0433'.","EEE, d.MM.y '\u0433'.","MM.y '\u0433'.","d.MM.y '\u0433'.","EEE, d.MM.y '\u0433'.","MMMM y '\u0433'.","d MMMM y '\u0433'.","EEEE, d MMMM y '\u0433'.","QQQ y '\u0433'.","QQQQ y '\u0433'.","HH '\u0447'.","HH:mm '\u0447'.","HH:mm:ss '\u0447'.","HH '\u0447'.","HH:mm '\u0447'.","HH:mm:ss '\u0447'.","HH:mm '\u0447'. v","HH:mm '\u0447'. z","HH '\u0447'. z","m","m:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a7u=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","d/M","EEE, d-M","LLL","d MMM","EEE d MMM","LLLL","d MMMM","EEEE d MMMM","QQQ","QQQQ","y","M/y","d/M/y","EEE, d/M/y","MMM y","d MMM, y","EEE, d MMM, y","MMMM y","d MMMM, y","EEEE, d MMMM, y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","h a","h:mm a","h:mm:ss a","h:mm a v","h:mm a z","h a z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a7c=new A.a2(B.p,["d.","ccc","cccc","LLL","LLLL","L","d.M.","EEE, d.M.","LLL","d. MMM","EEE, d. MMM","LLLL","d. MMMM","EEEE, d. MMMM","QQQ","QQQQ","y.","MM/y","d.M.y.","EEE, d.M.y.","MMM y.","d. MMM y.","EEE, d. MMM y.","LLLL y.","d. MMMM y.","EEEE, d. MMMM y.","QQQ y.","QQQQ y.","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm (v)","HH:mm (z)","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a7k=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","d/M","EEE d/M","LLL","d MMM","EEE, d MMM","LLLL","d MMMM","EEEE, d MMMM","QQQ","QQQQ","y","M/y","d/M/y","EEE, d/M/y","LLL 'de' y","d MMM 'de' y","EEE, d MMM y","LLLL 'de' y","d MMMM 'de' y","EEEE, d MMMM 'de' y","QQQ y","QQQQ y","H","H:mm","H:mm:ss","H","H:mm","H:mm:ss","H:mm v","H:mm z","H z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a7K=new A.a2(B.p,["d.","ccc","cccc","LLL","LLLL","L","d. M.","EEE d. M.","LLL","d. M.","EEE d. M.","LLLL","d. MMMM","EEEE d. MMMM","QQQ","QQQQ","y","M/y","d. M. y","EEE d. M. y","LLLL y","d. M. y","EEE d. M. y","LLLL y","d. MMMM y","EEEE d. MMMM y","QQQ y","QQQQ y","H","H:mm","H:mm:ss","H","H:mm","H:mm:ss","H:mm v","H:mm z","H z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a7r=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","d/M","EEE, d/M","LLL","d MMM","EEE, d MMM","LLLL","MMMM d","EEEE, d MMMM","QQQ","QQQQ","y","M/y","d/M/y","EEE, d/M/y","MMM y","d MMM y","EEE, d MMM y","MMMM y","d MMMM y","EEEE, d MMMM y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a7Y=new A.a2(B.p,["d.","ccc","cccc","MMM","MMMM","M","d.M","EEE d.M","MMM","d. MMM","EEE d. MMM","MMMM","d. MMMM","EEEE d. MMMM","QQQ","QQQQ","y","M.y","d.M.y","EEE d.M.y","MMM y","d. MMM y","EEE d. MMM y","MMMM y","d. MMMM y","EEEE 'den' d. MMMM y","QQQ y","QQQQ y","HH","HH.mm","HH.mm.ss","HH","HH.mm","HH.mm.ss","HH.mm v","HH.mm z","HH z","m","mm.ss","s","v","z","zzzz","ZZZZ"],t.w) +B.F4=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","d.M.","EEE, d.M.","LLL","d. MMM","EEE, d. MMM","LLLL","d. MMMM","EEEE, d. MMMM","QQQ","QQQQ","y","M.y","d.M.y","EEE, d.M.y","MMM y","d. MMM y","EEE, d. MMM y","MMMM y","d. MMMM y","EEEE, d. MMMM y","QQQ y","QQQQ y","HH 'Uhr'","HH:mm","HH:mm:ss","HH 'Uhr'","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH 'Uhr' z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a88=new A.a2(B.p,["d","ccc","cccc","MMM","MMMM","L","d/M","EEE d/M","MMM","d MMM","EEE d MMM","MMMM","d MMMM","EEEE d MMMM","QQQ","QQQQ","y","M/y","d/M/y","EEE d/M/y","MMM y","d MMM y","EEE d MMM y","LLLL y","d MMMM y","EEEE d MMMM y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","h a","h:mm a","h:mm:ss a","h:mm a v","h:mm a z","h a z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.hH=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","M/d","EEE, M/d","LLL","MMM d","EEE, MMM d","LLLL","MMMM d","EEEE, MMMM d","QQQ","QQQQ","y","M/y","M/d/y","EEE, M/d/y","MMM y","MMM d, y","EEE, MMM d, y","MMMM y","MMMM d, y","EEEE, MMMM d, y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","h a","h:mm a","h:mm:ss a","h:mm a v","h:mm a z","h a z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a7B=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","d/M","EEE, d/M","LLL","d MMM","EEE, d MMM","LLLL","d MMMM","EEEE, d MMMM","QQQ","QQQQ","y","MM/y","dd/MM/y","EEE, dd/MM/y","MMM y","d MMM y","EEE, d MMM y","MMMM y","d MMMM y","EEEE, d MMMM y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","h a","h:mm a","h:mm:ss a","h:mm a v","h:mm a z","h a z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a8l=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","MM-dd","EEE, MM-dd","LLL","MMM d","EEE, MMM d","LLLL","MMMM d","EEEE, MMMM d","QQQ","QQQQ","y","MM/y","y-MM-dd","EEE, y-MM-dd","MMM y","MMM d, y","EEE, MMM d, y","MMMM y","MMMM d, y","EEEE, MMMM d, y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","h a","h:mm a","h:mm:ss a","h:mm a v","h:mm a z","h a z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a7I=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","dd/MM","EEE, dd/MM","LLL","d MMM","EEE, d MMM","LLLL","d MMMM","EEEE, d MMMM","QQQ","QQQQ","y","MM/y","dd/MM/y","EEE, dd/MM/y","MMM y","d MMM y","EEE, d MMM y","MMMM y","d MMMM y","EEEE, d MMMM y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a7l=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","d/M","EEE, d/M","LLL","d MMM","EEE, d MMM","LLLL","d MMMM","EEEE, d MMMM","QQQ","QQQQ","y","MM/y","d/M/y","EEE, d/M/y","MMM y","d MMM y","EEE d MMM y","MMMM y","d MMMM y","EEEE d MMMM y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a8d=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","dd/MM","EEE, dd/MM","LLL","d MMM","EEE, d MMM","LLLL","d MMMM","EEEE, d MMMM","QQQ","QQQQ","y","MM/y","d/M/y","EEE, d/M/y","MMM y","d MMM y","EEE, d MMM, y","MMMM y","d MMMM y","EEEE, d MMMM, y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","h a","h:mm a","h:mm:ss a","h:mm a v","h:mm a z","h a z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a7g=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","d/M","EEE, dd/MM","LLL","d MMM","EEE, d MMM","LLLL","d MMMM","EEEE, d MMMM","QQQ","QQQQ","y","MM/y","d/MM/y","EEE, dd/MM/y","MMM y","d MMM y","EEE, d MMM y","MMMM y","d MMMM y","EEEE, d MMMM y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","h a","h:mm a","h:mm:ss a","h:mm a v","h:mm a z","h a z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a7d=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","dd/MM","EEE, dd/MM","LLL","d MMM","EEE, d MMM","LLLL","d MMMM","EEEE, d MMMM","QQQ","QQQQ","y","MM/y","dd/MM/y","EEE, dd/MM/y","MMM y","d MMM y","EEE, d MMM y","MMMM y","d MMMM y","EEEE, d MMMM y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","h a","h:mm a","h:mm:ss a","h:mm a v","h:mm a z","h a z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a82=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","MM/dd","EEE, MM/dd","LLL","dd MMM","EEE, dd MMM","LLLL","d MMMM","EEEE, dd MMMM","QQQ","QQQQ","y","MM/y","y/MM/dd","EEE, y/MM/dd","MMM y","dd MMM y","EEE, dd MMM y","MMMM y","d MMMM y","EEEE, d MMMM y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a7E=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","d/M","EEE, d/M","LLL","d MMM","EEE, d MMM","LLLL","d 'de' MMMM","EEEE, d 'de' MMMM","QQQ","QQQQ","y","M/y","d/M/y","EEE, d/M/y","MMM y","d MMM y","EEE, d MMM y","MMMM 'de' y","d 'de' MMMM 'de' y","EEEE, d 'de' MMMM 'de' y","QQQ y","QQQQ 'de' y","H","H:mm","H:mm:ss","H","H:mm","H:mm:ss","H:mm v","H:mm z","H z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a78=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","d/M","EEE, d/M","LLL","d MMM","EEE, d MMM","LLLL","d 'de' MMMM","EEEE, d 'de' MMMM","QQQ","QQQQ","y","M/y","d/M/y","EEE d/M/y","MMM y","d MMM y","EEE, d MMM y","MMMM 'de' y","d 'de' MMMM 'de' y","EEEE, d 'de' MMMM 'de' y","QQQ 'de' y","QQQQ 'de' y","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a7S=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","d/M","EEE, d/M","LLL","d MMM","EEE d 'de' MMM","LLLL","d 'de' MMMM","EEEE, d 'de' MMMM","QQQ","QQQQ","y","M/y","d/M/y","EEE, d/M/y","MMM y","d MMM y","EEE, d 'de' MMM 'de' y","MMMM 'de' y","d 'de' MMMM 'de' y","EEEE, d 'de' MMMM 'de' y","QQQ y","QQQQ 'de' y","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a7V=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","d/M","EEE, d/M","LLL","d MMM","EEE, d 'de' MMM","LLLL","d 'de' MMMM","EEEE, d 'de' MMMM","QQQ","QQQQ","y","M/y","d/M/y","EEE, d/M/y","MMM y","d MMM y","EEE, d 'de' MMM 'de' y","MMMM 'de' y","d 'de' MMMM 'de' y","EEEE, d 'de' MMMM 'de' y","QQQ y","QQQQ 'de' y","HH","HH:mm","HH:mm:ss","h a","h:mm a","h:mm:ss a","h:mm a v","h:mm a z","h a z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a8m=new A.a2(B.p,["d","ccc","cccc","MMMM","MMMM","M","d.M","EEE, d.M","MMMM","d. MMM","EEE, d. MMM","MMMM","d. MMMM","EEEE, d. MMMM","QQQ","QQQQ","y","M.y","d.M.y","EEE, d.M.y","MMM y","d. MMM y","EEE, d. MMMM y","MMMM y","d. MMMM y","EEEE, d. MMMM y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a7Q=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","M/d","M/d, EEE","LLL","MMM d","MMM d, EEE","LLLL","MMMM d","MMMM d, EEEE","QQQ","QQQQ","y","y/M","y/M/d","y/M/d, EEE","y MMM","y MMM d","y MMM d, EEE","y('e')'ko' MMMM","y('e')'ko' MMMM'ren' d","y('e')'ko' MMMM'ren' d('a'), EEEE","y('e')'ko' QQQ","y('e')'ko' QQQQ","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH (z)","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a8a=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","M/d","EEE M/d","LLL","d LLL","EEE d LLL","LLLL","d LLLL","EEEE d LLLL","QQQ","QQQQ","y","y/M","y/M/d","EEE y/M/d","MMM y","d MMM y","EEE d MMM y","MMMM y","d MMMM y","EEEE d MMMM y","QQQQ y","QQQQ y","H","H:mm","H:mm:ss","H","H:mm","H:mm:ss","H:mm v","HH:mm (z)","H (z)","m","m:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a72=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","d.M.","EEE d.M.","LLL","d. MMM","ccc d. MMM","LLLL","d. MMMM","cccc d. MMMM","QQQ","QQQQ","y","L.y","d.M.y","EEE d.M.y","LLL y","d. MMM y","EEE d. MMM y","LLLL y","d. MMMM y","EEEE d. MMMM y","QQQ y","QQQQ y","H","H.mm","H.mm.ss","H","H.mm","H.mm.ss","H.mm v","H.mm z","H z","m","m.ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a7b=new A.a2(B.p,["d","EEE","EEEE","LLL","LLLL","L","dd/MM","EEE dd/MM","LLL","d MMM","EEE d MMM","LLLL","d MMMM","EEEE d MMMM","QQQ","QQQQ","y","MM/y","dd/MM/y","EEE dd/MM/y","MMM y","d MMM y","EEE d MMM y","MMMM y","d MMMM y","EEEE d MMMM y","QQQ y","QQQQ y","HH 'h'","HH:mm","HH:mm:ss","HH 'h'","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH 'h' z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a7p=new A.a2(B.p,["d","EEE","EEEE","LLL","LLLL","L","M-d","EEE M-d","LLL","d MMM","EEE d MMM","LLLL","d MMMM","EEEE d MMMM","QQQ","QQQQ","y","y-MM","y-MM-dd","EEE y-MM-dd","MMM y","d MMM y","EEE d MMM y","MMMM y","d MMMM y","EEEE d MMMM y","QQQ y","QQQQ y","HH 'h'","HH 'h' mm","HH 'h' mm 'min' ss 's'","HH 'h'","HH 'h' mm","HH 'h' mm 'min' ss 's'","HH 'h' mm v","HH 'h' mm z","HH 'h' z","m","mm 'min' ss 's'","s","v","z","zzzz","ZZZZ"],t.w) +B.a8p=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","d/M","EEE, d/M","LLL","d 'de' MMM","EEE, d 'de' MMM","LLLL","d 'de' MMMM","EEEE, d 'de' MMMM","QQQ","QQQQ","y","M/y","d/M/y","EEE, d/M/y","MMM 'de' y","d 'de' MMM 'de' y","EEE, d 'de' MMM 'de' y","MMMM 'de' y","d 'de' MMMM 'de' y","EEEE, d 'de' MMMM 'de' y","QQQ y","QQQQ 'de' y","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a7a=new A.a2(B.p,["d","EEE","EEEE","LLL","LLLL","L","d.M.","EEE, d.M.","LLL","d. MMM","EEE d. MMM","LLLL","d. MMMM","EEEE d. MMMM","QQQ","QQQQ","y","y-M","d.M.y","EEE, y-M-d","MMM y","y MMM d","EEE, d. MMM y","MMMM y","d. MMMM y","EEEE, d. MMMM y","QQQ y","QQQQ y","H","HH:mm","HH:mm:ss","H","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","H z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a7f=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","d/M","EEE, d/M","LLL","d MMM","EEE, d MMM","LLLL","d MMMM","EEEE, d MMMM","QQQ","QQQQ","y","M/y","d/M/y","EEE, d/M/y","MMM y","d MMM, y","EEE, d MMM, y","MMMM y","d MMMM, y","EEEE, d MMMM, y","y QQQ","y QQQQ","HH","HH:mm","HH:mm:ss","h a","h:mm a","h:mm:ss a","h:mm a v","h:mm a z","h a z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a89=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","d.M","EEE, d.M","LLL","d \u05d1MMM","EEE, d \u05d1MMM","LLLL","d \u05d1MMMM","EEEE, d \u05d1MMMM","QQQ","QQQQ","y","M.y","d.M.y","EEE, d.M.y","MMM y","d \u05d1MMM y","EEE, d \u05d1MMM y","MMMM y","d \u05d1MMMM y","EEEE, d \u05d1MMMM y","QQQ y","QQQQ y","H","H:mm","H:mm:ss","H","H:mm","H:mm:ss","HH:mm v","HH:mm z","H z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a79=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","d/M","EEE, d/M","LLL","d MMM","EEE, d MMM","LLLL","d MMMM","EEEE, d MMMM","QQQ","QQQQ","y","M/y","d/M/y","EEE, d/M/y","MMM y","d MMM y","EEE, d MMM y","MMMM y","d MMMM y","EEEE, d MMMM y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","h a","h:mm a","h:mm:ss a","h:mm a v","h:mm a z","h a z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a7i=new A.a2(B.p,["d.","ccc","cccc","LLL","LLLL","L.","dd. MM.","EEE, dd. MM.","LLL","d. MMM","EEE, d. MMM","LLLL","d. MMMM","EEEE, d. MMMM","QQQ","QQQQ","y.","MM. y.","dd. MM. y.","EEE, dd. MM. y.","LLL y.","d. MMM y.","EEE, d. MMM y.","LLLL y.","d. MMMM y.","EEEE, d. MMMM y.","QQQ y.","QQQQ y.","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH (z)","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a7v=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","M. d.","M. d., EEE","LLL","MMM d.","MMM d., EEE","LLLL","MMMM d.","MMMM d., EEEE","QQQ","QQQQ","y.","y. M.","y. MM. dd.","y. MM. dd., EEE","y. MMM","y. MMM d.","y. MMM d., EEE","y. MMMM","y. MMMM d.","y. MMMM d., EEEE","y. QQQ","y. QQQQ","H","H:mm","H:mm:ss","H","H:mm","H:mm:ss","HH:mm v","HH:mm z","H z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a8b=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","dd.MM","dd.MM, EEE","LLL","d MMM","d MMM, EEE","LLLL","MMMM d","d MMMM, EEEE","QQQ","QQQQ","y","MM.y","dd.MM.y","d.MM.y \u0569., EEE","y \u0569. LLL","d MMM, y \u0569.","y \u0569. MMM d, EEE","y \u0569\u2024 LLLL","d MMMM, y \u0569.","y \u0569. MMMM d, EEEE","y \u0569. QQQ","y \u0569. QQQQ","H","H:mm","H:mm:ss","H","H:mm","H:mm:ss","HH:mm v","HH:mm z","H z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a7e=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","d/M","EEE, d/M","LLL","d MMM","EEE, d MMM","LLLL","d MMMM","EEEE, d MMMM","QQQ","QQQQ","y","M/y","d/M/y","EEE, d/M/y","MMM y","d MMM y","EEE, d MMM y","MMMM y","d MMMM y","EEEE, d MMMM y","QQQ y","QQQQ y","HH","HH.mm","HH.mm.ss","HH","HH.mm","HH.mm.ss","HH.mm v","HH.mm z","HH z","m","mm.ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a7D=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","d.M.","EEE, d.M.","LLL","d. MMM","EEE, d. MMM","LLLL","d. MMMM","EEEE, d. MMMM","QQQ","QQQQ","y","M. y","d.M.y","EEE, d.M.y","MMM y","d. MMM y","EEE, d. MMM y","MMMM y","d. MMMM y","EEEE, d. MMMM y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","v \u2013 HH:mm","z \u2013 HH:mm","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a7x=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","d/M","EEE d/M","LLL","d MMM","EEE d MMM","LLLL","d MMMM","EEEE d MMMM","QQQ","QQQQ","y","M/y","d/M/y","EEE d/M/y","MMM y","d MMM y","EEE d MMM y","MMMM y","d MMMM y","EEEE d MMMM y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a7T=new A.a2(B.p,["d\u65e5","ccc","cccc","M\u6708","M\u6708","M\u6708","M/d","M/d(EEE)","M\u6708","M\u6708d\u65e5","M\u6708d\u65e5(EEE)","M\u6708","M\u6708d\u65e5","M\u6708d\u65e5EEEE","QQQ","QQQQ","y\u5e74","y/M","y/M/d","y/M/d(EEE)","y\u5e74M\u6708","y\u5e74M\u6708d\u65e5","y\u5e74M\u6708d\u65e5(EEE)","y\u5e74M\u6708","y\u5e74M\u6708d\u65e5","y\u5e74M\u6708d\u65e5EEEE","y/QQQ","y\u5e74QQQQ","H\u6642","H:mm","H:mm:ss","H\u6642","H:mm","H:mm:ss","H:mm v","H:mm z","H\u6642 z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a8j=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","d.M","EEE, d.M","LLL","d MMM","EEE, d MMM","LLLL","d MMMM","EEEE, d MMMM","QQQ","QQQQ","y","M.y","d.M.y","EEE, d.M.y","MMM. y","d MMM. y","EEE, d MMM. y","MMMM, y","d MMMM, y","EEEE, d MMMM, y","QQQ, y","QQQQ, y","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a7G=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","dd.MM","dd.MM, EEE","LLL","d MMM","d MMM, EEE","LLLL","d MMMM","d MMMM, EEEE","QQQ","QQQQ","y","MM.y","dd.MM.y","dd.MM.y, EEE","y '\u0436'. MMM","y '\u0436'. d MMM","y '\u0436'. d MMM, EEE","y '\u0436'. MMMM","y '\u0436'. d MMMM","y '\u0436'. d MMMM, EEEE","y '\u0436'. QQQ","y '\u0436'. QQQQ","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a73=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","d/M","EEE d/M","LLL","d MMM","EEE d MMM","LLLL","MMMM d","EEEE d MMMM","QQQ","QQQQ","y","M/y","d/M/y","EEE d/M/y","MMM y","d MMM y","EEE d MMM y","MMMM y","d MMMM y","EEEE d MMMM y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","h a","h:mm a","h:mm:ss a","h:mm a v","h:mm a z","h a z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a7N=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","d/M","d/M, EEE","LLL","MMM d","EEE, d MMM","LLLL","d MMMM","EEEE, d MMMM","QQQ","QQQQ","y","M/y","d/M/y","EEE, M/d/y","MMM y","MMM d,y","EEE, MMM d, y","MMMM y","MMMM d, y","EEEE, MMMM d, y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","h a","h:mm a","h:mm:ss a","h:mm a v","h:mm a z","h a z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a7w=new A.a2(B.p,["d\uc77c","ccc","cccc","LLL","LLLL","M\uc6d4","M. d.","M. d. (EEE)","LLL","MMM d\uc77c","MMM d\uc77c (EEE)","LLLL","MMMM d\uc77c","MMMM d\uc77c EEEE","QQQ","QQQQ","y\ub144","y. M.","y. M. d.","y. M. d. (EEE)","y\ub144 MMM","y\ub144 MMM d\uc77c","y\ub144 MMM d\uc77c (EEE)","y\ub144 MMMM","y\ub144 MMMM d\uc77c","y\ub144 MMMM d\uc77c EEEE","y\ub144 QQQ","y\ub144 QQQQ","H\uc2dc","HH:mm","H\uc2dc m\ubd84 s\ucd08","a h\uc2dc","a h:mm","a h:mm:ss","a h:mm v","a h:mm z","a h\uc2dc z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a7t=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","dd-MM","dd-MM, EEE","LLL","d-MMM","d-MMM, EEE","LLLL","d-MMMM","d-MMMM, EEEE","QQQ","QQQQ","y","y-MM","y-dd-MM","y-dd-MM, EEE","y-'\u0436'. MMM","y-'\u0436'. d-MMM","y-'\u0436'. d-MMM, EEE","y-'\u0436'., MMMM","y-'\u0436'., d-MMMM","y-'\u0436'., d-MMMM, EEEE","y-'\u0436'., QQQ","y-'\u0436'., QQQQ","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a7n=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","d/M","EEE, d/M","LLL","d MMM","EEE d MMM","LLLL","MMMM d","EEEE d MMMM","QQQ","QQQQ","y","M/y","d/M/y","EEE, d/M/y","MMM y","d MMM y","EEE, d MMM y","MMMM y","d MMMM y","EEEE, d MMMM y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a7L=new A.a2(B.p,["dd","ccc","cccc","LLL","LLLL","MM","MM-d","MM-dd, EEE","MM","MM-dd","MM-dd, EEE","LLLL","MMMM d 'd'.","MMMM d 'd'., EEEE","QQQ","QQQQ","y","y-MM","y-MM-dd","y-MM-dd, EEE","y-MM","y-MM-dd","y-MM-dd, EEE","y 'm'. LLLL","y 'm'. MMMM d 'd'.","y 'm'. MMMM d 'd'., EEEE","y QQQ","y QQQQ","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm; v","HH:mm; z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a75=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","dd.MM.","EEE, dd.MM.","LLL","d. MMM","EEE, d. MMM","LLLL","d. MMMM","EEEE, d. MMMM","QQQ","QQQQ","y. 'g'.","MM.y.","d.MM.y.","EEE, d.M.y.","y. 'g'. MMM","y. 'g'. d. MMM","EEE, y. 'g'. d. MMM","y. 'g'. MMMM","y. 'gada' d. MMMM","EEEE, y. 'gada' d. MMMM","y. 'g'. QQQ","y. 'g'. QQQQ","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a7j=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","d.M","EEE, d.M","LLL","d MMM","EEE, d MMM","LLLL","d MMMM","EEEE, d MMMM","QQQ","QQQQ","y","M.y","d.M.y","EEE, d.M.y","MMM y '\u0433'.","d MMM y '\u0433'.","EEE, d MMM y '\u0433'.","MMMM y '\u0433'.","d MMMM y","EEEE, d MMMM y","QQQ y '\u0433'.","QQQQ y '\u0433'.","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a7F=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","d/M","d/M, EEE","LLL","MMM d","MMM d, EEE","LLLL","MMMM d","MMMM d, EEEE","QQQ","QQQQ","y","y-MM","d/M/y","d-M-y, EEE","y MMM","y MMM d","y MMM d, EEE","y MMMM","y, MMMM d","y, MMMM d, EEEE","y QQQ","y QQQQ","HH","HH:mm","HH:mm:ss","h a","h:mm a","h:mm:ss a","h:mm a v","h:mm a z","h a z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a7J=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","LLLLL","MMMMM/dd","MMMMM/dd. EEE","LLL","MMM'\u044b\u043d' d","MMM'\u044b\u043d' d. EEE","LLLL","MMMM'\u044b\u043d' d","MMMM'\u044b\u043d' d. EEEE","QQQ","QQQQ","y","y MMMMM","y.MM.dd","y.MM.dd. EEE","y '\u043e\u043d\u044b' MMM","y '\u043e\u043d\u044b' MMM'\u044b\u043d' d","y '\u043e\u043d\u044b' MMM'\u044b\u043d' d. EEE","y '\u043e\u043d\u044b' MMMM","y '\u043e\u043d\u044b' MMMM'\u044b\u043d' d","y '\u043e\u043d\u044b' MMMM'\u044b\u043d' d, EEEE '\u0433\u0430\u0440\u0430\u0433'","y '\u043e\u043d\u044b' QQQ","y '\u043e\u043d\u044b' QQQQ","HH '\u0446'","HH:mm","HH:mm:ss","HH '\u0446'","HH:mm","HH:mm:ss","HH:mm (v)","HH:mm (z)","HH '\u0446' (z)","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a87=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","d/M","EEE, d/M","LLL","d MMM","EEE, d MMM","LLLL","d MMMM","EEEE, d MMMM","QQQ","QQQQ","y","M/y","d/M/y","EEE, d/M/y","MMM y","d MMM, y","EEE, d, MMM y","MMMM y","d MMMM, y","EEEE, d MMMM, y","QQQ y","QQQQ y","HH","H:mm","H:mm:ss","h a","h:mm a","h:mm:ss a","h:mm a v","h:mm a z","h a z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a8g=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","d-M","EEE, d-M","LLL","d MMM","EEE, d MMM","LLLL","d MMMM","EEEE, d MMMM","QQQ","QQQQ","y","M-y","d/M/y","EEE, d/M/y","MMM y","d MMM y","EEE, d MMM y","MMMM y","d MMMM y","EEEE, d MMMM y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","h a","h:mm a","h:mm:ss a","h:mm a v","h:mm a z","h a z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a8e=new A.a2(B.p,["d","ccc\u1014\u1031\u1037","cccc\u1014\u1031\u1037","LLL","LLLL","L","d/M","d-M- EEE","LLL","d MMM","MMM d- EEE","LLLL","MMMM d","MMMM d \u101b\u1000\u103a EEEE\u1014\u1031\u1037","QQQ","QQQQ","y","M/y","dd-MM-y","d/M/y- EEE","MMM y","y- MMM d","y- MMM d- EEE","y MMMM","y- MMMM d","y- MMMM d- EEEE","y QQQ","y QQQQ","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","v HH:mm","z HH:mm","z HH","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.F3=new A.a2(B.p,["d.","ccc","cccc","LLL","LLLL","L.","d.M.","EEE d.M.","LLL","d. MMM","EEE d. MMM","LLLL","d. MMMM","EEEE d. MMMM","QQQ","QQQQ","y","M.y","d.M.y","EEE d.M.y","MMM y","d. MMM y","EEE d. MMM y","MMMM y","d. MMMM y","EEEE d. MMMM y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a7M=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","MM-dd","MM-dd, EEE","LLL","MMM d","MMM d, EEE","LLLL","MMMM d","MMMM d, EEEE","QQQ","QQQQ","y","y-MM","y-MM-dd","y-MM-dd, EEE","y MMM","y MMM d","y MMM d, EEE","y MMMM","y MMMM d","y MMMM d, EEEE","y QQQ","y QQQQ","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a8i=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","d-M","EEE d-M","LLL","d MMM","EEE d MMM","LLLL","d MMMM","EEEE d MMMM","QQQ","QQQQ","y","M-y","d-M-y","EEE d-M-y","MMM y","d MMM y","EEE d MMM y","MMMM y","d MMMM y","EEEE d MMMM y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a8_=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","d/M","EEE, dd-MM.","LLL","d MMM","EEE, d MMM","LLLL","MMMM d","EEEE, d MMMM","QQQ","QQQQ","y","M/y","d/M/y","EEE, d/M/y","MMM y","d MMM y","EEE, d MMM y","MMMM y","d MMMM y","EEEE, d MMMM y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","h a","h:mm a","h:mm:ss a","h:mm a v","h:mm a z","h a z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a76=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","d.MM","EEE, d.MM","LLL","d MMM","EEE, d MMM","LLLL","d MMMM","EEEE, d MMMM","QQQ","QQQQ","y","MM.y","d.MM.y","EEE, d.MM.y","LLL y","d MMM y","EEE, d MMM y","LLLL y","d MMMM y","EEEE, d MMMM y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a8c=new A.a2(B.p,["d","EEE","EEEE","LLL","LLLL","L","MM-dd","MM-dd, EEE","LLL","MMM d","EEE, MMM d","LLLL","MMMM d","EEEE, MMMM d","QQQ","QQQQ","y","y-MM","y-MM-dd","y-MM-dd, EEE","y MMM","y MMM d","y MMM d, EEE","y MMMM","\u062f y \u062f MMMM d","EEEE \u062f y \u062f MMMM d","y QQQ","y QQQQ","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH (z)","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a7O=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","d/M","EEE, dd/MM","LLL","d 'de' MMM","EEE, d 'de' MMM","LLLL","d 'de' MMMM","EEEE, d 'de' MMMM","QQQ","QQQQ","y","MM/y","dd/MM/y","EEE, dd/MM/y","MMM 'de' y","d 'de' MMM 'de' y","EEE, d 'de' MMM 'de' y","MMMM 'de' y","d 'de' MMMM 'de' y","EEEE, d 'de' MMMM 'de' y","QQQ 'de' y","QQQQ 'de' y","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a7h=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","dd/MM","EEE, dd/MM","LLL","d/MM","EEE, d/MM","LLLL","d 'de' MMMM","cccc, d 'de' MMMM","QQQ","QQQQ","y","MM/y","dd/MM/y","EEE, dd/MM/y","MM/y","d/MM/y","EEE, d/MM/y","MMMM 'de' y","d 'de' MMMM 'de' y","EEEE, d 'de' MMMM 'de' y","QQQQ 'de' y","QQQQ 'de' y","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a7U=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","dd.MM","EEE, dd.MM","LLL","d MMM","EEE, d MMM","LLLL","d MMMM","EEEE, d MMMM","QQQ","QQQQ","y","MM.y","dd.MM.y","EEE, dd.MM.y","MMM y","d MMM y","EEE, d MMM y","MMMM y","d MMMM y","EEEE, d MMMM y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a7o=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","dd.MM","EEE, dd.MM","LLL","d MMM","ccc, d MMM","LLLL","d MMMM","cccc, d MMMM","QQQ","QQQQ","y","MM.y","dd.MM.y","ccc, dd.MM.y '\u0433'.","LLL y '\u0433'.","d MMM y '\u0433'.","EEE, d MMM y '\u0433'.","LLLL y '\u0433'.","d MMMM y '\u0433'.","EEEE, d MMMM y '\u0433'.","QQQ y '\u0433'.","QQQQ y '\u0433'.","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a8k=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","M-d","M-d, EEE","LLL","MMM d","MMM d EEE","LLLL","MMMM d","MMMM d EEEE","QQQ","QQQQ","y","y-M","y-M-d","y-M-d, EEE","y MMM","y MMM d","y MMM d, EEE","y MMMM","y MMMM d","y MMMM d, EEEE","y QQQ","y QQQQ","HH","HH.mm","HH.mm.ss","HH","HH.mm","HH.mm.ss","HH.mm v","HH.mm z","HH z","m","mm.ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a7P=new A.a2(B.p,["d.","ccc","cccc","LLL","LLLL","L.","d. M.","EEE d. M.","LLL","d. M.","EEE d. M.","LLLL","d. MMMM","EEEE d. MMMM","QQQ","QQQQ","y","M/y","d. M. y","EEE d. M. y","M/y","d. M. y","EEE d. M. y","LLLL y","d. MMMM y","EEEE d. MMMM y","QQQ y","QQQQ y","H","H:mm","H:mm:ss","H","H:mm","H:mm:ss","H:mm v","H:mm z","H z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a7A=new A.a2(B.p,["d.","ccc","cccc","LLL","LLLL","L","d. M.","EEE, d. M.","LLL","d. MMM","EEE, d. MMM","LLLL","d. MMMM","EEEE, d. MMMM","QQQ","QQQQ","y","M/y","d. M. y","EEE, d. M. y","MMM y","d. MMM y","EEE, d. MMM y","MMMM y","d. MMMM y","EEEE, d. MMMM y","QQQ y","QQQQ y","HH'h'","HH:mm","HH:mm:ss","HH'h'","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH'h' z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a7H=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","d.M","EEE, d.M","LLL","d MMM","EEE, d MMM","LLLL","d MMMM","EEEE, d MMMM","QQQ","QQQQ","y","M.y","d.M.y","EEE, d.M.y","MMM y","d MMM y","EEE, d MMM y","MMMM y","d MMMM y","EEEE, d MMMM y","QQQ, y","QQQQ, y","HH","HH:mm","HH:mm:ss","h a","h:mm a","h:mm:ss a","h:mm a, v","h:mm a, z","h a, z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.F5=new A.a2(B.p,["d","EEE","EEEE","LLL","LLLL","L","d.M.","EEE, d.M.","LLL","d. MMM","EEE d. MMM","LLLL","d. MMMM","EEEE, d. MMMM","QQQ","QQQQ","y.","M.y.","d.M.y.","EEE, d.M.y.","MMM y.","d. MMM y.","EEE, d. MMM y.","MMMM y.","d. MMMM y.","EEEE, d. MMMM y.","QQQ y.","QQQQ y.","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a8h=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","d/M","EEE d/M","LLL","d MMM","EEE d MMM","LLLL","d MMMM","EEEE d MMMM","QQQ","QQQQ","y","y-MM","y-MM-dd","EEE, y-MM-dd","MMM y","d MMM y","EEE d MMM y","MMMM y","d MMMM y","EEEE d MMMM y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a7R=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","d/M","EEE, d/M","LLL","d MMM","EEE, d MMM","LLLL","d MMMM","EEEE, d MMMM","QQQ","QQQQ","y","M/y","d/M/y","EEE, d/M/y","MMM y","d MMM y","EEE, d MMM y","MMMM y","d MMMM y","EEEE, d MMMM y","y QQQ","QQQQ y","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a7W=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","d/M","dd-MM, EEE","LLL","MMM d","MMM d, EEE","LLLL","d MMMM","MMMM d, EEEE","QQQ","QQQQ","y","M/y","d/M/y","EEE, d/M/y","MMM y","d MMM, y","EEE, d MMM, y","MMMM y","d MMMM, y","EEEE, d MMMM, y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","a h","a h:mm","a h:mm:ss","a h:mm v","a h:mm z","a h z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a74=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","d/M","d/M, EEE","LLL","d MMM","d MMM, EEE","LLLL","d MMMM","d MMMM, EEEE","QQQ","QQQQ","y","M/y","d/M/y","d/M/y, EEE","MMM y","d, MMM y","d MMM, y, EEE","MMMM y","d MMMM, y","d, MMMM y, EEEE","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","h a","h:mm a","h:mm:ss a","h:mm a v","h:mm a z","h a z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a7z=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","d/M","EEE d/M","LLL","d MMM","EEE d MMM","LLLL","d MMMM","EEEE\u0e17\u0e35\u0e48 d MMMM","QQQ","QQQQ","y","M/y","d/M/y","EEE d/M/y","MMM y","d MMM y","EEE d MMM y","MMMM G y","d MMMM G y","EEEE\u0e17\u0e35\u0e48 d MMMM G y","QQQ y","QQQQ G y","HH","HH:mm \u0e19.","HH:mm:ss","HH","HH:mm \u0e19.","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a84=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","d/M","d/MM EEE","LLL","d MMM","d MMMM EEE","LLLL","d MMMM","d MMMM EEEE","QQQ","QQQQ","y","MM/y","dd.MM.y","d.M.y EEE","MMM y","d MMM y","d MMM y EEE","MMMM y","d MMMM y","d MMMM y EEEE","y QQQ","y QQQQ","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a80=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","LL","dd.MM","EEE, dd.MM","LLL","d MMM","EEE, d MMM","LLLL","d MMMM","EEEE, d MMMM","QQQ","QQQQ","y","MM.y","dd.MM.y","EEE, dd.MM.y","LLL y '\u0440'.","d MMM y '\u0440'.","EEE, d MMM y '\u0440'.","LLLL y '\u0440'.","d MMMM y '\u0440'.","EEEE, d MMMM y '\u0440'.","QQQ y","QQQQ y '\u0440'.","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a7X=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","d/M","EEE\u060c d/M","LLL","d MMM","EEE\u060c d MMM","LLLL","d MMMM","EEEE\u060c d MMMM","QQQ","QQQQ","y","M/y","d/M/y","EEE\u060c d/M/y","MMM y","d MMM\u060c y","EEE\u060c d MMM\u060c y","MMMM y","d MMMM\u060c y","EEEE\u060c d MMMM\u060c y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","h a","h:mm a","h:mm:ss a","h:mm a v","h:mm a z","h a z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a7y=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","LL","dd/MM","EEE, dd/MM","LLL","d-MMM","EEE, d-MMM","LLLL","d-MMMM","EEEE, d-MMMM","QQQ","QQQQ","y","MM.y","dd/MM/y","EEE, dd/MM/y","MMM, y","d-MMM, y","EEE, d-MMM, y","MMMM, y","d-MMMM, y","EEEE, d-MMMM, y","y, QQQ","y, QQQQ","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm (v)","HH:mm (z)","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a7s=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","dd/M","EEE, dd/M","LLL","d MMM","EEE, d MMM","LLLL","d MMMM","EEEE, d MMMM","QQQ","QQQQ","y","M/y","d/M/y","EEE, dd/M/y","MMM y","d MMM, y","EEE, d MMM, y","MMMM 'n\u0103m' y","d MMMM, y","EEEE, d MMMM, y","QQQ y","QQQQ 'n\u0103m' y","HH","H:mm","HH:mm:ss","HH","H:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a86=new A.a2(B.p,["d\u65e5","ccc","cccc","LLL","LLLL","M\u6708","M/d","M/dEEE","LLL","M\u6708d\u65e5","M\u6708d\u65e5EEE","LLLL","M\u6708d\u65e5","M\u6708d\u65e5EEEE","QQQ","QQQQ","y\u5e74","y\u5e74M\u6708","y/M/d","y/M/dEEE","y\u5e74M\u6708","y\u5e74M\u6708d\u65e5","y\u5e74M\u6708d\u65e5EEE","y\u5e74M\u6708","y\u5e74M\u6708d\u65e5","y\u5e74M\u6708d\u65e5EEEE","y\u5e74\u7b2cQ\u5b63\u5ea6","y\u5e74\u7b2cQ\u5b63\u5ea6","H\u65f6","HH:mm","HH:mm:ss","H\u65f6","HH:mm","HH:mm:ss","v HH:mm","z HH:mm","zH\u65f6","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a81=new A.a2(B.p,["d\u65e5","ccc","cccc","LLL","LLLL","M\u6708","d/M","d/M\uff08EEE\uff09","LLL","M\u6708d\u65e5","M\u6708d\u65e5EEE","LLLL","M\u6708d\u65e5","M\u6708d\u65e5EEEE","QQQ","QQQQ","y\u5e74","M/y","d/M/y","d/M/y\uff08EEE\uff09","y\u5e74M\u6708","y\u5e74M\u6708d\u65e5","y\u5e74M\u6708d\u65e5EEE","y\u5e74M\u6708","y\u5e74M\u6708d\u65e5","y\u5e74M\u6708d\u65e5EEEE","y\u5e74QQQ","y\u5e74QQQQ","H\u6642","HH:mm","HH:mm:ss","ah\u6642","ah:mm","ah:mm:ss","ah:mm [v]","ah:mm [z]","ah\u6642 z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a7m=new A.a2(B.p,["d\u65e5","ccc","cccc","LLL","LLLL","M\u6708","M/d","M/d\uff08EEE\uff09","LLL","M\u6708d\u65e5","M\u6708d\u65e5 EEE","LLLL","M\u6708d\u65e5","M\u6708d\u65e5 EEEE","QQQ","QQQQ","y\u5e74","y/M","y/M/d","y/M/d\uff08EEE\uff09","y\u5e74M\u6708","y\u5e74M\u6708d\u65e5","y\u5e74M\u6708d\u65e5 EEE","y\u5e74M\u6708","y\u5e74M\u6708d\u65e5","y\u5e74M\u6708d\u65e5 EEEE","y\u5e74QQQ","y\u5e74QQQQ","H\u6642","HH:mm","HH:mm:ss","ah\u6642","ah:mm","ah:mm:ss","ah:mm [v]","ah:mm [z]","ah\u6642 z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a7q=new A.a2(B.p,["d","ccc","cccc","LLL","LLLL","L","MM-dd","MM-dd, EEE","LLL","MMM d","EEE, MMM d","LLLL","MMMM d","EEEE, MMMM d","QQQ","QQQQ","y","y-MM","y-MM-dd","y-MM-dd, EEE","MMM y","MMM d, y","EEE, MMM d, y","MMMM y","MMMM d, y","EEEE, MMMM d, y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.a9s=new A.a2(B.aa6,[B.a77,B.a85,B.a7C,B.a8n,B.a8o,B.a8f,B.a83,B.a7u,B.a7c,B.a7k,B.a7K,B.a7r,B.a7Y,B.F4,B.F4,B.a88,B.hH,B.a7B,B.a8l,B.a7I,B.a7l,B.a8d,B.a7g,B.a7d,B.hH,B.a82,B.a7E,B.a78,B.a7S,B.a7V,B.a8m,B.a7Q,B.a8a,B.a72,B.hH,B.a7b,B.a7p,B.a8p,B.a7a,B.a7f,B.a89,B.a79,B.a7i,B.a7v,B.a8b,B.a7e,B.a7D,B.a7x,B.a7T,B.a8j,B.a7G,B.a73,B.a7N,B.a7w,B.a7t,B.a7n,B.a7L,B.a75,B.a7j,B.a7F,B.a7J,B.a87,B.a8g,B.a8e,B.F3,B.a7M,B.a8i,B.F3,B.hH,B.a8_,B.a76,B.a8c,B.a7O,B.a7h,B.a7U,B.a7o,B.a8k,B.a7P,B.a7A,B.a7H,B.F5,B.F5,B.a8h,B.a7R,B.a7W,B.a74,B.a7z,B.hH,B.a84,B.a80,B.a7X,B.a7y,B.a7s,B.a86,B.a81,B.a7m,B.a7q],A.ah("a2>")) +B.a9t=new A.La(null,null,null,null,null,null,null,null) +B.PX=new A.M(4284790262) +B.PO=new A.M(4282557941) +B.PA=new A.M(4279592384) +B.Pz=new A.M(4279060385) +B.a6J=new A.dm([50,B.rc,100,B.r8,200,B.me,300,B.PX,400,B.PO,500,B.m7,600,B.m6,700,B.r_,800,B.PA,900,B.Pz],t.pl) +B.hI=new A.CJ(B.a6J,4280391411) +B.Qh=new A.M(4293457385) +B.Qb=new A.M(4291356361) +B.Q8=new A.M(4289058471) +B.Q3=new A.M(4286695300) +B.PY=new A.M(4284922730) +B.PS=new A.M(4283215696) +B.PP=new A.M(4282622023) +B.PL=new A.M(4281896508) +B.PG=new A.M(4281236786) +B.PB=new A.M(4279983648) +B.a6K=new A.dm([50,B.Qh,100,B.Qb,200,B.Q8,300,B.Q3,400,B.PY,500,B.PS,600,B.PP,700,B.PL,800,B.PG,900,B.PB],t.pl) +B.a9u=new A.CJ(B.a6K,4283215696) +B.fm=new A.bE(0,t.QL) +B.a9v=new A.bE(2,t.QL) +B.kr=new A.bE(24,t.QL) +B.bE=new A.bE(B.u,t.h9) +B.a9w=new A.bE(B.u,t.Il) +B.oN=new A.V(40,40) +B.ks=new A.bE(B.oN,t.iL) +B.adW=new A.V(64,40) +B.kt=new A.bE(B.adW,t.iL) +B.fK=new A.jV(B.t) +B.dM=new A.bE(B.fK,t.kU) +B.ku=new A.bE(B.aT,t.Ak) +B.l4=new A.V(1/0,1/0) +B.dN=new A.bE(B.l4,t.iL) +B.A=new A.dn(0,"hovered") +B.y=new A.dn(1,"focused") +B.K=new A.dn(2,"pressed") +B.fn=new A.dn(3,"dragged") +B.B=new A.dn(4,"selected") +B.Fa=new A.dn(5,"scrolledUnder") +B.o=new A.dn(6,"disabled") +B.cm=new A.dn(7,"error") +B.a9x=new A.xK(0,"padded") +B.kv=new A.xK(1,"shrinkWrap") +B.a9y=new A.a50(0,"none") +B.a9z=new A.a50(2,"truncateAfterCompositionEnds") +B.a9A=new A.a52(null) +B.a9B=new A.Lr(null) +B.a9C=new A.CN(null) +B.a9D=new A.lP("popRoute",null) +B.a9E=new A.lQ("plugins.flutter.io/url_launcher",B.bM,null) +B.a9F=new A.lQ("dev.fluttercommunity.plus/package_info",B.bM,null) +B.a9G=new A.lQ("flutter/service_worker",B.bM,null) +B.nV=new A.lQ("plugins.flutter.io/shared_preferences",B.bM,null) +B.a9J=new A.xN(0,"clipRect") +B.a9K=new A.xN(1,"clipRRect") +B.a9L=new A.xN(2,"clipPath") +B.a9M=new A.xN(3,"transform") +B.a9N=new A.xN(4,"opacity") +B.a9O=new A.LF(0,"push") +B.a9P=new A.LF(1,"pushReplacement") +B.nY=new A.LF(3,"go") +B.a9Q=new A.xQ(null,null,null,null,null,null,null,null,null,null) +B.Fg=new A.aKe(0,"alwaysShow") +B.a9R=new A.LH(null,null,null,null,null,null,null,null,null,null) +B.fp=new A.aKl(0,"traditional") +B.nZ=new A.a5q(0,"none") +B.a9S=new A.a5q(2,"all") +B.a9T=new A.CT(null,null,null,null,null,null,null,null,null,null,null,null,null) +B.Fh=new A.a5r(null) +B.a9U=new A.CV(null) +B.Fi=new A.CW(null,null,null,null) +B.alm=new A.aaF(null) +B.a9V=new A.oz(B.alm,B.F,B.F,A.aq6(),null,null,null,null,t.hC) +B.Ro=new A.a0k(null) +B.a9W=new A.oz(B.Ro,B.F,B.F,A.aq6(),null,null,null,null,t.hC) +B.a9I=new A.a59(null) +B.a9X=new A.oz(B.a9I,B.F,B.F,A.aq6(),null,null,null,null,t.hC) +B.MO=new A.XL(null) +B.a9Y=new A.oz(B.MO,B.F,B.F,A.aq6(),null,null,null,null,t.hC) +B.Fk=new A.j6(B.i,B.i) +B.aag=new A.l(0,20) +B.aai=new A.l(0,26) +B.aak=new A.l(11,-4) +B.aam=new A.l(1,3) +B.aao=new A.l(22,0) +B.aap=new A.l(3,0) +B.aaq=new A.l(3,-3) +B.aar=new A.l(4.5,9) +B.aas=new A.l(6,6) +B.aat=new A.l(5,10.5) +B.Fp=new A.l(9,9) +B.aav=new A.l(14.4,9) +B.aay=new A.l(17976931348623157e292,0) +B.aaz=new A.l(0,-0.25) +B.ai=new A.l(0,-0.005) +B.aaB=new A.l(-0.3333333333333333,0) +B.aaD=new A.l(2.6999999999999997,8.1) +B.aaE=new A.l(1/0,1/0) +B.aaF=new A.l(3.6,9) +B.aaI=new A.l(13.5,9) +B.Fq=new A.l(7.2,12.6) +B.aaK=new A.l(1/0,0) +B.aaO=new A.l(-3,0) +B.aaP=new A.l(-3,3) +B.aaQ=new A.l(-3,-3) +B.aaS=new A.l(15.299999999999999,4.5) +B.bx=new A.qs(0,"iOs") +B.ky=new A.qs(1,"android") +B.o2=new A.qs(2,"linux") +B.Fr=new A.qs(3,"windows") +B.d0=new A.qs(4,"macOs") +B.aaT=new A.qs(5,"unknown") +B.by=new A.n_("flutter/platform",B.fX,null) +B.aaU=new A.n_("flutter/keyboard",B.bM,null) +B.aaV=new A.n_("flutter/mousecursor",B.bM,null) +B.Fs=new A.n_("flutter/menu",B.bM,null) +B.Ft=new A.n_("flutter/textinput",B.fX,null) +B.aaW=new A.n_("flutter/undomanager",B.fX,null) +B.kz=new A.n_("flutter/navigation",B.fX,null) +B.aaX=new A.n_("flutter/spellcheck",B.bM,null) +B.o3=new A.n_("flutter/restoration",B.bM,null) +B.aaY=new A.xU(0,null) +B.Fu=new A.xU(1,null) +B.kA=new A.a5I(0,"portrait") +B.kB=new A.a5I(1,"landscape") +B.en=new A.lU(4,B.fV,B.lQ) +B.aaZ=new A.LV(null) +B.apd=new A.a5M(0,"start") +B.ab_=new A.a5M(1,"end") +B.P4=new A.o2(2,0,null,null,null,null,null,null,null,null) +B.ab0=new A.b8(B.e7,B.P4,null) +B.RQ=new A.eH(6,0,0,0) +B.ab2=new A.b8(B.RQ,null,null) +B.RS=new A.eH(8,0,0,0) +B.ab1=new A.b8(B.RS,null,null) +B.Fv=new A.D0(null) +B.o4=new A.aL6(0,"sliver") +B.ab3=new A.le(0,"completed") +B.ab4=new A.le(1,"noItemsFound") +B.Fw=new A.le(2,"loadingFirstPage") +B.Fx=new A.le(3,"ongoing") +B.ab5=new A.le(4,"firstPageError") +B.ab6=new A.le(5,"subsequentPageError") +B.bl=new A.a69(0,"fill") +B.aj=new A.a69(1,"stroke") +B.ape=new A.aLm(3,"free") +B.ab7=new A.qx(1/0) +B.d1=new A.a6c(0,"nonZero") +B.fr=new A.a6c(1,"evenOdd") +B.ab8=new A.aLq(2,"union") +B.cp=new A.y_(0,"created") +B.bm=new A.y_(1,"active") +B.fs=new A.y_(2,"pendingRetention") +B.ab9=new A.y_(3,"pendingUpdate") +B.Fy=new A.y_(4,"released") +B.aba=new A.D8(null,A.ah("D8")) +B.kE=new A.ui(0,"baseline") +B.kF=new A.ui(1,"aboveBaseline") +B.kG=new A.ui(2,"belowBaseline") +B.kH=new A.ui(3,"top") +B.dP=new A.ui(4,"bottom") +B.kI=new A.ui(5,"middle") +B.abO=new A.D9(B.x,B.dP,null,null) +B.o6=new A.n2(0,"ZERO") +B.ar=new A.n2(1,"ONE") +B.ep=new A.n2(2,"TWO") +B.bX=new A.n2(3,"FEW") +B.bQ=new A.n2(4,"MANY") +B.ao=new A.n2(5,"OTHER") +B.o7=new A.qA(0,"cancel") +B.o8=new A.qA(1,"add") +B.abP=new A.qA(2,"remove") +B.eq=new A.qA(3,"hover") +B.J1=new A.qA(4,"down") +B.hU=new A.qA(5,"move") +B.o9=new A.qA(6,"up") +B.b8=new A.oH(0,"touch") +B.bY=new A.oH(1,"mouse") +B.cq=new A.oH(2,"stylus") +B.dQ=new A.oH(3,"invertedStylus") +B.bF=new A.oH(4,"trackpad") +B.d2=new A.oH(5,"unknown") +B.fy=new A.Db(0,"none") +B.abQ=new A.Db(1,"scroll") +B.abR=new A.Db(3,"scale") +B.abS=new A.Db(4,"unknown") +B.abT=new A.Df(null,null,null,null,null,null,null,null,null,null) +B.oa=new A.ya(0,"platformDefault") +B.J2=new A.ya(1,"inAppWebView") +B.J3=new A.ya(2,"inAppBrowserView") +B.abU=new A.ya(3,"externalApplication") +B.J4=new A.ya(4,"externalNonBrowserApplication") +B.ob=new A.oI(0,"generic") +B.J5=new A.oI(1,"incrementable") +B.oc=new A.oI(2,"scrollable") +B.od=new A.oI(3,"button") +B.J6=new A.oI(4,"textField") +B.oe=new A.oI(5,"checkable") +B.J7=new A.oI(6,"image") +B.kJ=new A.oI(7,"dialog") +B.abV=new A.Dm(null,null,null,null,null) +B.abW=new A.Ds(null,null,null,null,null,null) +B.fz=new A.bq(1,1) +B.abX=new A.bq(15.5,15.5) +B.abY=new A.bq(1.5,1.5) +B.abZ=new A.a6O(null) +B.ac_=new A.a6P(null) +B.ac0=new A.a6Q(null) +B.ac1=new A.a6R(null) +B.ac2=new A.a6S(null) +B.ac3=new A.a6U(null) +B.ac4=new A.a6W(null) +B.ac5=new A.a6X(null) +B.J8=new A.Gw(1e5,10) +B.J9=new A.Gw(1e4,100) +B.Ja=new A.Gw(20,5e4) +B.ac6=new A.nH(!1,null) +B.Jb=new A.Sw(0,0,1) +B.ac7=new A.I(-1/0,-1/0,1/0,1/0) +B.hW=new A.I(-1e9,-1e9,1e9,1e9) +B.apf=new A.aOG(1,"onEdge") +B.Jc=new A.DC(0,"start") +B.oq=new A.DC(1,"stable") +B.ac8=new A.DC(2,"changed") +B.ac9=new A.DC(3,"unstable") +B.di=new A.ML(0,"identical") +B.aca=new A.ML(2,"paint") +B.bR=new A.ML(3,"layout") +B.fC=new A.DJ(0,"json") +B.or=new A.DJ(1,"stream") +B.acb=new A.DJ(2,"plain") +B.Jd=new A.DJ(3,"bytes") +B.acc=new A.yy(0,"focusable") +B.acd=new A.yy(1,"tappable") +B.ace=new A.yy(2,"labelAndValue") +B.acf=new A.yy(3,"liveRegion") +B.acg=new A.yy(4,"routeName") +B.et=new A.cE(B.aJ,B.t) +B.fA=new A.bq(28,28) +B.LO=new A.dg(B.fA,B.fA,B.I,B.I) +B.aci=new A.cE(B.LO,B.t) +B.LP=new A.dg(B.fz,B.fz,B.fz,B.fz) +B.ach=new A.cE(B.LP,B.t) +B.Je=new A.cE(B.iD,B.t) +B.es=new A.cE(B.fV,B.t) +B.Jh=new A.cE(B.bh,B.t) +B.Jf=new A.cE(B.q2,B.t) +B.os=new A.cE(B.cO,B.t) +B.LQ=new A.dg(B.fA,B.fA,B.fA,B.fA) +B.Jg=new A.cE(B.LQ,B.t) +B.Ji=new A.aQg(0,"none") +B.ot=new A.lm("",null,null) +B.Jj=new A.DL(0,"pop") +B.ack=new A.DL(1,"doNotPop") +B.acl=new A.DL(2,"bubble") +B.fD=new A.jM(null,null) +B.acm=new A.Na(1333) +B.ou=new A.Na(2222) +B.acn=new A.a7Z(null,null) +B.fE=new A.yB(0,"idle") +B.Jk=new A.yB(1,"transientCallbacks") +B.aco=new A.yB(2,"midFrameMicrotasks") +B.kQ=new A.yB(3,"persistentCallbacks") +B.Jl=new A.yB(4,"postFrameCallbacks") +B.N=new A.Ne(0,"englishLike") +B.eu=new A.Ne(1,"dense") +B.bG=new A.Ne(2,"tall") +B.fF=new A.Nj(0,"idle") +B.ov=new A.Nj(1,"forward") +B.ow=new A.Nj(2,"reverse") +B.apg=new A.yF(0,"explicit") +B.ev=new A.yF(1,"keepVisibleAtEnd") +B.ew=new A.yF(2,"keepVisibleAtStart") +B.ex=new A.a86(0,"manual") +B.acv=new A.a86(1,"onDrag") +B.acw=new A.No(0,"left") +B.acx=new A.No(1,"right") +B.acy=new A.No(3,"bottom") +B.acz=new A.Np(null,null,null,null,null,null,null,null,null,null,null,null) +B.acA=new A.Nq(null,null,null,null,null,null,null,null,null,null,null) +B.acB=new A.Nr(null,null,null,null,null,null,null,null,null) +B.acC=new A.Ns(null,null) +B.b2=new A.m3(0,"tap") +B.Jp=new A.m3(1,"doubleTap") +B.bz=new A.m3(2,"longPress") +B.hY=new A.m3(3,"forcePress") +B.be=new A.m3(5,"toolbar") +B.aD=new A.m3(6,"drag") +B.kT=new A.m3(7,"scribble") +B.Jq=new A.Nu(0,"startEdgeUpdate") +B.hZ=new A.Nu(1,"endEdgeUpdate") +B.kU=new A.DZ(0,"previousLine") +B.kV=new A.DZ(1,"nextLine") +B.i_=new A.DZ(2,"forward") +B.i0=new A.DZ(3,"backward") +B.fG=new A.Nv(2,"none") +B.acE=new A.uB(null,null,B.fG,B.nq,!1) +B.Jr=new A.uB(null,null,B.fG,B.nq,!0) +B.bZ=new A.uC(0,"next") +B.c_=new A.uC(1,"previous") +B.bA=new A.uC(2,"end") +B.oy=new A.uC(3,"pending") +B.i1=new A.uC(4,"none") +B.oz=new A.Nv(0,"uncollapsed") +B.acF=new A.Nv(1,"collapsed") +B.acG=new A.eU(1048576,"moveCursorBackwardByWord") +B.Js=new A.eU(128,"decrease") +B.acH=new A.eU(16384,"paste") +B.i2=new A.eU(16,"scrollUp") +B.ey=new A.eU(1,"tap") +B.acI=new A.eU(2048,"setSelection") +B.acJ=new A.eU(2097152,"setText") +B.acK=new A.eU(256,"showOnScreen") +B.acL=new A.eU(262144,"dismiss") +B.Jt=new A.eU(2,"longPress") +B.Ju=new A.eU(32768,"didGainAccessibilityFocus") +B.i3=new A.eU(32,"scrollDown") +B.acM=new A.eU(4096,"copy") +B.i4=new A.eU(4,"scrollLeft") +B.acN=new A.eU(512,"moveCursorForwardByCharacter") +B.acO=new A.eU(524288,"moveCursorForwardByWord") +B.Jv=new A.eU(64,"increase") +B.Jw=new A.eU(65536,"didLoseAccessibilityFocus") +B.acP=new A.eU(8192,"cut") +B.i5=new A.eU(8,"scrollRight") +B.acQ=new A.eU(1024,"moveCursorBackwardByCharacter") +B.Jx=new A.ex(1024,"isObscured") +B.Jy=new A.ex(1048576,"isReadOnly") +B.kW=new A.ex(128,"isEnabled") +B.oA=new A.ex(131072,"isToggled") +B.Jz=new A.ex(16384,"isImage") +B.acR=new A.ex(16777216,"isKeyboardKey") +B.JA=new A.ex(16,"isTextField") +B.kX=new A.ex(1,"hasCheckedState") +B.JB=new A.ex(2048,"scopesRoute") +B.JC=new A.ex(2097152,"isFocusable") +B.JD=new A.ex(256,"isInMutuallyExclusiveGroup") +B.acS=new A.ex(262144,"hasImplicitScrolling") +B.JE=new A.ex(2,"isChecked") +B.JF=new A.ex(32768,"isLiveRegion") +B.oB=new A.ex(32,"isFocused") +B.JG=new A.ex(33554432,"isCheckStateMixed") +B.JH=new A.ex(4096,"namesRoute") +B.acT=new A.ex(4194304,"isLink") +B.JI=new A.ex(4,"isSelected") +B.JJ=new A.ex(512,"isHeader") +B.JK=new A.ex(524288,"isMultiline") +B.kY=new A.ex(64,"hasEnabledState") +B.oC=new A.ex(65536,"hasToggledState") +B.kZ=new A.ex(8192,"isHidden") +B.JL=new A.ex(8388608,"isSlider") +B.JM=new A.ex(8,"isButton") +B.JN=new A.ne("RenderViewport.twoPane") +B.acU=new A.ne("RenderViewport.excludeFromScrolling") +B.acV=new A.ne("_InputDecoratorState.prefix") +B.acW=new A.ne("_InputDecoratorState.suffix") +B.JO=new A.NB(0,"idle") +B.acX=new A.NB(1,"updating") +B.acY=new A.NB(2,"postUpdate") +B.acZ=new A.a8n(null) +B.ad_=new A.a8o(null) +B.JP=new A.a8p(null) +B.ad0=new A.h6([B.bT,B.bo,B.eE],t.MA) +B.JQ=new A.h6([B.b8,B.cq,B.dQ,B.bF,B.d2],t.Lu) +B.ad1=new A.h6([B.A],t.b4) +B.aa3={click:0,keyup:1,keydown:2,mouseup:3,mousedown:4,pointerdown:5,pointerup:6} +B.ad2=new A.ke(B.aa3,7,t.fF) +B.ad3=new A.h6([32,8203],t.Ih) +B.aa_={click:0,touchstart:1,touchend:2,pointerdown:3,pointermove:4,pointerup:5} +B.ad4=new A.ke(B.aa_,6,t.fF) +B.aa8={javascript:0} +B.ad5=new A.ke(B.aa8,1,t.fF) +B.ad6=new A.h6([B.bT,B.eE],t.MA) +B.ad7=new A.h6([B.dQ,B.cq,B.b8,B.d2,B.bF],t.Lu) +B.ad8=new A.h6([B.y],t.b4) +B.aa0={"canvaskit.js":0} +B.ad9=new A.ke(B.aa0,1,t.fF) +B.ada=new A.h6([10,11,12,13,133,8232,8233],t.Ih) +B.fH=new A.h6([B.B],t.b4) +B.ez=new A.ke(B.cn,0,A.ah("ke")) +B.adb=new A.ke(B.cn,0,A.ah("ke")) +B.adc=new A.h6([B.K],t.b4) +B.aac={serif:0,"sans-serif":1,monospace:2,cursive:3,fantasy:4,"system-ui":5,math:6,emoji:7,fangsong:8} +B.add=new A.ke(B.aac,9,t.fF) +B.oD=new A.h6([B.d0,B.o2,B.Fr],A.ah("h6")) +B.ade=new A.a8q(null) +B.adf=new A.Ea(0,"ltr") +B.adg=new A.Ea(1,"rtl") +B.adh=new A.Ea(2,"ttb") +B.adi=new A.Ea(3,"btt") +B.adj=new A.a8w(null) +B.adk=new A.aT3(0,"onlyForDiscrete") +B.JU=new A.bj(B.cZ,!1,!0,!1,!1) +B.JR=new A.bj(B.cF,!1,!0,!1,!1) +B.JS=new A.bj(B.cG,!1,!0,!1,!1) +B.JT=new A.bj(B.d_,!1,!0,!1,!1) +B.adu=new A.bj(B.cZ,!1,!0,!1,!0) +B.adr=new A.bj(B.cF,!1,!0,!1,!0) +B.ads=new A.bj(B.cG,!1,!0,!1,!0) +B.adt=new A.bj(B.d_,!1,!0,!1,!0) +B.adq=new A.bj(B.cZ,!0,!0,!1,!1) +B.adp=new A.bj(B.d_,!0,!0,!1,!1) +B.ado=new A.bj(B.ek,!0,!0,!1,!1) +B.adn=new A.bj(B.el,!0,!0,!1,!1) +B.JY=new A.bj(B.cZ,!1,!0,!0,!1) +B.JV=new A.bj(B.cF,!1,!0,!0,!1) +B.JW=new A.bj(B.cG,!1,!0,!0,!1) +B.JX=new A.bj(B.d_,!1,!0,!0,!1) +B.adw=new A.bj(B.kn,!1,!1,!1,!1) +B.adD=new A.bj(B.A2,!1,!1,!1,!1) +B.adI=new A.bj(B.A6,!1,!1,!1,!1) +B.adH=new A.bj(B.A8,!1,!1,!1,!1) +B.adv=new A.bj(B.nA,!1,!0,!1,!1) +B.Kb=new A.bj(B.kn,!1,!1,!1,!0) +B.K9=new A.bj(B.nQ,!1,!1,!1,!0) +B.Ka=new A.bj(B.ny,!1,!1,!1,!0) +B.K8=new A.bj(B.nz,!1,!1,!1,!0) +B.adz=new A.bj(B.hz,!1,!1,!1,!0) +B.adA=new A.bj(B.hz,!1,!0,!1,!0) +B.oL=new A.bj(B.kn,!0,!1,!1,!1) +B.adE=new A.bj(B.EU,!0,!1,!1,!1) +B.Kd=new A.bj(B.nQ,!0,!1,!1,!1) +B.adB=new A.bj(B.A3,!0,!1,!1,!1) +B.adC=new A.bj(B.A4,!0,!1,!1,!1) +B.adF=new A.bj(B.A5,!0,!1,!1,!1) +B.adG=new A.bj(B.nx,!0,!1,!1,!1) +B.ady=new A.bj(B.A7,!0,!1,!1,!1) +B.Ke=new A.bj(B.ny,!0,!1,!1,!1) +B.Kc=new A.bj(B.nz,!0,!1,!1,!1) +B.adJ=new A.bj(B.hz,!0,!1,!1,!1) +B.adx=new A.bj(B.hz,!0,!0,!1,!1) +B.adL=new A.V(1e5,1e5) +B.adN=new A.V(10,10) +B.oM=new A.V(18,18) +B.adO=new A.V(20,20) +B.adP=new A.V(22,22) +B.adQ=new A.V(24,24) +B.Kf=new A.V(32,4) +B.adR=new A.V(34,22) +B.adS=new A.V(44,44) +B.adT=new A.V(48,36) +B.dV=new A.V(48,48) +B.adU=new A.V(56,56) +B.adV=new A.V(60,80) +B.oO=new A.V(64,36) +B.adX=new A.V(80,47.5) +B.ae_=new A.V(1/0,44) +B.adZ=new A.V(1/0,46) +B.adY=new A.V(1/0,64) +B.Kg=new A.V(77.37,37.9) +B.Kh=new A.ez(4,null,null,null) +B.ae0=new A.ez(null,104,null,null) +B.fI=new A.ez(null,16,null,null) +B.ae1=new A.ez(null,32,null,null) +B.ae2=new A.ez(null,6,null,null) +B.l5=new A.ez(null,8,null,null) +B.ae3=new A.ez(null,null,null,null) +B.ae4=new A.a8K(0,"tapAndSlide") +B.ae5=new A.a8K(2,"slideOnly") +B.ae6=new A.Ed(null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null) +B.oP=new A.a8Q(0,0,0,0,0,0,0,!1,!1,null,0) +B.ae7=new A.iy(B.u4,null) +B.oQ=new A.a8V(0,"disabled") +B.oR=new A.a8V(1,"enabled") +B.oS=new A.a8W(0,"disabled") +B.oT=new A.a8W(1,"enabled") +B.aph=new A.NR(3,"hide") +B.ae8=new A.NR(5,"timeout") +B.ae9=new A.NS(null,null,null,null,null,null,null,null,null,null,null,null,null) +B.Kk=new A.a8X(0,"permissive") +B.api=new A.a8X(1,"normal") +B.Kl=new A.a90(null) +B.aea=new A.a9_(null) +B.aeb=new A.a96(null) +B.aec=new A.a99(null) +B.oU=new A.a9r(null) +B.ia=new A.O2(null,null,null,null,!1) +B.aee=new A.O6(0,"criticallyDamped") +B.aef=new A.O6(1,"underDamped") +B.aeg=new A.O6(2,"overDamped") +B.aH=new A.a9v(0,"loose") +B.Km=new A.a9v(2,"passthrough") +B.aeh=new A.ni("...",-1,"","","",-1,-1,"","...") +B.aei=new A.ni("",-1,"","","",-1,-1,"","asynchronous suspension") +B.bS=new A.fe("") +B.dW=new A.Oh(0,"butt") +B.oV=new A.Oh(1,"round") +B.Ko=new A.Oh(2,"square") +B.l6=new A.a9G(0,"miter") +B.Kp=new A.a9G(1,"round") +B.aej=new A.Eu(null,null,null,null,null,null,null,null,null) +B.aek=new A.ea(0) +B.aev=new A.ea(0) +B.aet=new A.ea(0) +B.aer=new A.ea(0) +B.aes=new A.ea(0) +B.aeq=new A.ea(0) +B.aeu=new A.ea(0) +B.aep=new A.ea(0) +B.aem=new A.ea(0) +B.aeo=new A.ea(0) +B.ael=new A.ea(0) +B.aen=new A.ea(0) +B.aew=new A.ea(1) +B.aex=new A.ea(10) +B.aey=new A.ea(11) +B.aez=new A.ea(12) +B.aeA=new A.ea(13) +B.aeB=new A.ea(14) +B.aeC=new A.ea(15) +B.aeD=new A.ea(16) +B.aeE=new A.ea(2) +B.aeF=new A.ea(3) +B.aeG=new A.ea(4) +B.aeH=new A.ea(5) +B.aeI=new A.ea(6) +B.aeJ=new A.ea(7) +B.aeK=new A.ea(8) +B.aeL=new A.ea(9) +B.aeM=new A.a9J(null) +B.aeN=new A.EA(null,null,null,null,null,null,null,null,null) +B.aeO=new A.qV("call") +B.bn=new A.oW("basic") +B.bB=new A.oW("click") +B.oW=new A.oW("text") +B.aeP=new A.a9M(0,"click") +B.aeQ=new A.a9M(1,"alert") +B.Kq=new A.a9O(2,"immersiveSticky") +B.Kr=new A.a9O(4,"manual") +B.Ks=new A.oX(B.v,null,B.aB,null,null,B.am,B.aB,null) +B.Kt=new A.oX(B.v,null,B.aB,null,null,B.aB,B.am,null) +B.Ku=new A.Ol(0,"start") +B.aeT=new A.Ol(1,"startOffset") +B.oX=new A.Ol(2,"fill") +B.aeU=new A.a9P(0,"tab") +B.oY=new A.a9P(1,"label") +B.aeV=new A.z5(null,null,null,null,null,null,null,null,null,null,null,null,null) +B.oZ=new A.aX5("tap") +B.Kw=new A.a9Y(0) +B.Kx=new A.a9Y(-1) +B.J=new A.Ov(0,"alphabetic") +B.aeW=new A.Ow(null) +B.p1=new A.EG(3,"none") +B.Ky=new A.Oy(B.p1) +B.Kz=new A.EG(0,"words") +B.KA=new A.EG(1,"sentences") +B.KB=new A.EG(2,"characters") +B.dX=new A.aX7(3,"none") +B.k=new A.Oz(0) +B.aeY=new A.EL(0,"character") +B.aeZ=new A.EL(1,"word") +B.af_=new A.EL(2,"line") +B.af0=new A.EL(3,"document") +B.p4=new A.aa5(0,"proportional") +B.KE=new A.OC(B.p4) +B.af1=new A.jX(0,"none") +B.af2=new A.jX(1,"unspecified") +B.af3=new A.jX(10,"route") +B.af4=new A.jX(11,"emergencyCall") +B.KF=new A.jX(12,"newline") +B.p2=new A.jX(2,"done") +B.af5=new A.jX(3,"go") +B.af6=new A.jX(4,"search") +B.af7=new A.jX(5,"send") +B.af8=new A.jX(6,"next") +B.af9=new A.jX(7,"previous") +B.afa=new A.jX(8,"continueAction") +B.afb=new A.jX(9,"join") +B.KG=new A.EM(0,null,null) +B.p3=new A.EM(1,null,null) +B.afc=new A.EM(2,!1,!1) +B.W=new A.aa5(1,"even") +B.apj=new A.aa6(null,!0) +B.KH=new A.EN(1,"fade") +B.ac=new A.EN(2,"ellipsis") +B.afd=new A.EN(3,"visible") +B.ib=new A.bR(0,B.q) +B.l9=new A.OJ(0,"left") +B.la=new A.OJ(1,"right") +B.ic=new A.OJ(2,"collapsed") +B.afe=new A.OK(null,null,null) +B.aff=new A.OL(B.i,null) +B.KI=new A.i8(0,0,B.q,!1,0,0) +B.afF=new A.J(!0,B.bD,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null) +B.KC=new A.Oz(1) +B.KJ=new A.J(!0,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,B.KC,null,null,null,null,null,null,null,null) +B.afY=new A.J(!1,B.iY,null,".SF Pro Text",null,null,17,null,null,-0.41,null,null,null,null,null,null,null,B.k,null,null,null,null,null,null,null,null) +B.Qq=new A.M(4294937216) +B.Qp=new A.M(4294922834) +B.Qo=new A.M(4294907716) +B.Qd=new A.M(4292149248) +B.a6X=new A.dm([100,B.Qq,200,B.Qp,400,B.Qo,700,B.Qd],t.pl) +B.F9=new A.a38(B.a6X,4294922834) +B.agu=new A.J(!0,B.F9,null,null,null,null,null,B.G,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null) +B.KK=new A.J(!1,B.eZ,null,".SF Pro Text",null,null,17,B.t8,null,-0.41,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null) +B.agI=new A.J(!0,null,null,null,null,null,null,B.G,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null) +B.ie=new A.J(!0,null,null,null,null,null,null,B.eb,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null) +B.KL=new A.J(!1,B.eZ,null,".SF Pro Text",null,null,17,null,null,-0.41,null,null,null,null,null,null,null,B.k,null,null,null,null,null,null,null,null) +B.KM=new A.J(!1,null,null,null,null,null,14,B.G,null,-0.15,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null) +B.aik=new A.J(!1,null,null,null,null,null,15,B.G,null,-0.15,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null) +B.aiG=new A.J(!0,B.F9,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null) +B.aiS=new A.J(!0,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,B.ac) +B.Ps=new A.M(3506372608) +B.Qs=new A.M(4294967040) +B.aeX=new A.aX8(1,"double") +B.aj0=new A.J(!0,B.Ps,null,"monospace",null,null,48,B.t9,null,null,null,null,null,null,null,null,null,B.KC,B.Qs,B.aeX,null,"fallback style; consider putting your text in a Material",null,null,null,null) +B.afL=new A.J(!0,B.a6,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackRedwoodCity displayLarge",null,null,null,null) +B.aga=new A.J(!0,B.a6,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackRedwoodCity displayMedium",null,null,null,null) +B.afM=new A.J(!0,B.a6,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackRedwoodCity displaySmall",null,null,null,null) +B.afG=new A.J(!0,B.a6,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackRedwoodCity headlineLarge",null,null,null,null) +B.agW=new A.J(!0,B.a6,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackRedwoodCity headlineMedium",null,null,null,null) +B.ahm=new A.J(!0,B.a8,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackRedwoodCity headlineSmall",null,null,null,null) +B.ais=new A.J(!0,B.a8,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackRedwoodCity titleLarge",null,null,null,null) +B.aij=new A.J(!0,B.a8,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackRedwoodCity titleMedium",null,null,null,null) +B.aj_=new A.J(!0,B.v,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackRedwoodCity titleSmall",null,null,null,null) +B.aiT=new A.J(!0,B.a8,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackRedwoodCity bodyLarge",null,null,null,null) +B.ahk=new A.J(!0,B.a8,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackRedwoodCity bodyMedium",null,null,null,null) +B.aii=new A.J(!0,B.a6,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackRedwoodCity bodySmall",null,null,null,null) +B.aho=new A.J(!0,B.a8,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackRedwoodCity labelLarge",null,null,null,null) +B.agY=new A.J(!0,B.v,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackRedwoodCity labelMedium",null,null,null,null) +B.aiL=new A.J(!0,B.v,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackRedwoodCity labelSmall",null,null,null,null) +B.ajd=new A.ff(B.afL,B.aga,B.afM,B.afG,B.agW,B.ahm,B.ais,B.aij,B.aj_,B.aiT,B.ahk,B.aii,B.aho,B.agY,B.aiL) +B.afv=new A.J(!0,B.a6,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackMountainView displayLarge",null,null,null,null) +B.afW=new A.J(!0,B.a6,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackMountainView displayMedium",null,null,null,null) +B.agl=new A.J(!0,B.a6,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackMountainView displaySmall",null,null,null,null) +B.aiH=new A.J(!0,B.a6,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackMountainView headlineLarge",null,null,null,null) +B.aiY=new A.J(!0,B.a6,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackMountainView headlineMedium",null,null,null,null) +B.aiV=new A.J(!0,B.a8,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackMountainView headlineSmall",null,null,null,null) +B.agg=new A.J(!0,B.a8,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackMountainView titleLarge",null,null,null,null) +B.ait=new A.J(!0,B.a8,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackMountainView titleMedium",null,null,null,null) +B.ag5=new A.J(!0,B.v,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackMountainView titleSmall",null,null,null,null) +B.agd=new A.J(!0,B.a8,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackMountainView bodyLarge",null,null,null,null) +B.afS=new A.J(!0,B.a8,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackMountainView bodyMedium",null,null,null,null) +B.agk=new A.J(!0,B.a6,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackMountainView bodySmall",null,null,null,null) +B.aj6=new A.J(!0,B.a8,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackMountainView labelLarge",null,null,null,null) +B.ahR=new A.J(!0,B.v,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackMountainView labelMedium",null,null,null,null) +B.aht=new A.J(!0,B.v,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackMountainView labelSmall",null,null,null,null) +B.aje=new A.ff(B.afv,B.afW,B.agl,B.aiH,B.aiY,B.aiV,B.agg,B.ait,B.ag5,B.agd,B.afS,B.agk,B.aj6,B.ahR,B.aht) +B.ap=new A.Ov(1,"ideographic") +B.aj9=new A.J(!1,null,null,null,null,null,57,B.G,null,-0.25,null,B.ap,1.12,B.W,null,null,null,null,null,null,null,"dense displayLarge 2021",null,null,null,null) +B.afx=new A.J(!1,null,null,null,null,null,45,B.G,null,0,null,B.ap,1.16,B.W,null,null,null,null,null,null,null,"dense displayMedium 2021",null,null,null,null) +B.aj4=new A.J(!1,null,null,null,null,null,36,B.G,null,0,null,B.ap,1.22,B.W,null,null,null,null,null,null,null,"dense displaySmall 2021",null,null,null,null) +B.agq=new A.J(!1,null,null,null,null,null,32,B.G,null,0,null,B.ap,1.25,B.W,null,null,null,null,null,null,null,"dense headlineLarge 2021",null,null,null,null) +B.aiq=new A.J(!1,null,null,null,null,null,28,B.G,null,0,null,B.ap,1.29,B.W,null,null,null,null,null,null,null,"dense headlineMedium 2021",null,null,null,null) +B.agN=new A.J(!1,null,null,null,null,null,24,B.G,null,0,null,B.ap,1.33,B.W,null,null,null,null,null,null,null,"dense headlineSmall 2021",null,null,null,null) +B.ah3=new A.J(!1,null,null,null,null,null,22,B.G,null,0,null,B.ap,1.27,B.W,null,null,null,null,null,null,null,"dense titleLarge 2021",null,null,null,null) +B.ahU=new A.J(!1,null,null,null,null,null,16,B.aC,null,0.15,null,B.ap,1.5,B.W,null,null,null,null,null,null,null,"dense titleMedium 2021",null,null,null,null) +B.aiw=new A.J(!1,null,null,null,null,null,14,B.aC,null,0.1,null,B.ap,1.43,B.W,null,null,null,null,null,null,null,"dense titleSmall 2021",null,null,null,null) +B.aid=new A.J(!1,null,null,null,null,null,16,B.G,null,0.5,null,B.ap,1.5,B.W,null,null,null,null,null,null,null,"dense bodyLarge 2021",null,null,null,null) +B.aif=new A.J(!1,null,null,null,null,null,14,B.G,null,0.25,null,B.ap,1.43,B.W,null,null,null,null,null,null,null,"dense bodyMedium 2021",null,null,null,null) +B.ahZ=new A.J(!1,null,null,null,null,null,12,B.G,null,0.4,null,B.ap,1.33,B.W,null,null,null,null,null,null,null,"dense bodySmall 2021",null,null,null,null) +B.ag6=new A.J(!1,null,null,null,null,null,14,B.aC,null,0.1,null,B.ap,1.43,B.W,null,null,null,null,null,null,null,"dense labelLarge 2021",null,null,null,null) +B.afZ=new A.J(!1,null,null,null,null,null,12,B.aC,null,0.5,null,B.ap,1.33,B.W,null,null,null,null,null,null,null,"dense labelMedium 2021",null,null,null,null) +B.ah9=new A.J(!1,null,null,null,null,null,11,B.aC,null,0.5,null,B.ap,1.45,B.W,null,null,null,null,null,null,null,"dense labelSmall 2021",null,null,null,null) +B.ajf=new A.ff(B.aj9,B.afx,B.aj4,B.agq,B.aiq,B.agN,B.ah3,B.ahU,B.aiw,B.aid,B.aif,B.ahZ,B.ag6,B.afZ,B.ah9) +B.afp=new A.J(!0,B.a7,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteRedwoodCity displayLarge",null,null,null,null) +B.agi=new A.J(!0,B.a7,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteRedwoodCity displayMedium",null,null,null,null) +B.afq=new A.J(!0,B.a7,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteRedwoodCity displaySmall",null,null,null,null) +B.afK=new A.J(!0,B.a7,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteRedwoodCity headlineLarge",null,null,null,null) +B.afP=new A.J(!0,B.a7,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteRedwoodCity headlineMedium",null,null,null,null) +B.aig=new A.J(!0,B.n,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteRedwoodCity headlineSmall",null,null,null,null) +B.agv=new A.J(!0,B.n,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteRedwoodCity titleLarge",null,null,null,null) +B.agJ=new A.J(!0,B.n,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteRedwoodCity titleMedium",null,null,null,null) +B.ah8=new A.J(!0,B.n,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteRedwoodCity titleSmall",null,null,null,null) +B.ahF=new A.J(!0,B.n,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteRedwoodCity bodyLarge",null,null,null,null) +B.agR=new A.J(!0,B.n,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteRedwoodCity bodyMedium",null,null,null,null) +B.aim=new A.J(!0,B.a7,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteRedwoodCity bodySmall",null,null,null,null) +B.aie=new A.J(!0,B.n,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteRedwoodCity labelLarge",null,null,null,null) +B.agy=new A.J(!0,B.n,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteRedwoodCity labelMedium",null,null,null,null) +B.ahG=new A.J(!0,B.n,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteRedwoodCity labelSmall",null,null,null,null) +B.ajg=new A.ff(B.afp,B.agi,B.afq,B.afK,B.afP,B.aig,B.agv,B.agJ,B.ah8,B.ahF,B.agR,B.aim,B.aie,B.agy,B.ahG) +B.an=A.a(s(["Ubuntu","Cantarell","DejaVu Sans","Liberation Sans","Arial"]),t.s) +B.ahs=new A.J(!0,B.a6,null,"Roboto",B.an,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackHelsinki displayLarge",null,null,null,null) +B.ahQ=new A.J(!0,B.a6,null,"Roboto",B.an,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackHelsinki displayMedium",null,null,null,null) +B.ahd=new A.J(!0,B.a6,null,"Roboto",B.an,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackHelsinki displaySmall",null,null,null,null) +B.ag0=new A.J(!0,B.a6,null,"Roboto",B.an,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackHelsinki headlineLarge",null,null,null,null) +B.agw=new A.J(!0,B.a6,null,"Roboto",B.an,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackHelsinki headlineMedium",null,null,null,null) +B.agK=new A.J(!0,B.a8,null,"Roboto",B.an,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackHelsinki headlineSmall",null,null,null,null) +B.ai7=new A.J(!0,B.a8,null,"Roboto",B.an,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackHelsinki titleLarge",null,null,null,null) +B.ag3=new A.J(!0,B.a8,null,"Roboto",B.an,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackHelsinki titleMedium",null,null,null,null) +B.afm=new A.J(!0,B.v,null,"Roboto",B.an,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackHelsinki titleSmall",null,null,null,null) +B.aiM=new A.J(!0,B.a8,null,"Roboto",B.an,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackHelsinki bodyLarge",null,null,null,null) +B.afg=new A.J(!0,B.a8,null,"Roboto",B.an,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackHelsinki bodyMedium",null,null,null,null) +B.ahE=new A.J(!0,B.a6,null,"Roboto",B.an,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackHelsinki bodySmall",null,null,null,null) +B.age=new A.J(!0,B.a8,null,"Roboto",B.an,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackHelsinki labelLarge",null,null,null,null) +B.ahw=new A.J(!0,B.v,null,"Roboto",B.an,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackHelsinki labelMedium",null,null,null,null) +B.aj1=new A.J(!0,B.v,null,"Roboto",B.an,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackHelsinki labelSmall",null,null,null,null) +B.ajh=new A.ff(B.ahs,B.ahQ,B.ahd,B.ag0,B.agw,B.agK,B.ai7,B.ag3,B.afm,B.aiM,B.afg,B.ahE,B.age,B.ahw,B.aj1) +B.afC=new A.J(!1,null,null,null,null,null,57,B.G,null,-0.25,null,B.J,1.12,B.W,null,null,null,null,null,null,null,"tall displayLarge 2021",null,null,null,null) +B.agf=new A.J(!1,null,null,null,null,null,45,B.G,null,0,null,B.J,1.16,B.W,null,null,null,null,null,null,null,"tall displayMedium 2021",null,null,null,null) +B.aiC=new A.J(!1,null,null,null,null,null,36,B.G,null,0,null,B.J,1.22,B.W,null,null,null,null,null,null,null,"tall displaySmall 2021",null,null,null,null) +B.ag2=new A.J(!1,null,null,null,null,null,32,B.G,null,0,null,B.J,1.25,B.W,null,null,null,null,null,null,null,"tall headlineLarge 2021",null,null,null,null) +B.aio=new A.J(!1,null,null,null,null,null,28,B.G,null,0,null,B.J,1.29,B.W,null,null,null,null,null,null,null,"tall headlineMedium 2021",null,null,null,null) +B.afN=new A.J(!1,null,null,null,null,null,24,B.G,null,0,null,B.J,1.33,B.W,null,null,null,null,null,null,null,"tall headlineSmall 2021",null,null,null,null) +B.aiO=new A.J(!1,null,null,null,null,null,22,B.G,null,0,null,B.J,1.27,B.W,null,null,null,null,null,null,null,"tall titleLarge 2021",null,null,null,null) +B.aiy=new A.J(!1,null,null,null,null,null,16,B.aC,null,0.15,null,B.J,1.5,B.W,null,null,null,null,null,null,null,"tall titleMedium 2021",null,null,null,null) +B.afI=new A.J(!1,null,null,null,null,null,14,B.aC,null,0.1,null,B.J,1.43,B.W,null,null,null,null,null,null,null,"tall titleSmall 2021",null,null,null,null) +B.agp=new A.J(!1,null,null,null,null,null,16,B.G,null,0.5,null,B.J,1.5,B.W,null,null,null,null,null,null,null,"tall bodyLarge 2021",null,null,null,null) +B.aiu=new A.J(!1,null,null,null,null,null,14,B.G,null,0.25,null,B.J,1.43,B.W,null,null,null,null,null,null,null,"tall bodyMedium 2021",null,null,null,null) +B.ai9=new A.J(!1,null,null,null,null,null,12,B.G,null,0.4,null,B.J,1.33,B.W,null,null,null,null,null,null,null,"tall bodySmall 2021",null,null,null,null) +B.ahI=new A.J(!1,null,null,null,null,null,14,B.aC,null,0.1,null,B.J,1.43,B.W,null,null,null,null,null,null,null,"tall labelLarge 2021",null,null,null,null) +B.aiB=new A.J(!1,null,null,null,null,null,12,B.aC,null,0.5,null,B.J,1.33,B.W,null,null,null,null,null,null,null,"tall labelMedium 2021",null,null,null,null) +B.afD=new A.J(!1,null,null,null,null,null,11,B.aC,null,0.5,null,B.J,1.45,B.W,null,null,null,null,null,null,null,"tall labelSmall 2021",null,null,null,null) +B.aji=new A.ff(B.afC,B.agf,B.aiC,B.ag2,B.aio,B.afN,B.aiO,B.aiy,B.afI,B.agp,B.aiu,B.ai9,B.ahI,B.aiB,B.afD) +B.ahS=new A.J(!0,B.a7,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteRedmond displayLarge",null,null,null,null) +B.agZ=new A.J(!0,B.a7,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteRedmond displayMedium",null,null,null,null) +B.agt=new A.J(!0,B.a7,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteRedmond displaySmall",null,null,null,null) +B.aiU=new A.J(!0,B.a7,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteRedmond headlineLarge",null,null,null,null) +B.afT=new A.J(!0,B.a7,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteRedmond headlineMedium",null,null,null,null) +B.afA=new A.J(!0,B.n,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteRedmond headlineSmall",null,null,null,null) +B.agF=new A.J(!0,B.n,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteRedmond titleLarge",null,null,null,null) +B.ahn=new A.J(!0,B.n,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteRedmond titleMedium",null,null,null,null) +B.agO=new A.J(!0,B.n,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteRedmond titleSmall",null,null,null,null) +B.ah4=new A.J(!0,B.n,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteRedmond bodyLarge",null,null,null,null) +B.aia=new A.J(!0,B.n,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteRedmond bodyMedium",null,null,null,null) +B.afE=new A.J(!0,B.a7,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteRedmond bodySmall",null,null,null,null) +B.ahC=new A.J(!0,B.n,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteRedmond labelLarge",null,null,null,null) +B.agT=new A.J(!0,B.n,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteRedmond labelMedium",null,null,null,null) +B.aix=new A.J(!0,B.n,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteRedmond labelSmall",null,null,null,null) +B.ajj=new A.ff(B.ahS,B.agZ,B.agt,B.aiU,B.afT,B.afA,B.agF,B.ahn,B.agO,B.ah4,B.aia,B.afE,B.ahC,B.agT,B.aix) +B.ahj=new A.J(!0,B.a7,null,".SF UI Display",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteCupertino displayLarge",null,null,null,null) +B.ai8=new A.J(!0,B.a7,null,".SF UI Display",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteCupertino displayMedium",null,null,null,null) +B.agH=new A.J(!0,B.a7,null,".SF UI Display",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteCupertino displaySmall",null,null,null,null) +B.ah2=new A.J(!0,B.a7,null,".SF UI Display",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteCupertino headlineLarge",null,null,null,null) +B.ag9=new A.J(!0,B.a7,null,".SF UI Display",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteCupertino headlineMedium",null,null,null,null) +B.ah0=new A.J(!0,B.n,null,".SF UI Display",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteCupertino headlineSmall",null,null,null,null) +B.agh=new A.J(!0,B.n,null,".SF UI Display",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteCupertino titleLarge",null,null,null,null) +B.ahV=new A.J(!0,B.n,null,".SF UI Text",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteCupertino titleMedium",null,null,null,null) +B.ags=new A.J(!0,B.n,null,".SF UI Text",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteCupertino titleSmall",null,null,null,null) +B.agL=new A.J(!0,B.n,null,".SF UI Text",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteCupertino bodyLarge",null,null,null,null) +B.ah_=new A.J(!0,B.n,null,".SF UI Text",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteCupertino bodyMedium",null,null,null,null) +B.afO=new A.J(!0,B.a7,null,".SF UI Text",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteCupertino bodySmall",null,null,null,null) +B.ai4=new A.J(!0,B.n,null,".SF UI Text",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteCupertino labelLarge",null,null,null,null) +B.ah6=new A.J(!0,B.n,null,".SF UI Text",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteCupertino labelMedium",null,null,null,null) +B.ahP=new A.J(!0,B.n,null,".SF UI Text",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteCupertino labelSmall",null,null,null,null) +B.ajk=new A.ff(B.ahj,B.ai8,B.agH,B.ah2,B.ag9,B.ah0,B.agh,B.ahV,B.ags,B.agL,B.ah_,B.afO,B.ai4,B.ah6,B.ahP) +B.ahK=new A.J(!1,null,null,null,null,null,112,B.G,null,null,null,B.J,null,null,null,null,null,null,null,null,null,"tall displayLarge 2014",null,null,null,null) +B.aiQ=new A.J(!1,null,null,null,null,null,56,B.G,null,null,null,B.J,null,null,null,null,null,null,null,null,null,"tall displayMedium 2014",null,null,null,null) +B.ahu=new A.J(!1,null,null,null,null,null,45,B.G,null,null,null,B.J,null,null,null,null,null,null,null,null,null,"tall displaySmall 2014",null,null,null,null) +B.ahg=new A.J(!1,null,null,null,null,null,40,B.G,null,null,null,B.J,null,null,null,null,null,null,null,null,null,"tall headlineLarge 2014",null,null,null,null) +B.aiW=new A.J(!1,null,null,null,null,null,34,B.G,null,null,null,B.J,null,null,null,null,null,null,null,null,null,"tall headlineMedium 2014",null,null,null,null) +B.ai0=new A.J(!1,null,null,null,null,null,24,B.G,null,null,null,B.J,null,null,null,null,null,null,null,null,null,"tall headlineSmall 2014",null,null,null,null) +B.afH=new A.J(!1,null,null,null,null,null,21,B.eb,null,null,null,B.J,null,null,null,null,null,null,null,null,null,"tall titleLarge 2014",null,null,null,null) +B.afl=new A.J(!1,null,null,null,null,null,17,B.G,null,null,null,B.J,null,null,null,null,null,null,null,null,null,"tall titleMedium 2014",null,null,null,null) +B.aiJ=new A.J(!1,null,null,null,null,null,15,B.aC,null,null,null,B.J,null,null,null,null,null,null,null,null,null,"tall titleSmall 2014",null,null,null,null) +B.ain=new A.J(!1,null,null,null,null,null,15,B.eb,null,null,null,B.J,null,null,null,null,null,null,null,null,null,"tall bodyLarge 2014",null,null,null,null) +B.afh=new A.J(!1,null,null,null,null,null,15,B.G,null,null,null,B.J,null,null,null,null,null,null,null,null,null,"tall bodyMedium 2014",null,null,null,null) +B.agG=new A.J(!1,null,null,null,null,null,13,B.G,null,null,null,B.J,null,null,null,null,null,null,null,null,null,"tall bodySmall 2014",null,null,null,null) +B.aiD=new A.J(!1,null,null,null,null,null,15,B.eb,null,null,null,B.J,null,null,null,null,null,null,null,null,null,"tall labelLarge 2014",null,null,null,null) +B.ahO=new A.J(!1,null,null,null,null,null,12,B.G,null,null,null,B.J,null,null,null,null,null,null,null,null,null,"tall labelMedium 2014",null,null,null,null) +B.agr=new A.J(!1,null,null,null,null,null,11,B.G,null,null,null,B.J,null,null,null,null,null,null,null,null,null,"tall labelSmall 2014",null,null,null,null) +B.ajl=new A.ff(B.ahK,B.aiQ,B.ahu,B.ahg,B.aiW,B.ai0,B.afH,B.afl,B.aiJ,B.ain,B.afh,B.agG,B.aiD,B.ahO,B.agr) +B.afk=new A.J(!1,null,null,null,null,null,57,B.G,null,-0.25,null,B.J,1.12,B.W,null,null,null,null,null,null,null,"englishLike displayLarge 2021",null,null,null,null) +B.agn=new A.J(!1,null,null,null,null,null,45,B.G,null,0,null,B.J,1.16,B.W,null,null,null,null,null,null,null,"englishLike displayMedium 2021",null,null,null,null) +B.ahl=new A.J(!1,null,null,null,null,null,36,B.G,null,0,null,B.J,1.22,B.W,null,null,null,null,null,null,null,"englishLike displaySmall 2021",null,null,null,null) +B.ahr=new A.J(!1,null,null,null,null,null,32,B.G,null,0,null,B.J,1.25,B.W,null,null,null,null,null,null,null,"englishLike headlineLarge 2021",null,null,null,null) +B.ahi=new A.J(!1,null,null,null,null,null,28,B.G,null,0,null,B.J,1.29,B.W,null,null,null,null,null,null,null,"englishLike headlineMedium 2021",null,null,null,null) +B.agC=new A.J(!1,null,null,null,null,null,24,B.G,null,0,null,B.J,1.33,B.W,null,null,null,null,null,null,null,"englishLike headlineSmall 2021",null,null,null,null) +B.aic=new A.J(!1,null,null,null,null,null,22,B.G,null,0,null,B.J,1.27,B.W,null,null,null,null,null,null,null,"englishLike titleLarge 2021",null,null,null,null) +B.agE=new A.J(!1,null,null,null,null,null,16,B.aC,null,0.15,null,B.J,1.5,B.W,null,null,null,null,null,null,null,"englishLike titleMedium 2021",null,null,null,null) +B.ahM=new A.J(!1,null,null,null,null,null,14,B.aC,null,0.1,null,B.J,1.43,B.W,null,null,null,null,null,null,null,"englishLike titleSmall 2021",null,null,null,null) +B.agU=new A.J(!1,null,null,null,null,null,16,B.G,null,0.5,null,B.J,1.5,B.W,null,null,null,null,null,null,null,"englishLike bodyLarge 2021",null,null,null,null) +B.ahW=new A.J(!1,null,null,null,null,null,14,B.G,null,0.25,null,B.J,1.43,B.W,null,null,null,null,null,null,null,"englishLike bodyMedium 2021",null,null,null,null) +B.aiF=new A.J(!1,null,null,null,null,null,12,B.G,null,0.4,null,B.J,1.33,B.W,null,null,null,null,null,null,null,"englishLike bodySmall 2021",null,null,null,null) +B.aiA=new A.J(!1,null,null,null,null,null,14,B.aC,null,0.1,null,B.J,1.43,B.W,null,null,null,null,null,null,null,"englishLike labelLarge 2021",null,null,null,null) +B.afr=new A.J(!1,null,null,null,null,null,12,B.aC,null,0.5,null,B.J,1.33,B.W,null,null,null,null,null,null,null,"englishLike labelMedium 2021",null,null,null,null) +B.agA=new A.J(!1,null,null,null,null,null,11,B.aC,null,0.5,null,B.J,1.45,B.W,null,null,null,null,null,null,null,"englishLike labelSmall 2021",null,null,null,null) +B.ajm=new A.ff(B.afk,B.agn,B.ahl,B.ahr,B.ahi,B.agC,B.aic,B.agE,B.ahM,B.agU,B.ahW,B.aiF,B.aiA,B.afr,B.agA) +B.ago=new A.J(!1,null,null,null,null,null,112,B.mW,null,null,null,B.ap,null,null,null,null,null,null,null,null,null,"dense displayLarge 2014",null,null,null,null) +B.afj=new A.J(!1,null,null,null,null,null,56,B.G,null,null,null,B.ap,null,null,null,null,null,null,null,null,null,"dense displayMedium 2014",null,null,null,null) +B.agx=new A.J(!1,null,null,null,null,null,45,B.G,null,null,null,B.ap,null,null,null,null,null,null,null,null,null,"dense displaySmall 2014",null,null,null,null) +B.agD=new A.J(!1,null,null,null,null,null,40,B.G,null,null,null,B.ap,null,null,null,null,null,null,null,null,null,"dense headlineLarge 2014",null,null,null,null) +B.aja=new A.J(!1,null,null,null,null,null,34,B.G,null,null,null,B.ap,null,null,null,null,null,null,null,null,null,"dense headlineMedium 2014",null,null,null,null) +B.ai1=new A.J(!1,null,null,null,null,null,24,B.G,null,null,null,B.ap,null,null,null,null,null,null,null,null,null,"dense headlineSmall 2014",null,null,null,null) +B.ai3=new A.J(!1,null,null,null,null,null,21,B.aC,null,null,null,B.ap,null,null,null,null,null,null,null,null,null,"dense titleLarge 2014",null,null,null,null) +B.ah1=new A.J(!1,null,null,null,null,null,17,B.G,null,null,null,B.ap,null,null,null,null,null,null,null,null,null,"dense titleMedium 2014",null,null,null,null) +B.aiX=new A.J(!1,null,null,null,null,null,15,B.aC,null,null,null,B.ap,null,null,null,null,null,null,null,null,null,"dense titleSmall 2014",null,null,null,null) +B.ahq=new A.J(!1,null,null,null,null,null,15,B.aC,null,null,null,B.ap,null,null,null,null,null,null,null,null,null,"dense bodyLarge 2014",null,null,null,null) +B.ahT=new A.J(!1,null,null,null,null,null,15,B.G,null,null,null,B.ap,null,null,null,null,null,null,null,null,null,"dense bodyMedium 2014",null,null,null,null) +B.afo=new A.J(!1,null,null,null,null,null,13,B.G,null,null,null,B.ap,null,null,null,null,null,null,null,null,null,"dense bodySmall 2014",null,null,null,null) +B.ag1=new A.J(!1,null,null,null,null,null,15,B.aC,null,null,null,B.ap,null,null,null,null,null,null,null,null,null,"dense labelLarge 2014",null,null,null,null) +B.aj5=new A.J(!1,null,null,null,null,null,12,B.G,null,null,null,B.ap,null,null,null,null,null,null,null,null,null,"dense labelMedium 2014",null,null,null,null) +B.afB=new A.J(!1,null,null,null,null,null,11,B.G,null,null,null,B.ap,null,null,null,null,null,null,null,null,null,"dense labelSmall 2014",null,null,null,null) +B.ajn=new A.ff(B.ago,B.afj,B.agx,B.agD,B.aja,B.ai1,B.ai3,B.ah1,B.aiX,B.ahq,B.ahT,B.afo,B.ag1,B.aj5,B.afB) +B.ahe=new A.J(!0,B.a6,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackRedmond displayLarge",null,null,null,null) +B.agm=new A.J(!0,B.a6,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackRedmond displayMedium",null,null,null,null) +B.aiN=new A.J(!0,B.a6,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackRedmond displaySmall",null,null,null,null) +B.afQ=new A.J(!0,B.a6,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackRedmond headlineLarge",null,null,null,null) +B.aip=new A.J(!0,B.a6,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackRedmond headlineMedium",null,null,null,null) +B.afs=new A.J(!0,B.a8,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackRedmond headlineSmall",null,null,null,null) +B.agP=new A.J(!0,B.a8,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackRedmond titleLarge",null,null,null,null) +B.ah5=new A.J(!0,B.a8,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackRedmond titleMedium",null,null,null,null) +B.afi=new A.J(!0,B.v,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackRedmond titleSmall",null,null,null,null) +B.ahY=new A.J(!0,B.a8,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackRedmond bodyLarge",null,null,null,null) +B.afR=new A.J(!0,B.a8,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackRedmond bodyMedium",null,null,null,null) +B.aj2=new A.J(!0,B.a6,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackRedmond bodySmall",null,null,null,null) +B.ah7=new A.J(!0,B.a8,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackRedmond labelLarge",null,null,null,null) +B.afJ=new A.J(!0,B.v,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackRedmond labelMedium",null,null,null,null) +B.afU=new A.J(!0,B.v,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackRedmond labelSmall",null,null,null,null) +B.ajo=new A.ff(B.ahe,B.agm,B.aiN,B.afQ,B.aip,B.afs,B.agP,B.ah5,B.afi,B.ahY,B.afR,B.aj2,B.ah7,B.afJ,B.afU) +B.ahc=new A.J(!1,null,null,null,null,null,112,B.mW,null,null,null,B.J,null,null,null,null,null,null,null,null,null,"englishLike displayLarge 2014",null,null,null,null) +B.agQ=new A.J(!1,null,null,null,null,null,56,B.G,null,null,null,B.J,null,null,null,null,null,null,null,null,null,"englishLike displayMedium 2014",null,null,null,null) +B.aj8=new A.J(!1,null,null,null,null,null,45,B.G,null,null,null,B.J,null,null,null,null,null,null,null,null,null,"englishLike displaySmall 2014",null,null,null,null) +B.ahH=new A.J(!1,null,null,null,null,null,40,B.G,null,null,null,B.J,null,null,null,null,null,null,null,null,null,"englishLike headlineLarge 2014",null,null,null,null) +B.ahD=new A.J(!1,null,null,null,null,null,34,B.G,null,null,null,B.J,null,null,null,null,null,null,null,null,null,"englishLike headlineMedium 2014",null,null,null,null) +B.aib=new A.J(!1,null,null,null,null,null,24,B.G,null,null,null,B.J,null,null,null,null,null,null,null,null,null,"englishLike headlineSmall 2014",null,null,null,null) +B.agz=new A.J(!1,null,null,null,null,null,20,B.aC,null,null,null,B.J,null,null,null,null,null,null,null,null,null,"englishLike titleLarge 2014",null,null,null,null) +B.ahJ=new A.J(!1,null,null,null,null,null,16,B.G,null,null,null,B.J,null,null,null,null,null,null,null,null,null,"englishLike titleMedium 2014",null,null,null,null) +B.ahz=new A.J(!1,null,null,null,null,null,14,B.aC,null,0.1,null,B.J,null,null,null,null,null,null,null,null,null,"englishLike titleSmall 2014",null,null,null,null) +B.agS=new A.J(!1,null,null,null,null,null,14,B.aC,null,null,null,B.J,null,null,null,null,null,null,null,null,null,"englishLike bodyLarge 2014",null,null,null,null) +B.ai5=new A.J(!1,null,null,null,null,null,14,B.G,null,null,null,B.J,null,null,null,null,null,null,null,null,null,"englishLike bodyMedium 2014",null,null,null,null) +B.afw=new A.J(!1,null,null,null,null,null,12,B.G,null,null,null,B.J,null,null,null,null,null,null,null,null,null,"englishLike bodySmall 2014",null,null,null,null) +B.afu=new A.J(!1,null,null,null,null,null,14,B.aC,null,null,null,B.J,null,null,null,null,null,null,null,null,null,"englishLike labelLarge 2014",null,null,null,null) +B.aiZ=new A.J(!1,null,null,null,null,null,12,B.G,null,null,null,B.J,null,null,null,null,null,null,null,null,null,"englishLike labelMedium 2014",null,null,null,null) +B.ai_=new A.J(!1,null,null,null,null,null,10,B.G,null,1.5,null,B.J,null,null,null,null,null,null,null,null,null,"englishLike labelSmall 2014",null,null,null,null) +B.ajp=new A.ff(B.ahc,B.agQ,B.aj8,B.ahH,B.ahD,B.aib,B.agz,B.ahJ,B.ahz,B.agS,B.ai5,B.afw,B.afu,B.aiZ,B.ai_) +B.agX=new A.J(!0,B.a7,null,"Roboto",B.an,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteHelsinki displayLarge",null,null,null,null) +B.aha=new A.J(!0,B.a7,null,"Roboto",B.an,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteHelsinki displayMedium",null,null,null,null) +B.aiz=new A.J(!0,B.a7,null,"Roboto",B.an,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteHelsinki displaySmall",null,null,null,null) +B.ai2=new A.J(!0,B.a7,null,"Roboto",B.an,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteHelsinki headlineLarge",null,null,null,null) +B.aj3=new A.J(!0,B.a7,null,"Roboto",B.an,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteHelsinki headlineMedium",null,null,null,null) +B.ahh=new A.J(!0,B.n,null,"Roboto",B.an,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteHelsinki headlineSmall",null,null,null,null) +B.ag7=new A.J(!0,B.n,null,"Roboto",B.an,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteHelsinki titleLarge",null,null,null,null) +B.ajb=new A.J(!0,B.n,null,"Roboto",B.an,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteHelsinki titleMedium",null,null,null,null) +B.afX=new A.J(!0,B.n,null,"Roboto",B.an,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteHelsinki titleSmall",null,null,null,null) +B.afn=new A.J(!0,B.n,null,"Roboto",B.an,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteHelsinki bodyLarge",null,null,null,null) +B.agM=new A.J(!0,B.n,null,"Roboto",B.an,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteHelsinki bodyMedium",null,null,null,null) +B.agj=new A.J(!0,B.a7,null,"Roboto",B.an,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteHelsinki bodySmall",null,null,null,null) +B.afy=new A.J(!0,B.n,null,"Roboto",B.an,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteHelsinki labelLarge",null,null,null,null) +B.ahf=new A.J(!0,B.n,null,"Roboto",B.an,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteHelsinki labelMedium",null,null,null,null) +B.afz=new A.J(!0,B.n,null,"Roboto",B.an,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteHelsinki labelSmall",null,null,null,null) +B.ajq=new A.ff(B.agX,B.aha,B.aiz,B.ai2,B.aj3,B.ahh,B.ag7,B.ajb,B.afX,B.afn,B.agM,B.agj,B.afy,B.ahf,B.afz) +B.agV=new A.J(!0,B.a6,null,".SF UI Display",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackCupertino displayLarge",null,null,null,null) +B.ai6=new A.J(!0,B.a6,null,".SF UI Display",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackCupertino displayMedium",null,null,null,null) +B.ahB=new A.J(!0,B.a6,null,".SF UI Display",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackCupertino displaySmall",null,null,null,null) +B.ahL=new A.J(!0,B.a6,null,".SF UI Display",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackCupertino headlineLarge",null,null,null,null) +B.aft=new A.J(!0,B.a6,null,".SF UI Display",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackCupertino headlineMedium",null,null,null,null) +B.ahv=new A.J(!0,B.a8,null,".SF UI Display",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackCupertino headlineSmall",null,null,null,null) +B.agc=new A.J(!0,B.a8,null,".SF UI Display",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackCupertino titleLarge",null,null,null,null) +B.ahy=new A.J(!0,B.a8,null,".SF UI Text",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackCupertino titleMedium",null,null,null,null) +B.afV=new A.J(!0,B.v,null,".SF UI Text",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackCupertino titleSmall",null,null,null,null) +B.aiK=new A.J(!0,B.a8,null,".SF UI Text",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackCupertino bodyLarge",null,null,null,null) +B.ail=new A.J(!0,B.a8,null,".SF UI Text",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackCupertino bodyMedium",null,null,null,null) +B.ahp=new A.J(!0,B.a6,null,".SF UI Text",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackCupertino bodySmall",null,null,null,null) +B.agb=new A.J(!0,B.a8,null,".SF UI Text",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackCupertino labelLarge",null,null,null,null) +B.ag4=new A.J(!0,B.v,null,".SF UI Text",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackCupertino labelMedium",null,null,null,null) +B.aih=new A.J(!0,B.v,null,".SF UI Text",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"blackCupertino labelSmall",null,null,null,null) +B.ajr=new A.ff(B.agV,B.ai6,B.ahB,B.ahL,B.aft,B.ahv,B.agc,B.ahy,B.afV,B.aiK,B.ail,B.ahp,B.agb,B.ag4,B.aih) +B.ahA=new A.J(!0,B.a7,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteMountainView displayLarge",null,null,null,null) +B.aj7=new A.J(!0,B.a7,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteMountainView displayMedium",null,null,null,null) +B.aiP=new A.J(!0,B.a7,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteMountainView displaySmall",null,null,null,null) +B.ag8=new A.J(!0,B.a7,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteMountainView headlineLarge",null,null,null,null) +B.aiI=new A.J(!0,B.a7,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteMountainView headlineMedium",null,null,null,null) +B.ahx=new A.J(!0,B.n,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteMountainView headlineSmall",null,null,null,null) +B.ajc=new A.J(!0,B.n,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteMountainView titleLarge",null,null,null,null) +B.agB=new A.J(!0,B.n,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteMountainView titleMedium",null,null,null,null) +B.ahb=new A.J(!0,B.n,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteMountainView titleSmall",null,null,null,null) +B.aiv=new A.J(!0,B.n,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteMountainView bodyLarge",null,null,null,null) +B.ag_=new A.J(!0,B.n,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteMountainView bodyMedium",null,null,null,null) +B.aiR=new A.J(!0,B.a7,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteMountainView bodySmall",null,null,null,null) +B.aiE=new A.J(!0,B.n,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteMountainView labelLarge",null,null,null,null) +B.air=new A.J(!0,B.n,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteMountainView labelMedium",null,null,null,null) +B.ahX=new A.J(!0,B.n,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.k,null,null,null,"whiteMountainView labelSmall",null,null,null,null) +B.ajs=new A.ff(B.ahA,B.aj7,B.aiP,B.ag8,B.aiI,B.ahx,B.ajc,B.agB,B.ahb,B.aiv,B.ag_,B.aiR,B.aiE,B.air,B.ahX) +B.KN=new A.m9("Home",null,null,null,null,null,null,null,null,null) +B.ahN=new A.J(!0,B.n,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null) +B.ajt=new A.m9("Go to home page",null,B.ahN,null,null,null,null,null,null,null) +B.ajv=new A.m9("Close",null,null,null,null,null,null,null,null,null) +B.ajw=new A.m9("Page Not Found",null,B.ie,null,null,null,null,null,null,null) +B.ajx=new A.m9("Back",null,null,null,null,null,null,null,null,null) +B.aaL=new A.l(0.056,0.024) +B.aax=new A.l(0.108,0.3085) +B.aaR=new A.l(0.198,0.541) +B.aaC=new A.l(0.3655,1) +B.aaJ=new A.l(0.5465,0.989) +B.KQ=new A.OM(B.aaL,B.aax,B.aaR,B.aaC,B.aaJ) +B.aaw=new A.l(0.05,0) +B.aaH=new A.l(0.133333,0.06) +B.aau=new A.l(0.166666,0.4) +B.aaA=new A.l(0.208333,0.82) +B.aaG=new A.l(0.25,1) +B.lb=new A.OM(B.aaw,B.aaH,B.aau,B.aaA,B.aaG) +B.KR=new A.ON(0) +B.ajz=new A.ON(0.5) +B.ajA=new A.OO(null) +B.cK=new A.aaf(0,"clamp") +B.KS=new A.aaf(3,"decal") +B.ajB=new A.OP(null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null) +B.ajC=new A.OR(0,"TOP") +B.p5=new A.OR(1,"BOTTOM") +B.ajD=new A.OR(2,"CENTER") +B.ajE=new A.OU(null,null,null,null,null,null,null,null,null,null,null,null,null,null,null) +B.d5=new A.OV(0.001,0.001) +B.ajF=new A.OV(0.01,1/0) +B.p6=new A.EU(!1,!1,!1,!1) +B.ajG=new A.EU(!1,!1,!0,!0) +B.ajH=new A.EU(!0,!1,!1,!0) +B.ajI=new A.EU(!0,!0,!0,!0) +B.ajJ=new A.OX(null,null,null,null,null,null,null,null,null) +B.KT=new A.OZ(0,"identity") +B.KU=new A.OZ(1,"transform2d") +B.lc=new A.OZ(2,"complex") +B.ajL=new A.zh(3,"left") +B.p7=new A.aar(0,"closedLoop") +B.ajM=new A.aar(1,"leaveFlutterView") +B.ajO=A.b6("q0") +B.ajN=A.b6("q1") +B.ajP=A.b6("l_") +B.ajQ=A.b6("oY") +B.ajR=A.b6("q_") +B.ajS=A.b6("qO") +B.ajT=A.b6("wI") +B.ii=A.b6("rU") +B.h=A.b6("fK") +B.KW=A.b6("t3") +B.ajU=A.b6("XP") +B.ajV=A.b6("dK") +B.ajW=A.b6("o5") +B.ajX=A.b6("az") +B.ajY=A.b6("wr") +B.ajZ=A.b6("ws") +B.KX=A.b6("tp") +B.p8=A.b6("kf") +B.ak_=A.b6("bEW") +B.ak0=A.b6("mL") +B.ak1=A.b6("Bv") +B.ak2=A.b6("aAS") +B.ak3=A.b6("aBT") +B.ak4=A.b6("aBU") +B.KY=A.b6("mN") +B.ak5=A.b6("tG") +B.ak6=A.b6("tH") +B.ak7=A.b6("qy") +B.ak8=A.b6("aG0") +B.ak9=A.b6("aG1") +B.aka=A.b6("aG2") +B.akb=A.b6("at") +B.akc=A.b6("bo>") +B.akd=A.b6("mT") +B.p9=A.b6("kp") +B.pa=A.b6("bqy") +B.ax=A.b6("av") +B.ake=A.b6("mZ") +B.akf=A.b6("xS") +B.akg=A.b6("lS") +B.KZ=A.b6("B") +B.akh=A.b6("CY") +B.ld=A.b6("n1") +B.aki=A.b6("oE") +B.akj=A.b6("ug") +B.akk=A.b6("n4") +B.akl=A.b6("yb") +B.akm=A.b6("lV") +B.akn=A.b6("qH") +B.ako=A.b6("us") +B.akp=A.b6("n8") +B.akq=A.b6("bjC") +B.akr=A.b6("nb") +B.pb=A.b6("hE") +B.aks=A.b6("qQ") +B.akt=A.b6("uF") +B.aku=A.b6("yR") +B.akv=A.b6("uI") +B.pc=A.b6("f") +B.akw=A.b6("oZ") +B.pd=A.b6("kC") +B.akx=A.b6("uU") +B.aky=A.b6("aYZ") +B.akz=A.b6("EY") +B.akA=A.b6("aZ_") +B.akB=A.b6("df") +B.akC=A.b6("uW") +B.akD=A.b6("me") +B.akE=A.b6("bk7") +B.pe=A.b6("mO") +B.L_=A.b6("ay") +B.akF=A.b6("nA") +B.akG=A.b6("Fp") +B.akH=A.b6("kJ<@>") +B.akI=A.b6("pq") +B.akJ=A.b6("pr") +B.pf=A.b6("@") +B.akK=A.b6("tu") +B.akL=A.b6("q2") +B.akM=A.b6("wG") +B.le=A.b6("no") +B.akN=A.b6("Jj") +B.akO=A.b6("wK") +B.akP=A.b6("wH") +B.akQ=A.b6("wJ") +B.akR=A.b6("bEV") +B.akS=A.b6("wt") +B.akT=new A.nl(B.q4,B.lQ) +B.akU=new A.aax(0,"undo") +B.akV=new A.aax(1,"redo") +B.akW=new A.F1(!1,!1) +B.akX=new A.aaz(0,"scope") +B.pg=new A.aaz(1,"previouslyFocusedChild") +B.akY=new A.eB(11264,55297,B.j,t.c) +B.akZ=new A.eB(1425,1775,B.ab,t.c) +B.al_=new A.eB(1786,2303,B.ab,t.c) +B.al0=new A.eB(192,214,B.j,t.c) +B.al1=new A.eB(216,246,B.j,t.c) +B.al2=new A.eB(2304,8191,B.j,t.c) +B.al3=new A.eB(248,696,B.j,t.c) +B.al4=new A.eB(55298,55299,B.ab,t.c) +B.al5=new A.eB(55300,55353,B.j,t.c) +B.al6=new A.eB(55354,55355,B.ab,t.c) +B.al7=new A.eB(55356,56319,B.j,t.c) +B.al8=new A.eB(63744,64284,B.j,t.c) +B.al9=new A.eB(64285,65023,B.ab,t.c) +B.ala=new A.eB(65024,65135,B.j,t.c) +B.alb=new A.eB(65136,65276,B.ab,t.c) +B.alc=new A.eB(65277,65535,B.j,t.c) +B.ald=new A.eB(65,90,B.j,t.c) +B.ale=new A.eB(768,1424,B.j,t.c) +B.alf=new A.eB(8206,8206,B.j,t.c) +B.alg=new A.eB(8207,8207,B.ab,t.c) +B.alh=new A.eB(97,122,B.j,t.c) +B.ali=new A.aaD(null) +B.all=new A.aaE(null) +B.cL=new A.P2(!1) +B.aln=new A.P2(!0) +B.alo=new A.aaP(0,"nonStrict") +B.alp=new A.aaP(1,"strictRFC4122") +B.alq=new A.bP(0,t.zm) +B.alr=new A.bP(1,t.zm) +B.als=new A.bP("Ping",t.O) +B.alt=new A.bP("Pong",t.O) +B.alu=new A.bP("all",t.O) +B.alv=new A.bP("installed",t.O) +B.alw=new A.bP("topLevel",t.O) +B.alx=new A.bP("update",t.O) +B.L0=new A.zo(B.i,0,B.F,B.i) +B.pi=new A.aaQ(0,"up") +B.aly=new A.aaR(null) +B.fN=new A.r5(0,0) +B.eG=new A.r5(-2,-2) +B.alA=new A.ab0(B.j) +B.alB=new A.ab1(B.j) +B.alC=new A.ab2(B.ab) +B.alD=new A.ab3(B.j) +B.alE=new A.ab4(B.j) +B.alF=new A.ab5(B.j) +B.alG=new A.ab6(B.j) +B.alH=new A.ab7(B.j) +B.alI=new A.ab8(B.j) +B.alJ=new A.ab9(B.j) +B.alK=new A.aba(B.j) +B.alL=new A.abb(B.j) +B.alM=new A.abc(B.j) +B.alN=new A.abd(B.j) +B.alO=new A.P7(B.j) +B.alP=new A.abe(B.j) +B.alQ=new A.abf(B.j) +B.alR=new A.abg(B.j) +B.alS=new A.abh(B.j) +B.alT=new A.abi(B.j) +B.alU=new A.abj(B.j) +B.alV=new A.abk(B.j) +B.alW=new A.abl(B.j) +B.alX=new A.abm(B.j) +B.alY=new A.P8(B.j) +B.alZ=new A.abn(B.j) +B.am_=new A.abo(B.j) +B.am0=new A.abp(B.j) +B.am1=new A.abq(B.j) +B.am2=new A.abr(B.j) +B.am3=new A.abs(B.j) +B.am4=new A.abt(B.j) +B.am5=new A.abu(B.j) +B.am6=new A.abv(B.j) +B.am7=new A.abw(B.j) +B.am8=new A.abx(B.j) +B.am9=new A.aby(B.j) +B.ama=new A.abz(B.j) +B.amb=new A.abA(B.j) +B.amc=new A.abB(B.j) +B.amd=new A.abC(B.j) +B.ame=new A.abD(B.j) +B.amf=new A.abE(B.j) +B.amg=new A.abF(B.j) +B.amh=new A.abG(B.j) +B.ami=new A.P9(B.j) +B.amj=new A.abH(B.j) +B.amk=new A.abI(B.j) +B.aml=new A.abJ(B.ab) +B.amm=new A.abK(B.j) +B.amn=new A.abL(B.j) +B.amo=new A.abM(B.j) +B.amp=new A.Pa(B.j) +B.amq=new A.abN(B.j) +B.amr=new A.abO(B.j) +B.ams=new A.abP(B.j) +B.amt=new A.abQ(B.ab) +B.amu=new A.abR(B.j) +B.amv=new A.abS(B.j) +B.amw=new A.abT(B.j) +B.amx=new A.abU(B.j) +B.amy=new A.abV(B.j) +B.amz=new A.abW(B.j) +B.amA=new A.abX(B.j) +B.amB=new A.abY(B.j) +B.amC=new A.abZ(B.j) +B.amD=new A.ac_(B.j) +B.amE=new A.ac0(B.j) +B.amF=new A.ac1(B.j) +B.amG=new A.ac2(B.j) +B.amH=new A.ac3(B.j) +B.amI=new A.ac4(B.j) +B.amJ=new A.ac5(B.j) +B.amK=new A.ac6(B.j) +B.amL=new A.ac7(B.j) +B.amM=new A.ac8(B.j) +B.amN=new A.ac9(B.j) +B.amO=new A.aca(B.j) +B.amP=new A.acb(B.j) +B.amQ=new A.acc(B.j) +B.amR=new A.acd(B.j) +B.amS=new A.ace(B.j) +B.amT=new A.acf(B.j) +B.amU=new A.acg(B.j) +B.amV=new A.ach(B.j) +B.amW=new A.aci(B.j) +B.amX=new A.acj(B.j) +B.amY=new A.ack(B.ab) +B.amZ=new A.acl(B.j) +B.an_=new A.Pb(B.j) +B.an0=new A.acm(B.j) +B.an1=new A.acn(B.j) +B.an2=new A.aco(B.j) +B.an3=new A.acp(B.j) +B.an4=new A.acq(B.j) +B.an5=new A.acr(B.j) +B.an6=new A.acs(B.j) +B.an7=new A.act(B.j) +B.an8=new A.Pc(B.j) +B.an9=new A.acu(B.j) +B.ana=new A.acv(B.j) +B.anb=new A.acw(B.j) +B.anc=new A.acx(B.j) +B.and=new A.acy(B.j) +B.ane=new A.acz(B.j) +B.anf=new A.acA(B.j) +B.ang=new A.acB(B.j) +B.anh=new A.acC(B.ab) +B.ani=new A.acD(B.j) +B.anj=new A.acE(B.j) +B.ank=new A.acF(B.j) +B.L1=new A.acG(B.j) +B.L2=new A.acH(B.j) +B.anl=new A.Pe(B.j) +B.anm=new A.Pd(B.j) +B.ann=new A.acI(B.j) +B.iq=new A.acK(0,"start") +B.anp=new A.acK(5,"spaceEvenly") +B.pp=new A.acL(0,"start") +B.anq=new A.acL(2,"center") +B.aI=new A.Fo(0,"forward") +B.li=new A.Fo(1,"reverse") +B.ant=new A.ads(null) +B.anu=new A.Q4(0,"checkbox") +B.anv=new A.Q4(1,"radio") +B.anw=new A.Q4(2,"toggle") +B.anx=new A.b1N(0,"material") +B.apl=new A.b1O(0,"material") +B.eH=new A.b1R(0,"flat") +B.any=new A.Q9(0,"inside") +B.anz=new A.Q9(1,"higher") +B.anA=new A.Q9(2,"lower") +B.Qw=new A.M(67108864) +B.YU=A.a(s([B.Qw,B.u]),t.t_) +B.anB=new A.nC(B.YU) +B.anC=new A.nC(null) +B.pq=new A.zB(0,"backButton") +B.pr=new A.zB(1,"nextButton") +B.eI=new A.QA(0,"ready") +B.ir=new A.QB(0,"ready") +B.anI=new A.QA(1,"possible") +B.pt=new A.QB(1,"possible") +B.lj=new A.QA(2,"accepted") +B.lk=new A.QB(2,"accepted") +B.al=new A.FN(0,"initial") +B.eJ=new A.FN(1,"active") +B.anJ=new A.FN(2,"inactive") +B.La=new A.FN(3,"defunct") +B.Lb=new A.zE(0) +B.cN=new A.QR(B.bB,"clickable") +B.anQ=new A.QR(B.oW,"textable") +B.apm=new A.b3S(0,"filled") +B.anR=new A.ag5(1,0,"forward") +B.anS=new A.ag5(-1,1,"backward") +B.anT=new A.QY(1,"small") +B.anU=new A.QY(2,"large") +B.ll=new A.QY(3,"extended") +B.pu=new A.zF(0,"ready") +B.lm=new A.zF(1,"possible") +B.Lc=new A.zF(2,"accepted") +B.ln=new A.zF(3,"started") +B.anV=new A.zF(4,"peaked") +B.is=new A.R7(0,"pan") +B.lo=new A.R7(1,"scale") +B.anW=new A.R7(2,"rotate") +B.lp=new A.FZ(0,"idle") +B.anX=new A.FZ(1,"absorb") +B.lq=new A.FZ(2,"pull") +B.Ld=new A.FZ(3,"recede") +B.fP=new A.vb(0,"pressed") +B.fQ=new A.vb(1,"hover") +B.Le=new A.vb(2,"focus") +B.anY=new A.b4Z(0,"standard") +B.apn=new A.b59(0,"material") +B.ad=new A.G6(0,"minWidth") +B.ak=new A.G6(1,"maxWidth") +B.aA=new A.G6(2,"minHeight") +B.br=new A.G6(3,"maxHeight") +B.it=new A.hM(0,"size") +B.Lf=new A.hM(1,"orientation") +B.Lg=new A.hM(10,"accessibleNavigation") +B.ao9=new A.hM(11,"invertColors") +B.Lh=new A.hM(12,"highContrast") +B.pw=new A.hM(14,"boldText") +B.fR=new A.hM(15,"navigationMode") +B.lr=new A.hM(16,"gestureSettings") +B.d7=new A.hM(2,"devicePixelRatio") +B.bb=new A.hM(3,"textScaleFactor") +B.px=new A.hM(4,"platformBrightness") +B.bJ=new A.hM(5,"padding") +B.ls=new A.hM(6,"viewInsets") +B.aoa=new A.hM(8,"viewPadding") +B.py=new A.vh(1/0,1/0,1/0,1/0,1/0,1/0) +B.aob=new A.eV(B.hJ,B.f6) +B.jh=new A.xm(1,"left") +B.aoc=new A.eV(B.hJ,B.jh) +B.ji=new A.xm(2,"right") +B.aod=new A.eV(B.hJ,B.ji) +B.aoe=new A.eV(B.hJ,B.dd) +B.aof=new A.eV(B.hK,B.f6) +B.aog=new A.eV(B.hK,B.jh) +B.aoh=new A.eV(B.hK,B.ji) +B.aoi=new A.eV(B.hK,B.dd) +B.aoj=new A.eV(B.hL,B.f6) +B.aok=new A.eV(B.hL,B.jh) +B.aol=new A.eV(B.hL,B.ji) +B.aom=new A.eV(B.hL,B.dd) +B.aon=new A.eV(B.hM,B.f6) +B.aoo=new A.eV(B.hM,B.jh) +B.aop=new A.eV(B.hM,B.ji) +B.aoq=new A.eV(B.hM,B.dd) +B.aor=new A.eV(B.Fc,B.dd) +B.aos=new A.eV(B.Fd,B.dd) +B.aot=new A.eV(B.Fe,B.dd) +B.aou=new A.eV(B.Ff,B.dd) +B.pz=new A.aiy(B.t) +B.aox=new A.aiE(null) +B.aow=new A.aiF(null) +B.aov=new A.aiH(null) +B.aoA=new A.Sj(0,"none") +B.aoB=new A.Sj(1,"static") +B.Li=new A.Sj(2,"progress") +B.aoC=new A.b8o(0,"material") +B.apo=new A.b8p(0,"material") +B.eK=new A.vo(0,"drag") +B.eL=new A.vo(1,"armed") +B.pA=new A.vo(2,"snap") +B.lt=new A.vo(3,"refresh") +B.pB=new A.vo(4,"done") +B.lu=new A.vo(5,"canceled") +B.Lj=new A.id(0,"staging") +B.lv=new A.id(1,"add") +B.Lk=new A.id(10,"remove") +B.aoD=new A.id(11,"popping") +B.aoE=new A.id(12,"removing") +B.pC=new A.id(13,"dispose") +B.aoF=new A.id(14,"disposing") +B.lw=new A.id(15,"disposed") +B.aoG=new A.id(2,"adding") +B.pD=new A.id(3,"push") +B.Ll=new A.id(4,"pushReplace") +B.Lm=new A.id(5,"pushing") +B.aoH=new A.id(6,"replace") +B.fS=new A.id(7,"idle") +B.iu=new A.id(8,"pop") +B.aoI=new A.id(9,"complete") +B.lx=new A.kK(0,"body") +B.ly=new A.kK(1,"appBar") +B.lz=new A.kK(10,"endDrawer") +B.lA=new A.kK(11,"statusBar") +B.lB=new A.kK(2,"bodyScrim") +B.lC=new A.kK(3,"bottomSheet") +B.fT=new A.kK(4,"snackBar") +B.lD=new A.kK(5,"materialBanner") +B.pF=new A.kK(6,"persistentFooter") +B.lE=new A.kK(7,"bottomNavigationBar") +B.lF=new A.kK(8,"floatingActionButton") +B.pG=new A.kK(9,"drawer") +B.iv=new A.GE(0,"ready") +B.iw=new A.GE(1,"possible") +B.Ln=new A.GE(2,"accepted") +B.lG=new A.GE(3,"started") +B.aoK=new A.nI(B.x,B.a_,B.dP,null,null) +B.adM=new A.V(100,0) +B.aoL=new A.nI(B.adM,B.a_,B.dP,null,null) +B.aoM=new A.To(null) +B.app=new A.baO(0,"material") +B.m=new A.baR(0,"created") +B.eM=new A.amb(0,"trailing") +B.Lo=new A.amb(1,"leading") +B.pH=new A.GT(0,"idle") +B.aoR=new A.GT(1,"absorb") +B.pI=new A.GT(2,"pull") +B.pJ=new A.GT(3,"recede") +B.pK=new A.pn("") +B.apq=new A.bbg(0,"material") +B.aoS=new A.bbi(0,"material") +B.Lp=new A.H_(0,"first") +B.aoT=new A.H_(1,"middle") +B.Lq=new A.H_(2,"last") +B.pL=new A.H_(3,"only") +B.aoU=new A.TW(B.eZ,B.dv) +B.lH=new A.U2(0,"leading") +B.lI=new A.U2(1,"middle") +B.lJ=new A.U2(2,"trailing") +B.aoV=new A.anh(0,"minimize") +B.aoW=new A.anh(1,"maximize")})();(function staticFields(){$.lw=null +$.cM=A.b4("canvasKit") +$.fN=A.b4("_instance") +$.bDs=A.F(t.N,A.ah("U")) +$.bsk=!1 +$.bsj=null +$.e3=null +$.bwn=0 +$.hm=null +$.bl3=!1 +$.mu=A.a([],t.kZ) +$.bsl=0 +$.bdd=0 +$.rD=A.a([],A.ah("G")) +$.bfZ=A.a([],t.nx) +$.blD=null +$.bGz=A.b4("_instance") +$.aWE=null +$.bt7=null +$.blS=A.a([],t.cD) +$.bvl=B.RI +$.vA=A.a([],t.qj) +$.VL=B.rC +$.vy=null +$.aGr=null +$.bji=null +$.bxs=null +$.bxe=null +$.brg=null +$.buK=null +$.btZ=0 +$.bl4=A.a([],t.no) +$.bll=-1 +$.bkW=-1 +$.bkV=-1 +$.ble=-1 +$.bvx=-1 +$.bjz=null +$.aDJ=A.b4("_programCache") +$.br1=null +$.hx=null +$.NA=null +$.bvm=null +$.bse=A.F(A.ah("OD"),A.ah("aa3")) +$.be3=null +$.bvp=-1 +$.bvo=-1 +$.bvq="" +$.bvn="" +$.bvr=-1 +$.VX=A.F(t.N,t.e) +$.bv6=null +$.b5J=null +$.A3=A.a([],t.jl) +$.bro=null +$.aMb=0 +$.Mp=A.bPF() +$.bo8=null +$.bo7=null +$.bwI=null +$.bvZ=null +$.bxl=null +$.beT=null +$.bfG=null +$.blE=null +$.b8K=A.a([],A.ah("G?>")) +$.Hd=null +$.VM=null +$.VN=null +$.blb=!1 +$.a9=B.b7 +$.bty=null +$.btz=null +$.btA=null +$.btB=null +$.bkg=A.b4("_lastQuoRemDigits") +$.bkh=A.b4("_lastQuoRemUsed") +$.PO=A.b4("_lastRemUsed") +$.bki=A.b4("_lastRem_nsh") +$.bsT="" +$.bsU=null +$.bv9=A.F(t.N,t.xd) +$.tr=null +$.bit=null +$.bpm=null +$.bpl=null +$.agD=A.F(t.N,t._8) +$.bMn=A.F(t.S,A.ah("bZG")) +$.bvw=A.F(t.C_,t.e) +$.bFR=null +$.bG5=A.bQE() +$.biF=0 +$.a13=A.a([],A.ah("G")) +$.bqo=null +$.apT=0 +$.bds=null +$.bl_=!1 +$.iX=null +$.bkH=!0 +$.bkG=!1 +$.ze=A.a([],A.ah("G")) +$.hC=null +$.a7E=null +$.bqm=0 +$.cF=null +$.a8g=null +$.boD=0 +$.boC=A.F(t.S,t.I7) +$.bi3=A.F(t.I7,t.S) +$.aS5=0 +$.ix=null +$.EB=null +$.bjU=null +$.bsv=1 +$.ar=null +$.pP=null +$.B3=null +$.bu4=1 +$.bjp=-9007199254740992 +$.b7=null +$.bMw=A.F(t.da,A.ah("U")) +$.bMO=A.F(t.da,A.ah("U")) +$.bv2=!1 +$.bNK=A.F(t.da,A.ah("U")) +$.nN=!1 +$.bvR=null +$.bpS=!1 +$.bqe=null +$.bqd=null +$.aq2=null +$.aqe=null +$.bv5=null +$.boF=A.F(t.N,t.y) +$.et=0 +$.eP=0 +$.bQ2=null +$.fi=0 +$.rB=0 +$.bee=0 +$.bqx=0 +$.bHr=A.F(t.N,t.JW) +$.br4=null +$.bv1=null +$.bdr=null +$.apR=null +$.aqm=null +$.aSQ=null +$.bHk=A.F(t.S,A.ah("bXN")) +$.bt2=A.a([],t.t) +$.bk4=0 +$.bt0=0 +$.bt1=0 +$.bt_=!1})();(function lazyInitializers(){var s=hunkHelpers.lazyFinal,r=hunkHelpers.lazy +s($,"c_i","dv",()=>{var q="navigator" +return A.bRJ(A.bH_(A.a_(A.a_(self.window,q),"vendor")),B.c.BB(A.bF9(A.a_(self.window,q))))}) +s($,"c0g","fI",()=>A.bRL()) +s($,"bWC","bma",()=>A.a5i(8)) +s($,"c_m","aqz",()=>A.a_(A.a_(A.aP(),"ClipOp"),"Intersect")) +s($,"c0N","bB3",()=>{var q="FontWeight" +return A.a([A.a_(A.a_(A.aP(),q),"Thin"),A.a_(A.a_(A.aP(),q),"ExtraLight"),A.a_(A.a_(A.aP(),q),"Light"),A.a_(A.a_(A.aP(),q),"Normal"),A.a_(A.a_(A.aP(),q),"Medium"),A.a_(A.a_(A.aP(),q),"SemiBold"),A.a_(A.a_(A.aP(),q),"Bold"),A.a_(A.a_(A.aP(),q),"ExtraBold"),A.a_(A.a_(A.aP(),q),"ExtraBlack")],t.A)}) +s($,"c0Y","bBd",()=>{var q="TextDirection" +return A.a([A.a_(A.a_(A.aP(),q),"RTL"),A.a_(A.a_(A.aP(),q),"LTR")],t.A)}) +s($,"c0V","bBb",()=>{var q="TextAlign" +return A.a([A.a_(A.a_(A.aP(),q),"Left"),A.a_(A.a_(A.aP(),q),"Right"),A.a_(A.a_(A.aP(),q),"Center"),A.a_(A.a_(A.aP(),q),"Justify"),A.a_(A.a_(A.aP(),q),"Start"),A.a_(A.a_(A.aP(),q),"End")],t.A)}) +s($,"c0Z","bBe",()=>{var q="TextHeightBehavior" +return A.a([A.a_(A.a_(A.aP(),q),"All"),A.a_(A.a_(A.aP(),q),"DisableFirstAscent"),A.a_(A.a_(A.aP(),q),"DisableLastDescent"),A.a_(A.a_(A.aP(),q),"DisableAll")],t.A)}) +s($,"c0R","bB7",()=>{var q="RectHeightStyle" +return A.a([A.a_(A.a_(A.aP(),q),"Tight"),A.a_(A.a_(A.aP(),q),"Max"),A.a_(A.a_(A.aP(),q),"IncludeLineSpacingMiddle"),A.a_(A.a_(A.aP(),q),"IncludeLineSpacingTop"),A.a_(A.a_(A.aP(),q),"IncludeLineSpacingBottom"),A.a_(A.a_(A.aP(),q),"Strut")],t.A)}) +s($,"c0S","bB8",()=>{var q="RectWidthStyle" +return A.a([A.a_(A.a_(A.aP(),q),"Tight"),A.a_(A.a_(A.aP(),q),"Max")],t.A)}) +s($,"c0L","bmL",()=>A.a([A.a_(A.a_(A.aP(),"ClipOp"),"Difference"),A.a_(A.a_(A.aP(),"ClipOp"),"Intersect")],t.A)) +s($,"c0M","aqG",()=>{var q="FillType" +return A.a([A.a_(A.a_(A.aP(),q),"Winding"),A.a_(A.a_(A.aP(),q),"EvenOdd")],t.A)}) +s($,"c0P","bB5",()=>{var q="PathOp" +return A.a([A.a_(A.a_(A.aP(),q),"Difference"),A.a_(A.a_(A.aP(),q),"Intersect"),A.a_(A.a_(A.aP(),q),"Union"),A.a_(A.a_(A.aP(),q),"XOR"),A.a_(A.a_(A.aP(),q),"ReverseDifference")],t.A)}) +s($,"c0K","bB2",()=>{var q="BlurStyle" +return A.a([A.a_(A.a_(A.aP(),q),"Normal"),A.a_(A.a_(A.aP(),q),"Solid"),A.a_(A.a_(A.aP(),q),"Outer"),A.a_(A.a_(A.aP(),q),"Inner")],t.A)}) +s($,"c0T","bB9",()=>{var q="StrokeCap" +return A.a([A.a_(A.a_(A.aP(),q),"Butt"),A.a_(A.a_(A.aP(),q),"Round"),A.a_(A.a_(A.aP(),q),"Square")],t.A)}) +s($,"c0O","bB4",()=>{var q="PaintStyle" +return A.a([A.a_(A.a_(A.aP(),q),"Fill"),A.a_(A.a_(A.aP(),q),"Stroke")],t.A)}) +s($,"c0J","bmK",()=>{var q="BlendMode" +return A.a([A.a_(A.a_(A.aP(),q),"Clear"),A.a_(A.a_(A.aP(),q),"Src"),A.a_(A.a_(A.aP(),q),"Dst"),A.a_(A.a_(A.aP(),q),"SrcOver"),A.a_(A.a_(A.aP(),q),"DstOver"),A.a_(A.a_(A.aP(),q),"SrcIn"),A.a_(A.a_(A.aP(),q),"DstIn"),A.a_(A.a_(A.aP(),q),"SrcOut"),A.a_(A.a_(A.aP(),q),"DstOut"),A.a_(A.a_(A.aP(),q),"SrcATop"),A.a_(A.a_(A.aP(),q),"DstATop"),A.a_(A.a_(A.aP(),q),"Xor"),A.a_(A.a_(A.aP(),q),"Plus"),A.a_(A.a_(A.aP(),q),"Modulate"),A.a_(A.a_(A.aP(),q),"Screen"),A.a_(A.a_(A.aP(),q),"Overlay"),A.a_(A.a_(A.aP(),q),"Darken"),A.a_(A.a_(A.aP(),q),"Lighten"),A.a_(A.a_(A.aP(),q),"ColorDodge"),A.a_(A.a_(A.aP(),q),"ColorBurn"),A.a_(A.a_(A.aP(),q),"HardLight"),A.a_(A.a_(A.aP(),q),"SoftLight"),A.a_(A.a_(A.aP(),q),"Difference"),A.a_(A.a_(A.aP(),q),"Exclusion"),A.a_(A.a_(A.aP(),q),"Multiply"),A.a_(A.a_(A.aP(),q),"Hue"),A.a_(A.a_(A.aP(),q),"Saturation"),A.a_(A.a_(A.aP(),q),"Color"),A.a_(A.a_(A.aP(),q),"Luminosity")],t.A)}) +s($,"c0U","bBa",()=>{var q="StrokeJoin" +return A.a([A.a_(A.a_(A.aP(),q),"Miter"),A.a_(A.a_(A.aP(),q),"Round"),A.a_(A.a_(A.aP(),q),"Bevel")],t.A)}) +s($,"c1_","bmN",()=>{var q="TileMode" +return A.a([A.a_(A.a_(A.aP(),q),"Clamp"),A.a_(A.a_(A.aP(),q),"Repeat"),A.a_(A.a_(A.aP(),q),"Mirror"),A.a_(A.a_(A.aP(),q),"Decal")],t.A)}) +s($,"c_t","bmB",()=>{var q="FilterMode",p="MipmapMode",o="Linear",n=t.e +return A.ap([B.jb,n.a({filter:A.a_(A.a_(A.aP(),q),"Nearest"),mipmap:A.a_(A.a_(A.aP(),p),"None")}),B.hh,n.a({filter:A.a_(A.a_(A.aP(),q),o),mipmap:A.a_(A.a_(A.aP(),p),"None")}),B.t5,n.a({filter:A.a_(A.a_(A.aP(),q),o),mipmap:A.a_(A.a_(A.aP(),p),o)}),B.mQ,n.a({B:A.bpd(0.3333333333333333),C:A.bpd(0.3333333333333333)})],A.ah("wO"),n)}) +s($,"c_M","bAA",()=>{var q=A.a5i(2) +q[0]=0 +q[1]=1 +return q}) +s($,"c0H","bh2",()=>A.bTB(4)) +s($,"c0X","bBc",()=>{var q="DecorationStyle" +return A.a([A.a_(A.a_(A.aP(),q),"Solid"),A.a_(A.a_(A.aP(),q),"Double"),A.a_(A.a_(A.aP(),q),"Dotted"),A.a_(A.a_(A.aP(),q),"Dashed"),A.a_(A.a_(A.aP(),q),"Wavy")],t.A)}) +s($,"c0W","bmM",()=>{var q="TextBaseline" +return A.a([A.a_(A.a_(A.aP(),q),"Alphabetic"),A.a_(A.a_(A.aP(),q),"Ideographic")],t.A)}) +s($,"c0Q","bB6",()=>{var q="PlaceholderAlignment" +return A.a([A.a_(A.a_(A.aP(),q),"Baseline"),A.a_(A.a_(A.aP(),q),"AboveBaseline"),A.a_(A.a_(A.aP(),q),"BelowBaseline"),A.a_(A.a_(A.aP(),q),"Top"),A.a_(A.a_(A.aP(),q),"Bottom"),A.a_(A.a_(A.aP(),q),"Middle")],t.A)}) +r($,"bPm","bAs",()=>A.bOk()) +r($,"bXE","bgP",()=>{var q=t.S,p=t.t +return new A.a1O(A.bFx(),A.F(q,A.ah("bX9")),A.F(q,A.ah("bZg")),A.F(q,A.ah("oU")),A.aY(q),A.a([],p),A.a([],p),$.eg().gnt(),A.F(q,t.c8))}) +r($,"c_u","bAi",()=>{var q=A.bpJ(new A.bdE()),p=self.window.FinalizationRegistry +p.toString +return A.bO5(p,q)}) +r($,"c2m","bBE",()=>new A.aK4()) +s($,"c_H","bAv",()=>A.bI2(B.a4I)) +s($,"c_G","bgX",()=>A.aHt(A.bDH($.bAv()))) +s($,"c_l","bAe",()=>A.brZ(A.a_(A.aP(),"ParagraphBuilder"))) +s($,"bWF","byi",()=>A.buR(A.VK(A.VK(A.VK(A.bwJ(),"window"),"flutterCanvasKit"),"Paint"))) +s($,"bWE","byh",()=>{var q=A.buR(A.VK(A.VK(A.VK(A.bwJ(),"window"),"flutterCanvasKit"),"Paint")) +A.bK6(q,0) +return q}) +s($,"c2H","bBL",()=>{var q=t.N,p=A.ah("+breaks,graphemes,words(EY,EY,EY)"),o=A.bj4(B.J8.a,q,p),n=A.bj4(B.J9.a,q,p) +return new A.ak4(A.bj4(B.Ja.a,q,p),n,o)}) +s($,"c_F","bAu",()=>A.ap([B.tU,A.bwj("grapheme"),B.tV,A.bwj("word")],A.ah("Ky"),t.e)) +s($,"c1c","bBo",()=>A.bwm()) +s($,"c19","bBl",()=>{var q=A.a_(self.window,"trustedTypes") +q.toString +return A.bO9(q,"createPolicy",A.bKr("flutter-engine"),t.e.a({createScriptURL:A.bpJ(new A.bej())}))}) +r($,"c1n","bBu",()=>self.window.FinalizationRegistry!=null) +s($,"c_z","bAn",()=>B.aK.e4(A.ap(["type","fontsChange"],t.N,t.z))) +s($,"c23","bn3",()=>{var q=A.bwk() +A.boW(q,"width",0) +A.boW(q,"height",0) +A.boR(A.a_(q,"style"),"absolute") +return q}) +s($,"bZS","bmx",()=>A.a5i(4)) +r($,"c0G","bmJ",()=>new A.aSJ()) +s($,"bZf","bzE",()=>A.bqS(A.a([0,1,2,2,3,0],t.t))) +s($,"c11","bBg",()=>A.blB(A.blB(A.blB(self.window,"Image"),"prototype"),"decode")!=null) +s($,"c_h","bAb",()=>A.bDQ("ftyp")) +s($,"c2t","bhg",()=>{var q=t.N,p=t.S +return new A.aLH(A.F(q,t._8),A.F(p,t.e),A.aY(q),A.F(p,q))}) +s($,"c_O","bmC",()=>8589934852) +s($,"c_P","bAC",()=>8589934853) +s($,"c_Q","bmD",()=>8589934848) +s($,"c_R","bAD",()=>8589934849) +s($,"c_V","bmF",()=>8589934850) +s($,"c_W","bAG",()=>8589934851) +s($,"c_T","bmE",()=>8589934854) +s($,"c_U","bAF",()=>8589934855) +s($,"c00","bAK",()=>458978) +s($,"c01","bAL",()=>458982) +s($,"c21","bn1",()=>458976) +s($,"c22","bn2",()=>458980) +s($,"c04","bAO",()=>458977) +s($,"c05","bAP",()=>458981) +s($,"c02","bAM",()=>458979) +s($,"c03","bAN",()=>458983) +s($,"c_S","bAE",()=>A.ap([$.bmC(),new A.bdV(),$.bAC(),new A.bdW(),$.bmD(),new A.bdX(),$.bAD(),new A.bdY(),$.bmF(),new A.bdZ(),$.bAG(),new A.be_(),$.bmE(),new A.be0(),$.bAF(),new A.be1()],t.S,A.ah("p(oh)"))) +s($,"c_K","bAy",()=>124) +s($,"c_L","bAz",()=>59) +r($,"bXv","bgO",()=>new A.a1E(A.a([],A.ah("G<~(p)>")),A.bpb(self.window,"(forced-colors: active)"))) +s($,"bXc","bL",()=>{var q,p=A.biu(),o=A.bSo(),n=A.bFA(0) +if(A.bF7($.bgO().b))n.saJz(!0) +p=A.bIr(n.aP(),!1,"/",p,B.aB,!1,null,o) +o=A.bpb(self.window,"(prefers-color-scheme: dark)") +A.bRu() +o=new A.a0E(p,A.F(t.S,A.ah("wR")),A.F(t.K,A.ah("aaV")),o,B.b7) +o.am3() +p=$.bgO() +q=p.a +if(B.b.gai(q))A.buS(p.b,"addListener",p.ga2Q()) +q.push(o.ga5N()) +o.am8() +o.amc() +A.bxp(o.gev()) +o.afl("flutter/lifecycle",B.nW.aEv(A.bI5(B.O.l2(B.lL.K())).buffer),null) +return o}) +r($,"bYu","bza",()=>new A.aQx()) +r($,"bP0","bAo",()=>A.VO()) +s($,"c0D","as",()=>(A.bwb().gacz()!=null?A.bwb().gacz()==="canvaskit":A.bTg())?new A.XT():new A.aEW()) +r($,"c1o","bmT",()=>{var q=self.window.ImageDecoder +q=(q==null?null:q)!=null&&A.bQU()===B.dr +return q}) +s($,"c2s","bBH",()=>A.a9F(65532)) +s($,"bXB","byJ",()=>A.bF("[a-z0-9\\s]+",!1,!1,!1)) +s($,"bXC","byK",()=>A.bF("\\b\\d",!0,!1,!1)) +s($,"c2Y","Aa",()=>A.bF3(A.VU(0,0))) +s($,"bYM","bzl",()=>{var q=A.bRp("flt-ruler-host"),p=new A.a7U(q),o=A.a_(q,"style") +A.boR(o,"fixed") +A.bF0(o,"hidden") +A.bEZ(o,"hidden") +A.bF_(o,"0") +A.bEY(o,"0") +A.bF1(o,"0") +A.bEX(o,"0") +A.buS(A.bSt().garr(),"appendChild",q) +A.bxp(p.gev()) +return p}) +s($,"c17","bmQ",()=>A.bLh(A.a([B.ald,B.alh,B.al0,B.al1,B.al3,B.ale,B.akZ,B.al_,B.al2,B.alf,B.alg,B.akY,B.al4,B.al5,B.al6,B.al7,B.al8,B.al9,B.ala,B.alb,B.alc],A.ah("G>")),null,A.ah("ma?"))) +r($,"c3e","Wn",()=>A.bLi("000a!E000b000cF000d!D000w!R000y!A0013!B0018!M001a!N001c001lO001m!L001n!M001t002iK002n!P002p003eK003p!F004q!K004t!I0051!K0053!L0056!K005c005yK0060006uK006w00k7K00ke00lbK00lc00ofG00og00okK00om00onK00oq00otK00ou!M00ov!K00p2!K00p3!L00p400p6K00p8!K00pa00ptK00pv00s5K00s700w1K00w300w9G00wa010vK010x011yK01210124K0126!K0127!L0128013cK013d!M013e!K013l014tG014v!G014x014yG01500151G0153!G015c0162C0167016aC016b!K016c!L016o016tI01700171M0174017eG017g!I017k018qK018r019bG019c019lO019n!O019o!M019q019rK019s!G019t01cjK01cl!K01cm01csG01ct!I01cv01d0G01d101d2K01d301d4G01d601d9G01da01dbK01dc01dlO01dm01doK01dr!K01e7!I01e8!K01e9!G01ea01f3K01f401fuG01fx01idK01ie01ioG01ip!K01j401jdO01je01kaK01kb01kjG01kk01klK01ko!M01kq!K01kt!G01kw01lhK01li01llG01lm!K01ln01lvG01lw!K01lx01lzG01m0!K01m101m5G01mo01ncK01nd01nfG01nk01nuK01pc01pwK01py01qfK01qr01r5G01r6!I01r701s3G01s401tlK01tm01toG01tp!K01tq01u7G01u8!K01u901ufG01ug01upK01uq01urG01uu01v3O01v501vkK01vl01vnG01vp01vwK01vz01w0K01w301woK01wq01wwK01wy!K01x201x5K01x8!G01x9!K01xa01xgG01xj01xkG01xn01xpG01xq!K01xz!G01y401y5K01y701y9K01ya01ybG01ye01ynO01yo01ypK01z0!K01z2!G01z501z7G01z901zeK01zj01zkK01zn0208K020a020gK020i020jK020l020mK020o020pK020s!G020u020yG02130214G02170219G021d!G021l021oK021q!K021y0227O02280229G022a022cK022d!G022p022rG022t0231K02330235K0237023sK023u0240K02420243K02450249K024c!G024d!K024e024lG024n024pG024r024tG024w!K025c025dK025e025fG025i025rO0261!K02620267G0269026bG026d026kK026n026oK026r027cK027e027kK027m027nK027p027tK027w!G027x!K027y0284G02870288G028b028dG028l028nG028s028tK028v028xK028y028zG0292029bO029d!K029u!G029v!K029x02a2K02a602a8K02aa02adK02ah02aiK02ak!K02am02anK02ar02asK02aw02ayK02b202bdK02bi02bmG02bq02bsG02bu02bxG02c0!K02c7!G02cm02cvO02dc02dgG02dh02doK02dq02dsK02du02egK02ei02exK02f1!K02f202f8G02fa02fcG02fe02fhG02fp02fqG02fs02fuK02g002g1K02g202g3G02g602gfO02gw!K02gx02gzG02h102h8K02ha02hcK02he02i0K02i202ibK02id02ihK02ik!G02il!K02im02isG02iu02iwG02iy02j1G02j902jaG02ji!K02jk02jlK02jm02jnG02jq02jzO02k102k2K02kg02kjG02kk02ksK02ku02kwK02ky02m2K02m302m4G02m5!K02m602mcG02me02mgG02mi02mlG02mm!K02ms02muK02mv!G02n302n5K02n602n7G02na02njO02nu02nzK02o102o3G02o502omK02oq02pdK02pf02pnK02pp!K02ps02pyK02q2!G02q702qcG02qe!G02qg02qnG02qu02r3O02r602r7G02sx!G02t002t6G02tj02tqG02ts02u1O02wh!G02wk02wsG02x402x9G02xc02xlO02yo!K02zc02zdG02zk02ztO0305!G0307!G0309!G030e030fG030g030nK030p031oK031t032cG032e032fG032g032kK032l032vG032x033wG0346!G036z037iG037k037tO03860389G038e038gG038i038kG038n038tG038x0390G039e039pG039r!G039s03a1O03a203a5G03a803b9K03bb!K03bh!K03bk03cqK03cs03m0K03m203m5K03m803meK03mg!K03mi03mlK03mo03nsK03nu03nxK03o003owK03oy03p1K03p403paK03pc!K03pe03phK03pk03pyK03q003rkK03rm03rpK03rs03tmK03tp03trG03uo03v3K03vk03xxK03y003y5K03y904fgK04fj04fzK04g0!R04g104gqK04gw04iyK04j204jcK04jk04jwK04jy04k1K04k204k4G04kg04kxK04ky04l0G04lc04ltK04lu04lvG04m804mkK04mm04moK04mq04mrG04ok04pfG04pp!G04ps04q1O04qz04r1G04r2!I04r404rdO04rk04u0K04u804ucK04ud04ueG04uf04vcK04vd!G04ve!K04vk04xhK04xs04ymK04yo04yzG04z404zfG04zq04zzO053k053tO054w055iK055j055nG0579057iG057k058cG058f!G058g058pO058w0595O059s05a8G05c005c4G05c505dfK05dg05dwG05dx05e3K05e805ehO05ez05f7G05fk05fmG05fn05ggK05gh05gtG05gu05gvK05gw05h5O05h605idK05ie05irG05j405k3K05k405knG05kw05l5O05l905lbK05lc05llO05lm05mlK05mo05mwK05n405oaK05od05ofK05ow05oyG05p005pkG05pl05poK05pp!G05pq05pvK05pw!G05px05pyK05pz05q1G05q2!K05q805vjK05vk05x5G05x705xbG05xc0651K06540659K065c066dK066g066lK066o066vK066x!K066z!K0671!K0673067xK0680069gK069i069oK069q!K069u069wK069y06a4K06a806abK06ae06ajK06ao06b0K06b606b8K06ba06bgK06bk06bqR06bs06buR06bw!G06bx!Q06by06bzI06c806c9N06ck!N06cn!L06co06cpF06cq06cuI06cv!P06db06dcP06dg!M06dw!P06e7!R06e806ecI06ee06enI06ep!K06f3!K06fk06fwK06hc06i8G06iq!K06iv!K06iy06j7K06j9!K06jd06jhK06jo!K06jq!K06js!K06ju06jxK06jz06k9K06kc06kfK06kl06kpK06ku!K06lc06mgK079207ahK08ow08q6K08q808riK08rk08v8K08vf08viK08vj08vlG08vm08vnK08w008x1K08x3!K08x9!K08xc08yvK08z3!K08zj!G08zk0906K090g090mK090o090uK090w0912K0914091aK091c091iK091k091qK091s091yK09200926K09280933G094f!K09hc!R09hh!K09ii09inG09ip09itJ09iz09j0K09ll09lmG09ln09loJ09ls09oaJ09oc09ofJ09ol09prK09pt09seK09sw09trK09v409vjJ0a1c0a2mJ0a2o0a53J0vls0wi4K0wk00wl9K0wlc0wssK0wsw0wtbK0wtc0wtlO0wtm0wtnK0wu80wviK0wvj0wvmG0wvo0wvxG0wvz0wwtK0wwu0wwvG0www0wz3K0wz40wz5G0wzs0x4vK0x4y0x56K0x6d0x6pK0x6q!G0x6r0x6tK0x6u!G0x6v0x6yK0x6z!G0x700x7mK0x7n0x7rG0x7w!G0x8g0x9vK0xa80xa9G0xaa0xbnK0xbo0xc5G0xcg0xcpO0xcw0xddG0xde0xdjK0xdn!K0xdp0xdqK0xdr!G0xds0xe1O0xe20xetK0xeu0xf1G0xf40xfqK0xfr0xg3G0xgg0xh8K0xhc0xhfG0xhg0xiqK0xir0xj4G0xjj!K0xjk0xjtO0xk5!G0xkg0xkpO0xkw0xm0K0xm10xmeG0xmo0xmqK0xmr!G0xms0xmzK0xn00xn1G0xn40xndO0xob0xodG0xps!G0xpu0xpwG0xpz0xq0G0xq60xq7G0xq9!G0xr40xreK0xrf0xrjG0xrm0xroK0xrp0xrqG0xs10xs6K0xs90xseK0xsh0xsmK0xsw0xt2K0xt40xtaK0xtc0xuxK0xv40xyaK0xyb0xyiG0xyk0xylG0xyo0xyxO0xz416lfK16ls16meK16mj16nvK1dkw1dl2K1dlf1dljK1dlp!C1dlq!G1dlr1dm0C1dm21dmeC1dmg1dmkC1dmm!C1dmo1dmpC1dmr1dmsC1dmu1dn3C1dn41dptK1dqr1e0tK1e1c1e33K1e361e4nK1e5s1e63K1e681e6nG1e6o!M1e6r!L1e6s!M1e741e7jG1e7n1e7oP1e8d1e8fP1e8g!M1e8i!N1e8k!M1e8l!L1e9c1e9gK1e9i1ed8K1edb!I1edj!N1edo!M1edq!N1eds1ee1O1ee2!L1ee3!M1ee91eeyK1ef3!P1ef51efuK1eg61ehpJ1ehq1ehrG1ehs1eimK1eiq1eivK1eiy1ej3K1ej61ejbK1eje1ejgK1ek91ekbI1ekg1ekrK1ekt1eliK1elk1em2K1em41em5K1em71emlK1emo1en1K1eo01ereK1etc1eusK1eyl!G1f281f30K1f341f4gK1f4w!G1f5s1f6nK1f711f7uK1f801f91K1f921f96G1f9c1fa5K1fa81fb7K1fbc1fbjK1fbl1fbpK1fcw1fh9K1fhc1fhlO1fhs1firK1fiw1fjvK1fk01fl3K1flc1fmrK1fr41fzqK1g001g0lK1g0w1g13K1g5c1g5hK1g5k!K1g5m1g6tK1g6v1g6wK1g70!K1g731g7pK1g801g8mK1g8w1g9qK1gbk1gc2K1gc41gc5K1gcg1gd1K1gdc1ge1K1gg01ghjK1ghq1ghrK1gjk!K1gjl1gjnG1gjp1gjqG1gjw1gjzG1gk01gk3K1gk51gk7K1gk91gl1K1gl41gl6G1glb!G1gm81gn0K1gn41gnwK1gow1gp3K1gp51gpwK1gpx1gpyG1gqo1gs5K1gsg1gt1K1gtc1gtuK1gu81gupK1gxs1gzsK1h1c1h2qK1h341h4iK1h4w1h5vK1h5w1h5zG1h681h6hO1hfk1hgpK1hgr1hgsG1hgw1hgxK1hj41hjwK1hk7!K1hkg1hl1K1hl21hlcG1ho01hokK1hpc1hpyK1hq81hqaG1hqb1hrrK1hrs1hs6G1ht21htbO1htr1htuG1htv1hv3K1hv41hveG1hvh!I1hvx!I1hw01hwoK1hww1hx5O1hxc1hxeG1hxf1hyeK1hyf1hysG1hyu1hz3O1hz8!K1hz91hzaG1hzb!K1hzk1i0iK1i0j!G1i0m!K1i0w1i0yG1i0z1i2aK1i2b1i2oG1i2p1i2sK1i2x1i30G1i321i33G1i341i3dO1i3e!K1i3g!K1i4g1i4xK1i4z1i5nK1i5o1i5zG1i66!G1i801i86K1i88!K1i8a1i8dK1i8f1i8tK1i8v1i94K1i9c1iamK1ian1iayG1ib41ibdO1ibk1ibnG1ibp1ibwK1ibz1ic0K1ic31icoK1icq1icwK1icy1iczK1id11id5K1id71id8G1id9!K1ida1idgG1idj1idkG1idn1idpG1ids!K1idz!G1ie51ie9K1iea1iebG1iee1iekG1ieo1iesG1iio1ik4K1ik51ikmG1ikn1ikqK1ikw1il5O1ila!G1ilb1ildK1im81injK1ink1io3G1io41io5K1io7!K1iog1iopO1itc1iumK1iun1iutG1iuw1iv4G1ivs1ivvK1ivw1ivxG1iww1iy7K1iy81iyoG1iys!K1iz41izdO1j0g1j1mK1j1n1j1zG1j20!K1j281j2hO1j4t1j57G1j5c1j5lO1jb41jcbK1jcc1jcqG1jfk1jhbK1jhc1jhlO1ji71jieK1jih!K1jik1jirK1jit1jiuK1jiw1jjjK1jjk1jjpG1jjr1jjsG1jjv1jjyG1jjz!K1jk0!G1jk1!K1jk21jk3G1jkg1jkpO1jmo1jmvK1jmy1jo0K1jo11jo7G1joa1jogG1joh!K1joj!K1jok!G1jpc!K1jpd1jpmG1jpn1jqqK1jqr1jqxG1jqy!K1jqz1jr2G1jrb!G1jrk!K1jrl1jrvG1jrw1jt5K1jt61jtlG1jtp!K1juo1jw8K1k3k1k3sK1k3u1k4uK1k4v1k52G1k541k5bG1k5c!K1k5s1k61O1k6q1k7jK1k7m1k87G1k891k8mG1kao1kauK1kaw1kaxK1kaz1kc0K1kc11kc6G1kca!G1kcc1kcdG1kcf1kclG1kcm!K1kcn!G1kcw1kd5O1kdc1kdhK1kdj1kdkK1kdm1kehK1kei1kemG1keo1kepG1ker1kevG1kew!K1kf41kfdO1ko01koiK1koj1komG1kts!K1kw01lllK1log1lriK1ls01lxfK1o1s1oviK1ovk1ovsI1s001sg6K1z401zjsK1zk01zkuK1zkw1zl5O1zo01zotK1zow1zp0G1zpc1zqnK1zqo1zquG1zr41zr7K1zrk1zrtO1zs31zsnK1zst1ztbK20cg20e7K20hs20juK20jz!G20k0!K20k120ljG20lr20luG20lv20m7K20o020o1K20o3!K20o4!G20og20ohG2dc0!J2dlw2dlzJ2fpc2fsaK2fsg2fssK2fsw2ft4K2ftc2ftlK2ftp2ftqG2fts2ftvI2jxh2jxlG2jxp2jxuG2jxv2jy2I2jy32jyaG2jyd2jyjG2jze2jzhG2k3m2k3oG2kg02kicK2kie2kkcK2kke2kkfK2kki!K2kkl2kkmK2kkp2kksK2kku2kl5K2kl7!K2kl92klfK2klh2kn9K2knb2kneK2knh2knoK2knq2knwK2kny2kopK2kor2kouK2kow2kp0K2kp2!K2kp62kpcK2kpe2kytK2kyw2kzkK2kzm2l0aK2l0c2l16K2l182l1wK2l1y2l2sK2l2u2l3iK2l3k2l4eK2l4g2l54K2l562l60K2l622l6qK2l6s2l6zK2l722l8fO2lmo2lo6G2lob2lpoG2lpx!G2lqc!G2lqz2lr3G2lr52lrjG2mtc2mtiG2mtk2mu0G2mu32mu9G2mub2mucG2mue2muiG2n0g2n1oK2n1s2n1yG2n1z2n25K2n282n2hO2n2m!K2ncw2ne3K2ne42ne7G2ne82nehO2oe82ojoK2ok02ok6G2olc2on7K2on82oneG2onf!K2onk2ontO2pkw2pkzK2pl12plrK2plt2pluK2plw!K2plz!K2pm12pmaK2pmc2pmfK2pmh!K2pmj!K2pmq!K2pmv!K2pmx!K2pmz!K2pn12pn3K2pn52pn6K2pn8!K2pnb!K2pnd!K2pnf!K2pnh!K2pnj!K2pnl2pnmK2pno!K2pnr2pnuK2pnw2po2K2po42po7K2po92pocK2poe!K2pog2popK2por2pp7K2ppd2ppfK2pph2pplK2ppn2pq3K2q7k2q89K2q8g2q95K2q9c2qa1K2qcm2qdbH2qrf2qrjG2sc02sc9Ojny9!Ijnz4jo1rGjo5cjobzG",231,B.a48,B.L3,A.ah("fs"))) +s($,"bWy","byf",()=>{var q=t.N +return new A.atH(A.ap(["birthday","bday","birthdayDay","bday-day","birthdayMonth","bday-month","birthdayYear","bday-year","countryCode","country","countryName","country-name","creditCardExpirationDate","cc-exp","creditCardExpirationMonth","cc-exp-month","creditCardExpirationYear","cc-exp-year","creditCardFamilyName","cc-family-name","creditCardGivenName","cc-given-name","creditCardMiddleName","cc-additional-name","creditCardName","cc-name","creditCardNumber","cc-number","creditCardSecurityCode","cc-csc","creditCardType","cc-type","email","email","familyName","family-name","fullStreetAddress","street-address","gender","sex","givenName","given-name","impp","impp","jobTitle","organization-title","language","language","middleName","middleName","name","name","namePrefix","honorific-prefix","nameSuffix","honorific-suffix","newPassword","new-password","nickname","nickname","oneTimeCode","one-time-code","organizationName","organization","password","current-password","photo","photo","postalCode","postal-code","streetAddressLevel1","address-level1","streetAddressLevel2","address-level2","streetAddressLevel3","address-level3","streetAddressLevel4","address-level4","streetAddressLine1","address-line1","streetAddressLine2","address-line2","streetAddressLine3","address-line3","telephoneNumber","tel","telephoneNumberAreaCode","tel-area-code","telephoneNumberCountryCode","tel-country-code","telephoneNumberExtension","tel-extension","telephoneNumberLocal","tel-local","telephoneNumberLocalPrefix","tel-local-prefix","telephoneNumberLocalSuffix","tel-local-suffix","telephoneNumberNational","tel-national","transactionAmount","transaction-amount","transactionCurrency","transaction-currency","url","url","username","username"],q,q))}) +s($,"c2Z","aqR",()=>new A.aFh()) +s($,"c15","bBi",()=>A.a5i(4)) +s($,"c13","bmP",()=>A.a5i(16)) +s($,"c14","bBh",()=>A.bHO($.bmP())) +r($,"c2w","h0",()=>A.bF4(A.a_(self.window,"console"))) +s($,"c3c","eg",()=>A.bFD(0,$.bL())) +s($,"bWP","aqs",()=>A.bwG("_$dart_dartClosure")) +s($,"bZy","bzK",()=>A.bjk(0)) +s($,"c2p","bhf",()=>B.b7.ko(new A.bfY())) +s($,"bZ_","bzp",()=>A.r1(A.aYX({ +toString:function(){return"$receiver$"}}))) +s($,"bZ0","bzq",()=>A.r1(A.aYX({$method$:null, +toString:function(){return"$receiver$"}}))) +s($,"bZ1","bzr",()=>A.r1(A.aYX(null))) +s($,"bZ2","bzs",()=>A.r1(function(){var $argumentsExpr$="$arguments$" +try{null.$method$($argumentsExpr$)}catch(q){return q.message}}())) +s($,"bZ5","bzv",()=>A.r1(A.aYX(void 0))) +s($,"bZ6","bzw",()=>A.r1(function(){var $argumentsExpr$="$arguments$" +try{(void 0).$method$($argumentsExpr$)}catch(q){return q.message}}())) +s($,"bZ4","bzu",()=>A.r1(A.bsN(null))) +s($,"bZ3","bzt",()=>A.r1(function(){try{null.$method$}catch(q){return q.message}}())) +s($,"bZ8","bzy",()=>A.r1(A.bsN(void 0))) +s($,"bZ7","bzx",()=>A.r1(function(){try{(void 0).$method$}catch(q){return q.message}}())) +s($,"c0a","bAT",()=>A.a9F(254)) +s($,"c_X","bAH",()=>97) +s($,"c08","bAR",()=>65) +s($,"c_Y","bAI",()=>122) +s($,"c09","bAS",()=>90) +s($,"c_Z","bAJ",()=>48) +s($,"bZl","bmo",()=>A.bLZ()) +s($,"bXp","rO",()=>A.ah("a8").a($.bhf())) +s($,"bXo","byD",()=>A.bMu(!1,B.b7,t.y)) +s($,"bZc","bzB",()=>new A.aZI().$0()) +s($,"bZd","bzC",()=>new A.aZH().$0()) +s($,"bZm","bzH",()=>A.bI4(A.jk(A.a([-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.t)))) +s($,"bXa","byv",()=>A.ap(["iso_8859-1:1987",B.cu,"iso-ir-100",B.cu,"iso_8859-1",B.cu,"iso-8859-1",B.cu,"latin1",B.cu,"l1",B.cu,"ibm819",B.cu,"cp819",B.cu,"csisolatin1",B.cu,"iso-ir-6",B.c4,"ansi_x3.4-1968",B.c4,"ansi_x3.4-1986",B.c4,"iso_646.irv:1991",B.c4,"iso646-us",B.c4,"us-ascii",B.c4,"us",B.c4,"ibm367",B.c4,"cp367",B.c4,"csascii",B.c4,"ascii",B.c4,"csutf8",B.O,"utf-8",B.O],t.N,A.ah("mM"))) +s($,"bZr","rP",()=>A.b0E(0)) +s($,"bZq","aqv",()=>A.b0E(1)) +s($,"bZo","bmq",()=>$.aqv().tW(0)) +s($,"bZn","bmp",()=>A.b0E(1e4)) +r($,"bZp","bzI",()=>A.bF("^\\s*([+-]?)((0x[a-f0-9]+)|(\\d+)|([a-z0-9]+))\\s*$",!1,!1,!1)) +s($,"c_0","bmy",()=>typeof process!="undefined"&&Object.prototype.toString.call(process)=="[object process]"&&process.platform=="win32") +s($,"c_1","bA1",()=>A.bF("^[\\-\\.0-9A-Z_a-z~]*$",!0,!1,!1)) +r($,"c_C","bAr",()=>new Error().stack!=void 0) +s($,"c_D","ho",()=>A.rL(B.KZ)) +s($,"bYP","Wd",()=>{A.bIR() +return $.aMb}) +s($,"c0F","bB0",()=>A.bOs()) +s($,"bWL","byj",()=>({})) +s($,"bZK","bzT",()=>A.op(["A","ABBR","ACRONYM","ADDRESS","AREA","ARTICLE","ASIDE","AUDIO","B","BDI","BDO","BIG","BLOCKQUOTE","BR","BUTTON","CANVAS","CAPTION","CENTER","CITE","CODE","COL","COLGROUP","COMMAND","DATA","DATALIST","DD","DEL","DETAILS","DFN","DIR","DIV","DL","DT","EM","FIELDSET","FIGCAPTION","FIGURE","FONT","FOOTER","FORM","H1","H2","H3","H4","H5","H6","HEADER","HGROUP","HR","I","IFRAME","IMG","INPUT","INS","KBD","LABEL","LEGEND","LI","MAP","MARK","MENU","METER","NAV","NOBR","OL","OPTGROUP","OPTION","OUTPUT","P","PRE","PROGRESS","Q","S","SAMP","SECTION","SELECT","SMALL","SOURCE","SPAN","STRIKE","STRONG","SUB","SUMMARY","SUP","TABLE","TBODY","TD","TEXTAREA","TFOOT","TH","THEAD","TIME","TR","TRACK","TT","U","UL","VAR","VIDEO","WBR"],t.N)) +s($,"bX4","bmd",()=>B.c.Kv(A.bic(),"Opera",0)) +s($,"bX3","bys",()=>!$.bmd()&&B.c.Kv(A.bic(),"Trident/",0)) +s($,"bX2","byr",()=>B.c.Kv(A.bic(),"Firefox",0)) +s($,"bX1","byq",()=>"-"+$.byt()+"-") +s($,"bX5","byt",()=>{if($.byr())var q="moz" +else if($.bys())q="ms" +else q=$.bmd()?"o":"webkit" +return q}) +s($,"bZM","bWi",()=>{var q=A.bsf() +q.vP(0) +return q}) +s($,"bZL","bWh",()=>A.bEu().a) +s($,"c_I","bAw",()=>new A.B()) +s($,"bY9","A5",()=>A.bN2()) +s($,"bY6","bmg",()=>{$.A5() +return!1}) +s($,"bY7","bmh",()=>{$.A5() +return!1}) +s($,"bY8","bgT",()=>{$.A5() +return!1}) +s($,"bY4","byV",()=>{$.A5() +return!1}) +s($,"bY5","byW",()=>{$.A5() +return!1}) +s($,"c_o","bAg",()=>A.bvW(self)) +s($,"bZA","bmv",()=>A.bwG("_$dart_dartObject")) +s($,"c_p","bmz",()=>function DartObject(a){this.o=a}) +s($,"bYd","byY",()=>{var q=new A.b5I(A.bI1(8)) +q.alS() +return q}) +s($,"bXb","fH",()=>A.bDp(A.bqS(A.a([1],t.t)).buffer,0).getInt8(0)===1?B.bi:B.qn) +s($,"c1t","Wk",()=>new A.avB(A.F(t.N,A.ah("rb")))) +r($,"c0C","bh1",()=>B.NH) +s($,"c2u","bBI",()=>new A.aLK()) +s($,"c_n","bAf",()=>new A.B()) +s($,"c0b","bAU",()=>A.bF("max-age|max-stale|min-fresh|must-revalidate|public|private|no-cache|no-store",!0,!1,!1)) +s($,"bWB","byg",()=>new A.aaN()) +s($,"c30","bBO",()=>A.bF('[^()<>@,;:"\\\\/[\\]?={} \\t\\x00-\\x1F\\x7F]+',!0,!1,!1)) +s($,"c0e","bAW",()=>A.bF("(?:\\r\\n)?[ \\t]+",!0,!1,!1)) +s($,"c3a","bBS",()=>A.bF("(?:"+$.bAW().a+")*",!0,!1,!1)) +s($,"c12","bmO",()=>A.a0N(null,t.S)) +s($,"bXf","byx",()=>{var q,p,o=new A.aBo() +o.Hw($.Wb()) +q=A.bxm("#__file_picker_web-file-input") +if(q==null){q=A.bMl("flt-file-picker-inputs",null) +q.id="__file_picker_web-file-input" +p=A.bxm("body") +p.toString +J.Wo(p).G(0,q)}o.a=q +return o}) +s($,"bXg","Wb",()=>new A.B()) +r($,"bFU","bme",()=>A.bFT()) +s($,"c_k","bAd",()=>A.bHV("miguelruivo.flutter.plugins.filepicker",$.bmg()||$.bgT()||$.bmh()?B.fX:B.bM,null)) +s($,"c_N","bAB",()=>A.bjQ(1,1,500)) +s($,"c1z","bmU",()=>new A.aeH()) +s($,"bZO","bzV",()=>A.hh(1,0,t.i)) +s($,"bZN","bzU",()=>A.hh(0,1,t.i)) +s($,"c06","bAQ",()=>A.hh(B.fq,B.i,t.EP)) +s($,"c0_","bmG",()=>A.hh(B.i,B.aaB,t.EP)) +s($,"c_J","bAx",()=>A.hh(B.co,B.i,t.EP)) +r($,"bZz","bzL",()=>new A.a_Q(B.anC,B.anB)) +s($,"c1A","bmV",()=>new A.a_B()) +r($,"bZQ","bzX",()=>new A.aiD(B.aox,B.al)) +s($,"c16","bBj",()=>new A.bef().$0()) +s($,"c_j","bAc",()=>new A.bd6().$0()) +r($,"bXk","jm",()=>$.bG5) +s($,"bWD","b5",()=>A.aT(0,null,!1,t.Nw)) +s($,"bZx","Wg",()=>new A.v7(0,$.bzJ())) +s($,"bZw","bzJ",()=>A.bPN(0)) +s($,"c_q","aqA",()=>A.or(null,t.N)) +s($,"c_r","bmA",()=>A.bsf()) +s($,"bZj","bzG",()=>A.bjk(8)) +s($,"bYO","bzm",()=>A.bF("^\\s*at ([^\\s]+).*$",!0,!1,!1)) +s($,"bZV","bzY",()=>A.bDT(B.u,B.Pk)) +s($,"c1E","bh4",()=>new A.afa()) +s($,"bZD","bzO",()=>A.iT(B.cx)) +s($,"bZC","bzN",()=>A.iT(B.bp)) +s($,"bZE","bzP",()=>A.hh(0,0.5,t.i)) +s($,"bZY","bzZ",()=>A.hh(0.75,1,t.i)) +s($,"bZZ","bA_",()=>A.iT(B.ajz)) +s($,"bXG","byL",()=>A.iT(B.aL)) +s($,"bXH","byM",()=>A.iT(B.Vo)) +r($,"bYX","bml",()=>new A.aa6(new A.aXN(),A.cb()===B.bo)) +s($,"bZP","bzW",()=>A.bLj()) +s($,"c_a","bA9",()=>{var q=t.i +return A.a([A.bsM(A.hh(0,0.4,q).oB(A.iT(B.QF)),0.166666,q),A.bsM(A.hh(0.4,1,q).oB(A.iT(B.QJ)),0.833334,q)],t.x0)}) +s($,"c_9","aqy",()=>A.aYV($.bA9(),t.i)) +s($,"c_2","bA2",()=>A.hh(0,1,t.i).oB(A.iT(B.Vp))) +s($,"c_3","bA3",()=>A.hh(1.1,1,t.i).oB($.aqy())) +s($,"c_4","bA4",()=>A.hh(0.85,1,t.i).oB($.aqy())) +s($,"c_5","bA5",()=>A.hh(0,0.6,t.PM).oB(A.iT(B.Vr))) +s($,"c_6","bA6",()=>A.hh(1,0,t.i).oB(A.iT(B.Vv))) +s($,"c_8","bA8",()=>A.hh(1,1.05,t.i).oB($.aqy())) +s($,"c_7","bA7",()=>A.hh(1,0.9,t.i).oB($.aqy())) +s($,"bZu","bmt",()=>A.iT(B.Vt).oB(A.iT(B.ou))) +s($,"bZv","bmu",()=>A.iT(B.Vs).oB(A.iT(B.ou))) +s($,"bZs","bmr",()=>A.iT(B.ou)) +s($,"bZt","bms",()=>A.iT(B.acm)) +s($,"bYo","bz4",()=>A.hh(0,0.75,t.i)) +s($,"bYm","bz2",()=>A.hh(0,1.5,t.i)) +s($,"bYn","bz3",()=>A.hh(1,0,t.i)) +s($,"bZH","bzQ",()=>A.hh(0.875,1,t.i).oB(A.iT(B.bp))) +s($,"c2l","bnc",()=>new A.a4Y()) +s($,"bYZ","bzo",()=>A.bKT()) +s($,"bYY","bzn",()=>new A.afW(A.F(A.ah("G3"),t.ff),5,A.ah("afW"))) +s($,"bXU","bgR",()=>A.bI3(4)) +r($,"bYp","bz5",()=>B.Pu) +r($,"bYr","bz7",()=>{var q=null +return A.bsz(q,B.m8,q,q,q,q,"sans-serif",q,q,18,q,q,q,q,q,q,q,q,q,q,q)}) +r($,"bYq","bz6",()=>{var q=null +return A.bjr(q,q,q,q,q,q,q,q,q,B.l7,B.j,q)}) +s($,"c__","bA0",()=>A.bHP()) +s($,"bYs","bz8",()=>A.a9F(65532)) +s($,"c18","bBk",()=>{var q=A.bIl() +q.sa5(0,B.u) +return q}) +s($,"c07","aqB",()=>98304) +s($,"bYz","bgV",()=>A.oQ()) +s($,"bYy","bzc",()=>A.bqQ(0)) +s($,"bYA","bzd",()=>A.bqQ(0)) +s($,"bYB","bze",()=>A.bHQ().a) +s($,"c2F","aqP",()=>{var q=t.N,p=t.L0 +return new A.aLC(A.F(q,A.ah("U")),A.F(q,p),A.F(q,p))}) +s($,"bWz","bm9",()=>new A.atK()) +s($,"bXJ","byN",()=>A.ap([4294967562,B.VL,4294967564,B.VM,4294967556,B.VN],t.S,t.SQ)) +s($,"bYh","bgU",()=>new A.aNd(A.a([],A.ah("G<~(n7)>")),A.F(t.v3,t.bd))) +s($,"bYg","bz_",()=>{var q=t.v3 +return A.ap([B.aok,A.em([B.fv],q),B.aol,A.em([B.fx],q),B.aom,A.em([B.fv,B.fx],q),B.aoj,A.em([B.fv],q),B.aog,A.em([B.fu],q),B.aoh,A.em([B.hS],q),B.aoi,A.em([B.fu,B.hS],q),B.aof,A.em([B.fu],q),B.aoc,A.em([B.ft],q),B.aod,A.em([B.hR],q),B.aoe,A.em([B.ft,B.hR],q),B.aob,A.em([B.ft],q),B.aoo,A.em([B.fw],q),B.aop,A.em([B.hT],q),B.aoq,A.em([B.fw,B.hT],q),B.aon,A.em([B.fw],q),B.aor,A.em([B.eo],q),B.aos,A.em([B.kD],q),B.aot,A.em([B.kC],q),B.aou,A.em([B.hQ],q)],A.ah("eV"),A.ah("bz"))}) +s($,"bYf","bmi",()=>A.ap([B.fv,B.hF,B.fx,B.kl,B.fu,B.cl,B.hS,B.cH,B.ft,B.hE,B.hR,B.kk,B.fw,B.hG,B.hT,B.km,B.eo,B.hB,B.kD,B.ki,B.kC,B.kj],t.v3,t.bd)) +s($,"bYe","byZ",()=>{var q=A.F(t.v3,t.bd) +q.p(0,B.hQ,B.nB) +q.I(0,$.bmi()) +return q}) +s($,"bXi","byz",()=>new A.JN("\n",!1,"")) +s($,"bXh","byy",()=>new A.JN(A.bF("[0-9]",!0,!1,!1),!0,"")) +s($,"bYW","du",()=>{var q=$.aqw() +q=new A.aa4(q,A.em([q],A.ah("OE")),A.F(t.N,A.ah("brN"))) +q.c=B.Ft +q.ganC().tY(q.gavR()) +return q}) +s($,"bZT","aqw",()=>new A.aj2()) +s($,"bZ9","bmm",()=>{var q=new A.aay() +q.a=B.aaW +q.gaCO().tY(q.gaur()) +return q}) +r($,"bZi","bzF",()=>{var q=A.ah("~(c7)") +return A.ap([B.ak_,A.boQ(!0),B.akR,A.boQ(!1),B.akq,new A.a7F(A.LR(q)),B.akf,new A.a5s(A.LR(q)),B.akl,new A.a6u(A.LR(q)),B.KX,new A.Jf(!1,A.LR(q)),B.pb,A.bJB(),B.akn,new A.a6x(A.LR(q)),B.akE,new A.aaZ(A.LR(q))],t.n,t.od)}) +s($,"bWU","bgN",()=>{var q,p,o,n=t.vz,m=A.F(t.Vz,n) +for(q=A.ah("bj"),p=0;p<2;++p){o=B.nw[p] +m.I(0,A.ap([A.hI(B.ck,!1,!1,!1,o),B.mn,A.hI(B.ck,!1,!0,!1,o),B.mr,A.hI(B.ck,!0,!1,!1,o),B.mp,A.hI(B.bW,!1,!1,!1,o),B.mo,A.hI(B.bW,!1,!0,!1,o),B.ms,A.hI(B.bW,!0,!1,!1,o),B.mq],q,n))}m.p(0,B.eA,B.hf) +m.p(0,B.eB,B.hg) +m.p(0,B.eC,B.j8) +m.p(0,B.eD,B.j9) +m.p(0,B.JR,B.mF) +m.p(0,B.JS,B.mG) +m.p(0,B.JT,B.mJ) +m.p(0,B.JU,B.mK) +m.p(0,B.oG,B.e8) +m.p(0,B.oH,B.e9) +m.p(0,B.oI,B.j6) +m.p(0,B.oJ,B.j7) +m.p(0,B.JV,B.rU) +m.p(0,B.JW,B.rV) +m.p(0,B.JX,B.rS) +m.p(0,B.JY,B.rT) +m.p(0,B.JZ,B.mH) +m.p(0,B.K_,B.mI) +m.p(0,B.K0,B.St) +m.p(0,B.K1,B.Su) +m.p(0,B.adp,B.Sr) +m.p(0,B.adq,B.Ss) +m.p(0,B.i6,B.t_) +m.p(0,B.i7,B.t0) +m.p(0,B.oE,B.mL) +m.p(0,B.oK,B.mM) +m.p(0,B.Kc,B.rs) +m.p(0,B.Kd,B.rr) +m.p(0,B.Ke,B.qr) +m.p(0,B.oL,B.qu) +m.p(0,B.adJ,B.qx) +m.p(0,B.adx,B.qt) +m.p(0,B.i8,B.V) +m.p(0,B.l_,B.V) +return m}) +s($,"bWT","bmb",()=>$.bgN()) +s($,"bWV","byl",()=>$.bmb()) +s($,"bWX","byn",()=>{var q=A.oo($.bgN(),t.Vz,t.vz) +q.p(0,B.l0,B.e8) +q.p(0,B.l1,B.e9) +q.p(0,B.l2,B.rU) +q.p(0,B.l3,B.rV) +return q}) +s($,"bWY","bmc",()=>{var q,p,o,n=t.vz,m=A.F(t.Vz,n) +for(q=A.ah("bj"),p=0;p<2;++p){o=B.nw[p] +m.I(0,A.ap([A.hI(B.ck,!1,!1,!1,o),B.mn,A.hI(B.ck,!0,!1,!1,o),B.mr,A.hI(B.ck,!1,!1,!0,o),B.mp,A.hI(B.bW,!1,!1,!1,o),B.mo,A.hI(B.bW,!0,!1,!1,o),B.ms,A.hI(B.bW,!1,!1,!0,o),B.mq],q,n))}m.p(0,B.eA,B.hf) +m.p(0,B.eB,B.hg) +m.p(0,B.eC,B.j8) +m.p(0,B.eD,B.j9) +m.p(0,B.JR,B.mF) +m.p(0,B.JS,B.mG) +m.p(0,B.JT,B.mJ) +m.p(0,B.JU,B.mK) +m.p(0,B.oG,B.mH) +m.p(0,B.oH,B.mI) +m.p(0,B.oI,B.e8) +m.p(0,B.oJ,B.e9) +m.p(0,B.JV,B.rY) +m.p(0,B.JW,B.rZ) +m.p(0,B.JX,B.rW) +m.p(0,B.JY,B.rX) +m.p(0,B.K2,B.e8) +m.p(0,B.K3,B.e9) +m.p(0,B.K4,B.j6) +m.p(0,B.K5,B.j7) +m.p(0,B.adr,B.rQ) +m.p(0,B.ads,B.rR) +m.p(0,B.adt,B.mC) +m.p(0,B.adu,B.mD) +m.p(0,B.ady,B.qw) +m.p(0,B.l0,B.Jn) +m.p(0,B.l1,B.Jo) +m.p(0,B.l2,B.mC) +m.p(0,B.l3,B.mD) +m.p(0,B.i6,B.ox) +m.p(0,B.i7,B.kS) +m.p(0,B.oE,B.mL) +m.p(0,B.oK,B.mM) +m.p(0,B.K8,B.rs) +m.p(0,B.K9,B.rr) +m.p(0,B.Ka,B.qr) +m.p(0,B.Kb,B.qu) +m.p(0,B.adz,B.qx) +m.p(0,B.adA,B.qt) +m.p(0,B.adB,B.e9) +m.p(0,B.oL,B.e8) +m.p(0,B.adC,B.hg) +m.p(0,B.adE,B.hf) +m.p(0,B.adF,B.j9) +m.p(0,B.adG,B.j8) +m.p(0,B.i8,B.V) +m.p(0,B.l_,B.V) +return m}) +s($,"bWW","bym",()=>$.bmc()) +s($,"bX_","byp",()=>{var q=A.oo($.bgN(),t.Vz,t.vz) +q.p(0,B.i6,B.t_) +q.p(0,B.i7,B.t0) +q.p(0,B.l0,B.Sp) +q.p(0,B.l1,B.Sq) +q.p(0,B.l2,B.Sn) +q.p(0,B.l3,B.So) +q.p(0,B.K6,B.j6) +q.p(0,B.K7,B.j7) +q.p(0,B.adn,B.rS) +q.p(0,B.ado,B.rT) +return q}) +s($,"bWZ","byo",()=>{var q,p,o,n=t.vz,m=A.F(t.Vz,n) +for(q=A.ah("bj"),p=0;p<2;++p){o=B.nw[p] +m.I(0,A.ap([A.hI(B.ck,!1,!1,!1,o),B.V,A.hI(B.bW,!1,!1,!1,o),B.V,A.hI(B.ck,!0,!1,!1,o),B.V,A.hI(B.bW,!0,!1,!1,o),B.V,A.hI(B.ck,!1,!0,!1,o),B.V,A.hI(B.bW,!1,!0,!1,o),B.V,A.hI(B.ck,!1,!1,!0,o),B.V,A.hI(B.bW,!1,!1,!0,o),B.V],q,n))}m.I(0,B.a71) +m.p(0,B.Kc,B.V) +m.p(0,B.K8,B.V) +m.p(0,B.Kd,B.V) +m.p(0,B.K9,B.V) +m.p(0,B.Ke,B.V) +m.p(0,B.Ka,B.V) +m.p(0,B.oL,B.V) +m.p(0,B.Kb,B.V) +return m}) +r($,"bZR","bmw",()=>new A.aiC(B.aov,B.al)) +s($,"bZJ","bzS",()=>A.hh(1,0,t.i)) +s($,"bXX","nS",()=>A.a0N(null,t.uK)) +r($,"bZX","aqx",()=>{var q=A.ed(null,t.v),p=A.bDV(t.H) +return new A.aiB(B.fD,q,p)}) +s($,"bZI","bzR",()=>A.dC(16667,0,0)) +s($,"bYv","bzb",()=>A.bjQ(0.5,1.1,100)) +s($,"bWG","bgL",()=>A.W0(0.78)/A.W0(0.9)) +r($,"bXj","byA",()=>{var q=B.Sk.aNn() +return A.bDv(q,A.k(q).h("bA.T"),t.y).ig(0,new A.aBX(),A.ah("qa"))}) +s($,"bWS","bgM",()=>{var q=null,p=new A.b6z(A.bi1(B.h_.gxK(B.h_),$.aqu()),A.bTP(),B.OL,B.h_),o=t.N,n=new A.a7L(p,A.F(o,t._A),q) +n.alF(q) +n.OF(q) +p.a=n +n=p.b +p=p.a8O(0,n==null?p.b=p.a8O(0,B.h_.gxK(B.h_)).a8n(".tmp_").b:n) +p.a8m() +p=new A.aIO(p.U_("cache")) +n=A.bGA() +p=new A.awo(new A.a5u(),p,B.RG,200,n) +o=new A.wq(A.F(o,A.ah("bA")),p,A.bDq(p)) +o.alq(p) +return o}) +r($,"c1p","aqI",()=>new A.aub()) +s($,"c2_","bn_",()=>A.biN(B.a2T,t.N)) +s($,"c1B","bBw",()=>{var q=null +return A.ap(["af",A.aW(B.W9,B.a1b,B.ae,B.yU,B.a2g,6,5,B.zs,"af",B.P,B.zn,B.YB,B.yz,B.eh,B.zc,B.zs,B.P,B.zn,B.yz,B.zc,B.z8,B.a1,B.z8,B.r,q),"am",A.aW(B.a34,B.ZX,B.ae,B.a08,B.YI,6,5,B.zz,"am",B.z3,B.uc,B.a4x,B.zB,B.a0r,B.xU,B.zz,B.z3,B.uc,B.zB,B.xU,B.y7,B.aO,B.y7,B.r,q),"ar",A.aW(B.Yj,B.Xs,B.a21,B.Zx,B.a1d,5,4,B.k3,"ar",B.zk,B.uw,B.xs,B.k3,B.xs,B.jX,B.k3,B.zk,B.uw,B.k3,B.jX,B.jX,B.aO,B.jX,B.uG,"\u0660"),"as",A.aW(B.Ys,B.a4A,B.ae,B.a1m,B.Zl,6,5,B.x4,"as",B.xg,B.wA,B.Zn,B.wt,B.WG,B.zV,B.x4,B.xg,B.wA,B.wt,B.zV,B.wp,B.Yu,B.wp,B.cB,"\u09e6"),"az",A.aW(B.a9,B.XR,B.ae,B.WP,B.Wt,0,6,B.y4,"az",B.bd,B.w8,B.YC,B.uU,B.a3E,B.a3B,B.y4,B.bd,B.w8,B.uU,B.Wg,B.yv,B.a1,B.yv,B.r,q),"be",A.aW(B.a9,B.Wn,B.Yb,B.Z5,B.XF,0,6,B.a0N,"be",B.uB,B.A0,B.a2h,B.a_F,B.Zd,B.xk,B.a1H,B.uB,B.A0,B.YK,B.xk,B.zT,B.YH,B.zT,B.r,q),"bg",A.aW(B.a2c,B.XM,B.cE,B.a12,B.a0a,0,3,B.wv,"bg",B.ue,B.ju,B.Z4,B.xo,B.a2U,B.jZ,B.wv,B.ue,B.ju,B.xo,B.jZ,B.xL,B.a_T,B.xL,B.r,q),"bn",A.aW(B.a9,B.jG,B.ae,B.a0z,B.XC,6,5,B.nu,"bn",B.xT,B.um,B.vR,B.ZB,B.vR,B.vw,B.nu,B.xT,B.um,B.nu,B.vw,B.yC,B.aO,B.yC,B.r,"\u09e6"),"bs",A.aW(B.a3C,B.Wo,B.z6,B.a0B,B.w_,0,6,B.zl,"bs",B.dJ,B.y8,B.a3T,B.wz,B.ZY,B.k8,B.zl,B.dJ,B.kc,B.wz,B.k8,B.jS,B.a1,B.jS,B.r,q),"ca",A.aW(B.hy,B.a4m,B.ZU,B.a2E,B.a1f,0,3,B.a1j,"ca",B.wZ,B.ui,B.XQ,B.a_e,B.a4e,B.uE,B.a2B,B.wZ,B.ui,B.a49,B.uE,B.wP,B.uk,B.wP,B.r,q),"cs",A.aW(B.a00,B.a2O,B.ae,B.Xt,B.a1e,0,3,B.a2v,"cs",B.bd,B.vK,B.Xc,B.xe,B.aF,B.ua,B.a3U,B.bd,B.vK,B.xe,B.ua,B.zJ,B.jy,B.zJ,B.r,q),"cy",A.aW(B.a4B,B.X6,B.a06,B.a2S,B.YL,0,3,B.uQ,"cy",B.uZ,B.zU,B.a4K,B.ZT,B.YT,B.Xi,B.uQ,B.uZ,B.zU,B.a3P,B.YJ,B.vx,B.a1,B.vx,B.r,q),"da",A.aW(B.a9,B.a_l,B.a4u,B.fg,B.fg,0,3,B.u6,"da",B.P,B.dI,B.hu,B.xJ,B.a0J,B.ht,B.u6,B.P,B.dI,B.xJ,B.a4s,B.fb,B.nh,B.fb,B.r,q),"de",A.aW(B.a9,B.ni,B.xq,B.fe,B.fe,0,3,B.k7,"de",B.P,B.ff,B.np,B.vP,B.aF,B.uH,B.k7,B.P,B.ff,B.jY,B.yZ,B.jx,B.a1,B.jx,B.r,q),"de_CH",A.aW(B.a9,B.ni,B.xq,B.fe,B.fe,0,3,B.k7,"de_CH",B.P,B.ff,B.np,B.vP,B.aF,B.uH,B.k7,B.P,B.ff,B.jY,B.yZ,B.jx,B.a1,B.jx,B.r,q),"el",A.aW(B.a0f,B.yf,B.a1D,B.a0s,B.a2f,0,3,B.a1v,"el",B.uy,B.vd,B.a1K,B.a3s,B.a_U,B.yg,B.ZN,B.uy,B.vd,B.a4f,B.yg,B.zX,B.aO,B.zX,B.r,q),"en",A.aW(B.a9,B.ej,B.cX,B.bV,B.bq,6,5,B.aU,"en",B.P,B.ay,B.cC,B.df,B.aF,B.aV,B.aU,B.P,B.ay,B.df,B.aV,B.aW,B.aO,B.aW,B.r,q),"en_AU",A.aW(B.ei,B.jz,B.cX,B.bV,B.bq,0,6,B.aU,"en_AU",B.P,B.uL,B.cC,B.a4t,B.aF,B.aV,B.aU,B.P,B.uL,B.df,B.aV,B.aW,B.aO,B.aW,B.r,q),"en_CA",A.aW(B.dH,B.a__,B.cX,B.bV,B.bq,6,5,B.aU,"en_CA",B.P,B.ay,B.cC,B.bO,B.aF,B.aV,B.aU,B.P,B.ay,B.bO,B.aV,B.aW,B.aO,B.aW,B.r,q),"en_GB",A.aW(B.ei,B.wa,B.cX,B.bV,B.bq,0,3,B.aU,"en_GB",B.P,B.ay,B.cC,B.bO,B.aF,B.aV,B.aU,B.P,B.ay,B.bO,B.aV,B.aW,B.a1,B.aW,B.r,q),"en_IE",A.aW(B.dH,B.u7,B.cX,B.bV,B.bq,0,3,B.aU,"en_IE",B.P,B.ay,B.cC,B.bO,B.aF,B.aV,B.aU,B.P,B.ay,B.bO,B.aV,B.aW,B.a1,B.aW,B.r,q),"en_IN",A.aW(B.ei,B.a0E,B.cX,B.bV,B.bq,6,5,B.aU,"en_IN",B.P,B.ay,B.cC,B.bO,B.aF,B.aV,B.aU,B.P,B.ay,B.bO,B.aV,B.aW,B.aO,B.aW,B.cB,q),"en_NZ",A.aW(B.ei,B.Y2,B.cX,B.bV,B.bq,0,6,B.aU,"en_NZ",B.P,B.ay,B.cC,B.bO,B.aF,B.aV,B.aU,B.P,B.ay,B.bO,B.aV,B.aW,B.aO,B.aW,B.r,q),"en_SG",A.aW(B.ei,B.jz,B.cX,B.bV,B.bq,6,5,B.aU,"en_SG",B.P,B.ay,B.cC,B.bO,B.aF,B.aV,B.aU,B.P,B.ay,B.bO,B.aV,B.aW,B.aO,B.aW,B.r,q),"en_US",A.aW(B.a9,B.ej,B.cX,B.bV,B.bq,6,5,B.aU,"en_US",B.P,B.ay,B.cC,B.df,B.aF,B.aV,B.aU,B.P,B.ay,B.df,B.aV,B.aW,B.aO,B.aW,B.r,q),"en_ZA",A.aW(B.ei,B.a1n,B.cX,B.bV,B.bq,6,5,B.aU,"en_ZA",B.P,B.ay,B.cC,B.bO,B.aF,B.aV,B.aU,B.P,B.ay,B.bO,B.aV,B.aW,B.a1,B.aW,B.r,q),"es",A.aW(B.hy,B.xn,B.cE,B.k1,B.jB,0,3,B.dK,"es",B.dG,B.wm,B.zH,B.dE,B.cW,B.dF,B.dK,B.dG,B.wm,B.dE,B.dF,B.dD,B.uk,B.dD,B.r,q),"es_419",A.aW(B.hy,B.xn,B.y1,B.k1,B.jB,0,3,B.dK,"es_419",B.dG,B.a3A,B.jH,B.dE,B.cW,B.dF,B.dK,B.dG,B.cD,B.dE,B.dF,B.dD,B.a1,B.dD,B.r,q),"es_MX",A.aW(B.hy,B.WF,B.y1,B.k1,B.jB,6,5,B.dK,"es_MX",B.dG,B.cD,B.zH,B.dE,B.cW,B.dF,B.dK,B.dG,B.cD,B.dE,B.dF,B.dD,B.a1,B.dD,B.r,q),"es_US",A.aW(B.hy,B.a4n,B.cE,B.k1,B.jB,6,5,B.dK,"es_US",B.dG,B.cD,B.jH,B.dE,B.cW,B.dF,B.dK,B.dG,B.cD,B.dE,B.dF,B.dD,B.aO,B.dD,B.r,q),"et",A.aW(B.a9,B.Zo,B.ae,B.a3w,B.a1I,0,3,B.xK,"et",B.yh,B.ka,B.hu,B.yL,B.eh,B.ka,B.xK,B.yh,B.ka,B.yL,B.ka,B.vk,B.a1,B.vk,B.r,q),"eu",A.aW(B.a9,B.a_O,B.ae,B.a0X,B.a_m,0,3,B.We,"eu",B.vN,B.vY,B.a39,B.z5,B.a0k,B.vj,B.a20,B.vN,B.vY,B.z5,B.vj,B.vF,B.vy,B.vF,B.r,q),"fa",A.aW(B.a_E,B.a3a,B.Yy,B.a4J,B.Y4,5,4,B.YO,"fa",B.xF,B.x_,B.Zq,B.nv,B.a3Z,B.jA,B.nv,B.xF,B.x_,B.nv,B.jA,B.jA,B.uz,B.jA,B.Xq,"\u06f0"),"fi",A.aW(B.ZS,B.YV,B.a3p,B.a_M,B.a24,0,3,B.ZG,"fi",B.wU,B.xW,B.a2e,B.a4l,B.a2J,B.yP,B.a_i,B.wU,B.xW,B.a3y,B.yP,B.a2R,B.Z1,B.Z_,B.r,q),"fil",A.aW(B.a9,B.ej,B.w1,B.bV,B.bq,6,5,B.jv,"fil",B.fa,B.dL,B.yS,B.fa,B.aF,B.dL,B.jv,B.vs,B.dL,B.fa,B.dL,B.k9,B.aO,B.k9,B.r,q),"fr",A.aW(B.a9,B.u7,B.v7,B.v0,B.y6,0,3,B.jW,"fr",B.P,B.cD,B.we,B.xI,B.cW,B.jD,B.jW,B.P,B.cD,B.xI,B.jD,B.jJ,B.a1,B.jJ,B.r,q),"fr_CA",A.aW(B.dH,B.yo,B.v7,B.v0,B.y6,6,5,B.jW,"fr_CA",B.P,B.cD,B.we,B.wf,B.cW,B.jD,B.jW,B.P,B.cD,B.wf,B.jD,B.jJ,B.YD,B.jJ,B.r,q),"gl",A.aW(B.dH,B.a_o,B.a10,B.a0F,B.ke,0,3,B.Zy,"gl",B.a0H,B.X7,B.jH,B.a2m,B.cW,B.Yp,B.a3S,B.a0d,B.Yg,B.Z3,B.X8,B.a03,B.a1,B.a3M,B.r,q),"gsw",A.aW(B.a2I,B.ni,B.ae,B.fe,B.fe,0,3,B.wH,"gsw",B.P,B.ff,B.np,B.jY,B.aF,B.z_,B.wH,B.P,B.ff,B.jY,B.z_,B.wb,B.a1,B.wb,B.r,q),"gu",A.aW(B.a9,B.jG,B.ZE,B.WE,B.a_h,6,5,B.wr,"gu",B.zL,B.xE,B.a2_,B.xp,B.aF,B.vL,B.wr,B.zL,B.xE,B.xp,B.vL,B.y0,B.wV,B.y0,B.cB,q),"he",A.aW(B.ZL,B.a3z,B.Zm,B.WK,B.a2V,6,5,B.x6,"he",B.bd,B.wJ,B.Xu,B.v_,B.aF,B.yu,B.x6,B.bd,B.wJ,B.v_,B.yu,B.ux,B.jy,B.ux,B.uG,q),"hi",A.aW(B.ei,B.jz,B.Zg,B.a05,B.a3x,6,5,B.wC,"hi",B.yQ,B.jF,B.a2i,B.yM,B.a1r,B.xN,B.wC,B.yQ,B.jF,B.yM,B.xN,B.ut,B.aO,B.ut,B.cB,q),"hr",A.aW(B.a9,B.a3l,B.z6,B.a1E,B.a3Y,0,6,B.XH,"hr",B.xG,B.y8,B.hu,B.ye,B.a1M,B.k8,B.Zu,B.xG,B.kc,B.ye,B.k8,B.jS,B.Yt,B.jS,B.r,q),"hu",A.aW(B.a_Y,B.a4g,B.ae,B.a_I,B.Y8,0,3,B.vQ,"hu",B.zI,B.y5,B.Y9,B.zN,B.a4C,B.xY,B.vQ,B.zI,B.y5,B.zN,B.xY,B.v8,B.jy,B.v8,B.r,q),"hy",A.aW(B.a9,B.a1J,B.cE,B.a3R,B.a4D,0,6,B.a4r,"hy",B.vI,B.vZ,B.a3m,B.uI,B.Zf,B.zh,B.a0Q,B.vI,B.vZ,B.uI,B.zh,B.zR,B.a1,B.zR,B.r,q),"id",A.aW(B.a9,B.Yk,B.ae,B.Wl,B.a0i,6,5,B.ve,"id",B.P,B.yq,B.a1_,B.z0,B.eh,B.yy,B.ve,B.P,B.yq,B.z0,B.yy,B.vU,B.nh,B.vU,B.r,q),"is",A.aW(B.Ze,B.WL,B.nn,B.a2b,B.fg,0,3,B.yR,"is",B.xV,B.y_,B.a11,B.y3,B.Zi,B.vr,B.yR,B.xV,B.y_,B.y3,B.vr,B.zM,B.a1,B.zM,B.r,q),"it",A.aW(B.a9,B.Wa,B.fc,B.Yz,B.ke,0,3,B.wW,"it",B.yE,B.yA,B.wG,B.vp,B.cW,B.wS,B.wW,B.yE,B.yA,B.vp,B.wS,B.xv,B.a1,B.xv,B.r,q),"ja",A.aW(B.Wq,B.a_B,B.ae,B.xf,B.xf,6,5,B.bP,"ja",B.bd,B.jN,B.a2L,B.bP,B.aF,B.jN,B.bP,B.bd,B.jN,B.bP,B.jN,B.w3,B.YS,B.w3,B.r,q),"ka",A.aW(B.a9,B.a4i,B.cE,B.Zs,B.a2z,0,6,B.vz,"ka",B.ug,B.ul,B.a40,B.u8,B.a1C,B.uR,B.vz,B.ug,B.ul,B.u8,B.uR,B.w7,B.a1,B.w7,B.r,q),"kk",A.aW(B.a9,B.Za,B.cE,B.Zw,B.a0W,0,6,B.Wf,"kk",B.ym,B.wu,B.Yr,B.w6,B.a0O,B.un,B.a0C,B.ym,B.wu,B.w6,B.un,B.uO,B.a1,B.uO,B.r,q),"km",A.aW(B.a9,B.yf,B.ZA,B.Yq,B.Xm,6,5,B.k6,"km",B.z1,B.wX,B.wK,B.k6,B.wK,B.vO,B.k6,B.z1,B.wX,B.k6,B.vO,B.a1i,B.aO,B.Yi,B.r,q),"kn",A.aW(B.ZZ,B.a_t,B.ae,B.a_A,B.Wx,6,5,B.wB,"kn",B.wN,B.uS,B.a_u,B.XK,B.ZC,B.xr,B.wB,B.wN,B.uS,B.Wb,B.xr,B.uT,B.wV,B.uT,B.cB,q),"ko",A.aW(B.WO,B.Ya,B.ae,B.a_N,B.bq,6,5,B.f9,"ko",B.f9,B.jV,B.Wc,B.f9,B.a3N,B.jV,B.f9,B.f9,B.jV,B.f9,B.jV,B.xX,B.Xh,B.xX,B.r,q),"ky",A.aW(B.a3I,B.YP,B.ae,B.a0P,B.YX,0,6,B.yG,"ky",B.jU,B.wy,B.Yc,B.a_v,B.a3i,B.vS,B.a36,B.jU,B.wy,B.a13,B.vS,B.x8,B.a1,B.x8,B.r,q),"lo",A.aW(B.Ym,B.a4b,B.cE,B.Zp,B.Wj,6,5,B.zG,"lo",B.bd,B.yt,B.ZJ,B.vW,B.a0j,B.ww,B.zG,B.bd,B.yt,B.vW,B.ww,B.zf,B.a2x,B.zf,B.r,q),"lt",A.aW(B.a0M,B.a_g,B.ae,B.a2D,B.vv,0,3,B.YR,"lt",B.vH,B.xy,B.a18,B.uK,B.a0G,B.u9,B.a3D,B.vH,B.xy,B.uK,B.u9,B.xd,B.a1,B.xd,B.r,q),"lv",A.aW(B.a22,B.a3b,B.ae,B.YE,B.a2P,0,6,B.y9,"lv",B.P,B.zu,B.a17,B.vc,B.a3F,B.a3d,B.y9,B.P,B.zu,B.vc,B.a1c,B.a3v,B.a1,B.Yd,B.r,q),"mk",A.aW(B.a3J,B.a3O,B.a_C,B.a3u,B.Wr,0,6,B.yH,"mk",B.kd,B.ju,B.a2Q,B.wD,B.a_G,B.zD,B.yH,B.kd,B.ju,B.wD,B.zD,B.zi,B.a1,B.zi,B.r,q),"ml",A.aW(B.a9,B.a0D,B.ae,B.a1h,B.a_L,6,5,B.ys,"ml",B.w2,B.XT,B.yd,B.uY,B.yd,B.xu,B.ys,B.w2,B.ZP,B.uY,B.xu,B.a2y,B.aO,B.Zh,B.cB,q),"mn",A.aW(B.XV,B.a0S,B.ae,B.a_1,B.a_s,6,5,B.a2N,"mn",B.x2,B.jT,B.Yo,B.wk,B.a0L,B.jT,B.Wd,B.x2,B.jT,B.wk,B.jT,B.a0V,B.vy,B.Yn,B.r,q),"mr",A.aW(B.a9,B.jG,B.a3W,B.a_q,B.a_X,6,5,B.uo,"mr",B.wF,B.jF,B.ZF,B.xw,B.a14,B.uF,B.uo,B.wF,B.jF,B.xw,B.uF,B.vo,B.aO,B.vo,B.cB,"\u0966"),"ms",A.aW(B.a_Q,B.a4h,B.fc,B.vJ,B.vJ,0,6,B.us,"ms",B.zy,B.wo,B.a2F,B.wI,B.a0c,B.x7,B.us,B.zy,B.wo,B.wI,B.x7,B.vB,B.aO,B.vB,B.r,q),"my",A.aW(B.XU,B.Zj,B.ae,B.a_z,B.XS,6,5,B.xm,"my",B.xz,B.zv,B.xh,B.zS,B.xh,B.jC,B.xm,B.xz,B.zv,B.zS,B.jC,B.jC,B.a3r,B.jC,B.r,"\u1040"),"nb",A.aW(B.dH,B.vm,B.nn,B.zb,B.fg,0,3,B.jR,"nb",B.P,B.dI,B.hu,B.yp,B.eh,B.ht,B.jR,B.P,B.dI,B.vE,B.ht,B.fb,B.a1,B.fb,B.r,q),"ne",A.aW(B.a4j,B.a_0,B.fc,B.yx,B.yx,6,5,B.jI,"ne",B.WN,B.uu,B.zg,B.jI,B.zg,B.ya,B.jI,B.ZD,B.uu,B.jI,B.ya,B.zd,B.a1,B.zd,B.r,"\u0966"),"nl",A.aW(B.dH,B.a_D,B.a07,B.yU,B.Yv,0,3,B.ub,"nl",B.P,B.yB,B.W4,B.z9,B.eh,B.v1,B.ub,B.P,B.yB,B.z9,B.v1,B.zr,B.a1,B.zr,B.r,q),"no",A.aW(B.dH,B.vm,B.nn,B.zb,B.fg,0,3,B.jR,"no",B.P,B.dI,B.hu,B.yp,B.eh,B.ht,B.jR,B.P,B.dI,B.vE,B.ht,B.fb,B.a1,B.fb,B.r,q),"or",A.aW(B.a9,B.ej,B.W5,B.XO,B.bq,6,5,B.jM,"or",B.vG,B.xZ,B.v3,B.jM,B.v3,B.uh,B.jM,B.vG,B.xZ,B.jM,B.uh,B.yk,B.aO,B.yk,B.cB,q),"pa",A.aW(B.Y5,B.jz,B.fc,B.a09,B.YA,6,5,B.xa,"pa",B.wQ,B.uD,B.a_K,B.zZ,B.a2C,B.xC,B.xa,B.wQ,B.uD,B.zZ,B.xC,B.w9,B.aO,B.w9,B.cB,q),"pl",A.aW(B.a9,B.Zb,B.fc,B.a3c,B.a01,0,3,B.a19,"pl",B.WH,B.Xj,B.Yf,B.v9,B.YW,B.v6,B.a3n,B.a1F,B.ZH,B.v9,B.v6,B.v4,B.a1,B.v4,B.r,q),"ps",A.aW(B.a0I,B.a1w,B.ae,B.a37,B.a32,5,4,B.vi,"ps",B.a02,B.ay,B.za,B.vi,B.za,B.jO,B.YN,B.bd,B.ay,B.ZR,B.jO,B.jO,B.uz,B.jO,B.WM,"\u06f0"),"pt",A.aW(B.a9,B.a3K,B.ae,B.yn,B.ke,6,5,B.jK,"pt",B.P,B.jL,B.wG,B.jP,B.cW,B.zp,B.jK,B.P,B.jL,B.jP,B.zp,B.k4,B.a1,B.k4,B.r,q),"pt_PT",A.aW(B.a3e,B.a_J,B.Wz,B.yn,B.ke,6,2,B.jK,"pt_PT",B.P,B.jL,B.jH,B.jP,B.cW,B.wT,B.jK,B.P,B.jL,B.jP,B.wT,B.k4,B.a1,B.k4,B.r,q),"ro",A.aW(B.dH,B.a_c,B.cE,B.a2o,B.W6,0,6,B.vl,"ro",B.wd,B.cD,B.a04,B.x3,B.Wv,B.yl,B.vl,B.wd,B.cD,B.x3,B.yl,B.vD,B.a1,B.vD,B.r,q),"ru",A.aW(B.a9,B.ZI,B.cE,B.a0Z,B.a0y,0,3,B.Y0,"ru",B.jU,B.wi,B.v5,B.a0K,B.w5,B.wl,B.yG,B.jU,B.wi,B.W7,B.wl,B.vC,B.a1,B.vC,B.r,q),"si",A.aW(B.X3,B.WI,B.ae,B.a_k,B.a2n,0,6,B.vV,"si",B.uA,B.uJ,B.Y1,B.a3t,B.a3G,B.ws,B.vV,B.uA,B.uJ,B.WJ,B.ws,B.vq,B.nh,B.vq,B.r,q),"sk",A.aW(B.a9,B.Wp,B.Y3,B.a29,B.a25,0,3,B.a46,"sk",B.dJ,B.yO,B.a3q,B.xc,B.aF,B.uP,B.XW,B.dJ,B.yO,B.xc,B.uP,B.yD,B.jy,B.yD,B.r,q),"sl",A.aW(B.a43,B.XY,B.fc,B.a47,B.vv,0,6,B.uv,"sl",B.dJ,B.uW,B.a35,B.uC,B.a_x,B.xj,B.uv,B.dJ,B.uW,B.uC,B.xj,B.z7,B.a1,B.z7,B.r,q),"sq",A.aW(B.a_y,B.a_w,B.Ww,B.a0b,B.WA,0,6,B.zw,"sq",B.vX,B.uM,B.a3o,B.wg,B.a3H,B.Xd,B.zw,B.vX,B.uM,B.wg,B.a30,B.vb,B.a4_,B.vb,B.r,q),"sr",A.aW(B.a9,B.yX,B.ae,B.ZO,B.a31,0,6,B.yV,"sr",B.kd,B.yb,B.Zk,B.zK,B.Xv,B.yr,B.yV,B.kd,B.yb,B.zK,B.yr,B.up,B.a1,B.up,B.r,q),"sr_Latn",A.aW(B.a9,B.yX,B.ae,B.a_p,B.w_,0,6,B.uN,"sr_Latn",B.dJ,B.kc,B.YG,B.zm,B.a1x,B.yT,B.uN,B.dJ,B.kc,B.zm,B.yT,B.vu,B.a1,B.vu,B.r,q),"sv",A.aW(B.a23,B.yo,B.ae,B.a45,B.fg,0,3,B.xl,"sv",B.P,B.dI,B.a1a,B.yF,B.eh,B.zP,B.xl,B.P,B.dI,B.yF,B.zP,B.wn,B.a1,B.wn,B.r,q),"sw",A.aW(B.a9,B.wa,B.ae,B.a_W,B.ZV,0,6,B.x1,"sw",B.P,B.ay,B.zo,B.x9,B.zo,B.k_,B.x1,B.P,B.ay,B.x9,B.k_,B.k_,B.a1,B.k_,B.r,q),"ta",A.aW(B.YZ,B.jG,B.a3V,B.a_R,B.a3L,6,5,B.w0,"ta",B.wj,B.yJ,B.a4w,B.zQ,B.a_d,B.yW,B.w0,B.wj,B.yJ,B.zQ,B.yW,B.vt,B.YY,B.vt,B.cB,q),"te",A.aW(B.a9,B.a4E,B.Y6,B.ZM,B.a28,6,5,B.yi,"te",B.zt,B.wM,B.Z0,B.x0,B.ZW,B.xA,B.yi,B.zt,B.wM,B.x0,B.xA,B.zY,B.aO,B.zY,B.cB,q),"th",A.aW(B.a3j,B.Yh,B.ae,B.a1o,B.WD,6,5,B.zq,"th",B.jw,B.vA,B.yc,B.jw,B.yc,B.xM,B.zq,B.jw,B.vA,B.jw,B.xM,B.uq,B.a4d,B.uq,B.r,q),"tl",A.aW(B.a9,B.ej,B.w1,B.bV,B.bq,6,5,B.jv,"tl",B.fa,B.dL,B.yS,B.fa,B.aF,B.dL,B.jv,B.vs,B.dL,B.fa,B.dL,B.k9,B.aO,B.k9,B.r,q),"tr",A.aW(B.a4k,B.a1l,B.ae,B.a42,B.Xk,0,6,B.xx,"tr",B.x5,B.xt,B.a2H,B.ud,B.YQ,B.yw,B.xx,B.x5,B.xt,B.ud,B.yw,B.zE,B.a1,B.zE,B.r,q),"uk",A.aW(B.a2j,B.a3k,B.Ye,B.XZ,B.Zv,0,6,B.a_r,"uk",B.a_f,B.wq,B.v5,B.a4c,B.w5,B.jZ,B.a2M,B.Zz,B.wq,B.a0T,B.jZ,B.yI,B.a1,B.yI,B.r,q),"ur",A.aW(B.a9,B.a2w,B.ae,B.uj,B.uj,6,5,B.jQ,"ur",B.P,B.ay,B.uV,B.jQ,B.uV,B.k0,B.jQ,B.P,B.ay,B.jQ,B.k0,B.k0,B.aO,B.k0,B.r,q),"uz",A.aW(B.a0u,B.a0U,B.cE,B.a3f,B.a4o,0,6,B.Yl,"uz",B.zA,B.v2,B.a0_,B.a0t,B.a2p,B.yj,B.a_S,B.zA,B.v2,B.a1y,B.yj,B.xH,B.a_Z,B.xH,B.r,q),"vi",A.aW(B.a0e,B.ZK,B.WC,B.a4L,B.Wy,0,6,B.XX,"vi",B.bd,B.wY,B.a2a,B.Zc,B.aF,B.w4,B.WB,B.bd,B.wY,B.XP,B.w4,B.vT,B.a1,B.vT,B.r,q),"zh",A.aW(B.nk,B.Xl,B.ae,B.k2,B.k2,6,5,B.wO,"zh",B.bd,B.fh,B.Zt,B.bP,B.a41,B.yK,B.wO,B.bd,B.fh,B.bP,B.yK,B.fj,B.a1t,B.fj,B.r,q),"zh_HK",A.aW(B.nk,B.a0h,B.ae,B.k2,B.k2,6,5,B.bP,"zh_HK",B.bd,B.fh,B.ns,B.bP,B.aF,B.kb,B.bP,B.bd,B.fh,B.bP,B.kb,B.fj,B.Y_,B.fj,B.r,q),"zh_TW",A.aW(B.nk,B.Wk,B.ae,B.zF,B.zF,6,5,B.bP,"zh_TW",B.bd,B.fh,B.ns,B.bP,B.ns,B.kb,B.bP,B.bd,B.fh,B.bP,B.kb,B.fj,B.a0g,B.fj,B.r,q),"zu",A.aW(B.a9,B.ej,B.ae,B.bq,B.bq,6,5,B.vf,"zu",B.a1u,B.ze,B.ZQ,B.z4,B.aF,B.zx,B.vf,B.P,B.ze,B.z4,B.zx,B.wE,B.a1,B.wE,B.r,q)],t.N,t.fs)}) +s($,"c20","bn0",()=>A.biN(B.va,t.N)) +s($,"c24","bn4",()=>A.biN(B.va,t.N)) +s($,"c39","bBR",()=>new A.aLL(A.F(t.N,A.ah("U?(dK?)")))) +s($,"bXe","byw",()=>new A.aB6(A.a([],A.ah("G")))) +s($,"c2e","mx",()=>A.aHg("GoRouter")) +r($,"bYt","bz9",()=>{var q=null +return A.bJu(q,q,B.hw,B.fl,A.f7(q,q,q,q,q,q))}) +s($,"c0h","bmI",()=>A.bF(":(\\w+)(\\((?:\\\\.|[^\\\\()])+\\))?",!0,!1,!1)) +s($,"bXs","byG",()=>A.a0N("GoRouteState to GoRouteData expando",A.ah("a1w"))) +s($,"bYH","bzh",()=>A.a0N("GoRouteState to ShellRouteData expando",A.ah("a8u"))) +s($,"bXw","aqt",()=>{var q=null,p=t.N +p=new A.aEM(A.cx(q,q,q,p,A.ah("w1<@>")),A.cx(q,q,q,p,t.L0),A.brv(),A.F(t.S,A.ah("N3<@>"))) +p.MQ(new A.a_K(),!0,t.W7) +p.MQ(new A.J8(A.ah("J8")),!0,A.ah("Bb")) +p.MQ(new A.Xx(),!0,A.ah("I2")) +return p}) +s($,"bXx","byH",()=>A.brv()) +s($,"bWn","bWg",()=>A.bjk(16)) +s($,"bXy","byI",()=>A.bDa(null)) +s($,"bWw","byd",()=>A.bF("^[\\w!#%&'*+\\-.^`|~]+$",!0,!1,!1)) +s($,"c_s","bAh",()=>A.bF('["\\x00-\\x1F\\x7F]',!0,!1,!1)) +s($,"c31","bBP",()=>A.bF('[^()<>@,;:"\\\\/[\\]?={} \\t\\x00-\\x1F\\x7F]+',!0,!1,!1)) +s($,"c0f","bAX",()=>A.bF("(?:\\r\\n)?[ \\t]+",!0,!1,!1)) +s($,"c0B","bAZ",()=>A.bF('"(?:[^"\\x00-\\x1F\\x7F]|\\\\.)*"',!0,!1,!1)) +s($,"c0A","bAY",()=>A.bF("\\\\(.)",!0,!1,!1)) +s($,"c2o","bBG",()=>A.bF('[()<>@,;:"\\\\/\\[\\]?={} \\t\\x00-\\x1F\\x7F]',!0,!1,!1)) +s($,"c3b","bBT",()=>A.bF("(?:"+$.bAX().a+")*",!0,!1,!1)) +s($,"c1M","bBA",()=>A.aW(B.a9,B.ej,B.cE,B.bV,B.bq,6,5,B.aU,"en_US",B.P,B.ay,B.cC,B.df,B.aF,B.aV,B.aU,B.P,B.ay,B.df,B.aV,B.aW,B.a0x,B.aW,B.r,null)) +r($,"c2q","bnd",()=>{var q=",",p="\xa0",o="%",n="0",m="+",l="-",k="E",j="\u2030",i="\u221e",h="NaN",g="#,##0.###",f="#E0",e="#,##0%",d="\xa4#,##0.00",c=".",b="\u200e+",a="\u200e-",a0="\u0644\u064a\u0633\xa0\u0631\u0642\u0645\u064b\u0627",a1="\u200f#,##0.00\xa0\xa4;\u200f-#,##0.00\xa0\xa4",a2="#,##,##0.###",a3="#,##,##0%",a4="\xa4\xa0#,##,##0.00",a5="INR",a6="#,##0.00\xa0\xa4",a7="#,##0\xa0%",a8="EUR",a9="USD",b0="\xa4\xa0#,##0.00",b1="\xa4\xa0#,##0.00;\xa4-#,##0.00",b2="CHF",b3="\xa4#,##,##0.00",b4="\u2212",b5="\xd710^",b6="[#E0]",b7="\u200f#,##0.00\xa0\u200f\xa4;\u200f-#,##0.00\xa0\u200f\xa4",b8="\xa4\xa0#,##0.00;\xa4\xa0-#,##0.00" +return A.ap(["af",A.aF(d,g,q,"ZAR",k,p,i,l,"af",h,o,e,j,m,f,n),"am",A.aF(d,g,c,"ETB",k,q,i,l,"am",h,o,e,j,m,f,n),"ar",A.aF(a1,g,c,"EGP",k,q,i,a,"ar",a0,"\u200e%\u200e",e,j,b,f,n),"ar_DZ",A.aF(a1,g,q,"DZD",k,c,i,a,"ar_DZ",a0,"\u200e%\u200e",e,j,b,f,n),"ar_EG",A.aF("\u200f#,##0.00\xa0\xa4",g,"\u066b","EGP","\u0627\u0633","\u066c",i,"\u061c-","ar_EG","\u0644\u064a\u0633\xa0\u0631\u0642\u0645","\u066a\u061c",e,"\u0609","\u061c+",f,"\u0660"),"as",A.aF(a4,a2,c,a5,k,q,i,l,"as",h,o,a3,j,m,f,"\u09e6"),"az",A.aF(a6,g,q,"AZN",k,c,i,l,"az",h,o,e,j,m,f,n),"be",A.aF(a6,g,q,"BYN",k,p,i,l,"be",h,o,a7,j,m,f,n),"bg",A.aF(a6,g,q,"BGN",k,p,i,l,"bg",h,o,e,j,m,f,n),"bm",A.aF(d,g,c,"XOF",k,q,i,l,"bm",h,o,e,j,m,f,n),"bn",A.aF("#,##,##0.00\xa4",a2,c,"BDT",k,q,i,l,"bn",h,o,e,j,m,f,"\u09e6"),"br",A.aF(a6,g,q,a8,k,p,i,l,"br",h,o,a7,j,m,f,n),"bs",A.aF(a6,g,q,"BAM",k,c,i,l,"bs",h,o,a7,j,m,f,n),"ca",A.aF(a6,g,q,a8,k,c,i,l,"ca",h,o,a7,j,m,f,n),"chr",A.aF(d,g,c,a9,k,q,i,l,"chr",h,o,e,j,m,f,n),"cs",A.aF(a6,g,q,"CZK",k,p,i,l,"cs",h,o,a7,j,m,f,n),"cy",A.aF(d,g,c,"GBP",k,q,i,l,"cy",h,o,e,j,m,f,n),"da",A.aF(a6,g,q,"DKK",k,c,i,l,"da",h,o,a7,j,m,f,n),"de",A.aF(a6,g,q,a8,k,c,i,l,"de",h,o,a7,j,m,f,n),"de_AT",A.aF(b0,g,q,a8,k,p,i,l,"de_AT",h,o,a7,j,m,f,n),"de_CH",A.aF(b1,g,c,b2,k,"\u2019",i,l,"de_CH",h,o,e,j,m,f,n),"el",A.aF(a6,g,q,a8,"e",c,i,l,"el",h,o,e,j,m,f,n),"en",A.aF(d,g,c,a9,k,q,i,l,"en",h,o,e,j,m,f,n),"en_AU",A.aF(d,g,c,"AUD","e",q,i,l,"en_AU",h,o,e,j,m,f,n),"en_CA",A.aF(d,g,c,"CAD",k,q,i,l,"en_CA",h,o,e,j,m,f,n),"en_GB",A.aF(d,g,c,"GBP",k,q,i,l,"en_GB",h,o,e,j,m,f,n),"en_IE",A.aF(d,g,c,a8,k,q,i,l,"en_IE",h,o,e,j,m,f,n),"en_IN",A.aF(b3,a2,c,a5,k,q,i,l,"en_IN",h,o,a3,j,m,f,n),"en_MY",A.aF(d,g,c,"MYR",k,q,i,l,"en_MY",h,o,e,j,m,f,n),"en_NZ",A.aF(d,g,c,"NZD",k,q,i,l,"en_NZ",h,o,e,j,m,f,n),"en_SG",A.aF(d,g,c,"SGD",k,q,i,l,"en_SG",h,o,e,j,m,f,n),"en_US",A.aF(d,g,c,a9,k,q,i,l,"en_US",h,o,e,j,m,f,n),"en_ZA",A.aF(d,g,q,"ZAR",k,p,i,l,"en_ZA",h,o,e,j,m,f,n),"es",A.aF(a6,g,q,a8,k,c,i,l,"es",h,o,a7,j,m,f,n),"es_419",A.aF(d,g,c,"MXN",k,q,i,l,"es_419",h,o,a7,j,m,f,n),"es_ES",A.aF(a6,g,q,a8,k,c,i,l,"es_ES",h,o,a7,j,m,f,n),"es_MX",A.aF(d,g,c,"MXN",k,q,i,l,"es_MX",h,o,e,j,m,f,n),"es_US",A.aF(d,g,c,a9,k,q,i,l,"es_US",h,o,a7,j,m,f,n),"et",A.aF(a6,g,q,a8,b5,p,i,b4,"et",h,o,e,j,m,f,n),"eu",A.aF(a6,g,q,a8,k,c,i,b4,"eu",h,o,"%\xa0#,##0",j,m,f,n),"fa",A.aF("\u200e\xa4#,##0.00",g,"\u066b","IRR","\xd7\u06f1\u06f0^","\u066c",i,"\u200e\u2212","fa","\u0646\u0627\u0639\u062f\u062f","\u066a",e,"\u0609",b,f,"\u06f0"),"fi",A.aF(a6,g,q,a8,k,p,i,b4,"fi","ep\xe4luku",o,a7,j,m,f,n),"fil",A.aF(d,g,c,"PHP",k,q,i,l,"fil",h,o,e,j,m,f,n),"fr",A.aF(a6,g,q,a8,k,"\u202f",i,l,"fr",h,o,a7,j,m,f,n),"fr_CA",A.aF(a6,g,q,"CAD",k,p,i,l,"fr_CA",h,o,a7,j,m,f,n),"fr_CH",A.aF(a6,g,q,b2,k,"\u202f",i,l,"fr_CH",h,o,e,j,m,f,n),"fur",A.aF(b0,g,q,a8,k,c,i,l,"fur",h,o,e,j,m,f,n),"ga",A.aF(d,g,c,a8,k,q,i,l,"ga","Nuimh",o,e,j,m,f,n),"gl",A.aF(a6,g,q,a8,k,c,i,l,"gl",h,o,a7,j,m,f,n),"gsw",A.aF(a6,g,c,b2,k,"\u2019",i,b4,"gsw",h,o,a7,j,m,f,n),"gu",A.aF(b3,a2,c,a5,k,q,i,l,"gu",h,o,a3,j,m,b6,n),"haw",A.aF(d,g,c,a9,k,q,i,l,"haw",h,o,e,j,m,f,n),"he",A.aF(b7,g,c,"ILS",k,q,i,a,"he",h,o,e,j,b,f,n),"hi",A.aF(b3,a2,c,a5,k,q,i,l,"hi",h,o,a3,j,m,b6,n),"hr",A.aF(a6,g,q,a8,k,c,i,b4,"hr",h,o,a7,j,m,f,n),"hu",A.aF(a6,g,q,"HUF",k,p,i,l,"hu",h,o,e,j,m,f,n),"hy",A.aF(a6,g,q,"AMD",k,p,i,l,"hy","\u0548\u0579\u0539",o,e,j,m,f,n),"id",A.aF(d,g,q,"IDR",k,c,i,l,"id",h,o,e,j,m,f,n),"in",A.aF(d,g,q,"IDR",k,c,i,l,"in",h,o,e,j,m,f,n),"is",A.aF(a6,g,q,"ISK",k,c,i,l,"is",h,o,e,j,m,f,n),"it",A.aF(a6,g,q,a8,k,c,i,l,"it",h,o,e,j,m,f,n),"it_CH",A.aF(b1,g,c,b2,k,"\u2019",i,l,"it_CH",h,o,e,j,m,f,n),"iw",A.aF(b7,g,c,"ILS",k,q,i,a,"iw",h,o,e,j,b,f,n),"ja",A.aF(d,g,c,"JPY",k,q,i,l,"ja",h,o,e,j,m,f,n),"ka",A.aF(a6,g,q,"GEL",k,p,i,l,"ka","\u10d0\u10e0\xa0\u10d0\u10e0\u10d8\u10e1\xa0\u10e0\u10d8\u10ea\u10ee\u10d5\u10d8",o,e,j,m,f,n),"kk",A.aF(a6,g,q,"KZT",k,p,i,l,"kk","\u0441\u0430\u043d\xa0\u0435\u043c\u0435\u0441",o,e,j,m,f,n),"km",A.aF("#,##0.00\xa4",g,q,"KHR",k,c,i,l,"km",h,o,e,j,m,f,n),"kn",A.aF(d,g,c,a5,k,q,i,l,"kn",h,o,e,j,m,f,n),"ko",A.aF(d,g,c,"KRW",k,q,i,l,"ko",h,o,e,j,m,f,n),"ky",A.aF(a6,g,q,"KGS",k,p,i,l,"ky","\u0441\u0430\u043d\xa0\u044d\u043c\u0435\u0441",o,e,j,m,f,n),"ln",A.aF(a6,g,q,"CDF",k,c,i,l,"ln",h,o,e,j,m,f,n),"lo",A.aF("\xa4#,##0.00;\xa4-#,##0.00",g,q,"LAK",k,c,i,l,"lo","\u0e9a\u0ecd\u0ec8\u200b\u0ec1\u0ea1\u0ec8\u0e99\u200b\u0ec2\u0e95\u200b\u0ec0\u0ea5\u0e81",o,e,j,m,"#",n),"lt",A.aF(a6,g,q,a8,b5,p,i,b4,"lt",h,o,a7,j,m,f,n),"lv",A.aF(a6,g,q,a8,k,p,i,l,"lv","NS",o,e,j,m,f,n),"mg",A.aF(b0,g,c,"MGA",k,q,i,l,"mg",h,o,e,j,m,f,n),"mk",A.aF(a6,g,q,"MKD",k,c,i,l,"mk",h,o,a7,j,m,f,n),"ml",A.aF(d,a2,c,a5,k,q,i,l,"ml",h,o,e,j,m,f,n),"mn",A.aF(b0,g,c,"MNT",k,q,i,l,"mn",h,o,e,j,m,f,n),"mr",A.aF(d,a2,c,a5,k,q,i,l,"mr",h,o,e,j,m,b6,"\u0966"),"ms",A.aF(d,g,c,"MYR",k,q,i,l,"ms",h,o,e,j,m,f,n),"mt",A.aF(d,g,c,a8,k,q,i,l,"mt",h,o,e,j,m,f,n),"my",A.aF(a6,g,c,"MMK",k,q,i,l,"my","\u1002\u100f\u1014\u103a\u1038\u1019\u101f\u102f\u1010\u103a\u101e\u1031\u102c",o,e,j,m,f,"\u1040"),"nb",A.aF(b8,g,q,"NOK",k,p,i,b4,"nb",h,o,a7,j,m,f,n),"ne",A.aF(a4,a2,c,"NPR",k,q,i,l,"ne",h,o,a3,j,m,f,"\u0966"),"nl",A.aF(b8,g,q,a8,k,c,i,l,"nl",h,o,e,j,m,f,n),"no",A.aF(b8,g,q,"NOK",k,p,i,b4,"no",h,o,a7,j,m,f,n),"no_NO",A.aF(b8,g,q,"NOK",k,p,i,b4,"no_NO",h,o,a7,j,m,f,n),"nyn",A.aF(d,g,c,"UGX",k,q,i,l,"nyn",h,o,e,j,m,f,n),"or",A.aF(d,a2,c,a5,k,q,i,l,"or",h,o,e,j,m,f,n),"pa",A.aF(b3,a2,c,a5,k,q,i,l,"pa",h,o,a3,j,m,b6,n),"pl",A.aF(a6,g,q,"PLN",k,p,i,l,"pl",h,o,e,j,m,f,n),"ps",A.aF("\xa4#,##0.00;(\xa4#,##0.00)",g,"\u066b","AFN","\xd7\u06f1\u06f0^","\u066c",i,"\u200e-\u200e","ps",h,"\u066a",e,"\u0609","\u200e+\u200e",f,"\u06f0"),"pt",A.aF(b0,g,q,"BRL",k,c,i,l,"pt",h,o,e,j,m,f,n),"pt_BR",A.aF(b0,g,q,"BRL",k,c,i,l,"pt_BR",h,o,e,j,m,f,n),"pt_PT",A.aF(a6,g,q,a8,k,p,i,l,"pt_PT",h,o,e,j,m,f,n),"ro",A.aF(a6,g,q,"RON",k,c,i,l,"ro",h,o,a7,j,m,f,n),"ru",A.aF(a6,g,q,"RUB",k,p,i,l,"ru","\u043d\u0435\xa0\u0447\u0438\u0441\u043b\u043e",o,a7,j,m,f,n),"si",A.aF(d,g,c,"LKR",k,q,i,l,"si",h,o,e,j,m,"#",n),"sk",A.aF(a6,g,q,a8,"e",p,i,l,"sk",h,o,a7,j,m,f,n),"sl",A.aF(a6,g,q,a8,"e",c,i,b4,"sl",h,o,a7,j,m,f,n),"sq",A.aF(a6,g,q,"ALL",k,p,i,l,"sq",h,o,e,j,m,f,n),"sr",A.aF(a6,g,q,"RSD",k,c,i,l,"sr",h,o,e,j,m,f,n),"sr_Latn",A.aF(a6,g,q,"RSD",k,c,i,l,"sr_Latn",h,o,e,j,m,f,n),"sv",A.aF(a6,g,q,"SEK",b5,p,i,b4,"sv",h,o,a7,j,m,f,n),"sw",A.aF(b0,g,c,"TZS",k,q,i,l,"sw",h,o,e,j,m,f,n),"ta",A.aF(b3,a2,c,a5,k,q,i,l,"ta",h,o,a3,j,m,f,n),"te",A.aF(b3,a2,c,a5,k,q,i,l,"te",h,o,e,j,m,f,n),"th",A.aF(d,g,c,"THB",k,q,i,l,"th",h,o,e,j,m,f,n),"tl",A.aF(d,g,c,"PHP",k,q,i,l,"tl",h,o,e,j,m,f,n),"tr",A.aF(d,g,q,"TRY",k,c,i,l,"tr",h,o,"%#,##0",j,m,f,n),"uk",A.aF(a6,g,q,"UAH","\u0415",p,i,l,"uk",h,o,e,j,m,f,n),"ur",A.aF(d,g,c,"PKR",k,q,i,a,"ur",h,o,e,j,b,f,n),"uz",A.aF(a6,g,q,"UZS",k,p,i,l,"uz","son\xa0emas",o,e,j,m,f,n),"vi",A.aF(a6,g,q,"VND",k,c,i,l,"vi",h,o,e,j,m,f,n),"zh",A.aF(d,g,c,"CNY",k,q,i,l,"zh",h,o,e,j,m,f,n),"zh_CN",A.aF(d,g,c,"CNY",k,q,i,l,"zh_CN",h,o,e,j,m,f,n),"zh_HK",A.aF(d,g,c,"HKD",k,q,i,l,"zh_HK","\u975e\u6578\u503c",o,e,j,m,f,n),"zh_TW",A.aF(d,g,c,"TWD",k,q,i,l,"zh_TW","\u975e\u6578\u503c",o,e,j,m,f,n),"zu",A.aF(d,g,c,"ZAR",k,q,i,l,"zu",h,o,e,j,m,f,n)],t.N,t.zr)}) +r($,"bOw","Wh",()=>A.bsQ("initializeDateFormatting()",$.bBA(),t.fs)) +r($,"bRz","aqJ",()=>A.bsQ("initializeDateFormatting()",B.a7Z,t.GU)) +s($,"c1k","bh3",()=>48) +s($,"bWQ","byk",()=>A.a([A.bF("^'(?:[^']|'')*'",!0,!1,!1),A.bF("^(?:G+|y+|M+|k+|S+|E+|a+|h+|K+|H+|c+|L+|Q+|d+|D+|m+|s+|v+|z+|Z+)",!0,!1,!1),A.bF("^[^'GyMkSEahKHcLQdDmsvzZ]+",!0,!1,!1)],A.ah("G"))) +s($,"bZB","bzM",()=>A.bF("''",!0,!1,!1)) +s($,"bY_","bgS",()=>A.bUp(2,52)) +s($,"bXZ","byT",()=>B.e.eU(A.W0($.bgS())/A.W0(10))) +s($,"c0c","bmH",()=>A.W0(10)) +s($,"c0d","bAV",()=>A.W0(10)) +s($,"c2v","bne",()=>A.ap(["en_ISO",A.fZ(),"af",A.eQ(),"am",A.A2(),"ar",A.blO(),"ar_DZ",A.blO(),"ar_EG",A.blO(),"as",A.A2(),"az",A.eQ(),"be",A.bU7(),"bg",A.eQ(),"bm",A.k7(),"bn",A.A2(),"br",A.bU8(),"bs",A.bg_(),"ca",A.bg0(),"chr",A.eQ(),"cs",A.bxg(),"cy",A.bU9(),"da",A.bUa(),"de",A.fZ(),"de_AT",A.fZ(),"de_CH",A.fZ(),"el",A.eQ(),"en",A.fZ(),"en_AU",A.fZ(),"en_CA",A.fZ(),"en_GB",A.fZ(),"en_IE",A.fZ(),"en_IN",A.fZ(),"en_MY",A.fZ(),"en_NZ",A.fZ(),"en_SG",A.fZ(),"en_US",A.fZ(),"en_ZA",A.fZ(),"es",A.aqg(),"es_419",A.aqg(),"es_ES",A.aqg(),"es_MX",A.aqg(),"es_US",A.aqg(),"et",A.fZ(),"eu",A.eQ(),"fa",A.A2(),"fi",A.fZ(),"fil",A.bxf(),"fr",A.blP(),"fr_CA",A.blP(),"fr_CH",A.blP(),"fur",A.eQ(),"ga",A.bUc(),"gl",A.fZ(),"gsw",A.eQ(),"gu",A.A2(),"haw",A.eQ(),"he",A.bxh(),"hi",A.A2(),"hr",A.bg_(),"hu",A.eQ(),"hy",A.bUb(),"id",A.k7(),"in",A.k7(),"is",A.bUd(),"it",A.bg0(),"it_CH",A.bg0(),"iw",A.bxh(),"ja",A.k7(),"ka",A.eQ(),"kk",A.eQ(),"km",A.k7(),"kn",A.A2(),"ko",A.k7(),"ky",A.eQ(),"ln",A.blN(),"lo",A.k7(),"lt",A.bUe(),"lv",A.bUf(),"mg",A.blN(),"mk",A.bUg(),"ml",A.eQ(),"mn",A.eQ(),"mr",A.eQ(),"ms",A.k7(),"mt",A.bUi(),"my",A.k7(),"nb",A.eQ(),"ne",A.eQ(),"nl",A.fZ(),"no",A.eQ(),"no_NO",A.eQ(),"nyn",A.eQ(),"or",A.eQ(),"pa",A.blN(),"pl",A.bUj(),"ps",A.eQ(),"pt",A.bxi(),"pt_BR",A.bxi(),"pt_PT",A.bg0(),"ro",A.bUh(),"ru",A.bxj(),"si",A.bUk(),"sk",A.bxg(),"sl",A.bUl(),"sq",A.eQ(),"sr",A.bg_(),"sr_Latn",A.bg_(),"sv",A.fZ(),"sw",A.fZ(),"ta",A.eQ(),"te",A.eQ(),"th",A.k7(),"tl",A.bxf(),"tr",A.eQ(),"uk",A.bxj(),"ur",A.fZ(),"uz",A.eQ(),"vi",A.k7(),"zh",A.k7(),"zh_CN",A.k7(),"zh_HK",A.k7(),"zh_TW",A.k7(),"zu",A.A2(),"default",A.k7()],t.N,A.ah("n2()"))) +s($,"bXO","bgQ",()=>A.aHg("")) +s($,"bXY","byS",()=>new A.B()) +s($,"bY1","bmf",()=>new A.B()) +r($,"bIk","byU",()=>{var q=new A.aJ2() +q.Hw($.bmf()) +return q}) +s($,"c3d","bBU",()=>A.bi1(null,$.Wf())) +s($,"c1w","Hm",()=>new A.YC($.bmk(),null)) +s($,"bYS","aqu",()=>new A.aM0(A.bF("/",!0,!1,!1),A.bF("[^/]$",!0,!1,!1),A.bF("^/",!0,!1,!1))) +s($,"bYU","Wf",()=>new A.aZY(A.bF("[/\\\\]",!0,!1,!1),A.bF("[^/\\\\]$",!0,!1,!1),A.bF("^(\\\\\\\\[^\\\\]+\\\\[^\\\\/]+|[a-zA-Z]:[/\\\\])",!0,!1,!1),A.bF("^[/\\\\](?![/\\\\])",!0,!1,!1))) +s($,"bYT","We",()=>new A.aZG(A.bF("/",!0,!1,!1),A.bF("(^[a-zA-Z][-+.a-zA-Z\\d]*://|[^/])$",!0,!1,!1),A.bF("[a-zA-Z][-+.a-zA-Z\\d]*://[^/]*",!0,!1,!1),A.bF("^/",!0,!1,!1))) +s($,"bYR","bmk",()=>A.bKt()) +s($,"bY2","A4",()=>A.a0N(null,t.K)) +s($,"c2W","bBN",()=>A.bF("^(\\d+)\\.(\\d+)\\.(\\d+)(-([0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*))?(\\+([0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*))?",!0,!1,!1)) +s($,"c1v","bBv",()=>A.bF($.bBN().a+"$",!0,!1,!1)) +s($,"bYG","bmj",()=>new A.B()) +r($,"bK1","bgW",()=>{var q=new A.aJ3() +q.Hw($.bmj()) +return q}) +s($,"c10","bBf",()=>new A.B()) +s($,"c1g","bBs",()=>A.bF("^#\\d+\\s+(\\S.*) \\((.+?)((?::\\d+){0,2})\\)$",!0,!1,!1)) +s($,"c1b","bBn",()=>A.bF("^\\s*at (?:(\\S.*?)(?: \\[as [^\\]]+\\])? \\((.*)\\)|(.*))$",!0,!1,!1)) +s($,"c1f","bBr",()=>A.bF("^(.*?):(\\d+)(?::(\\d+))?$|native$",!0,!1,!1)) +s($,"c1a","bBm",()=>A.bF("^eval at (?:\\S.*?) \\((.*)\\)(?:, .*?:\\d+:\\d+)?$",!0,!1,!1)) +s($,"c_v","bAj",()=>A.bF("(\\S+)@(\\S+) line (\\d+) >.* (Function|eval):\\d+:\\d+",!0,!1,!1)) +s($,"c_x","bAl",()=>A.bF("^(?:([^@(/]*)(?:\\(.*\\))?((?:/[^/]*)*)(?:\\(.*\\))?@)?(.*?):(\\d*)(?::(\\d*))?$",!0,!1,!1)) +s($,"c_A","bAp",()=>A.bF("^(\\S+)(?: (\\d+)(?::(\\d+))?)?\\s+([^\\d].*)$",!0,!1,!1)) +s($,"c_g","bAa",()=>A.bF("<(|[^>]+)_async_body>",!0,!1,!1)) +s($,"c_E","bAt",()=>A.bF("^\\.",!0,!1,!1)) +s($,"bXm","byB",()=>A.bF("^[a-zA-Z][-+.a-zA-Z\\d]*://",!0,!1,!1)) +s($,"bXn","byC",()=>A.bF("^([a-zA-Z]:[\\\\/]|\\\\\\\\)",!0,!1,!1)) +s($,"c1d","bBp",()=>A.bF("\\n ?at ",!0,!1,!1)) +s($,"c1e","bBq",()=>A.bF(" ?at ",!0,!1,!1)) +s($,"c_w","bAk",()=>A.bF("@\\S+ line \\d+ >.* (Function|eval):\\d+:\\d+",!0,!1,!1)) +s($,"c_y","bAm",()=>A.bF("^(([.0-9A-Za-z_$/<]|\\(.*\\))*@)?[^\\s]*:\\d*$",!0,!0,!1)) +s($,"c_B","bAq",()=>A.bF("^[^\\s<][^\\s]*( \\d+(:\\d+)?)?[ \\t]+[^\\s]+$",!0,!0,!1)) +s($,"c36","bnn",()=>A.bF("^\\n?$",!0,!0,!1)) +s($,"c1C","bBx",()=>{var q=null,p=A.bjZ(q,B.Pd,!0),o=new A.aH7(A.bjZ(q,B.Pc,!0)),n=p.ax,m=n.b +o.a=p.aGg(m,A.bKy(q,q,q,q,m,q,q,q,q,q,q,n.cx,q)) +return o}) +s($,"bXQ","byQ",()=>{var q,p,o=A.F(t.N,A.ah("lO")) +for(q=0;q<7;++q){p=B.YF[q] +o.p(0,p.d,p)}return o}) +s($,"c26","lA",()=>{var q,p,o,n=A.F(t.N,A.ah("Cm")) +for(q=0;q<65;++q){p=B.a44[q] +o=p.i(0,"code") +if(o==null)o="other" +n.p(0,o,A.bLU(p.i(0,"code"),p.i(0,"name"),p.i(0,"nativeName")))}return n}) +s($,"bXW","Wc",()=>{var q,p,o,n,m=A.bxS(B.u0),l=t.s +m=A.a5o(B.n0,A.a([A.bgK(B.u0)],l),m,B.Tc,new A.aK7()) +q=A.by8(B.m_) +q=A.a5o(B.tq,A.a([A.by9(B.m_)],l),q,B.tl,new A.aK8()) +p=A.bxH(B.lW) +p=A.a5o(B.tm,A.a([A.bxI(B.lW)],l),p,B.Te,new A.aK9()) +o=A.bxL(B.lX) +o=A.a5o(B.TJ,A.a([A.bxM(B.lX)],l),o,B.Td,new A.aKa()) +n=A.bxW(B.lY) +return A.a([m,q,p,o,A.a5o(B.TU,A.a([A.bxX(B.lY),A.by2(B.qv)],l),n,B.Ti,new A.aKb())],A.ah("G"))}) +s($,"c1i","aqH",()=>{var q=null +return A.f0(A.bQy(),q,q,q,q,"aboutRepositoryProvider",t.JC)}) +s($,"c0i","A6",()=>A.a7(u.o)) +s($,"c0j","aqD",()=>A.a7(u.o)) +s($,"c1h","bmR",()=>{var q=null +return A.asu(A.bQw(),q,q,q,q,"aboutProvider",t.ly)}) +s($,"c2r","aqN",()=>{var q=null +return A.f0(A.bQx(),q,q,q,q,"packageInfoProvider",t.A9)}) +s($,"c1U","bh8",()=>{var q=null +return A.f0(A.bSh(),q,q,q,q,"extensionRepositoryProvider",t.FT)}) +s($,"c2V","A9",()=>{var q=null +return A.f0(A.bVC(),q,q,q,q,"sourceRepositoryProvider",t.v4)}) +s($,"c0k","pz",()=>A.a7(u.o)) +s($,"c0r","bgZ",()=>A.a7(u.o)) +s($,"c0s","aqC",()=>A.a7(u.o)) +s($,"c0t","aqF",()=>A.a7(u.o)) +s($,"c0u","bh0",()=>A.a7(u.o)) +s($,"c0v","vK",()=>A.a7(u.o)) +s($,"c0w","bgY",()=>A.a7(u.o)) +s($,"c1S","aqL",()=>{var q=null +return A.asu(A.bSc(),q,q,q,q,"extensionProvider",t.q6)}) +s($,"c1R","bmX",()=>{var q=null +return A.f0(A.bSe(),q,q,q,q,"extensionMapProvider",t.yG)}) +s($,"c1N","bBB",()=>{var q=null +return A.f0(A.bSd(),q,q,q,q,"extensionFilterLangListProvider",t.yp)}) +s($,"c1Q","bBD",()=>{var q=null +return A.f0(A.bSf(),q,q,q,q,"extensionMapFilteredProvider",t.yG)}) +s($,"c1P","bBC",()=>{var q=null +return A.f0(A.bSg(),q,q,q,q,"extensionMapFilteredAndQueriedProvider",t.yG)}) +s($,"c1O","aqK",()=>{var q=null +return A.d5(A.bSa(),q,q,q,q,"extensionLanguageFilterProvider",t.TO,t.Xb)}) +s($,"c1T","bh7",()=>{var q=null +return A.d5(A.bSb(),q,q,q,q,"extensionQueryProvider",t.ct,t.v)}) +s($,"c2S","bhl",()=>{var q=null +return A.asu(A.bVx(),q,q,q,q,"sourceListProvider",t.s5)}) +s($,"c2U","bnl",()=>{var q=null +return A.f0(A.bVy(),q,q,q,q,"sourceMapProvider",t.nS)}) +s($,"c2T","bhm",()=>{var q=null +return A.f0(A.bVz(),q,q,q,q,"sourceMapFilteredProvider",t.z1)}) +s($,"c2P","bnk",()=>{var q=null +return A.d5(A.bVu(),q,q,q,q,"sourceFilterLangMapProvider",t.u8,t.Yl)}) +s($,"c2Q","Wm",()=>{var q=null +return A.d5(A.bVv(),q,q,q,q,"sourceLanguageFilterProvider",t.EH,t.Xb)}) +s($,"c2R","aqQ",()=>{var q=null +return A.d5(A.bVw(),q,q,q,q,"sourceLastUsedProvider",t.KP,t.v)}) +s($,"c2O","bhk",()=>{var q=null +return A.d5(A.bVA(),q,q,q,q,"sourceDisplayModeProvider",t.bA,t.CE)}) +s($,"c1s","Wj",()=>{var q=null +return A.f0(A.bR0(),q,q,q,q,"categoryRepositoryProvider",t.ad)}) +s($,"c0x","Hl",()=>A.a7(u.o)) +s($,"c1r","k9",()=>{var q=null +return A.bD6(A.bS0(),q,q,q,q,"categoryControllerProvider",t.PY,t.IL)}) +s($,"c2d","bhd",()=>{var q=null +return A.d5(A.bTv(),q,q,q,q,"libraryQueryProvider",t.iG,t.v)}) +s($,"c29","bn7",()=>{var q=null +return A.d5(A.bTr(),q,q,q,q,"libraryMangaFilterDownloadedProvider",t.Ls,t.u)}) +s($,"c2a","bn8",()=>{var q=null +return A.d5(A.bTs(),q,q,q,q,"libraryMangaFilterUnreadProvider",t.Ah,t.u)}) +s($,"c28","bn6",()=>{var q=null +return A.d5(A.bTq(),q,q,q,q,"libraryMangaFilterCompletedProvider",t.tF,t.u)}) +s($,"c2c","bhc",()=>{var q=null +return A.d5(A.bTu(),q,q,q,q,"libraryMangaSortProvider",t.KZ,t.aU)}) +s($,"c2b","bhb",()=>{var q=null +return A.d5(A.bTt(),q,q,q,q,"libraryMangaSortDirectionProvider",t.O7,t.u)}) +s($,"c27","bha",()=>{var q=null +return A.d5(A.bTp(),q,q,q,q,"libraryDisplayModeProvider",t.XH,t.CE)}) +s($,"c1J","nT",()=>{var q=null +return A.f0(A.bRY(),q,q,q,q,"downloadsRepositoryProvider",t.vm)}) +s($,"c1I","bmW",()=>{var q=null +return A.f0(A.bRX(),q,q,q,q,"downloadsMapProvider",t.yy)}) +s($,"c1H","bBy",()=>{var q=null +return A.f0(A.bRW(),q,q,q,q,"downloadsChapterIdsProvider",t.Cm)}) +s($,"c1L","bBz",()=>{var q=null +return A.f0(A.bRZ(),q,q,q,q,"downloadsStatusProvider",t.TX)}) +s($,"c2M","bBM",()=>{var q=null +return A.f0(A.bS_(),q,q,q,q,"showDownloadsFABProvider",t.y)}) +s($,"c1K","bh6",()=>A.bo_(A.bRV(),null,null,null,"downloadsSocketProvider",A.ah("wB"),t.BP)) +s($,"c2f","fl",()=>{var q=null +return A.f0(A.bTF(),q,q,q,q,"mangaBookRepositoryProvider",t.W)}) +s($,"c34","Hq",()=>{var q=null +return A.f0(A.bWc(),q,q,q,q,"updatesRepositoryProvider",t.BA)}) +s($,"c33","bhp",()=>{var q=null +return A.asu(A.bWb(),q,q,q,q,"updateSummaryProvider",t.YO)}) +s($,"c35","bhq",()=>A.bo_(A.bWa(),null,null,null,"updatesSocketProvider",A.ah("zm"),t.S5)) +s($,"c0y","k8",()=>A.a7(u.o)) +s($,"c0l","A7",()=>A.a7(u.o)) +s($,"c0m","bh_",()=>A.a7(u.o)) +s($,"c0n","vL",()=>A.a7(u.o)) +s($,"c0o","dA",()=>A.a7(u.o)) +s($,"c0p","Wi",()=>A.a7(u.o)) +s($,"c2k","bhe",()=>{var q=null +return A.d5(A.bTM(),q,q,q,q,"mangaChapterSortProvider",t.LO,t.cu)}) +s($,"c2j","Wl",()=>{var q=null +return A.d5(A.bTL(),q,q,q,q,"mangaChapterSortDirectionProvider",t.Sr,t.u)}) +s($,"c2h","bna",()=>{var q=null +return A.d5(A.bTJ(),q,q,q,q,"mangaChapterFilterDownloadedProvider",t.Y3,t.u)}) +s($,"c2i","bnb",()=>{var q=null +return A.d5(A.bTK(),q,q,q,q,"mangaChapterFilterUnreadProvider",t.eE,t.u)}) +s($,"c2g","bn9",()=>{var q=null +return A.d5(A.bTI(),q,q,q,q,"mangaChapterFilterBookmarkedProvider",t.xN,t.u)}) +s($,"c2x","bnf",()=>{var q=null +return A.d5(A.bUu(),q,q,q,q,"quickSearchQueryProvider",t.TF,t.v)}) +s($,"c1m","bBt",()=>{var q=null +return A.f0(A.bQP(),q,q,q,q,"backupRepositoryProvider",t.nc)}) +s($,"c0q","aqE",()=>A.a7(u.o)) +s($,"c1X","aqM",()=>{var q=null +return A.d5(A.bSV(),q,q,q,q,"gridMinWidthProvider",t.XW,t.PM)}) +s($,"c2N","bnj",()=>{var q=null +return A.d5(A.bVn(),q,q,q,q,"showNSFWProvider",t.of,t.u)}) +s($,"c2z","bng",()=>{var q=null +return A.d5(A.bUx(),q,q,q,q,"readerInitialOverlayProvider",t.NF,t.u)}) +s($,"c1Z","bh9",()=>{var q=null +return A.d5(A.bUy(),q,q,q,q,"invertTapProvider",t.tA,t.u)}) +s($,"c2A","bnh",()=>{var q=null +return A.d5(A.bUz(),q,q,q,q,"readerMagnifierSizeKeyProvider",t.pf,t.PM)}) +s($,"c2B","bhh",()=>{var q=null +return A.d5(A.bUA(),q,q,q,q,"readerModeKeyProvider",t.jC,t.yZ)}) +s($,"c2C","aqO",()=>{var q=null +return A.d5(A.bUB(),q,q,q,q,"readerNavigationLayoutKeyProvider",t.j1,t.dr)}) +s($,"c2D","bni",()=>{var q=null +return A.d5(A.bUC(),q,q,q,q,"readerPaddingKeyProvider",t.WJ,t.PM)}) +s($,"c2E","bhi",()=>{var q=null +return A.d5(A.bUD(),q,q,q,q,"readerScrollAnimationProvider",t.sx,t.u)}) +s($,"c2X","bnm",()=>{var q=null +return A.d5(A.bUE(),q,q,q,q,"swipeChapterToggleProvider",t.ou,t.u)}) +s($,"c37","bBQ",()=>{var q=null +return A.d5(A.bUF(),q,q,q,q,"volumeTapInvertProvider",A.ah("zq"),t.u)}) +s($,"c38","bno",()=>{var q=null +return A.d5(A.bUG(),q,q,q,q,"volumeTapProvider",A.ah("zp"),t.u)}) +s($,"c1W","bmY",()=>A.aDK(null,A.ah("K4"))) +s($,"c1y","Hn",()=>{var q=null +return A.d5(A.bRx(),q,q,q,q,"credentialsProvider",t.W8,t.v)}) +s($,"c2I","A8",()=>{var q=null +return A.d5(A.bVg(),q,q,q,q,"serverPortProvider",t.Ev,t.bo)}) +s($,"c2J","Ho",()=>{var q=null +return A.d5(A.bVf(),q,q,q,q,"serverPortToggleProvider",t.Qm,t.u)}) +s($,"c2K","Hp",()=>{var q=null +return A.d5(A.bVh(),q,q,q,q,"serverUrlProvider",t.Tb,t.v)}) +s($,"c3_","bhn",()=>{var q=null +return A.d5(A.bVW(),q,q,q,q,"themeModeKeyProvider",t.Ax,t.YX)}) +s($,"c1F","vN",()=>{var q=null +return A.f0(A.bSR(),q,q,q,q,"dioClientKeyProvider",t.w6)}) +s($,"c2L","bhj",()=>{var q=null +return A.f0(A.bSU(),q,q,q,q,"sharedPreferencesProvider",t.cZ)}) +s($,"c1j","bmS",()=>{var q=null +return A.f0(A.bSQ(),q,q,q,q,"appDirectoryProvider",t.je)}) +s($,"c1Y","bmZ",()=>{var q=null +return A.f0(A.bSS(),q,q,q,q,"hiveCacheStoreProvider",t.tR)}) +s($,"c2y","bBJ",()=>{var q=null +return A.f0(A.bST(),q,q,q,q,"rateLimitQueueProvider",t.aV)}) +s($,"c1l","vM",()=>{var q=null +return A.d5(A.bSO(),q,q,q,q,"authTypeKeyProvider",t.ca,t.Wr)}) +s($,"c25","bn5",()=>{var q=null +return A.d5(A.bSP(),q,q,q,q,"l10nProvider",t.CV,t.x5)}) +s($,"c0E","bB_",()=>A.aDK("root",t.uK)) +s($,"c0z","iO",()=>A.aDK("Quick Open",t.uK)) +s($,"c0I","bB1",()=>A.aDK("shell",t.uK)) +s($,"bYc","byX",()=>$.iO()) +s($,"bYI","bzi",()=>$.bB1()) +s($,"bXP","byP",()=>$.iO()) +s($,"bZa","bzz",()=>$.iO()) +s($,"bXr","byF",()=>$.iO()) +s($,"bYK","bzj",()=>$.iO()) +s($,"bYL","bzk",()=>$.iO()) +s($,"bWl","bya",()=>$.iO()) +s($,"bYi","bz0",()=>$.iO()) +s($,"bYE","bzg",()=>$.iO()) +s($,"bXM","byO",()=>$.iO()) +s($,"bX8","byu",()=>$.iO()) +s($,"bYD","bzf",()=>$.iO()) +s($,"bYj","bz1",()=>$.iO()) +s($,"bWs","byb",()=>$.iO()) +s($,"bXq","byE",()=>$.iO()) +s($,"bWx","bye",()=>$.iO()) +s($,"bWv","byc",()=>$.iO()) +s($,"c2G","bBK",()=>{var q=null +return A.f0(A.bV8(),q,q,q,q,"routerConfigProvider",t.aq)}) +s($,"c2n","bBF",()=>{var q=null +return A.f0(A.bTW(),q,q,q,q,"networkModuleProvider",t.lm)}) +s($,"c1G","bh5",()=>{var q=null +return A.d5(A.bTG(),q,q,q,q,"downloadedBadgeProvider",t.Pj,t.u)}) +s($,"c32","bho",()=>{var q=null +return A.d5(A.bTH(),q,q,q,q,"unreadBadgeProvider",t.EI,t.u)}) +s($,"bZb","bmn",()=>new A.B()) +r($,"bLs","bzA",()=>{var q=new A.aJ4() +q.Hw($.bmn()) +return q}) +s($,"bZe","bzD",()=>{var q,p=J.om(256,t.N) +for(q=0;q<256;++q)p[q]=B.c.eM(B.f.o0(q,16),2,"0") +return p}) +s($,"bXT","byR",()=>A.bJ2(null))})();(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({WebGL:J.Cb,AnimationEffectReadOnly:J.j,AnimationEffectTiming:J.j,AnimationEffectTimingReadOnly:J.j,AnimationTimeline:J.j,AnimationWorkletGlobalScope:J.j,AuthenticatorAssertionResponse:J.j,AuthenticatorAttestationResponse:J.j,AuthenticatorResponse:J.j,BackgroundFetchFetch:J.j,BackgroundFetchManager:J.j,BackgroundFetchSettledFetch:J.j,BarProp:J.j,BarcodeDetector:J.j,BluetoothRemoteGATTDescriptor:J.j,Body:J.j,BudgetState:J.j,CacheStorage:J.j,CanvasGradient:J.j,CanvasPattern:J.j,CanvasRenderingContext2D:J.j,Client:J.j,Clients:J.j,CookieStore:J.j,Coordinates:J.j,Credential:J.j,CredentialUserData:J.j,CredentialsContainer:J.j,Crypto:J.j,CryptoKey:J.j,CSS:J.j,CSSVariableReferenceValue:J.j,CustomElementRegistry:J.j,DataTransfer:J.j,DataTransferItem:J.j,DeprecatedStorageInfo:J.j,DeprecatedStorageQuota:J.j,DeprecationReport:J.j,DetectedBarcode:J.j,DetectedFace:J.j,DetectedText:J.j,DeviceAcceleration:J.j,DeviceRotationRate:J.j,DirectoryEntry:J.j,webkitFileSystemDirectoryEntry:J.j,FileSystemDirectoryEntry:J.j,DirectoryReader:J.j,WebKitDirectoryReader:J.j,webkitFileSystemDirectoryReader:J.j,FileSystemDirectoryReader:J.j,DocumentOrShadowRoot:J.j,DocumentTimeline:J.j,DOMError:J.j,DOMImplementation:J.j,Iterator:J.j,DOMMatrix:J.j,DOMMatrixReadOnly:J.j,DOMParser:J.j,DOMPoint:J.j,DOMPointReadOnly:J.j,DOMQuad:J.j,DOMStringMap:J.j,Entry:J.j,webkitFileSystemEntry:J.j,FileSystemEntry:J.j,External:J.j,FaceDetector:J.j,FederatedCredential:J.j,FileEntry:J.j,webkitFileSystemFileEntry:J.j,FileSystemFileEntry:J.j,DOMFileSystem:J.j,WebKitFileSystem:J.j,webkitFileSystem:J.j,FileSystem:J.j,FontFace:J.j,FontFaceSource:J.j,FormData:J.j,GamepadButton:J.j,GamepadPose:J.j,Geolocation:J.j,Position:J.j,GeolocationPosition:J.j,Headers:J.j,HTMLHyperlinkElementUtils:J.j,IdleDeadline:J.j,ImageBitmap:J.j,ImageBitmapRenderingContext:J.j,ImageCapture:J.j,InputDeviceCapabilities:J.j,IntersectionObserver:J.j,IntersectionObserverEntry:J.j,InterventionReport:J.j,KeyframeEffect:J.j,KeyframeEffectReadOnly:J.j,MediaCapabilities:J.j,MediaCapabilitiesInfo:J.j,MediaDeviceInfo:J.j,MediaError:J.j,MediaKeyStatusMap:J.j,MediaKeySystemAccess:J.j,MediaKeys:J.j,MediaKeysPolicy:J.j,MediaMetadata:J.j,MediaSession:J.j,MediaSettingsRange:J.j,MemoryInfo:J.j,MessageChannel:J.j,Metadata:J.j,MutationObserver:J.j,WebKitMutationObserver:J.j,MutationRecord:J.j,NavigationPreloadManager:J.j,Navigator:J.j,NavigatorAutomationInformation:J.j,NavigatorConcurrentHardware:J.j,NavigatorCookies:J.j,NavigatorUserMediaError:J.j,NodeFilter:J.j,NodeIterator:J.j,NonDocumentTypeChildNode:J.j,NonElementParentNode:J.j,NoncedElement:J.j,OffscreenCanvasRenderingContext2D:J.j,OverconstrainedError:J.j,PaintRenderingContext2D:J.j,PaintSize:J.j,PaintWorkletGlobalScope:J.j,PasswordCredential:J.j,Path2D:J.j,PaymentAddress:J.j,PaymentInstruments:J.j,PaymentManager:J.j,PaymentResponse:J.j,PerformanceEntry:J.j,PerformanceLongTaskTiming:J.j,PerformanceMark:J.j,PerformanceMeasure:J.j,PerformanceNavigation:J.j,PerformanceNavigationTiming:J.j,PerformanceObserver:J.j,PerformanceObserverEntryList:J.j,PerformancePaintTiming:J.j,PerformanceResourceTiming:J.j,PerformanceServerTiming:J.j,PerformanceTiming:J.j,Permissions:J.j,PhotoCapabilities:J.j,PositionError:J.j,GeolocationPositionError:J.j,Presentation:J.j,PresentationReceiver:J.j,PublicKeyCredential:J.j,PushManager:J.j,PushMessageData:J.j,PushSubscription:J.j,PushSubscriptionOptions:J.j,Range:J.j,RelatedApplication:J.j,ReportBody:J.j,ReportingObserver:J.j,ResizeObserver:J.j,ResizeObserverEntry:J.j,RTCCertificate:J.j,RTCIceCandidate:J.j,mozRTCIceCandidate:J.j,RTCLegacyStatsReport:J.j,RTCRtpContributingSource:J.j,RTCRtpReceiver:J.j,RTCRtpSender:J.j,RTCSessionDescription:J.j,mozRTCSessionDescription:J.j,RTCStatsResponse:J.j,Screen:J.j,ScrollState:J.j,ScrollTimeline:J.j,Selection:J.j,SpeechRecognitionAlternative:J.j,SpeechSynthesisVoice:J.j,StaticRange:J.j,StorageManager:J.j,StyleMedia:J.j,StylePropertyMap:J.j,StylePropertyMapReadonly:J.j,SyncManager:J.j,TaskAttributionTiming:J.j,TextDetector:J.j,TextMetrics:J.j,TrackDefault:J.j,TreeWalker:J.j,TrustedHTML:J.j,TrustedScriptURL:J.j,TrustedURL:J.j,UnderlyingSourceBase:J.j,URLSearchParams:J.j,VRCoordinateSystem:J.j,VRDisplayCapabilities:J.j,VREyeParameters:J.j,VRFrameData:J.j,VRFrameOfReference:J.j,VRPose:J.j,VRStageBounds:J.j,VRStageBoundsPoint:J.j,VRStageParameters:J.j,ValidityState:J.j,VideoPlaybackQuality:J.j,VideoTrack:J.j,VTTRegion:J.j,WindowClient:J.j,WorkletAnimation:J.j,WorkletGlobalScope:J.j,XPathEvaluator:J.j,XPathExpression:J.j,XPathNSResolver:J.j,XPathResult:J.j,XMLSerializer:J.j,XSLTProcessor:J.j,Bluetooth:J.j,BluetoothCharacteristicProperties:J.j,BluetoothRemoteGATTServer:J.j,BluetoothRemoteGATTService:J.j,BluetoothUUID:J.j,BudgetService:J.j,Cache:J.j,DOMFileSystemSync:J.j,DirectoryEntrySync:J.j,DirectoryReaderSync:J.j,EntrySync:J.j,FileEntrySync:J.j,FileReaderSync:J.j,FileWriterSync:J.j,HTMLAllCollection:J.j,Mojo:J.j,MojoHandle:J.j,MojoWatcher:J.j,NFC:J.j,PagePopupController:J.j,Report:J.j,Request:J.j,Response:J.j,SubtleCrypto:J.j,USBAlternateInterface:J.j,USBConfiguration:J.j,USBDevice:J.j,USBEndpoint:J.j,USBInTransferResult:J.j,USBInterface:J.j,USBIsochronousInTransferPacket:J.j,USBIsochronousInTransferResult:J.j,USBIsochronousOutTransferPacket:J.j,USBIsochronousOutTransferResult:J.j,USBOutTransferResult:J.j,WorkerLocation:J.j,WorkerNavigator:J.j,Worklet:J.j,IDBIndex:J.j,IDBObservation:J.j,IDBObserver:J.j,IDBObserverChanges:J.j,SVGAngle:J.j,SVGAnimatedAngle:J.j,SVGAnimatedBoolean:J.j,SVGAnimatedEnumeration:J.j,SVGAnimatedInteger:J.j,SVGAnimatedLength:J.j,SVGAnimatedLengthList:J.j,SVGAnimatedNumber:J.j,SVGAnimatedNumberList:J.j,SVGAnimatedPreserveAspectRatio:J.j,SVGAnimatedRect:J.j,SVGAnimatedString:J.j,SVGAnimatedTransformList:J.j,SVGMatrix:J.j,SVGPoint:J.j,SVGPreserveAspectRatio:J.j,SVGRect:J.j,SVGUnitTypes:J.j,AudioListener:J.j,AudioParam:J.j,AudioTrack:J.j,AudioWorkletGlobalScope:J.j,AudioWorkletProcessor:J.j,PeriodicWave:J.j,WebGLActiveInfo:J.j,ANGLEInstancedArrays:J.j,ANGLE_instanced_arrays:J.j,WebGLBuffer:J.j,WebGLCanvas:J.j,WebGLColorBufferFloat:J.j,WebGLCompressedTextureASTC:J.j,WebGLCompressedTextureATC:J.j,WEBGL_compressed_texture_atc:J.j,WebGLCompressedTextureETC1:J.j,WEBGL_compressed_texture_etc1:J.j,WebGLCompressedTextureETC:J.j,WebGLCompressedTexturePVRTC:J.j,WEBGL_compressed_texture_pvrtc:J.j,WebGLCompressedTextureS3TC:J.j,WEBGL_compressed_texture_s3tc:J.j,WebGLCompressedTextureS3TCsRGB:J.j,WebGLDebugRendererInfo:J.j,WEBGL_debug_renderer_info:J.j,WebGLDebugShaders:J.j,WEBGL_debug_shaders:J.j,WebGLDepthTexture:J.j,WEBGL_depth_texture:J.j,WebGLDrawBuffers:J.j,WEBGL_draw_buffers:J.j,EXTsRGB:J.j,EXT_sRGB:J.j,EXTBlendMinMax:J.j,EXT_blend_minmax:J.j,EXTColorBufferFloat:J.j,EXTColorBufferHalfFloat:J.j,EXTDisjointTimerQuery:J.j,EXTDisjointTimerQueryWebGL2:J.j,EXTFragDepth:J.j,EXT_frag_depth:J.j,EXTShaderTextureLOD:J.j,EXT_shader_texture_lod:J.j,EXTTextureFilterAnisotropic:J.j,EXT_texture_filter_anisotropic:J.j,WebGLFramebuffer:J.j,WebGLGetBufferSubDataAsync:J.j,WebGLLoseContext:J.j,WebGLExtensionLoseContext:J.j,WEBGL_lose_context:J.j,OESElementIndexUint:J.j,OES_element_index_uint:J.j,OESStandardDerivatives:J.j,OES_standard_derivatives:J.j,OESTextureFloat:J.j,OES_texture_float:J.j,OESTextureFloatLinear:J.j,OES_texture_float_linear:J.j,OESTextureHalfFloat:J.j,OES_texture_half_float:J.j,OESTextureHalfFloatLinear:J.j,OES_texture_half_float_linear:J.j,OESVertexArrayObject:J.j,OES_vertex_array_object:J.j,WebGLProgram:J.j,WebGLQuery:J.j,WebGLRenderbuffer:J.j,WebGLRenderingContext:J.j,WebGL2RenderingContext:J.j,WebGLSampler:J.j,WebGLShader:J.j,WebGLShaderPrecisionFormat:J.j,WebGLSync:J.j,WebGLTexture:J.j,WebGLTimerQueryEXT:J.j,WebGLTransformFeedback:J.j,WebGLUniformLocation:J.j,WebGLVertexArrayObject:J.j,WebGLVertexArrayObjectOES:J.j,WebGL2RenderingContextBase:J.j,ArrayBuffer:A.xO,ArrayBufferView:A.h9,DataView:A.LA,Float32Array:A.LB,Float64Array:A.a5j,Int16Array:A.a5k,Int32Array:A.LC,Int8Array:A.a5l,Uint16Array:A.a5m,Uint32Array:A.LD,Uint8ClampedArray:A.LE,CanvasPixelArray:A.LE,Uint8Array:A.xP,HTMLAudioElement:A.ba,HTMLBRElement:A.ba,HTMLButtonElement:A.ba,HTMLCanvasElement:A.ba,HTMLContentElement:A.ba,HTMLDListElement:A.ba,HTMLDataElement:A.ba,HTMLDataListElement:A.ba,HTMLDetailsElement:A.ba,HTMLDialogElement:A.ba,HTMLDivElement:A.ba,HTMLEmbedElement:A.ba,HTMLFieldSetElement:A.ba,HTMLHRElement:A.ba,HTMLHeadElement:A.ba,HTMLHeadingElement:A.ba,HTMLHtmlElement:A.ba,HTMLIFrameElement:A.ba,HTMLImageElement:A.ba,HTMLLIElement:A.ba,HTMLLabelElement:A.ba,HTMLLegendElement:A.ba,HTMLMapElement:A.ba,HTMLMediaElement:A.ba,HTMLMenuElement:A.ba,HTMLMetaElement:A.ba,HTMLMeterElement:A.ba,HTMLModElement:A.ba,HTMLOListElement:A.ba,HTMLObjectElement:A.ba,HTMLOptGroupElement:A.ba,HTMLOptionElement:A.ba,HTMLOutputElement:A.ba,HTMLParagraphElement:A.ba,HTMLParamElement:A.ba,HTMLPictureElement:A.ba,HTMLPreElement:A.ba,HTMLProgressElement:A.ba,HTMLQuoteElement:A.ba,HTMLShadowElement:A.ba,HTMLSlotElement:A.ba,HTMLSourceElement:A.ba,HTMLSpanElement:A.ba,HTMLStyleElement:A.ba,HTMLTableCaptionElement:A.ba,HTMLTableCellElement:A.ba,HTMLTableDataCellElement:A.ba,HTMLTableHeaderCellElement:A.ba,HTMLTableColElement:A.ba,HTMLTextAreaElement:A.ba,HTMLTimeElement:A.ba,HTMLTitleElement:A.ba,HTMLTrackElement:A.ba,HTMLUListElement:A.ba,HTMLUnknownElement:A.ba,HTMLVideoElement:A.ba,HTMLDirectoryElement:A.ba,HTMLFontElement:A.ba,HTMLFrameElement:A.ba,HTMLFrameSetElement:A.ba,HTMLMarqueeElement:A.ba,HTMLElement:A.ba,AccessibleNodeList:A.Ww,HTMLAnchorElement:A.WD,HTMLAreaElement:A.WZ,HTMLBaseElement:A.Au,Blob:A.t1,HTMLBodyElement:A.vY,CDATASection:A.o1,CharacterData:A.o1,Comment:A.o1,ProcessingInstruction:A.o1,Text:A.o1,CloseEvent:A.td,CSSPerspective:A.YJ,CSSCharsetRule:A.dB,CSSConditionRule:A.dB,CSSFontFaceRule:A.dB,CSSGroupingRule:A.dB,CSSImportRule:A.dB,CSSKeyframeRule:A.dB,MozCSSKeyframeRule:A.dB,WebKitCSSKeyframeRule:A.dB,CSSKeyframesRule:A.dB,MozCSSKeyframesRule:A.dB,WebKitCSSKeyframesRule:A.dB,CSSMediaRule:A.dB,CSSNamespaceRule:A.dB,CSSPageRule:A.dB,CSSRule:A.dB,CSSStyleRule:A.dB,CSSSupportsRule:A.dB,CSSViewportRule:A.dB,CSSStyleDeclaration:A.wi,MSStyleCSSProperties:A.wi,CSS2Properties:A.wi,CSSImageValue:A.js,CSSKeywordValue:A.js,CSSNumericValue:A.js,CSSPositionValue:A.js,CSSResourceValue:A.js,CSSUnitValue:A.js,CSSURLImageValue:A.js,CSSStyleValue:A.js,CSSMatrixComponent:A.mI,CSSRotation:A.mI,CSSScale:A.mI,CSSSkew:A.mI,CSSTranslation:A.mI,CSSTransformComponent:A.mI,CSSTransformValue:A.YK,CSSUnparsedValue:A.YL,DataTransferItemList:A.a_H,Document:A.pQ,HTMLDocument:A.pQ,XMLDocument:A.pQ,DOMException:A.a0c,ClientRectList:A.Jl,DOMRectList:A.Jl,DOMRectReadOnly:A.Jm,DOMStringList:A.Jn,DOMTokenList:A.a0f,MathMLElement:A.cv,Element:A.cv,AbortPaymentEvent:A.aX,AnimationEvent:A.aX,AnimationPlaybackEvent:A.aX,ApplicationCacheErrorEvent:A.aX,BackgroundFetchClickEvent:A.aX,BackgroundFetchEvent:A.aX,BackgroundFetchFailEvent:A.aX,BackgroundFetchedEvent:A.aX,BeforeInstallPromptEvent:A.aX,BeforeUnloadEvent:A.aX,BlobEvent:A.aX,CanMakePaymentEvent:A.aX,ClipboardEvent:A.aX,CompositionEvent:A.aX,CustomEvent:A.aX,DeviceMotionEvent:A.aX,DeviceOrientationEvent:A.aX,ErrorEvent:A.aX,ExtendableEvent:A.aX,ExtendableMessageEvent:A.aX,FetchEvent:A.aX,FocusEvent:A.aX,FontFaceSetLoadEvent:A.aX,ForeignFetchEvent:A.aX,GamepadEvent:A.aX,HashChangeEvent:A.aX,InstallEvent:A.aX,KeyboardEvent:A.aX,MediaEncryptedEvent:A.aX,MediaKeyMessageEvent:A.aX,MediaQueryListEvent:A.aX,MediaStreamEvent:A.aX,MediaStreamTrackEvent:A.aX,MIDIConnectionEvent:A.aX,MIDIMessageEvent:A.aX,MouseEvent:A.aX,DragEvent:A.aX,MutationEvent:A.aX,NotificationEvent:A.aX,PageTransitionEvent:A.aX,PaymentRequestEvent:A.aX,PaymentRequestUpdateEvent:A.aX,PointerEvent:A.aX,PopStateEvent:A.aX,PresentationConnectionAvailableEvent:A.aX,PresentationConnectionCloseEvent:A.aX,PromiseRejectionEvent:A.aX,PushEvent:A.aX,RTCDataChannelEvent:A.aX,RTCDTMFToneChangeEvent:A.aX,RTCPeerConnectionIceEvent:A.aX,RTCTrackEvent:A.aX,SecurityPolicyViolationEvent:A.aX,SensorErrorEvent:A.aX,SpeechRecognitionError:A.aX,SpeechRecognitionEvent:A.aX,SpeechSynthesisEvent:A.aX,StorageEvent:A.aX,SyncEvent:A.aX,TextEvent:A.aX,TouchEvent:A.aX,TrackEvent:A.aX,TransitionEvent:A.aX,WebKitTransitionEvent:A.aX,UIEvent:A.aX,VRDeviceEvent:A.aX,VRDisplayEvent:A.aX,VRSessionEvent:A.aX,WheelEvent:A.aX,MojoInterfaceRequestEvent:A.aX,USBConnectionEvent:A.aX,AudioProcessingEvent:A.aX,OfflineAudioCompletionEvent:A.aX,WebGLContextEvent:A.aX,Event:A.aX,InputEvent:A.aX,SubmitEvent:A.aX,AbsoluteOrientationSensor:A.aJ,Accelerometer:A.aJ,AccessibleNode:A.aJ,AmbientLightSensor:A.aJ,Animation:A.aJ,ApplicationCache:A.aJ,DOMApplicationCache:A.aJ,OfflineResourceList:A.aJ,BackgroundFetchRegistration:A.aJ,BatteryManager:A.aJ,BroadcastChannel:A.aJ,CanvasCaptureMediaStreamTrack:A.aJ,EventSource:A.aJ,Gyroscope:A.aJ,LinearAccelerationSensor:A.aJ,Magnetometer:A.aJ,MediaDevices:A.aJ,MediaKeySession:A.aJ,MediaQueryList:A.aJ,MediaRecorder:A.aJ,MediaSource:A.aJ,MediaStream:A.aJ,MediaStreamTrack:A.aJ,MIDIAccess:A.aJ,MIDIInput:A.aJ,MIDIOutput:A.aJ,MIDIPort:A.aJ,NetworkInformation:A.aJ,OffscreenCanvas:A.aJ,OrientationSensor:A.aJ,PaymentRequest:A.aJ,Performance:A.aJ,PermissionStatus:A.aJ,PresentationAvailability:A.aJ,PresentationConnection:A.aJ,PresentationConnectionList:A.aJ,PresentationRequest:A.aJ,RelativeOrientationSensor:A.aJ,RemotePlayback:A.aJ,RTCDataChannel:A.aJ,DataChannel:A.aJ,RTCDTMFSender:A.aJ,RTCPeerConnection:A.aJ,webkitRTCPeerConnection:A.aJ,mozRTCPeerConnection:A.aJ,ScreenOrientation:A.aJ,Sensor:A.aJ,ServiceWorker:A.aJ,ServiceWorkerContainer:A.aJ,ServiceWorkerRegistration:A.aJ,SharedWorker:A.aJ,SpeechRecognition:A.aJ,webkitSpeechRecognition:A.aJ,SpeechSynthesis:A.aJ,SpeechSynthesisUtterance:A.aJ,VR:A.aJ,VRDevice:A.aJ,VRDisplay:A.aJ,VRSession:A.aJ,VisualViewport:A.aJ,Worker:A.aJ,WorkerPerformance:A.aJ,BluetoothDevice:A.aJ,BluetoothRemoteGATTCharacteristic:A.aJ,Clipboard:A.aJ,MojoInterfaceInterceptor:A.aJ,USB:A.aJ,IDBOpenDBRequest:A.aJ,IDBVersionChangeRequest:A.aJ,IDBRequest:A.aJ,IDBTransaction:A.aJ,AnalyserNode:A.aJ,RealtimeAnalyserNode:A.aJ,AudioBufferSourceNode:A.aJ,AudioDestinationNode:A.aJ,AudioNode:A.aJ,AudioScheduledSourceNode:A.aJ,AudioWorkletNode:A.aJ,BiquadFilterNode:A.aJ,ChannelMergerNode:A.aJ,AudioChannelMerger:A.aJ,ChannelSplitterNode:A.aJ,AudioChannelSplitter:A.aJ,ConstantSourceNode:A.aJ,ConvolverNode:A.aJ,DelayNode:A.aJ,DynamicsCompressorNode:A.aJ,GainNode:A.aJ,AudioGainNode:A.aJ,IIRFilterNode:A.aJ,MediaElementAudioSourceNode:A.aJ,MediaStreamAudioDestinationNode:A.aJ,MediaStreamAudioSourceNode:A.aJ,OscillatorNode:A.aJ,Oscillator:A.aJ,PannerNode:A.aJ,AudioPannerNode:A.aJ,webkitAudioPannerNode:A.aJ,ScriptProcessorNode:A.aJ,JavaScriptAudioNode:A.aJ,StereoPannerNode:A.aJ,WaveShaperNode:A.aJ,EventTarget:A.aJ,File:A.hV,FileList:A.BG,FileReader:A.JK,FileWriter:A.a0W,FontFaceSet:A.a1c,HTMLFormElement:A.a1e,Gamepad:A.jB,History:A.a1F,HTMLCollection:A.x3,HTMLFormControlsCollection:A.x3,HTMLOptionsCollection:A.x3,XMLHttpRequest:A.tI,XMLHttpRequestUpload:A.x4,XMLHttpRequestEventTarget:A.x4,ImageData:A.C4,HTMLInputElement:A.xe,HTMLLinkElement:A.KP,Location:A.a2Q,MediaList:A.a51,MessageEvent:A.u9,MessagePort:A.CO,MIDIInputMap:A.a54,MIDIOutputMap:A.a55,MimeType:A.jI,MimeTypeArray:A.a56,DocumentFragment:A.br,ShadowRoot:A.br,DocumentType:A.br,Node:A.br,NodeList:A.LM,RadioNodeList:A.LM,Notification:A.a5v,Plugin:A.jK,PluginArray:A.a6q,ProgressEvent:A.lg,ResourceProgressEvent:A.lg,RTCStatsReport:A.a7T,HTMLScriptElement:A.Nf,HTMLSelectElement:A.a8a,SharedArrayBuffer:A.E8,SourceBuffer:A.jP,SourceBufferList:A.a94,SpeechGrammar:A.jS,SpeechGrammarList:A.a9t,SpeechRecognitionResult:A.jT,Storage:A.Oa,CSSStyleSheet:A.iB,StyleSheet:A.iB,HTMLTableElement:A.Oo,HTMLTableRowElement:A.a9Q,HTMLTableSectionElement:A.a9R,HTMLTemplateElement:A.EE,TextTrack:A.jY,TextTrackCue:A.iC,VTTCue:A.iC,TextTrackCueList:A.aac,TextTrackList:A.aad,TimeRanges:A.aag,Touch:A.jZ,TouchList:A.aal,TrackDefaultList:A.aam,URL:A.aaJ,VideoTrackList:A.aaS,WebSocket:A.Fa,Window:A.v0,DOMWindow:A.v0,DedicatedWorkerGlobalScope:A.p5,ServiceWorkerGlobalScope:A.p5,SharedWorkerGlobalScope:A.p5,WorkerGlobalScope:A.p5,Attr:A.Ft,CSSRuleList:A.aeC,ClientRect:A.Qy,DOMRect:A.Qy,GamepadList:A.agn,NamedNodeMap:A.RZ,MozNamedAttrMap:A.RZ,SpeechRecognitionResultList:A.am4,StyleSheetList:A.amg,IDBCursor:A.J0,IDBCursorWithValue:A.o6,IDBDatabase:A.wo,IDBFactory:A.Kn,IDBKeyRange:A.Ck,IDBObjectStore:A.LQ,IDBVersionChangeEvent:A.v_,SVGLength:A.l8,SVGLengthList:A.a2C,SVGNumber:A.ld,SVGNumberList:A.a5A,SVGPointList:A.a6r,SVGScriptElement:A.DS,SVGStringList:A.a9D,SVGAElement:A.bh,SVGAnimateElement:A.bh,SVGAnimateMotionElement:A.bh,SVGAnimateTransformElement:A.bh,SVGAnimationElement:A.bh,SVGCircleElement:A.bh,SVGClipPathElement:A.bh,SVGDefsElement:A.bh,SVGDescElement:A.bh,SVGDiscardElement:A.bh,SVGEllipseElement:A.bh,SVGFEBlendElement:A.bh,SVGFEColorMatrixElement:A.bh,SVGFEComponentTransferElement:A.bh,SVGFECompositeElement:A.bh,SVGFEConvolveMatrixElement:A.bh,SVGFEDiffuseLightingElement:A.bh,SVGFEDisplacementMapElement:A.bh,SVGFEDistantLightElement:A.bh,SVGFEFloodElement:A.bh,SVGFEFuncAElement:A.bh,SVGFEFuncBElement:A.bh,SVGFEFuncGElement:A.bh,SVGFEFuncRElement:A.bh,SVGFEGaussianBlurElement:A.bh,SVGFEImageElement:A.bh,SVGFEMergeElement:A.bh,SVGFEMergeNodeElement:A.bh,SVGFEMorphologyElement:A.bh,SVGFEOffsetElement:A.bh,SVGFEPointLightElement:A.bh,SVGFESpecularLightingElement:A.bh,SVGFESpotLightElement:A.bh,SVGFETileElement:A.bh,SVGFETurbulenceElement:A.bh,SVGFilterElement:A.bh,SVGForeignObjectElement:A.bh,SVGGElement:A.bh,SVGGeometryElement:A.bh,SVGGraphicsElement:A.bh,SVGImageElement:A.bh,SVGLineElement:A.bh,SVGLinearGradientElement:A.bh,SVGMarkerElement:A.bh,SVGMaskElement:A.bh,SVGMetadataElement:A.bh,SVGPathElement:A.bh,SVGPatternElement:A.bh,SVGPolygonElement:A.bh,SVGPolylineElement:A.bh,SVGRadialGradientElement:A.bh,SVGRectElement:A.bh,SVGSetElement:A.bh,SVGStopElement:A.bh,SVGStyleElement:A.bh,SVGSVGElement:A.bh,SVGSwitchElement:A.bh,SVGSymbolElement:A.bh,SVGTSpanElement:A.bh,SVGTextContentElement:A.bh,SVGTextElement:A.bh,SVGTextPathElement:A.bh,SVGTextPositioningElement:A.bh,SVGTitleElement:A.bh,SVGUseElement:A.bh,SVGViewElement:A.bh,SVGGradientElement:A.bh,SVGComponentTransferFunctionElement:A.bh,SVGFEDropShadowElement:A.bh,SVGMPathElement:A.bh,SVGElement:A.bh,SVGTransform:A.lp,SVGTransformList:A.aao,AudioBuffer:A.Xb,AudioParamMap:A.Xc,AudioTrackList:A.Xd,AudioContext:A.rZ,webkitAudioContext:A.rZ,BaseAudioContext:A.rZ,OfflineAudioContext:A.a5B}) +hunkHelpers.setOrUpdateLeafTags({WebGL:true,AnimationEffectReadOnly:true,AnimationEffectTiming:true,AnimationEffectTimingReadOnly:true,AnimationTimeline:true,AnimationWorkletGlobalScope:true,AuthenticatorAssertionResponse:true,AuthenticatorAttestationResponse:true,AuthenticatorResponse:true,BackgroundFetchFetch:true,BackgroundFetchManager:true,BackgroundFetchSettledFetch:true,BarProp:true,BarcodeDetector:true,BluetoothRemoteGATTDescriptor:true,Body:true,BudgetState:true,CacheStorage:true,CanvasGradient:true,CanvasPattern:true,CanvasRenderingContext2D:true,Client:true,Clients:true,CookieStore:true,Coordinates:true,Credential:true,CredentialUserData:true,CredentialsContainer:true,Crypto:true,CryptoKey:true,CSS:true,CSSVariableReferenceValue:true,CustomElementRegistry:true,DataTransfer:true,DataTransferItem:true,DeprecatedStorageInfo:true,DeprecatedStorageQuota:true,DeprecationReport:true,DetectedBarcode:true,DetectedFace:true,DetectedText:true,DeviceAcceleration:true,DeviceRotationRate:true,DirectoryEntry:true,webkitFileSystemDirectoryEntry:true,FileSystemDirectoryEntry:true,DirectoryReader:true,WebKitDirectoryReader:true,webkitFileSystemDirectoryReader:true,FileSystemDirectoryReader:true,DocumentOrShadowRoot:true,DocumentTimeline:true,DOMError:true,DOMImplementation:true,Iterator:true,DOMMatrix:true,DOMMatrixReadOnly:true,DOMParser:true,DOMPoint:true,DOMPointReadOnly:true,DOMQuad:true,DOMStringMap:true,Entry:true,webkitFileSystemEntry:true,FileSystemEntry:true,External:true,FaceDetector:true,FederatedCredential:true,FileEntry:true,webkitFileSystemFileEntry:true,FileSystemFileEntry:true,DOMFileSystem:true,WebKitFileSystem:true,webkitFileSystem:true,FileSystem:true,FontFace:true,FontFaceSource:true,FormData:true,GamepadButton:true,GamepadPose:true,Geolocation:true,Position:true,GeolocationPosition:true,Headers:true,HTMLHyperlinkElementUtils:true,IdleDeadline:true,ImageBitmap:true,ImageBitmapRenderingContext:true,ImageCapture:true,InputDeviceCapabilities:true,IntersectionObserver:true,IntersectionObserverEntry:true,InterventionReport:true,KeyframeEffect:true,KeyframeEffectReadOnly:true,MediaCapabilities:true,MediaCapabilitiesInfo:true,MediaDeviceInfo:true,MediaError:true,MediaKeyStatusMap:true,MediaKeySystemAccess:true,MediaKeys:true,MediaKeysPolicy:true,MediaMetadata:true,MediaSession:true,MediaSettingsRange:true,MemoryInfo:true,MessageChannel:true,Metadata:true,MutationObserver:true,WebKitMutationObserver:true,MutationRecord:true,NavigationPreloadManager:true,Navigator:true,NavigatorAutomationInformation:true,NavigatorConcurrentHardware:true,NavigatorCookies:true,NavigatorUserMediaError:true,NodeFilter:true,NodeIterator:true,NonDocumentTypeChildNode:true,NonElementParentNode:true,NoncedElement:true,OffscreenCanvasRenderingContext2D:true,OverconstrainedError:true,PaintRenderingContext2D:true,PaintSize:true,PaintWorkletGlobalScope:true,PasswordCredential:true,Path2D:true,PaymentAddress:true,PaymentInstruments:true,PaymentManager:true,PaymentResponse:true,PerformanceEntry:true,PerformanceLongTaskTiming:true,PerformanceMark:true,PerformanceMeasure:true,PerformanceNavigation:true,PerformanceNavigationTiming:true,PerformanceObserver:true,PerformanceObserverEntryList:true,PerformancePaintTiming:true,PerformanceResourceTiming:true,PerformanceServerTiming:true,PerformanceTiming:true,Permissions:true,PhotoCapabilities:true,PositionError:true,GeolocationPositionError:true,Presentation:true,PresentationReceiver:true,PublicKeyCredential:true,PushManager:true,PushMessageData:true,PushSubscription:true,PushSubscriptionOptions:true,Range:true,RelatedApplication:true,ReportBody:true,ReportingObserver:true,ResizeObserver:true,ResizeObserverEntry:true,RTCCertificate:true,RTCIceCandidate:true,mozRTCIceCandidate:true,RTCLegacyStatsReport:true,RTCRtpContributingSource:true,RTCRtpReceiver:true,RTCRtpSender:true,RTCSessionDescription:true,mozRTCSessionDescription:true,RTCStatsResponse:true,Screen:true,ScrollState:true,ScrollTimeline:true,Selection:true,SpeechRecognitionAlternative:true,SpeechSynthesisVoice:true,StaticRange:true,StorageManager:true,StyleMedia:true,StylePropertyMap:true,StylePropertyMapReadonly:true,SyncManager:true,TaskAttributionTiming:true,TextDetector:true,TextMetrics:true,TrackDefault:true,TreeWalker:true,TrustedHTML:true,TrustedScriptURL:true,TrustedURL:true,UnderlyingSourceBase:true,URLSearchParams:true,VRCoordinateSystem:true,VRDisplayCapabilities:true,VREyeParameters:true,VRFrameData:true,VRFrameOfReference:true,VRPose:true,VRStageBounds:true,VRStageBoundsPoint:true,VRStageParameters:true,ValidityState:true,VideoPlaybackQuality:true,VideoTrack:true,VTTRegion:true,WindowClient:true,WorkletAnimation:true,WorkletGlobalScope:true,XPathEvaluator:true,XPathExpression:true,XPathNSResolver:true,XPathResult:true,XMLSerializer:true,XSLTProcessor:true,Bluetooth:true,BluetoothCharacteristicProperties:true,BluetoothRemoteGATTServer:true,BluetoothRemoteGATTService:true,BluetoothUUID:true,BudgetService:true,Cache:true,DOMFileSystemSync:true,DirectoryEntrySync:true,DirectoryReaderSync:true,EntrySync:true,FileEntrySync:true,FileReaderSync:true,FileWriterSync:true,HTMLAllCollection:true,Mojo:true,MojoHandle:true,MojoWatcher:true,NFC:true,PagePopupController:true,Report:true,Request:true,Response:true,SubtleCrypto:true,USBAlternateInterface:true,USBConfiguration:true,USBDevice:true,USBEndpoint:true,USBInTransferResult:true,USBInterface:true,USBIsochronousInTransferPacket:true,USBIsochronousInTransferResult:true,USBIsochronousOutTransferPacket:true,USBIsochronousOutTransferResult:true,USBOutTransferResult:true,WorkerLocation:true,WorkerNavigator:true,Worklet:true,IDBIndex:true,IDBObservation:true,IDBObserver:true,IDBObserverChanges:true,SVGAngle:true,SVGAnimatedAngle:true,SVGAnimatedBoolean:true,SVGAnimatedEnumeration:true,SVGAnimatedInteger:true,SVGAnimatedLength:true,SVGAnimatedLengthList:true,SVGAnimatedNumber:true,SVGAnimatedNumberList:true,SVGAnimatedPreserveAspectRatio:true,SVGAnimatedRect:true,SVGAnimatedString:true,SVGAnimatedTransformList:true,SVGMatrix:true,SVGPoint:true,SVGPreserveAspectRatio:true,SVGRect:true,SVGUnitTypes:true,AudioListener:true,AudioParam:true,AudioTrack:true,AudioWorkletGlobalScope:true,AudioWorkletProcessor:true,PeriodicWave:true,WebGLActiveInfo:true,ANGLEInstancedArrays:true,ANGLE_instanced_arrays:true,WebGLBuffer:true,WebGLCanvas:true,WebGLColorBufferFloat:true,WebGLCompressedTextureASTC:true,WebGLCompressedTextureATC:true,WEBGL_compressed_texture_atc:true,WebGLCompressedTextureETC1:true,WEBGL_compressed_texture_etc1:true,WebGLCompressedTextureETC:true,WebGLCompressedTexturePVRTC:true,WEBGL_compressed_texture_pvrtc:true,WebGLCompressedTextureS3TC:true,WEBGL_compressed_texture_s3tc:true,WebGLCompressedTextureS3TCsRGB:true,WebGLDebugRendererInfo:true,WEBGL_debug_renderer_info:true,WebGLDebugShaders:true,WEBGL_debug_shaders:true,WebGLDepthTexture:true,WEBGL_depth_texture:true,WebGLDrawBuffers:true,WEBGL_draw_buffers:true,EXTsRGB:true,EXT_sRGB:true,EXTBlendMinMax:true,EXT_blend_minmax:true,EXTColorBufferFloat:true,EXTColorBufferHalfFloat:true,EXTDisjointTimerQuery:true,EXTDisjointTimerQueryWebGL2:true,EXTFragDepth:true,EXT_frag_depth:true,EXTShaderTextureLOD:true,EXT_shader_texture_lod:true,EXTTextureFilterAnisotropic:true,EXT_texture_filter_anisotropic:true,WebGLFramebuffer:true,WebGLGetBufferSubDataAsync:true,WebGLLoseContext:true,WebGLExtensionLoseContext:true,WEBGL_lose_context:true,OESElementIndexUint:true,OES_element_index_uint:true,OESStandardDerivatives:true,OES_standard_derivatives:true,OESTextureFloat:true,OES_texture_float:true,OESTextureFloatLinear:true,OES_texture_float_linear:true,OESTextureHalfFloat:true,OES_texture_half_float:true,OESTextureHalfFloatLinear:true,OES_texture_half_float_linear:true,OESVertexArrayObject:true,OES_vertex_array_object:true,WebGLProgram:true,WebGLQuery:true,WebGLRenderbuffer:true,WebGLRenderingContext:true,WebGL2RenderingContext:true,WebGLSampler:true,WebGLShader:true,WebGLShaderPrecisionFormat:true,WebGLSync:true,WebGLTexture:true,WebGLTimerQueryEXT:true,WebGLTransformFeedback:true,WebGLUniformLocation:true,WebGLVertexArrayObject:true,WebGLVertexArrayObjectOES:true,WebGL2RenderingContextBase:true,ArrayBuffer: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,HTMLAudioElement:true,HTMLBRElement:true,HTMLButtonElement:true,HTMLCanvasElement:true,HTMLContentElement:true,HTMLDListElement:true,HTMLDataElement:true,HTMLDataListElement:true,HTMLDetailsElement:true,HTMLDialogElement:true,HTMLDivElement:true,HTMLEmbedElement:true,HTMLFieldSetElement:true,HTMLHRElement:true,HTMLHeadElement:true,HTMLHeadingElement:true,HTMLHtmlElement:true,HTMLIFrameElement:true,HTMLImageElement:true,HTMLLIElement:true,HTMLLabelElement:true,HTMLLegendElement:true,HTMLMapElement:true,HTMLMediaElement:true,HTMLMenuElement:true,HTMLMetaElement:true,HTMLMeterElement:true,HTMLModElement:true,HTMLOListElement:true,HTMLObjectElement:true,HTMLOptGroupElement:true,HTMLOptionElement:true,HTMLOutputElement:true,HTMLParagraphElement:true,HTMLParamElement:true,HTMLPictureElement:true,HTMLPreElement:true,HTMLProgressElement:true,HTMLQuoteElement:true,HTMLShadowElement:true,HTMLSlotElement:true,HTMLSourceElement:true,HTMLSpanElement:true,HTMLStyleElement:true,HTMLTableCaptionElement:true,HTMLTableCellElement:true,HTMLTableDataCellElement:true,HTMLTableHeaderCellElement:true,HTMLTableColElement:true,HTMLTextAreaElement:true,HTMLTimeElement:true,HTMLTitleElement:true,HTMLTrackElement:true,HTMLUListElement:true,HTMLUnknownElement:true,HTMLVideoElement:true,HTMLDirectoryElement:true,HTMLFontElement:true,HTMLFrameElement:true,HTMLFrameSetElement:true,HTMLMarqueeElement:true,HTMLElement:false,AccessibleNodeList:true,HTMLAnchorElement:true,HTMLAreaElement:true,HTMLBaseElement:true,Blob:false,HTMLBodyElement:true,CDATASection:true,CharacterData:true,Comment:true,ProcessingInstruction:true,Text:true,CloseEvent:true,CSSPerspective:true,CSSCharsetRule:true,CSSConditionRule:true,CSSFontFaceRule:true,CSSGroupingRule:true,CSSImportRule:true,CSSKeyframeRule:true,MozCSSKeyframeRule:true,WebKitCSSKeyframeRule:true,CSSKeyframesRule:true,MozCSSKeyframesRule:true,WebKitCSSKeyframesRule:true,CSSMediaRule:true,CSSNamespaceRule:true,CSSPageRule:true,CSSRule:true,CSSStyleRule:true,CSSSupportsRule:true,CSSViewportRule:true,CSSStyleDeclaration:true,MSStyleCSSProperties:true,CSS2Properties:true,CSSImageValue:true,CSSKeywordValue:true,CSSNumericValue:true,CSSPositionValue:true,CSSResourceValue:true,CSSUnitValue:true,CSSURLImageValue:true,CSSStyleValue:false,CSSMatrixComponent:true,CSSRotation:true,CSSScale:true,CSSSkew:true,CSSTranslation:true,CSSTransformComponent:false,CSSTransformValue:true,CSSUnparsedValue:true,DataTransferItemList:true,Document:true,HTMLDocument:true,XMLDocument:true,DOMException:true,ClientRectList:true,DOMRectList:true,DOMRectReadOnly:false,DOMStringList:true,DOMTokenList:true,MathMLElement:true,Element:false,AbortPaymentEvent:true,AnimationEvent:true,AnimationPlaybackEvent:true,ApplicationCacheErrorEvent:true,BackgroundFetchClickEvent:true,BackgroundFetchEvent:true,BackgroundFetchFailEvent:true,BackgroundFetchedEvent:true,BeforeInstallPromptEvent:true,BeforeUnloadEvent:true,BlobEvent:true,CanMakePaymentEvent:true,ClipboardEvent:true,CompositionEvent:true,CustomEvent:true,DeviceMotionEvent:true,DeviceOrientationEvent:true,ErrorEvent:true,ExtendableEvent:true,ExtendableMessageEvent:true,FetchEvent:true,FocusEvent:true,FontFaceSetLoadEvent:true,ForeignFetchEvent:true,GamepadEvent:true,HashChangeEvent:true,InstallEvent:true,KeyboardEvent:true,MediaEncryptedEvent:true,MediaKeyMessageEvent:true,MediaQueryListEvent:true,MediaStreamEvent:true,MediaStreamTrackEvent:true,MIDIConnectionEvent:true,MIDIMessageEvent:true,MouseEvent:true,DragEvent:true,MutationEvent:true,NotificationEvent:true,PageTransitionEvent:true,PaymentRequestEvent:true,PaymentRequestUpdateEvent:true,PointerEvent:true,PopStateEvent:true,PresentationConnectionAvailableEvent:true,PresentationConnectionCloseEvent:true,PromiseRejectionEvent:true,PushEvent:true,RTCDataChannelEvent:true,RTCDTMFToneChangeEvent:true,RTCPeerConnectionIceEvent:true,RTCTrackEvent:true,SecurityPolicyViolationEvent:true,SensorErrorEvent:true,SpeechRecognitionError:true,SpeechRecognitionEvent:true,SpeechSynthesisEvent:true,StorageEvent:true,SyncEvent:true,TextEvent:true,TouchEvent:true,TrackEvent:true,TransitionEvent:true,WebKitTransitionEvent:true,UIEvent:true,VRDeviceEvent:true,VRDisplayEvent:true,VRSessionEvent:true,WheelEvent:true,MojoInterfaceRequestEvent:true,USBConnectionEvent:true,AudioProcessingEvent:true,OfflineAudioCompletionEvent:true,WebGLContextEvent:true,Event:false,InputEvent:false,SubmitEvent:false,AbsoluteOrientationSensor:true,Accelerometer:true,AccessibleNode:true,AmbientLightSensor:true,Animation:true,ApplicationCache:true,DOMApplicationCache:true,OfflineResourceList:true,BackgroundFetchRegistration:true,BatteryManager:true,BroadcastChannel:true,CanvasCaptureMediaStreamTrack:true,EventSource:true,Gyroscope:true,LinearAccelerationSensor:true,Magnetometer:true,MediaDevices:true,MediaKeySession:true,MediaQueryList:true,MediaRecorder:true,MediaSource:true,MediaStream:true,MediaStreamTrack:true,MIDIAccess:true,MIDIInput:true,MIDIOutput:true,MIDIPort:true,NetworkInformation:true,OffscreenCanvas:true,OrientationSensor:true,PaymentRequest:true,Performance:true,PermissionStatus:true,PresentationAvailability:true,PresentationConnection:true,PresentationConnectionList:true,PresentationRequest:true,RelativeOrientationSensor:true,RemotePlayback:true,RTCDataChannel:true,DataChannel:true,RTCDTMFSender:true,RTCPeerConnection:true,webkitRTCPeerConnection:true,mozRTCPeerConnection:true,ScreenOrientation:true,Sensor:true,ServiceWorker:true,ServiceWorkerContainer:true,ServiceWorkerRegistration:true,SharedWorker:true,SpeechRecognition:true,webkitSpeechRecognition:true,SpeechSynthesis:true,SpeechSynthesisUtterance:true,VR:true,VRDevice:true,VRDisplay:true,VRSession:true,VisualViewport:true,Worker:true,WorkerPerformance:true,BluetoothDevice:true,BluetoothRemoteGATTCharacteristic:true,Clipboard:true,MojoInterfaceInterceptor:true,USB:true,IDBOpenDBRequest:true,IDBVersionChangeRequest:true,IDBRequest:true,IDBTransaction:true,AnalyserNode:true,RealtimeAnalyserNode:true,AudioBufferSourceNode:true,AudioDestinationNode:true,AudioNode:true,AudioScheduledSourceNode:true,AudioWorkletNode:true,BiquadFilterNode:true,ChannelMergerNode:true,AudioChannelMerger:true,ChannelSplitterNode:true,AudioChannelSplitter:true,ConstantSourceNode:true,ConvolverNode:true,DelayNode:true,DynamicsCompressorNode:true,GainNode:true,AudioGainNode:true,IIRFilterNode:true,MediaElementAudioSourceNode:true,MediaStreamAudioDestinationNode:true,MediaStreamAudioSourceNode:true,OscillatorNode:true,Oscillator:true,PannerNode:true,AudioPannerNode:true,webkitAudioPannerNode:true,ScriptProcessorNode:true,JavaScriptAudioNode:true,StereoPannerNode:true,WaveShaperNode:true,EventTarget:false,File:true,FileList:true,FileReader:true,FileWriter:true,FontFaceSet:true,HTMLFormElement:true,Gamepad:true,History:true,HTMLCollection:true,HTMLFormControlsCollection:true,HTMLOptionsCollection:true,XMLHttpRequest:true,XMLHttpRequestUpload:true,XMLHttpRequestEventTarget:false,ImageData:true,HTMLInputElement:true,HTMLLinkElement:true,Location:true,MediaList:true,MessageEvent:true,MessagePort:true,MIDIInputMap:true,MIDIOutputMap:true,MimeType:true,MimeTypeArray:true,DocumentFragment:true,ShadowRoot:true,DocumentType:true,Node:false,NodeList:true,RadioNodeList:true,Notification:true,Plugin:true,PluginArray:true,ProgressEvent:true,ResourceProgressEvent:true,RTCStatsReport:true,HTMLScriptElement:true,HTMLSelectElement:true,SharedArrayBuffer:true,SourceBuffer:true,SourceBufferList:true,SpeechGrammar:true,SpeechGrammarList:true,SpeechRecognitionResult:true,Storage:true,CSSStyleSheet:true,StyleSheet:true,HTMLTableElement:true,HTMLTableRowElement:true,HTMLTableSectionElement:true,HTMLTemplateElement:true,TextTrack:true,TextTrackCue:true,VTTCue:true,TextTrackCueList:true,TextTrackList:true,TimeRanges:true,Touch:true,TouchList:true,TrackDefaultList:true,URL:true,VideoTrackList:true,WebSocket:true,Window:true,DOMWindow:true,DedicatedWorkerGlobalScope:true,ServiceWorkerGlobalScope:true,SharedWorkerGlobalScope:true,WorkerGlobalScope:true,Attr:true,CSSRuleList:true,ClientRect:true,DOMRect:true,GamepadList:true,NamedNodeMap:true,MozNamedAttrMap:true,SpeechRecognitionResultList:true,StyleSheetList:true,IDBCursor:false,IDBCursorWithValue:true,IDBDatabase:true,IDBFactory:true,IDBKeyRange:true,IDBObjectStore:true,IDBVersionChangeEvent:true,SVGLength:true,SVGLengthList:true,SVGNumber:true,SVGNumberList:true,SVGPointList:true,SVGScriptElement:true,SVGStringList:true,SVGAElement:true,SVGAnimateElement:true,SVGAnimateMotionElement:true,SVGAnimateTransformElement:true,SVGAnimationElement:true,SVGCircleElement:true,SVGClipPathElement:true,SVGDefsElement:true,SVGDescElement:true,SVGDiscardElement:true,SVGEllipseElement:true,SVGFEBlendElement:true,SVGFEColorMatrixElement:true,SVGFEComponentTransferElement:true,SVGFECompositeElement:true,SVGFEConvolveMatrixElement:true,SVGFEDiffuseLightingElement:true,SVGFEDisplacementMapElement:true,SVGFEDistantLightElement:true,SVGFEFloodElement:true,SVGFEFuncAElement:true,SVGFEFuncBElement:true,SVGFEFuncGElement:true,SVGFEFuncRElement:true,SVGFEGaussianBlurElement:true,SVGFEImageElement:true,SVGFEMergeElement:true,SVGFEMergeNodeElement:true,SVGFEMorphologyElement:true,SVGFEOffsetElement:true,SVGFEPointLightElement:true,SVGFESpecularLightingElement:true,SVGFESpotLightElement:true,SVGFETileElement:true,SVGFETurbulenceElement:true,SVGFilterElement:true,SVGForeignObjectElement:true,SVGGElement:true,SVGGeometryElement:true,SVGGraphicsElement:true,SVGImageElement:true,SVGLineElement:true,SVGLinearGradientElement:true,SVGMarkerElement:true,SVGMaskElement:true,SVGMetadataElement:true,SVGPathElement:true,SVGPatternElement:true,SVGPolygonElement:true,SVGPolylineElement:true,SVGRadialGradientElement:true,SVGRectElement:true,SVGSetElement:true,SVGStopElement:true,SVGStyleElement:true,SVGSVGElement:true,SVGSwitchElement:true,SVGSymbolElement:true,SVGTSpanElement:true,SVGTextContentElement:true,SVGTextElement:true,SVGTextPathElement:true,SVGTextPositioningElement:true,SVGTitleElement:true,SVGUseElement:true,SVGViewElement:true,SVGGradientElement:true,SVGComponentTransferFunctionElement:true,SVGFEDropShadowElement:true,SVGMPathElement:true,SVGElement:false,SVGTransform:true,SVGTransformList:true,AudioBuffer:true,AudioParamMap:true,AudioTrackList:true,AudioContext:true,webkitAudioContext:true,BaseAudioContext:false,OfflineAudioContext:true}) +A.CR.$nativeSuperclassTag="ArrayBufferView" +A.S_.$nativeSuperclassTag="ArrayBufferView" +A.S0.$nativeSuperclassTag="ArrayBufferView" +A.ub.$nativeSuperclassTag="ArrayBufferView" +A.S1.$nativeSuperclassTag="ArrayBufferView" +A.S2.$nativeSuperclassTag="ArrayBufferView" +A.lc.$nativeSuperclassTag="ArrayBufferView" +A.Tr.$nativeSuperclassTag="EventTarget" +A.Ts.$nativeSuperclassTag="EventTarget" +A.TX.$nativeSuperclassTag="EventTarget" +A.TY.$nativeSuperclassTag="EventTarget"})() +Function.prototype.$0=function(){return this()} +Function.prototype.$1=function(a){return this(a)} +Function.prototype.$2=function(a,b){return this(a,b)} +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$1=function(a){return this(a)} +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.$2$2=function(a,b){return this(a,b)} +Function.prototype.$2$1=function(a){return this(a)} +Function.prototype.$1$2=function(a,b){return this(a,b)} +Function.prototype.$2$0=function(){return this()} +Function.prototype.$1$5=function(a,b,c,d,e){return this(a,b,c,d,e)} +Function.prototype.$6=function(a,b,c,d,e,f){return this(a,b,c,d,e,f)} +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;q=3.1.0 <4.0.0" - flutter: ">=3.13.0" diff --git a/pubspec.yaml b/pubspec.yaml deleted file mode 100644 index 6533de63..00000000 --- a/pubspec.yaml +++ /dev/null @@ -1,102 +0,0 @@ -name: tachidesk_sorayomi -description: A new Flutter frontend for Tachidesk. - -publish_to: "none" -version: 0.5.18+1 - -environment: - sdk: ">=3.0.0 <4.0.0" - -dependencies: - cached_network_image: ^3.2.2 - cached_network_image_platform_interface: ^3.0.0 - cupertino_icons: ^1.0.5 - dio: ^5.0.0 - dio_cache_interceptor: ^3.4.0 - dio_cache_interceptor_hive_store: ^3.2.1 - file_picker: ^6.0.0 - flutter: - sdk: flutter - flutter_android_volume_keydown: ^1.0.0 - flutter_cache_manager: ^3.3.0 - flutter_hooks: ^0.20.0 - flutter_localizations: - sdk: flutter - flutter_markdown: ^0.6.17+2 - fluttertoast: ^8.1.1 - font_awesome_flutter: ^10.2.1 - freezed_annotation: ^2.2.0 - go_router: ^12.0.0 - hooks_riverpod: ^2.1.1 - infinite_scroll_pagination: ^4.0.0 - intl: ^0.18.0 - json_annotation: ^4.8.1 - network_info_plus: ^4.0.0 - package_info_plus: ^4.0.0 - path: ^1.8.3 - path_provider: ^2.0.11 - permission_handler: ^11.0.0 - pub_semver: ^2.1.2 - queue: ^3.1.0+2 - riverpod_annotation: ^2.0.0 - scrollable_positioned_list: ^0.3.5 - shared_preferences: ^2.0.15 - shimmer: ^3.0.0 - url_launcher: ^6.1.6 - web_socket_channel: ^2.2.0 - -dev_dependencies: - build_runner: ^2.3.2 - # flutter_flavorizr: ^2.1.5 - flutter_gen_runner: ^5.1.0+1 - flutter_launcher_icons: ^0.13.0 - flutter_lints: ^3.0.0 - flutter_native_splash: ^2.2.14 - flutter_test: - sdk: flutter - freezed: ^2.2.1 - go_router_builder: ^2.0.0 - json_serializable: ^6.5.4 - lints: ^3.0.0 - riverpod_generator: ^2.0.0 - -flutter: - uses-material-design: true - generate: true - assets: - - assets/icons/ - - assets/icons/launcher/ - -flutter_gen: - output: lib/src/constants/gen/ - -flutter_native_splash: - color: "#54C5F8" - image: assets/icons/dark_icon.png - branding: assets/icons/launcher/from_suwayomi.png - color_dark: "#01579B" - image_dark: assets/icons/light_icon.png - android_12: - color: "#54C5F8" - color_dark: "#01579B" - icon_background_color: "#54C5F8" - icon_background_color_dark: "#01579B" - image: assets/icons/dark_icon.png - image_dark: assets/icons/light_icon.png - -flutter_launcher_icons: - android: "launcher_icon" - ios: true - remove_alpha_ios: true - image_path: "assets/icons/launcher/sorayomi_icon.png" - web: - generate: true - image_path: "assets/icons/launcher/sorayomi_icon.png" - background_color: "#54C5F8" - theme_color: "#54C5F8" - windows: - generate: true - image_path: "assets/icons/launcher/sorayomi_icon.png" - macos: - generate: true - image_path: "assets/icons/launcher/sorayomi_icon.png" diff --git a/scripts/debian/changelog b/scripts/debian/changelog deleted file mode 100644 index 7322ba57..00000000 --- a/scripts/debian/changelog +++ /dev/null @@ -1,5 +0,0 @@ -tachidesk-sorayomi ($pkgver-$pkgrel) unstable; urgency=medium - - * See https://github.com/Suwayomi/Tachidesk-Sorayomi - - -- Mahor Fri, 17 Feb 2022 00:00:00 +0000 diff --git a/scripts/debian/control b/scripts/debian/control deleted file mode 100644 index 8076cf0e..00000000 --- a/scripts/debian/control +++ /dev/null @@ -1,14 +0,0 @@ -Source: tachidesk-sorayomi -Section: web -Priority: optional -Maintainer: Mahor -Build-Depends: debhelper-compat (= 12) -Standards-Version: 4.5.1 -Homepage: https://github.com/Suwayomi/Tachidesk-Sorayomi - -Package: tachidesk-sorayomi -Architecture: amd64 -Depends: ${misc:Depends}, zenity -Description: Manga Reader - A free and open source manga reader server that runs extensions built for Tachiyomi. - Tachidesk is an independent Tachiyomi compatible software and is not a Fork of Tachiyomi. diff --git a/scripts/debian/copyright b/scripts/debian/copyright deleted file mode 100644 index b75ea83f..00000000 --- a/scripts/debian/copyright +++ /dev/null @@ -1,381 +0,0 @@ -Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ -Upstream-Name: tachidesk-sorayomi -Upstream-Contact: https://discord.gg/DDZdqZWaHA -Source: https://github.com/Suwayomi/Tachidesk-Sorayomi - -Files: * -Copyright: Contributors to the Suwayomi project -License: MPL-2.0 - Mozilla Public License Version 2.0 - ================================== - . - 1. Definitions - -------------- - . - 1.1. "Contributor" - means each individual or legal entity that creates, contributes to - the creation of, or owns Covered Software. - . - 1.2. "Contributor Version" - means the combination of the Contributions of others (if any) used - by a Contributor and that particular Contributor's Contribution. - . - 1.3. "Contribution" - means Covered Software of a particular Contributor. - . - 1.4. "Covered Software" - means Source Code Form to which the initial Contributor has attached - the notice in Exhibit A, the Executable Form of such Source Code - Form, and Modifications of such Source Code Form, in each case - including portions thereof. - . - 1.5. "Incompatible With Secondary Licenses" - means - . - (a) that the initial Contributor has attached the notice described - in Exhibit B to the Covered Software; or - . - (b) that the Covered Software was made available under the terms of - version 1.1 or earlier of the License, but not also under the - terms of a Secondary License. - . - 1.6. "Executable Form" - means any form of the work other than Source Code Form. - . - 1.7. "Larger Work" - means a work that combines Covered Software with other material, in - a separate file or files, that is not Covered Software. - . - 1.8. "License" - means this document. - . - 1.9. "Licensable" - means having the right to grant, to the maximum extent possible, - whether at the time of the initial grant or subsequently, any and - all of the rights conveyed by this License. - . - 1.10. "Modifications" - means any of the following: - . - (a) any file in Source Code Form that results from an addition to, - deletion from, or modification of the contents of Covered - Software; or - . - (b) any new file in Source Code Form that contains any Covered - Software. - . - 1.11. "Patent Claims" of a Contributor - means any patent claim(s), including without limitation, method, - process, and apparatus claims, in any patent Licensable by such - Contributor that would be infringed, but for the grant of the - License, by the making, using, selling, offering for sale, having - made, import, or transfer of either its Contributions or its - Contributor Version. - . - 1.12. "Secondary License" - means either the GNU General Public License, Version 2.0, the GNU - Lesser General Public License, Version 2.1, the GNU Affero General - Public License, Version 3.0, or any later versions of those - licenses. - . - 1.13. "Source Code Form" - means the form of the work preferred for making modifications. - . - 1.14. "You" (or "Your") - means an individual or a legal entity exercising rights under this - License. For legal entities, "You" includes any entity that - controls, is controlled by, or is under common control with You. For - purposes of this definition, "control" means (a) the power, direct - or indirect, to cause the direction or management of such entity, - whether by contract or otherwise, or (b) ownership of more than - fifty percent (50%) of the outstanding shares or beneficial - ownership of such entity. - . - 2. License Grants and Conditions - -------------------------------- - . - 2.1. Grants - . - Each Contributor hereby grants You a world-wide, royalty-free, - non-exclusive license: - . - (a) under intellectual property rights (other than patent or trademark) - Licensable by such Contributor to use, reproduce, make available, - modify, display, perform, distribute, and otherwise exploit its - Contributions, either on an unmodified basis, with Modifications, or - as part of a Larger Work; and - . - (b) under Patent Claims of such Contributor to make, use, sell, offer - for sale, have made, import, and otherwise transfer either its - Contributions or its Contributor Version. - . - 2.2. Effective Date - . - The licenses granted in Section 2.1 with respect to any Contribution - become effective for each Contribution on the date the Contributor first - distributes such Contribution. - . - 2.3. Limitations on Grant Scope - . - The licenses granted in this Section 2 are the only rights granted under - this License. No additional rights or licenses will be implied from the - distribution or licensing of Covered Software under this License. - Notwithstanding Section 2.1(b) above, no patent license is granted by a - Contributor: - . - (a) for any code that a Contributor has removed from Covered Software; - or - . - (b) for infringements caused by: (i) Your and any other third party's - modifications of Covered Software, or (ii) the combination of its - Contributions with other software (except as part of its Contributor - Version); or - . - (c) under Patent Claims infringed by Covered Software in the absence of - its Contributions. - . - This License does not grant any rights in the trademarks, service marks, - or logos of any Contributor (except as may be necessary to comply with - the notice requirements in Section 3.4). - . - 2.4. Subsequent Licenses - . - No Contributor makes additional grants as a result of Your choice to - distribute the Covered Software under a subsequent version of this - License (see Section 10.2) or under the terms of a Secondary License (if - permitted under the terms of Section 3.3). - . - 2.5. Representation - . - Each Contributor represents that the Contributor believes its - Contributions are its original creation(s) or it has sufficient rights - to grant the rights to its Contributions conveyed by this License. - . - 2.6. Fair Use - . - This License is not intended to limit any rights You have under - applicable copyright doctrines of fair use, fair dealing, or other - equivalents. - . - 2.7. Conditions - . - Sections 3.1, 3.2, 3.3, and 3.4 are conditions of the licenses granted - in Section 2.1. - . - 3. Responsibilities - ------------------- - . - 3.1. Distribution of Source Form - . - All distribution of Covered Software in Source Code Form, including any - Modifications that You create or to which You contribute, must be under - the terms of this License. You must inform recipients that the Source - Code Form of the Covered Software is governed by the terms of this - License, and how they can obtain a copy of this License. You may not - attempt to alter or restrict the recipients' rights in the Source Code - Form. - . - 3.2. Distribution of Executable Form - . - If You distribute Covered Software in Executable Form then: - . - (a) such Covered Software must also be made available in Source Code - Form, as described in Section 3.1, and You must inform recipients of - the Executable Form how they can obtain a copy of such Source Code - Form by reasonable means in a timely manner, at a charge no more - than the cost of distribution to the recipient; and - . - (b) You may distribute such Executable Form under the terms of this - License, or sublicense it under different terms, provided that the - license for the Executable Form does not attempt to limit or alter - the recipients' rights in the Source Code Form under this License. - . - 3.3. Distribution of a Larger Work - . - You may create and distribute a Larger Work under terms of Your choice, - provided that You also comply with the requirements of this License for - the Covered Software. If the Larger Work is a combination of Covered - Software with a work governed by one or more Secondary Licenses, and the - Covered Software is not Incompatible With Secondary Licenses, this - License permits You to additionally distribute such Covered Software - under the terms of such Secondary License(s), so that the recipient of - the Larger Work may, at their option, further distribute the Covered - Software under the terms of either this License or such Secondary - License(s). - . - 3.4. Notices - . - You may not remove or alter the substance of any license notices - (including copyright notices, patent notices, disclaimers of warranty, - or limitations of liability) contained within the Source Code Form of - the Covered Software, except that You may alter any license notices to - the extent required to remedy known factual inaccuracies. - . - 3.5. Application of Additional Terms - . - You may choose to offer, and to charge a fee for, warranty, support, - indemnity or liability obligations to one or more recipients of Covered - Software. However, You may do so only on Your own behalf, and not on - behalf of any Contributor. You must make it absolutely clear that any - such warranty, support, indemnity, or liability obligation is offered by - You alone, and You hereby agree to indemnify every Contributor for any - liability incurred by such Contributor as a result of warranty, support, - indemnity or liability terms You offer. You may include additional - disclaimers of warranty and limitations of liability specific to any - jurisdiction. - . - 4. Inability to Comply Due to Statute or Regulation - --------------------------------------------------- - . - If it is impossible for You to comply with any of the terms of this - License with respect to some or all of the Covered Software due to - statute, judicial order, or regulation then You must: (a) comply with - the terms of this License to the maximum extent possible; and (b) - describe the limitations and the code they affect. Such description must - be placed in a text file included with all distributions of the Covered - Software under this License. Except to the extent prohibited by statute - or regulation, such description must be sufficiently detailed for a - recipient of ordinary skill to be able to understand it. - . - 5. Termination - -------------- - . - 5.1. The rights granted under this License will terminate automatically - if You fail to comply with any of its terms. However, if You become - compliant, then the rights granted under this License from a particular - Contributor are reinstated (a) provisionally, unless and until such - Contributor explicitly and finally terminates Your grants, and (b) on an - ongoing basis, if such Contributor fails to notify You of the - non-compliance by some reasonable means prior to 60 days after You have - come back into compliance. Moreover, Your grants from a particular - Contributor are reinstated on an ongoing basis if such Contributor - notifies You of the non-compliance by some reasonable means, this is the - first time You have received notice of non-compliance with this License - from such Contributor, and You become compliant prior to 30 days after - Your receipt of the notice. - . - 5.2. If You initiate litigation against any entity by asserting a patent - infringement claim (excluding declaratory judgment actions, - counter-claims, and cross-claims) alleging that a Contributor Version - directly or indirectly infringes any patent, then the rights granted to - You by any and all Contributors for the Covered Software under Section - 2.1 of this License shall terminate. - . - 5.3. In the event of termination under Sections 5.1 or 5.2 above, all - end user license agreements (excluding distributors and resellers) which - have been validly granted by You or Your distributors under this License - prior to termination shall survive termination. - . - ************************************************************************ - * * - * 6. Disclaimer of Warranty * - * ------------------------- * - * * - * Covered Software is provided under this License on an "as is" * - * basis, without warranty of any kind, either expressed, implied, or * - * statutory, including, without limitation, warranties that the * - * Covered Software is free of defects, merchantable, fit for a * - * particular purpose or non-infringing. The entire risk as to the * - * quality and performance of the Covered Software is with You. * - * Should any Covered Software prove defective in any respect, You * - * (not any Contributor) assume the cost of any necessary servicing, * - * repair, or correction. This disclaimer of warranty constitutes an * - * essential part of this License. No use of any Covered Software is * - * authorized under this License except under this disclaimer. * - * * - ************************************************************************ - . - ************************************************************************ - * * - * 7. Limitation of Liability * - * -------------------------- * - * * - * Under no circumstances and under no legal theory, whether tort * - * (including negligence), contract, or otherwise, shall any * - * Contributor, or anyone who distributes Covered Software as * - * permitted above, be liable to You for any direct, indirect, * - * special, incidental, or consequential damages of any character * - * including, without limitation, damages for lost profits, loss of * - * goodwill, work stoppage, computer failure or malfunction, or any * - * and all other commercial damages or losses, even if such party * - * shall have been informed of the possibility of such damages. This * - * limitation of liability shall not apply to liability for death or * - * personal injury resulting from such party's negligence to the * - * extent applicable law prohibits such limitation. Some * - * jurisdictions do not allow the exclusion or limitation of * - * incidental or consequential damages, so this exclusion and * - * limitation may not apply to You. * - * * - ************************************************************************ - . - 8. Litigation - ------------- - . - Any litigation relating to this License may be brought only in the - courts of a jurisdiction where the defendant maintains its principal - place of business and such litigation shall be governed by laws of that - jurisdiction, without reference to its conflict-of-law provisions. - Nothing in this Section shall prevent a party's ability to bring - cross-claims or counter-claims. - . - 9. Miscellaneous - ---------------- - . - This License represents the complete agreement concerning the subject - matter hereof. If any provision of this License is held to be - unenforceable, such provision shall be reformed only to the extent - necessary to make it enforceable. Any law or regulation which provides - that the language of a contract shall be construed against the drafter - shall not be used to construe this License against a Contributor. - . - 10. Versions of the License - --------------------------- - . - 10.1. New Versions - . - Mozilla Foundation is the license steward. Except as provided in Section - 10.3, no one other than the license steward has the right to modify or - publish new versions of this License. Each version will be given a - distinguishing version number. - . - 10.2. Effect of New Versions - . - You may distribute the Covered Software under the terms of the version - of the License under which You originally received the Covered Software, - or under the terms of any subsequent version published by the license - steward. - . - 10.3. Modified Versions - . - If you create software not governed by this License, and you want to - create a new license for such software, you may create and use a - modified version of this License if you rename the license and remove - any references to the name of the license steward (except to note that - such modified license differs from this License). - . - 10.4. Distributing Source Code Form that is Incompatible With Secondary - Licenses - . - If You choose to distribute Source Code Form that is Incompatible With - Secondary Licenses under the terms of this version of the License, the - notice described in Exhibit B of this License must be attached. - . - Exhibit A - Source Code Form License Notice - ------------------------------------------- - . - This Source Code Form is subject to the terms of the Mozilla Public - License, v. 2.0. If a copy of the MPL was not distributed with this - file, You can obtain one at https://mozilla.org/MPL/2.0/. - . - If it is not possible or desirable to put the notice in a particular - file, then You may include the notice in a location (such as a LICENSE - file in a relevant directory) where a recipient would be likely to look - for such a notice. - . - You may add additional accurate notices of copyright ownership. - . - Exhibit B - "Incompatible With Secondary Licenses" Notice - --------------------------------------------------------- - . - This Source Code Form is "Incompatible With Secondary Licenses", as - defined by the Mozilla Public License, v. 2.0. diff --git a/scripts/debian/install b/scripts/debian/install deleted file mode 100644 index 2c8e9924..00000000 --- a/scripts/debian/install +++ /dev/null @@ -1,7 +0,0 @@ -#!/usr/bin/dh-exec - -data opt/tachidesk-sorayomi/ -lib opt/tachidesk-sorayomi/ -tachidesk_sorayomi opt/tachidesk-sorayomi/ -tachidesk-sorayomi.png usr/share/pixmaps/ -tachidesk-sorayomi.desktop usr/share/applications/ diff --git a/scripts/debian/package.dirs b/scripts/debian/package.dirs deleted file mode 100644 index ebb18e8f..00000000 --- a/scripts/debian/package.dirs +++ /dev/null @@ -1,2 +0,0 @@ -opt/tachidesk-sorayomi/ - diff --git a/scripts/debian/rules b/scripts/debian/rules deleted file mode 100644 index 79a164b8..00000000 --- a/scripts/debian/rules +++ /dev/null @@ -1,10 +0,0 @@ -#!/usr/bin/make -f -# See debhelper(7) (uncomment to enable) -# output every command that modifies files on the build system. -#export DH_VERBOSE = 1 - -%: - dh $@ - -override_dh_strip_nondeterminism: - true diff --git a/scripts/debian/source/format b/scripts/debian/source/format deleted file mode 100644 index 163aaf8d..00000000 --- a/scripts/debian/source/format +++ /dev/null @@ -1 +0,0 @@ -3.0 (quilt) diff --git a/scripts/debian/source/include-binaries b/scripts/debian/source/include-binaries deleted file mode 100644 index 4e72da6c..00000000 --- a/scripts/debian/source/include-binaries +++ /dev/null @@ -1 +0,0 @@ -tachidesk-sorayomi.png diff --git a/scripts/debian/tachidesk-sorayomi.links b/scripts/debian/tachidesk-sorayomi.links deleted file mode 100644 index d0430985..00000000 --- a/scripts/debian/tachidesk-sorayomi.links +++ /dev/null @@ -1 +0,0 @@ -opt/tachidesk-sorayomi/tachidesk_sorayomi usr/bin/tachidesk-sorayomi diff --git a/scripts/tachidesk-sorayomi-x64.wxs b/scripts/tachidesk-sorayomi-x64.wxs deleted file mode 100644 index 6953635c..00000000 --- a/scripts/tachidesk-sorayomi-x64.wxs +++ /dev/null @@ -1,75 +0,0 @@ - - - - - - - - VersionNT64 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/scripts/tachidesk-sorayomi.desktop b/scripts/tachidesk-sorayomi.desktop deleted file mode 100644 index e3e22d7e..00000000 --- a/scripts/tachidesk-sorayomi.desktop +++ /dev/null @@ -1,8 +0,0 @@ -[Desktop Entry] -Name=Tachidesk Sorayomi -Comment=Tachidesk UI flutter -Exec=tachidesk-sorayomi -Icon=tachidesk-sorayomi -Terminal=false -Type=Application -Categories=Network; diff --git a/web/splash/img/branding-1x.png b/splash/img/branding-1x.png similarity index 100% rename from web/splash/img/branding-1x.png rename to splash/img/branding-1x.png diff --git a/web/splash/img/branding-2x.png b/splash/img/branding-2x.png similarity index 100% rename from web/splash/img/branding-2x.png rename to splash/img/branding-2x.png diff --git a/web/splash/img/branding-3x.png b/splash/img/branding-3x.png similarity index 100% rename from web/splash/img/branding-3x.png rename to splash/img/branding-3x.png diff --git a/web/splash/img/branding-4x.png b/splash/img/branding-4x.png similarity index 100% rename from web/splash/img/branding-4x.png rename to splash/img/branding-4x.png diff --git a/web/splash/img/branding-dark-1x.png b/splash/img/branding-dark-1x.png similarity index 100% rename from web/splash/img/branding-dark-1x.png rename to splash/img/branding-dark-1x.png diff --git a/web/splash/img/branding-dark-2x.png b/splash/img/branding-dark-2x.png similarity index 100% rename from web/splash/img/branding-dark-2x.png rename to splash/img/branding-dark-2x.png diff --git a/web/splash/img/branding-dark-3x.png b/splash/img/branding-dark-3x.png similarity index 100% rename from web/splash/img/branding-dark-3x.png rename to splash/img/branding-dark-3x.png diff --git a/web/splash/img/branding-dark-4x.png b/splash/img/branding-dark-4x.png similarity index 100% rename from web/splash/img/branding-dark-4x.png rename to splash/img/branding-dark-4x.png diff --git a/web/splash/img/dark-1x.png b/splash/img/dark-1x.png similarity index 100% rename from web/splash/img/dark-1x.png rename to splash/img/dark-1x.png diff --git a/web/splash/img/dark-2x.png b/splash/img/dark-2x.png similarity index 100% rename from web/splash/img/dark-2x.png rename to splash/img/dark-2x.png diff --git a/web/splash/img/dark-3x.png b/splash/img/dark-3x.png similarity index 100% rename from web/splash/img/dark-3x.png rename to splash/img/dark-3x.png diff --git a/web/splash/img/dark-4x.png b/splash/img/dark-4x.png similarity index 100% rename from web/splash/img/dark-4x.png rename to splash/img/dark-4x.png diff --git a/web/splash/img/light-1x.png b/splash/img/light-1x.png similarity index 100% rename from web/splash/img/light-1x.png rename to splash/img/light-1x.png diff --git a/web/splash/img/light-2x.png b/splash/img/light-2x.png similarity index 100% rename from web/splash/img/light-2x.png rename to splash/img/light-2x.png diff --git a/web/splash/img/light-3x.png b/splash/img/light-3x.png similarity index 100% rename from web/splash/img/light-3x.png rename to splash/img/light-3x.png diff --git a/web/splash/img/light-4x.png b/splash/img/light-4x.png similarity index 100% rename from web/splash/img/light-4x.png rename to splash/img/light-4x.png diff --git a/web/splash/splash.js b/splash/splash.js similarity index 100% rename from web/splash/splash.js rename to splash/splash.js diff --git a/web/splash/style.css b/splash/style.css similarity index 100% rename from web/splash/style.css rename to splash/style.css diff --git a/version.json b/version.json new file mode 100644 index 00000000..3382940a --- /dev/null +++ b/version.json @@ -0,0 +1 @@ +{"app_name":"tachidesk_sorayomi","version":"0.5.18","build_number":"1","package_name":"tachidesk_sorayomi"} \ No newline at end of file diff --git a/windows/.gitignore b/windows/.gitignore deleted file mode 100644 index d492d0d9..00000000 --- a/windows/.gitignore +++ /dev/null @@ -1,17 +0,0 @@ -flutter/ephemeral/ - -# Visual Studio user-specific files. -*.suo -*.user -*.userosscache -*.sln.docstates - -# Visual Studio build-related files. -x64/ -x86/ - -# Visual Studio cache files -# files ending in .cache can be ignored -*.[Cc]ache -# but keep track of directories ending in .cache -!*.[Cc]ache/ diff --git a/windows/CMakeLists.txt b/windows/CMakeLists.txt deleted file mode 100644 index 4119f5a1..00000000 --- a/windows/CMakeLists.txt +++ /dev/null @@ -1,101 +0,0 @@ -# Project-level configuration. -cmake_minimum_required(VERSION 3.14) -project(tachidesk_sorayomi LANGUAGES CXX) - -# The name of the executable created for the application. Change this to change -# the on-disk name of your application. -set(BINARY_NAME "tachidesk_sorayomi") - -# Explicitly opt in to modern CMake behaviors to avoid warnings with recent -# versions of CMake. -cmake_policy(SET CMP0063 NEW) - -# Define build configuration option. -get_property(IS_MULTICONFIG GLOBAL PROPERTY GENERATOR_IS_MULTI_CONFIG) -if(IS_MULTICONFIG) - set(CMAKE_CONFIGURATION_TYPES "Debug;Profile;Release" - CACHE STRING "" FORCE) -else() - if(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES) - set(CMAKE_BUILD_TYPE "Debug" CACHE - STRING "Flutter build mode" FORCE) - set_property(CACHE CMAKE_BUILD_TYPE PROPERTY STRINGS - "Debug" "Profile" "Release") - endif() -endif() -# Define settings for the Profile build mode. -set(CMAKE_EXE_LINKER_FLAGS_PROFILE "${CMAKE_EXE_LINKER_FLAGS_RELEASE}") -set(CMAKE_SHARED_LINKER_FLAGS_PROFILE "${CMAKE_SHARED_LINKER_FLAGS_RELEASE}") -set(CMAKE_C_FLAGS_PROFILE "${CMAKE_C_FLAGS_RELEASE}") -set(CMAKE_CXX_FLAGS_PROFILE "${CMAKE_CXX_FLAGS_RELEASE}") - -# Use Unicode for all projects. -add_definitions(-DUNICODE -D_UNICODE) - -# Compilation settings that should be applied to most targets. -# -# Be cautious about adding new options here, as plugins use this function by -# default. In most cases, you should add new options to specific targets instead -# of modifying this function. -function(APPLY_STANDARD_SETTINGS TARGET) - target_compile_features(${TARGET} PUBLIC cxx_std_17) - target_compile_options(${TARGET} PRIVATE /W4 /WX /wd"4100") - target_compile_options(${TARGET} PRIVATE /EHsc) - target_compile_definitions(${TARGET} PRIVATE "_HAS_EXCEPTIONS=0") - target_compile_definitions(${TARGET} PRIVATE "$<$:_DEBUG>") -endfunction() - -# Flutter library and tool build rules. -set(FLUTTER_MANAGED_DIR "${CMAKE_CURRENT_SOURCE_DIR}/flutter") -add_subdirectory(${FLUTTER_MANAGED_DIR}) - -# Application build; see runner/CMakeLists.txt. -add_subdirectory("runner") - -# Generated plugin build rules, which manage building the plugins and adding -# them to the application. -include(flutter/generated_plugins.cmake) - - -# === Installation === -# Support files are copied into place next to the executable, so that it can -# run in place. This is done instead of making a separate bundle (as on Linux) -# so that building and running from within Visual Studio will work. -set(BUILD_BUNDLE_DIR "$") -# Make the "install" step default, as it's required to run. -set(CMAKE_VS_INCLUDE_INSTALL_TO_DEFAULT_BUILD 1) -if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT) - set(CMAKE_INSTALL_PREFIX "${BUILD_BUNDLE_DIR}" CACHE PATH "..." FORCE) -endif() - -set(INSTALL_BUNDLE_DATA_DIR "${CMAKE_INSTALL_PREFIX}/data") -set(INSTALL_BUNDLE_LIB_DIR "${CMAKE_INSTALL_PREFIX}") - -install(TARGETS ${BINARY_NAME} RUNTIME DESTINATION "${CMAKE_INSTALL_PREFIX}" - COMPONENT Runtime) - -install(FILES "${FLUTTER_ICU_DATA_FILE}" DESTINATION "${INSTALL_BUNDLE_DATA_DIR}" - COMPONENT Runtime) - -install(FILES "${FLUTTER_LIBRARY}" DESTINATION "${INSTALL_BUNDLE_LIB_DIR}" - COMPONENT Runtime) - -if(PLUGIN_BUNDLED_LIBRARIES) - install(FILES "${PLUGIN_BUNDLED_LIBRARIES}" - DESTINATION "${INSTALL_BUNDLE_LIB_DIR}" - COMPONENT Runtime) -endif() - -# Fully re-copy the assets directory on each build to avoid having stale files -# from a previous install. -set(FLUTTER_ASSET_DIR_NAME "flutter_assets") -install(CODE " - file(REMOVE_RECURSE \"${INSTALL_BUNDLE_DATA_DIR}/${FLUTTER_ASSET_DIR_NAME}\") - " COMPONENT Runtime) -install(DIRECTORY "${PROJECT_BUILD_DIR}/${FLUTTER_ASSET_DIR_NAME}" - DESTINATION "${INSTALL_BUNDLE_DATA_DIR}" COMPONENT Runtime) - -# Install the AOT library on non-Debug builds only. -install(FILES "${AOT_LIBRARY}" DESTINATION "${INSTALL_BUNDLE_DATA_DIR}" - CONFIGURATIONS Profile;Release - COMPONENT Runtime) diff --git a/windows/flutter/CMakeLists.txt b/windows/flutter/CMakeLists.txt deleted file mode 100644 index 930d2071..00000000 --- a/windows/flutter/CMakeLists.txt +++ /dev/null @@ -1,104 +0,0 @@ -# This file controls Flutter-level build steps. It should not be edited. -cmake_minimum_required(VERSION 3.14) - -set(EPHEMERAL_DIR "${CMAKE_CURRENT_SOURCE_DIR}/ephemeral") - -# Configuration provided via flutter tool. -include(${EPHEMERAL_DIR}/generated_config.cmake) - -# TODO: Move the rest of this into files in ephemeral. See -# https://github.com/flutter/flutter/issues/57146. -set(WRAPPER_ROOT "${EPHEMERAL_DIR}/cpp_client_wrapper") - -# === Flutter Library === -set(FLUTTER_LIBRARY "${EPHEMERAL_DIR}/flutter_windows.dll") - -# Published to parent scope for install step. -set(FLUTTER_LIBRARY ${FLUTTER_LIBRARY} PARENT_SCOPE) -set(FLUTTER_ICU_DATA_FILE "${EPHEMERAL_DIR}/icudtl.dat" PARENT_SCOPE) -set(PROJECT_BUILD_DIR "${PROJECT_DIR}/build/" PARENT_SCOPE) -set(AOT_LIBRARY "${PROJECT_DIR}/build/windows/app.so" PARENT_SCOPE) - -list(APPEND FLUTTER_LIBRARY_HEADERS - "flutter_export.h" - "flutter_windows.h" - "flutter_messenger.h" - "flutter_plugin_registrar.h" - "flutter_texture_registrar.h" -) -list(TRANSFORM FLUTTER_LIBRARY_HEADERS PREPEND "${EPHEMERAL_DIR}/") -add_library(flutter INTERFACE) -target_include_directories(flutter INTERFACE - "${EPHEMERAL_DIR}" -) -target_link_libraries(flutter INTERFACE "${FLUTTER_LIBRARY}.lib") -add_dependencies(flutter flutter_assemble) - -# === Wrapper === -list(APPEND CPP_WRAPPER_SOURCES_CORE - "core_implementations.cc" - "standard_codec.cc" -) -list(TRANSFORM CPP_WRAPPER_SOURCES_CORE PREPEND "${WRAPPER_ROOT}/") -list(APPEND CPP_WRAPPER_SOURCES_PLUGIN - "plugin_registrar.cc" -) -list(TRANSFORM CPP_WRAPPER_SOURCES_PLUGIN PREPEND "${WRAPPER_ROOT}/") -list(APPEND CPP_WRAPPER_SOURCES_APP - "flutter_engine.cc" - "flutter_view_controller.cc" -) -list(TRANSFORM CPP_WRAPPER_SOURCES_APP PREPEND "${WRAPPER_ROOT}/") - -# Wrapper sources needed for a plugin. -add_library(flutter_wrapper_plugin STATIC - ${CPP_WRAPPER_SOURCES_CORE} - ${CPP_WRAPPER_SOURCES_PLUGIN} -) -apply_standard_settings(flutter_wrapper_plugin) -set_target_properties(flutter_wrapper_plugin PROPERTIES - POSITION_INDEPENDENT_CODE ON) -set_target_properties(flutter_wrapper_plugin PROPERTIES - CXX_VISIBILITY_PRESET hidden) -target_link_libraries(flutter_wrapper_plugin PUBLIC flutter) -target_include_directories(flutter_wrapper_plugin PUBLIC - "${WRAPPER_ROOT}/include" -) -add_dependencies(flutter_wrapper_plugin flutter_assemble) - -# Wrapper sources needed for the runner. -add_library(flutter_wrapper_app STATIC - ${CPP_WRAPPER_SOURCES_CORE} - ${CPP_WRAPPER_SOURCES_APP} -) -apply_standard_settings(flutter_wrapper_app) -target_link_libraries(flutter_wrapper_app PUBLIC flutter) -target_include_directories(flutter_wrapper_app PUBLIC - "${WRAPPER_ROOT}/include" -) -add_dependencies(flutter_wrapper_app flutter_assemble) - -# === Flutter tool backend === -# _phony_ is a non-existent file to force this command to run every time, -# since currently there's no way to get a full input/output list from the -# flutter tool. -set(PHONY_OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/_phony_") -set_source_files_properties("${PHONY_OUTPUT}" PROPERTIES SYMBOLIC TRUE) -add_custom_command( - OUTPUT ${FLUTTER_LIBRARY} ${FLUTTER_LIBRARY_HEADERS} - ${CPP_WRAPPER_SOURCES_CORE} ${CPP_WRAPPER_SOURCES_PLUGIN} - ${CPP_WRAPPER_SOURCES_APP} - ${PHONY_OUTPUT} - COMMAND ${CMAKE_COMMAND} -E env - ${FLUTTER_TOOL_ENVIRONMENT} - "${FLUTTER_ROOT}/packages/flutter_tools/bin/tool_backend.bat" - windows-x64 $ - VERBATIM -) -add_custom_target(flutter_assemble DEPENDS - "${FLUTTER_LIBRARY}" - ${FLUTTER_LIBRARY_HEADERS} - ${CPP_WRAPPER_SOURCES_CORE} - ${CPP_WRAPPER_SOURCES_PLUGIN} - ${CPP_WRAPPER_SOURCES_APP} -) diff --git a/windows/flutter/generated_plugin_registrant.cc b/windows/flutter/generated_plugin_registrant.cc deleted file mode 100644 index a0d0bbeb..00000000 --- a/windows/flutter/generated_plugin_registrant.cc +++ /dev/null @@ -1,17 +0,0 @@ -// -// Generated file. Do not edit. -// - -// clang-format off - -#include "generated_plugin_registrant.h" - -#include -#include - -void RegisterPlugins(flutter::PluginRegistry* registry) { - PermissionHandlerWindowsPluginRegisterWithRegistrar( - registry->GetRegistrarForPlugin("PermissionHandlerWindowsPlugin")); - UrlLauncherWindowsRegisterWithRegistrar( - registry->GetRegistrarForPlugin("UrlLauncherWindows")); -} diff --git a/windows/flutter/generated_plugin_registrant.h b/windows/flutter/generated_plugin_registrant.h deleted file mode 100644 index dc139d85..00000000 --- a/windows/flutter/generated_plugin_registrant.h +++ /dev/null @@ -1,15 +0,0 @@ -// -// Generated file. Do not edit. -// - -// clang-format off - -#ifndef GENERATED_PLUGIN_REGISTRANT_ -#define GENERATED_PLUGIN_REGISTRANT_ - -#include - -// Registers Flutter plugins. -void RegisterPlugins(flutter::PluginRegistry* registry); - -#endif // GENERATED_PLUGIN_REGISTRANT_ diff --git a/windows/flutter/generated_plugins.cmake b/windows/flutter/generated_plugins.cmake deleted file mode 100644 index c20a586d..00000000 --- a/windows/flutter/generated_plugins.cmake +++ /dev/null @@ -1,25 +0,0 @@ -# -# Generated file, do not edit. -# - -list(APPEND FLUTTER_PLUGIN_LIST - permission_handler_windows - url_launcher_windows -) - -list(APPEND FLUTTER_FFI_PLUGIN_LIST -) - -set(PLUGIN_BUNDLED_LIBRARIES) - -foreach(plugin ${FLUTTER_PLUGIN_LIST}) - add_subdirectory(flutter/ephemeral/.plugin_symlinks/${plugin}/windows plugins/${plugin}) - target_link_libraries(${BINARY_NAME} PRIVATE ${plugin}_plugin) - list(APPEND PLUGIN_BUNDLED_LIBRARIES $) - list(APPEND PLUGIN_BUNDLED_LIBRARIES ${${plugin}_bundled_libraries}) -endforeach(plugin) - -foreach(ffi_plugin ${FLUTTER_FFI_PLUGIN_LIST}) - add_subdirectory(flutter/ephemeral/.plugin_symlinks/${ffi_plugin}/windows plugins/${ffi_plugin}) - list(APPEND PLUGIN_BUNDLED_LIBRARIES ${${ffi_plugin}_bundled_libraries}) -endforeach(ffi_plugin) diff --git a/windows/runner/CMakeLists.txt b/windows/runner/CMakeLists.txt deleted file mode 100644 index 17411a8a..00000000 --- a/windows/runner/CMakeLists.txt +++ /dev/null @@ -1,39 +0,0 @@ -cmake_minimum_required(VERSION 3.14) -project(runner LANGUAGES CXX) - -# Define the application target. To change its name, change BINARY_NAME in the -# top-level CMakeLists.txt, not the value here, or `flutter run` will no longer -# work. -# -# Any new source files that you add to the application should be added here. -add_executable(${BINARY_NAME} WIN32 - "flutter_window.cpp" - "main.cpp" - "utils.cpp" - "win32_window.cpp" - "${FLUTTER_MANAGED_DIR}/generated_plugin_registrant.cc" - "Runner.rc" - "runner.exe.manifest" -) - -# Apply the standard set of build settings. This can be removed for applications -# that need different build settings. -apply_standard_settings(${BINARY_NAME}) - -# Add preprocessor definitions for the build version. -target_compile_definitions(${BINARY_NAME} PRIVATE "FLUTTER_VERSION=\"${FLUTTER_VERSION}\"") -target_compile_definitions(${BINARY_NAME} PRIVATE "FLUTTER_VERSION_MAJOR=${FLUTTER_VERSION_MAJOR}") -target_compile_definitions(${BINARY_NAME} PRIVATE "FLUTTER_VERSION_MINOR=${FLUTTER_VERSION_MINOR}") -target_compile_definitions(${BINARY_NAME} PRIVATE "FLUTTER_VERSION_PATCH=${FLUTTER_VERSION_PATCH}") -target_compile_definitions(${BINARY_NAME} PRIVATE "FLUTTER_VERSION_BUILD=${FLUTTER_VERSION_BUILD}") - -# Disable Windows macros that collide with C++ standard library functions. -target_compile_definitions(${BINARY_NAME} PRIVATE "NOMINMAX") - -# Add dependency libraries and include directories. Add any application-specific -# dependencies here. -target_link_libraries(${BINARY_NAME} PRIVATE flutter flutter_wrapper_app) -target_include_directories(${BINARY_NAME} PRIVATE "${CMAKE_SOURCE_DIR}") - -# Run the Flutter tool portions of the build. This must not be removed. -add_dependencies(${BINARY_NAME} flutter_assemble) diff --git a/windows/runner/Runner.rc b/windows/runner/Runner.rc deleted file mode 100644 index ef4826b8..00000000 --- a/windows/runner/Runner.rc +++ /dev/null @@ -1,121 +0,0 @@ -// Microsoft Visual C++ generated resource script. -// -#pragma code_page(65001) -#include "resource.h" - -#define APSTUDIO_READONLY_SYMBOLS -///////////////////////////////////////////////////////////////////////////// -// -// Generated from the TEXTINCLUDE 2 resource. -// -#include "winres.h" - -///////////////////////////////////////////////////////////////////////////// -#undef APSTUDIO_READONLY_SYMBOLS - -///////////////////////////////////////////////////////////////////////////// -// English (United States) resources - -#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU) -LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US - -#ifdef APSTUDIO_INVOKED -///////////////////////////////////////////////////////////////////////////// -// -// TEXTINCLUDE -// - -1 TEXTINCLUDE -BEGIN - "resource.h\0" -END - -2 TEXTINCLUDE -BEGIN - "#include ""winres.h""\r\n" - "\0" -END - -3 TEXTINCLUDE -BEGIN - "\r\n" - "\0" -END - -#endif // APSTUDIO_INVOKED - - -///////////////////////////////////////////////////////////////////////////// -// -// Icon -// - -// Icon with lowest ID value placed first to ensure application icon -// remains consistent on all systems. -IDI_APP_ICON ICON "resources\\app_icon.ico" - - -///////////////////////////////////////////////////////////////////////////// -// -// Version -// - -#if defined(FLUTTER_VERSION_MAJOR) && defined(FLUTTER_VERSION_MINOR) && defined(FLUTTER_VERSION_PATCH) && defined(FLUTTER_VERSION_BUILD) -#define VERSION_AS_NUMBER FLUTTER_VERSION_MAJOR,FLUTTER_VERSION_MINOR,FLUTTER_VERSION_PATCH,FLUTTER_VERSION_BUILD -#else -#define VERSION_AS_NUMBER 1,0,0,0 -#endif - -#if defined(FLUTTER_VERSION) -#define VERSION_AS_STRING FLUTTER_VERSION -#else -#define VERSION_AS_STRING "1.0.0" -#endif - -VS_VERSION_INFO VERSIONINFO - FILEVERSION VERSION_AS_NUMBER - PRODUCTVERSION VERSION_AS_NUMBER - FILEFLAGSMASK VS_FFI_FILEFLAGSMASK -#ifdef _DEBUG - FILEFLAGS VS_FF_DEBUG -#else - FILEFLAGS 0x0L -#endif - FILEOS VOS__WINDOWS32 - FILETYPE VFT_APP - FILESUBTYPE 0x0L -BEGIN - BLOCK "StringFileInfo" - BEGIN - BLOCK "040904e4" - BEGIN - VALUE "CompanyName", "com.suwayomi" "\0" - VALUE "FileDescription", "tachidesk_sorayomi" "\0" - VALUE "FileVersion", VERSION_AS_STRING "\0" - VALUE "InternalName", "tachidesk_sorayomi" "\0" - VALUE "LegalCopyright", "Copyright (C) 2022 com.suwayomi. All rights reserved." "\0" - VALUE "OriginalFilename", "tachidesk_sorayomi.exe" "\0" - VALUE "ProductName", "tachidesk_sorayomi" "\0" - VALUE "ProductVersion", VERSION_AS_STRING "\0" - END - END - BLOCK "VarFileInfo" - BEGIN - VALUE "Translation", 0x409, 1252 - END -END - -#endif // English (United States) resources -///////////////////////////////////////////////////////////////////////////// - - - -#ifndef APSTUDIO_INVOKED -///////////////////////////////////////////////////////////////////////////// -// -// Generated from the TEXTINCLUDE 3 resource. -// - - -///////////////////////////////////////////////////////////////////////////// -#endif // not APSTUDIO_INVOKED diff --git a/windows/runner/flutter_window.cpp b/windows/runner/flutter_window.cpp deleted file mode 100644 index b43b9095..00000000 --- a/windows/runner/flutter_window.cpp +++ /dev/null @@ -1,61 +0,0 @@ -#include "flutter_window.h" - -#include - -#include "flutter/generated_plugin_registrant.h" - -FlutterWindow::FlutterWindow(const flutter::DartProject& project) - : project_(project) {} - -FlutterWindow::~FlutterWindow() {} - -bool FlutterWindow::OnCreate() { - if (!Win32Window::OnCreate()) { - return false; - } - - RECT frame = GetClientArea(); - - // The size here must match the window dimensions to avoid unnecessary surface - // creation / destruction in the startup path. - flutter_controller_ = std::make_unique( - frame.right - frame.left, frame.bottom - frame.top, project_); - // Ensure that basic setup of the controller was successful. - if (!flutter_controller_->engine() || !flutter_controller_->view()) { - return false; - } - RegisterPlugins(flutter_controller_->engine()); - SetChildContent(flutter_controller_->view()->GetNativeWindow()); - return true; -} - -void FlutterWindow::OnDestroy() { - if (flutter_controller_) { - flutter_controller_ = nullptr; - } - - Win32Window::OnDestroy(); -} - -LRESULT -FlutterWindow::MessageHandler(HWND hwnd, UINT const message, - WPARAM const wparam, - LPARAM const lparam) noexcept { - // Give Flutter, including plugins, an opportunity to handle window messages. - if (flutter_controller_) { - std::optional result = - flutter_controller_->HandleTopLevelWindowProc(hwnd, message, wparam, - lparam); - if (result) { - return *result; - } - } - - switch (message) { - case WM_FONTCHANGE: - flutter_controller_->engine()->ReloadSystemFonts(); - break; - } - - return Win32Window::MessageHandler(hwnd, message, wparam, lparam); -} diff --git a/windows/runner/flutter_window.h b/windows/runner/flutter_window.h deleted file mode 100644 index 6da0652f..00000000 --- a/windows/runner/flutter_window.h +++ /dev/null @@ -1,33 +0,0 @@ -#ifndef RUNNER_FLUTTER_WINDOW_H_ -#define RUNNER_FLUTTER_WINDOW_H_ - -#include -#include - -#include - -#include "win32_window.h" - -// A window that does nothing but host a Flutter view. -class FlutterWindow : public Win32Window { - public: - // Creates a new FlutterWindow hosting a Flutter view running |project|. - explicit FlutterWindow(const flutter::DartProject& project); - virtual ~FlutterWindow(); - - protected: - // Win32Window: - bool OnCreate() override; - void OnDestroy() override; - LRESULT MessageHandler(HWND window, UINT const message, WPARAM const wparam, - LPARAM const lparam) noexcept override; - - private: - // The project to run. - flutter::DartProject project_; - - // The Flutter instance hosted by this window. - std::unique_ptr flutter_controller_; -}; - -#endif // RUNNER_FLUTTER_WINDOW_H_ diff --git a/windows/runner/main.cpp b/windows/runner/main.cpp deleted file mode 100644 index c85aa3c0..00000000 --- a/windows/runner/main.cpp +++ /dev/null @@ -1,43 +0,0 @@ -#include -#include -#include - -#include "flutter_window.h" -#include "utils.h" - -int APIENTRY wWinMain(_In_ HINSTANCE instance, _In_opt_ HINSTANCE prev, - _In_ wchar_t *command_line, _In_ int show_command) { - // Attach to console when present (e.g., 'flutter run') or create a - // new console when running with a debugger. - if (!::AttachConsole(ATTACH_PARENT_PROCESS) && ::IsDebuggerPresent()) { - CreateAndAttachConsole(); - } - - // Initialize COM, so that it is available for use in the library and/or - // plugins. - ::CoInitializeEx(nullptr, COINIT_APARTMENTTHREADED); - - flutter::DartProject project(L"data"); - - std::vector command_line_arguments = - GetCommandLineArguments(); - - project.set_dart_entrypoint_arguments(std::move(command_line_arguments)); - - FlutterWindow window(project); - Win32Window::Point origin(10, 10); - Win32Window::Size size(1280, 720); - if (!window.CreateAndShow(L"Tachidesk Sorayomi", origin, size)) { - return EXIT_FAILURE; - } - window.SetQuitOnClose(true); - - ::MSG msg; - while (::GetMessage(&msg, nullptr, 0, 0)) { - ::TranslateMessage(&msg); - ::DispatchMessage(&msg); - } - - ::CoUninitialize(); - return EXIT_SUCCESS; -} diff --git a/windows/runner/resource.h b/windows/runner/resource.h deleted file mode 100644 index 66a65d1e..00000000 --- a/windows/runner/resource.h +++ /dev/null @@ -1,16 +0,0 @@ -//{{NO_DEPENDENCIES}} -// Microsoft Visual C++ generated include file. -// Used by Runner.rc -// -#define IDI_APP_ICON 101 - -// Next default values for new objects -// -#ifdef APSTUDIO_INVOKED -#ifndef APSTUDIO_READONLY_SYMBOLS -#define _APS_NEXT_RESOURCE_VALUE 102 -#define _APS_NEXT_COMMAND_VALUE 40001 -#define _APS_NEXT_CONTROL_VALUE 1001 -#define _APS_NEXT_SYMED_VALUE 101 -#endif -#endif diff --git a/windows/runner/resources/app_icon.ico b/windows/runner/resources/app_icon.ico deleted file mode 100644 index 9bff4b9b..00000000 Binary files a/windows/runner/resources/app_icon.ico and /dev/null differ diff --git a/windows/runner/runner.exe.manifest b/windows/runner/runner.exe.manifest deleted file mode 100644 index a42ea768..00000000 --- a/windows/runner/runner.exe.manifest +++ /dev/null @@ -1,20 +0,0 @@ - - - - - PerMonitorV2 - - - - - - - - - - - - - - - diff --git a/windows/runner/utils.cpp b/windows/runner/utils.cpp deleted file mode 100644 index f5bf9fa0..00000000 --- a/windows/runner/utils.cpp +++ /dev/null @@ -1,64 +0,0 @@ -#include "utils.h" - -#include -#include -#include -#include - -#include - -void CreateAndAttachConsole() { - if (::AllocConsole()) { - FILE *unused; - if (freopen_s(&unused, "CONOUT$", "w", stdout)) { - _dup2(_fileno(stdout), 1); - } - if (freopen_s(&unused, "CONOUT$", "w", stderr)) { - _dup2(_fileno(stdout), 2); - } - std::ios::sync_with_stdio(); - FlutterDesktopResyncOutputStreams(); - } -} - -std::vector GetCommandLineArguments() { - // Convert the UTF-16 command line arguments to UTF-8 for the Engine to use. - int argc; - wchar_t** argv = ::CommandLineToArgvW(::GetCommandLineW(), &argc); - if (argv == nullptr) { - return std::vector(); - } - - std::vector command_line_arguments; - - // Skip the first argument as it's the binary name. - for (int i = 1; i < argc; i++) { - command_line_arguments.push_back(Utf8FromUtf16(argv[i])); - } - - ::LocalFree(argv); - - return command_line_arguments; -} - -std::string Utf8FromUtf16(const wchar_t* utf16_string) { - if (utf16_string == nullptr) { - return std::string(); - } - int target_length = ::WideCharToMultiByte( - CP_UTF8, WC_ERR_INVALID_CHARS, utf16_string, - -1, nullptr, 0, nullptr, nullptr); - std::string utf8_string; - if (target_length == 0 || target_length > utf8_string.max_size()) { - return utf8_string; - } - utf8_string.resize(target_length); - int converted_length = ::WideCharToMultiByte( - CP_UTF8, WC_ERR_INVALID_CHARS, utf16_string, - -1, utf8_string.data(), - target_length, nullptr, nullptr); - if (converted_length == 0) { - return std::string(); - } - return utf8_string; -} diff --git a/windows/runner/utils.h b/windows/runner/utils.h deleted file mode 100644 index 3879d547..00000000 --- a/windows/runner/utils.h +++ /dev/null @@ -1,19 +0,0 @@ -#ifndef RUNNER_UTILS_H_ -#define RUNNER_UTILS_H_ - -#include -#include - -// Creates a console for the process, and redirects stdout and stderr to -// it for both the runner and the Flutter library. -void CreateAndAttachConsole(); - -// Takes a null-terminated wchar_t* encoded in UTF-16 and returns a std::string -// encoded in UTF-8. Returns an empty std::string on failure. -std::string Utf8FromUtf16(const wchar_t* utf16_string); - -// Gets the command line arguments passed in as a std::vector, -// encoded in UTF-8. Returns an empty std::vector on failure. -std::vector GetCommandLineArguments(); - -#endif // RUNNER_UTILS_H_ diff --git a/windows/runner/win32_window.cpp b/windows/runner/win32_window.cpp deleted file mode 100644 index c10f08dc..00000000 --- a/windows/runner/win32_window.cpp +++ /dev/null @@ -1,245 +0,0 @@ -#include "win32_window.h" - -#include - -#include "resource.h" - -namespace { - -constexpr const wchar_t kWindowClassName[] = L"FLUTTER_RUNNER_WIN32_WINDOW"; - -// The number of Win32Window objects that currently exist. -static int g_active_window_count = 0; - -using EnableNonClientDpiScaling = BOOL __stdcall(HWND hwnd); - -// Scale helper to convert logical scaler values to physical using passed in -// scale factor -int Scale(int source, double scale_factor) { - return static_cast(source * scale_factor); -} - -// Dynamically loads the |EnableNonClientDpiScaling| from the User32 module. -// This API is only needed for PerMonitor V1 awareness mode. -void EnableFullDpiSupportIfAvailable(HWND hwnd) { - HMODULE user32_module = LoadLibraryA("User32.dll"); - if (!user32_module) { - return; - } - auto enable_non_client_dpi_scaling = - reinterpret_cast( - GetProcAddress(user32_module, "EnableNonClientDpiScaling")); - if (enable_non_client_dpi_scaling != nullptr) { - enable_non_client_dpi_scaling(hwnd); - FreeLibrary(user32_module); - } -} - -} // namespace - -// Manages the Win32Window's window class registration. -class WindowClassRegistrar { - public: - ~WindowClassRegistrar() = default; - - // Returns the singleton registar instance. - static WindowClassRegistrar* GetInstance() { - if (!instance_) { - instance_ = new WindowClassRegistrar(); - } - return instance_; - } - - // Returns the name of the window class, registering the class if it hasn't - // previously been registered. - const wchar_t* GetWindowClass(); - - // Unregisters the window class. Should only be called if there are no - // instances of the window. - void UnregisterWindowClass(); - - private: - WindowClassRegistrar() = default; - - static WindowClassRegistrar* instance_; - - bool class_registered_ = false; -}; - -WindowClassRegistrar* WindowClassRegistrar::instance_ = nullptr; - -const wchar_t* WindowClassRegistrar::GetWindowClass() { - if (!class_registered_) { - WNDCLASS window_class{}; - window_class.hCursor = LoadCursor(nullptr, IDC_ARROW); - window_class.lpszClassName = kWindowClassName; - window_class.style = CS_HREDRAW | CS_VREDRAW; - window_class.cbClsExtra = 0; - window_class.cbWndExtra = 0; - window_class.hInstance = GetModuleHandle(nullptr); - window_class.hIcon = - LoadIcon(window_class.hInstance, MAKEINTRESOURCE(IDI_APP_ICON)); - window_class.hbrBackground = 0; - window_class.lpszMenuName = nullptr; - window_class.lpfnWndProc = Win32Window::WndProc; - RegisterClass(&window_class); - class_registered_ = true; - } - return kWindowClassName; -} - -void WindowClassRegistrar::UnregisterWindowClass() { - UnregisterClass(kWindowClassName, nullptr); - class_registered_ = false; -} - -Win32Window::Win32Window() { - ++g_active_window_count; -} - -Win32Window::~Win32Window() { - --g_active_window_count; - Destroy(); -} - -bool Win32Window::CreateAndShow(const std::wstring& title, - const Point& origin, - const Size& size) { - Destroy(); - - const wchar_t* window_class = - WindowClassRegistrar::GetInstance()->GetWindowClass(); - - const POINT target_point = {static_cast(origin.x), - static_cast(origin.y)}; - HMONITOR monitor = MonitorFromPoint(target_point, MONITOR_DEFAULTTONEAREST); - UINT dpi = FlutterDesktopGetDpiForMonitor(monitor); - double scale_factor = dpi / 96.0; - - HWND window = CreateWindow( - window_class, title.c_str(), WS_OVERLAPPEDWINDOW | WS_VISIBLE, - Scale(origin.x, scale_factor), Scale(origin.y, scale_factor), - Scale(size.width, scale_factor), Scale(size.height, scale_factor), - nullptr, nullptr, GetModuleHandle(nullptr), this); - - if (!window) { - return false; - } - - return OnCreate(); -} - -// static -LRESULT CALLBACK Win32Window::WndProc(HWND const window, - UINT const message, - WPARAM const wparam, - LPARAM const lparam) noexcept { - if (message == WM_NCCREATE) { - auto window_struct = reinterpret_cast(lparam); - SetWindowLongPtr(window, GWLP_USERDATA, - reinterpret_cast(window_struct->lpCreateParams)); - - auto that = static_cast(window_struct->lpCreateParams); - EnableFullDpiSupportIfAvailable(window); - that->window_handle_ = window; - } else if (Win32Window* that = GetThisFromHandle(window)) { - return that->MessageHandler(window, message, wparam, lparam); - } - - return DefWindowProc(window, message, wparam, lparam); -} - -LRESULT -Win32Window::MessageHandler(HWND hwnd, - UINT const message, - WPARAM const wparam, - LPARAM const lparam) noexcept { - switch (message) { - case WM_DESTROY: - window_handle_ = nullptr; - Destroy(); - if (quit_on_close_) { - PostQuitMessage(0); - } - return 0; - - case WM_DPICHANGED: { - auto newRectSize = reinterpret_cast(lparam); - LONG newWidth = newRectSize->right - newRectSize->left; - LONG newHeight = newRectSize->bottom - newRectSize->top; - - SetWindowPos(hwnd, nullptr, newRectSize->left, newRectSize->top, newWidth, - newHeight, SWP_NOZORDER | SWP_NOACTIVATE); - - return 0; - } - case WM_SIZE: { - RECT rect = GetClientArea(); - if (child_content_ != nullptr) { - // Size and position the child window. - MoveWindow(child_content_, rect.left, rect.top, rect.right - rect.left, - rect.bottom - rect.top, TRUE); - } - return 0; - } - - case WM_ACTIVATE: - if (child_content_ != nullptr) { - SetFocus(child_content_); - } - return 0; - } - - return DefWindowProc(window_handle_, message, wparam, lparam); -} - -void Win32Window::Destroy() { - OnDestroy(); - - if (window_handle_) { - DestroyWindow(window_handle_); - window_handle_ = nullptr; - } - if (g_active_window_count == 0) { - WindowClassRegistrar::GetInstance()->UnregisterWindowClass(); - } -} - -Win32Window* Win32Window::GetThisFromHandle(HWND const window) noexcept { - return reinterpret_cast( - GetWindowLongPtr(window, GWLP_USERDATA)); -} - -void Win32Window::SetChildContent(HWND content) { - child_content_ = content; - SetParent(content, window_handle_); - RECT frame = GetClientArea(); - - MoveWindow(content, frame.left, frame.top, frame.right - frame.left, - frame.bottom - frame.top, true); - - SetFocus(child_content_); -} - -RECT Win32Window::GetClientArea() { - RECT frame; - GetClientRect(window_handle_, &frame); - return frame; -} - -HWND Win32Window::GetHandle() { - return window_handle_; -} - -void Win32Window::SetQuitOnClose(bool quit_on_close) { - quit_on_close_ = quit_on_close; -} - -bool Win32Window::OnCreate() { - // No-op; provided for subclasses. - return true; -} - -void Win32Window::OnDestroy() { - // No-op; provided for subclasses. -} diff --git a/windows/runner/win32_window.h b/windows/runner/win32_window.h deleted file mode 100644 index 17ba4311..00000000 --- a/windows/runner/win32_window.h +++ /dev/null @@ -1,98 +0,0 @@ -#ifndef RUNNER_WIN32_WINDOW_H_ -#define RUNNER_WIN32_WINDOW_H_ - -#include - -#include -#include -#include - -// A class abstraction for a high DPI-aware Win32 Window. Intended to be -// inherited from by classes that wish to specialize with custom -// rendering and input handling -class Win32Window { - public: - struct Point { - unsigned int x; - unsigned int y; - Point(unsigned int x, unsigned int y) : x(x), y(y) {} - }; - - struct Size { - unsigned int width; - unsigned int height; - Size(unsigned int width, unsigned int height) - : width(width), height(height) {} - }; - - Win32Window(); - virtual ~Win32Window(); - - // Creates and shows a win32 window with |title| and position and size using - // |origin| and |size|. New windows are created on the default monitor. Window - // sizes are specified to the OS in physical pixels, hence to ensure a - // consistent size to will treat the width height passed in to this function - // as logical pixels and scale to appropriate for the default monitor. Returns - // true if the window was created successfully. - bool CreateAndShow(const std::wstring& title, - const Point& origin, - const Size& size); - - // Release OS resources associated with window. - void Destroy(); - - // Inserts |content| into the window tree. - void SetChildContent(HWND content); - - // Returns the backing Window handle to enable clients to set icon and other - // window properties. Returns nullptr if the window has been destroyed. - HWND GetHandle(); - - // If true, closing this window will quit the application. - void SetQuitOnClose(bool quit_on_close); - - // Return a RECT representing the bounds of the current client area. - RECT GetClientArea(); - - protected: - // Processes and route salient window messages for mouse handling, - // size change and DPI. Delegates handling of these to member overloads that - // inheriting classes can handle. - virtual LRESULT MessageHandler(HWND window, - UINT const message, - WPARAM const wparam, - LPARAM const lparam) noexcept; - - // Called when CreateAndShow is called, allowing subclass window-related - // setup. Subclasses should return false if setup fails. - virtual bool OnCreate(); - - // Called when Destroy is called. - virtual void OnDestroy(); - - private: - friend class WindowClassRegistrar; - - // OS callback called by message pump. Handles the WM_NCCREATE message which - // is passed when the non-client area is being created and enables automatic - // non-client DPI scaling so that the non-client area automatically - // responsponds to changes in DPI. All other messages are handled by - // MessageHandler. - static LRESULT CALLBACK WndProc(HWND const window, - UINT const message, - WPARAM const wparam, - LPARAM const lparam) noexcept; - - // Retrieves a class instance pointer for |window| - static Win32Window* GetThisFromHandle(HWND const window) noexcept; - - bool quit_on_close_ = false; - - // window handle for top level window. - HWND window_handle_ = nullptr; - - // window handle for hosted content. - HWND child_content_ = nullptr; -}; - -#endif // RUNNER_WIN32_WINDOW_H_